Matthias Nehlsen

Software, Data and Stuff

RIP grandma; meo progress & beta version

A couple of weeks ago I introduced meo, the intelligent journal that my beloved grandma inspired around two years ago. Since that blog post, she passed away, following a stroke and subsequent coma. Those weeks have been tough, and I miss my grandma a lot. It helped me quite a bit though to be working on meo, something that she inspired and that will be part of her legacy. There were multiple occasions recently when I might have given up working on meo otherwise, throw in the towel, and look for another hobby. Yes, I still like Clojure, but this code base that I created has made me feel like an idiot way too often recently.

Introducing meo - Thanks, Grandma!

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 introducing meo, a Clojure/ClojureScript project that she inspired. About two years ago, she showed me a few photos from a trip to Iceland, including this one:

I asked her what year that was. She did not remember but retrieved a folder, scanned a few pages, and less than a minute later reported the details of the trip - it was in May 1987. I was stunned, as it dawned on me that I did not have anything like that for the past 20 years of my life, in which I visited 39 countries. Emails with itineraries, photos with geolocation for a few years back, sure, but all very fragmented, and far from me being able to give a concise summary of any of those trips in 60 seconds or less. I told her I wish I had recordings like that, and she said, ‘Really? I wish I had recorded more.’

SystemD and Clojure

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, and keep them alive, in case anything should go wrong. These are the applications managed this way:

Systems Toolbox Example

Today, I have another sample application for the systems-toolbox library for you. This application measures roundtrip times of a WebSockets connection. Before I delve into the reasoning behind this library, here’s a little teaser of how that’ll look like:

I wrote all of this from scratch in Clojure and ClojureScript, including the histogram - no charting libraries required. There’s a live version, try it out by clicking on the animated GIF.

Optimizing my Workspace - Hardware, Software, Ergonomics

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, yet that I paid far too little attention in the last couple of years of my life. Now you may wonder what I’m getting at, but no worries, I’ll get there. Let me ask you something first. How many hours per week do you spend in front of your computer? Let me guess, probably most of your waking hours, considering that you read a software-related blog. But is your workplace ideal or even anywhere close to it?

Progress with “Building a System in #Clojure”: new Feature

Most of this week, I was working on the client-side codebase of my BirdWatch application in order to remove the hairball in its architecture that I mentioned last week. That’s been going really well. But how do I make the readers aware of what I am working on right now? Your time is precious, so you may only want to read the stuff that I feel good about already, unless you have the time to dive deeper and compare the good, the bad and the ugly. That’s fine, too, but it’s just going to involve more effort on your part.