Lego -> Social and "Fictional" Software

When I read Paul Lamere's blog 27 Stages of Lego Sorting, it reminded me of Douglas Coupland's wonderfully insightful book Microserfs which is about a group of developers (some of whom had major Lego phases, one of whom goes on to create a Lego masterpiece ;) who form a kind of geek commune around a company to develop a software application called "Oop!". The idea of "Oop!" was to provide a rich kind of virtual Lego set, with the ability to use, build and share smart mobile & reactive components (a bit like Lego Mindstorms), which could act like doors or lifts or game characters or Rubik's cubes or vehicles, and so on. Ok, pretty interesting idea.

But that started me thinking; that's not the first time I've seen a software application described in a novel. Douglas Adams in Dirk Gently's Holistic Detective Agency also outlines a rather amazing piece of software which is best described by Douglas (2) himself:

'Well, Gordon assigned me to write a major piece of software for the Apple Macintosh. Financial spreadsheet, accounting, that sort of thing, powerful, easy to use, lots of graphics. I asked him exactly what he wanted in it, and he just said, "Everything. I want the top piece of all-singing, all-dancing business software for that machine." And being of a slightly whimsical turn of mind I took him literally.

'You see, a pattern of numbers can represent anything you like, can be used to map any surface, or modulate any dynamic process -- and so on. And any set of company accounts are, in the end, just a pattern of numbers. So I sat down and wrote a program that'll take those numbers and do what you like with them. If you just want a bar graph it'll do them as a bar graph, if you want them as a pie chart or scatter graph it'll do them as a pie chart or scatter graph. If you want dancing girls jumping out of the piechart in order to distract attention from the figures the pie chart actually represents, then the program will do that as well. Or you can turn your figures into, for instance, a flock of seagulls, and the formation they fly in and the way in which the wings of each gull beat will be determined by the performance of each division of your company. Great for producing animated corporate logos that actually mean something. 'But the silliest feature of all was that if you wanted your company accounts represented as a piece of music, it could do that as well. Well, I thought it was silly. The corporate world went bananas over it.'

Reg regarded him solemnly from over a piece of carrot poised delicately on his fork in front of him, but did not interrupt.

'You see, any aspect of a piece of music can be expressed as a sequence or pattern of numbers,' enthused Richard. 'Numbers can express the pitch of notes, the length of notes, patterns of pitches and lengths.' 'You mean tunes,' said Reg. The carrot had not moved yet. Richard grinned. 'Tunes would be a very good word for it. I must remember that.'

(aside: I think Douglas Adams had several important insights into software, one of which is quoted at the end of an interesting article Autistic Social Software (not really about autism, but about the ADD of software products and/or developers who don't want to try to understand the social implications of networked communication and collaboration; if you're into groupware though, my single favourite groupware article is one that I read 10 years ago - What do groups need? A proposed set of generic groupware requirements - it offers an excellent synthesis and framework for evaluating groupware requirements; gosh, back then I used e-mail to request a copy from one of the authors Munir Mandviwalla; he kindly sent me a hardcopy which I still re-read occasionally - great stuff, and now you can get it on the ACM portal; both of these articles only go to show that creating truly new forms of groupware is very hard)

I bet that's just the tip of the iceberg though in terms of creative software ideas in fiction; anyone know any others?


Post a Comment:
Comments are closed for this entry.



« June 2016