Nearly all of these languages have salary ranges from 30k per year to over 150k per year. Skill, previous experience, and ability to think will largely dictate salary more than the actual language learned.
If a job is not actively paying for one of these specific skills, they will often choose a candidate that knows a few languages over one that doesn’t.
Here is a brief list of some of the more popular programming languages that employers are currently seeking talented programmers and engineers to hire:
- What is PHP?
- PHP is an object orientated server side HTML scripting language. It is often used for web based apps.
- Why Learn PHP?
- You will encounter PHP apps that need maintenance, security fixes, updates and there is still active development world wide. There is no shortage of requests for this skill set.
- Strengths of PHP:
- PHP is most widely used to create dynamic webpages, and web based applications that interferace with a database. Text processing and light graphics manipulation such as graphs, charts or serving images are where you’ll mainly find PHP.
- Weaknesses of PHP:
- PHP is inherently not secure. Earlier versions of PHP were trival to hack. Newer versions have issues, but have made great improvements in security.
- Common Uses of PHP:
- WordPress and other content management systems as well as many interactive web pages use PHP and databases.
- PHP Resources
- What is Perl?
- Perl is an object orientated server side or stand alone client scripting language used for a variety of tasks related to server management, web pages, and automation.
- Why Learn Perl?
- Perl is on nearly every Linux server in the world and has a huge code base and community. There is still active development in the community and every job I’ve had in the last 10 years has found a way to use Perl.
- Strengths of Perl:
- Perl excels at text processing. However, it is also a swiss army knife of scripting languages. One of the main strengths of Perl is incredibly short development times. A skilled Perl programmer can create something much faster than a more strongly typed language such as C# VB.Net or Java. Client side scripting is used nearly as much as server side scripting on both Windows and Linux.
- Weaknesses of Perl:
- Because there are so many options and ways to do things in Perl, it is easier for non-skilled programmers to write code with huge security problems. The language itself is very robust and generally secure, but the lack of skill really shows.
- Common Uses of Perl:
- Perl is often used for managing servers, processing text, automating tasks, creating simple games, processing logs, GUI applications, security tools, and much more.
- Perl Resources
- It is not commonly required as a programming only job skill set.
- What is AJAX?
- Why Learn AJAX?
- The Google Maps API has made a great demand for AJAX experts. Also, Ajax is embedded more and more as a trend into web applications, mobile applications and more. The demand is rising for Skilled AJAX programmers.
- Strengths of AJAX:
- Updating webpages with dynamic data without requiring the user to interact.
- Weaknesses of AJAX:
- Common Uses of AJAX:
- Google Maps API, XML Feed Interaction, Various Web Apps and many aspects of web application development
- AJAX Resources
- What is SQL/MySQL?
- SQL and MySQL are practically the same thing, sharing many commands. Both are interfaces to a database.
- Why Learn SQL/MySQL?
- Knowing either language means you can learn the other rapidly. Both are used prolifically on web applications. There is no shortage of jobs seeking skilled SQL/MySQL database admins, and every job I’ve worked in the last 10 years found a way to use me for MySQL programming.
- Strengths of SQL/MySQL:
- You can almost Google your way through nearly every hurdle on writing and understanding SQL queries. The syntax is easy to pick up and many popular programming languages have some type of interface with MySQL or it’s equivalent. MySQL is much more reliable than Access or other non enterprise databases.
- Weaknesses of SQL/MySQL:
- SQL is Licensed by MicroSoft, and therefore will cost you money. MySQL is open source, but was designed for speed and small to medium sized transaction limits, but not for real time applications. MySQL is best used for specific types of applications and database usage, not for all Enterprise level applications.
- Common Uses of SQL/MySQL:
- WordPress uses PHP and MySQL as do many other content management systems.
- MySQL Resources
- What is C#?
- A strongly typed derivative of C that interacts with the .NET libraries.
- Why Learn C#?
- C# is used for windows phone development. It is one of the languages that are currently on the hot list of languages that employers seek.
- Strengths of C#:
- Weaknesses of C#:
- There is a steep learning curve and it is strongly typed. This means that you must do things the C# way, and this can often lead to longer development times. It is not useful for a quick solution to most problems like Perl or other scripting languages. C# is not open source and you will pay for almost anything you attempt.
- Common Uses of C#:
- Command line utilities, web service APIs, Windows Service interactions, Windows Phone development
- C# Resources
No matter my personal preferences, Java isn’t going away anytime soon. I’ve sprinkled tongue in cheek comments throughout but in reality if you like/know Java you will find work. Often it will be 6 figure salary type of work. Regardless, I hate Java.
- What is Java?
- Java is a strongly typed Object Orientated language used on many appliances and mobile devices.
- Why Learn Java?
- Personally, I cannot recommend learning Java. I wish it would die. However, employers are paying 6 figures for those skilled in Java.
- Strengths of Java:
- Java is good at some types of game development and GUI applications.
- Weaknesses of Java:
- It is bloated and forces things the “Java Way”. It tries to be multiplatform instead of optimized. Marketing for Java outpaces what Java can deliver. There is a steep and frustrating learning curve. Any change to java and backwards compatiblity might be at risk.
- Common Uses of Java:
- Besides slowing down my computer and timing out or having memory leaks…. Android phone uses a Java-Like language. I am biased against Java if you can’t tell.
- Java Resources
You will often find references to “Ruby on Rails” Ruby is the language, and Rails is a framework for developing Ruby. You will need to learn both, but Rails is not mentioned below.
- What is Ruby?
- Ruby is a true object orientated server side scripting language designed to be easy to use.
- Why Learn Ruby?
- Ruby is simple to learn and very similar to Perl and Python and is best known for web programming. Ruby is experiencing incredible growth and demand is is often listed as one of the top 10 languages to learn. Ruby also has a huge codebase and community that is active.
- Strengths of Ruby:
- Ruby is very straightforward that has fast development and much cleaner code than php or Perl. Ruby uses a package manager called RubyGems which makes sharing packages easy. Ruby is also one of the easier languages to learn.
- Weaknesses of Ruby:
- It has been argued that Ruby is slower than C++, and it lacks parallelism. Some complain that Ruby has too many “hidden magics” that hide from the user what is really going on.
- Common Uses of Ruby:
- Ruby is used on server scripting much like Perl or Python.
- Ruby Resources
- What is Python?
- Python is a server side scripting language often used in web development and server maintenance.
- Why Learn Python?
- Python is one of the more popular languages currently so demand is high.
- Strengths of Python:
- Python development is fast. Like most scripting languages, a few lines of code usually accomplishes quite a bit of work. There is a huge and active community and plenty of code and tutorials to learn from.
- Weaknesses of Python:
- Python tends to be sloppy in practice and is not well suited for large development projects. Though it is an object orientated language, many programmers find that the object orientated portion is a “bolt on”, as if it was an afterthought.
- Common Uses of Python:
- Server management apps and automation tasks seem to be the most popular use of Python, but there are many stand alone apps too.
- Python Resources
- What is VB.Net?
- VB.Net is an object orientated version of Visual Basic that was designed to interface with .NET and make web services easier to develop.
- Why Learn VB.Net?
- I’ve only encountered very basic projects or scripts that I personally feel would be better written in almost any language. However, there is a market demand for VB and .NET
- Strengths of VB.Net:
- VB inherits all strengths of .NET. VB is easy to learn and for small projects development can be relatively quick. Security is higher than previous versions of Visual Basic.
- Weaknesses of VB.Net:
- VB inherits all weaknesses of .NET and is not open source, so you will pay to learn. VB is often considered too simplistic for serious programming tasks. Multiplatform support is not default. VB code is often much slower than other languages.
- Common Uses of VB.Net:
- COM interaction, direct OS manipulation, XML Processing, and mobile applications.
- VB.Net Resources
James Fraze is an IT Security Consultant with 20+ years in IT who contracts through Romack Inc and also writes IT related articles and can be reached at http://digitalcrunch.com/contact.