Why programming is hard 25 February 2014 Oh, you thought you understood a thing. Let me introduce you to a thousand edge cases. addresses geography names time (which is especially difficult (really)) gender. even just letters and numbers are absurdly complex.