tagged by: tools


API design · academia · agile · agile adoption · analysis patterns · application architecture · application integration · bad things · big data · board games · build scripting · certification · clean code · collaboration · computer history · conference panels · conferences · continuous delivery · database · design · dictionary · distributed computing magazine · diversions · diversity · documentation · domain driven design · domain specific language · domestic · encapsulation · enterprise architecture · estimation · event architectures · evolutionary design · expositional architectures · extreme programming · gadgets · ieeeSoftware · infodecks · internet culture · interviews · language feature · language workbench · lean · legacy rehab · legal · metrics · microservices · microsoft · mobile · model-view-controller · noSQL · object collaboration design · parser generators · photography · podcast · popular · presentations · privacy · process theory · productivity · programming platforms · project planning · projects · recruiting · refactoring · refactoring boundary · requirements analysis · retrospective · ruby · scrum · security · software craftsmanship · talk videos · team environment · team organization · technical debt · technical leadership · test categories · testing · thoughtworks · tools · travel · uml · version control · web development · web services · website · writing

2018 · 2017 · 2016 · 2015 · 2014 · 2013 · 2012 · 2011 · 2010 · 2009 · 2008 · 2007 · 2006 · 2005 · 2004 · 2003 · 2002 · 2001 · 2000 · 1999 · 1998 · 1997 · 1996

All Content

Using a command line script to export from OmniGraffle

A quick post on how I did the export script using AppleScript and Ruby

21 August 2018


Restoring a deleted note in Apple's notes app

I recently deleted a note on my Notes app on my apple laptop. As someone who is a paranoid keeper of backups, and usually commits all my work to a repository like git, I don't worry much about accidental deletion. But Apple's notes app doesn't have any form of version control, and it's all too easy to delete something by accident. I have a daily rsync backup and run time machine, but googling couldn't uncover a simple way of getting the note back. So in case someone else needs to do this, here's what I did.

31 August 2014



One of the side benefits of speaking at the Google IO conference last month was that I got a new phone - the HTC Magic android phone that Google gave to all attendees. I was actually in the market for changing my phone to something like this, so it came at a good time. Here's my impressions after carrying it around for a month or so.

6 July 2009



(Problems with mouse, Belkin KVM switch and Linux)

4 August 2004



I've talked many times about the virtues of Continuous Integration. To get such an environment working you need a continuous integration server, and a source code control system. To make a project run smoothly you could also do with an issue tracker for bug tracking and the like, and a wiki to help capture all sorts of project knowledge.

7 July 2006



Installing most things on Debian is sinfully easy: apt-get install package-name. Sadly Java is an exception since it's not in the basic debian system. I recently downloaded and installed java 1.5 (or 5, or whatever they're calling it these days) on my Debian Sid desktop. In brief the procedure is.

1 October 2004



Early this year I did a lot of travel, so my writing ground a complete halt. I got back home a few weeks ago, hoping to get a lot of writing done. Well I've done some, but things keep coming up to keep me away: surgery to remove the pins from the accident, being Flooded. But the big productivity killer has been self inflicted - buying a new computer.

22 May 2006



After much anticipation, the folks at JetBrains have started their Early Access Program for their C# tool. Sadly they ignored my naming advice and instead called it ReSharper. Early noise from my colleagues has been enthusiastic if still wanting more.



Now that JRuby is getting more and more mature, several people are thinking of finally doing something to improve the world of build scripts by replacing ant with rake.

18 December 2006



A laptop on a keyring, well in many ways this can only an exaggeration, but the idea has been intriguing me recently. The catalyst was coming across Knoppix.

24 December 2003



Most of this site, including this bliki, is built using an XML to HTML transformation process. I write the articles and bliki entries in my own XML vocabulary and then transform these sources to the HTML you read. When I stated back in 2000 I did it in XSLT. While I got pretty good at programming XSLT I came to the conclusion that I was not enough of a masochist to want to continue using it. After a short experiment, writing the bliki transformer in Ruby on a flight to Bangalore, I switched to Ruby using the REXML library. Now it's time to change that core library to Nokogiri

10 January 2011



I've been intending to upgrade my laptop to Snow Leopard for ages. Particularly once I got Aperture 3, which I'm told works better. But I never quite got around to it, after all operating system upgrades are usually such a pain. (Although Ubuntu upgrades are much less painful than most.)

9 November 2010



I've said before (in an earlier version of this page) that I cannot understand how a voting machine without a clear, auditable paper trail could be considered acceptable for voting. Some further support for this view is a recent study at Princeton showing how easy it is to subvert common voting machines. (via Glenn Vanderburg)

19 September 2006


Setting up a ruby development VM with Vagrant, Chef, and rbenv

Some notes from my experiences in setting up a Vagrant VM to help collaborators use my web publishing toolchain. I used Chef to provision the VM and rbenv to install and control the right version of ruby.

4 September 2014



My colleague Joe Walnes pointed me to a fascinatingly simple tool developed by our colleague Chris Stevenson. TextDox (part of AgileDox) is a tool to automatically generate documentation from JUnit test cases. Sounds ridiculous, but then that's what Wardish ideas are like.

23 June 2003



(Updated as Sam Ruby persuaded me to use second-precision on my dates.)

2 January 2007



How do you improve the productivity of software developers?

16 December 2006



With the rise of so many mobile platforms, each with a different UI, many people are looking at cross-platform toolkits. These allow you to write a mobile app once and then deploy it to a range of mobile devices. Are these toolkits worth using?

29 April 2011



Cindy is very conscious of good workmanship in carpentry. She'll notice all sorts of fine details that I'm oblivious of. She particularly appreciates things that don't look like much, but are actually quite tricky to do right.

22 August 2004



In recent months I've gone on a major binge of installing Debian Linux. In the last few months have seen a lot of new environments appear in my setup. I've acquired a new desktop machine which I installed Windows XP on, a Powerbook laptop with MacOS X, and a new work laptop with windows XP. All of these involve various amounts of work, even my work laptop, which came with a ThoughtWorks configured Windows XP already on it, needed work to install the various applications that I use in my work.

1 August 2004



I was programming away and wanted to add an empty line above where I was currently typing. The editor I was using doesn't have this feature built-in, and I'd finally had this desire enough that I really wanted it. I did a quick google search, found a few lines of code, pasted them into my startup file, executed them, and lo I could now create empty lines above with a single keystroke. It took just a couple of minutes, I didn't have to install any plugins, or restart the editor - this is normal everyday business for an emacs user.

10 January 2013



I had a need yesterday to play around with velocity in order to explore some stuff on templating and macros. I like velocity's simple template language, but this was one of those times where I wasn't using it in the context of some Java or .NET work. At that point working with velocity becomes a bit of a pain as you have to setup the context and run the processor in Java.

19 January 2007



Knoppix is a linux distribution with quite a few interesting properties.



I get a lot people offering me free copies of their new software development tool. Sadly I don't have time to look at them - and frankly I'm usually underwhelmed. Very rarely do I get enthusiastic about a tool.



I was in Boston, about to fly out to our office in Calgary. I look at my calendar to see if I have a meeting. First one is at 10.30am - cool no need to rush out of bed in the morning.

6 September 2007