Welcome to my blog. I'm currently mostly interested in Flutter and Clojure, with a strong focus on an open source application called Lotti. You can find all my open source projects on my GitHub profile. Follow me to stay up to date with my latest work. I'm available for shorter or longer consulting gigs. Please do get in touch to find out more, either by email on my GitHub profile or via LinkedIn.
Dear Reader, dear Friend Today's blog post is dedicated to Flutter and how it enables me to build finally what I've envisioned for years…
Since my last blog post, besides daytime work, I've been working on a rewrite of my data-driven journaling app (previously called Meins, now…
This is the first part of a series on how I built an intelligent journaling application that I use every single day - as a desktop…
I started my blog back in 2013 using Octopress as a static site generator, generating a bunch of files that nginx would serve…
A couple of weeks ago I introduced meo , the intelligent journal that my beloved grandma inspired around two years ago. Since that blog…
I would like to dedicate this blog post to my grandma . She just turned 94. Happy birthday, Grandma, I love you. This is a perfect time for…
Oh hey, I'm back. Been a while. Today, I want to share with you how I'm using systemd to start my Clojure applications on matthiasnehlsen…
Today, I have another sample application for the systems-toolbox library for you. This application measures roundtrip times of a…
TL;DR: I've been developing a library for building systems, and it has already made the codebase of the BirdWatch application much simpler…
So within the two weeks, I spent a fair amount of time with something that should seem fairly obvious to someone who uses computers a lot…
This is a rant. I've been having issues with my Retina MacBook lately, to the point where I am craving a Linux-based laptop. But there are…
Most of this week, I was working on the client-side codebase of my BirdWatch application in order to remove the hairball in its…
I’ve been struggling with finishing the next chapter of my "Building a System in Clojure" book. I tried to explain and draw the client…
Last week, I published the very first version of my "Building a System in Clojure" book. I’m thrilled by the amount of interest it has…
I thought about where to take my series about Building a System in Clojure next and realized that I don't like the format of a blog…
Last week was great. I had just come back from my trip to the United States the week before, where I attended the Conj and got to hang out…
Dear Scala, Do you remember how we first met, back in 2012? I thought your functional approach was fresh, and different. For a while I…
TL;DR : I realized how much I disliked the process of logging data structures to the console and then trying to find them and repeatedly…
Last week , I drew a picture of how I wanted to break apart a monolithic application and instead run different parts of the application in…
I recently did a lot of transcript proofreading concerning enlightening talk for my talk-transcripts project . The most recent one was…
As I have no other article to publish this week, I thought a weekly update would be in order. Last week I wrote about making relevant and…
TL;DR: I wanted to study the content of some talks in written form but there were no transcripts available. However, I believe that the…
TL;DR: This article covers the usage of Transducers in Clojure, spiced up with some core.async . Here's an animation that shows the…
This weekly update is mostly about organizational issues with regard to publishing articles and getting feedback for unfinished articles…
This is the first of n articles about building systems in Clojure . Clojure is a beautiful language and I have been fascinated from the…
This weekly update is mostly about my new article series, about using animations to explain complex topics and about how I just extended the…
In this weekly update, I will just give you a very brief update on what I've been doing. Most notably, I have refactored the Clojure…
In this weekly update, I will discuss how I turned the load times for this Octopress -powered blog from terrible to pretty decent . In…
In this weekly update, I will be talking about why I started this blog in the first place, Pomodoro time management , and the new…
In this weekly update, I will be talking about Clojure and ClojureScript , an upcoming article on AngularJS, Grunt, Karma and Protractor…
In this weekly update, I will show you how git helped me alleviate the disastrous consequences of a brain fart . I will also share my…
I have mostly kept myself busy with AngularJS this week. Then, my geo-specific link shortener generated its first contribution to…
Last week I wrote about blog monetization through the Amazon Affiliate Program . I needed a way to serve country-specific URLs depending…
Here's something new to try: a weekly update, covering pretty much of what I keep myself busy with. That may be about what I am reading…
ABANDONED because of writing an all-Clojure version instead, not just ClojureScript on the client side. Last update on August 18th, 201…
Back in January I wanted to try out Om . Now, I finally got around to doing so. For those of you who do not know, Om is a ClojureScript…
Hamburg is the second largest city in Germany, and as such it really should have an AngularJS Meetup . It hasn't had one until now, so I…
Later this month, I'll be going on a hiking tour in the Alps around the Matterhorn . I do not recall exactly why I said yes to this tour…
So, I have recently suffered from writer's block. Well no, that's not exactly true. The problem was not getting started with a topic, but…
Next week I will be presenting at Scala Days . In my talk I will discuss how to build reactive applications with two-way (near) real-time…
Summary: In this article I will present a new version of the BirdWatch application that uses ReactJS on the client side instead of…
ElasticSearch 1.0.0 is out, hooray! Great stuff, congrats to everyone involved. Not that I had any complaints about v0.9 , but still, this…
In this article I will present a simple reactive web application using Scala.js and ReactJS on the client side. It is based on sse-chat…
Over the holidays I discovered Facebook's React , an interesting library for generating reactive user interfaces. I wanted to try it out in…
I never really thought much of New Year’s resolutions because I could never live up to them. 2013 was different though. One year ago my…
A few weeks ago I started working on the follow-up to my BirdWatch project. This new project is another single page application based on…
So far I have found my BirdWatch application nice to look at but not terribly useful as an original way of finding information. Let's face…
BirdWatch is an open-source reactive web application that consumes the Twitter Streaming API for a selection of terms. It processes…
I am happy to get a huge update of the BirdWatch application out of the way. The changes are a lot more than what I would normally have…
Last week I was dealing with an odd behavior of the chat application demo I was running for this article . The issue was timing-related and…
This is the follow-up on last week's article about AngularJS and Play Framework . I want to share with you the problems that I encountered…
I felt a sudden urge to write a chat application during Scala Days . Writing the server side code in Scala was fun and only took like…
Scala Days 2013 are starting at Hudson Theater in New York City today, with a very promising lineup of presentations. Unfortunately I won't…
Let us assume for a second that the BirdWatch application needed to handle more load than a single server could handle. The current…
Some weeks ago when I started working on the BirdWatch project, I basically wanted to play around with Iteratees and stream information to…
Data without visualization is dull. This is particularly true for changing data. We seem to be much better at noticing moving things than we…
Server Sent Events (SSE) turned out to be a great choice for what I am trying to achieve . Let's review that quickly. I want to transmit…
So far I have been using a WebSocket connection to push data to the client in the BirdWatch application, with mixed feelings. WebSocket…
Initially I parsed the Tweets in the BirdWatch application into instances of a Tweet case class upon ingestion and then used that case…
A couple of weeks back I was trying to wrap my head around Iteratees so I read what I could find on Google. Afterwards, I had a very high…
Who am I? My name is Matthias and I had my first computer before I had my first bike. I've spent most of my career working in IT project…