So you’re new to software development, or you’ve been writing software for a while but curious as to what else is out there for your line of business? I believe there are 5 key fields software developers work in, and I’ll list my favourite and best suited programming languages to meet the needs of that field.
Windows Application Development: VB.NET / C#
Arguably the two best modern programming languages out there right now on the .NET framework Visual Basic.NET and C# on the .NET Framework. With high extensibility and interoperability these two languages can do pretty much what the other can do with a lot of flexibility.
Web Development Server Side: PHP, ASP.NET
PHP is a very easy to learn server side web scripting language that can do a lot and doesn’t take a lot of code to do even the most complicated tasks. ASP.NET on the other hand is another kettle of fish, and although ASP.NET isn’t a programming language as such (more a web technology) using either VB.NET or C#/++ with this technology can see you getting a lot done quick. It lets you build very well structured and stable web applications with any external data connection you want very easily.
Database Programming: SQL
Whether it be desktop applications development, web development or applications for mobile devices having a sound knowledge of SQL (Structured Query Language) is highly regarded. Making sure you can write well formed and efficient queries may mean the difference of a few seconds or a few minutes of query time saved if you write your queries properly.
So those are just my thoughts anyway and you’ll see that most of these languages are very ‘windows centric’ (I’m personally a windows programmer after all so I may be a little biased) I think its a good idea if you know at least some of these different languages for whatever you do.
Obviously writing software for a Unix/Linux environment you’re choices may differ slightly (C, pearl, python, etc) but this should be used as a guide only and can be augmented for whichever environment you’re developing for.