$ whoami

My name is Tim Fischer, I'm a 23 year old software engineer and computer science master student at the University of Tübingen. I live in south-western Germany, to more specific in the county of Böblingen, about 30 minutes south of Stuttgart and 20 minutes north of Tübingen. I work at my unisversity as a research assistant in the Database Systems Research Group as a full-stack web-developer. In my free time I do many things, for the most part I code around a bit, playing with some side projects from time to time. But the rest of the time I spend hanging out with some friends and doing gymnastics.

$ ls ~/projects

Most of my projects can be found on my github profile . The following are some of the ones I see as highlights:


A graded group project from university, the gist of it was that we needed to develop an application to predict game in the DFB 1. Liga, the German football league. It encompassed everything from data collection and processing, match prediction using stochastic methods, and UI development for an easy to use interface.


This is a simple implementation of the entity-component pattern. Originally I wanted to also implement so called systems, i.e. scheduled functions that are automatically dispatched with the proper set entities they operate on, but I decided against adding this as their major benefit, that being better CPU-cache performance, doesn't really apply in python. Here is an example use:


An implementation of simple cellular automata in python, but with a few twists. Said twists pertain to the some implementation details as, to make it more challenging, I decided to setup some limitations before actually starting out. The four core limitations I set myself were the following:
  1. The simulation functions should be able to handle n-dimensional rules and states.
  2. The rules should be given as integers. (Though this limits the rules I need to be able to simulate.)
  3. The state should be represented as an integer, making use of the fact that the whole state consists of a n-dimensional array of booleans that can be flattened.
  4. The simulations functions should make use of the integer-nature of the state representation and should minimize the use of iteration.

1D pattern rule 772 radius=2


A fully featured interpreter for Brainfuck in a single Python expression. I decided that just golfing it wasn't enough and as an extra hurdle I should only use a single expression, i.e. a "true oneliner". Though this is possible without it the assignment expression (:=) introduced in Python 3.8 makes this a whole lot less repetitive.

$ cat contact.info