Education and Interests My Projects / Skills My Setup

Education and InterestsThe majority of my education took place in the Leipzig International School (LIS), which is also in my hometown. in the LIS I completed the IB (International Baccalaureate) programme, a well rounded and extensive high-school program that did a good job preparing me for university. Early on I already took a lot of interest in computers, which my teacher also supported and enabled. My teacher helped me achieved top grades in the class and gain a strong headstart on a lot of CS topics. I also got a perfect grade in my Computer Science Internal Assessment (an essay-like report, and in this case also programming assignment).

Now I have moved on to the TU Delft in the Netherlands, studying Computer Science and Engineering, a broad programme which enables students to focus on many aspects of Computer Science. This also includes a good range of variants, for which I chose the systems variant.

My Projects / Skills

Golang

Quotebook.page - A small page that I created for a group of friends in which they should be able to easily save quotes, the backend is written in Go, and uses a simple SQLite3 database. There is also a branch that implements a fancier interface using Javascript (on the front-end not the back-end, the original branch contains no javascript), written by one of the friends.

Saalbach.dev - A small personal website so that people can find out things about me and you are probably using it right now, at least I'd kind of hope so? The backend is in Go but nothing super special.

Assembly

Goosyroad - A game written for one of my uni courses together with a teammate, that implements a basic 2D crossy-road like game in x86-64 (GAS not Intel Syntax) Assembly using Linux calling conventions and system-calls (i.e. don't run it on Windows).

C

TermStop - A small project that is simply a terminal stopwatch with some basic flags and things. I wrote it in order to try out some more C programming, experiment with threads and just solidify my C knowledge and even expand it a bit, for example with flag parsing.

Java

Grid Rider Battlecode - Here I participated in a Battlecode hosted by MIT, where we placed in the 80th percentile. Together with a team from my school we wrote a bot in Java in order to defeat our opponents in a scenario setup by the MIT team. We competed in the year 2020.

Python

Robit Transpiler - The Robit Transpiler is a project that implement the IGCSE Pseudocode (semi-)specifications in order to privde students with an actual working interpreter for a language that is otherwise only Pseudocode and harder to logically check. (Once again WIP)

sis50.nl - A house website for the student house I live at so that we can coordinate cooking, shopping, notices and also look at some nice XKCD comics. Here the backend is in Python, but once again nothing super fancy, except for perhaps the WebSockets involved. (Old and soon to be re-written with Go and a better style)

Genetic Algorithm for the Traveling Salesman Problem - A project written in Python back in high school in which I constructed a basic genetic algorithm in order to solve the traveling salesman problem. The program is very basic, with a preset "map". There are also quite many optimisations that could be done.

Misc

Arch Linux - I avidly use Arch Linux and have done a decent amount of work to ensure that I am happy with my setup and that I am not only comfortable, but also efficient in it.

Neovim - Neovim is my editor of choice, due to it's fast start times, wonderful extensibility, efficiency and just generally the great editing experience that most Vim-like editors provide.

Golang (Self-taught) - Go is an efficient, modern and good utility language that can be used for multiple applications, such as web services. (And is also able to provide performance). Therefore I made the decision to attempt multiple projects, slowly and steadily increasing my ability with the language, so that I have it in my toolbelt.

Java - As part of my university courses at TU Delft we have been completing projects (also in groups) in Java. Also using Springboot in order to provide network-connectivity.

ASM & C - During a university class in the first quarter of the first year (and second quarter of the second year) of my first year at TU Delft there was classes covering GAS-Syntax x86-64 assembly and the C language, both providing multiple challenging assignments in order to prove your understanding of assembly, C and low-level functions of a computer and other systems as well, as, for example, for one of the classes we constructed and programmed a robot and also a Hash map.

Python - Python is a scripting language that I learned in high school and a language in which I am confident. It's something that I wrote many of my early projects with as it was the first language that I learned about more deeply.

My SetupAs already mentioned on the start page, I am an avid linux user, who has also spent a good bit of time tuning his setup, setting it up to his liking and thinking about his workflow. You can see my exact configuration on my GitHub (here) but to also show it here:

In truth I have 2 setups, though using my GitHub I share the configuration, though to be complete I will list them here: