FLYNT251 ABOUT BLOG RESOURCES PROJECTS

CS118 - Programming for Computer Scientists

If you've got a solid background in programming already, and/or have some projects under your belt, you should be able to blitz through this module without issues.

This module is a whistle-stop tutorial of basic programming concepts, as well as some of the additional quirks of Java, this module's language of choice. It covers all the basics of procedural programming, object-oriented programming, interfaces and concurrency.

W3Schools []

W3Schools is easily one of the best resources I've used where it comes to learning a new programming language. Each tutorial section will give you an installation guide, and separates individual concepts in the sidebar. There are code blocks that you can try out on the website if there are certain bits you want to experiment with as well.

Personal Tips

When completing the coursework for this module, you have two options for writing code: using your own machine, or using the lab computers. My recommendation is to use the lab computers, as these will use the same version of Java that the assessors use, whereas the version you install on your own device may be different, and perform slightly differently to what is expected.

If you still want to use your device, I would suggest using a remote connection. The Department of Computer Science (DCS) provides instructions on how to do this, and you can set up a connection through Visual Studio Code and FileZilla to access your files.

My Thoughts

Even though I had a strong background in programming before coming to Warwick, I still attended the lectures for this module, not only because I was not familiar with Java yet, but also because the module is taught very well. The slides and overall presentation in lectures is engaging, and keeps the content interesting.

The coursework is not anything to be worried about. It only requires basic knowledge in programming, and there is a lot of hand-holding, especially in the first half of it. Just be sure to comment your code effectively, and follow the specification where needed.

The exam content is also fairly simple to understand, but features some additional Java-related quirks. It will require you to write code by hand, though, so you'll need to be writing quickly. This year its difficulty was in line with prior exams.