New to programming

Hey i'm new to programming and i would like to learn java but i havo no idea where to start. I know that there are lots of tutorials on youtube but they are showing specific things and they often don't explain what they are doing or why. i already know some of the basics of programming but not everything.

http://docs.oracle.com/javase/tutorial/java/index.html Read it all and you will be very well off.

Why would you like to learn java?

Textbook, textbook and textbook. Do not watch youtube if you want to learn programming properly. You need a textbook with well organized chapters and, what is even more important, set of exercises at the end of each chapter. Read a chapter and program all the exercises for that chapter. Do not rush to finish exercises as fast as possible. Play around, see what changes if you change code at different parts. Before proceeding to the next chapter compare you answers with one's provided in the textbook and see what you could have done better if not wrong.

I would recommend either "Java Programming Language" by Ken Arnold, James Gosling, David Holmes or "A Programming Guide to JAVA Certification" by Khalid Mughal.

Yeah, why should I learn java? Why is it so important, on what levels, is it useful for someone who wants to make games for a living? Perhaps a stepping stone in programming?

If you want to make games ( serious about it ); learn C and C++.  Actually as a professional take my advice, please learn C and C++ anyways ( at some point ).

Learning a managed language (i.e. java ), is an important skill to have as you will be exposed to it most likely at some point in your career. However, managed languages are only part of the skill set needed to survive.

 

Where can Java be used? Well I do not know except: embedded systems, basic client/server applications, mainframe programming, huge number of the enterprise level applications, most of the universities in the world, most of the browser-based applications including games, or the fact that entire Android is based on Java (so if you want to develope games for mobile platforms then it is either JAVA or Objective C, a perverted Apple version of real C++)? This is just from the top of my head.

Java is hard for the start. I suggest you to go for a language like Python or Ruby first to learn the basic. Go and take a look at Codecademy. Learn programming like a boss, really awesome.

http://www.codecademy.com

Personaly I wouldn't recomend Java as a language unless you want to make android apps, but even so you would be limiting yourself to one platform which is never a good idea for a beginer. If you like the java syntax I would go for javascript which is similar and has many more uses then java, but being a scripting language it is not %100 like java and does not work the way most languages work, a better route to go would be C# microsoft has tons of documention, tutorials, and videos all for free on their website. Useing mono develop you can cross compile for Linux and mac os and though the XNA game engine you could learn about video game codeing if you were intrested. C# by itself is a very powerfull easy to use object oriented language and is a great start if you think you might go into C or C++ and microsoft visual studio compiler has a free express editon that is a very powerfull compiler with many easy to use tools and help documention built in.

You're better off learning Java because of its versitility and user-friendly traits. Learning any programming langauge is like any other language and won't make sense over night. 

The term "managed" does not apply to Java. Java is not part of .Net Framework. Neither it is based on a different version of Java that compiles into a machine code.

Person who asked the question did not say anything about making games.

"but even so you would be limiting yourself to one platform" - You do know that being platform independent is one of the most recognized advantages of Java?

Completely disagree. C# is a combination of features from C++ and Java. That is why it is easier to understand inner workings of C# when you alredy know either C++ or Java, but NOT vice versa.

Additionaly, except costly Visual Studio, there is no good IDE for C#. You can get the compiler for free, but good luck managing libraries and your code with notepad.

It is a really bad practice to put in one bag languages like C++, C# and JAVA with scripting langages based on one dimensional judjement of how easy it is to use and learn a language. You do not use spoon with everything you eat, do you? Sometimes fork and knife are more suitable although more difficult to learn to handle.

I respect your opinion.

I recommend you find a good project in the language you want to learn, find something on Github. However, not all of the projects are going to be friendly to beginners, so start with humble beginnings!

I find myself learning the most when I have a goal and do everything to reach it. You'll stumble upon problems and solving them will boost your knowledge more than everything you'll ever read because you've actually understood the problem and how to solve it.

The absolute best place to learn programming, INTERNSHIP. 

If you're interested in Java take a look at Netbeans.org.  The site has a lot of good info in it and the IDE helps out a ton (for learning).  Netbeans IDE supports several languages so if you switch to another language (like C++) then you'll still be able to use the IDE.  Java is an excellent language to start learning programming on.

http://netbeans.org/kb/articles/learn-java.html

i suggest you learn C++ instead of java, more useful and better employment oppurtunities

C++ and Java have many of the same features.  If you learn one then you essentially learn the other.  Setting up C++ for a first time programmer on Windows can be a bit overwhelming, and maybe even downright discouraging.  Personally I love C++, but Java is an excellent language as well, a bit on the slow side, but excellent none the less.

Here's a good book on C++ 

http://www.chapters.indigo.ca/books/Sams-Teach-Yourself-One-Hour-Siddhartha-Rao-Jesse-Liberty/9780672335679-item.html?ikwid=c%2b%2b&ikwsec=Home