Blog
October 5, 2025
When you send a message to an LLM like Claude or ChatGPT, it doesn't process your text directly. It breaks it into smaller pieces called tokens. Understanding tokens is key to understanding how LLMs work, but the concept can be abstract. That's why I built a simple playground to make it tangible.
Try it here: LLM Tokens Playground
More...July 13, 2025
Learn how to install an MCP server in Claude Code using the command line.
More...May 30, 2021
Generate REST client code in TypeScript from an OpenAPI specification.
More...May 9, 2021
How to customize an Ant Design Theme in react-scripts - easily and without ejecting.
More...August 2, 2015
Here I explain how to setup Guard to run 'bundle install' automatically everytime you modify your Gemfile.
More...July 27, 2015
Guard watches the files in your project directory, and responds to changes by running a configurable command or plugin. This is very useful functionality. I feel that the Guard website makes it harder than necessary to get started though. Therefore I wrote this tutorial.
More...May 26, 2015
Recently, I have published a Redis client library for Crystal called Crystal-Redis.
More...May 21, 2015
This week I have published Crystal-Redis, a Redis client for the Crystal programming language. It is open source, full featured, well documented and is very fast.
More...April 26, 2013
Nginx 1.4 finally went stable. This new version comes with SPDY integrated. If both web browser and server support it, SPDY improves your site's performance.
More...April 17, 2012
I figured out how to get Sphinx / thinking_sphinx to handle searches with german umlauts and treat the umlauts as case insensitive.
More...March 20, 2012
I stumbled across a weird issue with bundler on MacOS X:
More...November 15, 2011
When you create an image in Rmagick and save it, chances are high that your image will be way too big. The reason is that, by default, Rmagick creates uncompressed images.
More...December 2, 2010
Capybara is a great integration testing framework that easily replaces Webrat. Plus, it works with Rails 3, which Webrat seems not to do. If you need to print the current page's content, for example to debug your test, you can do so with:
More...August 31, 2010
You probably got this error message in Ruby on Rails: 'invalid multibyte char (US-ASCII)'
More...July 27, 2010
Atlassian Crowd offers a simple solution for single sign on. It comes with an authentication server, a web based administration console and Java client libraries. Other Atlassian products such as Jira, Confluence and Bamboo integrate with Crowd. With the crowd_rails plugin, Ruby on Rails can also benefit from single sign on with Atlassian Crowd 2.0.
More...July 26, 2010
The new version 0.5.10 of the crowd-stefanwille fixes a bug in handling of validation factors.
More...July 19, 2010
I took the Ruby client gem for Atlassian Crowd 1.6 and updated it for Crowd 2.
More...July 12, 2010
I use Bundler's command `bundle install` with Capistrano and it used to takes many seconds to complete. The reason was that Bundler fetched all required gems unless they were already installed and then checked for all dependent gems if there is are newer versions available and installed these. It's the last step that took so long.
More...April 6, 2010
Probably every agile book recommends to split large user stories (epics) into smaller ones. But why? The reason is usually 'because they are more manageable', but I didn't really understand what that was supposed to mean. Until recently, when we worked on two epics. And I had an insight that I am eager to share.
More...January 13, 2010
I found that, once you have software in production, your business people ask for numbers, statistics and reports from your database, on a weekly or monthly basis. And this keeps interrupting your workflow. And it also keeps you from coding. So what to do?
More...October 28, 2009
I am searching for a new colleague: A sharp, experienced Ruby on Rails developer for our internet startup Balao in Hamburg.
More...September 10, 2009
Google Books has scanned my book Spring & Hibernate:
More...September 9, 2009
I found an illegal copy of my book on RapidShare.
More...May 7, 2009
SVA BizSphere GmbH has a great page up that describes its product BizSphere, the software that I worked on over the past 2.5 years.
More...April 5, 2009
Here is a description of Content Landscape, a project for which I did architecture and specification work during my BizSphere engagement.
More...February 24, 2008
Our publisher will start selling the second edition of our book _Spring & Hibernate_ in April, 2008.
More...December 14, 2006
On November 23, 2006 I became a Certified Scrum Master (CSM).
More...November 12, 2006
On October 26, I spoke about Hibernate at Lehmann's book shop in Hamburg.
More...June 27, 2006
A few years ago, I wrote a book called 'Go To JavaServer Pages'. It was published by Addison Wesley in 2001.
More...