It appears that I've become rather busy at work, so I might not get so much time to write articles for the next short while. I'll still hope to put stuff up every couple of months, so keep an eye out.
- Light
- 2nd May 2010
- A curious trespasser investigates the nuclear fallout zone around Cheyenne Mountain. First published in the My Writers Circle "Rascals" anthology; flash fiction.
- New Science
- 15th Mar 2010
- Winning entry for a writing contest, with the length stipulation of exactly 100 words. First published by My Writers Circle; flash fiction.
- Discordian Date Handling in Java
- 8th Mar 2010
- Date handling, and especially conversion between different calendars, can be a complex issue to deal with. This article introduces the concept of calendar conversion in Java, and the issues that need to be dealt with when performing such conversions, by building a handler for the Discordian calendar and investigating the mappings between months in the Gregorian calendar and the Discordian seasons.
- linecolor.pl: Rule based Line Coloring in irssi
- 1st Feb 2010
- The irssi IRC client has a built-in capability for rule-based highlighting of nicknames, but does not allow for the full line to be highlighted; nor does irssi allow arbitrary colours to be set against different rules. linecolor is an extension script for irssi that allows for this functionality to be added, in an intuitive fashion.
- Audio Captchas in PHP
- 9th Jan 2010
- The major compromise made when a website uses Captcha images is that between accessibility and security; those with bad eyesight or colour-blindness may have trouble viewing a Captcha image. One way around that is to provide an MP3 download option for the Captcha text, which gives another path of accessibility to the process. This article looks at how an audio Captcha can be generated, using common tools.
- Binary Coded Decimal Addition on Atmel AVR
- 19th Dec 2009
- The AVR instruction set manual mentions binary-coded decimal exactly once, and provides no instructions for easily working with BCD values, despite the utility of BCD in embedded applications. This article explores the issues involved in working with BCD values, especially in incrementing and adding such values, and introduces an algorithm for resolving the discrepancies that arise.
- GameBoy Z80 Opcode Map
- 16th Nov 2009
- The CPU used by the Nintendo GameBoy is a specially modified version of the Z80, with various functions removed to make the CPU cheaper to manufacture. Documentation for this CPU is often lacking; the most common opcode maps are written down as a standard Z80 map with addenda for the Nintendo modifications. This opcode map collates the references into a coherent opcode map for the Nintendo GB-Z80.
- Implementing PayPal Website Payments Pro UK
- 15th Sep 2009
- PayPal is used across the world to authorise payments online, and a seamless credit card payment service is available through Website Payments Pro. Unfortunately, the documentation for implementing this can be confusing and contradictory, and getting your code working can take some time. In this article I've brought together the documentation and my experience with it, to provide a coherent source of information on Website Payments Pro.
- Prime Point
- 19th Aug 2009
- A spacecraft is sent to the Earth-Sun L5 Lagrange point, where it undergoes testing. Vignette, sci-fi.
- Parsing the DIME Message Format
- 29th Jul 2009
- If a SOAP web service requests in a complex response, where more than one file has to be returned, an encoding format has to be used to fit the files into one message. One of the more common formats is Microsoft DIME, used by Jasper Reports and other services. This article looks into how a DIME message can be parsed, and the files pulled out to work with.