Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trial

Mihir Mittal
3,147 PointsNew to prgramming
I am new to programming . I have completed the basic Digital Literacy course and now I am on my way to learning java . I have reached the Java objects course and started feeling that everything is going over my head . So what should I do ? Should I still continue? Is there any way that I could learn java completely ?
7 Answers

Kevin Faust
15,353 PointsMihir Mittal . if you really want to learn java so you can proceed to mobile development in a reasonably short amount of time, then by all means go for it. no one is stopping you. But I mean I was in your position some months ago and i was struggling just as you. People say "oh just ask the forums" but more often than not (in my case) the forums did not exactly help me out a ton despite me asking tons of questions back then.
From a university perspective, there IS a reason why the top computer science universities (for example MIT) start off with python. they dont go into java until at the very minimum a year later. why is this the case? because you get bogged down with syntax formalities rather than the actual programming as i have previously mentioned. "object oriented programming", "classes", blah blah...those are things much beyond the basics of programming. and if you try to learn those things while at the same time try to learn the basics, itll be difficult. people dont start android until they have a few years of java experience under their belt.
But that doesnt mean you shouldnt start android. im simply saying that even though your final goal is mobile development, that doesnt mean you should just jump into java as others are saying. "put your mind to it"...well umm sorry but most often than not those words wont help you get past the massive barriers that come with programming.
This is from my personal and past experience and i will tell you that if you are not in a rush and you have plenty of time, you are much better off starting off with javascript or python. they ARE web scripting languages but who cares. just go a few of the basics course and you will be MUCH better off.
In terms of object oriented programming such as java, that in itself is a difficult concept but important part of java. thats a struggle youll just have to eventually go through. but theres no reason for you to struggle with the basics.

Konrad Pilch
2,435 PointsHow come this is in Java section? It seem to me this is more of a general discussion, since its '`New To Programming'.

Kevin Faust
15,353 Pointsthat was a really unhelpful answer. what do you mean start learning prorgramming but not learning java? java is programming. and you didnt give him any alternatives either. How can he make a simple project with no knowledge?
you should instead start learning a more simpler language. java is not very ideal for beginners due to lots of strict syntax. try going through the javascript track as Dave explains concepts very well. Or try learning python first with the python track which is also beginner friendly. over time, you will be able to understand the basics concepts and be able to apply it to other languages.

tobiaskrause
9,160 PointsI would not consider Java as a bad beginning language. In my country you already learn a bit Java in school.
And yes the basics of most programming languages are similar, so it is more important for him to learn basics about programming than "first you learn language A and then B".
If someone really wants to learn one languae he can always learn it, no matter how difficult it might be. If he has the will to learn Java, let him learn Java.
Also you dont know if he might need Java in his job so why do you tell him "learn javascript and python first". There is no reason to "waste" time on learning Python if he just needs/wants to learn Java and might never use python agian.
And yes it its good for him to make a project...he wont learn everything about Java just by Treehouse... He need to get experience, and you get one by using the language.

Kevin Faust
15,353 Pointsyou just told him to learn programming but not java. he clearly has difficulty with Java and if he just continues on, it can be a waste of time to continue on as it only gets harder and he will get even more lost. yes if he has the will then of course he can learn java but it will be a real struggle especially those without programming experience. this is coming from my own personal experience
python is very loose when it comes to syntax. no semicolons, no parantheses...you can focus solely on the programming concepts as well as the major programming concepts. the javascript track has very good explanation for beginners with friendly diagrams. those might be the more ideal choice

tobiaskrause
9,160 PointsYou should start learning programming...not learning java ;) There is a simple difference. If u learned programming you can "read" any program code and understand atleast most of it (if it is not complex).
You should try learning by doing. Make a simple project and work on it. You cant get a programmer within some weeks. You need to train on own projects Also you dont have to know anything...google is the best friend of devs&designers :)
Edit: Oh and train the basics until they are perfect :)

Konrad Pilch
2,435 PointsYou wrote +You should start learning programming...not learning java ;) There is a simple difference
Whats the difference between programming in Java and programming in? JavaScript? Im confused by your answer/

tobiaskrause
9,160 Points@Konrad Pilch well maybe my english is just not that good :( I just wanted to say, that it is more important to learn & understand programming basics. If you learned a programming language and "mastered" the basics you should be able 1) to read any other programm code and understond most of it (maybe not if it is very complex) 2) be able to to learn other languages faster
Also he only will realy learn to program, if he finds solutions himselfs. He wont be really good at Java if he doesnt know how to fix problems by himself. Thats how you can make progress.
And thats why you will not learn & master anything just by treehouse alone...you really have to use the information you get here...and if you have problems try to solve them with google/stackoverflow or whatever
Make mistakes...solve them -> progress (also you will learn how to avoide mistakes by that way)
And yes I thought that i told him to stay at Java...if he needs it...we have no information if he needs it for something. I dont rly like the advice to "give up" when he just invested some days in that language :/

Konrad Pilch
2,435 PointsYes, but learning Java is learning programming basics as well.
At start is okay to look and do the same thing many times, liek treehouse. Once you evolve, then you will use documentation every single day, if that's CSS or C++ .
You mean that Java is not very beginner friendly and he would be better of with Python or JavaScript? If yes, then well, yeah.. he could. It depends from the person.
You could start with C++ as first language and do very good.

tobiaskrause
9,160 Points"Yes, but learning Java is learning programming basics as well."
I know thats what i wrote (or atleast tried to say here)
"You mean that Java is not very beginner friendly and he would be better of with Python or JavaScript? If yes, then well, yeah.. he could. It depends from the person."
Thats not exaclty what i said. IMO he sould stay to Java...but we should know why he need java to give a good answer to that part of the question.
"You could start with C++ as first language and do very good."
Thats what i said in my conversation with Kevin P. If someone has the will to learn something he should go for it. Thats why i dont like the advice to learn something else if it gets hard (sometimes that is the part where you can make the most progress...by solving the problem with different sources (java reference, java forums, stackoverflow...of course no copy&paste he should understand his solution in the end) But like i already said...we would need the info why he wants to learn java for this.

Konrad Pilch
2,435 PointsYep!

Mihir Mittal
3,147 PointsThanks for you all for your advices . I basically want to learn java because I want to go into building mobile applications and it requires java a prerequisite.

Konrad Pilch
2,435 PointsPerfect. I wanted to start doing Mobile apps too! My first thingy was with Obj-C, but then well, life has many journeys.. and i had to go into web stuff.

Mihir Mittal
3,147 PointsSo what should I do then ? Should I continue Java or try any other programming language ?Konrad Pilch

Konrad Pilch
2,435 PointsContinue with the language. Only, only if, you feel like your in a black hole, then move into programming basics like JavaScript for example.
But i will say stick to Java and ask million questions on forum.

Mihir Mittal
3,147 PointsCould you guide me ?Kevin P
Rebecca Rich
Courses Plus Student 8,592 PointsHi Mihir,
Java or any other language is a perfectly great place to start programming; I've taught many people with zero programming or computer experience Java, so I am confident that you, as they did, can get the hang of it! As was mentioned, just keep practicing and posting questions that you might have to these boards. You were mentioning that a few things were going over your head right now about Java Objects; what things are confusing you right now?
tobiaskrause
9,160 Pointstobiaskrause
9,160 PointsWould be good to know, why you especially want to learn Java. Do you need it at work, university or do you want to write an android app? Or do you just want some programming skills? The last two is would also be possible in other languages.