Welcome to Niche Software, a MicroISV based in Wellington, New Zealand.

This site has two (conflicting) goals.

The primary goal of the site is as a host to my writing - mostly entries in my blog, but also including more detailed articles and the occasional highly opinionated editorial.

A secondary, but still important, goal is to be a place to post some tools, utilities and toys that I have written. As I tend to develop applications that "scratch my own itch," most of these are fairly technical in nature. Please check out the license on any item you download - while many are free, some are not.

Mandelbrot Screensaver

Mandelbrot Screensaver is a screensaver that automatically generates images from the Mandelbrot fractal, generating a never ending display of fractal images on your screen.

Read More »


WordTutor, a tool for running interactive spelling drills: the easy way to improve your spelling.

Read More »

A Developers Blog

Full stack developers - Do they really exist?

So I have to ask whether Adam Bertram, over on the Pluralsight blog really has a point to make or whether he’s just creating linkbait to drive traffic. (I hope it’s the former, since many of his other blogs are quite worthwhile.) For a start, Adam asks a simple question - the same question that I posed as my title - Full stack developers: Do they really exist?

Read more »

Effective IO for the Modern Developer »

Of Software Value and Logging »

Of Asset Creation and Business Value »

Christchurch Code Camp 2015 »

Refreshed Document.Factory Beta »

Geek Communication

In June 2014, presenting to the first cohort of the Enspiral Devacademy talking about the nature of "geeks" and how to communicate effectively with them.

Read more »

Static Analysis for the Win

We all know that the earlier we find a bug, the cheaper it is to fix. Shouldn't we therefore be doing everything we can to identify bugs as early as possible?

Read more »

Writing Maintainable Code

One core skill that every developer should cultivate is the ability to write Maintainable Code - code that can be easily understood..

Read more »

Unit Testing 101

A beginners introduction to unit testing, based on Roy Oscherove's book Art of Unit Testing. Presented to both Software Quality New Zealand and to Statistics New Zealand.

Read more »