| It is hard to remember, or for younger developers to believe, but there was a time in the mid 90s when: 1. Most programing languages sucked 2. Java was fresh and new Java had a lot going for it. It was free, with a functioning IDE that had a working graphical debugger! MS had just about finished killing Delphi (which also cost $$) and over in *nix land the GUI libraries were fighting amongst themselves and Linux wasn't something even an average developer was going to install. So you had Perl, raw C, the horrors that were DSLs and frameworks written in the c++ of the time, then Java came along. Applets failed, sure. And back then everyone wanted their GUIs to look like the platform native UI (how times have changed!) but Swing was super easy to write UIs in. I'd wager the majority of programmers, outside of ex-LISP folks, didn't know what closures were, and functions as first class objects wasn't on anyone's mind. So all of Java's shortcomings didn't seem like a big deal. It "compiled" fast, had actual packages you could distribute and import easily, and the compiler errors made sense. So yeah Java was a fresh breath when it came out. Then c# came out a bit later and was basically better in a million small ways from day 1, except it wasn't open source so a community never built up around it in the same way. Now days we are spoiled for languages to choose from. |