Please note: This site's design is only visible in a graphical browser that supports Web standards, but its content is accessible to any browser or Internet device. To see this site as it was designed please upgrade to a Web standards compliant browser.
Signal vs. Noise

Our book:
Defensive Design for the Web: How To Improve Error Messages, Help, Forms, and Other Crisis Points
Available Now ($16.99)

Most Popular (last 15 days)
Looking for old posts?
37signals Mailing List

Subscribe to our free newsletter and receive updates on 37signals' latest projects, research, announcements, and more (about one email per month).

37signals Services
XML version (full posts)
Get Firefox!

Human solutions, not software solutions

17 Feb 2005 by Jason Fried

Before I dive into the post, here’s a quick numbers update on Ta-da: So far over 10,000 people have signed up and added over 128,000 items to their lists. Not bad for a few weeks! We certainly hope you enjoy using Ta-da as much as we do. If you don’t have an account, sign up today — it’s free.

Now to the post at hand…

I think it’s interesting to see how people take advantage of flexibility. When we built Ta-da List we left a lot of stuff out on purpose. There’s no way to assign a to-do to someone, there’s no way to mark a date due, there’s no way to categorize items, etc. There are certainly software solutions for these needs, but we prefer human solutions. Let people satisfy their needs their own way.

Here’s how some real people have dealt with our Less Software approach. Here are some conventions they’ve put in place for themselves. Note: all the lists below have been marked Public by the list owner:

Assigning due dates by just adding a relative date to the end of a list item. This example also shows someone using “-------------------” to create their own same-list separators. Here’s another due date example (this time with fixed dates at the beginning of the item).

Time estimates encased in brackets at the end of the item.

Categorizing items by adding a qualifier (fix, entry idea) to the beginning of the item.

Assigning responsibilities at the end of an item.

Keeping track of release dates for albums someone wants to buy.

Internal labels at the beginning of an item.

This list has a multi-tiered convention defined in the list description at the top.

So, yeah, sure, we could build software to handle all these condititions, but we prefer leaving the solutions up to the people who have the need. They’re the ones that have the best solutions for their own specific problems. And we’ve seen that most people prefer this approach as well. This keeps the software flexible, clean, and useful for everyone.

26 comments so far (Post a Comment)

17 Feb 2005 | runtime said...

I really like your Less Software philosophy. I use a very simple personal wiki for my calendar and to-do lists. I've tested some more avanced wikis and task managers, but they are too heavyweight or force their process on me.

The one feature I am missing is task dependencies. I am a member of David Allen's Getting Things Done cult and I like to separate out the things I need to do (eventually) from the things I can do RIGHT NOW (i.e. no dependencies). I fear the managing a giant tree (or directed graph) of task dependencies (especially using a web interface) will be too cumbersome, but I'll have to wait and see. :)

17 Feb 2005 | sloan said...

My first question would be, are these hacks doing what the users really need or are they simply hacks to get a close to what they need done? I believe making a simple tool is important, but in cases like this I also believe the tool should have enough flexibility built in that users can manipulate the data more easily than weird tagging at the beggining of items. Being able to tag data separately from the content and then sort and filter based on those tags is one example of adding flexibility without boxing someone in. As it currently is, don't users have to re-edit every task to change the order?

You could have attributes to tags such as type, which could be number, alpha, time/date. And then sorting ascending/descending would be clear and tags could be almost limitless in variation. I think it links nicely to style vs. content in web design and the same should apply to tools.

17 Feb 2005 | Dan said...

I think it boils down to two things: the scope of the application and the willingness of the programmer to let people do things their own way.

For something like Ta-Da, KISS is the best policy. If an online list is all it is (right?), then just stick with that, there's no overriding necessity to add any other functionality.

I've had conversations with colleagues in which the person I'm talking to will say something along these lines: "You can do it that way, but that's not the way you're supposed to do it." The funny thing is, what they're really saying is: "You can do it that way, but that's not the way I want you to do it." It's important to get away from that attitude when building an interface.

At any rate, I agree that you should let people come up with their own ways to do things. I would rather see a blank canvas of sorts than a bunch of unnecessary and convoluted widgets.

17 Feb 2005 | Matt said...

Sweet, that's my album list.

I love seeing all of the other uses for these lists. Despite having built my own to-do list web app for work, the simplicity of Ta-Da is great for small lists like album releases or things to do before a trip.

Keep up the good/fun work.

17 Feb 2005 | Justin said...

I think Ta-da should indeed be slim; Basecamp gives the extended features like assigning and catagorizing tasks should you need it. Ta-da is essentially a virtual post-it note.

17 Feb 2005 | indi said...

Yeah, I like the simplicity of Ta-da lists. Many items don't need a date or label. The list is then very clean and easy to read. This simplicity makes it easy to use and even somewhat fun to use.

runtime: what personal wiki are you using?

17 Feb 2005 | Sage said...

I would like a way to email tasks to Tada to add to one of my lists. It would be a quicker way to add tasks than visiting the site. Other than that, it's a cool tool.

17 Feb 2005 | beto said...

I don't know what to say except that you are, er, right.

This coming just in time as we're finishing a commissioned web app for extranet managing. Even though we've gone the extra mile to make it as user-friendly and intuitive as possible, there are still too many required fields, too many steps, too complex hierarchies. It is in instances like this when your "less is more" software philosophy strikes me in the head like a ton of bricks.

Then again, when developing specific-purpose web apps like these you always feel walking through a fine line between basic, required information and the threat of information bloat. It is not always easy to keep balance.

17 Feb 2005 | RS said...

As it currently is, don't users have to re-edit every task to change the order?

Nope. Just click the "Reorder" link at the top.

17 Feb 2005 | runtime said...


For my personal wiki, I use pwyky, a Python CGI script. It is very simple to install, looks nice, and generates static HTML files for fast serving. I have made some mods to the original pwyky code, but I don't have any big complaints. It is a nice, simple wiki. The mods or features I want are to simplify some of its wiki syntax and to add some sort of auto nav-bar.

My "dream wiki" I am writing will be a simple hyrid of:

- Ta-da's task-oriented lists (instead of raw wiki syntax)
- 43things' "see everything at once", big picture GUI
- Netflix's movie queue for managing/reordering your task list

I would love to use Ruby on Rails (after reading some Ruby and Rails here on 37signals), but my web hoster (Dream Host) only supports an outdated version of Ruby.

18 Feb 2005 | Beau Hartshorne said...

"If you want to do something that's going to change the world, build software that people want to use instead of software that managers want to buy.

When words like "groupware" and "enterprise" start getting tossed around, you're doing the latter. You start adding features to satisfy line-items on some checklist that was constructed by interminable committee meetings among bureaucrats, and you're coding toward an externally-dictated product specification that maybe some company will want to buy a hundred "seats" of, but that nobody will ever love. With that kind of motivation, nobody will ever find it sexy. It won't make anyone happy."


18 Feb 2005 | Mark Eichin said...

But do you have any good stats on how many people "just kicked the tires" vs. using it "for real"? (ie. how much was buzz and how much "conversion".) I'd certainly make some changes to it (which I suggested in the original thread) if I were going to use it seriously, though it is a nice joining of simple pieces...

18 Feb 2005 | indi said...

thanks runtime ... I'll take a look at it.

Beau: Good quote and so true. While I was working on my MSCIS degree we studied groupware. If I was in that class now I would have no problem pointing my classmates (all IT professionals and managers already) to look at Base Camp as a model of simplicity.

18 Feb 2005 | Peter Cooper said...

I even made bookmarklets for Ta-Da List, which I then gave away on my blog. Not linking here though, just Google for ta-da list bookmarklets :-) Now I can add items anytime I think of them wherever I am. I can also add URLs to my list, style for a 'read this later' style list :)

18 Feb 2005 | Sunny said...

Instead of forcing a style or convention over users, allow them the flexibility to find their own solution.

Yeah, I like it.

18 Feb 2005 | Kevin said...

Not including features to keep something “simple”... Is that really the answer?

Isn’t making something easy to use a bit different then providing “simple” features? Wouldn’t be better to include the extra “features” but make them optional to use?

Look at the TV of the early 1970’s, very simple features, channel changer, volume and on/off switch. Quite simple for anyone, including a 5 year old at 7:00 am on a Saturday morning to operate. While many of the TV’s available today offer a much wider array of “features”, yet, my 5 year old can still figure out how to at least turn it on, change the channel, and presto, Sponge Bob Square Pants. Sure my 5 year old cannot turn on the surround sound, or catch Scooby in the PIP, but she really doesn’t care about that. All she cares about is catching Sponge and Patrick.

Let us no not oversimplify a product by excluding features to simply satisfy the less savvy user. Instead let us present the “features” in a way that does not overwhelm these users, while still providing desireable extras for the power users.

18 Feb 2005 | Brandon said...

Instead let us present the “features” in a way that does not overwhelm these users, while still providing desireable extras for the power users.

You have no idea how hard that is. When you build a product for the mass market, everyone will have their own vision of what "doesn't overwhelm the users, while still proving desireable extras for the power users." It's insanely difficult which is why simple flexibility and less features is the real-world answer. You've seen products that go the other direction. Onces that try to serve the low end and the high end at the same time. They only end up serving the mediocre end. No one is happy with those.

18 Feb 2005 | Dan said...

I couldn't agree with you more, Brandon. I've developed features that I swore no one would be able to screw up, and they always find a way to screw it up. If I've learned anything at all, it's this: people are stupid. So to get around that, you have to build products that let them do what they want without giving them the chance to mess everything up.

18 Feb 2005 | Kevin said...

You have no idea how hard that is

I understand that there is a delicate balance between “KISS” and providing features/functionality that appeal to a wide range of users. If this was easy, everyone would do it.

Should we have power windows, power-locks, and multi-disc CD changers, cruise control in cars? Of course we should. I am sure each of us use these “features” every day. However, my Grandmother, having no idea what a CD or multi-disc CD changer is, and is afraid of using cruise control, still does successfully drive her car.

Clearly it is not impossible to achieve this balance. Therein lies the truly "useful" product.

18 Feb 2005 | Dan said...

Should we have power windows, power-locks, and multi-disc CD changers, cruise control in cars? Of course we should. I am sure each of us use these “features” every day.

I drive a 2003 Toyota Echo and it has none of those features. ;D My old car had all of those and they were great until the day my power windows stopped working. Sure makes paying a toll difficult. =D

18 Feb 2005 | Kevin said...

The quality you get, is the quality you purchase...

Nothing "runs" forever; v1, v1.1, v2, v2.2.

18 Feb 2005 | Dan said...

Input from a committee is fine, but design by committee is a mess.

You should tell that to the dopes in the marketing department where I work, it would save our graphic designers from going postal. =D

18 Feb 2005 | Dan said...

Whoa, how did my response to Sloan happen before he actually posted...? Perhaps I've finally acquired that superpower I've been wishing for.

18 Feb 2005 | Charbel said...

I love less software...Now can anyone recommend a personal finance management software that uses this less software approach??? I use Quicken, but I barely use 5% of its features...

18 Feb 2005 | sloan said...

It is hard to keep feature creep in check. I think that is why Apple has some advantages over MS in design areas... they have one guy that decides on products. Sometimes he hits, sometimes he misses though... Input from a committee is fine, but design by committee is a mess.

21 Feb 2005 | Adrian said...

Although I agree less is more from an interface perspective in software I think the underlying technology should allow for more power to the user. Whether this is a hidden layer or the user has the ability to turn it on and off it would give the right functionality to the right people without over complicating the sytem for those who dont need it.

I love the Tada lists (the RSS integration is brilliant) but to sort or filter on some criteria would be benificial? Just like the RSS its hidden if you dont use it but it adds huge power to the user if they need it.

Comments on this post are closed

Back to Top ^