Sander van den Oever

Sander van den Oever
Computer Science student

Track: Software Technology
Interests: Software (Web) Engineering
Occupation: PHP Developer

Recent blogs


February 2018
« Dec    


Posted in 2017

Party eh thesistime!

Hi all,

So time is passing by really fast again; I’ve finished lectures for my last course (Security and Cryptography) which means I am now full time in Amsterdam at bunq for my thesis. 😀

So far I’ve mostly been working rather than doing anything for the thesis though. When I started full time it was in the week before a big update event, so a lot of time was spent by everyone on the new features that were about to be launched. It’s really tempting to just forget about the entire thesis, but after all the craziness of the update, I finally started with the actual literature study. So I want to look into something in the direction of Program Comprehension and Traceability of features to code and vice versa. My ultimate goal is to enable developers to get up to speed in a big existing framework without too much efforts (right now a developer needs to spend a lot of time on getting familiar with the structure, coding style, etc.). It would save a lot of time (and hence costs) when developers were to be top efficient earlier on. So I’ve been reading up on visualisation techniques, automatic tracing techniques, etc. I already started making a lot of notes and writing the rough outline of my thesis. I have a great supervisor, Andy Zaidman, who gave me a lot of pointers recently. So I have a clear view of what I will need to do in the upcoming weeks. 🙂 It will be nice! I will try to share my findings in my blog as well, but my NDA might limit me a bit there, so let’s see. 🙂

Other than that bunq is all about doing things differently, so instead of a really formal dinner with all suits and super polite business talks we had a really nice dinner with the entire team together, and afterwards there was a drive-inn casino! Super awesome! These informal events are something I really like about bunq, as well as that every 6 weeks we are moved to different offices. So one week I sit together with another developer, the next office shuffle I end up with Guides (support employees) and Marketing people.

Party and drive-inn casino at bunq's HQ (the bunqr)

Party and drive-inn casino at bunq’s HQ (the bunqr)

Last thing I wanted to share; you might have heard already, but we were caught by a lot of snow last week here in The Netherlands. Which, when travelling by train, is always really inconvenient. (Do mind, biking is not really advised either). But the train schedule tends to get a mess quickly with snow, luckily I barely had any delays, and one day when I arrived home I found this awesome family of snowmen at my front door.

Snowmen at my frontdoor

Snowman at my frontdoor

Right now the Christmas holidays are coming up, so I wish you all a very merry Christmas and a happy, healthy and successful 2o18!


Ciphers, teaching, working,..

Hi all!

The quarter is turning out to be really challenging. The course on Security and Cryptography is really difficult for me, it relies a lot on mathematics / probabilistic calculations. Both are not things I like too much, so it takes me a lot of time. Also all the formal definitions make it hard to follow. Luckily this course is recorded on Collegerama, so I’m rewatching most lectures multiple times now to catch up and pass the exam. Next to that I am an assistant for some courses, I work at bunq and because it sounded fun, I started a MOOC on Railway Engineering.

The course

The very last course for me to complete, the assignments were really challenging, they took a lot of time. Where it said that the estimated effort would be around 12h per assignment I nearly had to spend double, not even to get really great grades in return. So I really need to do well on the final exam, which counts for 60% of the final grade. The assignments consist of questions where we are asked to analyse an encrypted text (encrypted using some shifting algorithms for instance). Those can easily be broken using analysis of characteristics of the English language (or another language for that matter). We also had to break the RSA algorithm, from the public key we had to work our way to the private key. Really interesting to do (once)!

Script to decrypt a simple cipher

Image – Quick, hacky and easy script to decrypt a simple cipher


Next to this course I assist in two courses; I help out bachelor freshmen in the Object-Oriented Programming course. Last week they had a mock-exam to experience the time pressure and atmosphere of a real exam. Only this time we would still be around to answer questions. The other course is on Software Engineering Methods (2nd year, BSc). Here I only arrange the logistic part of the course, align with all other assistants, collect grades, etc. I will really miss these jobs once I graduate. 🙂

Railway Engineering

