Monthly Archives: December 2012

You are browsing the site archives by month.

A scale of ambition

Some four months ago, a Hacker News poster asked YC founder Paul Graham what was the “most frighteningly ambitious idea” he had ever been pitched. I suspect the question arose from an essay PG had previously written by the same title, in which he cites as examples a new search engine, replacing email (been there!), replacing universities, Internet “television” drama, being the next Steve Jobs, bringing back Moore’s Law, and ongoing medical diagnosis. PG withheld his answer, but Eliezer Yudkowsky pitched in with a scale of ambition against which to rank ideas.

This came right around a time when I was consciously practising thinking big, trying to re-calibrate my own scale after some years of employment before considering what I wanted to attempt next. I spent some time and thought tweaking and expanding on Eliezer’s scale, trying to come up with existing companies and new ideas at each level. It’s a logarithmic scale, where each level is a multiple more ambitious than the previous (rather than a constant additive increase). Whether or not you decide to go big, I think it’s valuable to hold ideas up to such a scale for a sense of perspective, the better to weigh the costs and sacrifices of ambition against potential impact.

The Yudkowsky scale of ambition (adapted and with examples by me)

  1. “The next Facebook”
    $10s of billion in value, 100s of millions of people impacted. E.g. Facebook (c. 2012), YouTube (post-acquisition), eBay, Mozilla? Napster? BitTorrent? Kiva?
  2. “The next Apple”
    $100s of billion in value, billions impacted, genre-defining innovation, a worldwide product leader. E.g. Apple (c. 2000–2012), Google (search), Amazon, Wikipedia, Android?
  3. Lead sweeping societal change
    Trigger significant social/political change, economic revolution, etc. E.g. the world wide web, email, mobile telephony, cryptography, nuclear weapons. Ideas: re-invent personal transport (kill cars), revolutionise/decentralise agriculture, a globally comprehensive social learning/knowledge store (Wikipedia x10), replace money/traditional commerce, decentralise communication infrastructure, fully national direct democracy, seasteading, a new country.
  4. Change energy/information infrastructure
    Be the essential enabler of subsequent technological advances, or a massive multiplier. E.g. electricity, radio, the Internet. Ideas: invent/discover “free” energy, transmute sunlight into clean fuel (replace photosynthesis), symbolic telepathy, universal maker-bot, land humans on another planet.
  5. Change the human condition
    Fundamentally change what it means to be human. Ideas: I.Q.-enhancing drug, colonise another planet, replace agriculture as source of food, cure aging.
  6. Change life
    Change what it means for something to be alive. Ideas: Drexler-class molecular nanotechnology, replace food as sunlight→biological energy source, create complex life forms.
  7. Change intelligence
    Change what it means for something to be intelligent. Ideas: upload and execute human brain on a computer, create hive mind.
  8. Create intelligence
    Create intelligence from scratch, shortcutting the entire complexity chain of terrestrial evolution. Ideas: general, recursively self-improving AI.
  9. Hack the universe
    The rules no longer apply to us. Ideas:

The biggest change I made to Yudkowsky’s original is to fold nuclear-like weapons into level three, which was also suggested by HN commenters, reducing the number of levels to nine. For the first couple of levels we can talk about existing and future company valuations as a proxy for impact, but after that it stops making sense as the impacts grow beyond what one company or state has ever captured. Non-profits are interesting to think about at these levels since we don’t have company valuations to help. I’d love to hear suggestions of other existing companies or new ideas in these categories.

So what does your company/project/idea score?

The vast majority of ideas anyone ever thinks about are, of course, less ambitious than 1.0. Rather than define a scale below there I think it’s appropriate just to label a vision as as sane, achievable, orthodox ambitious, and talk about goals for usage or revenue. But remember that it’s merely ordinarily ambitious when evaluating the cost of pursuing it. Or, perhaps, aim higher!

Most change comes from small ideas, built on previous ideas, and executed well. Most of the companies (but not the non-profits) cited above started out that way. There’s no shame, and much honour to be had in pursuing an achievable ambition. Even the largest idea I’ve been thinking seriously about rates a 3 (though I hope to see a few 4’s, maybe a 5 or two in my lifetime). But before it achieves the impact of  a 3, it needs to be a 2, and before that, a 1. And way, way before that it needs to create a little value for a few people, and grow from there. And if that’s all it achieves, it will still be a worthwhile pursuit.

 

How to find someone technical to build your idea

I’m a mentor in the PushStart collective and incubator. I love the broad exposure to other people’s problems and ideas that mentoring provides and every now and then I discover a team and idea that I really hope succeeds in making our world a better place. At the most recent Mentor Live mentoring event, however, I spent most of my time answering the same basic question over and over again:

