Matthias Nehlsen

Software, Data and Stuff

Weekly Update: PageSpeed Insights, optimizing Octopress & more 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 PageSpeed Insights numbers: before the optimization 58/100 for mobile and 77/100 for desktop; after the optimization 94/100 for mobile and 96/100 for desktop. More concretely: on a lousy mobile connection, the load time improved from 32 seconds to a mere 5 seconds. Now we’re talking. You would presumably not have waited for 32 seconds, and neither would I. Also, I have a status update on the Clojure version of BirdWatch.

Weekly Update: Pomodoro, all-Clojure BirdWatch, Income

In this weekly update, I will be talking about why I started this blog in the first place, Pomodoro time management, and the new Clojure and ClojureScript version of my BirdWatch application. Again there is a live version, this time subscribing to all tweets containing the term Ferguson. Also, the results are out for the first month of blog monetization through affiliate links.

Weekly Update: git vs brain fart, Octopress, Sony A7, my audio setup

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 experiences with Octopress. You will learn what helps me feel better, day in and day out. Then, I’ll talk about some changes regarding the mailing list for this blog. And last, there’ll be reviews on my audio setup for a combined work / chill area and on the Sony A7 full frame camera.

Building a geo-aware link shortener with Play Framework

Last week I wrote about blog monetization through the Amazon Affiliate Program. I needed a way to serve country-specific URLs depending on the location of the page visitor, so I wrote a geo-aware link shortener using Play Framework. This week I would like to introduce that application. The source code is available on GitHub. You may find that tool useful for your own purposes, or you may just want to read this as a tutorial on how to call backend services with Play Framework and the asynchronous WS client.

Weekly Update: Buying time, AngularJS Meetup, Mountains

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, learning or currently working on, mostly software-related. In this installment I will discuss monetization, the Hamburg AngularJS meetup and photographing in the mountains while hiking.

BirdWatch with ClojureScript and Om explained

ABANDONED because of writing an all-Clojure version instead, not just ClojureScript on the client side. Last update on August 18th, 2014. There is a new series of articles about the all-Clojure version starting in 09/2014. You might still find useful information in this article though.

I wrote about having written my first actual application using ClojureScript and Om, a web client for my BirdWatch application. You may want to start with that article to understand the background better. This week I first want to talk about my experience with ClojureScript and Om. Then I want to start describing the implementation details. I am fully aware that what has come out of it up until now is far from elegant in terms of pretty much everything. But in my defense, it does appear to work :)