A looong time ago I did a Master’s Degree in Biological Computation which roughly translates to mean Computing for Biologists. It wasn’t a taught course then obviously, but I did my thesis on building a web based agricultural decision supporting system in this little-known programming language called Java. To place this on the evolutionary timescale for you millennials, this was when Java 1 came out and a strange company called Yahoo went public. Exciting times. Imagine what happened next?
Being the incredible future trend predictor that I am, I didn’t continue with Java and I didn’t buy Yahoo stock ( or anybody else’s for that matter). In fact, I didn’t start dabbling with Java again until it cropped up in the stack at work, 6 or more years later. Not sure how it works in your company or how your career has panned out but, aside from the odd course, ALL my IT training has been on the job, building, fixing and supporting stuff.
It occurred to me that I have never done an actual Java course. And to be honest, I’ve always had a little chip on my shoulder about being surrounded by formally trained computer scientists, despite that they were excellent people in excellent teams. In fact, it’s most probably thanks to the latter, that I am competent in technology. Thanks guys!
Anyway Plan A, and to a large degree Plan B, both involve staying in IT. I intend to add to my skills, move on to build some Android and iOS apps, and also study computer science more deeply. However, I thought I’d start, for the aforementioned reasons, by working through some Java courses. If anything it would be nice to have a better grasp on uncommented Lambda Expressions when I come across them ( you know who I’m talking about Mr Ex-Colleague ).
There must be a billion online Java courses out there. Being slightly ol’school, I’m not massively excited by wading through a ton of youtube videos, and I can’t think of a single reason not to go to the source first, Oracle’s The Java Tutorials and the Learning Paths that go with them.
I can’t learn much by just reading. I need to do. So I’m making notes on the material and the exercises as I go through them. I’ve been agonising a bit about where to put these notes, in Google Drive or on a new wiki ( like PBworks or Google Sites or WikiDot or Wikispaces or Wikia – I’m totally wiki’d out now I can tell you ), but this blog is working out for me at the moment as a personal collection of what I am exploring, so it’s going up here. We’ll see how it goes.
Here’s the starting plan:
- Getting Started – Intro, JDK installation, NetBeans, Hello World
- Learning the Java Language – Essential concepts and features.
- Object-Oriented Programming Concepts – objects, messages, classes, inheritance
- Language Basics – variables, arrays, data types, operators, control flow
- Classes and Objects
- Interfaces and Inheritance – subclass, superclass
- Numbers and Strings