I saw an ad for this MOOC and it caught my attention. I really like the infrastructure / public transport systems so I signed up for the course. It’s not really difficult at the moment, but it is an interesting change from Computer Science for a while. Within this MOOC they use a simulator where you can build your own network of trains connecting cities on a virtual map. You will need to take into account to amount of passengers on a line, maintenance, disruptions, etc. 🙂

Thesis preparations

During the free time I have (barely any at the moment) I try to read some papers. My supervisor, Andy Zaidman, provided me with some really useful papers, to help me explore the domain and find a nice topic for my thesis. At this point we are looking into Program Comprehension and Traceability of features to documentation and vice versa. The main idea behind it will be to allow developers to understand a given piece of software faster to waste less time and be more productive. Stay tuned for more!

Starting with the last bits

The new year has started and it is superbusy! This year I will be following my very last course and make my very last exam (for the master at least). The final course I will need to complete is Security and Cryptography. Here we talk about how your data can be encrypted properly using modern techniques.

Security and Cryptography

In this course we talk about what “Secure” means and how to secure data. To understand the modern techniques we also look at examples of old, broken, techniques. The lab is quite interesting, we get to break cipher text to show the weaknesses of old encryption methods. It really helps to gain some understanding on the matter. This course is tele-lectured to Twente, meaning that students from that university see the lecture over a video-stream. The system is not always working perfect, but in theory it’s a really nice system to follow courses from another university while being in your own university.

Let’s go to Groningen

Dutch students are eligible for a public transport subscription that lets them travel throughout the entire country for €0,- (it’s valid either midweek or in the weekend, outside the chosen timeframe we get a discount of 40%). My subscription ends soon, so to “celebrate” I went to Groningen by train with my girlfriend. Although the Netherlands is a small country it still takes you almost 3 hours to get from Delft to Groningen. We left in the early morning to visit a “Behind the Scenes”-programme at Schiphol Airport (fun thing to do!). Afterwards we travelled to Groningen. In Groningen we visited several board-game shops and walked around in the city center. After a delightful dinner at “La Cubanita” we were ready for the next 3 hours in the train. When you get to Delft, La Cubanita also has a branch in Delft, definitely check it out at the Beestenmarkt. You can order unlimited tapas there for a affordable price.


Groningen – Facades built from beer crates and dinner in La Cubanita

S.O.S., I have time left? What to do?

Okay, time left might be a bit of an exaggeration. However, during the holidays I finally got to do some of the things I wanted to do for a longer time. For instance at the end of August I went karting with a group of friends at RacePlanet Delft. At certain times they combine the three individual race tracks to bigger tracks so it’s really cool to race in such a heat! You can see what it looks like in the impression on their website.

Other than this I mostly visited friends, family, attended birthday parties and I worked as well. I work at bunq, but next to that I also help out some teachers with their courses. For example I recruited the Teaching Assistants for a course and I’m helping out as a assistant in the very first programming course for the Computer Science freshmen. I remember like yesterday what it was like to sit in those lab sessions while I had no freaking clue as to what to do. Things changed, luckily, now I know a little bit more. 😉


Hi all! As the holidays are here there are no more lectures for me to follow until Q1 starts. That leaves me a lot of time to do stuff I really enjoy. One of those things is developing software. That’s why I will be working at bunq during the summer. This also helps me to prepare for my thesis in the end, which I will be completing at the same company. So, maybe you don’t really know what “bunq” is; it’s a ‘fintech’ company. Officially speaking it’s a bank (with a license and all) but bunq rather sees itself as a tech-company that happens to have a banking license. So what I really like there is that they’ve build everything from scratch, with a few simple design principles in mind. The codebase however is quite big, and it is always challenging to understand the structure of such a project.

Working at the company where I will be doing my thesis also allows me to orientate for possible thesis topics. As my supervisor is focusing his research on software testing and software evolution it seems obvious to go that way. At this point I’m really intrigued by the onboarding process for a software project; I think a lot of time can be saved here so I’ll be looking into possible studies there. I still have a lot of time left anyway to decide.

