rickscott: Bemused-looking picture of Rick (Default)

The predominant metaphor we use to describe software creation is an engineering or construction one -- writing a program is like building a bridge, or a house. I've long been unsatisfied by this view; to me, writing software has always seemed more similar to writing prose, or at least carving bespoke items out of wood. Chris McMahon, Marlena Compton, Zeger Van Hese, and many other folks have written up their own takes on what software creation has in common with art.

My latest article on StickyMinds wraps up the Philosophy & Testing series by exhorting individual testers to look to the arts, humanities, and social sciences and see what insights they can draw into their testing.

rickscott: Bemused-looking picture of Rick (Default)

Robert O’Callahan very coherently expressed something I've thought about software for a long time:

In software, especially cutting-edge software like Firefox, every developer is an inventor; coming up with new ways of doing things is not exceptional, it's what our developers do every single day.

(h/t Br3nda)

Every piece of software is something new. Every time we sit down to create software, we're inventing something. We're creating something that, in a very specific sense, has never existed before -- much like we didn't have War and Peace before Tolstoy sat down to write it. After all, if you wanted an exact replica of some existing piece of software, wouldn't you just copy it instead of making it yourself?

Horrible metaphors of construction, engineering, or manufacturing are so frequently applied to software creation. "Making software should be just like building a house!" people say, less-than-subtly implying that it should be perfectly predictable in both time and cost (and ignoring the massive schedule and cost overruns that often plague construction projects). But making a new program isn't like making other programs one might have made before. You may be informed by similarities between a new project and older ones, and you certainly get better with the tools, but you're not faster because an identical item has been made before -- it hasn't.

Profile

rickscott: Bemused-looking picture of Rick (Default)
Rick Scott

Who?

Canadian philosopher-geek who's profoundly interested in how we can collaborate to make technology work better for everyone. He's an incorrigible idealist, an open source contributor, and a staunch believer in testing, universal access, and the hacker ethic.

Syndicate

RSS Atom

Expand Cut Tags

No cut tags

Style Credit

September 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 2012
Page generated Jun. 8th, 2025 04:28 pm
Powered by Dreamwidth Studios