Thoughts on PSD Semester 3
I decided it was finally time to write up a post about the end of the first semester of the second year of uni. A lot of this post was written about six weeks ago, I decided to let it ferment in my drafts folder for a while. It’s not the best vintage post, but it’s certainly palatable.
The exams this semester were mixed. The first exam, for Data Structures and Patterns, was suspiciously easy. It was exactly the same format as the mid-semester test, except it mostly covered the second half of the course content. Surprisingly, the questions were worded in a way that it practically gave you the answer. Here’s an example, in a question where you had to write an algorithm to traverse a….hold on second.
WARNING: The following paragraphs contain computer science concepts, which may not be suitable for liberal arts, English or communications students. If you happen to be paying money to study a pointless university degree with no employment prospects, please kindly ignore the next few paragraphs on important concepts which may hurt your overly-creative mind.
![]()
Now that the legalities are out of the way, I can continue.
One of the questions on the exam involved an algorithm to traverse every node in a tree, using a simple depth-first traversal. Firstly, I was surprised the exam didn’t test the breadth-first traversal instead, which is a bit more involved than just recursively going through the tree. Secondly, the question actually told us how to implement the algorithm. It asked us to write a depth-first traversal algorithm by first calling PreVisit (in the given Visitor object) on the current tree’s key, then calling the depth-first traversal on each of the subtrees, then calling PostVisit. So, essentially, the question told us exactly how to answer the question.
Another example was earlier, where there was a partial implementation of a tree which has three subtrees, which funnily enough were referred to in the code as the Left, Middle and Right subtrees. Our goal was to fill in the blanks in the code, things like writing a copy constructor to ensure proper copy control. It also had a functions for attaching/detaching trees. Interestingly, it had the code to detach the left and middle subtrees, and asked us for the code to detach the right subtree. So, literally all we had to do was copy the code from the statement just above the question, and change “middle” to “right”. This is why I really enjoyed this exam.
The next exam was Software Development Practices. It was a fairly average exam … it was long and fairly hard (that’s what she said). The case study was all about an ice-cream shop. Personally I’m against food being used in case studies in exams, because it’s always distracting. I wonder how many people included the different flavours in their UML class diagram? I’m sure there would have been a few.
My last two exams fell on the same day. In the morning was Database Management Systems, which was a fairly unpleasant exam but nonetheless it seemed easier than I thought it would be. It’s probably because most of the questions are multiple-choice, and the multiple-choice are able to jog your memory for the short-answer questions. Unfortunately, I spent a disproportionate amount of time studying for DBMS in comparison to Data Communications and Security, which was in the afternoon. The exam was quite long and hard (that’s what she said), and contained a few questions which somewhat tripped me. I know of a few questions which I didn’t explain very well. Things like the intricacies BGP routing, which I couldn’t really explain properly.
My results seemed to somewhat reflect my perceived performance in my exams. Surprisingly Data Comms and Security was one of my better subjects, even though I thought I did quite badly on the exam. Overall, I received three High Distinctions and one Distinction for DBMS. So, this does break my consistent string of HDs. Damnit.
Meh, I kinda expected it, since I always disliked my Database class.
Now that the first semester is over, it looks like it’s time for seven weeks of solid holidays. Or is it? Well, not for me. At the start of the year I was offered a vacation research scholarship at Swinburne’s Centre for Complex Software Systems and Services (CS3). While usually this runs over the summer, I decided to undertake this over the winter to give me some time between second semester and IBL. Basically it means that for the holidays, I’m going to be working at Swinburne helping with research projects. The project I’m working on right now is an interesting peer-to-peer simulation system using Java and JADE (Java Agent Development Framework). Interesting stuff.
Another interesting thing that happened, I finally received my Unicomp Customizer 104 keyboard. I’ll write a full review of it next week, but to summarise it in a word … Nice. Over the past few weeks I’ve become a bit of a keyboard hobbyist. I’m choosing my words carefully here. My friends have accused me of becoming a keyboard enthusiast since now I know things such as the difference between a scissor-switch and a buckling-spring, and who Topre Corporation are. However, I dispute this, because a real enthusiast would own two really awesome quality keyboards, not one. Still, while many seem to think that spending A$180 on a keyboard which doesn’t have a wrist wrest, multimedia buttons, full n-key rollover, an aesthetically-pleasing bezel, macro keys, or a pointless LCD display, the point is I use my keyboard for easily more than eight hours a day, and if it breaks down it will be a huge inconvenience to my life. So, why not get a good one? Typing on this keyboard is like driving a Cadillac. You know it’s nice. A little impractical sometimes, but comfortable to drive.
Apart from this, not a whole lot else is happening in my life. I’m getting into the pretty standard cycle of wake, go to work, work, go home, procrastinate on the internets, sleep. It doesn’t sound that interesting, but it’s not too bad. To pass the extra time I have I might start a holiday project, like get into tinkering with an Arduino or finally get my jukebox system running. The world’s my oyster. Or at least my McNugget.
–Ben
Explore posts in the same categories: Life






