Programming languages, run the web. I am always asked "Which programming language is the best to learn?" to which I counter " If you only know one, then your in serious trouble." This got me thinking on what programming languages should a programmer know to maximize his talent and marketability. Below is the top five languages that every programmer should know:
5. Ruby on Rails
Why you should learn it: Cause it is the future. If you want to build a website writing only 8 lines of code Ruby on Rails(RoR) is the language for you. There has always been talk of Object Oriented Programming(OOP) and Ruby on Rails is OOP in its purest form.
Why it is number 5: Cause it is still in infancy and it does not have a debugger or a true IDE. Also its has a STEEP learning curve and its hard to understand how each component is put together
Resources: Top 12 Ruby on Rails Tutorials

4. MYSQL/Microsoft SQL(T-SQL)
Why you should learn it: Static pages are dead. Almost any reputable site has a database as a back end. The abilty to program Stored Procedures as well as simple task as creating a table, is a MUST if you are to be a complete programmer. Whether its Sql Server or MySql it is imperative that you learn a Structured Query Language.
Why it is number 4: In some cases you can get by, by not knowing a SQL language, in some companies they have dedicated Database programmer who will do the work for you. In general,especially in 08' you need to know how some database programming.
Resources: Top Tutorial on Mysql, Tutorial on MS Sql
3. JavaScript/AJAX
Why you should learn it:
Ajax (Asynchronous JavaScript and XML) is the new buzz word in the industry. Why I included JavaScript also is you can not do one with out knowing the other. Ajax in essence is a technique of updating "regions" on a web page instead of updating the page on a post back. Ajax is the future of web and every programmer should learn it for 2008
Why it is number 3: Cause you cant program a web page in Ajax/JavaScript alone(at least not yet). You still need a underling technology that the web page runs on(LAMP,ASP.NET, etc). Ajax is still a great tool/method to create cool effects and functionality.
Resources:Tutorial on AJAX,Tutorial on Javascript
2. PHP
Why you should learn it: The old master, PHP (which surprisingly stand for Personal Home Page) is still going strong. PHP in association with LAMP(Linux Apache MySql PHP) is a effective cheap and efficient way to program websites. You can have a entire infrastructure built of free cheap software. Many reputable businesses and large companies are now adopting LAMP as a standard. Not only that there is a wealth of CMS and Community orientated software that are available only for PHP(Drupal,Joombla). There are many availiable free library and a wealth of info avaliable for PHP.
Why it is number 2: Lack of standardization. Ask 4 different PHP programmer of a way to accomplish as task, and you might get 5 different answers. While debuggers and IDE's do exist lack, of standardization hurts the technology. Overall you can create cheap,
Resources:PHP Tutorial
1. C#
Why you should learn it: Quite simple it simple, powerfully and extensible. Its IDE(Visual Studio 2008) is second to none. You can easily create both web applications and windows application with out learning a new language. Integrating with any database is easy and there are plenty of libraries and systems (Community Server) that use C#. Used in conjunction with ASP.Net C# can preform any task that any other languages can do WITH a better and usable interface.
Why it is Number 1: Quite frankly its the easiest most extensible language out there. Some would say C# is nothing but a next generation VB. I disagree I think it is the next generation of C++ which was universally loved. C# programmers also tend to make the most in the job market.
Resources: C# Tutorials
So take some time this year and learn something new. For me my goal is to improve my PHP skills. Please feel free to comment or email me with any questions.