Yesterday, after six months of work, a small side project ran to completion, a search engine written in django.

It's a thing of beauty, which took many trials, including discovering utf8 in mysql isn't the full utf8 spec, dealing with files that have wrong date metadata, or even none at all, a new it backup policy that stores backups along side real data.

Nevertheless, it is a pretty complete product. Beaming with pride I began to get myself a drink, and collapsed onto the floor, this caused me to accidentally hibernate my computer, which interrupted the network connection, which in turn caused an OSError exception in one of my threads, which caused a critical part of code not to run, which left a thread suspended, doing nothing.

From the floor I looked at my error and realised my hubris and meditated on my assumptions that in theory nothing should interrupt a specific block of code, but in reality something might, like someone falling over...

  • 6
    That's deep
  • 4
    Dropped a tear
  • 4
    That was beautiful
  • 2
    At first I was smiling, then slowly my mouth started to make an 'O'. That would make a good horror movie.
  • 1
    Add some heartbeat communication to your thread-system, with a restart if one is locked for some reason. Keeps the system running and catch up if network is back.
  • 1
    @EndlessJo Or I just wrap it in a try/catch? Adding a heartbeat system is over engineering the project beyond what its requirements are.
  • 0
    @Letmecode Haha no... I'm just very clumsy and I tripped over my own feet.
Add Comment