The Greatest Software Ever
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."
← Back to Stories (view on slashdot.org)
Windows ME.
That was one of the first -- maybe the first -- 3D game on any platform. And this was first done on the TRS-80, with 128x48 black and white resolution! WOW! Now *that* had to have been one of the most important games... *EVER!* Who doesn't remember Deathmaze 5000?
Somewhere in Redmond, chairs are being thrown.
And somewhere in Redmond, Bill is look to acquire some of the mentioned software to add to his collection....
It's either on the beat or off the beat, it's that easy.
I moderate therefore I rule!
--
12. The Morris worm 11. Google search rank 10. Apollo guidance system 9. Excel spreadsheet 8. Macintosh OS 7. Sabre system 6. Mosaic browser 5. Java language 4. IBM System 360 OS 3. Gene-sequencing software at the Institute for Genomic Research 2. IBM's System R 1. Unix
Ludwig Wittgenstein
The Unix Haters Handbook a great read.
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, 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?.
Error 407 - No creative sig found
Umm, excel? Try Lotus 1-2-3. Foolish coycat mortals.
In all fairness, the author goes into quite a bit of detail concerning the history and context of the software chosen to explain why. It provides a decent overview of software history.
Of course, had you read the article, you would have known that. Instead you decided to dash for a first post concerning your obsessive fixation on male self-stimulation. Hey, whatever works.
So, both the article and the submitter are obviously trolls!
Similar to the upcoming US election results
Instead of Excel I would choiose Visicalc http://en.wikipedia.org/wiki/Visicalc
Instead of Java I would choose C. Modern RISC machines are built to run C fast. What CPUs are designed to run Java.
12. The Morris worm
11. Google search rank
10. Apollo guidance system
9. Excel spreadsheet
8. Macintosh OS
7. Sabre system
6. Mosaic browser
5. Java language
4. IBM System 360 OS
3. Gene-sequencing software at the Institute for Genomic Research
2. IBM's System R
1. BSD 4.3
Ludwig Wittgenstein
This is much better than the usual top 10 or 25 type lists which tend to way overrepresent events of the last 10-15 years. This is much more balanced, and I like the entries. I even like the five that didn't make it. Although, I wonder why Excel is in there in the first place... good program, but not really in the same league as the others. If you want an entry from Microsoft, I'd have chosen Visual Basic, that was a real leap forward (or at least a real leap somewhere).
And how about Eliza...
Microsoft Bob is clearly superior to Windows ME. It does less far with far more stability.
Cheers,
Dave
They that can give up essential liberty to obtain a little temporary safety deserve neither safety nor liberty.
Ben
Offtopic, but I gotta say: linking directly to the printable version == nice work.
I hope it catches on.
VMware? C'mon... is it because it was implemented on x86? It's not exactly revolutionary. Hypervisors in one form or another have been around since the 80s (anybody remember MVS?).
AIX? Got em
HPUX? Got 'em
Solaris? Got em...
All respect goes out the window here. It wasn't price that pissed off Stallman, it was restrictions on his freedom. He doesn't care how much he has to pay for software, so long as he can do whatever he wants with it when he gets his hands on it.
And what pisses me off is having to read through the whole rest of the article first, then all respect goes out the window on the 3rd paragraph from the bottom.
Don't thank God, thank a doctor!
Oh yeah? I'm the only one who's been modded up yet, so nyah. The lurkers^Wmods support me.
Besides, he could have just written a straight history article without the masturbatory need for ranking which was best. I could write an article about an arbitrary set of n things and rate them in order of how much I like them, but nobody would care.
No kidding. They put down BSD 4.3 just so they wouldn't get flamed into eternity. But they didn't know the real reason why UNIX (not BSD 4.3 in particular) was so significant. It was the first OS written in a high level language, which was designed to write an operating system (prior to this point operating systems were written in assembly language for speed). Missing this point makes this article look hopelessly trivial.
3. Gene-sequencing software at the Institute for Genomic Research
What the hell does that even mean? There's the firmware that runs the sequencers, the base-callers and other QC software, a whole bunch of sequence assembles, lots of custom software hacked together by various scientists, but even at TIGR there never was such as thing as THE \"Gene-sequencing software".
Wank wank wank.
Where's "Hello World"?
Clippy, or Bob? Clippy, or Bob... I can't decide!
- sm
I sense fanboyism in that article somewhere...
the greatest software ever! Quakeworld!
Well if you're going to put Java above the Apollo guidance system software then you have to be willing to go all the way.
This article from Fast Company 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.
how about MS-DOS 6.0?
1. The Internet, invented by Al Gore
2. Porn, invented by Bill Clinton
So if we took this list of Greatest Software ever? And you look at the list, it would seem to think that IBM is the greatest software company ever... Looking at the list they made:
t em)/
7. Sabre system (http://en.wikipedia.org/wiki/Sabre_(computer_sys
4. IBM System 360 OS
2. IBM's System R
Hi gang -
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
I guess the question remains is which wordprocessor. While there's Wordstar, Wordperfect, and Word that might be worthy, clearly TeX should be in first place and mentioned on his list. TeX is the father of all wordprocessors that followed, and the author Donald Knuth had such firm belief that programmers should be responsible for what they create that he paid for each bug found in the code.
This produced a completely error free program, and started a generation of programs that followed that would drive mechanical typewriters to extinction practically everywhere, and changed how we get printed text onto paper. Hence this is truly great software.
So TeX is a glaring ommission for this list, and probably should have been close to the top, if not number one.
Take the cheese to sickbay, the doctor should see it as soon as possible - B'Elanna Torres, "Learning Curve"
Why excel? Shouldn't visicalc or lotus123 be in that spot? Java??? WTF? Where is C or FORTRAN or COBOL?
Sounds like an article written by somebody who doesn't know jack.
evil is as evil does
10. Apollo guidance system 9. Excel spreadsheet Hahahaha!
Religion for nerds. Stuff that really matters
From the article:
Sigh. High fees had nothing to do with it. Anyone who has spent an hour reading about the history of the GNU project would know that.
http://outcampaign.org/
is tetris. No single piece of software has wasted so much time.
Read reviews of shopping cart software
I'm amazed that he put Apollo's command module and Excel in the same article. Excel ten years ago had some simplicity and virtue. Today, it is choked with M$'s horrific auto-wrong features. Worse, it requires an OS he dismisses just one paragraph up.
There are plenty of examples of Excel costing everyone lots of time and money, and not just because someone used it the wrong way. I've read stories about gentic code sequences at the Center for Disease control being turned into date codes. I've seen what happens between versions. Putting your work into a secret format, of course, puts you into a position where the owners of the secret can lead you around. Then there are the cases of misuse. No, not using it for obtuse things, like a blog formatter (yes, I just read about someone doing that), flexibility is what makes spreadsheets great. Misuse is creating the monster that's so big and complex it will eat you alive. When you combine misuse with auto-wrong you get a real disaster.
I use Gnumeric now. It's light and won't tax your computer. The input is functional, so it won't tax you. It has all the functions Excel does but they all give you the right answer. Most important, it won't auto-wrong you. The formats you enter are the formats it uses and you can go back and forth between them without losing information. Gnumeric is everything Excel used to be and more. It's grown useful features like perl scripting, but not bloat like silly drawing tools.
After such a blatant contradiction, Excel as a simple tool, I'm going to read the rest of the article with a grain of salt. If I see Power Point or Word, I'll quit reading.
Friends don't help friends install M$ junk.
I didn't know that... so was Multics written in assembly?
Yay for unix
I can think of no single piece of software that has enabled more people to create wonderful things with only their imaginations and a bit of skill. Take all of the pieces of software you love, and divide them into two piles: "built by GCC" or "built by anything else." Then you will see how impressive it is. Although users never see it, they use it every day. How many terabytes of data are served daily on the net by GCC-built software? And even the scripting languages you love were likely themselves built by GCC. GCC is the invisible root of our information society.
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.
Don't thank God, thank a doctor!
- He claims that the first version of Unix came with paging. To even credit the PDP-7 with paging capability is rather amazing. Unix used whole-process swapping until only much later in its development. If I'm not entirely mistaken, wasn't paging implemented in BSD3?
- He appears to claim that Unix invented time sharing! I don't think I have to elaborate on that, really...
- He also claims that "[Unix] would let two people use a computer at the same time." Not only is it false (it supported as many as there were terminals wired in), I also find it a bit funny that two-people time sharing would have been considered impressive at the time.
- He seems to imply that "Uniplexed Information and Computing System" was an actual, official name of the system. To begin with, "Unics" wasn't really meant to be expanded -- it was just a pun on the "Multics" acronym (that is, a pun on the acronym, not on its expansion).
- To mention that Unix was rewritten in C without mentioning that C was invented for that very purpose is of course not "incorrect", but I would argue that it is a rather important omission.
- He writes that the first C version of Unix was "Unix System III", while in fact it was, of course, Third Edition (V3). System III was a much later release (~1980?) by the USG.
There are probably many more errors, but I stopped reading when I noticed that my eyes were bleeding.Thank you for playing. Our hostess has a fine parting gift for you as you leave. If you return, please remember to always phrase your answer in the form of a question.
The correct question for: "Tbe first operating sytem written in a high level language" was: "What was MULTICS?"
On a whim, the judges decided that PL/I and BLISS both sucked, and The C Programming Language openly states that C isn't really a high level language, so they would also accept "What was the Lilith?"
Of course, the first truly high level language was Trebecktran, used to write the OS for me, the Trebecktron 9000!
The universe is a figment of its own imagination.
so was Multics written in assembly
Yes, at least initially. The reason that UNIX exploded upon the world (unlike some other cool OS's like MULTICs and ITS), is that it was rewritten in C (it was initially written in assembly language). The fact that you only had to rewrite the assembly code instead of the entire OS made it extremely desirable (for the same reasons that Linux is desirable today). The idea of the first portable operating system escaping the editors of this article is unforgivable.
Here is a reasonable history of UNIX. The history article at wikipedia currently sucks (so I guess I had better start rolling up my sleeves).
I would just like to thank whoever submitted this for linking to the PRINT version of the article for once, instead of the FIFTY BAJILLION-MILLION pages version.
That entire article seemed rather stream on consiouness and not very focused on software. When he got the last 3 I half expected to read something like:
3: 3 Socks
2: A half pound of butter.
1: Pay electric bill before power company cuts me off.
I actually forgot the article was supposed to be about until I hit back and re-read the slashdot summary.
You expect /. articles to be correct? Maybe the /. articles should be run as wikis then all the fact and grammar Nazis could correct things on the fly.
Engineering is the art of compromise.
Dozens of people have already replied with different technologies, and they all use one reference medium: wikipedia.
Why is wikipedia not on the list? I consider this the best invention of technology ever--a method that combines the power of the internet with the minds of people.
What the Morris worm gets on the list but not Outlook Express and IE 6? I ask you, which programs are more vital to the virus writing commmunity than these. Where's flash or animated GIF's? The technoliges that allow annoying ad's to exist as well as internet classics like hamster dance and badger badger badger. These are the technoliges that brought the internet into the golden age.
Best Software ..... Ever!
Java Language? Excel Spreadsheet? Google search rank?
These, although IMPLEMENTED through software, are not in and of themselves software - they're merely concepts (or in the case of Java, a language).
I like the list, but it's comparing apples and oranges. Surely, if the Java language makes the cut, other languages should make the cut too - C? BASIC? Don't try to tell me that Excel, or even Google search rank, is more important than C has been. And what about markup languages? No HTML?
And, if they're going to include OSes, WINDOWS doesn't make the cut? I'm sure I'll get shot around here for making this comment, but Windows has done wonders for bringing the computer to the masses. What about the software for the computer that INVENTED the modern GUI, the Xerox Alto, which also invented the WYSIWYG Text Editor? (http://en.wikipedia.org/wiki/Xerox_Alto)
I'm sorry, this list doesn't quite make the cut, and it definitely isn't the "Witness the definitive, irrefutable, immutable ranking of the most brilliant software programs ever hacked."
http://www.TheGamerNation.com/Forums
Anybody that includes all that obscure stuff and doesn't include BIND on the list needs to retire his slide rule and chase the kids off his lawn.
Unix or some precursor at 1.
I'd put BIND at number 2.
3 PacMan ROM
4 Some distributed computing client (you pick)
5 Mosaic (or whatever the first browser was)
Stop 1 or 2 for a day, and half the world's economy stops with it. Some chess playing crap is neat, but doesn't do anything _important_. The rest are just ordinary breakthroughs....
Flow Fazer
Excel
Mosaic
Star Raiders
Shut Down
--
make install -not war
The Singleton implementation (and it's chronologic comrades) makes the grade in my opinion. This was software which squeezed every drop of performance out of the primitive machines they had at the time and made many avenues of scientific research available where they had not before.
Dude, he has THREE KIDS!
_ life)
(http://en.wikipedia.org/wiki/Bill_Gates#Personal
http://www.TheGamerNation.com/Forums
.
.
As far as I know, this is a commonly believed myth. This story:
http://www.kuro5hin.org/?op=displaystory;sid=2001
Okay, I agree that BSD 4.3 was great. That much the article is clear about.
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.)
On to the best hardware ever: The Pentium !!! I never would have bought one if they didn't repalce the III in the roman numeral 3 with !!!
Wh47 d1d j00 541, 31337 15n't t3h r0xor5 ne m0r3???
public interface MessageStrategy {
public void sendMessage();
}
public abstract class AbstractStrategyFactory {
public abstract MessageStrategy createStrategy(MessageBody mb);
}
public class MessageBody {
Object payload;
public Object getPayload() { return payload; }
public void configure(Object obj) { payload = obj; }
public void send(MessageStrategy ms) {
ms.sendMessage();
}
}
public class DefaultFactory extends AbstractStrategyFactory {
private DefaultFactory() {}
static DefaultFactory instance;
public static AbstractStrategyFactory getInstance() {
if (null==instance) instance = new DefaultFactory();
return instance;
}
public MessageStrategy createStrategy(final MessageBody mb) {
return new MessageStrategy() {
MessageBody body = mb;
public void sendMessage() {
Object obj = body.getPayload();
System.out.println(obj.toString());
}
};
}
}
public class HelloWorld {
public static void main(String[] args) {
MessageBody mb = new MessageBody();
mb.configure("Hello World!");
AbstractStrategyFactory asf = DefaultFactory.getInstance();
MessageStrategy strategy = asf.createStrategy(mb);
mb.send(strategy);
}
}
In order to get through the lameness filter, I was forced to include this sentence that I would otherwise omit.
-
IBM's VM operating system. (1972) OS/360 was a nightmare, and not even the best OS of its era. Burroughs and UNIVAC were way ahead in operating systems in the late 1960s. VM, though, had paging, good security, hypervisor capability, and good performance. In the 1970s. And it's still in use.
-
Backus' FORTRAN compiler (1957) The first good compiler. Optimizing, even. Better code generation than anything running on UNIX prior to the mid-1980s.
-
QNX (1980) The first really good microkernel OS. Still in use, deep inside railroad signalling systems, machine tools, and nuclear reactor controls, where it has to work.
-
NLS (1967) The first system with a mouse, windows, and a GUI. It took a mainframe to make it go in 1967, but all the key ideas were there.
-
AutoCAD (1982) This is the program that replaced the drafting board. Huge increase in productivity. Ever ink in a drawing by hand? Redraw a drawing to make changes? Engineering companies used to have acres of people doing that stuff. No more.
-
Bravo (1974) The first what-you-see-is-what-you-get text editor. Multiple fonts. Ran on the Xerox Alto. The ancestor of all modern word processors.
Those are older examples, each a major advance over previous technology. As the technology becomes more mature, the advances become smaller, but more widely deployed.That's simply incorrect. PL/I was chosen as the implementation language for MULTICS well before the first line of code was written. It was never written in assembly language. If you'd like to know some facts, consider reading a bit about the history of MULTICS.
Oddly enough, this is mostly true. Even though MULTICS was written in a high level language from the beginning, it wasn't very portable. It required a fairly heavy duty memory-management unit that most of the machines at the time simply didn't provide. It was a bit like a current x86 in protected mode, but in reverse. The x86 takes a virtual address and translates with with the paging unit to a linear address, then the segmentation unit (theoretically) does another translation on that to give a physical address. MULTICS required an MMU that took a segment-style address and translated it to a linear address, then a paging unit that translated that to a paged address.
Very few memory management units (then or now) provide that capability, and without it, MULTICS is pretty much dead in the water.
The universe is a figment of its own imagination.
Last night I posted this. Now I get to post it again, only now featuring new RTFA power:
[TimBL...] Interesting, he's going to go down in history with similar status as Gutenberg. One of the very very few people alive who will still be referenced in 500, 1000 years where even kings, prime ministers and presidents will be forgotten.
And a shame too. marca (or his bosses) were the ones who said "all this abstract chatter on www-talk about compound documents is interesting, but can we hack some shit into the next release to show pictures?" Behold, the IMG tag. Years later, we've just about recovered from the infrastructural mess this made.
The IMG tag allowed corporations to burn money on graphic designers to avoid competing on actual content. Wikipedia as an application was viable once we had TEXTAREA, and before if you count the TimBL's NextStep browser; myspace and toyota.com were not.
What really built out the net we still use is one core idea: the Web is "a badly animated TV with a buy button". And the Web would have gone the way of Gopher+ without that. So let me toast the IMG tag. I'll see you in hell.
The greatest software ever
Don't you ever say Hello?
Say, do you have any psychological problems?
The greatest software ever
Why do you repeat yourself?
Yes! Why!
WHY OH WHY DO I REPEAT MYSELF?!?!?!?!
We probably played MacFoxes more in the semester it was popular at CMU than my entire life with Tetris. Ohhhh...that's scary...
"He uses statistics as a drunken man uses lampposts...for support rather than illumination." - Andrew Lang
I cannot believe my Catherine Bell screensaver is not on that list.
It's a travesty i tell you!
Unix is a good software solution for a server environment. It's been a great system for generations to learn to hack on. But the greatest software ever? Lets see. We've been to the moon and back, we've positioned Hubble to track a single region in space for days on end. We've got software that literally saves lives. We have software that simulates flight well enough to train real pilots on.
/. though. Watch me get modded down for saying anything remotely negative about Unix.
This is
These posts express my own personal views, not those of my employer
/bin/true!
The ultimate example of the Unix philosophy of doing one thing, one thing only, and doing it right!
No arguments, no parameter lists, no side effects, just true!
Such a beautiful example of Unix doesn't just happen; it takes work! Let's look at /bin/true on a Solaris 2.10 box:
Don't let anyone tell you the Unix way is the easy way; it took Six Whole Versions for Sun to get true correct! No wonder Windows is so full of bugs - they're trying to do hundreds of things. If they'd only adopt the Unix philosophy, they might have gotten it right in only ten tries! (Ten, because all the smart people work on Unix.)
Worship the true!
... but these "top X Y" are the bread and butter of digg. Even the author of the story is writing the blurb for that audience. Really, who are information week to give the "... definitive, irrefutable, immutable ranking of the most brilliant software programs ever hacked" ?
Since when was a nobody's top 12 list "news for nerds"? Bah.
What about the brillant paula bean ? http://thedailywtf.com/forums/thread/40043.aspx/
This software blew me away !
The One True Editor - VI!!!!!!!! It's the piece of software which I use the most, and nothing else comes close to comparing. The user interaction model is simply wonderful once you get used to it, and it has a certain elegance and minimalism to it. It is impressive that such an old, "obsolete," and "archaic" editor is still used (in upgraded form) by so many people today.
"an piece"? I think you meant "an article"!
"Say Bob, did you send that e-mail yet?"
"Nah, but I left an message on their answer machine."
"Really, we don't even have an telephone."
"Well, I used my cell phone. Guess what? It features an walkie-talkie feature."
"You mean I get to hear both sides of the conversation now instead of one?"
"Yes, isn't it an great feature?"
"Indeed. I'll have to go buy an cell phone one of these days."
The number of mistakes in grammar/spelling/semantics these past few weeks has been a lot more than usual.
Comparing a Java compiler to a Haskell compiler, say, is like comparing a toddler's first steps to running ultramarathons.
Doesn't it make you feel good to know that our freedoms are protected by politicans, lawyers and journalists.
DOS more than Windows. If any Windows, Windows 95.
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
THIS THING CAN TURN ON A DIME, MACROSSZERO STYLE ALSO FUCK BETA, ~NYORON
Umm, excel? Try Lotus 1-2-3. Foolish coycat mortals.
One of the most amazing things I've seen is how Lotus 1-2-3 macros turned accountants and clerks into programmers (spehgetti perhaps, but it ran). Lotus did this by leveraging users *existing* knowledge of spreadsheets and menu keystrokes. Just toss in a Goto cell and an IF function into a keystroke recorder and you have a Turing Complete language. Complex billing programs were written by ordinary clerks. There has been nothing like it in scale before or since that I know of. Excel's programming language was only for the bravest of clerks and killed the trend.
Table-ized A.I.
IBM is responsible for essentially creating the idea of computing in the commercial and industrial sectors. :-)
They invented databases, proto-ERP, and timesharing OSs. Kinda important stuff, wouldn't you say?
What the hell do you want from them ?
THIS THING CAN TURN ON A DIME, MACROSSZERO STYLE ALSO FUCK BETA, ~NYORON
Seems like they didnt use any good software for the site
Where is it? It is the most stab
Java??? WTF? Where is C or FORTRAN or COBOL?
Well, you could read the article, but he chose Java because of the combination of the virtual machine and sandboxing, which allowed users to receive programs over the network without the program needing to know basically anything about what it's about to run on, and without as much security risk. It was really a choice of the Java support software rather than anything to do with the language itself.
I'll drink to that!...
If you're going to put a compiler on the list, it should be the original IBM FORTRAN compiler. It bridged the gap between interpreters and assemblers and allowed the computer itself to take an active role in code generation for the first time.
Not well researched, not authoritative, vendor-centric...IBM 360 as a "great software"? It was a hardware range. First general-purpose computer system? Even it's own predecessor was a GP computer system, and lets not talk about the CDC 6000's & CHRONOS O/S that preceeded them, shall we?
Meh.
Do not mock my vision of impractical footwear
Ah, suprised no one mentioned Hypercard http://en.wikipedia.org/wiki/Hypercard - I still have clients with working stacks - it was an idea before its time, to bad support for it died in 2004. LONG LIVE HYPERCARD!
Horns are really just a broken halo.
VisiCalc was not included because it was buggy and lacked important features, but I have to agree with you that Lotus 1-2-3 belongs there, since Excel is buggier than VisiCalc was. Java belongs on the list for exactly the reasons specified in the article, it completes the source code portability concept started with other languages by adding cross-platform BINARY portability through the use of an intermediate language and VM. While Java may have its roots in C/C++, Smalltalk, and large included-library languages like Ada, Java has become the basis of and benchmark for all new general-purpose languages, including everything that has come from Redmond since the introduction of Java. Things like RIM's Blackberry and Microsoft's .NET are the best examples of why Java is great software, since the language is essentially irrelevant, but the VM concept and large, standardized, and stable core library are the reasons why Java has the influence it has. Simple ideas that are taken for granted now were revolutionary (although often originally introduced 30-40 years before) concepts when Java was introduced, like Swing, RMI, and the security manager (including the sandbox for browser applications).
--That's the point of being root, you can do anything you want, even if it's stupid.
If Excel is there for being the killer app that drives Personel Computer use in business, instead of the mainframe/terminal model before that.
Then that place should really be taken by VisiCacl for the Apple II.
http://en.wikipedia.org/wiki/VisiCalc
Sure in the end Excel won the war for Windows.
VisiCalc Started the trend.
"Call us when the New age is old enough to drink" Beck
What? No solitaire? It's included in 99% of OS's, it's so simple your grandmother can use it, and half of every work day is spent using it! How can this not be mentioned!?!? I'm astonished!
The Xerox Alto never made it past the research project stage, as the Information Week article points out, but the Macintosh OS was a pale imitation of the Xerox Star, which was indeed a commercial product -- albeit for large corporations and the federal government, not individual consumers. I can't imagine that anyone who ever used both Star and MacOS could fail to appreciate the superior functionality, sophistication, and attention to detail of the former. Like the original Mac, the Xerox Star was an integral bundle of hardware and software (see http://www.digibarn.com/friends/curbow/star/retros pect/ for a concise description), but it was a lot more than a detached box: it was part of an integrated pre-IP distributed computing environment that included a collection of network services (directory, mail, filing, printing) as well as a bundle of seamlessly integrated apps, including what arguably was the finest word processor -- Xerox called it a "document editor" -- ever designed. Admittedly, it wasn't sufficiently successful in the market to survive the onslaught of the WIntel PC and the ineptitude of Xerox's general management. More's the pity: we may have cycles to burn these days (although what Intel and AMD giveth, Microsoft inevitably taketh away), but for fit and finish Star has never been surpassed.
Look at the just the baseline platform support:
What's other single piece of software allows you to edit text, check email, read newsgroups, web browse, play games, make your coffee and do you laundry? Excel...pfft. Whatever.
Coderz 4 Life
M$ did manage to convince a generation of secretaries -- I mean Administrative Assistants -- that a spreadsheet is a tabular editing tool for typing up phone lists. I remember nearly choking when I saw an "Admin" actually doing accounting in Excel . . . she typed in a column of figures on the computer, then added them up on her desk calculator and typed the sum into the "spreadsheet".
I am not a crackpot.
Why number one would have to be Slashcode, of course!
henry -- the human evolution news relay
Almost everything else was an unholy mess for years. The first System/360 operating systems (OS/PCP, TOS, original DOS) could not run multiple applications at a time. Although this functionality (implemented by OS/MFT, OS/MVT and later versions of DOS) was in the plans from the start, it took a lot time to actually arrive in a useable form. The process of converting customers from the older 1401's and 7090's to the new architecture was horribly mismanaged. In theory, emulators (supported by microcode) were available to simplify the task. In practice, the conversion was a nightmare, not helped by the fact that, in those days, it was very common to be unable to locate program source code. In IBM's defense, they did put System Engineers on site with customers for as long as it took to solve the problems.
An even greater technical achievement (Future Sys: which was eventually released in part as the System/38 and its successors, as well as some hardware devices) was axed by Thomas Watson personally, after a bigger investment than that made in System/360 development, because of the painful experiences involved in converting clients to the System/360.
If you think BSD is great, you should really checkout BSE.
Today, Linux threatens to take over the high end of the market as well. But Linux is merely a clone of an incomplete GNU system and its BSD predecessors. They generated all the key concepts implemented in Linux. That's why Sendmail and BIND, building blocks of the Internet, were developed under Berkeley Unix, not System V. And that's why Microsoft, when it sought the best implementation of TCP/IP for Windows, took the one in BSD Unix.
Silly me. I always thought it was about the license.
Fidonet
-metric
Wolfenstein 3D
-metric
[Damn, I'm feeling Zen tonight.]
It must have been something you assimilated. . . .
Please! Do some extrapolation! Clearly: linux rules all.
Java ugly? Have you seen C++? Anyone who likes all that :: and -> and &var and *var stuff is just nuts!
BG
But have you ever had to sit through "Hello, World" in Java? That was my first Computer Science class in college, ever
(extremely long, hairy code)
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.
For what it's worth (since you aren't wrong), I think he was calling it a toy for this reason.
Preceding Wordpad, Wordstar, Wordperfect, word whatever the crap. There was VI. Why was VI important? It was one of the most major tools for editing under UNIX (which was #1). Without VI, how does a programmer edit one of the source code files? "ed" comes to mind. But, that's only a line editor. The introduction of the visual editor in 1976 changed everything! It completely revolutionized the way programmers do work.
Even today, I still write all of my HTML, Javascript, property files, etc, using VI. Talk about a program that COMPLETELY changed the computing, Unix is the framework, VI changed the game.
There would be no word processor without VI. WordPerfect, WordStart, etc, all based their design around vi's ability to move the cursor between words, lines, etc. The only difference, there was a key on the keyboard to state Insert or Overwrite. In VI, we were limited to 7-bit ASCII (And even before then, so it's predating me), that we need to "insert" ie, "i", or "append", ie "a" from where we were.
How could we miss VI!?!?
is Emacs, end of story. Ctrl-x-Ctrl-c.
sure I'll have a sig.
MS Paint. Seriously it's like Ronseal. It does exactly what it says in the tin. Need to cut a picture in half? Resize it? Just convert soemthing to JPEG. Need to chop something out of a screenshot? My biggest complaint with Mac OS is there is no Paint equivalent bundled with the OS.
If you aren't far left by the age of 18 you have no heart. If you aren't far right by 30 you have no brain.
that might be true. Giving it a spot on this list is like giving the computer from 2001: A Space Odyssey a spot. Or how about Sonny from I, Robot?
My script don't crash! She crashes, you crashed her!
No, Windows didin't drive computing as a trend.
Lotus 1-2-3, dBase and WordPerfect drove computing as a trend, giving businesses the software to justify buying PCs. MS-DOS came with the computer that was necessary to run the software, and Windows merely capitalised on the huge existing install base of MS-DOS.
I'm getting sick and tired of this Microsoft revisionist bullshit.
Mart"I know I will be modded down for this": where's the option '-1, Asking for it'?
Other than Excel they named all OSs and utility type software. End users applications were largely ignored. Of every software I have ever used Photoshop ranks at the top of my list. When you factor in stability, power, ease of use and impact it's hard to find it's equal. You really have to pick a field because there are landmark softwares for every end use.
In a sense it's pointless because the list is driven by the criteria and nothing else. When you say greatest software everyone will have their own list because what they consider makes a great software would be very individual.
I love JavaScript, I usually use the versions built w/ javac which was in turn probably built w/ either msvc or sun studio.
GCC is very good at making messes (otoh, it's not alone in this respect), now it's true that some messes are aided an abetted by various vendors tuning or hacking incomplete features that they want before they're ready (gcc296/30 anyone?), but I can't remember a single gcc version which didn't cause problems for the software I worked on, and I'd think that the software I work on is used by more people more often than they use GCC -- nice thing about end users, there are so many of them, and they probably spend more time browsing the web than they do staring at gcc miscompile things or spit out unhelpful errors or complaints indicating that the last gcc hacker to hack some part of gcc decided he didn't want to support something which everyone else supported.
If you want to credit something, it would be K&R C for the portable language, it was innovative and useful.
Note that you're of course foolishly assuming a small world where everyone runs linux. if you consider the world with end users, most end users are using windows, and most programs for windows aren't compiled with gcc, they're compiled with compilers that do reasonable jobs of optimizing code. If you looked at happy end users a few years ago, you'd find mac users who were using programs compiled with MetroWerks's compiler or maybe Apple's MPW.
I haven't seen anyone complain that bytecode was available in other languages before java (e.g. pascal and basic), but I don't know any versions of either where you would actually be able to share the byte code across platforms and have it run.
If you want to nominate something, how about PERL, if you replace skill with time, you'd have a statement which is more accurate for either gcc or perl, but the programs written using perl would crash less.
Did you read the article? He specifically mentions VisiCalc, and also states WHY he decided Excel should be on the list and NOT VisiCalc. From the article:
For software to be considered a success, it has to be up to handling the job it was created to do.
That axiom certainly applies to VisiCalc, the first spreadsheet software. It's great because it demonstrated the power of personal computing. The software put the ability to analyze and manipulate huge amounts of data into the hands of every business. But VisiCalc itself, despite representing a breakthrough concept, wasn't great software. It was flawed and clunky, and couldn't do many things users wanted it to do. The great implementation of the spreadsheet was not VisiCalc or even Lotus 1-2-3 but Microsoft Excel, which extended the spreadsheet's power and gave businesspeople a variety of calculating tools. Microsoft's claims that it makes great software are open to dispute, but the Excel spreadsheet is here to stay. Nearly everyone is touched by it.
See, there was more thought put into this than you may realize.
"A computer on every desk" is not only about business, Mart, nor is being "great" only about business. It's also about personal computing. Every desk, Mart. Computing for everyone.
Maybe you don't like the idea that billions of people computing is more important than 10 millions of people computing -- even when the billions are doing so much less computation and more of simple communication and information retrieval when they "compute."
You could take a lot of hard lines and Geek perspectives which will make the software you mention seem more seminal or more important, or more "great" than Windows. If you ask me, in denying the importance of Windows, mass markets, and the still dawning participation age, you'd be missing the definition of "great" in this "greatest software ever" question.
Great is a computer on every desk, not because I prefer consumerism to intellectualism but because for one reason, thanks to the former we can afford a lot more of the latter. Thanks to a computer on every desk the Web could take off -- without the right OS and UI and a business capable of selling them, we could easily have stalled with BBSes, gopher, email.
I suppose the potential was too incredible for no one else to succeed, had Windows not succeeded in bringing computing to the masses. You can argue for the rest of your life that Microsoft and Windows have not been essential, or that they should not have been essential to the success of your livelihood and mine, but: they were, and they are. Windows: perhaps the greatest software ever.
I think it was COBOL that first made programming available on a large scale.
If you're going to include a language like Java because of a believe that it will be _the_ language to survive all others, surely you should mention a language which has already survived a lot of languages and, to this day, is still the most popular language in terms of operational lines of code.
I also fail to see the logic in calling a worm a "great piece of software", just because it necessitated using anti-virus tools. Without such great pieces of software, we would have never needed anti-virus.
Excel spreadsheets? No! Spreadsheets may be one of the main reasons personal computing started off, but without Excel, we'd still be using spreadsheets just as much, albeit with a tool of different name.
As for markup languages; SGML would have been nice, but it's just a file format. There's probably more important file formats in this world; e.g. compression formats (which, incidentally, implies compression software). Imagine a world without JPEG and ZIP.
Perhaps another important piece of software would be the Phoenix BIOS, it's what enabled the current competitive PC environment.
Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
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.
Chaos - everything, everywhere, everywhen
Other way around. The segmentation unit takes a 16-bit segment number and 32-bit segment offset and translates it to a 32-bit linear address, then the paging unit translates it to a physical address.
Or the lazy journo in question could have done what I did and gleaned a reasonable overview in five minutes, split between slashdot and wikipedia.
Of course it took me a while to find out that RMS wasn't also the goatse man, but my point still stands!
Jeez, you really have drunk the Kool-Aid, haven't you?
What does Windows actually do? A bare Windows install is not capable of doing any useful computing at all, it is an Operating System. It is applications that do actual useful computing.
Granted, most applications are written to run on the Windows OS, but that does not make Windows the driver of computing for the masses, it is still the applications.
For business adoption, this was software like Lotus 1-2-3, dBase and WordPerfect. For home use? Games. Face it, most home users on this forum when discussing leaving Windows cite games as the factor keeping them on the platform.
The history of the microcomputer shows that is applications that drove adoption. The early 8-bit machines were sold to hobbyists who used them in little projects, and the generation of the ZX Spectrum and the Commodore 64 sold to families as replacements for the games console, with a little productivity on the side. Meanwhile, 8080 and Z-80 based machines sold to small businesses for WordStar and dBase II on CP/M, and when the IBM PC came and evolved, businesses upgraded to it and the new software available for the platform. It didn't hurt that the IBM name finally gave the microcomputer enough status to be treated seriously by more than SME's. Mac adoption started really heating up with its use in DTP, and Unix workstations sold on the strength of the high-end engineering and science applications that ran on them.
As the PC architecture became more versatile and powerful, and Windows started being more than just a DOS Shell, these separate markets slowly collapsed into one market, that of the Windows-driven Intel architecture, with lone holdouts in the Unix and Mac sectors. But a good objective look at history shows that it was not Windows that created this market. Microsoft merely rode the wave of success of the PC platform, and due to its massive install base was able to provide the most common API for application developers.
Windows being responsible for the whole microcomputer revolution is too silly to be taken seriously by anyone but Microsoft itself.
Mart"I know I will be modded down for this": where's the option '-1, Asking for it'?
This seems to be the same as your description of what MULTICS expects.
What about Leisure Suit Larry?
to RTFA, but when I got to Excel being one of the greatest software ever written, I knew this was just another big stinking pile of bullshit. The interweb is full of this stuff, so why put it on Slashdot? I assume the rest of the stupid article had nothing else of interest.
By the perception of illusion, we experience reality
If you're talking about older examples, I'll take LISP over those, thanks. :-)
And what about SmallTalk (the language and environment)? Wasn't that the first widely deployed "object oriented" language/environment? That would make it pretty significant.
-- "I never gave these stories much credence." - HAL 9000
SO..not a single distributed OS is mentioned? A true dist.OS is able to treat networked resources(including CPU) as shared among a group of nodes that have no global clock. Distributed computing is one the gretest human achievements. I believe Solaris was one of the first, but there are others used by IBM.
And one other thing, the Java Virtual Machine (and the compiler) is the software, not the "Java language" as he stated.
And every SPACE and COMMA and SLASH is significant, and must be there, or the job gets aborted.
And if your data file contains any lines with // in column 1, those may get interpreted as job control cards (talk about a security hole!).
And files have to be explicitly laid out, with file size, record lengths, record counts, starting size, size increment, in tracks and/.or sectors. And files have to be PRE-FORMATTED, just like floppies, before you can write to them. And Files are not automatically listed in a directory, you have to go out of your way to "catalog" them with a name.
And the standard base OS has no multi-tasking, or time-sharing, or background tasks, or remote access, or load-balancing, or networking, or compatibility with any other computer in the universe.
And your choices for programming languages are IBM FORTRAN, IBM COBOL, IBM assembler, and IBM assembler.
And to add device drivers, or define a new terminal, or increase any system parameter, you have to re-assemble the whole OS, which takes 8 to 12 hours, and usually ends in pages of unintelligible macro error messages that only remotely hint at the actual problem.
Funnily enough, excel and word were written and sold for the Mac (1985), and only after a couple of years were ported to dos (1987). Bless.
Interstitial spaces are filled with cream.
"Anybody that includes all that obscure stuff and doesn't include BIND on the list..."
You seem to be confused.
This is a list of the best software, not the worst.
Nice try, Paul.
Need Mercedes parts ?
Really, I use Linux and love open source. But the MS haters bitching about Excel being on the list makes them look like pathetic losers (which they are). Office is something MS actually got right. The haters can bash as much as they want, it just makes them look foolish.
While I agree that TeX is amazing software (and amazingly constructed software), it is more for typesetting than word processing.
OK, this is going back a ways, but as a gray-beard I oftentimes find myself telling people about this. The KIM-1 was a single-board computer, 1MHz 6502-based, with 1 kilobyte of RAM (yes, that is not a misprint). It had a hex keypad and a 6 digit 7-segment display. I purchased (via an ad in Byte Magazine) a program called Microchess. It came in hardcopy form, basically the assembly source and associated hex code. I keyed the ~900 bytes into the KIM and then it played a decent game of chess. Yes, 900 bytes! It had 3 levels of play - 3,10,100 seconds per move. It used self-modifying code, so you had to re-enter it after each game. Remember, the computer only had 1KB of RAM in total, so that had to hold both the program and all its data. I can't even imagine writing a program in 1KB that could remember the chess board position and determine if a move was legal ... nevermind implementing a decent chess strategy. Truly remarkable.
The more you regulate a company, the worse its products become.
No. Microsoft and Windows and Office did not "make it happen", but they did aggresively and illegally push the competition out of the way so that when it did happen they would be the only ones there.
Excel is software.
Java (the suit of compiler, class library, virtual machine) is software.
Google's search rank is software.
The concepts are spreadheets, languages running in virutal machines or ranking of relevant information.
To say "x is an idea implemented through software" in order to deny a program is not software is so asinine that I will not try to explain such mental gymnastics any further.
IANAL but write like a drunk one.
You seem to be confused about your history. You see, this latest mess began when a non-uniformed fighting force (a violation of the Geneva Convention), Hezbollah, which is a proxy army for Syria and Iran, staged an unprovoked cross-border raid from Lebanon into Israel, a UN-recognized nation, killed 8 soldiers, and abducted 2 more who are still missing and are most likely dead. This latest in an endless series of Islamofascist aggressions was merely a test by Iran and Syria to see if they could pull off an unprovoked attack on Israel without bringing world condemnation upon themselves. They clearly were successful. In fact, the enormous anti-Semitic propaganda machine consisting of Muslims and the world press was overwhelmingly successful in shaping world opinion and placing 100% of the blame for being attacked upon Israel. So basically we are to believe that Israel was responsible for the unprovoked attack upon herself. Make no mistake - now that Iran and Syria knows that the West is a pussy-whipped version of it's former self and can be coaxed into self-flagellation and Jew-hating through an effective use of smoke and mirrors, the next attack upon Israel will be nuclear in nature. Maybe then the world will wake up to the true nature of you Islamic pigs.
Greatest piece of software ever written - LOGO
We had to learn it starting in 3rd grade and since we had a computer back home a teacher actually came home with some 5 1/2' diskettes to copy it over. I'd spend hours in front of the monitor drawing things with the little turtle and my mum never bothered about a baby sitter for me.
REPEAT 360 [FD 1 RT 1]
SO much fun... I really should get this thing again maybe I can remember the program I did to make two spirals. Look mummy galaxy! And thus people who play with computers and love dreaming about space end up doing astrophysics.
BTW offtopic but thinking back the old 386 had a big red switch for power - something you actually flicked up and down to turn it on and off - does anyone know any cases which still have this.
Reality must take precedence over public relations, for nature cannot be fooled.
but when you really look at a desktop OS, any desktop OS, isn't it a little like watching sausage being made? Maybe "greatest" should be restricted to something a little smaller where the word "elegant" still applies?
So that explains why I want to throw my cell phone out the window. It's a fricken phone, I want it to be able to SEND and RECEIVE CALLS. Leave the picture taking to a digital camera, it's far better suited to it.
As for JAVA, it *is* a toy programming language. Any language that attempts to force a coding style upon users is meant for the beginner programmer, or student.
in C/C++ I can call my file anything I bloody well like, and as long as my base Syntax is correct, it will compile. Sure , there is somewhat of a use of correct naming convention, but professional software engineers (read: real engineers, with an engineering degree), already know this.
In a C/C++ program, everything is generally statically linked (MS-DOS), or calls standard windows DLLs. Under Java, getting anything to work always involves setting the damn CLASSPATH variable. There is nothing *inside* the program/bytecode, telling me against what version of the damn library something is linked against.
As for virtual machines, they are there for a reason, to keep the novice from doing anything stupid, but it comes at a massive performance penalty.
I will agree on the C point, C should have made the list, or maybe BASIC which started out the whole high-level programming languages.
Right.
Seeing "Excel" on the list seemed like one of those "which of these things just doesn't belong here . . . etc."
Put that one on the list of the 12 greatest software MARKETING CAMPAIGNS of all time. I don't think that Lotus 1-2-3 really belongs on the list of the "12 greatest" either, but it should definitely be ahead of Excel based on the specified criteria. Excel may have included some new features, but I think it seems ridiculous to consider it "great" because the overall functionality overlapped 1-2-3 so closely. It was Microsoft's formidable skills in the sales and marketing arena, coupled with Lotus's apparent complacency that marginalized (annihilated?) 1-2-3 in the spreadsheet business. (Why the hell don't they port it, and their other office-like apps to Linux???)
MAME http://www.mame.net/
You act as though Israel was just sitting around when it was attacked. This is not the case. At the time of this attack, Israel was undertaking punitive strikes in the Gaza strip. These were not even the first Israeli soldiers captured in this conflict. Also, don't forget that the Israeli military has a past in Lebanon.
Israel is a nation with a bloody past that extends from the initial occupation to the present situation. Killing eight people is nothing to them. They do it all the time.
What they are not accustomed to is people raining down death from above on them like they have done to so many others.
The real problem is that the Jews are living on someone else's land. They came in, they took it, and they killed or imprisoned anyone who tried to stop them. Unfortunately for them, they are surronded by the direct descendents of all the people they killed and captured.
Granted, most applications are written to run on the Windows OS, but that does not make Windows the driver of computing for the masses, it is still the applications.
I think you have a correct statement here. The importance still lies with the fact that most business applications run on the Windows platform, thus most businesses owe their technological advancements to the Windows platform.
Was Windows the first OS? Of course not. Was it the first OS that businesses ran applications on? Of course not. It was, however, the first OS that the business world latched on to and has never let go of since.
Denying the importance of the Windows platform is an idea too silly to believe by anyone but a Linux or Mac fanboy who has no real world technology experience.
I realize that Mosaic took its place and it's a good choice, but Navigator 2.0 was one of the more awesome releases of commercial PC software. IIRC it introduced Java, JavaScript, frames, SSL, and cookies... and most of the world hadn't even heard of Netscape or Java when it was released.
That software actually shook Bill "The Road Ahead" Gates out of his slumber and produced his "Pearl Harbor" memo to the troops.
They lost me when they listed Java instead of C. After over a decade of Java, how many Java apps have you run today, besides that slow skank checkout app at boxbox.com? How many in C or C++?
an ill wind that blows no good
What about Hello world?
That simple 2 line program that first inspired millions of kids to get interested in programming.
Why Excel? Lotus had the same layout long before Excel and I believe there was a precursor program to them!
If you've never been modded as "flamebait" or "troll," you've never tried to argue a minority viewpoint here!
It was all assembler, (a sign of superior work right there) you ran it on a DOS box and it took over disk IO, memory and the keyboard and only did two things - served files and unspooled printers.
It was like a ROCK. NEVER a problem at all. A firm I was with ran a 100 person company just fine on a 486 with this thing.
Chicks Have All The Fun
Again, you seem to be confused. The attack that kicked off the latest wave of violence was not conducted by Hamas but by Hezbollah. This attack had nothing to do with the Israel/Palestine land dispute. That is merely an excuse that genocidal maniacs like President Marmaduke of Iran like to hide behind.
a il.php?countrycode=23
Let us also not forget that before the nation of Israel was RE-ESTABLISHED after WWII, Arab Muslims were all-too-eager to collaborate with Adolf Hitler in his genocidal wet-dream by helping him purge Jewish immigrants from the British mandate of Palestine. Just google for "Haj Amin al-Husseini." And that's just one example from the 20th century. Let's face it - when it comes to people of other races and religions living in their midst, Muslims have a very shabby track record. That problem still persists today. Just read this story: http://www.persecution.org/newsite/countryinfodet
Excel!? I guess. Where are the regular expression parsers?
The Leisure Suit Larry series was the best software ever written. end of story.
That if DOS never happened, then all of it would have happened still on MacOS.
As another poster mentioned, Excel was released first for the Mac.
Windows didn't do anything that was particularly new or not being done by someone else that could have gotten a PC on every desk. Apple (just an example) could have gladly filled that role, and probably would have succeeded.
Remember Windows didn't really matter until Windows 95. That was the first time someone managed to MARKET (not make) an OS that could be used for business as easily as it could be used for entertainment, and have it work on a variety of PCs from different manufacturers. But by that time there were a billion other GUI systems that were even branching out into supporting multiple architectures. Windows 95 just happened to be backed by the right software company and had that killer Stones tune.
I guess my point is, if it wasn't Windows, it'd be something else. GEM, Amiga, OS/2, NeXT, X11, who knows.
The same couldn't be said for the other software on the list.
THIS THING CAN TURN ON A DIME, MACROSSZERO STYLE ALSO FUCK BETA, ~NYORON
All Excel added was running with a native Windows UI.
On the contrary: Excel was the first spreadsheet program to take spreadsheets out of the financial planning domain and make them useful to everyone. People had been using spreadsheets for all kinds of other things before, but only Microsoft actually noticed this and gave people the tools for it (in Excel 5.0). Lotus, at the time, was working in the opposite direction with Improv, which was really good at financial planning but not so great at the rest. Joel Spolsky explains more here.
I wrote a blog post about this a while back: the basic spreadsheet model and its tools are incredibly useful for a whole bunch of different jobs, and Excel was the first software to really make use of this. The spreadsheet structure has become as fundamental and useful for data as the text file, the document object model or the relational database. The reasons for Excel's market dominance may have more to do with the marketing and positioning of MS Office in general, but both recognising the use of spreadsheets as a fundamental datatype and assisting it with easy tools is why it's revolutionary.
He also gives Java credit for byte-codes, which predate it by decades (Smalltalk, USD Pascal, a portable Forth which I don't recall the name of, most prolog interpreters, and many other systems used byte codes before Java was even dreamt of).
The fact that he leaves off LISP, Smalltalk, Visicalc, includes no editors, no symbolic mathematics programs, and yet includes a worm and the Apollo software ruined it for me. The software behind CAT scans is way more impressive than the Apollo software, and worms...bah!
--MarkusQ
- The Morris Worm - it didn't improve anything and it was buggy to boot
Replace:- Excel with Visicalc - Excel just represents the inventiable progression of the idea. They didn't really do anything unexpected or exceptional with the idea (like say Lotus Improv did).
They can't pick Mosaic over Firefox and then not pick Visicalc over Excel.
Add the following to make it a top 14 list.- Xerox Star (including Bravo, the first WYSIWYG word processor), I would actually put this one very near the top.
- Smalltalk 80
- Douglas Englebart's NLS
- Napster
- Ivan Sutherland's Sketchpad
Honourable Mentions- Lotus Improv for Next
- Adobe Photoshop
- Final Fantasy VII
- TRS-80 Deskmate
- PalmOS
- OpenGL
- Lisp 1.5
- Emacs
- QNX
Some people argue that the 'C' programming language should be included but I think that it would be redundant considering that it is a part of Unix.I'm glad to see Java included and I think that he got #1 (BSD Unix) correct.
I think the Tandy Color Computer 3 did as much or more to put a computer in every home as Windows did to put a computer on every office desk. The Commodore 64 and Amiga systems did about as much, too. They all did more than DOS. The main difference in MS-DOS and MS-Windows is that DOS rode the coat-tails of IBM, and Windows rode the coat-tails of DOS. OS/2 was far better than Windows 3.1, but Windows 95 (and MS's practice of forcing white-box vendors to pay for Windows for every computer they sold if they wanted to sell Windows preinstalled on any of them) killed OS/2.
Windows has been far more projected onto the world by Microsoft's shrewd business moves than by any inherent quality of the software. At one time, the saying that noone ever got fired for buying IBM was almost universally true. When Gates convinced IBM to use MS-DOS as the exclusive preloaded OS on the original PC but to allow him to license it to anyone else, he laid the foundation for his multi-billion dollar wealth. The rest is just building on that.
IBM then laid a foundation of its own by allowing its hardware to become a defacto standard for compatible clones. This helped IBM's image and did them some good by getting more people developing for their market. It did MS much more good, because the clone hardware was being used with their software. While IBM was building a social empire through influence, MS was building a financial empire through actual sales.
People eventually bought Windows PCs for home use because that's what they were using at work, and it's what was in the stores. People could buy PCs compatible with the IBM gold standard for a silver-level price, and run the same software. This lead to more development for the platform, which in turn lead to more clones and more Windows sales. Vendors of other models of course had a choice to make, and most of them started selling IBM or IBM clone machines in place of or in addition to their own machines. Commodore and Apple both had software and even hardware solutions to let people use the files and even the software of this IBM/MS platform on their otherwise incompatible platforms. And so it grew even more. OS/2 was DOS software compatible, and that made DOS grow more. Then it was Windows software compatible, and it made Windows grow even more. Then Windows changed, and OS/2 wasn't compatible with software designed specifically for Windows 95. Some still consider this a bit of a dirty trick, because IBM was using the cross-licensing arrangement with MS to make OS/2 as compatible with Windows as they could. MS used the same arrangement to pretty much let the air out of OS/2.
People for years wrote and sold software to make up for shortcomings of DOS and Windows. Norton, McAfee, DesqView, Novell, Artisoft, and thousands of other companies and individual software developers made their livings making utility programs, file managers, security software, multitasking systems, window managers, network stacks, programming suites, file and disk compression, and a multitude of other add-ons to make up for what DOS and Windows lacked compared to other operating systems available at the same time. Microsoft keeps adding functionality to the OS now and saying it's necessary to compete, but it wasn't back in the day. Back in the day you paid a little for an OS license from MS, then paid far more than the cost of a more complete OS to set it up they way you needed or wanted it to work. Much of that other money went to third parties. Now MS is bringing most of those functions into one box, and is doing a decent but not spectacular job of making it all work.
The key to Windows as a widely used platform is still in the snowball effect of the original IBM PC and the early years of the clones, then the ISV support, then the compatibility efforts of other platform vendors, then more ISV support. These can still be attributed to stellar business acumen paired with mediocre software development. I'm not saying that there aren't brilliant developers at MS. I'm certain there are. Their
I could understand someone adding an OS to the list, and, maybe even a worm (it's self-executable, isn't it?), but where is Photoshop? Like Xerox and Google, it's become so ubiquitous that it's used as a verb!
No sig for you! Come back one year!
The correct question for: "Tbe first operating sytem written in a high level language" was: "What was MULTICS?"
...
And we should note that K&R have told us that it's incorrect to write "unix" in all caps, because it's not an acronym of any sort. It's a bit of word play. Their system was a scaled-down version of MULTICS, so they called it "unix". They couldn't do all of MULTICS, mostly because the machines they were using didn't have the virtual-memory hardware that it required. They did the best they could with the limited hardware. (And they apologized for not including memory-mapped files, again because the hardware made this impossible. But just imagine all the kludgery that could have been avoided if unix had has this from the start.)
The C Programming Language openly states that C isn't really a high level language
Yep; it was intended as a portable assembly language. It was intentionally kept close to assembly language, because of the low-level tasks that they needed to code. I've occasionally had fun with the partisans of claimed "high level" languages by pointing out that their language was isomorphic to a subset of C, and since C is merely a structured assembly language, theirs must be, too. This argument does not endear me to those languages' partisans. Ever since I learned Snobol and Prolog 30 years ago, I've longed for some truly high-level languages. But I keep getting things like C++ and PHP.
Of course, the first truly high level language was Trebecktran, used to write the OS for me, the Trebecktron 9000!
Welcome to slashdot. It's about time we had a true AI here. We haven't always done so well with the flock of natural intelligences.
Those who do study history are doomed to stand helplessly by while everyone else repeats it.
You were wrong even twenty years ago. sendmail would execute mail!
One of the vectors of the Morris worm was e-mail to a "pipe address". Sendmail systems used to have the option of parsing e-mail addresses that began with a pipe symbol ("|") and sendmail would dutifly pipe the e-mail body as input to the command following the pipe symbol.
So sending to "|/bin/sh@unix.example.com" an e-mail that contained "rm -rf" would probably disable sendmail at the least, or totally trash the system at worst, depending on what user sendmail ran it as.
Either way, I think it's one of the greatest pieces of software ever written, and use it for all sorts of things.
The greatest software ever written?
Solitaire.
Sure, it helped millions of monopolized Micro$oft users learn to double-click, single click, and drag and drop.
But Solitaire's value is truly derived with laptop in front you - appearing to be engaged - during yet another 'death by PowerPoint' meeting. Priceless!
There was, for example, nothing much great about OS/360 which was, derivative, far buggier than Windows has ever thought about being, and had the most wrong headed, obtuse and god awful scripting language ever designed. It did however provide a barely adequate vehicle for selling IBM's basically OK hardware. Great? Hell no. Influential? Yes, Very.
So, OS360, Excel, etc are influential rather than great. What would be the list of actually great software? In no particular order:
- Surely, the first higher order language? That would be Fortran, Cobol, Algol or something along that line?
- The first interpreted language? BASIC is probably the most influential, was it the first?
- The Xerox PARC Alto software which was the starting point for the Xerox Star, Lisa and eventually the Mac and Windows. I'd probably give the Macintosh the award for most influential (and I'm not a Mac guy).
- Visi-Calc. Lotus and Excel were more influential, but Visi-Calc was the breakthru.
- Unix
- The first simple OS for small computers, I'm not sure what that'd be. Something at DEC (RSX-11?) begat CPM begat QDOS begat MSDOS. But I'm sure the chain goes back further.
- The first file system. I have no idea where the idea of file systems originated, but modern users have no idea what a pain reading and writing a disk was using manual storage space allocation. There have been times as recently as the mid 1990s when I missed punched cards and some other outmoded technologies, but I've never missed manual disk space allocation.
- The World Wide Web and browsers therefore. Mosaic? Something else? Whatever
..
- Fidonet and Compuserve -- the programs that allowed folks sitting at home with dial up modems to talk to more or less randomly selected users around the world via stored text messages.
- SAGE -- An air defense system designed on the 1950s that ran on vacuum tube computers and actually worked. It supported several dozen consoles, recieved data from a dozen or more radar sites continuously, vectored manned and unmanned interceptors, talked to adjacent control centers. talked to anti-aircraft batteries, and did some other things. All using a computer roughly comperable in capacity to an IBM PC with 256KILObyes of memory. (Many subsequent attempts to replicate many of its capabilities using more modern hardware and software failed rather dismally). Great? I think so. Influential? Not very -- perhaps unfortunately.
- ...
There are plenty of others, but typing this isn't getting the lawn mowed.You can't see ANYTHING from a car, You've got to get out of the goddamned contraption and walk...Edward Abbey
The article was not about the most important software, but about the greatest software.
The Tao of math: The numbers you can count are not the real numbers.
So the great thing about lists like this is the arguments they create as everyone argues for what should or shouldn't have been on the list.
For me, the one that "should have been" is PageMaker. That's a program that helped reinvent what personal computers were all about.
Geoff
Computers are useless. They can only give you answers. -- Pablo Picasso
In every operating system there is one unique, imperitive piece of software that is clearly being overlooked in this article.
The trash.
Without the ability to delete files, every computer would quickly become overfilled with data, programs, text files, pron, and myriad other files. If you couldn't delete these files how could you face your wife and tell her with confidence that you never did have pictures of your old girlfriend or every hentia ever made.
Perhaps it was missed because it's too obvious. Perhaps people don't think of it as a program. But clearly this program is THE most important program on any computer.
But::it->*makes(the.code, &much->more() ));
The Tao of math: The numbers you can count are not the real numbers.
FORTRAN?
The Tao of math: The numbers you can count are not the real numbers.
You do realize gcc is not some magical revolutionary thing right? There were lots of compilers before gcc, and there have been lots since. Many of them are much better than gcc even. And none of the software people use on a regular basis actually needs gcc, you can use another compiler just fine. The only reason gcc is popular is because linux tards are clueless 12 year olds.
GCC is a free compiler of which there are many. It's novelty when it was new was its free-ness but didn't innovate in any particular way, and now it main feature is broad processor support (tho none especially well). It's a useful tool but not one that should appear anywhere on a list such as this. On the freeway of great software, GCC is an onramp (and one of many at that).
Toss in a grammar check feature, just for safety!
Defining Statistics and Social Research
They included MacOS. Windows is just a (poor) re-implementation of MacOS.
Avoid Missing Ball for High Score
http://cm.bell-labs.com/cm/cs/who/dmr/hist.html
...i think it's the best software ever written, it has a good mod system... Or then google on slashdot for "Missing option: Breast" ;)
Ok...time for my medication!
One thing I'd like to know... what's the greatest software which has been written by a single person?
When AT&T created UNIX, they were a regulated monopoly. They were restricted in two critical ways WRT UNIX.
- They could not market products outside of the Phone systems market, and
- They could not artificially restrict (non-telephone?) technology that they created.
When they were first asked to make UNIX available, their lawyers cited (1) above and said that the company could not sell UNIX to the interested universities. Management agreed, and the distribution of UNIX was halted.They were sued, successfully by people citing (2), so they resumed selling UNIX.
When they resumed selling UNIX, they were sued by other computer companies citing (1) above. At&T lost again.
So the lawyers looked at the apparent legal condrum, and concluded that they had to make UNIX available, but they could neither market it or support it. Thus, what they did was write up a non-disclosure agreement that allowed entities (mostly Universities, at the time, who got it for a song), to play with the source, but only disclose it to other people who had a similar license (which soon became just about any universities, and many large companies). In return for signing the NDA, and paying the license fee, you got a mag tape that included the source code and a bootable binary and a hearty "good luck".
The result was that UNIX, although technically proprietary was the next - best thing to Open Source for many years until the push to truely proprietarize and commercialize it in the 80s.
Stallman, on the other hand, just didn't like proprietary systems, generally (as noted in his article that another poster pointed out). When he came up with GNU, he choose UNIX because he thought that it was a good system to n replicate. The impending (effective) closure of the UNIX codebase was little more than a synergistic coincidence.
(( I also once made the mistake of presuming that RMS created GNU because of the impending closure of UNIX, but I was intelligent enough to forward my article to him for comment, and he was kind enough to provide me with the necessary correction ))
Sometimes boldness is in fashion. Sometimes only the brave will be bold.
Just a minor correction, but since I work there, for your #3 it's 'TIGR', not 'IGR'. Both the ranking and its description in the article is a little funny, though. :)
http://www.tigr.org/
http://courses.cs.vt.edu/csonline/SE/Lessons/Spira l/Lesson.html
However, when American Airlines (AA) decided to use DIA as its second-largest hub airport, AA commissioned BAE Automatic Systems to develop an automated baggage-handling system efficient enough to allow AA to turn aircraft around in under thirty minutes. As the construction of the airport progressed, a larger vision emerged "for the inclusion of an airport-wide integrated baggage-handling system that could provide a major improvement in the efficiency of luggage delivery." To accommodate the vision, DIA negotiated a new contract with BAE to develop the airport-wide baggage system. This new plan, however, "underestimated the high complexity of the expanded system, the newness of the technology, and the high level of coordination required among the entities housed at DIA that were to be served by the system" [Montealegre 1996]. Despite the enormous change in the specifications of the project, no one gave any thought to risk assessment. Had the developers considered the risks involved with changing the system requirements radically at a late stage of development, they may have concluded that the expanded plan was infeasible. In the end, DIA had to settle with a much less ambitious plan, and Montealegre reports that "six months after the de-scaling of the system, the airport was able to open and operate successfully."
Yup -- I accidentally swapped the two descriptions.
For better or worse, it's not; MULTICS does expect the opposite of what the x86 provides -- I just accidentally swapped which was which when I desribed them.
The universe is a figment of its own imagination.
The guy forgot so many things that had so much impact, it's hard to take him seriously.
The people who wrote AutoCAD all knew that story.
What Heinlein was describing, though, was more like a keyboard-controlled drafting machine. Keuffel & Esser actually built something like that, just as CAD was starting to eat into their business. You could either draw manually, or you could get it to plot by keyboard entry. Great for lettering. Dead end idea.
What Heinlein didn't get was that the big win for CAD is drawing revision. With CAD, you can edit an existing drawing. With a paper-based system, you have to redraw. Which is Not Fun. The pre-CAD high point in revision tools was to draw in pencil on heavy paper and use an electric-powered eraser, then run the paper drawing through a blueline copier to make working copies.
Correct me if I'm wrong, but the First Ever Computer Game, one which I think should be somewhere in the top 12, is "Adventure!" I think it was one of the games K&R first wrote on their UNIX system. (I definitely remember it from the book, "The Soul of a New Machine". "You are in a maze of twisty passages that all look the same.") I know it kept me busy for many hours on my original CP/M computer.
Your Servant, B. Baggins
I know you... I would have thought you would say MS Flight Simulator would be one of the all time best.
Viruses can also spread by email by exploiting buffer overflows in email clients. Good point about never underestimating the stupidity of developers (or their managers, who really knows?) though.
HAND.
What about Napster?
"...the Alto which gave us the WIMP interface..."
Meh, before Steves team got on it the GUI looked something like this. No bar with drop-down-menus, no icons for files, instead rather for actions, no desktop metaphor, no trashcan ...
"... the computer that INVENTED the modern GUI, the Xerox Alto..."
Before Apple, the GUI looked something like this. No bar with drop-down-menus, no icons for files, instead rather for actions, no desktop metaphor, no trashcan.
...there's True In A Nutshell. :-)
Mainframe/UNIX Bit Twiddler and long time Windows/Linux Hobbyist.
The Theorem Theorem: If If, Then Then.
If VisiCalc is disqualified for not being great software, then Lotus 1-2-3, which was great software, is the next logical choice. Excel was completely unecessary at that point. If a spreadsheet clone like Excel deserves all the credit, then we'll need to mint a few more awards for Microsoft. I think the reviewer is confused about whether he wants to reward great code or great success.
He goes on to select Mosaic and System R, despite better and more successful follow-ups. He should have used that approach throughout.
Those are my principles. If you don't like them I have others. -Groucho Marx
Personally, this is exactly why I'd be tempted to call it a toy language. Real programmers don't need to be forced to write good code - real programmers do it on their own. And a real language lets the programmer code to the best of their ability.
That's kind of like saying "oh, this isn't a toy OS, it's industrial-strength because it forces you to use it in one particular way." So, by that definition, Windows is a real OS and Linux is a toy OS. Personally I think they're *both* real OSes - and I think Java's a real language too - but I feel the point you've made is a point against Java, not a point for it.
(Obviously IMHO. Language preferences are highly subjective.)
Breaking Into the Industry - A development log about starting a game studio.
In the words of Inigo Montoya: You keep using that word. I do not think it means what you think it means.
You could argue that Java is badly designed, but given Java's widespread use on the server, I don't see how you could call it a "toy language". That implies it isn't used much in the real world, when in fact it's one of the most widely used languages to date. For instance, try googling "Java developer" and then "C developer".
It depends what you mean by "massive". Java's around twice or three times slower than C; but it's a linear speed decrease. If you double the complexity of the program, the gap between Java and C will remain at approximately the same ratio. In terms of Moore's Law, a top of the range computer running a Java application will be about as fast as a two year old computer running a C application. In terms of hardware cost, the price of an extra server is insignificant for businesses, compared to the cost of labour needed to produce the application. In this respect, the virtualisation overhead is insignificant for Java's main market.
Indeed. As any Mac-freak recalling those days will tell you: Windows 95 = Macintosh 85, and it certainly was true at the time. We said that a lot back then, however noone heard us over the roar of Bill's marketing wave.
Seeing again and again that "good" marketing can sell even the worst crap, I sometimes regret I didn't choose a career in marketing/sales. But as a child I was taught that it is bad to tell lies and steal.
-Lasse
Heard a blurb on NPR this week or last from a tech historian of sorts. He made mention of something regarding the IBM licensing of DOS I had not heard before. According to this fellow, Microsoft didn't convince IBM to license the software, instead IBM was trying to feel it's way around after the 1972 antitrust case and they weren't certain they would be allowed to own the software.
If that is true, than Bill Gates really wasn't that shrewd a businessman, as that was IBM's plan all along.
Just to add to that list, Taceo is an email anti-theft application that allows the sender to disable the copy/print/screencapture/forward functions after the email is sent. Email anti-theft software is extremely important for small and medium sized businesses in protecting sensitive data of their company, employees and customers.
If Excel is over, point out to me a good replacement for it on my Mac. ... There isn't one.
Gosh, that was easy. I don't have a machine to test the above, but I'm sure at least one of them would work well. Running Debian would be the easiest way to get an alternative if it has been made to work with your current machine (x86 or PowerPC). Any are sure to run better and be more frequently updated than the two year old kludge that is Office of OSX:
Both Office v. X and 2004 Standard Edition run non-natively on Intel Macs through the Rosetta Emulation layer. Microsoft does not intend to update Office 2004 for Intel Macs, and has announced that the next version of Office for Mac will have universal binaries, capable of running natively on both PowerPC and Intel Macs.
Excel doesn't require Windows...
Wooo-hoo! Freedom and choice in crappy and expensive software. My horizons in non free have been broadened. M$ emulation is everywhere.
Friends don't help friends install M$ junk.
By default.
Ignore this signature. By order.
A current application with similar UI and capabilities is Quantrix.
Supposedly it is written for an OpenStep-compatible framework, which seems likely since the MacOS download is significantly smaller.
Sorry, while reading the other replies I remembered my history better: yes definitely Multics was written in PL/1. Not informative at all!
I doubt anyone besides twitter would install a whole new operating system just for spreadsheet software. Personally, I'd go for OpenOffice ...
Not even I'd recommend that. I'd install a whole new OS for the whole new OS and all that comes with it. That includes OpenOffice which insures compatibility with all the zombies who still M$==Standard.
Friends don't help friends install M$ junk.
Before you start questioning my IT knowledge and experience, you would do better not to give away that you are barely a teenager, or someone who doesn't know jack about history of the PC for other reasons. Windows was not the first OS the business world latched onto. I even named the first widespread commercial multiplatform OS used in business in the post you were replying to.
Windows only seems to be of decisive importance to people who have never known anything but Windows. Those of us with more experience in IT have a little more knowledge of other platforms and the history of computing to take you seriously.
Mart"I know I will be modded down for this": where's the option '-1, Asking for it'?
One major difference between VisiCalc's successors and Mosaic's successors is that the successors to Mosaic were all pretty much built off of Mosaic code. Both IE and earlier Netscape versions have references to NCSA Mosaic in their copyright notices. Strangely, I don't see any explicit reference to it in Mozilla's About: page.
It's certainly a point against it in my book, but the word "toy" seems so obviously 180 degrees wrong that I had to correct it. Don't get me wrong, I'd much rather play with a "toy" OS that might deserve the name, like, say, Ruby. But your last point is a good one: Language preferences are subjective, so I'm staying to the more objective stuff.
Don't thank God, thank a doctor!
I agree with you, but if you've got to have any software at all -- I like the contact list, for one. We've had DNS on the Web for decades now, we should at least have the equivalent of a host file for our phone numbers.
So, if you've got to have any software at all, why not Java? Sure beats having to reprogram/recompile it every time you change hardware, and I imagine phone hardware changes pretty fast. And even if programmer time was entirely free, better not to rewrite it if it works well -- people are used to programs behaving the way they do, and they depend on the subtlest things that you and I would think are completely pointless. I can cite a marketer who used Outlook's colors to sort her email -- could not deal with losing that information to transfer her to a new computer.
Or someone who works on a real project, where it makes sense to sacrifice a little flexibility in coding style to make it harder for unskilled programmers to ruin a project, and easier for you to sit down at any part of the project, or a completely different one you've never seen before, and instantly see what's going on.,/p>
Compare that to Perl. Love it for programs that only I will ever see. Hate reading other people's Perl, and I'd never use it for a large project.
So, in other words, the opposite of a toy, be that a good thing or a bad thing. I like toys.
So when do you break the convention, and why? And when you're doing this, is it on a "toy" project, or something else?
I agree that I prefer convention not be built into the language, but I don't see it as a huge deal, especially when you'd normally be sticking to the convention 99% of the time. In fact, most large projects dictate a convention for exactly the reasons I've given -- in order to be able to read code written by others.
I am not defending Java. There are plenty of real reasons to hate it, even some of the reasons you're giving now, but your original statements (that you still maintain), such as "Java is a toy language", are simply wrong.
This is a bad thing. Shared libraries were invented for a reason. Use them.
Besides, who says we're talking about Windows? I can count the statically linked Linux programs I have on one hand.
Because that's so much harder than typing "#include " at the beginning of each file.
That's why most of them ship with some sort of launcher -- a simple shell script, to set CLASSPATH. That's why you can inlude any library you want in the JAR file -- which is pretty much just a zipfile.
Again, why is this any harder than managing includes and static/dynamic links in C/C++? Funny you should mention that you can call your file whatever you want -- well, CLASSPATH lets me use whatever version of the library I want.
Don't thank God, thank a doctor!
Before you start questioning my IT knowledge and experience
It was your post that gave away your lack of IT knowledge and experience.
If you would have read my post in its entirety (and even the quote from my post above), you would have seen the "and has never let go of since" part. Most businesses use Windows- that's what makes it an important OS. Sure, many businesses started with Mainframes and Unix deployments, but they have since abandoned them for Microsoft platforms.
Now go back downstairs and wait until Spongebob comes on.
Only people with a scarce knowledge of the events still believes that the NASA succeded, in reality it was the biggest hoax of the history. To be precise, we know for sure that the photos and films are fakes, then while theoretically the mission may have happened, I strongly doubt.
See this interesting exerpt
http://luogocomune.net/site/modules/news/article.
At least in comparison to OS/2 and Unix (as well as Mac OS, I think), the key thing about Windows was Microsoft's relationship with developers. Microsoft started as a company producing developer products (a Basic interpreter being the first), and only bought MS-DOS so that it could license Microsoft Basic to IBM. Perhaps for this reason, Microsoft always made an effort to get things like free SDKs into the hands of developers, where as companies like IBM didn't see the importance of developers, and charged fairly large sums for SDKs and whatnot. (As an aside, since you mention games, the DirectX API, and its precursors like WinG, were hugely beneficial to games developers, who in the early days of PC games had to individually target various graphics cards and graphics standards, and the same was true for sound cards, et al.)
In the Internet age, with ubiquitous open-source software, this sort of thing has become the norm, but back in the 80s and early 90s, Microsoft's view of its OSes as platforms for third-party applications developers to target was relatively unusual. Most competitors, in addition to charging for development kits and documentation, tried to implement complete 'systems' (i.e. collections software including the OS and all of the tools they expected end users would need), rather than seeing the OS as a 'platform' which third party developers (writing retail and bespoke application code) would complete.
A good example of the importance of Bill Gates's 'platform' view was his reaction to the Mac. He was actually an early fan of it, and tried to convince Steve Jobs to turn it into an OS platform (like MS-DOS, or later Windows) which could be used by all PC vendors. Microsoft would then have produced the key applications (notably Excel), as it ended up doing anyway (on the Mac, and later on Windows). Mind you, in those days, applications were far more valuable than the OS (e.g. Lotus was a much bigger company than Microsoft), and this continued for a long time (I think it was only in the late 1990s that Microsoft's Windows product line finally became as profitable as the Office product line), so owning the key application would have been a much bigger gain (from Lotus, which owned the key application on MS-DOS) than the loss of the OS platform to Apple. Like most people in the industry at that time, Jobs (and his successors) wanted to control everything, both hardware and software, and so the Mac was relegated to a niche.
Another key aspect of Windows was the use of loadable, replaceable driver modules to support third-party hardware. Where as a lot of systems (e.g. SunOS) had device support linked into the kernel itself, Windows used loadable modules that could be replaced at runtime by modules from third parties. As a result, it became easy to swap a part from one vendor with an incompatible part from another, which drove the commoditisation of PC hardware. On the negative side, this made system behaviour much less deterministic, and very much more difficult to test, and as a result, the overall stability of systems suffered.
I don't think the cause/effect nature of Microsoft's dominant position within the PC industry can ever be conclusively proved one way or the other, but the differences in the way Microsoft behaved, as compared to its competitors, very much suggest Gates had different ideas about how the market would develop in the 1980s and early 90s, and that his ideas were ultimately the right ones (either Microsoft won and made them so, or the fact that they were so led to Microsoft winning). By the mid-90s, most people had come round to Gates's way of thinking anyway (e.g. Netscape management fully understood the value of the web browser as a platform on which web-based applications could be developed), and the fact of the Internet reaching critical mass changed the dynamics of the industry too.
The number of Slashdot posters who think Microsoft's behaviour in creating the Windows desktop monopoly (Windows server OSes were not included in the ruling), or the dominant position of Office (which has not been ruled a monopoly, so is not constrained in the same was as the Windows desktop OS) was somehow illegal never ceases to amaze me. Microsoft got to the top (in desktop OSes, server OSes and office applications) using perfectly legal means; where the illegality came into it was the tactics Microsoft used to ensure its desktop OS (and only its desktop OS) would remain at the top.
I guess the author never heard of CTSS running multics-user at MIT. I don't know the exact dates but it ran on the older IBM 7094/7096 systems. I think it was written in the late 50's.
That may be true. From what I understood, it was always IBM's plan to license an OS instead of developing one in order to get the hardware to market quickly. They were perfectly willing to license instead of buy because buying might be a longer time to market and they'd have to take on future development, et cetera. I was always under the impression, though, that they could have done an exclusive license and didn't. Perhaps the antitrust issue was the reason for that. Perhaps IBM had the clone market in mind all along. I'm not sure anyone outside IBM's management at the time will ever know deinitively what combination of factors went into that decision.
Windows 95 = Macintosh 85
Not really. Superficially, the Windows 95 UI, and Explorer windows in particular, looked more like Mac OS than Windows 3.x had, but the OS itself was far more advanced. Indeed, even Windows 3.1 was more advanced in many areas (e.g. virtual memory, and pre-emptive multitasking of DOS processes) than any version of Mac OS prior to OS X.
Despite the superficial similarity to Mac OS, the Windows 95 UI was mostly just an evolution of the Windows 3.x UI. The task bar, for example, was just a way of organising program icons, which Windows has placed at the bottom of the screen since Windows 1.0 (Windows always supported co-operative multi-tasking, unlike Mac OS). The Start Menu was just the old Program Manager collapsed into a menu for quicker access, and the Explorer windows (the only thing that really looked particularly Mac-like) just represented the integration of program icons with file types (like on the Mac) into the File Manager.
Internally, Windows 95 was much more advanced in almost every respect than any version of the classic Mac OS ever was. It wasn't as advanced as OS/2, much less Unix or Windows NT, but it was at least a relatively modern OS in most ways, rather than an ageing relic of 1980s home computers, like Mac OS. It's absolutely amazing to me that Mac fanatics were so proud of that joke of an operating system, when in the 1990s it was still trying to catch up technically with the likes of 1985-era Amiga OS, or Windows 1.0. It was a reasonably pretty UI, but an utterly crap OS.
That's one of the most inspiring tech lists I've ever read! Seriously! I love it when passion meets intellect!
"I hope you like Guinness, Sir. I find it a refreshing substitute for, er... food." Col. Jack O'Neil, SG-1
The Unix wars proved beyong any reasonable doubt that Gates was right to get out of the Unix market when AT&T came in. Going with Win32 instead of OS/2 as the primary API for NT was also obviously the right choice.
Microsoft may have failed in the spreadsheet and word processor markets on MS-DOS, but it was a tiny company with very limited resources in those days, and its primary focus was on development tools and operating systems (especially Xenix). When Gates saw a chance to gain a foothold in GUI applications, via the Mac, Microsoft competed aggressively, and despite the anti-Microsoft bias of so many Mac users, Excel and Word were simply far better than any of the alternatives, and as a result, Microsoft quickly came to dominate the Mac applications market (a scenario that was repeated later on Windows).
He is a shrewd businessman, but not because he bought MS-DOS. The product that made Microsoft an industry giant was Office (first on the Mac, and later on Windows), though Windows eventually became a critical product too (now arguably Microsoft's most important one). MS-DOS was nice to have, since owning it made it easier for Windows to be compatible with legacy DOS applications, but IBM had the rights to MS-DOS too (and even Windows 3.x), and that didn't stop it mismanaging OS/2 into the grave. Cloning DOS wouldn't have been especially difficult either (it's a vastly simpler system than Unix, which was successfully cloned by volunteer Linux developers around the same time).
1-2-3 had a brief period of success on DOS, in the 1980s, but Excel (and, more specifically, Excel on Windows) won in the end, and has had far more influence on the world. It's also a much better spreadsheet than any of its competitors, and has been all along. That's why it so quickly came to dominate first the Mac, and then Windows. If Lotus had made a GUI spreadsheet that came close to being as good as Excel, it wouldn't have lost the market to Microsoft.