Apart from working I also try to enjoy some of my spare time; I went to Nijmegen to support my girlfriend at the Vierdaagse (Four Days Marches). The weather was really awesome and the atmosphere was also great. I rather not walk 4 times 40km / day but I have a lot of respect for those who participated. Furthermore I went for some shopping in the Hague, dropped some of my friends off at Schiphol Airport and planned meetings. We’re still talking to multiple parties for the enrolment analysis tool. I’ve managed to get a Single-Sign On setup working, so now we can authenticate users with the official NetID system used here at the university.

Vierdaagse @ Nijmegen

Vierdaagse @ Nijmegen

Vierdaagse @ Nijmegen with friends / family.

DHENIM Congress and wrapping up the quarter

Hi everyone!

A few hours ago I handed in the very last assignment of this year, finally the holidays are here!

So let me give an overview of what kept me occupied this quarter.

Web Data Management

This was a new course for me that was taught in Q4. Within this course we learned how to deal with distributed database systems and others; how to have an always available system, how to ensure consistency of your data across all nodes, how to divide data over your nodes? The course came with either a teaching or a development assignment where we could pick the one we liked most. In groups of 3 to 4 students you could give a 45 minute lecture to the other students, or you could implement a movie information system. I chose the development assignment. We had to implement the tool for PostgreSQL (dataset was given) and then transform it to have a Document-based database and a Graph-based database as a data store. We chose to use CouchDB and Neo4J from the list of allowed DBMS’es. By implementing all of these different backends we really got to know about the differences and advantages of the various systems. We wanted to be able to compare the different backends easily in terms of performance, so we created a very simple HTML interface where results would be shown after the requests had ran in parallel. It turned out that configuring the servers on our Amazon servers was the hardest part for us, but it was extremely useful to learn this stuff! Did you know that you can apply for free Amazon Web Services stuff?

Battle of the DB's

Battle of the DB’s – Overview of the tool

Intelligent User Experience Engineering

This is the course where we had to program the Nao robots and see whether they can support children that are being treated for cancer. To test our design we had to perform an experiment with actual children. Testing with actual cancer patients would be a bit too much, so we could test with a class of children from a local primary school. We programmed the robot to explain the flu to the children and tested different approaches of explaining to see which one worked best. We learned a lot here, especially about doing research that involves children. Children tend to give completely unexpected or unreliable answers (ceiling effect; they answer what they think is the right answer). It was a really fun experience to do this experiment and program the Nao’s.

What’s left?

So what’s left? At this point I’ve managed to collect 71 ECTS (as planned). Next year I’ve to collect the remaining 50 ECTS; 45 ECTS for my thesis and 5 ECTS for the last course I picked (Security & Cryptography). So that means that my Q1 shouldn’t be too difficult to manage. I will assist first-year students with an Object-Oriented Programming course (entry level) probably and work some hours at bunq to prepare for my thesis.

DHENIM Congress

In Q2 I (together with my team) developed a tool for the analysis of the international master enrolment data. We actually continued the development after the course had finished. The marketing department of the university was really interested in the tool. So, they paid us to expand it. A few weeks back they invited us to talk at the congress called DHENIM (Dutch Higher Education Network for International Marketing). We got 45 minutes to present the tool to various marketeers from all over the world. We even got some questions on where to get it and whether we could build a similar tool for different universities and institutes as well. Really fun to see how a course-project can grow into a bigger project.

DHENIM - Presentation

DHENIM – Presentation about the tool

First day/event at bunq

So, as I mentioned before, I will be doing my thesis at bunq. In order to prepare a bit and gain more experience I’ll start working there part-time during the summer and Q1. Normally, you’d have a first day where you would be at the office, setup everything, get to know the important people, get familiar with the tools used, etc. Nothing like that for me. I was invited to join the team on one of the frequently organised team events. This time we went on a boat through Amsterdam. It was a really informal way to get to know the first of my colleagues while enjoying some music and drinks (and of course, some rain, because yeah, it’s still The Netherlands) ;-).

On the 'IJ' in Amsterdam

On the ‘IJ’ in Amsterdam

Docked under a bridge because of the rain

