This unit generally isn't taught very well. David Green is a very non-engaging lecturer and you will find the lectures extremely dull. Maybe they picked up after the first week, but I have no idea, because I didn't go to any after it. There really is no need for the lectures; just read ANY book on Java (and you could find at least one for free) and you'll learn the fundamentals. After that, it's just a matter of writing as much code as possible to familiarise yourself with the syntax. The tutorial and lab problems are really lame, but provide adequate practice for most people. There is an alarmingly high failure rate among students in this unit - not sure if that's the teaching or the cohorts for this unit are exceptionally lazy. The exam is easy, way too long, and way too boring for any sane person to do. The questions are pretty much straight out of the previous semesters' exams (mine even had a question copied almost verbatim, complete with typing errors that arose from trying to change the wording). If you're stuck, do what others did to me in every lab session and bug the people who know what to do. I normally wouldn't recommend wasting time reading the lecture notes, but there are a couple of things covered in them that'll appear on the exam and you won't find in a typical Java book/guide, so at least skim-read them the night before the exam.