We interact with Java on a daily basis, whether we acknowledge that fact or not, and on many occasions – a website might tell us that we need to install Java in order to browse it, this goes a lot for websites that are flash dependent and have some kind of flash components integrated within the core system.
Java is also one of those programs that you usually download straight away, after a purchase of a new computer – I’m not quite sure whether anyone ships Java as a default program within the operating system. Its history with security issues is not one of the most pleasant, but for the most part, it has made the language as mature as it is.
From laptops to datacenters, game consoles to scientific supercomputers, cell phones to the Internet, Java is everywhere!
97% of Enterprise Desktops Run Java
89% of Desktops (or Computers) in the U.S. Run Java
9 Million Java Developers Worldwide
#1 Choice for Developers
#1 Development Platform
3 Billion Mobile Phones Run Java
100% of Blu-ray Disc Players Ship with Java
5 Billion Java Cards in Use
125 million TV devices run Java
5 of the Top 5 Original Equipment Manufacturers Ship Java ME
as we can see with the above statistics, the Java programming language is very sought after, and there is definitely a big market for it.
Salary for Java ProgrammersI’d love to briefly touch the subject of Java salaries, and how much you’re able to earn – within a reasonable amount of time – by becoming a full-time Java developer.
The salaries differ according to the corporation they work for and the country they live in. The average salary in the US remains between $48,000 to $99,500. ZipRecruiter reports that annual salaries can vary between $22,000 to $132,000 in the US. In Denmark, the average salary could be as high as $69,000 while in Japan it can be around $51,000.
Programming Java for Beginners
I published this post a little while ago, and ever since then, I have received mixed feedback, mostly about the fact that people are saying it takes a lot longer than just a couple of weeks to learn this programming language. I’ve to say that I can’t disagree, and because of that – I’ve added this additional course that I suggest you take part in.
It does cost a little bit of money, but keep in mind that you’ll be getting access to a unique and separate community section in which you’ll find all 35,000 students who’ve taken part in this course. It contains over 10 hours of content, more than 100 lectures, and hundreds of discussions on the most problematic of topics.
You won’t find a better way to learn Java than by taking part in this course, the ultimate best alternative would be to learn in real-life from an expert, but that isn’t always that easy. I’d be more than happy to answer questions about this course.
1. Java Basics
It doesn’t really matter which programming language we’re going to learn, we will always begin with the basics, and Java is no exception. Thankfully, the official Oracle (company behind Java) website has a great introduction to Java, explaining what it is and showing you the basics of how it works.
You will also find that there a lot of resources for further learning, but most importantly – this page will help you get started with all the necessary tools and other stuff that’s required to begin learning Java.
2. Introduction to Programming in Java
This is another great resource, and not only because it is being presented by one of the top universities in the world, but you’re also bound to learn quality stuff from taking this tiny course. It will force you to read a ton of stuff, all of which is essential to the process of learning Java.
It has also been acclaimed as one of the most beginner friendly resources for learning Java, no matter how technical it might seem at first. It’s full of images, samples, preview code and documentation to get you going.
3. Learn Java Online
In recent years, interactive tutorials have become quite a thing, and so I feel obliged to include some links to what’s available on the web in this list. It’s worth knowing that you won’t learn a whole lot from this interactive tutorial (let us be honest), but I recommend it as a starting point for the first couple of chapters for any of the books you pick.
Plus, its always nice to be able to load some code and test it, without having to worry about launching your IDE to do it.
4. Learn Java the Hard Way
This is the only book on the list that is not free of charge, but due to the fact that it is resourceful and beginner friendly, I thought it would be a good idea to include it. It only costs $20, less than any decent t-shirt would cost.
You can see (and work with) the first 16 chapters for free, online, the link is here. I think many people are going to love this one, it is friendly designed combined with friendly exercises, what more could you ask for.
5. Programming by Doing
This website is built by the same person that has published the above book I listed, this site is also the inspiration for that book. You’ll find a lot of challenges that do not require a lot of programming skills at first, but as you advance through the challenges they’ll get tougher and tougher.
I’ve always believed that the absolute best way of learning something is by doing it first, testing and then going at it once again. Just pick any of the tutorials or books in this list and you’ll be ready to go.
6. Java for Complete Beginners
Some people prefer to learn from the video content, that’s totally acceptable. Sometimes, when you’re busy and got a lot of things to do, it’s better to have access to videos that you can just repeat whenever, to grasp some of the essentials of a programming language, in this case, Java.
It’s a free Udemy (you’ll need an account to view it) course that has got well over 100,000 students enrolled, and is one of the most popular courses on the site. It’s led by John Purcell, a software engineer who has had many years of experience with Java.
You’ll get nearly 20 hours of content, with over 70 lectures in total. If you don’t know Udemy, then you will also get access to a very large support community (all those 100k students who have done/are doing this course), and there is an in-built support system for asking questions.
Don’t let the design fool you if anything – it will keep you distraction free. CodingBat (formerly JavaBat) is one of the best ways of learning Java for free, interactively within your browser. It’s the second site in our list that offers interactive education, I do have to say its also better than the previous site.
The issues that you might experience with CodingBat is that unlike sites like Codecademy, which explain everything from bottom to top, step-by-step, CodingBat is more of an do what you know and pick what you’re capable of. Just don’t confuse it for being unorganized, there are plenty of tutorials for each section and you’ll be learning rather quickly.
8. Java (Beginner) Programming Tutorials
The New Boston is known for having great and comprehensive introduction videos for a lot of Java Programming Languages, and Java is no exception. You’ll find 80 step-by-step videos for learning Java and all that it has to offer, though I think its a little bit dated now. (Java 7)
Don’t count on what I said about it being dated, it’s still an incredibly useful resource for anyone who wants to begin to learn Java with determination, plus it doesn’t require of you to signup unlike Udemy does. The comments are quite insightful, for some of the videos.
9. Object-Oriented programming with Java
Another University course, it will take you roughly 6 weeks to complete it. Very beginner friendly, and everything can be done from within the browser. It also has one of the best gettings started tutorials on how to install Java and the necessary tools. In the course, you will learn all the basics of computer programming, algorithms and object-oriented programming using the Java programming language.
There is also part 2 available, which is another 6 weeks of programming. In total, you’ll be looking at 12-13 weeks of learning Java. By the end of it, you should know how to build your own apps, and how to think like a Java programmer. You’ll also be ready to advance to higher rankings, and explore the language much more in-depth.
10. Java Programming Exercises
I’m wrapping this up by giving you another website for Java programming exercises, specifically designed for Java that also contains the answers to each of the puzzles. It’s so important to practice, especially when it comes to a language like Java – which at first is not at all easy to master.
In total there are thirty exercises for you to try, and instead of saying ‘It’s impossible’ – take a break and come back to it later, that’s usually when the answer arrives.
10 Ways to Learn JavaIt might not be a transparent as my learn Python post was, I certainly blame the fact that it is not as easy of programming language to learn, and does require higher levels of attention to detail. It’s among the top programming languages to learn this year, and it has a great deal of community behind it.
By which I mean that it’s advised of you to join sites like StackOverflow, and Reddit – for finding answers to common questions, and learning more by asking questions yourself. Without asking questions, we’re just telling ourselves we can live without a solution when that is not entirely the case.
You can try out other online tutorials such as ‘Java for beginners Step-by-step handson guide to Java’ which is a great resource if you are a beginner.
I hope the resources, books, and website in this post will be of help for you, and whether you do become a professional Java developer or not, it would be nice of you to pass this on to your friends who’re looking to join the development community. Good luck!