Blog
Understanding LLM Tokens: A Visual Playground
October 5, 2025
When you send a message to an LLM like Claude or ChatGPT, the model does not see your text. It sees tokens. I wanted to see them too, so I built a small page for that.
Try it here: LLM Tokens Playground
How to Install MCP Servers in Claude Code
July 13, 2025
The one command that installs an MCP server in Claude Code, and what its parts mean.
More...A Guide to OpenAPI Code Generation for TypeScript
May 30, 2021
Generate REST client code in TypeScript from an OpenAPI specification.
More...The Simple Way to Customize Ant Design in React-Scripts
May 9, 2021
How to customize an Ant Design Theme in react-scripts - easily and without ejecting.
More...Guard Bundler Tutorial - Run "bundle install" Automatically
August 2, 2015
Here I explain how to setup Guard to run 'bundle install' automatically everytime you modify your Gemfile.
More...Guard Tutorial - Run a Command on File Change
July 27, 2015
Guard watches the files in your project and runs a command or plugin when they change. A tutorial that gets you started faster than the Guard website does.
More...Redis: Crystal vs Ruby vs Node vs ...
May 26, 2015
Recently, I have published a Redis client library for Crystal called Crystal-Redis.
More...A Redis Client for Crystal
May 21, 2015
This week I published Crystal-Redis, a Redis client for the Crystal programming language. It is open source, full featured, well documented and very fast.
More...Using SPDY with Nginx 1.4
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...Sphinx search / thinking_sphinx with german umlauts
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...bundle install: invalid byte sequence in US-ASCII
March 20, 2012
How to fix 'ArgumentError: invalid byte sequence in US-ASCII' during bundle install on Mac OS X by setting the LANG environment variable.
More...Creating smaller images in Rmagick
November 15, 2011
Rmagick creates uncompressed images by default. How to set the compression level in Rmagick's write method to get smaller PNG and JPG files.
More...Printing the page content in Capybara
December 2, 2010
How to print the current page's content in a Capybara integration test, for example to debug a failing test, and how to open it in a browser.
More...Ruby on Rails: Fix for 'invalid multibyte char (US-ASCII)'
August 31, 2010
You probably got this error message in Ruby on Rails: 'invalid multibyte char (US-ASCII)'
More...Rails Plugin for Single Sign On with Atlassian Crowd
July 27, 2010
The crowd_rails plugin brings single sign on with Atlassian Crowd 2.0 to Ruby on Rails, next to Jira, Confluence and Bamboo. Setup and usage tutorial.
More...Version 0.5.10 of Crowd Gem Released
July 26, 2010
The new version 0.5.10 of the crowd-stefanwille fixes a bug in handling of validation factors.
More...Ruby Gem for Crowd 2
July 19, 2010
I took the Ruby client gem for Atlassian Crowd 1.6 and updated it for Crowd 2.
More...Why 'bundle install' is slow (and how to make it fast)
July 12, 2010
Why 'bundle install' used to be slow in Capistrano deployments, and how a Gemfile.lock checked into version control makes it fast.
More...Why You Should Split Your Epics Into Smaller User Stories
April 6, 2010
Every agile book recommends splitting epics into smaller user stories. What we learned when we built one epic as a single story and split the next one.
More...Let Business People Get Their Statistics Themselves
January 13, 2010
Business people keep asking developers for numbers and reports from the production database. Here is how I let them query a copy of the database themselves.
More...Looking for Ruby on Rails Developer for Balao in Hamburg
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...Spring & Hibernate on Google Books
September 10, 2009
Google Books has scanned my book Spring & Hibernate. Large parts of it can now be read online, for free.
More...They Pirated my Book
September 9, 2009
I found an illegal copy of my book Spring & Hibernate on RapidShare. RapidShare removed the file after I complained by email.
More...BizSphere Explained
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...Content Landscape
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...Spring & Hibernate, 2nd Edition
February 24, 2008
Our publisher will start selling the second edition of our book _Spring & Hibernate_ in April, 2008.
More...Scrum Master Certification
December 14, 2006
On November 23, 2006 I became a Certified Scrum Master (CSM). Why I chose Scrum over other software development processes, and what a Scrum Master does.
More...Talk about Hibernate at Lehmann's Book Shop
November 12, 2006
On October 26, I spoke about Hibernate at Lehmann's book shop in Hamburg.
More...Book 'Go To Java Server Pages'
June 27, 2006
A few years ago, I wrote a book called 'Go To Java Server Pages'. It was published by Addison Wesley in 2001.
More...