26 ms·
“I am literally losing sleep” over Java (1996)
- hereforphone 5y ago
- jodrellblank 5y agoHow did Sun manage to get so much hype around Java? There can't be many things in tech which have had that kind of PR achievement, especially if you move away from flashy user-facing things like iPhones and Playstations.
- phendrenad2 5y ago100% of the hype around Java was that it was "write once, run anywhere". That was the marketing slogan for it, after all. And remember, in the 90s cross-platform was HARD. We had Windows NT, Windows 98, Mac OS, Linux, Unix, big endian, little endian, weird filesystems (resource fork, anyone?). gcc wasn't even cross-platform, so good luck cross-compiling things. You had to somehow write one C++ codebase that would compile in Metrowerks CodeWarrior, MS Visual Studio, GCC, and across different endian CPUs, or compilers with different definitions for int and long. Plus, the standard libraries for these systems were radically different. No one even tried to solve this problem until Java came along and made it performant through bytecode JIT.
- robterrell 5y agoOne way was Java applets. Back in the mid-nineties, applets were the only way to make web pages meaningfully flashy and interactive. They pioneered the space later conquered by Flash.
- clusterhacks 5y agoJava and its compiler were free and easy to install into CS department labs. There was a huge hype train around object-oriented development being the way that somewhat continues to this day. OO was all the rage along with the "Design Patterns" book. OO hype in the enterprise also seemed to drive CS departments to use Java for just about all classes because it was "pragmatic" and a "real" job skill to give students. I mainly remember being excited about garbage collection.
- tannhaeuser 5y agoI think part of it was that Java promised Unix-y/open systems to stay around when in 1995 it seemed like Windows would dominate server-side programming, in addition to the desktop.
- pjc50 5y agoAs sibling says: applets. They were there from launch, and they offered the never-before-seen combination of "write once, run anywhere" and zero-installation and sandboxed code. They were kind of clunky, but anyone who had the responsibility of managing a client-server app across a fleet of PCs would have had a lightbulb go on over their head on seeing that. The university hype seems to have been real as well; I was being taught Java in late 1997, when it had only launched in 1996 and was maybe on version 1.1? Previous years were taught object orientation through Modula-3, and you really don't see a lot of that these days. Java offers the decisive advantage of braces rather than BEGIN..END.
- renox 5y agoLots of marketing backed by lots of money.. I remember trying to use Java in the Java2 days when every magazine would tell you how it's great, but the reality was that I was wasting a lot of time working around bugs in the Java libraries (and once even a bug in the JVM itself).
- rsynnott 5y agoJava had a combination of things that made it really interesting at the time; the tooling was free, it had automatic memory management, it had easily distributable apps, it had some sort of multi-platform UI (even if it wasn't very good). Nothing else at the time really satisfied all of that. It also had problems, of course (in particular, it was very slow at first, and Java 1.0 had a lot of weird baggage that got fixed, too late, in 1.1 and hung around for years), but it really was something interesting at the time.
- foldr 5y agoOthers have mentioned that the tooling was free, but I think younger folks might easily underestimate how big of a factor this was. In 2000 I was blown away that I could download NetBeans for free and learn the language just by reading free documentation on Sun’s website. Yes, there were already free languages that had significant mindshare (e.g. Perl), but Java was backed by a big name company and came with pretty sophisticated GUI and networking libraries baked in. Perl was associated with ‘scripting’, whereas Java was marketed as a serious language for writing serious applications. Compared to the free C++ dev environments available at the time it was mind blowing.
- mwattsun 5y agoRichard Feldman (Elm) analyzes why programming languages become popular and says Java is unique. It became popular because Sun spent 100's of millions of dollars promoting it, even after the dot com crash. Others like Ruby, had a killer app. His thesis is object oriented programming wasn't inevitable or is the best way to program. It was an accident of history that OOP became so popular. Why Isn't Functional Programming the Norm? – Richard Feldman https://www.youtube.com/watch?v=QyJZzq0v7Z4 https://www.youtube.com/watch?v=QyJZzq0v7Z4 Another Java tidbit is that Miguel de Icaza (Gnome, Mono) really wanted an open source higher level language on Linux so he approached Sun about Java and they wouldn't work with him, so he settled on C# and is probably the man most responsible for the move to cross platform C# and .NET (dotnetcore, v5) https://tirania.org/blog/archive/2006/May-11.html https://tirania.org/blog/archive/2006/May-11.html
- simonebrunozzi 5y agoNathan Myhrvold's answer [0] to Bill Gates is really a gem. I knew he was smart, but this is another level of smart. [0]: https://twitter.com/TechEmails/status/1478794727923191810 https://twitter.com/TechEmails/status/1478794727923191810
- londons_explore 5y agoI still lose sleep over java over 25 years later. For me it's mostly the unpredictability of the garbage collector and it's magic ability to suffer cascading failures in cases you thought you'd properly loadtested... Perhaps billG and I are thinking on different levels...
- ape4 5y agoI'm sure others will point out that the garbage collector is now very fast. Not an issue for the vast majority of applications.
- watwut 5y agoAnd it was not an issue for over 10 years.
- smallerfish 5y ago> cascading failures in cases you thought you'd properly loadtested... That's hardly unique to Java. If you crash your processes because you didn't design your application to scale to your needs, there's not much the language can do about that.
- londons_explore 5y agoIt just seems easier to get yourself into a bad performance corner with Java. Other languages seem to just start slowing down as load increases. You see more variation in response times, but still plenty of throughput. Whereas Java has a sudden performance cliff that's reached, and you usually won't get it to perform well again without either removing 99% of the load or restarting the process.
- smallerfish 5y agoI assume you've run profilers against it and captured CPU/memory snapshots? You may be filling up the heap, leading it to get into GC cycles to try to free memory. If that's happening you either have a memory/resource leak, or you just need to allocate more heap to run your application.
- adzm 5y agoAnd in December, Visual J++!
- dmm 5y agoContinue to "embrace and extend"... - Nathan Myrvold I never realized this phrase originated from /within/ Microsoft!
- chrisseaton 5y agoHave you read the Hallowe'en Documents? Leaked Microsoft memoranda about their attitudes on open source and competition.
- bitwize 5y agoI did. I remember a press release that described Microsoft's policy w.r.t web standards as "embrace and extend" sometime in 1996 or so. I thought it was the embittered rest of the tech industry that added the "extinguish".
- bnt 5y agoYou're missing "and extinguish"
- wing-_-nuts 5y agoHah, I mentally added it every time I read that phrase. The implication was pretty clear even in this email.
- quux 5y agoWasn't it "eradicate"? or am I misremembering?
- gonzo41 5y agoNathan Myhrvold's reply is interesting, 20 years later and windows is a pretty easy experience now. Games on Xbox is massive, though I'm sad that they didn't embrace VR. Playstation seems to have outflanked them there. Their mobile game isn't really there though, but I'm not sure if they care, and it seems like the vacuum that java was expanding into was too big to leave be, hence the c#.
- munchbunny 5y agoThey tried to get a foothold in mobile (even bought Nokia’s mobile phone business), they just didn’t succeed. Given how long Windows CE was around and then whatever they called the subsequent mobile focused OSes, I’m sure they did care while they still had a shot, but Android ate their lunch. Probably deserved to IMO, in the limited mobile development I’ve done Android was an easier platform to develop for. 10-15 years later, Microsoft is adopting Android for a Surface device.
- jasode 5y agoExcerpt of email reply from Nathan Myhrvold is mostly correct: >The new Java applications are NOT credible threats to traditional PC software any time soon. [...] Cool new technology always expands rapidly into NEW ares (where there is a vacuum). Java's hype of Write-Once-Run-Anywhere to kill Microsoft Windows didn't happen on client desktop apps like many expected. Desktop apps are still C++ and some newer apps are Javascript(Electron). Yes, there are a few niche desktop apps using Java like JetBrains IDEs but history has shown that Java made more market penetration on server-side code. The 1990s dot coms like Ebay and Amazon were early users of Java on their servers. I read that Google uses Java on the web servers to generate the results page. (To be clear, I think Google uses C++ for the crawlers to build the index and the algorithms for search engine ranking.)
- mysterydip 5y agoIMHO this was because the JVM at the time had bad performance compared to native apps. I certainly avoided Java apps on my machine as much as possible if there was a native alternative, the extra load on consumer machine resources at the time just wasn't worth it.
- sydthrowaway 5y agoWhen did JVM switch to the insanely fast HotSpot JIT?
- acdha 5y agoLater, but HotSpot to this day means “less slow” - it’s a lot better than it used to be but you still need considerably more RAM and CPU than native apps.
- bayindirh 5y agoI don't think the need is that larger when compared to today's applications, esp. Electron based applications. Eclipse still uses less resources than VSCode/Atom while juggling more balls at the same time.
- keewee7 5y agoMicrosoft had already established itself as the dominant market player in the early 90s. Bill Gates was the richest person in America by 1992 and the richest in the world by 1995. The 90s Java hype must really have been otherworldly to make him panic this much.
- 300bps 5y agoThe 90s Java hype must really have been otherworldly to make him panic this much. I think it is a certain personality type that has more than $50 million* in assets and still has this level of competitive edge. I think most people have a number that would drive them to relax a bit and just do whatever they wanted. I think for some people whatever they want though is to engage in cutthroat competition. * arbitrary number likely different for everyone
- beaconstudios 5y agoif anything, Gates-era Microsoft was known for being anti-competitive. What the very-wealthy want, I think, is power and control, and for the number to go up to stroke their egos.
- EMRZ 5y agoIt was the battle for "the web" and the sun+netscape partnership was an actual menace to microsoft's activex and vbscript things. There is an espisode the Lex Fridman podcast with Brendan Eich where he talks a little about that specific time.[1] The "panic" was right imo (only in that specific area) i mean, there is almost 0 microsoft on the web today. [1]: https://www.youtube.com/watch?v=krB0enBeSiE https://www.youtube.com/watch?v=krB0enBeSiE
- whimsicalism 5y ago> 0 microsoft on the web today Wdym? TS?
- Mikeb85 5y ago
- Labo333 5y agoWell, people also lost their sleep in 2021 over java (log4j)...
- imranhou 5y agoThis is so relevant in terms of tech and business thinking, many parts of the email response could be applied generically to any competitive threat. Albeit the blackberry story against iPhone doesn't really fit this bill, the "incumbent" got put out of business pretty quickly
- raverbashing 5y agoIf we think about it, Java was hyped, but it had poor execution. Very poor execution. It tried to be too much and lost focus. "Run everywhere" where everywhere was Solaris+X, some other Unixes+X and Windows. The language itself was a bit better than C++ (while it filed some hard edges and made it cleaner it wasn't much better) and overly bureaucratic. The API/stdlib worked but wasn't great. Nathan Myhrvold's answer was mostly on point and time proved it right. Especially about what the PC should be.
- thrower123 5y agoThere was that gaping pause after Java 6. I learned that version in high school, took the AP test, went to college, graduated, and got a software engineering job, and it was still Java SE 6. It's almost incomprehensible nowadays to imagine a programming language with that kind of stasis for five years.
- kaba0 5y agoIt was a language in the hands of a dying company, so it is sort of understandable.
- Shorel 5y agoThis nightmarish scenario for Microsoft actually happened. This is Android OS. What Microsoft avoided was this happening in PCs.
- Longhanks 5y agoThis scenario was a lot more nightmarish in the 2000s, when Microsoft needed Windows and Windows software for making money. Today, it is a lot less nightmarish.
- wing-_-nuts 5y agoIt's easy to handwave away Bill's concern today because windows is still the main OS on PCs and laptops. That's kind of missing the point. What you don't see is all the areas where MS could have 'won' had the world not moved in a more platform agnostic direction. Remember all of the little miniature laptops in the 90s? Practically all of them ran some version of windows even if it was laughably impractical for such a device. MS completely missed the 'mobile' train and could have dominated if they were paying attention. Remember all of the enterprise systems running some version of windows server? Imagine a world where java didn't exist and the .net runtime was dominant. That's a cash cow without end. As it is, MS missed out on both mobile and most of the enterprise infra pie. If they had managed to capture both they'd be an absolute behemoth.
- Shorel 5y agoI still don't understand how they lost the instant messaging market. Nowadays, every one of my friends has WhatsApp. In 1999, I believed it was impossible for anyone to use anything that was not MSN messenger. MSN was HUGE.
- nikanj 5y agoPCs took a hard turn towards power-constrained (i.e. laptop running on battery) right around the same time Windows took a hard turn towards "resources are cheap and plentiful, just toss seven levels of XML in it"
- arantius 5y ago
- badRNG 5y agoI guess I've never read these emails before. I was a child when these emails were released, so I really wasn't following these events in real time. I'm blown away at how openly they discuss being anti-competitive. When I think about a company being monopolistic, I usually envision market and environmental pressures that culminate in actions that can be broadly identified as anti-competitive. I don't typically envision leaders sending emails to each other on how to best be cartoonish villainous monopolists. And I guess it's strange that there was a time that it was considered even feasible that Windows could corner the whole web. Then seeing "embrace and extend" literally quoted in the email feels like some bad hit piece on Microsoft. Developers my age grew up with multiple OSes with web capability. When I graduated, Chrome OS just came out, Android, iOS, and OS X were all widely used. Most of my career Microsoft has... "embraced" FOSS. Just some thoughts from a different perspective.
- cwillu 5y agoThe old groklaw.net site has a lot of interesting historical context that came out of the lawsuits. http://www.groklaw.net/staticpages/index.php?page=2005010107100653 http://www.groklaw.net/staticpages/index.php?page=2005010107... among others, as a lot of the other stories had microsoft involvement.
- rsynnott 5y agoThis was, I think, before it had really sunk in that emails were available in discovery.
- deleted 5y ago[deleted]
- chasd00 5y agoyeah, in addition, a lot of younger people see Gates as some sort of savior given his philanthropy. I think a lot of older people in the tech industry see it as Gates trying to buy his way into heaven.
- TacticalCoder 5y agoAin't Java the 2nd most used language in the world, after JavaScript? The enterprise world uses Java everywhere. Java powers pretty much the entire banking infrastructure. Aren't there billions of Java smartcards that people carry in their pocket/wallet and use on a daily basis? Aren't there billions of Android apps installed that are, basically, Java? One can dispute the numbers a bit but... How is Java not one of the biggest success story ever for a programming language? I'd also add: it's kinda funny to see so many programmers hating on Java and thinking that, somehow, Java is dead or dying, yet on a daily basis they'll use one of the JetBrains tools, written in Java, to work on their "non Java" code. I do not only think he was right to lose sleep over it: I think Java delivered.
- coldtea 5y ago>Aren't there billions of Java smartcards that people carry in their pocket/wallet and use on a daily basis? No.
- smcl 5y agoThey are referring to SIM cards or newer credit/debit cards (the chip-and-pin ones): https://en.wikipedia.org/wiki/Java_Card https://en.wikipedia.org/wiki/Java_Card
- coldtea 5y agoI guessed as much, but I don't think they're anything but niche in 2022. They're not in regular (e.g. VISA, Mastercard) chip-and-pin credit cards for example, are they?
- smcl 5y agoSo wikipedia says that it is, but honestly I am not an expert so let's just set that aside for argument's sake unless someone can definitively say one way or another. But it's definitely in SIM cards, which are indeed carried and used by billions daily
- 5y ago
- maupin 5y agoFor at least the next 5 years afterwards Java applications on the desktop were clunky, slow, and not a threat to anyone.
- iso1631 5y ago"In the limit [Sun] can make the web totally OS agnostic" Well yes, the web became OS agnostic, which is a great thing, but I don't think Myhrvold really grasped what that would mean
- jldugger 5y agoI think he did: an OS agnostic web means people choose OS based on other factors. Obviously price is one, but features is another. And he points out that winning on price is actually the same as losing (and Sun's sale to Oracle appears to confirm this). But can anyone name exciting new features in Windows 11? Or Windows Vista? In some sense the web enabled smartphones, but unlike Sun, Google has a profit strategy for their cheap OS. And the patents and wireless regulations put a high barrier on new entrants, which MS was late to and had to acquire Nokia to enter. And again, does anyone remember MS Mobile's killer features?
- agumonkey 5y agoInteresting to see Bill Gates being so anxious. Also interesting to see him explain the anxiety clouds his creativity. Makes you take some distance.
- drzaiusapelord 5y agoTheir relationship is so interesting to me because it ties to the old "child" monarch vs his steely-eyed advisors. Long story short, its emotional manipulation to come at someone from a position of power and complain about "worry" and "losing sleep." In fiction and history we see these childish kings acting out with their advisors sort of calming them down as this stereotype of how wrong monarchy is, but instead its a valid and intentional leadership strategy: to emotionally manipulate your underlings by seeming hurt and needing of help. Gates played up this coddling attitude because it gets him the results he wants with minimum effort. Nathan recognized this signal and wrote out the logical part of the brain to counter Gates' emotional side. He coddled the child king. This is his job. The C-levels in my life do this all the time. I've been manipulated many times like this. I think its linked to the habits of being a low-empathic personality. Its run of the mill manipulation which is what powers offices and sales all over the world. I imagine it gets results more often than not but its a bit pathetic looking and an acknowledgment human beings aren't logical animals, but primarily emotional and even the most hardened tech CEO is essentially playing emotional games with their staff, constantly. Its just so brazen and obvious when you see it like this. Especially when Gates is supposed to be the anti-Jobs, and this hard-nosed programmer not a diva, but surprise, surprise its diva behavior top to bottom in the C-suites, because diva-ism works.
- ZhangSWEFAANG 5y agodamn, I never thought of it like this. So if I understood you correctly - Gates wants to stroke his ego?
- arkx 5y agoI don't think you understood correctly. A wise leader surrounds themself with people they can truly trust in. In this message we see a glimpse into the dynamic between Bill Gates and Nathan Myhrvold, and my main takeaway is that Bill truly trusts Nathan here, enough to be vulnerable and speak openly about his worries. While it's humorous and perhaps even enlightening to think of him as a "child king", I don't think he was only "seeming hurt" here or manipulating (unless you count all forms of emotional appeal as manipulation). Being honest and straight is a very effective way to lead those close to you. It's also the leader's job to worry about threats like this and direct the attention of his advisors.
- brianmcc 5y agoAs my 2014 (!) self wrote: https://mcconnellsoftware.github.io/java-golden-handcuffs/ https://mcconnellsoftware.github.io/java-golden-handcuffs/
- ChrisMarshallNY 5y agoYou may remember this little gem: https://news.ycombinator.com/item?id=19877916 https://news.ycombinator.com/item?id=19877916
- brianmcc 5y agoI don't remember it but interesting discussion thanks!
- pipeline_peak 5y agoThus .NET was born
- Bluecobra 5y ago> They are so hell bent to give things away Wow, we've really come full circle on this. If you're a business who wants to simply use the official Java JRE to run Java applications you now have to pay Oracle for a license.
- looperhacks 5y agoThis is false. You can (and always could) get the free OpenJDK, which is built and distributed by Oracle. It doesn't get much more "official". If you have some specific needs, you can pay for enterprise support, i.e. the Oracle JDK. Since some months(?) you can also get the Oracle JDK for free (and use it commercially). But you have to pay for extended support. The free support given by the Oracle JDK is until a new major version is released (for non-lts versions) or one year after the next LTS version (which currently is released every two years). https://blogs.oracle.com/java/post/free-java-license https://blogs.oracle.com/java/post/free-java-license https://blogs.oracle.com/java/post/moving-the-jdk-to-a-two-year-lts-cadence https://blogs.oracle.com/java/post/moving-the-jdk-to-a-two-y...
- kaba0 5y agoHonestly, at this point I’m not sure if it’s just blind stupid hatred for Oracle, or deliberately spreading libel. Oracle was the goddamn company that completely open-sourced Java for the first time to begin with. There are no longer paid-only tools in OracleJDK. Recently, they even made the support version free to use, and then people go on and claim this bullshit.
- _old_dude_ 5y agoOracle did not open sourced Java, Sun did before dying. But you are right that Oracle unified all paid/free versions of Java under the OpenJDK banner, even Android is using the OpenJDK now.
- pjmlp 5y agoIronically they are now an OpenJDK contributor. https://www.microsoft.com/openjdk https://www.microsoft.com/openjdk And Java is the only ecosystem that tends to have 1:1 parity with .NET APIs on Azure. Maybe Google will one day come around with their Android Java flavour as well.
- DerArzt 5y agoParity yes, but documentation and support not so much. Using Java on Azure always felt like being Microsoft's red headed step child when compared to C#, and for good reason since C# is of course a Microsoft Language. I don't fault Azure to much on this, but it did leave my team annoyed a lot of the time.
- pjmlp 5y agoMight be the case, however I think they do feel the pressure of Java on the backend. On my bubble it feels that .NET on UNIX has come too late, and unless one is deep into MS stack the adoption is less stellar than it could be. On polyglot shops Java based stacks tends to win over .NET ones on RFPs. Even well known names like Sitecore are now going polyglot on the backend.
- louhike 5y agoI think it depends. .NET on UNIX has allowed it to survive in some places. I don't think I would still be a .NET developer if it wouldn't have happened. It's far easier to sell .NET as a technology to upper management now than we can deploy it on Linux servers with no Windows Server licenses cost. And even though developing on .NET is fun for a lot of developers, using Windows Server is definetly not.
- pjmlp 5y agoWhile on others the rewrite required to move from .NET Framework into Core, while leaving 20 years of Windows only libraries behind has prompted several polyglot shops to jump ship. I have done two such migration projects. The reference to Sitecore was an example of one of the strongest .NET CMS on the enterprise space that now is having a portfolio based on .NET, Java and NodeJS. Microsoft always behaves as if rewrites weren't a cost center, but they are and with Core, alongside the whole desktop mess, many have reached their rewrite budget with Microsoft technologies.
- xedarius 5y agoDon't worry Bill, this becomes a mere twinkle in the night sky when you realise you missed 'the internet'.
- trelane 5y agoHe didn't miss it per se. It's just that their Windows-only Internet[1] didn't work out. Fortunately for all us. [1] https://en.wikipedia.org/wiki/MSN_Dial-up https://en.wikipedia.org/wiki/MSN_Dial-up
- throwaway10122 5y agoI think its important to sepate Java the language from JVM runtime Likes of Kotlin (and controversially Scala) do quite well on it and solve many of the ugly deficiencies of Java Its also probably important to separate latest Java (which is improving) from enterprise Java out there which usually feels like an archeology dig with decades of boilerplate and rubbish and terrible code Currently in an enteprise java team and hate my life and regreting moving away from Kotlin+Springboot team.
- nova22033 5y agoWhen I was teaching my then 14yo the basics of programming, I started him off with python instead of java. It was way easier to explain pip install pygame or whatever than explaining how to import a jar he needs(and all it's dependencies)
- 999900000999 5y agoPython is a generally easier language. name = Input("What is your name ?") print("Hi ",name) That's a working Python program. To do the same in Java requires a ton of boiler plate. I don't think there's a person alive who can write a Java program which compiles from memory alone. I hope I never have to work another job with Java again, most of it's not even the language but the tooling. I was at a shop where we had to use Eclipse. Such a horrible IDE, it's apart of why I left.
- kaba0 5y agoIt’s funny because Java has hands down the best tooling out of any language. I would honestly be surprised if I would be pressing more keys per a given program with IntelliJ, than someone does with a much less verbose language.
- adament 5y agoThis has also been my experience, but to me the detriment of verboseness is not only a matter of writing code, it also means there is a lot of noise when I try to read the code. I guess it might just be a personal preference whether we prefer explicit and typically more verbose or terseness at the cost of more implicit behaviour / magic? At least I am unfamiliar with a language which is both explicit and has no boilerplate.
- jamesgeck0 5y agoFortunately it's not an either/or choice. Python is easier to write, but JVM applications are significantly easier to distribute cross-platform. When you publish a Python game, compiling it to a JAR with Jython is far easier than figuring out x86 and ARM builds for Windows/Linux/macOS.
- ascendantlogic 5y agoI spent the 2000's writing a lot of java servlets with a smattering of JSP and a little bit of Android. I spent the first few years of the 2010's doing multiple Android apps. Java as a language is verbose but overall isn't that bad. The problem is enterprises love patterns and love ceremony and boilerplate and so that became the defacto way to write it, which then got cargo culted everywhere else. Over my 20+ year career I see programmers demanding their tools give them the freedom to shoot themselves in the face. Then, upon shooting themselves in the face they turn to the nearest person and say "why did it let me do that?". Your tools are rarely the problem. The problem almost always is how the people doing the building actually use the tools.
- ralmidani 5y agoTechnically speaking (so ignoring Oracle), Java the language is actually pretty good. When I took a MOOC and a Data Structures course that were all Java, I actually enjoyed writing Java. It’s verbose, but very straightforward to work with once it clicks, and a pretty powerful language. My first two full-time dev jobs were at Java shops (one was about ~100 employees, the other was Chase), and that’s where I developed a severe distaste for the ecosystem. Getters and setters everywhere, dependency injection with Spring (I know there are alternatives, but Spring seems the most popular), so much convoluted and over-engineered garbage. Wrestling with that nonsense was one of the triggers for a bout of depression last year. Also last year, I moved to Elixir and never looked back.
- amarant 5y agoMan feel you. A few years ago I got out of the Spring swamp, and worked at a shop using a different framework, but still in Java. It got rid of almost all the bad things about the Java ecosystem, and it was so liberating! Last year I was back in the spring swamp again and I couldn't stand it! Glad to hear it's not just me
- Diesel555 5y agoPDF version of Exhibit plex_5803 (1996) http://techrights.org/wp-content/uploads/2009/06/plex_5803.pdf http://techrights.org/wp-content/uploads/2009/06/plex_5803.p... for those who do not have a twitter account (twitter won't let me load all the images without asking me to log in) or just want a textual version / transcript. Text version in a website can also be found here about two pages down under "Appendix: Comes vs. Microsoft – exhibit plex_5803, as text": http://techrights.org/2009/06/26/eee-versus-cross-platform/ http://techrights.org/2009/06/26/eee-versus-cross-platform/ * I'm Just providing an alternative, I'm not trying to start the standard argument about twitter links.
- cryptos 5y agoSince this thread contains a lot of comments about Java's ergnomics and speed of innovation, it might be interesting what has changed in the last years: https://www.baeldung.com/new-java-9 https://www.baeldung.com/new-java-9, https://www.baeldung.com/java-10-overview https://www.baeldung.com/java-10-overview, https://www.baeldung.com/java-11-new-features https://www.baeldung.com/java-11-new-features, https://www.baeldung.com/java-12-new-features https://www.baeldung.com/java-12-new-features, https://www.baeldung.com/java-13-new-features https://www.baeldung.com/java-13-new-features, https://www.baeldung.com/java-14-new-features https://www.baeldung.com/java-14-new-features, https://www.baeldung.com/java-15-new https://www.baeldung.com/java-15-new, https://www.baeldung.com/java-16-new-features https://www.baeldung.com/java-16-new-features, https://www.baeldung.com/java-17-new-features https://www.baeldung.com/java-17-new-features It is pretty impressive how Java keeps up to date over decades! I think in the long run it is very wise to be conservative over new language features. For example the work von "green threads" (project Loom) is a really good, fundamental approach with backwards compatiblity and there are some voices on the web thinking that such an approach is more clever then introducing "async" to the language (C#, Python, etc). I really appreciate how careful the engineering is and how they don't shy away from putting years into some topics.
- btschaegg 5y agoSomething I'm really not surprised about, but it's nonetheless interesting to see how the discusson never touches points like "is this enthusiasm founded?", "what are they doing right?" or "where do we lag behind? What could we learn from them? Where can we improve?". Gates just immediately jumps to "how can we kill it?". That itself explains so much about even today's state of computing in a simple e-mail conversation.
- Mikeb85 5y agoI'm just shocked by Nathan Myrvold's reply back. He's a patent troll among things but his email is incredibly on point. Also this little tidbit: > Virtual worlds could be such a thing.
- tasuki 5y agoI've only heard about him as a patent troll before, but apparently he wears many hats. A mathematician, a photographer, a cook, at least dabbler in biology, astronomy, and other scientific fields. An interesting character for sure.
- snowwrestler 5y agoI think Gates was losing sleep because he had come to expect to win everywhere all the time. Myrhvold’s reply (in a lower tweet) is a gentle way of saying that Microsoft doesn’t have to, to succeed as a company. I think as a company finds continuous, outsized success, there is a risk for a leader’s mindset to get warped and resistant to anything but outsized success. Anything less than domination looks like a problem, an anomaly that must be found and destroyed. I think it might explain some otherwise indefensible behavior, like HP spying on their board, or all the shady stuff that Uber was doing, or even MS’s own anti-competitive behavior. I think leaders have to get shocked out of this mindset or just removed. Gates was shocked by MS’s conviction and stepped down. Ballmer and Kalanick were pressured to resign by investors. Both MS and Uber have benefited from new leadership that lowered the temperature and refocused the company. I also think it explains why Facebook is the way it is now. There doesn’t seem to be such pressure points available for Zuckerberg though.
- nyanpasu64 5y agoMicrosoft's new leadership may have "lowered the temperature and refocused the company" to open-source software, but now they're more than ever anticompetitively promoting Edge and Videos and etc., progressively making it harder to switch browsers or make Start/F1 search open a different browser, manipulating users who use Edge search for Chrome, making Edge run in the background for fast start (I suspect to make it appear faster to start than Chrome), baking telemetry into Windows and VS Code and PowerShell and vcpkg, releasing proprietary extensions for proprietary VS Code which won't run on open-source VSCodium, performing hostile takeovers of .NET Foundation projects, etc.
- wanderingmind 5y ago>"Both MS and Uber have benefited from new leadership that lowered the temperature and refocused the company." This is the same Uber that has given up on any future tech leadership and sold its autonomous driving group away right?
- Rastonbury 5y agoChoice between bleeding money and haemorrhaging it
- _moof 5y agoImagine losing sleep over JavaBeans because you thought it was good.
- marktangotango 5y ago"Java" in 1996 isn't what Java is today. In 1996 Suns focus was providing a runtime for executing code anywhere on the network, on any machine. That's why security managers, class loaders, applets, rmi, and jndi were baked in from the beginning. That future didn't pan out; no one wanted to run other peoples code. So J2EE was the pivot to the Enterprise and server apps. That's what we ended up with. In a way, Gates may have been imagining or extrapolating the "run code anywhere" idea to the cloud services of today, which we've seen is a bit of a threat to proprietary operating systems. Well, more than a bit.
- rcoveson 5y ago> ...no one wanted to run other peoples code. This obviously didn't stay true; the browser is everything the JVM wanted to be today. A JIT for a universal programming language and multiple layers of sandboxing. I don't think people care about running other people's code. Java just wasn't seamless enough. Or they lost some key political battles (few major OSes shipped with it).
- wly_cdgr 5y agoImagine being this stressed and miserable over someone else building something cool and valuable when you already have enough money to never need to work again. What a wretched existence
- nunez 5y agoWhat a visionary Nathan was (Java becoming important, but not right then, emphasizing the importance of media and a frictionless PC experience). Whatever happened to him?
- baxtr 5y agoIt’s somewhat comforting to see that you’re at risk of loosing sleep no matter how successful you are.
- goto11 5y agoHe should actually have been losing sleep over JavaScript. But few saw that in 1996.