Programming in the Void

We think we know what it is we are capable of as programmers.  We think we understand the processes we go through, individually, about how we think about software, how we solve programming problems, how we juggle the concepts and variables of a piece of code, how we keep it all straight, fit it together, make sense of it all.  But we only really understand the process of programming in the rich environments of office buildings, dens and garages, places ripe with access to media, libraries, magazines, co-workers, the INTERNET.  We think we do this work by ourselves, alone, but really we are standing on the backs of giants, applying our tiny morsels of dirt to the mountains of achievements already made. 

It’s not that we don’t try to be original and do it all ourselves.  As programmers, we know the hunger to redo everyone else’s work, that if its not invented here its not any good.  But even when we do an entire re-write, we are building upon the knowledge we have learned from our experiences, from what is available to us.  We have no idea what we would do if we were truly in a void, alone to do the job with only the description of the task and nothing else but an editor and compiler.  And it won’t work to simply pile yourself into a closet, turn off the lights and send out for pizza, I’m talking total sensory deprivation, except for the PC of course, and no on line docs.

There is only one way to truly discover what we are capable of.  We must at least experiment with the idea of programming in the void, free from the worldly perpetual distractions that surrounded us daily.  Imagine what the mind might be capable of when you are able to totally focus on the problem itself, and nothing else. It is amazing what an ace programmer can do already, the thoughts that can be fathomed, the notions, the idea, the pure brilliance that we see day to day.  In isolation we might all excel to be Einsteins. 

There is of course only one place where this can truly be tested, only one place where true isolation can be found, a void free of worldly interruptions, televisions, telephones, the INTERNET, music, the incessant chatter of non-programmers, water cooler gossip, process meetings, subcommittees, work-groups and team morale events.  There is only one place you can be free of all that so you can do what you do naturally.  That place is space, outer space.

NASA is always looking for the next best experiment to be conducted in zero gravity, the next big idea that may provide us with insights to exploit, to carry our society into the rich and thriving future of progress.  What we really need is programmers in space.  Up there, encased in self-sustaining capsules, packed in the payload bay of a shuttle, programmers can thrive, just programming, 24/7.  Entire projects could be completed in record time if only we have the forethought and courage to put our best minds and industries toward designing the ‘code pod’, a living space for a single programmer, computer, chair, a mini fridge and a microwave and a mountain of pizza and cold soda.  If we launched these things as satellites, we could have thousands of programmers working diligently, day and night, producing endless streams of high-quality, genius level code. 

Inhumane?  Don’t tell me you haven’t sat fixed at your PC for days on end as it is.  Would you have even noticed if someone boxed you into a pod and launched you into outer space? I didn’t think so.

Think of the outsourcing potential!

But I digress.


Comments (6)

  1. Robert O says:

    Great Post! If we did that we would be able to replicate space gravity in our video games in no time at all!

  2. Where do I sign up ? 🙂

  3. Chen says:

    Actually, outer space isn’t enough. The big yellow things (some peoples calls them "stars") is still distracting you…

    Maybe shuttles without windows? 🙂

  4. Jami Johns says:

    Day 1: Programmer launched into self contained satellite. Codes 20,000 lines of C++ in seven hours, along with 6 lines of documentation.

    Day 2: Programmer tears plating off walls, finds satellite broadcast unit connections responsible for sending life signs to NASA.

    Day 2, one hour later: NASA panics as programmer appears to have pulse rate approaching 300. Closer inspection of packet data indicates programmer has assigned IP address to satellite and has written custom browser software to allow him to "look up a few STL function definitions, no big deal."

    Day 2, eight minutes later: Programmer gets into heated discussion over the high worst-case time of the STL sort procedure. Mankind’s first extraterrestrial flame war commences.

    Day 2, ten minutes later: Programmer contacts friend at Blizzard, gets into World of Warcraft Beta. Purchases Napster subscription so he has "something to code to."

    Day 90: After three months in orbit, programmer logs 26000 lines of code, deems project a failure. "There’s too many distractions in lower Earth orbit."

  5. uber says:

    Good post! At first I thought it was going to be another "I am a Zen Master because I can write VB5 code" story, but this was fun. And in Jami Johns’s timeline, he forgot to add "Day 3: Programmer seen offering money for stupid gmail invite."

  6. Scott Allen says:

    This is Major Tom to ground control. I’m stepping though the code. And my floats look very different today. Planet Earth is blue, and there’s nothing I can do. (Apologies to David Bowie)