What have I been doing?

Here's a quick peep to some stuff I have been working on. Some of the projects are open-source and thus the code is available for review. Feel free to contact me with questions about any of the projects on the page.

This page doesn't include stuff I've built for my current job but if you're interested, I can drop a few links any time!

Your project here?


Hit me up if you have an interesting project I could help with! I'm interested in projects that are technically challenging and have a positive impact on society.


Personal, open source
  • TypeScript
  • CLI

ts-to-io is a tool for programmatically generating io-ts codecs from Typescript types and interfaces. It uses the TS compiler API to inspect the source types and to emit decoders. I've written a bit about the project in the blog.

Troll programming language OCaml port

Personal, open source
  • OCaml
  • Programming language

As both an avid tabletop role-player and a programmer, I like to imagine how novel tools could help streamline the playing experience. I ported the probabilistic domain specific Troll programming language from the initial Standard ML implementation to Ocaml with providing better tooling for the language as my goal. The work is ongoing but so far I've implemented the basics of the language on OCaml, added minimal optimizations for CPU-intensive programs, managed to compile the interpreter for Javascript runtimes and created a syntax highlighting plugin. The source of the port is available here.


Personal, open source
  • Ruby
  • Jekyll
  • Web

As a byproduct of my larger web page update of 2016 I wrote a Jekyll plugin for automating generating Amplified Mobile Page versions of Jekyll posts. The plugin is still in an early version but is already in use on juusomikkonen.com. The source is available in my GitHub.

I'll be writing to my blog about the plugin and its development soon. In the meantime I'd really appreciate feedback and suggestions on the plugin. There are still important features to be implemented and a bunch of tasks that require way too much manual configuration.

My home page

  • HTML5
  • Web
  • Jekyll

That's the website you're looking at right now! Launched 24th July 2015, my homepage is my first actual web project. Most of the content is still quite static - mostly because there is no real call for dynamic HTML creation on a straightforward home page.

My goal was to create clean, simple and responsive design that presents the content nicely on any device. I'd be glad to hear feedback on how I succeeded!

The page is still in an early phase and I believe there is still much room for improvement. I'll be updating content and fine-tuning the appearance and functionality of the page regularly.

Graph application for desktop

Personal, open source
  • Java

In summer 2015 I had some free time along my work, so I set myself a goal to learn Java. My initial plan was to go mobile and get into Android development (which I did not end up doing - yet). I started by experimenting with Java basics and eventually started building a desktop application for drawing 2-dimensional graphs from user input.

The source code (still under development) can be found on my GitHub repository.

Particle physics simulation software

University of Jyväskylä
  • C++

In summer 2012 I worked as a trainee at the department of physics in University of Jyväskylä. I worked as a part of the experimental particle physics group. My task was to write code to simulate proton-proton collisions similar to the ones in the Large Hadron Collider in CERN and to collect data on certain particle decay chains.

I worked on the project for a month in total, successfully finishing the code to simulate the collisions as well as collect and analyze the results.