• Post Reply Bookmark Topic Watch Topic
  • New Topic

Wanting to Learn Java - Need Help  RSS feed

 
Shaun McConnell
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I am wanting to learn Java but cant afford to go to any type of technical school to do so. Anyone have any tips on the best way for me to learn this language? Is going to school the only way to learn java properly or could I use just books. There are so many books out there saying they can teach you java in 24 hours or 24 days. Are these legit? One book I did purchase was "Head First Java" by K & B.
If I was successful in learning Java and maybe went for a certification (SCJP), then what? certified but no experience....I hear its near impossible to get into that industry without experience....
If anyone has advice for this Newbie, please share it
Thanks
 
KR Campbell
Ranch Hand
Posts: 124
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
My advice would be to persist on your own. Your question reminds me of how I felt four years ago. I decided to go back to university and study Information Systems. While it was an interesting experience it hasn't helped me to get a job. I learned a lot of good stuff about software development and methodical research but it didn't actually make me a good programmer.
Everything I have learned (which still isn't that much) I have had to teach myself. Technical schools (IMHO) are likely to give you a fast overview of some of the basics but you will still have to make sense of it on your own if you really want to write code that does something useful. I learned much more with a few books and a solid goal (such as passing SCJP) than I learned from any lecturer.
This would seem like a good place to come for help when you get stuck along the way but, in the end, more than learning to program you are learning to find solutions to problems. Best to start as you mean to go on.
Good luck!
P.S. The postman just arrived with my SCJP cert while I was typing this !
 
Ben Wood
Ranch Hand
Posts: 342
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I started learning Java as part of an MSc and like KR said this only really introduced the basics, and not particularly well at that. Most of my grasp of Java, including understanding and using object orientation properly came from reading books, writing my own code and looking at material/forums on the web.
I think it will depend a little on whether you are new to programming in general, or just new to Java. If you are new to programming then obviously you have two things to learn 1) how to think through problems and 2) how to write Java code, so it will be a little harder.
I can't really recommend a particular book, but I think it best, if you can, to get hold of 2 or 3 different ones. This will give you a bit more depth and perspective as you're trying to learn. I always get my books from discount shops so it needn't be expensive, and there's plenty of reference material on the web anyway so you don't need to worry about being out of date...just make sure the books cover Java 2 (aka 1.2). Another point is that there are tutorials on the sun site http://java.sun.com/learning/tutorial/index.html
As for experience I'm not sure what to suggest. The way I got into work was through the side door as a web-developer with just a bit of HTML knowledge, then once established I started pushing Java for our web apps etc. Maybe there are online projects where you can get some experience?
 
Mike Gershman
Ranch Hand
Posts: 1272
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Based on your post, I assume that you are new to both Java and programming. On that basis, the Sams publications you saw like "Java 2 in 24 days" are good. After that, try the O'Reilly books like "Learning Java" which are more complete but assume some basic programming knowledge. Save money - buy used books.
Sun offers an extensive online set of Java materials. You must learn to use these as they are by definition the authoritative canon but the teaching is not as good.
There are all sorts of courses available, both online and in person. Check out your local colleges, they offer the best value.
Another very important learning technique is to read good code written by the pros. Every language has an idiom that goes beyond the language rules and covers capitalization, naming, indentation, comments, etc. There are also legal elements of any language that most programmers steer clear of. Reading and understanding lots of good code imprints the correct patterns in your head and fixes any gaps in your language knowledge. Your first job will probably involve digging into a large body of existing code to make small changes. Also, you will be expected to write code that others can easily follow. I have found that the O'Reilly books have excellent code in their illustrations. There are also "pattern books" of exemplary Java code.
One caveat: While almost anyone can learn Java, not everyone has the natural talent to be a good computer programmer. If this stuff doesn't come easily to you, ask yourself if you want to spend your life being the last one hired and the first one fired. There is a big difference between knowing the Java language well and naturally visualizing real world problems as Java solutions.
Which brings up the subject of jobs. In this economy, the companies offering the few entry-level programming jobs can insist on a computer science degree. However, once you are in a company, you can usually manage your career into programming. So take whatever IT job is offered.
If the programmer hiring situation improves, you will have something on your resume to help get the next job. If not, you should eventually be able to transfer into programming within your company.
Good luck and hang in there - it's a great way to make a living!
 
Herb Schildt
Author
Ranch Hand
Posts: 253
6
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Shaun:
You can most definitely learn Java on your own, from books. It has been my experience that you can learn the basics within a couple of weeks of effort. To become proficient requires far longer. Just stick with it.
 
Shaun McConnell
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
You guys are awesome!! Thanks so much for all your advice. I wasnt sure I would get any replies to this post!
With my new-found confidence, the right books, and all you guys helping me, in a few months hopefully I will be boasting about passing the SCJP!!
You guys RULE!!
Thanks...
 
John Croucher
Greenhorn
Posts: 9
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
If you would like to take a class in Java, but cannot afford it at this time, you might consider looking into a grant or scholarship. Talk to your local community college about them. Just make sure the school use choose is accredited. Alot of the two year community colleges offer great java classes. But I would stay away from the tech schools. It has been my observation that most people do not learn much more than how to copy and paste code in the tech school classes.
Also consider any courses dealing with computer logic (flowcharts or UML).
 
Gjorgi Var
Ranch Hand
Posts: 85
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Shaun,
I have started learning Java on my own couple of weeks ago. Yes, you can learn Java, you can make a good progress in it within reasonable time, and there is always that "but", the question on the end of your Java course: where to go from there... ok, you'll eventualy get the SJCP, and then what... what follows then I think is that hard work on coding never stops and your Java journey never ends actually, because you are always learning... the curve wouldn't be called "curve" if it is straight forward...to start with, I looked at sites like rentacoder.com, where programmers bid for projects, so maybe some small project from there would start you up, and the next small project would lead you somewhere else... Progress comes from overload, currently I am reading from 3 books about Java (Sun's Java tutorial- the Holly Scripture , "Begining Java 2" by Ivor Horton and "Thinking in Java" by Bruce Eckel) and one about program structure and UML ("Programming logic and design" by Joyce Ferell), because just like you, I am new to programming...
See also the topic that I started when I was considering whether to start learning Java or something else: "Java or... dilemma of a poor newbie".
Stay on this ranch with both feet, like nowhere else on the web you have all the pros gathered here and there won't be question unanswered...
Take a peek at questions that other people posted while you learn and see if you can answer them... that way you'll measure your progress in learning...
Good luck,
 
Tyler Jordan
Ranch Hand
Posts: 70
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
By far, the best IDE I've used is BlueJ. Its free, its powerful, its easy and its used by many colleges as a first IDE. For a book you should definately think about "Head First Java". If your one of those who fall asleep after a page of technical terms, this book is for you. I have at least 7 other books that don't even come near to the ability of this book to help teach. I still use it to reference as well.
Finally you need to code. It is the ONLY way you will get better at Java. Experiment with your own code and the code you get from books, find out how the programs work. Remember: Programming is FUN!
 
dav mccartney
Ranch Hand
Posts: 45
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I would actually recommend the CattleDrive here at JavaRanch as well. I have found it very useful and productive, and relatively affordable as well... and I only say "relatively" because I'm a student with minimal income. I'm using the 'drive to supplement my coursework at my University, and feel the perspectives offered from both sides are invaluable.
The comments and evaluators (aka the nitpickers) have been great to work with in not just writing code, but writing good code.
The Cattle Drive Home Page
[ March 31, 2004: Message edited by: dav mccartney ]
 
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!