The “now” syndrome

Discuss this post on Hacker News

The news that Twitter is taking further steps to push 3rd party developers off their platform is sending a clear message: we need to make money now. Lots of it. Millions are not enough, billions of dollars is the only thing worth our time. And so in their effort to make billions now, Twitter is slashing and burning the same 3rd party developers that helped to make it the behemoth it is today. To me, in their effort to make billions now it seems they’re risking ending up with nothing later.

This is not to say that crippling their API will ensure their downfall. Twitter’s value extends far beyond just their developer community. But at the very least somewhere in the recesses of App.net HQ the audacious Mr. Caldwell is licking his chops. Continue Reading


17 Aug 2012, 3:56am | 2 comments

B2B is unsexy, and I know it

Discuss this post on Hacker News.

When I tell people I do B2B software I get some very interesting reactions.

“Why do B2B? It’s so unsexy.”

And that’s true. B2B is unsexy in that I don’t build things that my college friends want to use. But that doesn’t mean it’s unsatisfying, or somehow inherently less valuable than a social/consumer product. In fact, I’d argue that the opposite is true. Spending every day making someone’s life easier is awesome. Especially when that someone actually wants to pay you for it.  Continue Reading


3 Aug 2012, 7:57pm | 16 comments

Why I’m doing it all wrong

Discuss this post on Hacker News.

Conventional wisdom for doing a startup as a young entrepreneur these days is something like the following:

1.Drop out of school

2.Raise money

A year ago that’s the route that I wanted to pursue. Freshman year of college I interviewed at Y Combinator with two of my close friends: Wesley who went to Penn with me, and Ajay his best friend from childhood.  Continue Reading


20 Jun 2012, 7:27pm | 28 comments

Showing up is not enough

This post was republished on LifeHacker. You can read it here.

There’s a Woody Allen quote that goes: “ninety percent of success is just showing up.” Despite the title of this blog post my experience learning about and talking to successful people leads me to agree with him. But it does raise the question: what about the other 10%?

I think that the other 10% of success largely depends on what you’re showing up for. Continue Reading


9 Jun 2012, 11:19pm | 15 comments

Stop Taking Yourself So Seriously

Discuss this post on Hacker News.

My workout plan this summer would make any fitness guru shudder. 

I try to go to the gym once or twice a week. I spend 25 minutes there. I run for a mile, do some curls and then finish off with a dumbbell bench press. It’s an admittedly ridiculous routine that does very little for my overall fitness. But I don’t care.  Continue Reading


27 May 2012, 8:00am | 20 comments

Success is in NP

One of the most interesting parts of theoretical computer science is complexity theory. At its core complexity theory attempts to answer this question: what kinds of problems are easy and what kinds of problems are hard for a computer to solve? Problems are divided up into two classes: P and NP.*

A problem in P is easy for a computer to solve. A problem in NP is (we think) hard for a computer to solve. However, all problems in NP share the same thing: if you have the right answer, it’s very easy for a computer to verify that the answer is right. 

So NP problems are problems where coming to the right solution is hard, but verifying that your solution is correct is easy. To me this sounds like success. Continue Reading


19 May 2012, 6:46pm | 8 comments

You Have To Get Good Before You Get Better

Discuss this post on Hacker News here.

I talk to a lot of people these days who ask me how to get started learning to code. I try my best to give advice: read books, try Code Academy, do a lot of Googling, check out Stack Overflow. Usually I try to check in with these people a few weeks after we talk. It’s interesting to see who starts to get good and who gives up.

What separates the people that get good at coding from the people who give up? In my experience, the people who are successful get good before they get better.  Continue Reading


15 May 2012, 10:26pm | 41 comments

This Is 2016 Not 2012

Her eyebrows knot themselves. A pencil grates back and forth on her legal pad. Scratch. Scratch. My back itches; a tiny incessant itch that demands more attention with each passing second. Should I itch it? 

Better wait. 

I can hear the sound of a clock ticking somewhere else in the office. Tick. Tick. Tick. I’m still wondering whether I should scratch my back.

“Can you describe any relevant background experience you have for the position?” Her eyebrows unknot themselves expectantly.

“Well, I’ve been programming since I was 10 years old,” I start. Continue Reading


21 Apr 2012, 2:32pm | 34 comments

Getting Started With SEO: Build A Base

“I’m completely lost. Where do I start with this stuff?” I asked apprehensively.

“In the beginning, doing SEO is all about building a solid base for yourself. You build the foundation and then everything follows naturally from that,” Scott started his voice low and distorted over Skype.

I desperately wanted to learn how to start doing SEO work for my startup Airtime for Email. The goal was to build a sustainable sales funnel of people hitting our site every day. Unfortunately I didn’t know the first thing about how to do this. And so I was Skyping with a friend of mine, Scott McLeod, freelance web dev and SEO extraordinaire.

After about an hour on Skype I knew enough to start building my base. And now a few weeks later Airtime is ranking on the first page for a few of our target keywords. Below I’ll go through a few of the strategies I used to identify keywords and then attack them for better rankings. Continue Reading


18 Apr 2012, 5:40pm | 6 comments

I’m Sure It Will Only Take You A Few Days To Code

“So the site’s pretty simple, all it needs to do is X, Y and Z. You seem like a good programmer so I’m sure it will only take you a few days to put it together.”

I get emails like this from time to time. The people that write them are almost invariably not technical and working on their first product. At first I got pretty annoyed when people talked like this. Who are they to go around estimating development times? But then I realized, even I am terrible at estimating how long my own projects are going to take. How can I get mad at them if I can’t do it either?

The real reason I’m annoyed is not that their estimate is wrong. It’s that they assume that they can even make an estimate. That’s because as developers we unconsciously realize that the way a layperson naturally estimates complexity breaks down when it comes to software.

That’s not an excuse for being annoyed. But it brings up another more interesting question: why does the way we naturally measure complexity stop working when we apply it to programming?  Continue Reading


3 Apr 2012, 11:18pm | 64 comments