www.nobugs.org
(andy@nobugs.org, April 2006)
Who?
This is Andrew Birkett's website. I'm a software developer, living in Edinburgh. Contact me via email. I write a blog mostly about software engineering. You can browse some of the books I've read on my bookshelf.
Edinburgh Software Companies
I maintain a list of Edinburgh software companies as a resource for the local software developer community. I'm always interested to hear from people about new companies, or any news about existing companies.
Software Development
I program stuff for fun. My main interests are graphics, compilers and programming languages, cryptography, software quality issues and development tools. I am an ACM SIGPLAN member, and one day I plan to return to academic research.
I am familiar with many open-source projects. If you want me to add a feature to an open-source program for you, please contact me and I'll get back to you. I have recently worked on the Mono project and XMMS.
At work, I program mainly in Java or C++, but I like learning and using lots of different programming languages. I've written a couple of raytracers - one in java and one in haskell. Whilst travelling, I learned the ocaml language and wrote a go client and a lisp interpreter. Still on the obscure programming language theme, I created an example L-system written in Postscript too. For testing, I created my own Quick C++ unit test framework which makes adding new tests really easy. My DTP program was a great learning experience, but I stopped work on it a while ago. Finally, I've written a couple of Halflife/Counterstrike utilities.
I recently wrote a tutorial for Yi. I wrote the XMMS plugin tutorial, which you can also find at www.xmms.org. I've also written articles about parsing C++ and the the GCC C frontend. I have recently completed an article on the Win32 Debug CRT Heap.
Engineer
Have you ever melted metal? I built my own furnace to do just that. I also wrote a furnace diary, which explains how to build one if you're willing to risk life and limb. I've since built a simple wood lathe which lets me cast metal pulleys.
I also dabble in electronics, building a PIC programmer and test circuit. My current uber-project is to build an small, semi-autonomous aircraft which I'm currently coding and hacking receivers for.
I ride a CB500, and I've written articles about replacing brake pads, yokes and fork seals. I also have some articles on how bolts, chains and engines work. Finally, I keep my camping list here so that I can find it when I need it!
Professional
I work for Amazon.com. In the past, I have work worked in medical visualization, development tools and educational simulators. My curriculum vitae is available in HTML.
Contact
You can email me. Please use my public key (also on keyservers) if you are a PGP/GPG user.