Programming In Metaphor
Jun. 21st, 2006 02:02 pmHaven't been posting much life-related stuff lately, because life has been increasingly work-focused. I can tell that I'm running on the edge of burnout SCA-wise (not the first time), so I'm taking it easy for a couple of months to get my head together. As for what I have been doing -- well, it's kind of like this.
My first couple of years here at Convoq were kind of like designing and building a new kind of jet. The principles of the Server Engine are decently well-understood, but the idea was to create something that really hummed along beautifully. There was lots of careful design and tweaking, thinking about the Big Issues of how it would work. I didn't really have big screens displaying blueprints on them, but it was that sort of Master of My Technical Universe sort of feel. And the thing has been flying nicely and reliably since I finished with it.
By contrast, for the past year or so I've been doing auto mechanics. First there was the plugin for Internet Explorer, which you can think of as a big old GM car to which I needed to add a new Gadget. It took a good long time to find all the pipes and plugs that my Gadget had to attach to, and longer to get the voltages right. I repeatedly shorted out the electrical system, and it took some months before it stopped blowing smoke out the tailpipe. But eventually the Gadget was nicely integrated, so that the driver wouldn't even know it was there unless he was looking at the readout.
And now, having just gotten the grease off my hands, I've wound up trying to install the same Gadget in, say, a Honda Fit. (That is, Firefox.) No one told me upfront this thing would have to fit into a smaller car (indeed, I had specifically asked about that several times), so I had to start out by spending a month or so redesigning the Gadget to fit into a smaller space. It's a nice little vehicle (in many ways better than the big one), but I keep getting screwed up by the fact that everything is in metric, so my wrenches don't work, and being a much newer car, there isn't much information to tell us mechanics how to work with it. I'm making steady progress, but I keep stripping bolts and having to replace them.
So basically, think of me as working with the car's hood up, up to my shoulders in the engine, frequently dashing around to the driver's seat and turning the key to see what happens. Sooner or later it's all going to work.
And today will be a good day -- if I can just figure out how to get the damned timing belt back on...
My first couple of years here at Convoq were kind of like designing and building a new kind of jet. The principles of the Server Engine are decently well-understood, but the idea was to create something that really hummed along beautifully. There was lots of careful design and tweaking, thinking about the Big Issues of how it would work. I didn't really have big screens displaying blueprints on them, but it was that sort of Master of My Technical Universe sort of feel. And the thing has been flying nicely and reliably since I finished with it.
By contrast, for the past year or so I've been doing auto mechanics. First there was the plugin for Internet Explorer, which you can think of as a big old GM car to which I needed to add a new Gadget. It took a good long time to find all the pipes and plugs that my Gadget had to attach to, and longer to get the voltages right. I repeatedly shorted out the electrical system, and it took some months before it stopped blowing smoke out the tailpipe. But eventually the Gadget was nicely integrated, so that the driver wouldn't even know it was there unless he was looking at the readout.
And now, having just gotten the grease off my hands, I've wound up trying to install the same Gadget in, say, a Honda Fit. (That is, Firefox.) No one told me upfront this thing would have to fit into a smaller car (indeed, I had specifically asked about that several times), so I had to start out by spending a month or so redesigning the Gadget to fit into a smaller space. It's a nice little vehicle (in many ways better than the big one), but I keep getting screwed up by the fact that everything is in metric, so my wrenches don't work, and being a much newer car, there isn't much information to tell us mechanics how to work with it. I'm making steady progress, but I keep stripping bolts and having to replace them.
So basically, think of me as working with the car's hood up, up to my shoulders in the engine, frequently dashing around to the driver's seat and turning the key to see what happens. Sooner or later it's all going to work.
And today will be a good day -- if I can just figure out how to get the damned timing belt back on...
(no subject)
Date: 2006-06-22 12:22 am (UTC)My work does not imsprie nearly such an intersting analogy, and my 'real' work, i.e. school, tends to inspire image-analogies not fit for polite company.
But this was really fun to read, and I now understand exactly what you're doing, while having only a laymans knowlege of programming.
(no subject)
Date: 2006-06-22 03:41 am (UTC)As for being burned out in the SCA: I actually had a random thought of "What if I quit SCA stuff" at Vinland Raids, and was largely shaken by the thought. I'd have a tough time quitting it, because right now it's 98% of my social life in Boston. I don't want to at the moment, although I may start scaling back during the school years a year or two from now until I have tenure. And I may feel overwhelmed right now between making clothes for Pennsic and getting my classes ready. Which reminds me, you mentioned someone whom you described as a math laurel at one point. I'd like his contact info sometime before Pennsic, if possible.
Have a nice SCA break!
(no subject)
Date: 2006-06-22 12:35 pm (UTC)I'd like his contact info sometime before Pennsic, if possible.
Actually, he's still in the Liber (he was local for many years, although he's now teaching at Bard). It's Master William the Alchymist...
(no subject)
Date: 2006-06-24 12:38 am (UTC)(no subject)
Date: 2006-06-24 03:04 am (UTC)