Dan Bricklin, co-creator of VisiCalc, writes about spreadsheet history, software longevity, and his own software and essays.
HN links it for the VisiCalc history and downloadable DOS executable, and for his essays on building lasting software.
I think the difference is that software is engineering that isn't treated like engineering. For example, if a new bridge is going to be built, years and years are spent building models, testing winds, and understanding the geography of the location. Models are tested in wind tunnels. Dampers are added for earthquakes that may or may not occur. Every truckload of concrete is tested. Metals are designed for exact specifications.
When software is built, the first prototype becomes the production version. People don't think about the future. Algorithms aren't chosen they are hacked together by someone who may or may not understand the system from beginning to end.
The problem with software, most times, is precisely that it is not treated as engineering. We build software to be thrown away. We don't build it to last. This article from Dan Bricklin changed my perspective on software.
http://www.bricklin.com/200yearsoftware.htm
He argues that we should treat software more like engineering projects and design and build it to last.
Furthermore, we require civil engineers building bridges to have degrees in civil engineering. For software, anyone can create it. People who never went to college even. But you'd never allow someone with only a history degree to design a skyscraper. We've become accustomed to software written by people who are not engineers. We don't spend the same kind of money on it and the users of it don't really care, because unlike a bridge, their lives…
One thing you missed about Windows is the huge amount of effort put into backwards compatibility. You can download the original VisiCalc for the 1981 IBM PC and it still runs. Note that DOS back then didn't even support directories (they were introduced in DOS version 2).
http://www.bricklin.com/history/vcexecutable.htm
Raymond Chen's blog is full of fantastic stories about Windows and the amount of effort they put in to backwards compatibility. A quote:
"Look at the scenario from the customer's standpoint. You bought programs X, Y and Z. You then upgraded to Windows XP. Your computer now crashes randomly, and program Z doesn't work at all. You're going to tell your friends, "Don't upgrade to Windows XP. It crashes randomly, and it's not compatible with program Z." Are you going to debug your system to determine that program X is causing the crashes, and that program Z doesn't work because it is using undocumented window messags? Of course not. You're going to return the Windows XP box for a refund. (You bought programs X, Y, and Z some months ago. The 30-day return policy no longer applies to them. The only thing you can return is Windows XP.)"
Some random examples:
http://blogs.msdn.com/b/oldnewthing/archive/2004/06/04/148427.aspx
http://blogs.msdn.com/b/oldnewthing/archive/2003/12/23/45481.aspx
http://blogs.msdn.com/b/oldnewthing/archive/2003/10/15/55296.aspx
I don't know. I'm more of the mind to create a new blog post titled "Everything, reviewed" in which I review every product I've ever owned (worth mentioning), and put all my reviews there. I think you could aggregate that info, if only I had good identifiers. This is where I wish the world had URIs & Dublin Core for, ya know, everything. <sigh/> Good luck deciphering what I mean when I'm blogging.
I think Rotten Tomatoes is not the site to copy here, but rather Criticker: if I can rate items and compare my ratingset to similar ratingsets, that would be valuable. It's more of a cornucopia of the commons [1], if you will, where contributing even a little will reward you epsilon (and everyone else, too).
[1] http://bricklin.com/cornucopia.htm just read about this guy a la the Visicalc thread, never thought I'd use the phrase
I was just reading this, and this paragraph struck my eye:
"Bricklin and Frankston recalled that their initial efforts to promote VisiCalc did not meet universal enthusiasm. Experienced computer people weren’t bowled over, Bricklin said; they would dismiss the spreadsheet with, 'Hey, I can already do most of this in BASIC.' People who had no experience with computers tended to think that computers could do anything under the sun, and so VisiCalc didn’t wow them. 'But when the accountants saw it - there was an accountant [at a particular computer store], he started shaking - he said, ‘This is what I do all day!'"
Reminds me: who are you solving the problem for?
For more details, here's Bricklin's Visicalc history.
http://www.bricklin.com/history/intro.htm
"... In the long term, it is unlikely that any particular ASP will survive without you needing to migrate your data to something else. ... The issue you bring up, of how do you deal with the fact that it is unlikely most ASPs will be around to maintain your data, is a good one. It should be discussed and careful attention should be paid to it. Your suggestion to go with ones that have the most partners and customers (VisiCalc's situation in its day) doesn't fit with your comparison to staying away from VisiCalc. ..."
From the man (Dan Bricklin) himself ~ http://www.bricklin.com/nextvisicalc.htm
I wanted to make some counter-snark like "I'm pretty sure VisiCalc didn't have mouse support" but I wanted to fact check myself and found a delightful write-up comparing VisiCalc 18 years ahead of Excel, so I will take your side, MS takes credit for someone else's invention as usual, but inventing is only the first step to delivering product.
>> "To change a cell, you move the cursor to it with the arrow keys (the original design used a mouse, but the PCs of that day did not have a mouse) and then type the new value"
http://www.bricklin.com/firstspreadsheetquestion.htm