Name: Ian Clatworthy
Member since: 2007-07-06 13:30:41
Last Login: 2007-07-11 04:20:45
Homepage: http://ianclatworthy.wordpress.com/
Notes: My involvement with Open Source goes back to the mid 90s when I released and maintained Simple Document Format (http://search.cpan.org/src/IANC/sdf-2.001/doc/catalog.html) for several years, a tool for converting a logical text format to many output formats. SDF has been used for many important open source projects including SSLeay (http://www2.psy.uq.edu.au/~ftp/Crypto/ssl.html) and OpenLDAP (http://www.openldap.org/devel/tools.html, http://www.openldap.org/doc/). Due to work constraints, I have been unable to maintain SDF for some time. If there is community interest, I can now support it again in my spare time, thanks to a change of employer. Perhaps Wikis and ReStructuredText have made it obsolete to a large extent though?
In March 2007, I joined Canonical to work on their collaboration tools, primarily the open source Bazaar Version Control System (http://bazaar-vcs.org/). I am now a member of the core team and have been the Release Manager for several releases (0.17 and 0.18).
How can I help?
Exactly two weeks ago, I received some bad news which will undoubtedly change my life - I have bowel cancer. At 41, I’m much too young to die and I’m pleased to say that I’m not likely to in the near future. Even so, I’m in for several months of treatment, surgery and recovery. Nothing like a wake-up call like that to trigger re-assessing one’s priorities in life!
When I started this blog in 2007, I explicitly made the decision to focus it on professional topics and avoid making it about life in general. I gave it the title Agile Teams, Open Software, Passionate Users .. Life is too short for anything else. You can tell it’s not about life in general because I left Good Wine out of the title.
There are times like now though when separating professional from personal just doesn’t make any sense. We simply spend such a large percentage of our waking hours working that happiness at work is directly related to personal happiness for many of us, and good personal health directly impacts our productivity and relationships at work.
In my case, I’m extremely lucky to be doing the work I do at Canonical. It’s something I feel deeply passionate about: making it easier to produce great software more efficiently. I also have the privilege of working with a bunch of really smart people and I learn something new from them each and every week, if not every day.
My family and I have been overwhelmed by the amount of support everyone has offered. Almost every one we know has contacted us on hearing the news asking what they can do to help. I’m writing this article because I want to let people know, regardless of where they live, that they can help. Here’s how:
We live in a society where talking about one’s butt simply isn’t done - no-one ever goes to the toilet in any novel I’ve ever read! It’s not easy telling people that I have rectal cancer, but it’s common and often fatal. If sharing my story means other people catch it or another disease sooner, then I’m pleased to have done it.

Syndicated 2008-06-26 13:27:07 from Agile Teams, Open Software, Passionate Users
Why Distributed Version Control Matters
I’m presenting a paper later this year at OSDC 2007 on why distributed version control matters and how to implement it effectively. A draft can be found online here: Distributed Version Control - Why and How. If anyone has any feedback, please let me know soon so I can improve the final version.
Syndicated 2007-10-11 09:00:53 from Agile Teams, Open Software, Passionate Users
Version Control: Design for Integration
Can you name a single successful software product where more resources (time and money) were spend on developing it than integrating it with other products and systems? I don’t believe such software products exist. Is that likely to change? If not, what can we do about it as software developers? And what does that mean for those of us interested in streamlining how developers work in general and delivering better version control tools in particular?
#5 on my list of criteria for evaluating version control tools is Integration. Software exists to get things done and it rarely, if ever, exists in isolation. The more successful software is, the more pressure there is to integrate it with other tools and systems. I believe lack of mature integration with other systems will be the #1 reason for many teams delaying their move from a central VCS tool (like CVS and SVN) to a distributed VCS tool (like Bazaar, Git or Mercurial) in the next 12 months. The good news is that the new breed of VCS tools all do a lot right in terms of enabling integration but we need to do much more. Firstly, we could and ought to be doing more at the core of the new products. Secondly, we need to get behind the really important integration add-ons and help them reach maturity faster.
At the core product level, Design for Integration comes down to four key things … (more…)
Syndicated 2007-07-30 09:53:42 from Agile Teams, Open Software, Passionate Users
Version Control: Plug-ins vs Toolkits
There’s no such thing as the perfect version control tool and there never will be. That’s why extensibility is #4 on my list of evaluation criteria for VCS tools. There will always be pressure on these tools to enable new ways of working, provide more information for decision making and provide smarter integration with other tools. Over and above that, extensibility is really important for both technical and social reasons.
Technically, trying to ship a tool which is all things to all people creates all sorts of problems particularly w.r.t. reliability, my #1 evaluation criteria. Bloatware takes longer to ship each time, quality typically drops regardless, and the extra features don’t necessarily hit the mark anyway. As Mozilla has shown with Firefox and Thunderbird in recent years, it is far better to produce a rock solid core product that supports plug-ins in a documented way. Done right, the result is higher quality, better performance, and extensions that better meet the needs of the user base anyway.
Socially, a plug-in architecture increases the engagement of the community that grows around successful products. Whether open source or commercial, it takes a community to raise great software and plug-ins let that community scratch their itches in a sanctioned way.
There are different ways of tackling the extensibility challenge but the best way in my experience is by explicitly supporting plug-ins as Bazaar and Mercurial do. Other tools like Git have gone down the well worn toolkit path, and while that’s much better than having a monolithic application, I believe the plug-in path is a wiser one for a host of reasons.
Syndicated 2007-07-17 15:53:59 from Agile Teams, Open Software, Passionate Users
Wanted: Rock Solid Version Control
In earlier posts, I outlined the top 6 criteria that teams ought to consider when investigating and selecting a VCS tool: reliability, adaptability, usability, extensibility, integration and low administration. I’ve just announced the availability of Bazaar 0.18 Release Candidate 1 so now seems a great time to discuss my most important criteria - reliability.
In terms of impact on team success, tools are pretty low in the pecking order of things when compared to clear leadership, motivated people and just right processes. However, the new breed of version control tools are exciting precisely because they change the software development game: they enable new ways of communicating and that in turn enables new ways of thinking about software development. But outside the AlphaGeeks, Distributed Version Control will only reach criteria mass as a technology across the open source world and in commercial software development shops if we can show the technology is ultra-reliable. To me, that means 3 things: Design for Reliability, extensive test suites and strong auditing, e.g. cryptographic signing of commits.
Syndicated 2007-07-11 01:54:11 from Agile Teams, Open Software, Passionate Users
ianclatworthy certified others as follows:
Others have certified ianclatworthy as follows:
[ Certification disabled because you're not logged in. ]
FOAF updates: Trust rankings are now exported, making the data available to other users and websites. An external FOAF URI has been added, allowing users to link to an additional FOAF file.
Keep up with the latest Advogato features by reading the Advogato status blog.
If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!