A month ago or so, I put a HackerNews reader into the iPhone App store. The primary reason for writing the app was that I found it very frustrating to read the site on the iPhone. My main issue was that I would often click on the link to read the comments on a story and accidentally click the link for the story just below the current one. HackerNews isn’t exactly optimized for mobile reading, iPhone or otherwise.
So I started innocently enough with a fairly simple app that would be able to display stories and details of those stories. It was unstable, but it worked and it was good enough for me and since I had no plans to release it I wasn’t inclined to make it any better. I stopped working on it at this point, but I will save the details of this period of time for another post. A few months later I decided to pick up this app again and learn a few more things about making iPhone apps, so I went through a few more iterations, each time making it a bit nicer.
Finally I had an app that I liked quite a bit more than the original. Some friends of mine encouraged me to put it on the store, if only for shits and giggles, and I figured why not maybe somebody else might enjoy my take on this problem space.
When I launched the app, it was very much about how I read HackerNews, the app reflected my use-cases and my tastes. I think the biggest difference between myself and pretty much the rest of the world is that I don’t like in-application browsers. I like Safari, so when you clicked on a story it would open up in Safari.
This discrepancy between myself and the rest of the world was made loud and clear the morning my app made it into the store. Alot of people had opinions about the app, a friend had submitted a link to the site, but nobody was as elegant in explaining why I should align my behaviour with the rest of the world as my friend Ed. (whom I was spending my day with on my bachelor party. -yes that’s right, I spent my bachelor party talking about the defects of my application with my friend-)
So that weekend I coded up the in-application browser and submitted it to the iPhone App Store. (an although this fix was done days after the first mention of adding an in-application browser it took 3 weeks to get it approved)
Another choice I made that deviated from others expectations was the fact that I kept an About button in the tab-bar. My primary reason for that was to put a few links to YCombinator and applying to YCombinator. Although it’s fairly unlikely to buy this app without knowing what YC is, I like YC and I want to encourage as many people to apply to YC as possible. (in fact, I know of at least 1 case where somebody who didn’t know what YC was bought the app and so the About page was useful to him. -he isn’t my father if that is your first thought)
The way the comments are displayed is also a contested choice. On the site the discussions are nested so that you can see the threads of conversation. I struggled with this, and how to best display it. I was playing with various ways to try to replicate it, or mirror it and all of them were complex and ugly. Patrick suggested that I do something simple, code wise and display wise, so I gave it a shot. It worked well enough and Patrick pointed out that it makes it actually easier to read since the spacing was consistent between comments and that usually you can determine the context of comments based on the previous and next comments. I’ve learn from doing this that, certainly nesting is a nice aspect of HackerNews discussions, but it’s a feature you can strip away for a mobile reader and retain most of the readability. Overall I think it was a good compromise between different requirements.
Reading reviews or comments about the app was umm…..unpleasant is the best way to put it. Alot of people either don’t like that it has a price or the choices I made. A few people mentioned alternatives like iCombinator, and to be honest if I had known about iCombinator before I started I probably would have never started YCNews. Oh well live and learn.
Some things that I try to keep in mind, after the YCNews app.
Release early and often, and listen when it makes sense. It totally makes sense to have the in-application browser and I have completely adopted this use-case. Ed (and everyone else who said so) was right, and the app is far more useful now.
You won’t make a killing or even a living with a HackerNews reader, but you don’t write these types of things for that. It was fun and it is a solution to a problem I was having, also it turns out a few other people like my solution as well. (although it may not be perfect, nothing ever is)
You need to develop a thick skin because people will write things that they wouldn’t say to somebody in person, or at least they wouldn’t deliver them so. (of course some of them will, but these people probably live lonely lives because if you always deliver bad news to people in this way nobody will want to be around you)
© 2009 Kevin Tom