wood burning stoves*
The moose likes Beginning Java and the fly likes Tutorials? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Murach's Java Servlets and JSP this week in the Servlets forum!
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "Tutorials?" Watch "Tutorials?" New topic
Author

Tutorials?

Avery Jerauld
Greenhorn

Joined: Aug 15, 2011
Posts: 28

I'm just wondering if there's tutorials on this website to help me with coding. If you remember me, I'm the high school senior that's taking coding online and seriously regretting it. Not only am I not understanding it because there's no one around me that knows anything about coding and I can't find anything online put in layman's terms.

So what I'm stuck with now is what I really want to do as a career, I know nothing about. I know the absolute basics but I don't even know what each part is called. Like, I can easily make a code that will calculate any numbers for me. I've been writing math equations to java coding and vice-versa quite a bit and it works fine. But I don't know what parts are objects, classes, the difference between a "private" class and a "public" class, why I put "public static void main (String[] arg)" at the beginning of nearly piece of code I write (I assume the "String[]" part means that anything within the brackets is a giant string of coding and "arg" means "argument"... And I don't know what that means), etc. The only thing I do know is HTML and that's only thanks to social networking and being a big man on another forum that didn't always have buttons that did the HTMLing for you.

So is there anywhere on here I can find a very basic (basic as in it's easier for complete coding amateurs to understand) tutorials or can some of these things be explained for me? I swear I saw a tutorials section somewhere on here before.


Thanks so much in advance!

And sorry if I put this in the wrong section. Just seemed the most appropriate and I know the people that are regulars in this section are very helpful.

I just wish I could do this coding stuff without having to come here and feeling as if I cheated myself out of learning something I want to do later in life :/
fred rosenberger
lowercase baba
Bartender

Joined: Oct 02, 2003
Posts: 11153
    
  16

First...take a deep breath...it's really not that bad.

Second, I'm going to move this to the beginners forum, since that seems a better fit to me.

Third, come here and ask as many questions as you want. We enjoy that - in fact, that is the very reason why most of us are here.

Fourth - get yourself a good book. MANY folks here swear by Head First Java, by Bert Bates (a moderator here) and Kathy Sierra (who co-founded part of the JavaRanch). It has a casual, easy-going approach that works very well for many beginners.




There are only two hard things in computer science: cache invalidation, naming things, and off-by-one errors
Mohamed Sanaulla
Saloon Keeper

Joined: Sep 08, 2007
Posts: 3064
    
  33

+1 for Head First Java
There's one more book: Head First Programming, but they I think use Python to teach programming. I havent read this book, but you may want to consider this book as well.

Take your time to learn programming and its related areas. You can think of solving problems programmatically. Dont try to rush to learn too many things.


Mohamed Sanaulla | My Blog
fred rosenberger
lowercase baba
Bartender

Joined: Oct 02, 2003
Posts: 11153
    
  16

To answer some of your questions, on a high level (the details are un-important right now):

"class" refers to the 'blueprint'. A programmer defines/writes a class, just like an architect draws a blueprint.

"object" refers to an actual thing the Java Virtual Machine (JVM) makes in memory. Just like you can build many houses from one blueprint, you can make many objects off one class.

Private vs. public - One thing you want to do (eventually, not now as a beginner) is limit who/what can use/change your objects. A public building can be entered by anyone, but private buildings limit who can come in. A public object/method/variable can be seen/used by anyone, a private one can only be seen/used by other classes that the programmer allows. Again, for beginners, public is ok.

When you type "java <className>", the JVM calls the "public static void main (String[] arg)" method in <className>. it is the starting point.

'static' means the method can be called even if you don't create an object

'void' means the method doesn't return any value to whoever called it

'main' is the name of the method

the parens contain the things you can pass to this method. In this case, you can pass it an array (the "[]") of Strings. that means you can pass it as many strings as you want. These will be in the array called 'args' - which is short for 'arguments'. you can then use these in your program by referring to args[0], args[1], args[2], etc.
Avery Jerauld
Greenhorn

Joined: Aug 15, 2011
Posts: 28

Thanks guys. Seriously.

And I know what you guys are talking about when you say I shouldn't rush things. But I kinda have to because the instructor that doesn't teach me a thing gives me a week to learn something, implement it in a program, then write a program using whatever I am learning by myself. This is usually the part where I come here for help. Then I have to rewrite 20 review questions and answer them all.

I'm not complaining about the work, just the fact that this stuff normally interests me but when I'm rushed and have to learn it all by myself I don't pay any attention and forget about it all :/

How I've been trying to think of it is it's just another language. Kind of like learning Italian or Spanish, just with a mixture of math...

Thanks!
Sean Brewer
Greenhorn

Joined: Nov 19, 2010
Posts: 7
Hi Avery.

For Java tutorials the absolute BEST thing I have found is a free video course on programming from Stanford University. Don't worry, it is not one of those courses that expects you to know a ton of stuff upfront, it is the first in the programming series and it is designed for the complete beginner (and they have the next two courses in the series on youtube as well)... The teacher even says that the only prerequisite for the course is being able to tell the difference between a computer that is turned on and one that is turned off. LOL This teacher is amazing (and really funny too) and he has answered so many questions that I still had as an intermediate programmer myself. If you are going into the field of programming this is exactly what you need. He not only teaches Java but also how to be a good software engineer so you will save yourself a lot of headache trying to "unlearn" bad programming habits later on. I seriously cannot over hype these videos! I'm just barely over halfway through the series and I have learned so much from them already.
http://www.youtube.com/user/StanfordUniversity#g/c/84A56BC7F4A1F852
Avery Jerauld
Greenhorn

Joined: Aug 15, 2011
Posts: 28

Sean Brewer wrote:Hi Avery.

For Java tutorials the absolute BEST thing I have found is a free video course on programming from Stanford University. Don't worry, it is not one of those courses that expects you to know a ton of stuff upfront, it is the first in the programming series and it is designed for the complete beginner (and they have the next two courses in the series on youtube as well)... The teacher even says that the only prerequisite for the course is being able to tell the difference between a computer that is turned on and one that is turned off. LOL This teacher is amazing (and really funny too) and he has answered so many questions that I still had as an intermediate programmer myself. If you are going into the field of programming this is exactly what you need. He not only teaches Java but also how to be a good software engineer so you will save yourself a lot of headache trying to "unlearn" bad programming habits later on. I seriously cannot over hype these videos! I'm just barely over halfway through the series and I have learned so much from them already.
http://www.youtube.com/user/StanfordUniversity#g/c/84A56BC7F4A1F852


"On" means that the computer's lightbulb is on, right?
But in all seriousness, I'm going to look this up! Are the videos YouTube based (put on YouTube then posted wherever else) or does SU have their own player for it? Because YouTube is blocked at my school. Do you happen to have a link or name of the course? Because I would love to watch these!
Sean Brewer
Greenhorn

Joined: Nov 19, 2010
Posts: 7
It depends on which light you are looking at... the computer itself still might very well be turned off but that little green light on the motherboard may be lit if the computer is plugged in.

The Stanford videos are youtube based. I tried looking for a an accompanying course website that goes along with these videos but they don't have one, so the link I posted before is the only one. They do have a course website but it is only for the current class being taught, there's no videos and it's a different teacher so the notes and stuff don't follow the videos on youtube. The course is called Programming Methodology CS106A. The next two in the sequence are Programming Abstractions CS106B and Programming Paradigms CS107A.

There is also a Harvard programming course CS50, that teaches C (no Java) and it is also very beginner friendly. That one does have an accompanying website and their own video player. The site even has transcribed lecture notes, homework, exams, solutions to the homework and exams, videos for the help sessions....everything! So you can literally take the entire course as if you were in the class. Here is the course website for that class:
http://cs50.tv/2010/fall/

I did the Harvard one first before moving onto Standford and that is an amazing course as well. A lot of that won't apply to Java as he goes deep into pointers and memory access that doesn't apply to Java but if you plan on learning C also it is a fantastic course. Even if you're not planning on learning C it is still beneficial just to know what's going on under the hood with memory access and all that fun stuff. I learned a lot about the differences between Java and C from that course because I had only minimal C experience prior to watching those videos.

And while I'm at it, there are also free programming courses on MIT as well. I haven't gone through any of those videos yet though... That's gonna be my next stop after finishing off Standford. They also have two courses on mathematics for computer/engineers that I'm particularly interested (because I want to get into DSP programming). It's amazing how good of an education you can get just by mooching free courses from these top-level colleges and between all of them they provide a wide variety of topics.

Hope that helps.
Campbell Ritchie
Sheriff

Joined: Oct 13, 2005
Posts: 37953
    
  22
We have courses where the only prerequisite is being able to distinguish a student who is turned on from a student who is turned off
Avery Jerauld
Greenhorn

Joined: Aug 15, 2011
Posts: 28

I've watched some of those videos over the weekend, and they are very helpful!

And as a reference to look at when I'm at school and can't watch the videos, I found this http://sepwww.stanford.edu/data/media/public/sep/jon/family/jos/oop/oop1.htm

It, too, is on the Stanford website. They're just so helpful.

But what it does is compare typing Java to writing a novel. It shows green font in what would be how it is written in a novel, red font for how the same thing would be shown in java, and brown is somewhere inbetween so you don't get lost in the transition.

What do you guys think of it? I find it very helpful.
 
It is sorta covered in the JavaRanch Style Guide.
 
subject: Tutorials?
 
Similar Threads
Is Eclipse really this hard? And how did it get so popular?
Wicket - next big thing?
education is in the struggle
Good Portal Tutorials from the scratch
JoGL question