Experience with (pre-)master course software engineering at the Open University

In September this year I started my first course of my master degree in software engineering at the Open University (OU) in the Netherlands. I have now officially completed this first course, so this seems like a good occasion to look back on my experiences so far. The subjects of this first course were object-oriented programming (using Java) and relational databases.

A small side-note for those that do not know, the OU mainly runs remote courses, so all of the materials and lectures are done online.

So let’s get straight to it, so far, I’m liking it, a LOT! Having said that, let’s dive into a little more detail.

Course Materials

The course materials from this first course are very good. They just do so much right. From the clear (standardized) layout that supports using it as a textbook as well as a reference guide, to the actual content which includes clear explanations and good examples.

Apart from the book, the course had a number of graded assignments, each tackling some specific new concept (or a few concepts) while simultaneously building on what was learning during the previous assignments. They succeed not only in preparing you for the exams, but also manage to give you experience with applying the core concepts of the course.

Most of the course materials are made available online. The textbooks are also delivered to your home, which was a pleasant surprise.


The lectures are good, although lectures in general don’t really work for me. I mainly used them as a quick repetition after working through the material on my own and to ask questions.

Also, recording lectures should be a requirements for any university. Without being able to rewatch a lecture, they are basically useless for me. You are either focusing on the big picture, which you could get more efficiently by other means, or you are focusing on keeping up with note-taking, at which point, you actually fail to listen. With recordings both of these problems are solved.


Just like the assignments mentioned earlier, the exams for this first course fit really well with the core concepts of this course. I was able to take the exam with relatively little preparation. That is not to say the exams were easy, it’s just that by the time you have completed the assignments you have internalized the core concepts and have experience with applying them.

The exams also allow students to bring their textbooks (as long as there are no notes inside, highlighting is allowed though). This, in my case, further reduced the time needed for studying in the traditional sense, since there is no need to memorize everything.


One aspect I really liked during this first course is the optional depth. Even though this course was an introductory course, it contained some optional extra’s for those who where interested. The relational databases course for example came with an extra chapter on optimizing queries. This chapter was not tested nor officially part of the course, but still available who wanted to check it out.

My Thoughts So Far, And Going Further

The quality of course materials and the way that exams and assignments are done so far fits extremely well with my personal style of learning, which is driven mostly by my own exploration of the material and the subject matter, and experimentation with the core concepts.

While I could have safely been allowed to skip this course because of my programming experience, I’m actually glad I did take it. On one hand, it allowed me to form my study tactics going into my masters degree (which is vastly different in style than my bachelors degree) in a low pressure situation. I also manged to find time to explore a bit deeper and further than required. This gives me a head start for the next course, something which was an important part of my study strategy while getting my bachelors degree.