Ming the Mechanic
The NewsLog of Flemming Funch

Tuesday, March 23, 2004day link 

 Why software stinks
Brief article in Salon.com (requires looking at an annoying commercial to read it) about some software luminaries' ideas about what programming is about, and how it can be done better. Hardware seems to keep following Moore's Law: it gets twice as fast, or half as expensive, every 18 months or so. But software does at best improve linearly. So most of the increased potential in hardware is wasted by messy and inefficient programming. The software is the bottleneck.

Programming is still mostly an art, not a science. I guess that's part of what I like about it. You pretty much have free hands to implement a requirement any way you feel like, as long as it ends up working. But it also means it is extremely hard to manage the complexity and to make good predictions about how long a certain task will take. And most solutions are extremely wasteful and often sloppy.
[Charles] Simonyi believes the answer is to unshackle the design of software from the details of implementation in code. "There are two meanings to software design," he explained on Tuesday. "One is, designing the artifact we're trying to implement. The other is the sheer software engineering to make that artifact come into being. I believe these are two separate roles -- the subject matter expert and the software engineer."

Giving the former group tools to shape software will transform the landscape, according to Simonyi. Otherwise, you're stuck in the unsatisfactory present, where the people who know the most about what the software is supposed to accomplish can't directly shape the software itself: All they can do is "make a humble request to the programmer." Simonyi left Microsoft in 2002 to start a new company, Intentional Software, aimed at turning this vision into something concrete.
Well, it can certainly make sense to separate the two - defining the solution and actually implementing it. Although not very well when we're talking systems analysts who decide what to do and programmers who do it. But maybe if the second part could be more or less automatic and directly driven by the representation of the design.

But everybody doesn't agree that it just takes a better way of writing the software. Rather a fundamental re-thinking of many things. But even in the energetic open-source scene, where people really are free to do whatever they'd actually want, we aren't particularly seeing fundamental changes in how things are done.
"There's this wonderful outpouring of creativity in the open-source world," [Jaron] Lanier said. "So what do they make -- another version of Unix?"

Jef Raskin jumped in. "And what do they put on top of it? Another Windows!"

"What are they thinking?" Lanier continued. "Why is the idealism just about how the code is shared -- what about idealism about the code itself?"
Yeah, how about a more fundamental revolution? Why am I stuck with a desktop metaphor on my screen, when my own desktop already had too few dimensions to it. We could do so much more with computers. But it is not easy to invent something totally different. I haven't, even though I'd love to. Those smart folks in the article have invented amazing new things in their time, but even they know it doesn't really add up to much compared to what is possible. We're limited by a tendency to define the next thing based on what we already know. That can even be a rather viable business strategy, as this funny quote from Bill Gates years ago illustrates:"The best way to prepare is to write programs, and to study great programs that other people have written. In my case, I went to the garbage cans at the Computer Science Center and I fished out listings of their operating systems."Yeah, and it still shows, Bill. Imagine he instead had invented something fundamentally new.
[ | 2004-03-23 06:08 | 6 comments | PermaLink ]  More >

 The Rosetta Project
picture One of the projects of the Long Now Foundation is The Rosetta Project:
The Rosetta Project is a global collaboration of language specialists and native speakers working to develop a contemporary counterpart of the historic Rosetta Stone. In this updated iteration, our goal is a meaningful survey and near permanent archive of 1,000 languages. Our intention is to create a unique platform for comparative linguistic research and education as well as a functional linguistic tool that might help in the recovery or revitalization of lost languages in unknown futures.

We are creating this broad language archive through an open contribution, open review process and we invite you to participate. The resulting archive will be publicly available in three different media: a micro-etched nickel disk with 2,000 year life expectancy; a single-volume monumental reference book; and through this growing online archive.
See, it is a bit of a problem to plan how you can leave a legacy of knowledge for future generations that actually lasts long enough for them to be able to access it, and that will be meaningful to them. A CD-ROM has a shelf-life of maybe 10 years. Most binary encoding formats would be pretty useless in a couple of hundred years, as they're just a bunch of zeros and ones, and unless somebody remembers what the encoding scheme was, it is no easy task to play them back. Their answer is to actually engrave regular letters into disks that will last a long time, and to include the text in multiple languages, just like the actual Rosetta Stone, which allows the decryption of Egyptian hieroglyphs, because a text was given simultaneously in hieroglyphs, Demotic writing, and Greek.
[ | 2004-03-23 16:20 | 1 comment | PermaLink ]  More >

 Freecycle
picture
Via Creative Generalist, check out Freecycle. Don't just throw unneeded stuff away and buy new. Put it up to be picked up for free by people in your local area. And you can be at the receiving end too, of course.
One rule: everything posted must be free. Whether it's a chair, a fax machine, piano, or an old door to be given away, it can be posted on the network. Or, maybe you're looking to acquire something yourself? Respond to the posting directly and you just might get it. After that it is up to the giver to set up a pickup time for passing on the treasure.
Seems to happen successfully in several hundred cities. And simply through e-mails in yahoo groups.
[ | 2004-03-23 16:53 | 1 comment | PermaLink ]  More >

Main Page: ming.tv