Docked under a bridge because of the rain

So, that was the year for now! I’ll be continuing to work on the tool for the Marketing department, start at bunq, and relax a bit as well. Enjoy your summer!

Thesis stuff: bunq

Hi everyone!

Last quarter I’ve been working a lot on some of my courses and next to that I invested a lot of time orientating for a thesis company/subject. I’ve contacted several companies to check out the possibilities. Examples are and bunq. Both are online based companies, the first one is an online payment provider (links web shops to banks) and the latter one is literally an online bank. I have experienced that it is really important to work on your network while studying. For instance, I knew someone in who could help me find the right people and who knew what my capabilities were. For bunq the same applies; Ali Niknam visited the Software Architecture course (guest lecture) and afterwards you could talk to him and ask him some questions. And here I am, after a few talks at bunq’s headquarters (in Amsterdam) I’ll be doing my thesis at bunq. The subject is yet to be determined as I will start working on my thesis in November (I want to finish all my courses first). Finding a supervisor for your thesis is also really easy. Most teachers/professors have an open-door policy. Whenever they are there (and not in a meeting) you can just knock on their door and have a chat. Before, I wanted to do my thesis in the Programming Languages (PL) group, but I discovered that I liked the Software Engineering Research Group (SERG) even more. I’ve been talking a lot to Alberto Bacchelli and Andy Zaidman. They helped me a lot while finding a company / thesis; providing examples theses, giving advise, etc. If I were to give advise to anyone that is orientating for his/her thesis it would be to talk, soon. Start talking to your teachers, find out about their interests and research and see what you like most. Most teachers have huge networks, I know a friend of mine who’s now in Silicon Valley simply by talking to the right professor (who happened to know a nice project there). I started orientating early on, I’d advise the same to others, it’ll give you enough time to think about what you really want.

bunq headquarters

bunq headquarters

Anyway, back to the courses.  I finished the Information Retrieval course. It’s a tough one, but really interesting. We had to implement a system that was able to collect different kinds of information about hospitals (from different sources). So we would collect the locational data, specialists working in the hospital (by analysing their website), clinical trials at the hospital (from other databases) and so on. In the end we built a tool that allows you to search a nearby hospital that has expertise in a certain field (based on the specialists and trials in that specific hospital). Next to the group work we had to write a literature survey. Overall a lot of work, but I am pleased with the project outcome and I hope to have passed the survey as well.

For Intelligent User Experience Engineering we have actually started implementing the Nao robot. Next week we will be conducting experiments with real children to see whether our robot behaviour has the expected outcome. Programming the Nao is quite simple actually, you connect modules using lines and these modules will be played in chronological order. Then you can add some conditionals (speech recognition, object recognition, etc.) and speaking abilities. It did not take us too much time to build the first prototype.

Nao programming

Nao programming in Choregraphe

I have one new course in the last quarter of this year: Web Data Management. Here we learn all kinds of stuff about databases, distributing them, etc. Our project is a hands-on assignment on databases. We get a Postgres database and we have to convert it into (in our case) a similar CouchDB database and a Neo4J database. The data is from IMDB, we need to built a query feature around these different database backends. Really interesting, we will be using Python (Flask) and some other libraries to build something nice. I’ll update on this next time!

See ya!


We are already halfway Q3. Time is flying by. At this point I’m following two new courses; Information Retrieval and Intelligent User Experience Engineering. Within Information Retrieval we learn about search engines, indexing, (web)scraping, Machine Learning (related to IR) and much more. The course is accompanied by a nice project and an individual assignment (literature survey). The other course (IUXE) is mostly about the project; we have to develop a method for a robot (NAO) to interact with childhood cancer patients and act like a personal buddy for these kids while they undergo their treatments. Very interesting! Last but not least I’m assisting the Software Architecture course, which I followed myself last year.


