Knowing how to program is becoming an increasingly valuable skill in this computer-oriented world we live in today. And as you know, there are many programming languages out there, but which of them do you really need to know, which are the most useful? Well, in most cases this would be the more popular ones, they are in fact, popular for a reason. But my list may contain a few unexpected ones chucked in there, so here they are, 5 programming languages you should know.
If you are reading this post, you have most probably already heard of Java. It is a high level programming language developed by James Gosling at Sun Microsystems in 1990. The special thing about Java is that it was developed on the notion of “Write Once Run Anywhere”, which adds incredible portability to the Java programming language. All you need to do is compile the source code once and you can run the program on any platform regardless of underlying hardware as long as it has Java Virtual Machine (JVM) installed.
It also has great job market as Java is used to make high level applications and games and it can be employed in the internet for web based applications. I have listed some sites displaying the massive number of jobs available to Java programmers.
Many of you however, may not have known that Facebook not only uses PHP, Python, etc but also uses Java extensively so if you are looking for a job working for Facebook then being proficient in Java is a good idea.
As with all programming languages, you need somewhere to write, edit and run your code. Most programming languages these days will come with, or have an IDE (Integrated Development Environment) to help you do this. From my experience with Java I tried out several – but not all – IDE’s and my favorite of them all was definitely Eclipse. Of course, using an IDE is completely up to personal opinion. Some people like running their programs through the command prompt but for beginners this is highly inefficient as you will be running a new program every five minutes.
Last of all, you might be looking for a good book or set of tutorials to get your Java life on a jump start. I have listed a few books, most of which you should be able to get cheaply on Amazon to help you learn Java:
- Head First Java (O’Reilly)
- Java: A Beginners Guide (Herbert Schildt)
- Effective Java (Joshua Bloch)
- Beginning Programming with Java For Dummies (Barry Burd)
Unfortunately if you want to learn programming, forking out a bit of cash will help you. You can definitely find quality tutorials online but from my experience I find that books work best, but people learn in different ways so it will most likely differ for you.
C# is another one of Microsoft’s programming languages made in 2000 after C++. It is very similar to Java and some say that C# combines the strength of C++ with the advanced features of Java, making C# and easy advancement from Java and vice versa.
The job market in C# is similarly as good and if you are looking to develop applications used in windows based platforms, then C# is the language for you. Here I have compiled a list of C# jobs to give you a glimpse of just how big the market is:
C#, being made for the Microsoft platform is mainly used on Windows and Xbox, this is one of the reasons it hasn’t pulled very far ahead of Java in programming strength as Java is portable to all platforms as long as the platform has JVM. There are many methods of learning C# and as before I will suggest you some books:
- C# in Depth (Jon Skeet)
- Head First C# (O’Reilly)
- Illustrated C# 2012 (Daniel Solis)
The book I personally used was the last one, Illustrated C# 2012. It was made in 2012 but it is in no way out of date. To avoid this becoming a full on review of the book I will briefly tell you that the book was good, concise with no waffle and explanations were decent. At times it hard to understand some concepts but all in all I would recommend any of those three listed above.
On a side note, before you start learning C#, I suggest reading up on C++ which is another programming language in the Microsoft family. Some people prefer learning C++ over C# for various reasons and you might turn out to be one of those that prefer C++.
3 HTML & CSS
I realise most of you will say that HTML isn’t a programming language. And yes, I know it is a markup language but I will put it here anyway. HTML is like the skeleton of the web, if nothing, HTML is the perfect language to learn. It’s a good skill to know how websites work and and how to edit them. Content management systems and website builders like WordPress and other famous names say that there is no HTML, CSS, or any other programming knowledge needed. This is true but from my experience of using many of these, you will most definitely benefit from knowing some HTML and CSS. You may want style a page in a way the system does not allow you to, and then you will be wishing you knew some CSS.
And for all of you who don’t want to make their own website, you can still have a little fun with your HTML knowledge. If you bring up the source code for the website (the method differs from browser to browser), you can edit the pictures, content, links and much more. Of course this wont stay on the website permanently, it will revert back after you refresh or leave the site but it will regardless give you some laughs with your friends.
Here is a list of books which are excellent at learning HTML & CSS:
- HTML & CSS: Design and Build Web Sites (John Duckett)
- HTML5 and CSS3 All-in-One for Dummies (Andy Harris)
- Head First HTML and CSS (O’Reilly)
The book I used to learn HTML & CSS was the first one in the list, HTML & CSS: Design and Build Web Sites by John Duckett. The book is great at taking you from knowing absolutely nothing to knowing everything in the depth you need.
Codecademy is a famous website that teaches HTML & CSS with several other web related languages and is without a doubt fantastic at it. Unfortunately the only flaw with Codecademy was that the courses didn’t go in anyhwere near the depth wanted to learn the language. Although, if you are looking for a free, easy course online that can get you up to speed on HTML & CSS, Codecademy is definitely the site for you.
Python is another high level programming language similar to C# and Java and is considered by the majority as one of the easiest programming languages to learn due to its simplicity making it a fantastic language for beginners and experts alike. Due to Python’s integrated web frameworks, it can be used to easily make web applications and today, Python is used on many big sites like pinterest.com and instagram.com.
As said before, Python can be learnt on Codecademy for free, though I would suggest learning from books as they usually go into most depth and if you are like me then depth = best:
- Learning Python (Mark Lutz – O’Reilly)
- Learn Python the Hard Way: A Very Simple Introduction to the Terrifyingly Beautiful World of Computers and Code (Zed Shaw)
- Python Programming for the Absolute Beginner (Michael Dawson)
I trampled a bit into Python but never actually learnt the language to a useful extent but I could tell in my few weeks learning it that it was fairly simple and easy. Exactly why is is best for programming beginners.
If you were to search online you would most likely find several Python jobs here and there but I suggest learning it with one or two complementing languages like the web languages mentioned above to extend your knowledge, functionality and likeliness to be employed in a high paying, fun job.