How do I find someone technical to implement my idea?

It’s a hard question. People ask because it’s a difficult thing to do. But there are no easy answers: it’s supposed to be hard. Demand for the creativity and talent of great engineers and developers far outstrips the supply. You should have to work hard to convince one to dedicate their time and energy to your project, especially if you don’t have much evidence the effort will be worthwhile (and if you’re looking for someone to build your first version, you have very little evidence that counts).

Developers of all levels of talent have no shortage of ideas and projects to work on. Coming up with a great idea is not the hard part. Some will have their own ideas or side projects, which are pretty much automatically more interesting than yours. Many will field a constant barrage of ideas that naive friends and family bounce around in hope. And the best will have a hard time turning town standing offers to join ex-colleagues in whatever project they’re now pursuing.

So they have ideas galore combined with the skill to execute them. What are you bringing to the table?

Here are two approaches for two extremes.

Group A. You know what you’re doing

You have capital and resources, good networks, experience, strong leadership, deep market knowledge, you’ve tested prototypes and have evidence that what you’re proposing to build is needed. Apart from the knowledge and skills required to actually build a production-ready app, you have everything else covered. Congratulations! You’ve put yourself in a good position; importantly, one where a developer might want to work with you because you’re bringing some value to the team. You’re rare though, so you have a lot of work to do to convince them of this. Ian Crosby has written an excellent answer on Quora (but you already read that before asking me, right?).

Here’s my abbreviated version:

1. Network like crazy

This is lead generation. You need to meet a lot of people to find the one or few great developers who can turn your opportunity into a working product. Get in touch with engineers and developers you already know, go to developer meetups and hackathons (and don’t leave early), reach out to loose connections on LinkedIn, invite nerdy types to your parties, and meet with as many developers as you can. Ask them about their projects, both work and hobby. Get to know what appeals to them. Ask them about people they admire or enjoy working with. Tell them about your emerging business and challenges, ask for their advice. Don’t try to rope them in right away. Build relationships and become known as someone who knows what they’re doing, and is looking for someone great. Follow up with those who seem most interested but make sure they know you’re going to be choosy. Expect this to take weeks to months for you to finally be introduced to a few viable candidates.

2. Choose very carefully

You have a candidate pool, now you need to select the best. Sadly, you don’t have the ability to tell who is a great developer and who is average. If you did, you’d be able to build your app yourself. So find an experienced engineering manager to help. You probably met a bunch over the preceding months of networking: people with broad experience, clearly great at what they do, have hired or been part of hiring A-grade people before, and who draw a lot of respect from everyone else you talk to. You couldn’t convince them to leave their current project but maybe he or she can help you select someone. Ask this person to give technical interviews to your candidates. Be clear about the level of ability, flexibility, technical leadership etc. that you’re looking for. Depending on the strength of your relationship, reimburse them for this highly specialised service. And expect them to reject most candidates.

It’s supposed to be hard, remember? But the good news is that once you’ve found and hired and are working with your first one or two 10x engineers, they will be highly motivated to find and recruit peers who are at their level of ability or better. So long as you let them be picky, you’re on your way to a great team.

Group B. You don’t know what you’re doing

Your idea is awesome. I mean, amazing. Revolutionary, I know. But you haven’t done this before and you don’t have backing to pay a good salary and it’s hard to do customer development on evenings and weekends and you don’t have a prototype or other evidence because finding someone to build that was the whole problem in the first place!

You should fix that before wasting a developer’s time.

Move yourself into group A.

Seriously.

Ideas are cheap and plentiful, so if that’s all you have then you’re not bringing a lot of value to the relationship. There are a whole lot of hard problems involved in building a great product that don’t require deep technical experience, so if it’s not clear that you’re going to have them covered then no-one is going to want to risk working with you. I mean, did you even try asking Google?

And I think that’s the way it should be. Our scarce supply of technical experience and talent must be shared by relatively few projects. If a new project is going to fail for any reason other than lack of developer talent (these days rarely a prime cause) then the opportunity cost, to all of us, of that sunken effort is a great loss. Please don’t waste good developers’ time.

Instead, learn those skills, build your experience, de-risk your business and earn a reputation as someone who does know what they’re doing. Survey and interview customers or users. Gather quantitative data supporting the need for your application. Build and test the business model. Draft designs of your application, test them on people, iterate. Implement a manual MVP of your business. Get someone to help you outsource development of a quick prototype on oDesk or Freelancer.

Prove to yourself and others that you and your idea are worth an investment of development time, talent and creativity. And you might as well start networking with developers now too.