Last night was a wash Java wise. I’ll be writing another post soon, once I’ve gone through my text book1 , and dissecting what we covered last night. Until I do that, I’m completely lost. And not because I can’t understand it so much as the delivery was all over the place.

My lecturer complained a couple of times that the text and notes go into complicated areas that if he were to teach it, would not be covered yet — which is fair enough. But then time and again he himself would veer off into areas that I’m sure will be covered in a few weeks (ie. not now) and just makes things more confusing now.

And what is with using “Dog” as an example of a program? Every introduction to programming I’ve read uses dogs, cats, cars and pizza to explain classes. That’s useful for about as long as it takes for you to “get” that a class can have attributes and functions, but beyond that is completely meaningless in a practical sense. Using dogs for coding examples just makes my brain hurt, because I can’t see how you can perform arithmetic on a dog, or use a dog to perform a function for another dog. I get that it’s using simple things to explain new concepts, but to me it just clouds the issue. Give me a real example (a simple one) of how making a function and calling it generates a result, and I’ll be happy. Unless your example is int x = a+b; - that’s almost as meaningless as Dog().

I apologise if I’ve used the incorrect terms for things in the previous paragraph. I also stress that I can’t do better or think of more useful examples because I still can’t program yet. But I’m working on it. And I’m gonna’ read a chapter ahead this time, as I suspect my classmates are only ahead of me by a hair as I’m pretty sure all the questions they were asking would have been straight forward and obvious if they were reading the text (judging by the questions they asked about stuff even I knew).

Please correct me or share your thoughts about how Dog() is actually a useful thing to learn!

  1. yes I have it now! ↩︎