Friday, September 7, 2012

Prep

The company I previously worked for downsized significantly recently, and I've found myself preparing for interviews as I did when I was looking for an internship back in early 2008.  To track this little journey publicly, I'll post what I find to be interesting and useful articles and books.

I have professional experience with Java.  So, other than just brushing up on its syntax, I've decided to learn more about other programming paradigms and languages to see where I could steer my career.  Here is what I've discovered so far (it may not be much or cutting edge, but I've got to start somewhere, so don't flame me)...

Functional programming appears to be taking off.  The dominant functional languages seem to be Haskell, Scala, and F#.  For Java, C#, and other OOP folks, Scala would be more familiar as it is also Object Oriented.

The C# language seems to be ahead of the current Java language (7) in many aspects, with concepts such as Delegates and Lambda Expressions.  I'm not mentioning LINQ there because there are many great JPA providers out there.  If these concepts provide an edge to developers and business priorities alike, then perhaps C# is worth pursuing.  I've had exposure to Java EE and Web Services in Java (with Jersey, Ext JS, and Spring), so the .NET equivalent offering Windows Communication Framework (WCF) would be something worth picking up. 

I don't think Java is going away anytime soon - OpenJDK is gaining lots of support.  Java 8 will be adding Lambda Expressions.    Also, trends seem to show that Java is still the most dominant language (1, 2).  In the second link, it's interesting to note the fall of book sales for many languages, and a steep increase for Objective C, JavaScript, and Java from 2009 onward, likely due to iOS development, and perhaps even a decline in demand from finance houses.

No comments:

Post a Comment