One of the hardest things in putting together a system that hasn’t been built many times before is making complex things look simple.

   

Most of the systems you encounter in a corporate environment have well established standard interfaces - they all look the same so you don’t think about the complexity hidden behind the standard flow. That is not the case in a startup. Either you are doing something that has never been done before or you believe that the simplification on existing systems is done wrong.

   

TwoNeeds has a little of both. We started out the development with the unsimplified version - advanced search forms with a dozen fields and other forms mapping directly to the database structure.

   

Simplifying the search part was easy enough, there being plenty of ideas we could take from web search engines.

   

The next piece of simplification was not so easy. We have an object that is part project, part message. That makes good sense in the overall context of the system, but it wasn’t at all clear how to present it to the user without getting them horribly confused. After looking for a solution for a couple of weeks, the answer came to me randomly when I took a day off. That often happens with this sort of problem - I just need to get better at having those random thoughts at the same time as having lots of other stuff to work on.