The Greatest Software Ever 435
soldack writes "Information Week has an piece on the 12 greatest pieces of software ever. It also notes some that didn't make the cut and why. Their weblog covers 5 others that didn't make the cut."
And it should be the law: If you use the word `paradigm' without knowing what the dictionary says it means, you go to jail. No exceptions. -- David Jones
What about Deathmaze 5000? (Score:4, Interesting)
Let me be the first to link to (Score:4, Interesting)
Unix is probably the greatest bit of software ever, but "Unix" doesn't exist per se, it's almost like you could say, that it's had a long branching history [levenez.com], oh well, I can't fault him for his choice, I probably would have said the same as well...but seriously...
Excel is on the list? Not say, VisiCalc? [wikipedia.org].
actually a pretty good list (Score:1, Interesting)
And how about Eliza...
VMware? A me too software... (Score:4, Interesting)
AIX? Got em
HPUX? Got 'em
Solaris? Got em...
Re:Wank wank wank (Score:3, Interesting)
Another vote for the shuttle...and here's why: (Score:4, Interesting)
This article from Fast Company [fastcompany.com] is coming up on ten years old and I've carried a bookmark for it since that time.
Read through it and see how much software you're aware of which is as capable as it is, the bug count, the lack of nights of old pizza, etc.
There are a lot of Earth-bound companies which write software on a large scale (source line count) which should take a page from what this article details.
Re:Somewhere... (Score:2, Interesting)
Like he's ever been laid....
Laugh if you want, I vote for dBASE II ! (Score:1, Interesting)
I am really biased, because dBASE changed my life (I was an early user, worked at Ashton-Tate for three years, and then did Xbase consulting work for many years after that), but I want to vote for dBASE II as one of the greatest software applications ever. (Here's how I can show my age - I actually first used dBASE II on CP/M!)
Ashton-Tate went from a small startup in three adjacent apartments, to being one of the "big three" PC software companies (along with Lotus and Microsoft), to being bought out and closed by Borland all in a 10 year time span.
As for later versions of dBASE, somewhat like the group R.E.M., as time went on they got more and more mediocre.
Ah, those were the days, when almost anyone who knew how to format a floppy could consult for $50 an hour...
TWR
Re:Java made the list (Score:5, Interesting)
Java is not now, and never was, a toy programming language. It's used by, among other things, cell phones, large web servers, and of course the annoying web applets you used to see everywhere before Flash stole their cookies. As far as I can see, it has few remaining technological drawbacks, the only big one left for me is how insanely ugly the language itself is. But that's not because it's a "toy" language, it's because it's an industrial-strength language, designed to force the programmer to program correctly, even if it takes 3 times the code and 10 times the time.
Java is not little. It's freakin' huge, when you count all the standard libraries. And the verbosity makes your programs even bigger.
Java may have been essentially interpreted in the past, but it isn't now. Don't believe me? Look up gcj. Even if you don't count a JIT as "compiled", I think gcj pretty much ends that argument.
Java is standard, it just depends how you count. It's not an open standard (yet), it's a proprietary one. Still, that's better than no standard, which is about where most implementations of BASIC are.
Java is not good for learning the basics. BASIC is much better for learning the basics. But have you ever had to sit through "Hello, World" in Java? That was my first Computer Science class in college, ever: Oh, and it has to be in a file called "Hello.java", or it won't work. Case sensitive, too. And, of course, they had to explain every last detail.
I would have quit right there, except I already knew some 5 or 10 languages when I came to class, including Java, so instead, I got to explain it to everyone else.
So what did you get right? Well, BASIC was popular, and Turing probably was, I don't know. And Java did indeed make the list, and like every language, it sees some use by novices and students, as well as trained professionals. But counting all of that, you don't really have much point.
Don't get me wrong, I hate the language as much as the next guy, and bytecode isn't as relevant as it once was (or may be soon). I'd much rather see C make the list -- after all, C is Unix and Unix is C. But then, the list seems pretty arbitrary -- no mention is made of Mosaic being bug-free, but VisiCalc doesn't count because it was buggy, and Excel makes the list because it's less buggy.
Re:DOH!!! He forgot the wordprocessor (Score:5, Interesting)
I agree that it is simply amazing how few bugs there are in Tex. I do not think this is due to the fact that Knuth was paying people who found bugs. Rather, I believe the quality of TeX is due to Knuth's genius, and also not in small part to his idea of "literate programming".
There are better ways to put it, but in essence, literate programming means that you are supposed to write text that explains the algorithm or process; the code is like actions intersepsed in the text, but in a sense, the main product is the text, not the code.
I try myself to follow this style, having code that either reads obvious, or having large comment sections that explain what is going on, and all the background assumptions, so that the code is then obvious. It certainly had an influence on the amounts of bugs in my code, not to mention in my coworker's ability to understand what is going on.
In this respect, I believe a lot of OSS is sorely lacking. And the pity is that they lose developers in this fashion. As a personal story, some time ago I wanted to develop a plugin for Gimp to implement a particular effect, something I used to be able to achieve with a chemical darkroom. After three hours of staring at the code, and not being able to figure out for certain how to get to the pixels of an image, I gave up. I remember staring at hundreds of lines of C code, written in poor style, with very few comments (and what comments there were explained the obvious, instead of the background and the assumptions of the piece of code).
BSD vs Linux vs DRM (Score:3, Interesting)
But what I want to know is which ideology will win out in the end. The GPLv3 just hilights the question. The BSD license and GPL have been around for a while now, and TiVo has got Richard Stallman on YAC (Y. A. Crusade). Some say DRM will be the end of the GPL, making it a shadow of the BSD license. Others say DRM will allow companies to steal BSD code without a backward glance.
Anybody know the future? I'm going to guess that the GPL will last the longest, because it is making the most noise. (The squeaky wheel and all that.)
A better list (Score:5, Interesting)
Most subjective list EVER (Score:1, Interesting)
This is
Re: Windows (Score:5, Interesting)
Windows had enormous business impact and created a software ecosystem, but it didn't really drive any TRENDS in computing.
DOS might get a mention because it was critical in brining the PC to everyman. But then, the same could be said for the Macintosh OS if DOS never caught on.
Here are the breakdowns of software and major influence/contributions:
12) Morris Worm - Internet Security
11) Page Rank - "Search" (Internet utility in general)
10) Apollo Guidance System - Fault Tolerant / Embedded Computing (also historical significance)
09) Excel - Profound effect on business, put power in the hands of many professionals.
08) Mac OS - GUIs
07) Sabre - The proof of concept of large-scale BI, CRM and other "Enterprise Systems"
06) Mosaic - The Web
05) Java - Popularization of VMs and distributed/network computing
04) System 360 - Operating Systems
03) IGR - Pure wizardry and human impact (although I might posit that TeX or the Orbitz boking system could go here too)
02) System R - _the_ database.
01) BSD Unix - The Internet
Re:the list (Score:5, Interesting)
Tell me about. I remember 20 years ago when young lady was just getting into email she ask me if a virus could be spread by email. I just laughed and said no, it would never happen. It would require that email readers have the ability to execute code passed to them, and nobody would be stupid enough to write a mail program that would do that. Execute code passed to it from anyone.
Re:FTFA (Score:3, Interesting)
Re:Software? HUH? (Score:3, Interesting)
9. Excel spreadsheet
Have to agree, this is a wonderful concept, but not pioneered in Excel
4. Java
Pascal should have been there instead. Or Forth. Java is like C++ on viagra and sleeping pills combined
Also, what was that Zerox OS called back in 1973? That thing had close to WGA resolution, too.
____
*Viagra is a Registered Trademark of Pfitzer Inc.
Re:Interesting article, but... (Score:3, Interesting)
If an author writes a long article about many things, some of which you know well and some of which you don't, and you catch him giving inaccurate or outright false information about one of the things you do know well, then why should you trust him to be accurate about things you don't know well, where you can't say if he is ?
Only a fool trusts a known liar.
Your statement is just a way of stating that someone is being an idealist and imply that this is because of lack of strength of character or intelligence. Since such lack can't possible be determined from a Slashdot post, and since the grandparent post didn't even state that he believes in Stallman's ideology (or any ideology for that matter), your statement comes down to nonsensical name-calling.
So up yours, you arrogant doodoo head.
Re:Best Hello World ever (Score:5, Interesting)
Yeah, but I could have never written that straight through. I just began with the "naive implementation" and started cramming patterns into it. Plus I needlessly referred to concrete classes via interfaces wherever possible like you're supposed to. (Otherwise I might be tempted to stray outside the bounds of the interface and use implementation specific features.) Singleton and Factory were both no brainers. Strategy, though, was what really turned the program flow into a mess.
I initially posted it in a BS slashdot comment but this code actually became famous. It's all over the web. It appeared in one of the Patterns books [amazon.com] as a warning of what not to do. I got a free copy from the author after I found this code in his online draft. There are also C# versions around if you need a Hello World in your Microsoft shop.
I hope to improve my Hello World in the next versions with even more patterns. Ones I'm looking at include Mediator, Proxy or Bridge, and Decorator (maybe to replace "." with "!" at the end of strings or something obnoxious like that, so I can name an interface "Excitable"). There may possibly be room for Visitor and a few others. Command and/or Interpreter would be nice but Interpreter might require a significant amount of code- using a library is unacceptable in a project like this one. Although that code then might need some more PATTERNS to help it out because otherwise it's hard to think of stuff that these patterns should be used for except for earlier infrastructure to implement previous patterns! (This would make the Hello World similar to projects I have seen in real life.) Maybe a stack- I'll push a Noun onto it ("World") and an Interjection ("Hello") that knows how to modify a Noun operand. Then I'll feed the stack to the Interpreter which will generate a MessageBody. That would really make a nice mess of things. If things get too complicated I'll have to jam a Facade in there somewhere.
Re: Windows (Score:3, Interesting)
The complete microsoft office suite at one stage was significantly cheaper than Lotus 1-2-3 on it's own (and that was with full real manuals and tutorials for each of the applications)
When the two best parts of microsoft left in the 90s so did anything even remotely resembling quality.
Re:Best Hello World ever (Score:2, Interesting)
MicroChess on the KIM-1 (Score:3, Interesting)
I can't speak for the IBM 360 (Score:3, Interesting)
Re:A better list (Score:3, Interesting)
Robert Heinlein anticipated this in "The Door Into Summer" (1956/7), by the way. Here's the narrator's description of what ended up being called "Drafting Dan":