I started a new project in November, built around a hobby (ok, passion) of mine: chess.

There are always several things in the broadly interpreted world of software development I want to learn about.

What usually works for me is instead of (or rather, in addition to) reading articles and books or watching videos about the topic, I build something with those tools.

In the process, I become better at understanding and using said tools and my knowledge sinks in deeper as I'll have learnt through practice, through building.

The tools I want to learn about?

As the author of a book on Ember.js and earning my bread with the framework, I know a decent amount about how to build stuff for the current stable version of Ember. However, and this might be true for other JavaScript frameworks, the pace of innovation and the amount of shiny stuff coming down the pipe is nothing short of breath-taking so I wanted to build something with the state-of-the-art Ember.

Another piece of software I've always been fascinated by (but never having actually taken the time to learn about) is D3. The core concepts are beautifully simple yet powerful and the graphs you can build with it are both appetizing and can present data in a way that can lead to new insights (or just presents the viewer with the most natural way to see relationships between data points).

I also wanted to learn about TypeScript as the idea of being able to catch bugs with some extra effort and having my IDE enhanced by the power of types has appealed to me for a while now.

Last, but not least, I want to improve my CSS skills and master TailwindCSS in particular. I learned about Tailwind from the EmberMap guys and then attended their workshop at EmberConf '18 where I really got the bug and was wholly convinced that functional CSS is a great way to style your apps.

So the foundation is cutting edge Ember.js, D3, TypeScript and Tailwind. We'll see where it takes me and what detours I need to take.

Why chess? Well, there are amazingly good sites for learning and playing chess (like Chessable, chess.com and Lichess) but not so great ones when it comes to showing the cream of the crop of the chess world. Presenting the results of international tournaments, player rankings, games, etc. in a decent way and browsing through them is an under-served market.

The scope also seems manageable for a side-project (although these side-projects have a tendency to grow out-of-bounds, so I hear) that I expect to spend a few hours , around half a day, each week.

My aim with this newly started development journal is to track progress with the project while presenting it to you. To tell you about what I did, what I learned and what I expect to do next. My successes and failures.

Expect regular, small posts about my progress.

I'd be honored if you accompanied me in my journey.