Sunday, June 29, 2008

Progress, measued in inches

After a good day of work, this is how far I've gotten. Since this is about half-way, I'm going to have to flip the workspace around and get all of the tools off of the unfinished part. I think that's when I'll take a break and paint the opposite wall. Might as well do it while there's no floor over there that needs protecting.

Didn't work on "Elements of Computing Systems" this week. But did spend some time getting familiar with Django, a Python based web-framework. All signs point to it rocking the casbah.

Which reminds me of the differences between software and other kinds of engineering. My take is that in software, we have good abstractions for design, but not for construction, where other forms of engineering seem to have both. Moreover, there are real disincentives for developing good abstractions in software through repetition, where in "physical" engineering, repetition and all of it's opportunities for developing useful abstractions through trial and error is unavoidable. After all, you can't reuse a bridge.

But of course, this is a huge advantage for software engineering as well. Here I am installing a floor three inches at a time, while in ten minuets I can download a complete engineering software solution for making web-sites. Weird.

0 comments: