Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Ask YC: How To Prioritize
21 points by mdemare on Feb 23, 2008 | hide | past | favorite | 35 comments
For me, one of the hardest parts of doing a start-up is deciding what to do first. I know what has to be done, I know how to do it, but I find it much harder to determine what my site biggest issue is.

To give a few examples: I haven't implemented billing yet. This is obviously essential, but now may be premature, since ... I've got very few users. So, maybe I should do more marketing, but ... My site may not be good enough yet, so most visitors won't stay around. So maybe I should listen carefully to my current users and make the site ... prettier? Easier to use? Create more content? Make it more fun? More addictive? More viral?

This is a hard problem no matter what, but does anybody have useful suggestions on dealing with these issues?



Do whatever would make users love you so much that they spontaneously recommend you to their friends.


There needs to be a way to save this comment alone for posterity.



Isn't that Bowles' point in "Raving Fans"? Definitely the right way to go.


What's the ONE THING that MOST differentiates you from everyone else?

THAT's what you should focus on.

You can do later, delegate, or outsource the stuff others can do to the others who can do them.


Oh, I'm focusing on that, but there's just me, so no outsourcing or delegating, and stuff like web-design, marketing and billing needs to be done too.


Understood. I guess the point I was trying to make was that if you do your key differentiator well, then the web-design, marketing, and billing will be much easier to do. It's much easier to sell a game breaker than just another thing.

OTOH, there's not much need for billing if you don't have something fantastic to sell.

My experience is that when you really focus on the one big thing all the small things get even smaller once you get around to them. Hope that helps.

EDIT: It just occured to me that pg describes this concept (What's the best thing you could be working on, and why aren't you?) much more eloquently here:

http://paulgraham.com/procrastination.html


I would gently disagree, if he is running a subscription site he needs to get billing working to determine what folks will actually pay for. Having a billing system communicates a serious intent to your prospective customers that you want to provide value and are in it for the long haul.


Good point. My problem is that I find it hard to delegate (or am too stingy to spend money on services). So I've wasted endless hours on fiddling with CSS. Since I'm a very good programmer but a very bad designer, that was probably not efficient. Law of comparative advantage and all that.


You might be able to outsource more than you think. I've had to learn the hard (read: expensive) way that putting my sweat into a site is only worthwhile when the piece that I'm building is unique to the internet. Everything else has been done before, done better and is available for cheap or free.

Are you building a storefront? Shopify.com might take care of 99% of your work. Managing invoices? Use BlinkSale.com. Getting stuck on unending CSS issues? Use an open-source CSS framework.

I'm sure this isn't news to you but I thought you could use the reminder - I know I need it frequently. We who can do anything often try to do everything.


Sounds like a case for structured procrastination: http://www.structuredprocrastination.com/

I suspect it is best to focus first on the task you most feel like doing.


Thanks for this fascinating article! But my problem is not one of motivation, but one of knowledge. i.e.: I have no idea what the most efficient use of my time is. I just do what I feel like doing, not (necessarily) what gives the best R.O.I.


If the analysis is time consuming/paralyzing, take a guess and proceed. If you literally have no clue, chat with your co-founders. If you're still unsure, grab 10 random target users and give them the list-- as them which thing on the list they'd want you to work on.


Perhaps you could use the Adwords test as described in number crunchers: create Google Ads for the various features you could be working on, and see which ones get clicked more. The ads could point to messages of the form "we are working on feature X".


It is a hard problem, but by addressing it you are already ahead of the crowd.

What I would do is to set up some goals (get more visitors, increase ROI, etc.) and then look through your list of stuff that needs to be done, with these goals in mind. Do the ones that are most likely to get you towards your goals.

Just writing it down will probably help a lot.


If you are at a fairly early stage in your start-up (< 1 year), I would suggest you focus on your product and ONLY on your product. Forget marketing, addictiveness, virality. Figure out what is the core value you want to provide to users and just focus on that the hardest. Make your product the absolute best that can be.

Within your product, do the most important thing your users need or you think your users need. (The former is better if you have a significant user base.) If that thing is billing, do it, else postpone it. Don't think about what will cause a media splash, or what is "cool". Stay focused on what people want.

If you have been live / launched for quite some time, marketing, addictiveness and virality become somewhat more important, but from your question, I suspect that isn't yet the case.


Bijoy Goswami, the prime mover behind the Bootstrap Network http://www.bootstrapnetwork.com/ has an approach he calls "Demo Sell Build" that recognizes that most of the risk in a startup is not technology but market. I agree with "figure out the core value you want to provide users" but I would give short presentations or briefings (e.g. one page handout, one slide, one HTML mockup page) to make sure you've nailed it before developing the full app. Bijoy goes into more detail on his model in the "Bootstrap Bootcamp Fall 2007" DVD here http://www.amazon.com/Bootstrap-Bootcamp-Fall-Bijoy-Goswami/...


