Nathan Hoad
This is all the old embarrassing stuff that I also can’t bare to delete.
May 16 2015
Blocking Gtk signal handlers without freezing your application
Jun 14 2014
syslol, the best syslog daemon there is
Jun 07 2014
On the subject of commit messages
Feb 03 2014
RSS feeds for Steam games
Dec 08 2013
Playing with asyncio
Apr 24 2013
Choosing a Python IDE, Part Seven: Vim
Apr 23 2013
python-iwlib - simple wireless interface for Linux
Apr 04 2013
Taking advantage of Twisted's Deferred objects
Apr 04 2013
Abusing Python's Introspection
Apr 03 2013
New Blog Theme
Apr 03 2013
AngularJS is almost nice
Nov 17 2012
Using my Computer Less
Nov 17 2012
Chrome: The IE6 of The Future
Aug 19 2012
Choosing a Python IDE, Part Six: Editra
Jul 01 2012
Changing Providers
Jun 19 2012
Persisting multiple objects at once with JQuery
Jun 16 2012
Uncommon JavaScript Idioms That Should Be Common
Jun 03 2012
Managing available client side data with JSON (Not just for Python!)
Jun 03 2012
Choosing a Python IDE, Part Five: Aptana Studio 3
May 27 2012
Outbox.py: An SMTP Client for Humans
May 26 2012
Choosing a Python IDE, Part Four: PyCharm
May 13 2012
Choosing a Python IDE, Part Three: Wingware IDE
May 07 2012
Choosing a Python IDE, Part Two: Komodo IDE
Apr 28 2012
Choosing a Python IDE, Part One: Sublime Text 2
Apr 23 2012
Look of Disapproval
Apr 22 2012
Another Blog Update
Mar 02 2012
Useful Bash shortcuts
Mar 01 2012
Debugging your selectors in jQuery
Feb 25 2012
Optimising my desktop / my dotfiles repo
Jan 28 2012
Website Remake
Aug 14 2011
Script for uploading files via SSH
Jul 22 2011
Lesson in C++ - When in doubt, make clean && make
Jul 18 2011
How to - Fading image gallery with JQuery
Jul 17 2011
Django seemingly caching
Jul 13 2011
The value of automated data generation and processing
Jul 11 2011
Official Completion of my blog
Jul 10 2011
More blog functionality
Jul 10 2011
First post! Again...