I have put it off for a long time… You know… actually really deep-diving and really learning a programming language. After reading, and then reading some more, and then talking to some developers where I work (we are a Microsoft Shop from pretty much top to bottom), and then reading a few more things… I have come down to learning in basically this progression (which probably sounds… and probably is… a bit haphazard):
1. Python – Sounds like a great place to start and it is a full language with lots of flexibility
2. PHP – I need to go here next… I work with so many bloody applications built on PHP (drupal, joomla, wordpress, etc…) and have to touch it often enough that this could really make my life easier if I actually sat down and figure it out.
3. Shell Scripting / Bash Scripting – I do a bit of this already, I would like to deep dive but it is obviously down the list…
4. Ruby on Rails – Full MVC Architecture – apparently every developer that has worked with it thinks it is quite slick… i.e. a very versatile and well-polished language. The downside is that it was listed as having a higher learning curve.
If I accomplished getting to some level of proficiency with 2 of the 4 languages above within the next 2 years I would consider it a wild success… Shell scripting was thrown into the mix as I find it so accessible. Java didn’t make the list because I have heard it is a real pain, even for experienced developers. Much of what we do where I work involves ASP.NET… I have heard it is a great way to program however A.) I hear it puts some distance between the developer and the code B.) much of it is “closed source” and honestly just not as accessible to someone such as myself and C.) I want a full featured language with no licensing tied to it and less platform dependency… This was part of the reason Ruby made the list. It sounds like a pretty professional / polished / organized language that has the added benefit of being totally open. Developers also reportedly used words like “fun” and “enjoy” when referencing the usage of Ruby…
Any Devs out there that have thoughts? Professional or armchair advice is welcome 🙂