February 2012
4 posts
Entitled
This post is inspired by Marco’s excellent piece: Right versus pragmatic. I grew up in a small village. When I was 13, I didn’t really have money to buy music, but I still saved up and went to the record store so I could buy Americana. When I was 15, I got my first computer-job (as a php programmer). One month, I even made 1000 guilders (which was a lot for me). On Saturdays, I would...
Feb 27th
1 note
Accessing an API using CoreData's...
Note: I’ve also posted this article on github as gist, for better readability of the code: nsincrementalstore.markdown. In this article, we will see how to use Core Data for accessing your API. We will use the Bandcamp API as our running example. I’ve only been experimenting with this code for a few days, so there might be mistakes in there. One of the problems with accessing an...
Feb 18th
I Use This
I was inspired by people writing about their setup on The Setup, so I decided to write about my own setup. Hardware I use a Mid 2010 Macbook Pro 15” with an SSD. I only switched last week, when my old hard drive was about to die. I don’t use any external screen, keyboard or mouse. Because I travel a lot and work from pretty much everywhere, the HD display is really convenient. I...
Feb 13th
2 notes
Becoming a better programmer: Test-Driven...
As I’m enjoying programming again (and more so every week), I started to think consciously again about improving myself as a programmer. After a recommendation of breun I started reading Clean Code, which I can definitely recommend. One of the things I have always felt bad about professionally is not doing Test-Driven Development. Back when I was programming Haskell a lot I did do a lot of...
Feb 8th
3 notes
January 2012
9 posts
Jan 21st
How I write my code
Recently I saw a couple of posts on how people write their code. I found it inspiring, and part of the reason I’m writing this article is that I don’t know how I write my code (not explicitly, at least). Most of the time, I know what I’m going to build a few days, weeks or even months beforehand. During the time between idea and building, I think about it. I don’t set...
Jan 19th
2 notes
Take the money
After yesterday’s post about speaking up, I got some questions about what my responsibility is as a freelance programmer. Am I qualified to judge other people’s business ideas? And if so, should I tell them if it’s a bad idea? I’m a computer programmer, maybe I should just stick to what I know. The question I’m trying to answer is: “Should I just take the...
Jan 17th
Speaking Up
Deciding when to speak up is one of the things where I feel I haven’t yet figured it out at all. I don’t know when or how to do it. In high school, a friend of mine didn’t like her boyfriend anymore. I told her that if she really feels that way then she should break up with him. The boyfriend (who was a good friend of me as well) was, understandably, quite angry at me. From...
Jan 16th
2 notes
Focus
When people tell me their startup idea, it often happens that they are trying to solve a huge amount of problems. This happens mostly with people who do not have a lot of experience in startups. These people are often very ambitious but don’t have the skills to execute themselves. For me, focus has always worked in business. The first company I started, we didn’t really know what to...
Jan 11th
4 notes
Willpower
I hate flossing. My dentist insists that I do it, and after each visit I promised to do better next time, but never followed through. I wanted to, but I lacked the discipline to do it. Some two months ago, I decided to do it differently. Instead of using my willpower, I tricked myself into creating a habit. I grabbed a big piece of paper, made rows and columns, creating about 60 large squares. ...
Jan 6th
1 note
Freeform blogging
In the last days, I tried to do more freeform blogging. I’ll write about whatever’s on my mind. Some pieces might be about something I’ve been thinking about for months, others might be something I just thought of in the shower. I will try not to care too much about things like ‘target audience’. My goal is to become better at writing and to help myself think....
Jan 5th
1 note
My perfect co-founder
Being a programmer, I have long thought about my ideal co-founder. I’ve started a company with somebody who’s got almost the same skillset as I have (except that he could do bookkeeping as well). This worked for two years, but I didn’t like the direction we were going in. After that, I started a startup with a mathematician, analyzing big data. Here, we couldn’t agree upon...
Jan 4th
3 notes
On Breakups
Not too long ago, I went through a breakup, or to put it another way: I got dumped. Fortunately, this wasn’t the first time I went through a breakup. Everybody handles it differently, but these are the sort of things that help me deal with it: I meet a lot of friends and talk about it. I go out to bars where nice girls hang out, just to reassure myself that there are more girls out there....
Jan 3rd
3 notes
December 2011
3 posts
Radical Honesty
On Hacker News, I read an article about Radical Honesty today: I Think You’re Fat. It really appealed to me. Over the last year, I’ve tried to be more open and honest myself. Not radically honest, though. For me, it was important not to hurt other people’s feelings. However, when you think of it, you can hurt people more by not being honest. Suppose a friend lets you wait for...
Dec 28th
CocoaPods
I just upgraded one of my projects to use CocoaPods. CocoaPods is a library dependency manager for XCode projects. You can use it in a way similar to Ruby’s gems or Haskell’s cabal. The project is just starting, so it’s a little rough, but it does the job. I think this can make code sharing for iOS developers a lot easier. I’m all for reusing code, but it used to be quite...
Dec 7th
Dec 5th
1 note
November 2011
5 posts
Hard Decisions
Over the last few weeks, I was asked three times (by two different companies) to become the development lead (i.e. CTO). Both of these companies are really quite awesome, and I can see them become very succesful (actually, one already is quite succesful). I strongly considerd saying yes to both positions, but ultimately decided not to do it. One of the companies already makes good profits, the...
Nov 21st
2 notes
Satisficers vs. Optimizers
I just finished Fooled by Randomness by Taleb, what a great book. In the last chapter, he compares satisficers and optimizers: suppose you’re having dinner with a friend who knows exactly when his train leaves. He optimizes his dinner, hurrying away from the table just before his train is about to depart. Your friend is an optimizer. I am aspiring to be more of a satisficer: I don’t...
Nov 19th
5 notes
Survivorship bias
Of all the jobs I’ve had, being a solo entrepreneur is the fairest job. I am directly responsible for my own income. I have nobody to blame if things go wrong, technically, financially or otherwise. This makes me feel very responsible for everything I do. Compared to working with more than one person or (worse) working in a company, my work influences my results so much more. The danger is...
Nov 15th
On Running
Running gives me a lot of energy. After a run, there is the runner’s high: the released endorphin in my brain makes me feel great. Training, races and continually wanting to get better makes me push myself. I’m not pushing too much, for risk of over-training, but I am constantly overcoming barriers and improving. After running my first half marathon a few years ago, I felt on top of...
Nov 8th
1 note
Met has launched
Today is the official release of Met. I will send out a press release to all the Dutch iOS websites, and will send out an press release in English tomorrow. The last few weeks have been quite an adventure. I documented all the steps of building Met on this weblog, starting with choosing an idea and ending with submitting it to the App Store. For those that haven’t read the story yet: Met...
Nov 7th
3 notes
October 2011
15 posts
HTML5 is no silver bullet for apps
I sometimes hear people tell me that they are going to let their next app be an HTML 5 app. This way, they can write for both iPhone and Android at the same time. This seems like a big win. Although iOS and Android are very similar, both being touch-based and mobile, they are also quite different. For example: On Android, if you want to go back to the screen you just came from, you press the...
Oct 31st
3 notes
Reaching a plateau
While I was traveling last month, I met a lot of great people. One of them was a 73-year old woman who had been very successful in her life. She was a professor at a well-known university in the USA and has now retired to Spain. She is still doing amazing things. I asked her: “What’s your secret to success, apart from working hard and being intelligent?”. She said:...
Oct 28th
Met In The App Store
This morning at 10:11 GMT+1, version 1.0 of Met was submitted to the App Store. It’s been quite an experience, blogging about everything, from before there was an idea until the App Store submission. I will write a recap of everything next week. In the last few days, I’ve been helping out with an ultra marathon, and met a lot of interesting and inspiring people. There was a 73-year...
Oct 27th
New build, first website, press plans
Yesterday I released a new build. In this version, you can also change the date of events (which means you can add past events) and add new contacts from within the app. Today I set up a first webpage for Met. I really like the design of With, and I let myself be inspired. Admittedly, the website is quite minimal, but I think it should be enough (for now). I also found a good domain name, which...
Oct 18th
1 note
How I Will Design My App Website
For Met, I need to design and build a website, and in this post I’ll show some of best the app websites I’ve bookmarked and try to explain why I like them. My definition of “best” in this case mostly means beautiful. I don’t know how they convert visitors or any other performance, so that’s something I need to measure myself. Screenshots Perhaps the most...
Oct 17th
5 notes
Week 3: An App in Four Weeks
Today marks the end of Week 3 of my App in Four Weeks challenge. This week I chose a name. I designed an icon and overall style for the app. I then spent quite some time implementing autorotation, and getting it exactly right. There is now a passcode lock too. By nature, I am not a perfectionist. Whenever I see that something works, I tend to lose interest in finishing it. For me, shipping...
Oct 14th
New build and screenshots
A new build should arrive in the inbox of the beta testers right about now. It’s almost the same as described yesterday, except with less bugs. My energy is a bit low today, so instead of text, here are some screenshots of the current state of the app.
Oct 13th
Rotation fun
Today I spent a lot of time implementing landscape orientation, next to portrait orientation (as this gives you a bigger keyboard). However, in the end I managed to nail it, I think. Everything resizes, moves around and plays nice with showing and hiding the keyboard. I also added hover effects for the passcode buttons, designed the section header, changed the passcode screen slightly, added...
Oct 12th
1 note
Introducing Met
After yesterday’s post, a lot of people contacted me with ideas for a name. Thanks Pim, Martijn, Miles, Wilfred and Fabian (I hope I didn’t forget somebody). Some liked James, some liked Meetups, all with good reasons. However, one reply stood out: Jurriaan had an idea for a more minimalistic name: “Met”. Short and to the point. It’s about who you met. The best...
Oct 11th
Beta and Branding
This is the start of week 3 of my One App in Four Weeks project. Last Friday, I sent out the first beta version, and just sent an update (with mostly bugfixes). Martijn Reintjes suggested that I should change Checkins to Meetups, and I couldn’t agree more. I wasn’t happy with Checkins to start with, and this makes it a lot simpler. Thanks dude! Because I wanted to be future-proof,...
Oct 10th
iOS products are a local optimum
This morning, I was sitting in the booming heart of Seville, sipping my café con leche and reading The State of the Art is Terrible by Zack Morris. A great read indeed. It then finally dawned on me: most apps are a local optimum. This includes most of the apps I’ve worked on, including the most successful ones. Another fine example is the gorgeous Thermo app. Even though I love using it,...
Oct 8th
2 notes
Week 2: design improvements
This post is about Week 2 of my One App in Four Weeks project. This week was a bit strange, in many ways. For me, it didn’t feel like a productive week. On Monday and Tuesday I got some things done, Wednesday I was travelling (but thinking) and Thursday I spent most of the day creating a custom design in Photoshop. I then decided that it wasn’t good enough. Instead, I chose to go for...
Oct 7th
1 note
RIP Steve Jobs
When I started to read the news this morning, I couldn’t believe it. It felt very surreal. Not completely awake yet, I opened up other news sites to make sure it wasn’t a mistake. I’m not sure how I feel. Mostly, I feel love. I am impressed by the products Apple made and the inspiration they gave everybody. If there’s one company that I love, it must be Apple. And loving...
Oct 6th
2 notes
Selecting People Faster
Today, I fixed some minor things in the code, and simplified the workflow. In the previous version, when checking in, you were presented with a list of people. After that, you could do the checkin. In the current version, it works much like sending an email or sms: you start by typing somebody’s name, and you will see a list of people below (see the screenshot). After you click on a name,...
Oct 4th
1 note
Start of Week 2
Today is the start of the second week of the One App in Four Weeks challenge. Last Friday, I added tabs to the application: one for the most recent checkins, and one for the list of contacts. More tabs will probably come, such as search and settings. This week, I will try to get the functionality done. I need to add a Person view (after you press on a Person you see the history), fix some...
Oct 3rd
September 2011
19 posts
One App in Four Weeks: Week 1
This Monday, I started One App in Four Weeks. I started by posting a list of ideas. The third idea was the most appealling to people (although I still want to build the other two as well, but not now), and I got some great feedback from everybody. I selected the idea and defined the Minimum Viable Product, which is quite simple: you can check in to people, add a time and note to that checkin and...
Sep 30th
4 notes
Sketches and ideas
Although I was traveling yesterday, I sketched some small mockups for the Contacts app. The idea for the app had come when the genius Lucas Tieleman explained to me how he keeps a small book with notes about everyone. Yesterday he sent an email with the notes he had about me: it’s fun and only freaked me out a little bit (not as much as I expected). He’s a very early adopter of new...
Sep 29th
Check In to People
As I wrote in yesterday’s post, I’m going to build an app in four weeks. Now I’ve chosen the idea that I’m going to build: check in to people. This will give you an archive of when you met people. After you check in, you can add notes and maybe pictures. Yesterday I’ve thought about the next steps and about the minimum viable product, and researched existing apps. ...
Sep 27th
One app in four weeks: kickoff
When I woke up this morning I heard the sound of the Mediterranean sea and saw palm trees out the window. Yesterday night I arrived in Malaga, Spain. I’ll be slowly travelling around the area for the next few weeks. I probably won’t be working full days, as it’s very beautiful here, and there are a lot of things to see and do. Originally, I had a nice plan for my work-related...
Sep 26th
1 note
Trust your geeks
15 years ago, my local library had a night about “The Internet”. At that time, I read bits about it in a science magazine, and I was fascinated and persuaded my dad to take me there. That night, a guy came and talked to us about what the internet was, and what you could do. He sent an email to the White House, and got a reply within half an hour! I was so drawn to this new technology,...
Sep 22nd
6 notes
Niche and Top Lists apps
At yesterday’s CocoaHeads meetup, I was discussing with Ben the marketing strategy for his app, Captio. It is aimed at people who want to capture their notes quickly: as soon as you open the app, it shows an input field, end when you press Send the note is emailed to yourself. It’s been my favorite app for a long time. The problem with Captio is that it is mostly useful for a niche...
Sep 21st
2 notes
TrackMe plans
Last month, I made € 99.54 from selling TrackMe. The first day I sold about 60 copies, and the rest of the sales was spread out over the month. The reason why I sold so little is that I didn’t do any marketing. I set up a blog for the app, and talked about it on this blog. I announced it on Twitter, and wrote a blog post about 10 cool things you can do with a GPX file. I would promote it...
Sep 20th
Communicate Often
This advice is for freelancers: please communicate as often as possible. When somebody hires you, they want to know what’s going on. Sometimes you get so caught up in trying to make a deadline or staying productive, and forget to communicate. For a client, this can be frustrating, because it looks like nothing happens (while you were even busier than you would normally be). In my opinion,...
Sep 19th
AirBnB for dogs
Are you thinking of building a new website? Or an app? AirBnB for dogs? A Groupon/Twitter/Facebook mashup? Mobile first? Sometimes it’s kind of hard to see, it looks like all the good ideas are taken already, and we can only combine existing ones. It’s all kinds of products. As an app developer, I sometimes think all the apps are already built. I had a perfectly good idea two months...
Sep 16th
16 notes
Lost In Translation
One of the hardest part in software development is communication. I don’t mean network communication, but person-to-person communication. This is one reason why it’s so convenient to work alone on your pet projects: you don’t have to communicate at all. Every time you communicate, there is noise in the signal. Because both parties have different backgrounds, you lose part of...
Sep 13th
3 notes
Be Visible
Whatever you are doing, make sure you’re visible. Don’t fear embarrassment and publish yourself, in whichever form. Here are three stories: Twitter As I wrote in an earlier post, I became iPhone developer by chance. Just for fun, we created a game called CookieCombo to play around with the iPhone SDK, which came out a few months earlier. We tweeted about it, and got two instant...
Sep 12th
Crossing the chasm between design and code
Recently there was an excellent post by Mike Rundle about how one person can be a designer and programmer at once. I think having a designer and programmer in the same person is a great idea. I wish I would be better at design (not only do I lack experience, I’m also not sure if I would have the patience to become a good designer). When I’ve worked with designers before, I...
Sep 9th
15 notes
So, you want to build an app together?
If you do have an idea for an iPhone app, I want to ask you these questions. These should hopefully validate your idea and commitment. Does it exist already? Have you searched the App Store and the internet? Also for different keywords? If it does exist, how are you going to differentiate? How will you make money with it? Will you sell the app, or make it free? Will it be ad-based? Do you...
Sep 8th
1 note
TrackMe: 10 cool things you can do with a GPX file →
trackmeapp: In this post, we will look at 10 cool things you can do with a GPX file. To track your GPS location into a GPX file, you can use an application like TrackMe. 1. Visualize it Using a tool like GPS Visualizer you can plot your GPX file on a map. They provide a number of different options…
Sep 7th
1 note