Sunday, 23 June 2013

The birth of Project Snowflake

In hindsight, Project Snowflake began just over 10 years ago, when I was introduced to a wiki. It was an interesting tool - editing web pages in the browser was new to me and there was something catchy about the ease at which you could add content. However, creating good looking documents was too hard, it was a pain in the ass to manage content and unreasonably hard to find documents (even the ones I wrote!).

So the problem was simple - how do I make a better wiki?

I thought that if it had a text editor that was more like what you might use on a Windows desktop and maybe some kind of folders to help organise documents, this would be a good improvement. But then Atlassian released their Confluence wiki the next year. It had a WYSIWIG editor and 'spaces' (like folders) to organise content and it looked good.

Still something wasn't right. A better editor and folder didn't actually do much to improve the quality of documents. The spaces concept was a good idea but there wasn't a logic on how spaces should be created so you would end up with smaller containers of inconsistent docs.

So the problem was redefined: how do I make a better documentation system?

Things started getting interesting here. It became less of a technical problem and more about the redefining the process of capturing knowledge from people's head, and turning it into documentation that could be easily found and read by others. After a bit more research I found that there were things like Knowledge Management Systems and Content Management Systems (CMS)) that 'solved' this problem with workflows that involved editing, reviewing, publishing and lots of categorisation options. I thought that the careful application of a CMS (like Microsoft Sharepoint) was the answer and I stopped work on this project for about a year. Sometime in mid 2007, the problem was still nagging at the back of my mind because although CMS should have solved the problem, I couldn't find enough evidence of significant their success in the IT Operation environment.

It was then that I realised an important part of the problem - there is a real lack of understanding about how important internal documentation is for solving day to day issues. As a result, most engineers don't understand what makes good documentation and there is little time given to writing docs or improving existing docs. Also finding docs was a big problem on any system which discouraged people from writing more.

So the problem was redefined again: how do I make a documentation system that helps engineers write better documentation that they could find easily?

It turns out that this is a particularly challenging problem and one that I have not seen solved well. So in 2007, Project Snowflake was officially born (it didn't have a name before that). It's been project of stops and starts and wrong turns and I'm not where I thought I'd be by now. But the hard design work is behind me and it's all about coding now. Given the demands of work and family life on my time, I hope to deliver something useful with a year. Watch this space...

No comments:

Post a Comment