Written on August 12, 2010

It's been a while since I wrote another blog post, but here I am again – alive and kicking. When I started writing this post, I was located in Belek, Turkey. I went to a four-star club hotel with a little too much families and crying babies. But I had a good time together with my girlfriend.
Preluding this holiday was my final semester at Ghent University. And it was quite a busy one, mostly due to my master dissertation. However the result is truely satisfying: I'm graduated!

A quick overview of my student career

Graduation is the perfect time to look back on a student career. So here we go.

It all started during secondary school. While experimenting with Turbo Pascal and Visual Basic, I really enjoyed creating my own small programs to various problems. So I decided to start a study in Informatics and Computer Sciences to learn some real programming languages.

First I started a 3-year Bachelor Study Informatics at the Sciences Department of Ghent University. In the first 2 years of this study I've had a pretty rough time. Especially the courses regarding mathematics did cost a lot of effort. For instance: linear algebra, discrete mathematics, probability theory, solving differential equations and so on. Some other major courses in this study were formal languages, data structures and algorithms. Fortunately the 3rd and final year was far less theoretical and was concluded with the development of a web application in Java – the programming language on which this entire study was focused.

Next I had the choice between staying at the Sciences Department or moving to the Engineering Department. I picked the latter one because the first choice involved too much mathematics and I was more interested in computers and programming. So I started a 2-year Master Study Computer Sciences with main subject Software Engineering. Other options were ICT or Embedded Systems. Note that I almost picked Embedded Systems as main subject. This, however, implicated an extra year to gain some knowledge in physics and electronic networks.

The master study involved less theory and, as a consequence, more project-related work. That is quite normal because a bachelor study only learns you the basics, which involves a lot of theory. I myself experienced it as if I knew something about each different topic in the computer sciences area, but not enough to be an expert. That's what this main subject is for. It focuses on a specific subject matter. The master study is concluded with a master thesis, which the next paragraphs will describe in more detail.

My master dissertation

In the first year of my master study, I had to make a choice between lots of interesting topics. However the list was quickly narrowed down to only 3 subjects:

I picked the first subject because I liked the idea of protecting my own code against software pirates. My best friend, Wim Vander Schelden (Fixnum on the right sidebar), picked the same subject, probably because we both like low-level programming. So we were given the choice of researching a different topic each on our own, or bundling our knowledge and skills to research a more advanced topic. We accepted the challenge and the result is a Java bytecode obfuscation framework with several built-in bytecode transformations. The following abstract should clarify things.

Since bytecode-based languages have become dominant in software engineering, they have also become an interesting target for analysis, reverse engineering and other attacks. In contrast to machine language, bytecode often contains a large amount of metadata which can be used to recover the original design of an application and many aspects of the software engineering process. This means that many attacks become significantly easier when compared to their machine language equivalents. Over the past year, we have attempted to make bytecode applications more secure by researching transformations on bytecode and its metadata to hide, remove or obfuscate the familiar building blocks of software engineering.

If you're interested in reading our extended abstract (only 2 pages), it can be downloaded here.

Holiday plans

After graduation I went to Rock Werchter for the 6th time. This year we picked the A3 camping. Just like previous year, the weather was too hot. But I've had a great time. My top five this year: 1. Green Day - 2. Muse - 3. Editors - 4. Rammstein - 5. Florence + The Machine. This edition of Rock Werchter also coincided with the semi-finals of the FIFA World Cup. So I've seen idiomatic Dutch and German people all over the place.

In the introduction of this article, I've talked about my holiday to Turkey. During this relaxing vacation, I've spend most of the time by the swimming pool with some refreshing cocktails. So it was kind of a do nothing holiday.

In the meantime I've earned some money as a hamburger seller to afford all this.
I've also had plans to go to the 25th edition of Pukkelpop – another great Belgian festival – but unfortunately it's sold out.

What's next?

A few months ago I was first considering to stay at Ghent University to obtain a Ph. D in Computer Sciences, but that idea was quickly dismissed when I got a job offer from Alcatel-Lucent, a company that fulfills all of my wishes. I should point out that I don't like doing repeating work (e.g. web application design) nor consultancy. What I do like is R&D (research and development), and that's the kind of stuff I will be doing at Alcatel-Lucent from September 1. I still don't know exactly what my function will be, but I will be working within the IP Department.

Because the company is located in Antwerp, I decided to move to a small studio in Ghent. That shortens the trip from 1.5 hours to 45 minutes. I still have to paint and furnish this new studio, so a lot of work still has to be done. Now all I need are the keys, which should be resolved next Monday.

Conclusion: with the end of my student career comes the beginning of my job career. Some people say ''that's unfortunate'', but you should start one day or another. Anyway, I'll keep you posted.