I've found that when we are confident, relaxed and grounded in the present moment, prioritisation tends to take care of itself, in as much as 'what's next' becomes quite clear and obvious. So (at least to me) the problem of priorities is really a symptom of the greater issue of how stay relaxed and centred in the natural 'flow' of your project/start-up. This is not so easy, particularly if this is your first start up because, almost by definition, you are working outside of your old comfort zones. But I wrote a little piece* about this that might help.

Also, it can help if you keep a list of low complexity, low priority tasks that you can pick from as your fancy takes you, when your motivation is low or you are just having an off day. You'll be suprised how ticking off these low priority tasks will give you a sense of progress that restores your clarity and motivation to tackle those bigger, more complex milestones. Good luck :)

* http://www.life2point0.com/2006/06/the_little_book.html


I'll start by saying I'm a weird guy.

A long time ago I realized that people mean different things when they say 'priority'. If you only mean the 'value' of a certain task, then that's not a good way to prioritize, IMHO.

I've changed my model to prioritize strictly according to return on investment. I.e., how much value I or the company receives for unit of work.

In my professional project management and in my company, here's the algorithm that I pretty much use for every sort of task prioritization:

(1) I put together a list of items

(2) I put a relative cost (RC or C) associated with each item-- for a task list this tends just to be the hours you predict you'll spend.

(3) I hide those costs and then add some number that represents the relative business value (RBV or BV) of each item. (More on this in a second)

(4) I unhide things and then put another column that just calculates RBV/RC which indicates the return on investment (ROI) for each task.

(5) I then sort it all by ROI and work my way down the list in ROI priority order, always working on the tasks that offer the most ROI, I adjust values and costs (and re-sort) as my needs change, work completes, and as my understanding of each task changes.

The units used to value each assigned task is not really important. It's only important that tasks have a value that makes sense relative to each other.

For example, if I have these tasks:

  * Setup tech support email account
  * Improve usability for site logon page
  * Write a blog article about our recent features
I might then give these costs:

     01 hour  - Write a blog article about our recent features
     01 hour  - Setup tech support email account
     16 hours - Improve usability for site logon page
Having a tech support email account, I know that's important and I must have it, so it gets a high value. In this case, I'd say "Improving usability" is something we could survive without, but I firmly believe it could increase our revenue.

