Best way to learn java for complete beginners
Java.Java.Java.You won’t read this article unless you know something about programming or at least why it’s important and why you should learn. You must have probably Googled “Best programming languages to learn”, “Best programming language for high paying job” or “which language should I learn”. If you have read on those topics then every one of them will mention Java. Some will rank it as number 1, one as number 2 or some number 10 but it’s the only language that appears on every programming advisors’ lists and you are now here because you want the best way to learn java and how beginners started out.
So, you thought maybe you should learn Java. After quite thinking, you finally want to start out. Maybe you are a complete newbie to programming or maybe you have done some programming before and now want to get your hands dirty by starting out java then this post is for you.
If you are a complete beginner then answers on Stackoverflow and other forums like Quora will intimidate you. I have written this down for people like you because I started out the same way and I’m now pretty fluent in Java. I will break down the best methods to learn java into steps.
If you are a completely new to Object-Oriented programming (category of programming under which java falls), then grab a book of Head First Java Remember, books are the must for a programmer. Even if you have done years of programming you are likely to forget some syntaxes or terms. It’s normal. A book is a must have reference and everybody who starts out with book will end great. Head First Java is not an advanced reference book though. It contains visual and graphical way of teaching you Java. This book is a must. Just get the book. Don’t dive in.Grab your must have copy of Head First Java here.
If you have some OOP (Object-Oriented programming, we’ll just call that now) knowledge then grasping Java won’t be so hard for you. If you have none of OOP experiences then head over to this YouTube channel. This is the best video series you will find not only on Java but on almost any programming languages out there. This video is not just meant to be just watched but you have to code along side by side.
After every 4-5 videos of watching Bucky’s videos read whatever you watched in the video in Head First Java. This will help you revise the materials well.
Don’t go for Udemy or Coursera courses. They are taught mostly by old professors and most of them are just there to bore you. There’s no one who is going to teach you like Bucky does with his own twist of humour.
REMEMBER: YOU WON’T BE LEARNING ANY PROGRAMMING LANGUAGE UNLESS YOU CODE.YOU MUST CODE.THERE IS NO OTHER OPTION FOR THAT.DON’T JUST WATCH VIDEOS AND READ BOOKS.CODE.CODE.CODE.
This step is about you. It’s about not doing stupid mistakes. It’s about being patient.
Who learns programming just for the sake of learning? Surely you don’t want to learn Java to teach a school or a college or did you? You wan’t to learn Java because of all the cool things you can build using Java. Android apps, the backbone of websites and desktop applications are all built using java. Once you start learning you won’t find anything related to Android apps or games. They are just going to teach you syntaxes. But when will I be making all the cool things?
If you delve into cool-things-development (Android app development) when you are just not ready then you will get intimidated soon and find everything frustrating. You will hate yourself. Believe me don’t go down that road. After you complete step 1 and step 2 sincerely and with lots of coding then you are in the stage where you can begin to get familiar with applications development. Once you learn, you will come across terms like library. You will be able to choose what library you want to use for your specific interests.Dont worry you you’ll figure it all out along the way.
What is library?
If Java is a language then all its codes that are made to do some specific task like adding graphics or adding physics to games is called library. Simply put library is a subset in every programming language. Library is built using very basic codes you will learn. In more technical term it is a collection of functions which you will soon learn.
Once you have harnessed Step 3(which I think is the most important step in leaning process),you can now delve into development. Figure out what you want to do. Want to learn Android development? Learn Android SDK and development from Bucky’s channel. Whatever you want to do there will be your resources out there and by now you will be able to easily research. You will have to study the SDK’s and libraries you want in details just like you started Java but it will be way easier.
Now you can start posting on Stackoverflow and other forums. Don’t ask questions on Stackoverflow before you are in this stage. Why? Because the people there, they want to show off than help. Sure there are some who are kind enough to explain you in simplest way possible but from my experience you will leave programming altogether if you head over to Stackoverflow. They use advanced concepts for simple logics. Many people may not agree with me but went down that road and Stackoverflow made me feel why didn’t I start coding when I was 4.It’s never too late. Don’t let them intimidate you.
Get a github account. Do open source projects and build, build, build. Build cool things. If you are on a job hunt then your github account is a huge influence. Seriously, it is.
Learning is a never-ending process. You just can’t learn all Java. It’s going to be updated so much and so much cool things are going to be added that it’s impossible to learn all.
When I first started out I wanted to a pro in Java. I thought knowing everything in Java would make me a pro. But I soon realized I had learnt a small part of java and it was okay. You will feel the same down the road. You will want to learn all of java but you will realize what you know is better than not knowing. Sure half knowledge is dangerous but full knowledge in something specific of something huge is not.
If you found this guide for learning java helpful,please comment below. 🙂