Blog

Getting Things Done

Monthly Archives: February 2010

When is something worth implementing

Cucumber is one of the wonderful libraries we use to develop Teambox. The philosophy behind it is defining what the code should do, and then making your code satisfy those conditions.

That way, it doesn’t matter what’s beneath. Only the results matter, and you’ll be sure it doesn’t break. This is known as Behavior Driven Development.

Thanks to Cucumber, I found a great piece of insight:

Business value and Minimum Marketable Features

Before adding any feature to your design, you should ask yourself “why should I do this?“. If it responds to any of the following, you’re in the right direction:

  • Protect revenue.
  • Increase revenue.
  • Manage cost.
  • Increase brand value.
  • Make the product remarkable.
  • Provide more value to your customers.

An example given in their site is explaining why a site like Youtube should have a login feature:

In order to drive more people to the website and earn more admoney, authors should have to login, so that the content can be displayed with the author and appear more trustworthy.

Before adding a link to your Terms and Conditions, ask yourself why. Before adding JS animations. Before setting up a menu with 10 tabs. You’ll find out which your core features are, and what you can get rid of.

Chances are this will help you building something easier to understand and less complex to make.

> Cucumber‘s site.
> Popping the why stack

We're hiring!

Oh, wow! It’s been two years the project took off, building, experimenting, playing, iterating, learning.

It’s time to grow the team, once again. Teambox is hiring. Are you a rock-star developer? Are you an experienced sales guy? Do you have the best contacts in the market?

We are looking for full-time warriors to join the team in Barcelona (Spain), possibly moving to San Francisco during the next months.

Teambox is a growing startup with two active projects. We’re an international and young team. If you want a challenge and a big change in your life, join us!

These are the open positions:

Rock-star developers

We’re looking for somebody who can…

  • Code beautiful Ruby on Rails code.
  • Is experienced with unix environment (mac, linux).
  • Show us your Github repository, past projects and contributions.
  • Understand development is about user experience.

Skilled sales guys

It’s time to build a commercial network! We need you to contact potential customers for Teambox and Potion, so you’ll need:

  • A deep understanding of the Internet market.
  • Language skills and experience in a given region (USA, France, Germany…)
  • Prove some previous experience with sales.
  • Show us how many followers you have on Twitter!

If you’re interested on any of these, apply for a job at jobs@teambox.com.

Tell a friend, too! It’s not like you find job opportunities everywhere, nowadays :)

road

It's about delivering

Developers and artists become often obsessed with perfection. They won’t ship their work until it’s perfect. And, of course, it’ll never be perfect.

All the work you put into something will be worthless, unless you get that product or site out.
Time is limited, opportunities will not be there forever and others will come with their pieces of work.

In an ideal case, we all think: Great product after years of work will become and instant success. But how? How will you communicate to your customers, unless you’ve built a userbase steadily over the years?

Of course it would help to deliver a proof of concept first. People would see it and use it, and you’d get valuable feedback to improve. You’d allow word-of-mouth to spread.

Whatever you are working on, get it out. Now! Some ideas:

  • Make a site for it.
  • Contact your first potential customers.
  • Throw away that long feature list. Focus on your main 2 or 3 features.
  • Release a private preview to a little group.
  • Collect ideas for later. Don’t try to do everything now.
  • Don’t implement something unless 90% of your users need it.
  • Start charging as early as possible. It will show if your work is worth money and to who.
  • Sell it, even if it doesn’t exist. You’ll need to master the sales techniques.

All your creativity, time and effort will be worth nothing unless you deliver. So find out the quickest way to do it and release it now.

As the guys at Thoughtbot put it: No art is ever finished. It only reaches a satisfying stopping point.
delivery

Guiding the user

One of the great things about having a support site is realizing what you failed to explain or document in your app.

During the last days, some people didn’t really understand how to assign a task:

assign a task

Repeated support requests are calling for a change. We need to put information where the user expects it to be. Let’s see how we could explain better the right way to do things for new users.

Primers, your first-time guide

The first time the user visits the task section, there will be nothing there. It’s important to show him how to proceed from there, if possible being coherent with how they will work when the primer is not there anymore.

It’s about setting expectations and teaching what they can get done.

how to create a task list

Notice all the text is written from the perspective of the benefits you’ll get from tasks, and not solely the way they work.

Creating task lists and tasks

Once the user is creating a task or task list, we need to guide by design.

We redesigned the form to set expectation on how task lists work, and set optional fields like dates.

task list

More important than this was creating new tasks. We wanted users to set actionable titles, explaining what needs to be done.

Tasks like “do web page” aren’t explicit enough, but “propose new logo” is. So we need to suggest this in the process of creating a new task.

new task

For bonus points, we set an autofocus on this fields to guide the next action.

Placeholders for text fields

Lastly, we used some HTML5 goodness to guide the user when posting a comment.

Empty textfields are yet another opportunity to guide the user. We used this area to give some tips and pointers on using tasks:

how to assign

Results

Overall, the whole experience of working with tasks has been greatly improved. By teaching, we have smarter and more capable users, and that is great news for any app!