Friday, January 28, 2011

Bug in the Works OR Butterfly Workin'

This Golden Gate Park butterfly doesn't appear to be troubled by problems in her code
Go ahead and click on the picture for a more in-depth view of her world

I've been working away with the Objective-C programming language and the piece of software called Interface Builder.  Those are, of course, the  tools used to write apps for ipads, ipods and iphones. In my case, I'm still learning to do that.

I was up against a particularly nasty little bug in my program and finally, huzzah!, I found it. It reminded me of the  story from the old days, I mean the REALLY old days, kids. It dates back to around World War II. It's the origin of why programmers call problems in the workings of their software, 'bugs'. You all know the old story, right? The engineers had been tussling with some problem that was keeping the huge machine from doing it's thing. My college professor, Harry Huskey remembered those days. He had worked on the EINIAC. "Those vacuum tubes",  Professor Huskey told us. "they were always blowing, and we had to run around that huge room, swapping them out."  

So the problem-solvers on this day had been swapping out vacuum tubes, scratching their heads and dismantling things. Finally after days? hours? (depends on who's telling the story), they found the problem. A dead bug was found deep within the recesses of the machine. The programmers were so happy to find the problem, that they pasted the dead bug into the big ledger in which they noted their progress on the project. "Bug in the works", someone noted.

And of course, ever since then, a programmer works to find the bugs in her works. Because surely the problem couldn't be something SHE did.