I know it’s almost the end of the year and most people are starting to make plans for their holidays season shopping. Not me. Instead, I am giving myself a challenge to master 2 new programming languages (Ruby and Python) by the end of December. It might seem like a tall order but that’s what any challenge looks like at first until you break down what needs to be done into bite-size chunks.
No I am not talking about just learning the syntax but rather going from total novice to expert. I just need a few ideas of real life software applications I can build using those languages at the end of this challenge to test the new knowledge.
Keep in mind I have already heard the buzz about the rise of those languages and last week I did a 2 hours research to see where they stand in terms of popularity.
- Java and C++ remains of course on top. I dropped Java from my list 5 years ago and despite its popularity I remain unimpressed. Besides after Oracle acquired Sun Microsystems and it’s now calling the shot, I am less willing to go back but I will never say “Never”. I am just not sure if Java is as open (source) as it was years ago. Only time will tell.
- C++ has always been the language I highly respect the most. Maybe because that’s where I started programming then I went downhill using less challenging scripting languages. Although I no longer often write programs in C++ since I dived into web development, I still want to keep my C++ skills sharp.
- C# is also an interesting one. I learned C# about 2 years ago after getting frustrated by the lack of rigor of Visual Basic and VBScript. The C# syntax is clean and clear and even simpler than C++.
I have been planning to build a web application with C# on the back-end for 6 months now. I still need to solve more challenging problems involving network communications and threading to gain “a black belt level” on those chapters.
- PHP very popular, easy to understand and I am currently creating MVC based web apps with it as well as other applications such as WordPress plugins. They will always something new to learn and share about PHP. PHP is everywhere on the web and pretty much any serious API (i.e. Google, Paypal, Facebook, Twitter) involves PHP.
- PERL is another popular and powerful language. However newcomers in the web programming arena find it a bit more difficult to learn compared to PHP. PERL remains the language of choice of web systems administrators.
- Ruby and Python are the 2 newest scripting languages I am challenging myself to master by the end of 2010 starting November 10, 2010. That makes it at least 20 days for each language.
I started with Ruby 5 days ago and already ready through chapter 6. I will try to regularly posts my notes during this learning process. Hopefully I can start with Python early December.
So stay tuned.