Learning Programming

14 January 2013

As many folks who know me or follow me on Twitter or what I write here know, JavaScript and I have long had a combative relationship. I’ve sought advice from so many different people on the subject that many folks are probably sick of me talking to them about it. I’ve also tried many different tutorials and books and other things. But this week something changed. It started to click and I started being able to figure things out and for work I even wrote a few little things on my own.

So what changed for me? How did I start to get it working and how did my brain finally start to absorb the way the code works? I now firmly believe it is because I did A Gentle Introduction to Python. Instead of trying to figure out JavaScript I took a course that was really about programming and thinking like a programmer. Granted the course is about learning Python, which I’ve since discovered many different Intro to Computer Science courses use, but for me it didn’t mattter the language I was learning, it mattered that I was learning the broader concepts of programming. In addition to this one part of the course was watching lectures from MIT through iTunes U. The lectures were really key for me to get this stuff, watching a professor walk and talk and use the board to explain the concepts that I then went on to work through in both written and coding exercises was a huge part of my leap forward.

So this week when confronted with a JavaScript issue in a work project, I pulled out a pen and paper and wrote out in plain English what it was that I wanted to do. I learned to do this from the course. I then proceeded to write the bits and pieces of jQuery (yes, we were already using it, so I used it here, but my goal is to get away from it when possible). I wrote the code and it worked! Since I work from home and am all alone, I woke up the dog to tell her and then proclaimed my success in the project chat room. It felt great because for the first time things were working and I was able to figure it out.

This all came back to me yesterday when I read Rachel Nabors post, JavaScript Study for Designers and she recommends using the Learn to Program book as a way to get into JavaScript and really learn it. For me that is the heart of the issue. Once you’ve learned programming concepts and how to think like a programmer, the use of JavaScript will become easier and I’m seeing that myself. Rachel really puts down the classic books that many people recommend, especially JavaScript: The Good Parts as being for programmers and difficult for designers. But I found this week, when I picked up that book again, I was understanding it a whole lot more than when I first read it over a year ago. I owe that all to the course I took this fall.

So now I’m still working through JavaScript to get better at it and I’m becoming more involved with a local Python group to get better at Python because I think both will help me be a better developer overall.