OU blog

Personal Blogs

Chris Miles

Thoughts on M250

Visible to anyone in the world

I've been thinking about writing this for the past week or so, since I sat the M250 exam on 4th June, so officially finished the course ten days ago.

But I've been busy; applying for jobs, attending two interviews (in the same day), attempting t get back on track with M256, which I have neglected during the M250 revision period. But I find myself very tired today, so as part of my efforts to keep myself from having an accidental nap, I finally sat down to get my thought out.

M250 Object-oriented programming with Java

M250 is the first step on the Software Development pathway, giving an overview of the object-oriented (OO) approach to programming, through the use of Java. Now, this course isn't going to make you either of:

  1. a Java master
  2. an object-oriented guru

But, it does give a decent overview of the language and the approach. 

Admittedly, some elements of OO didn't fully click with me until I did some outside learning. I did the Ruby track on codecademy.com, which cemented some of the OO ideas in my head. That's not to say that I think the material is sufficiently lacking that you desperately need outside help, just that some of it didn't quite hit the spot for me, but I was lucky enough to find something else that did.

Overall, I found the material fine, covering most elements in sufficient depth and at a reasonable pace. Note, this was true for 'most' of the course. The final unit, on file input/output, seemed somewhat rushed and shallow on certain issues - which isn't what you want to feel when it accounts for 25% of the examination...

I'm not going to go madly into detail about the course beyond this. I 'think' that I found it a good introduction to studying programming at a degree level, but I can't really say, because I won't know for sure until I've gone further (though it does seem that the modules available are becoming somewhat light on actual programming, so there may not be much to follow on from M250. I'm doing M269 in Oct, which uses Python for a computer science, algorithm perspective, but M256 is rather light on actual coding, heavy on the theory of software development). To get back to that point, I think it is a good introduction... 

The exam was the first I have done in 11 years, but I wasn't overly worried about it (you can only do your best) and the small worries I had soon left once I started. 

Now, contrary to all the advice going around, I totally failed to buy any of the past papers and use them to revise. I did download copies of the specimen paper and a practice paper that a tutor wrote and distributed, but I didn't even use these to practice sitting and writing code in exam conditions. By the standards of the advice I was woefully underprepared for the act of sitting the exam. What I did, instead, was concentrate on ensuring that I knew the key concepts I needed to and hung as much extra information off that knowledge as I could manage. I concentrated on the subject matter, whereas it strikes me that much of the advice about preparing is geared more towards practicing for the act of sitting the exam - writing code by hand in a timed environment and getting the right level of detail out in the explanatory questions. Which is important, but no substitute for ensuring you know the material. (I'm afraid to say, judging by the reaction after, some students spent so long practicing with past papers, they ended up training themselves to answer questions exactly like those on past papers. Of course, the questions on our paper were different...)

Overall, I mostly enjoyed the course and would recommend it, as long as you have the intention of having some programming in your degree/repertoire - I wouldn't recommend doing it 'just because', as the 2 TMAs are somewhat in-depth and 50% of the exam is on more in-depth elements of Java (Collections and File I/O), which I struggled with elements of, despite giving over a fair deal of time to the module.

For me, this has scratched an itch a little, leading to me finding other resources to continue learning Java in my spare time (hahaha, spare time?). For others, I suspect it has been the final nail in the coffin of studying with the OU. So, while I would recommend it, bear in mind the following elements, affecting my perspective:

  • I wanted to do the Software Development pathway since I first thought of doing this degree with the OU
  • I have done some programming before (VBA in Excel, SQL, SAS, tutorials on Python/Ruby/JavaScript [codecademy.com]), so I had some idea of the basics - much of the first five units
  • I have the good fortune of having a spare PC at work (off of the works network), which I can use to study at lunchtime - so I loaded up the software and was able to gain back 1/2 hour or an hour regularly, that I would not have got otherwise (this isn't essential, but it did help - for a 30 point course, M250 did take up quite a lot of my study time)
  • I only study 60 points a year (with the intention of dropping to 30 at level 3), because the quality of my learning is more important to me than finishing quickly. I know others doing 90 or 120 points had issues with M250, though I suspect this could be generalised to - those doing 90/120 will have more issues than those doing less.

This review has veered off course a little, to the point where I guess I'm saying that 'I liked M250 and would recommend it, but you probably shouldn't take my word for it, because that's only my personal feeling', which is true of much advice.

I enjoyed it, maybe you will too.

Permalink
Share post

This blog might contain posts that are only visible to logged-in users, or where only logged-in users can comment. If you have an account on the system, please log in for full access.

Total visits to this blog: 31137