Yesterday I officially started back at The University of Hull for my second year in my Masters of Engineering Degree in Computer Science. This came as a bit of a shock to the system after a very long summer without education and a fantastic freshers week, but I’ve been enjoying every second 🙂
The first lecture I had on Monday afternoon was for the Advanced Programming module and was very interesting, C++ looks similar to C# on the surface but there’s a lot of differences.
The lecturer for the module and head of Department, Warren Viant, even said that a year was long enough only to make us “OK C++ programmers, not great ones” because its a hard language to learn with lots of intricacies.
Right from the offset there was a totally different attitude than last years Programming lectures in which we focused on getting things working well with very readable code even if it wasn’t the most efficient way of doing things — this year Warren wants us to focus on optimization and getting code to run as fast as possible because the requirement for real-time programs is the main reason for using C++.
Next up was artificial intelligence, a module I’m not actually enrolled on and therefore a module I won’t get a grade for but one I’m attending because I find it interesting and want to further my knowledge as much as possible whilst at university.
We started off by discussing what exactly intelligence is and weather or not it would be wrong to turn off (i.e. Kill) a computer which asked you not to because it was intelligent. We then went on to talk about Prolog and how AI programming is a totally different paradigm to any other programming we’ve done before.
The only transferable skill you have from any other form of programming is the ability to touch type
I’m looking forward to learning a totally different way of thinking 🙂
System Analysis, Design and Process
System Analysis, Design and Process is about the business approach behind creating software. We started off the module by talking about how we would work out how long a project would take us to do, how much it would cost us and how much we would charge the custom based on a certain specification. It’s actually quite a difficult thing to do.
We also spoke about how and why so many software projects fail and only 37% were successful last year.
Although this module seems very similar to last years Software Engineering module I’m looking forward to learning more of the skills required to make a business out of building software 🙂
Electronics and Interfacing
Electronics and Interfacing is all about how we connect software to the actual hardware, and how better to start off a module like that then to learn about how electricity works? 🙂 We spent most of the lecture doing that but we started off with a brief overview of what is to come: Infrared Wirelessly Controlled Robots. I can’t wait to get started properly!
2D Graphics and User Interface Design
Finally in 2D graphics and user interface design we had an introduction to the history of computer graphics, which started with a great video about the cold war and nuclear bombs, and then thought about all the use cases for 2D graphics — ranging from CAD and Data Modelling to Games and CGI for Movies.
I’ve said it a lot in this post but I’m really looking forward to learning more about each module this year and am having a great time so far 😀
I posted last week explaining how I was trying to decide which modules to take in the second year of my Masters of Engineering Degree in Computer Science.
As you can see from the above screenshot of the MyAdmin interface — a university website used to choose modules amongst other uni related tasks — I have finally figured out what I want to do, with one caveat.
I mentioned in my last blog post I was torn between two modules, Electronics & Interfacing and Artificial Intelligence. I have formally enrolled myself on the Electronics & Interfacing module, however I intend to go to both sets of lectures in the first few weeks of the semester and then make a choice based on the actual content of the module, rather than the description and title provided to us by the department. I think this a mature approach to making a hard decision, and one Rob recommended himself when I asked for his opinion on which was the better option for me.
The other modules I will be taking in year 2 are:
- Systems Analysis, Design and Process
- Advanced Programming
- 2D Computer Graphics and User Interface Design
- Simulation and 3D Graphics
- Networking and Web Technologies
I’m particularly looking forward to learning C++, which is the industry standard programming language as well as making my own threaded server in Networking 🙂
I can’t wait!