www.nobugs.org
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.
Professional
I've worked as a Senior Engineer at Amazon.com since 2005. Prior to that, I spent 5 years in 3d medical visualization, and a few years doing development tools and educational simulators. I have presented talks at various events - AgileScotland/ScotlandIS, an invited guest lecture for the APL course at Edinburgh University, SPLS and numerous internal presentations. I have attended a variety of seminars and events, such as MGS2007, ICFP and SPLS.
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, fork seals and have some photos regarding how to dismantle a fork leg. I also have some articles on how bolts, chains and engines work. And some photos about electrolytic rust removal. Finally, I keep my camping list here so that I can find it when I need it!
Contact
You can email me. Please use my public key (also on keyservers) if you are a PGP/GPG user.