I might then give these relative business values (I'll just say points):

      200 pts - Write a blog article about our recent features
    10000 pts - Setup tech support email account
     5000 pts - Improve usability for site logon page
When I calculate the ROI and sort them, I get this list that I work from top to bottom:

    10000 pts/h - Setup tech support email account
      313 pts/h - Improve usability for site logon page
      200 pts/h - Write a blog article about our recent features

As long as when I add new tasks, I evaluate them against the other values and costs to ensure they're all relatively correct, the list always sorts to provide the tasks with the 'biggest bang for the buck' at the top.


I believe that the challenge is not "how to prioritize given the relative business values" but "what is the most important thing to be working on." Getting a business moving can be a little like opening a combination lock: you can be working on the right things, but if you don't focus on them in the right sequence they may not have any impact.


True, I agree.

That being said, I try to capture items like that via a constantly evolving list (which is pretty much necessary no matter what). The relative business value of the next item in 'the sequence' would be higher that day/week than than it would be otherwise and would bubble to the top if it was the highest return on investment.

Likewise, it's possible for the 'cost' of certain tasks to drop/rise based on what's happened recently (i.e. you just learned more about something, or you're in a really productive mood or office setting).

In the end, my ideal would be just to figure out what's the highest return for my time __right now__ and work on that. I.e., it's a continuously updating function and the list is never set in stone.


I think I'm weird too, because I love the idea. But please tell me you only use this for work.

I don't have Excel, so I'll start writing a Ruby DSL to implement this right away.

    *mdemare eyes himself warily*


We actually juse use Google Spreadsheets, and it's simple enough that I use it for personal stuff sometimes, too. It sounds far more complicated than it is.

Here's an example sheet that you should be able to copy via Google's menu:

http://spreadsheets.google.com/ccc?key=pvOwoUYoNUFTmGZhwyjK4...

Having used this specific approach on many projects, there's considerations that should be kept in mind that I haven't solved 100%:

It's difficult to track dependencies between tasks and have those sort efficiently. As a human you have to realize the sheet is a tool and that you have to look to catch these things from time-to-time.

If you're not careful, you can defer 'infrastructure' tasks that have no obvious/direct BV. I work around this by temporarily having infrastructure tasks inherit the combined BV of all things that they'll help and for all tasks to add the infrastructure item's cost to theirs.

There's probably a more accurate formula for dependents and dependencies to use, but I find that if you have 99 tasks dependent on an infrastructure task, it's not unreasonable to say that task is pretty durned important to open 'doors' for the company.

For example, refactoring tasks often fall into this category. Changing from an Access database backend to a MySQL backend might not give you immediate ROI, but the sheer number of things that open up to you as possibilities after that need to be considered somehow. The conventional naive approach might not get you there without the item inheriting some of the value.


>I don't have Excel, so I'll start writing a Ruby DSL to implement this right away.

You didn't listen to a word he said. I mean, just do the smallest list possible that you can fit into your head (so that you don't need Excel): this can only have two items if you want--find an Excel alternative; write a Ruby DSL. Weight those the way he said, and you will end up crossing the Ruby DSL off of your list.


Do you add an NPV to account for not getting the return until some date in the future? I.e., a 10000 pts/hr task might be better prioritized after a 100 pts/hr task if the duration of the first is two years and the duration of the second is two days.

(Yes, these are silly and inflated and completely hypothetical. I'm interested in how you solve them within your structure, as I'm a huge ROI fan.)


Don Reinertsen http://www.reinertsenassociates.com/ author of "Developing Products in Half the Time" and "Managing the Design Factory" has a great quote about managing product priorities that bears on this.

"Priorities: Last Refuge of the Innumerate

What is our highest product development priority, cycle time or unit manufacturing cost? To even ask this question, suggests a fundamental misunderstanding of product development economics. If cycle time takes priority over unit cost, then it follows that we would prefer the smallest improvement in cycle time to the largest improvement in unit cost. If unit cost takes priority, then we would prefer the smallest improvement in unit cost to the largest improvement in cycle time. Does this make any sense? Of course not. When we prioritize we give strict precedence to one objective over another. Such strict precedence leads to bad economic choices.

The value of cycle time and the value of unit cost must be expressed in the same unit of measure: life cycle profit impact. It is only with this quantification that we can make good economic decisions to trade one for the other. Setting priorities for individual measures of performance is simply avoiding the important job of understanding how performance influences economics."

It sounds like you need a simple model for what the site will look like when it's profitable (e.g. number of customers, how often they visit and how many times in total do they visit (customer lifetime), what does it cost to acquire them, what and how much do you charge for, how often do they refer other customers...). Once you have some numbers on your model you can then build a plan to evolve toward it.

I am inferring that you are going to be a subscription site ("haven't implemented billing") I would get that done right away and see if you've built something that even a small number of folks will pay for. There can be a world of difference between what people like and what they will pay for. Focus on what they will pay for in a subscription site.


I'm not sure if you've read 37Signal's book on Application Development "Get Real" (http://gettingreal.37signals.com/) but you can accomplish a lot of things when developing applications by knowing not how to prioritize, but what to prioritize. The one thing that I appreciated the most from the book was this one principle:

"A great way to build software is to start out by solving your own problems. You'll be the target audience and you'll know what's important and what's not. That gives you a great head start on delivering a breakout product."

Start off by figuring out what you need to progress, and once you get to that point, build on it and make it better, and before you know it you're trucking along on the next great web app.


In the network marketing world (of which I observed as a passive participant briefly), they have a saying - don't confuse activity as productivity. For example, in network marketing, filling out paperwork and reading web sites and listening to tapes are (low-value) spin your wheel activities. Approaching prospects, inviting people to meetings, mentoring, and selling product are high-value productivity. These productive activities can all be measured: As one of the co-founders of HP said in a maxim: "You can't make what you don't measure". For your startup, intend to focus on activities where you can measure results and success. Billing will be one - you can even see if people actually use it.


I maintain a spreadsheet list of smaller tasks that need doing, vaguely inspired by Getting Things Done. Add a priority column and sort. Then each day, review the list to update priorities, and flag items I intend to complete that day.

Separate list for major features I intend to add. Works the same as the task list, except on a much slower timescale. That one has ended up being much more valuable.

The simple act of collecting this all in one spreadsheet doc has resulted in way more clarity in my thinking and planning. It allows me to bounce between many major areas of work, without losing track.

Best of luck!


I try to maximize productivity and efficiency; if I have a lot of time, I do something I'm less familiar with since I'll probably have to look things up and experiment, without losing state. If I just have a little bit of time, I work on the parts I know I could do in my sleep, so if I get interrupted it's no big deal, I can easily pick up where I left off.

But most importantly, I try never to procrastinate, although I don't always succeed... Good luck!


Focus on your core competency. Whatever makes your site good and unique. There are a zillion other sites, why would someone come to yours?

Obviously listen to your users! Prioritize on things that you think will grow your site - like ALL of the things you listed. Some are easier to address than others, so tackle those first.


But any on my list could be a full time job. And yet I must choose. But how? Are there rules of thumb?

How do other start-ups prioritize?


From the book Eat That Frog! - 21 Great Ways To Stop Procrastinating And Get More Done in Less Time: Doing something is better than doing nothing. Make a list of five tasks. Order the tasks by strict priority. Work your way through the list, skipping as you get stuck. If your list has more than five items then you're spending too long making lists.


Keep doing something on what you are building and eventually you will have it done.


one word: VALUE.

In your case that translates to which features translate to the maximum number of users.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: