I started a side project a view month ago, which turned out to grow into a nice game in which I got insights into various topics. In this post I like to share this with all of you.

The start of the side project

I wanted to learn more about clojure and web development because I see how easy it has become to create a simple user interface within a web browser. The most astonishing thing is that updates and installation are super easy from an users point of view.

This started to grow in a small game, which was inspired by nethack, however has it’s unique gameplay elements. The current state of the game is far from finished.

I like to sketch out my learning journey in a series of blog posts. Hope you enjoy this journey. Here is a small outline.

Architecture

Develop your core logic independent from technology. This allows you to deploy your code into unplanned ways. In my case I decided to deploy this game to github pages, which can only serve static pages.

Testing

Surprise, surprise this is the most important thing. Without this testing solution I would never come as far as in this project. It seems as a lot of overhead, however it really allowed myself restructuring of my solution.

Continuous deployment

Keep it simple. I use a set of bash scripts instead of a full blown CI solution and it works fine for the moment. In case a need to scale it is still pretty simple to extend my current solution.

I even abandon a working Jenkins Pipeline because the simpler solution was much more stable and it simplified my work flow.