Reflection on startup life: Week 66

Am I moving fast enough?

Despite the best intentions of being agile, there are times when one week just isn’t enough to deliver a new feature. Sometimes things take two or three. When you’re addicted to delivery (which I think is the best way to describe how we are working) everything else can seem to blur and slow down. What’s interesting is our mental state during these longer sprints. There’s no doubt in my mind that pressure builds when we’re not shipping code.

It’s why I think that you can’t do any significant startup part time. I honestly can’t imagine us working much more than we are (without complete burnout), and yet we still feel there’s always more to do and things aren’t moving quickly enough.

My reflection this week is really on how ridiculous it is that we let this pressure us the way it does.

In the last week, Alex has migrated countries and settled into Dunedin in New Zealand. I’ve finally finished the code for a new public tags feature and started the deployment process. We’ve ordered, commissioned, blown up, and re-commissioned a new server. We’ve kept doing all the day to day operational things that keep the site running. Community management, bug fixes, helping app developers and so forth. Oh, and Alex has single handedly designed the new search architecture, based on some open source technology, contributed back source code to the project and is now optimising it to meet our processing standards ready for deployment later this week.

I think it’s that last which gives me perspective on how fast we are really moving. In my previous life I was involved in an Enterprise Search project that was in many respects significantly less complex than this, indexed significantly less documents, and used a mature technology. A mid-sized team was still working to deploy it (for all I know it was never deployed). Between project management, stakeholders, operational dependencies, insane requirements, over documentation and so forth, it was STILL being worked on after some 6 months or more.

Our new search delivers more features and functionality, indexes more “facets”, supports our privacy requirements (to be fair the one area that is simpler than in the enterprise space), has a significantly larger corpus and will support far more users and be more performant. Did I also mention that it was open source and therefore cost nothing compared to the 250K plus licence for the other?

It’s interesting to ask myself what I’d change if I stepped back into Enterprise again (please shoot me first though). I think the biggest is that it’s about focus. The advantages we have are quite clear:

  1. Total responsibility — no endless communication loops up and down line on what’s happening and why.
  2. Loosely coupled Vs Tightly coupled — Enterprises are often trying to meet some ideal Tightly Coupled architecture (must be on Windows for example) to meet all their requirements. More focus on standards and interoperability would mean things move faster.
  3. Clearly defined problems — No endless scope creep. Trunk.ly searches web documents and returns links. It’s hard to add more to that.
  4. Clearly defined solutions — This is massively under-estimated. Rather than ask a simple question “what’s the BEST search solution”, enterprises tend to ask incredibly complex questions like “What’s the best search solution for documents with multiple layers of security and native index plugins for Lotus Notes, SQL Server and Documentum”. By black boxing search you can get a faster search solution and bridge the gaps — which is the approach we take. Our search engine is a great search engine, but it know nothing really about what we are asking it to search — we layer that intellect over the top.

Still despite all this, I still wonder if we are moving fast enough — so with that said, there’s a server to redeploy!

Highlights

  • Loving all the great apps the community are building — iPhone apps and now two Android ones.
  • Alex getting to somewhere with proper broadband!

Lessons Learnt

  • You need a sense of scale — when you’re in that box pushing code, it’s hard to actually measure how your moving. Achievement helps retain sanity — if it’s not deployment, you need to measure against something else.

Goal this week

  • Ship the new search and the new public tags