Roundwall SoftwareMade with pride in Amsterdam


One of the signs of an expert programmer is a thing I call transference. I learned about it while reading a book about learning to play music and it applies to programmers as well. A novice musician is hard at work studying exactly what to do with their fingers and… Read more

Building the KC60

Recently I have been super pumped on mechanical keyboards. I found one small enough to easily use when I'm on the couch or in a café which made it easier to spend most of my time using one and get used to it. At this point it feels weird and… Read more

Fun With Typing

As a developer, I spend quite a bit of time typing. Typing code, typing email responses to clients and recruiters, typing jokes in Slack. As a child, I was fortunate enough to have access to a computer at home and the internet. Our computer was not fancy enough though to… Read more

The difference between classes and structs in Swift

Today I assigned my students (I teach a bootcamp now) to write 400-500 words about one of the topics we have covered in class, so I thought I would do the same. Here goes! Classes and structs are similar. Both can have properties, both can have methods. This can make… Read more

Swift Enums for Error Reporting

In Apple's block-based API's, you'll often see a pattern like this: func dataTaskWithRequest(request: NSURLRequest, completionHandler: (NSData?, NSURLResponse?, NSError?) -> Void) -> NSURLSessionDataTask The function expects you to provide an NSURLRequest and a block and promises to execute your block later with some info. Inside your block you… Read more

Semitones 1.0.1 Released

Up to the day I am writing this, Semitones has earned me 122$ in proceeds. That's after Apple's 30% cut from sales through the App Store. That's not much, but it is already more than my last app made in it's entire lifetime. Semitones has a simple business model: an… Read more

Introducing Semitones

In the last few years, I've started taking my bass playing more seriously. I've found a teacher, joined in on jam sessions, and sat in for bands like Airplane Mode. In my search for ways to help me improve, I found inspiration for my next app. Becoming a better musician… Read more

What I'm Working On

Some of you have been asking what I'm working on lately, so here's your answer. Practicing music. Teaching programming. Developing my music app. 1. Practicing music. In middle school and high school, I played bass for the school orchestra. I played cello for that first year, but I like to… Read more

Handling iOS image uploads with Paperclip

If any of you happen to do some backend work and iOS work at the same time or work on a team that does, this might be a helpful tip for you: Let's say you have a Rails app that uses the Paperclip gem by Thoughtbot to handle file uploads.… Read more

Gateway View Controller: A Pattern for handling app login

As Apple recommends in their Interface Guidelines, apps should try provide functionality without requiring a login. Ideally, an app would only ask for your login information when you get to features in the app that does need it. Unfortunately, there are a great many apps that simply lock you out… Read more