The past couple of weeks have been a long slog. Between personal struggles and coding roadblocks I have secretly been looking for a nice quiet rock to climb under. I knew full well when I began this coding journey that it would be slower and take longer than I would like and that reality has been needling me as of late.
Too busy to code. Too tired to code. Get a bit of time to code and then get stuck. The walls keep coming up.
I have entered the algorithm section of my studies and my previous experience with other courses have completely dried up. Up to this point, much of what I was working on I had at least seen in other contexts. No longer am I slinging some HTML around and tweaking it with CSS. No sir. This is finally some real, actual programming.
Many of the exercises revolve around string and array manipulation. I feel like I’m operating the late night JavaScript blend-o-matic. It slices. It dices. And if you order now we’ll even throw in the “Everyday JavaScript Cookbook” which lists every method known to man.
A few things have proved to be quite thorny for me. Namely when to use new variables and some miscellaneous syntax annoyances. One of the first challenges was to check to see if a string was a palindrome (can be spelled the same forward or backward). This actually took me two days to finish and I can clearly tell that my solution is a big ol mess.
I am embarrassed to say I used exactly seven different variables just to make it work. I found using regular expressions a bit of a pain as well. I would like to look up alternative solutions to this problem at some point but for now I had to simply accept that what I did worked and move on.
Not every challenge stumped me. I actually found the more mathy parts to come fairly naturally to me. It was a needed boost to knock out a few challenges on the first try. The other benefits I found to doing these problems was really ironing out how the syntax worked together. I threw my fair share of infinite loops and undefined variable errors but in the process learned all the great ways to “not” solve the problem.
I am also growing much more comfortable with reading the documentation as well as utilizing the log function to really understand what is actually going on. I was intimidated by google’s developer panel at first but now I am finding it impossible to work without it.
Looking forward, I am hoping to been finished with the last few algorithm challenges this week. Coming up will be a short section on JSON API’s and AJAX, then on to the next four projects. I have already been dreaming up some ideas for those which of course will likely insure that it will take three times as long as it should.