Article 1 - Foreward
One thing I found in my programming experience is a definite lack of online programming resources that are friendly to new programmers. People often use terms like "instantiation" without providing a definition and they don't delve into the theory as to why you should do something one way verses another.
In this series of articles on Java I am trying to go slowly and explain all the terms and concepts carefully so new programmers can get a grasp of this material. I am also trying to present a slightly different perspective from what you may learn in a Java class at a university, by encouraging a more practical approach. For instance, a Java course or book may go into a lot of depth about applets (a java program that is launched from your web browser), but I would recommend doing that later if you see the need for it, since Applets are no longer widely used. Some even say they are a dead technology.
So many sources tell you what to do but they don't tell you why. Many people are not interested in the whys of the world, but without understanding why (the theory behind the fact), you are handicapped when it comes to decision making, developing new technologies, adapting to change and teaching others.
If you are a designer of systems or scientist at heart, why something is the way it is much more important to you than it's superficial and often misleading outward appearance. Appreciating why also leads to thinking about what could be. What could be is innovation. Innovation is why we are now not living in caves, spending most of our day running after deer with pointy sticks.
In article 2 I will cover some basic Java/programming terms which you can use as a reference. Also I try to present where terms are used loosely or interchangeably verses specifically. Outside the textbook, in programming conversations or on the web, there are a lot of terms that are used interchangeably, and that can get confusing.
After that, in article 3, we will look at some code.