Last week I was present at the Master Event to represent the Software Technology track. Rucha was there for the Data Science and Technology track. Together we got a lot of questions about the Computer Science program and the differences between the tracks. One of the questions was about why I like studying in Delft and what I like about the program. The program I’ve mentioned a lot already, but what I like most is the freedom you get. There are some constraints (the common core), but other than that you are really free to choose any course you like. You can specialize in the fields that you find interesting. Secondly, Delft has a good reputation, which offers a really good perspective for the future. Companies are really eager to have you on board. But why not study Computer Science somewhere else? Honestly, I followed my Bachelors here and I got really attached to Delft, so I just did not want to leave Delft behind. I chose Delft previously because it has a really nice university and campus. Furthermore I liked the atmosphere, which you can experience during Shadow Days (I can really recommend that!). And of course, there’s the historical city centre with its many pubs and restaurants. Every once in a while I grab a movie with some friends and a drink afterwards. Even in the winter it’s really nice to sit outside.

Promo Team EEMCS – Master Event March ’16


Last Sunday the weather was really nice, some sunshine (yes!), nice temperature. So I decided to walk to Scheveningen Beach with my girlfriend. It turns out that it is quite a walk, but it is a nice one. I wrote about Scheveningen earlier, it’s just a nice place to visit to stretch your legs, walk on the beach or just release the exam stress. When the weather is nice you can be amazed by the amount of people that go there. 🙂

Next time I hope to give some more info on the projects we’ve been working on; show some cool results for instance, but right now it’s mostly drafts and design proposals.

See ya!

Only 4 more courses to go

Hi all,

It has been a while since the last blog. I planned on writing a blog around the Christmas break, but I was occupied with some of my courses. Last Friday I had the last of my exams; Behaviour Change Support Systems. That exam concluded the second quarter of this year. I wanted to highlight a couple of things that kept me busy during this quarter.

Behaviour Change Support Systems

This course was about building applications that focus on changing / learning behaviour. To understand the concepts here we learned about many psychological and behaviour related models. During the course we had to design our own system so that we could apply the theory in practice. My team worked on an application that would motivate people to take the stairs instead of the elevator. This sounds fairly simple, but there are many things that you should consider when designing such an application. The course follows the four stages as in the design strategy as discussed by Wendel (2013, O’Reilly Media); understanding, discovering, designing and refining.

Four Design Stages of Behaviour

Four Design Stages of Behaviour

Compiler Construction

Finished, at last. I finished the last lab assignments and we learned the last theories behind garbage collection, register allocation, parsing algorithms, etc. The exam was pretty tough, I didn’t manage to finish in time because we had to write a lot of (intermediate) results. I hope that it has been enough to pass the course.

Data Science for the 99%

If I’d be able to recommend any course, I’d definitely recommend this one by Felienne Hermans. The MOOC is not too interesting for Computer Science students, or well, it’s fairly easy probably. But the project makes the course really interesting. Together with some of my fellow students we’ve built a visualisation of the Master enrolments data. The application has been built using a Lumen powered API and a simple, Bootstrap styled, Plotly.JS powered HTML page. Using the dynamic visualisations one can easily get an overview of all the data that normally gets presented from a huge Excel sheet (thousands of entries that is). The visualisation is useful for the marketing department, which liked it very much. They even said they might want to show it to the Executive Board, in which case we could present it ourselves to the board. Anyway, I was very pleased with the outcome of this project.

Master Enrolment data visualised in a tool

Master Enrolment data visualised in a tool


Next to several side-projects I’m also a volunteer for the CoderDojo Nederland organisation. We organise coding events for children from 7 up to 17 years old. They can learn how to build their own website, game or robots free of charge. Each month I help organising one of the so called dojo’s. It’s really fun to help these kids with getting started, explaining the basics, and see what they end up with when they try a bit on their own. Delft also has a local CoderDojo group ( CoderDojo is an international initiative so chances are that there’s a CoderDojo group near you too.

CoderDojo celebrating its 1-year anniversary

CoderDojo celebrating its 1-year anniversary

So, that’s (part of) what kept me busy in the past quarter. Next quarter there will be two new courses for me, while I also assist in the Software Architecture course that I took last year. The countdown has started,.. only 4 more courses until I have completed them all. The last (minor) thing to do then is the Master thesis project, more about that in a future blog.


© 2011 TU Delft