While there is conceivably gads to learn just in programming Karel to do assignments, or invent problems to solve with the simply robot, the goal is to learn Java itself. At Stanford the class leaves Karel behind after the first week, and the class moves pretty fast. Last week I got interested in extending Karel, almost cheating by using more advanced solutions than called for and exploring things in Karel that aren’t covered in class, like her paint methods.
At the same time, I want to continue learning at the speed of the class or if possible, faster. I’ve done Java before, so much of this I’ve seen before. I would say thus far I have gained in some experience solving more problems in the assignments than I did when I originally set out to learn Java almost twenty years ago more than learn anything. At lecture 7, I’ve still not seen anything truly new for me. Going through the lectures certainly helps clarify and clear memory cobwebs from the first go around.
While going through lecture 7, I know that very soon I’m going to bump into things that I may have seen before which perplexed me and was never used. That is the true value for me taking new stuff that hearkens old stuff I learned a long time ago. I am wiser, if not smarter today than I’ve ever been. My life experience lets me review materials that I’ve gone over before given new light from learning outside the discipline of programming. This is easily explained by something from somewhere else.
There is a great analogy about filling a big jar with pebbles, one at a time. This instance of the analogy might not be perfect, it’s simply how I think of it. When you want to go fast, you want to avoid grains of sand and start with bigger pebbles the size of the biggest rocks that fit. You’ll filling as much space as possible. You’re also not filling as much space as you could with sand. When you can only go one pebble at a time, start with the big stuff and eventually you will only have enough room for small pebbles and sand.
If what I know about programming is silo’d into a metaphorical jar, twenty years ago I got the big rocks in and largely filled programming Java. I knew generally how Java worked to do things, what some of its limitations were and where it would be extremely useful. The learning long ago informed my thinking around the Search Return Sidecar. The big concept is write once, run anywhere, including applet implementations that live client-side on the browser. It’s a truly platform independent software programming language. Now it’s time for me to work on filling the rest of my jar. There’s a terrible pun there, if you see it.

One of the things you’ll find taking CS106A at Stanford online, is that the version of Eclipse Stanford uses for teaching the course comes with Karel the Robot. You can probably figure out how to get it to work in any version of Eclipse, or run Karel the Robot in any Java IDE but I learned a valuable lesson trying to do this that to save time, I should just stick to the program as set out by the school.
Last week I decided I would apply myself to revisit being a software engineer more than focus on a career in SEO. I already had a career in SEO and the experience left me with the knowledge as part of my DNA. I am keenly aware how important developers who know about SEO are, and how mixed their skills are. At least with me, I can be confident the SEO instruction set is as simple for me as playing with Legos.