Learning Programming Languages

I think learning new programming languages is both easy and very difficult. Syntax is nearly always easy, but understanding when to use a language and what are its strong points. Failing at this leads to the familiar “when all you have is a hammer, every problem looks like a nail.” On the other hand I read a quote somewhere along the lines “a good programmer makes the solution look like the language was made for solving it.”

Then again there is the huge job of learning all the common libraries and services languages have. Consider this: I’ve used Java on and off for various little programs at the university over the years, but it has been so occasional that I still need to refer to documentation for a lot basic stuff like accessing files etc. It is kinda tough when you don’t have a very good memory for stuff like that. Similarly for the last year and a half I’ve needed Perl steadily, but occasionally on my job: I really need the documentation to check pretty basic functions.

The point I’m rambling to is that routine is in my opinion the biggest factor in mastering a language. If you don’t use it, you lose it. Basics may stay, but the finer stuff goes away.

My current part time employment is coming to an end and yet again I’ve been wondering about applying to programming jobs. The thing is, I’d really like to finish my thesis first. The problem is that while I finish my thesis I lose most of what little routine I have for programming. That makes it tad more difficult to ace interviews in the winter. Luckily I’ll propably have couple of odd jobs at the Library during the summer, but those are more likely to be configuring software rather than developing it.

Leave a Reply

Your email address will not be published. Required fields are marked *

*


You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">