[HN Gopher] Netscape and Sun Announce JavaScript (1995)
       ___________________________________________________________________
        
       Netscape and Sun Announce JavaScript (1995)
        
       Author : brandrick
       Score  : 597 points
       Date   : 2020-12-04 12:12 UTC (10 hours ago)
        
 (HTM) web link (web.archive.org)
 (TXT) w3m dump (web.archive.org)
        
       | Aeolun wrote:
       | Damn, I was 7 at the time. And by the time I was 17, and just
       | starting to build websites, it still felt like Javascript was
       | barely a baby.
        
         | k__ wrote:
         | I was 10 when it came out and wrote my first line of JS with 18
         | or something. It already felt dated to me at that time.
        
           | hnlmorg wrote:
           | I was....older....when it came out and so wrote my first
           | Javascript code around 96. Actually back then it felt like a
           | breath of fresh air. A way to run logic in the browser that
           | interacted with HTML. Nobody saw it as a replacement to Java
           | applets, Flash, Shockwave (anyone remember that plugin and
           | Macromedia Director?), etc but it did open the door to make
           | basic web pages a little more dynamic.
           | 
           | Some time before 2000 (though I forget which year precisely)
           | I even submitted some Javascript to Planet Source Code
           | (anyone remember that website?) that simulated a Windows 95
           | desktop; complete with interactive start menu and task bar.
           | That submission was the highest rated for that month and was
           | awarded some free software as a prize -- though I never
           | claimed that prize in the end.
           | 
           | It's true that the early days of Javascript was rather
           | lacklustre (not helped with the the IE/Netscape wars) and
           | thus few people took it seriously as something that could
           | displace Java applets nor Flash. But it was still widely used
           | as something to make traditional web design a little more
           | flexible (eg Javascript refreshes).
           | 
           | Part of my actually misses those days. Web design was simpler
           | in some ways (it was predominantly backend generated* HTML
           | with JS sprinkled about sparsely). Though I don't miss
           | browser incompatibilities -- even basic things like
           | displaying a table (not a grid of divs, a literal <table>)
           | was fraught with different browsers rendering the table
           | differently.
           | 
           | * and in fairness, I was always more of a backend engineer
           | rather than frontend designer anyway
        
       | Orthw2020 wrote:
       | What bothers me is that they actually never apologised. A simple
       | statement of acknowledging the damage caused would do!
        
         | mabbo wrote:
         | I think they understand the repercussions.
         | 
         | Imagine if you said that the pain and suffering of every
         | developer for the last 25 years was largely your fault. There
         | would be lawsuits. Class action. We'd all travel to come
         | testify.
        
           | krapp wrote:
           | >Imagine if you said that the pain and suffering of every
           | developer for the last 25 years was largely your fault.
           | 
           | Hyperbole and nonsense. No one was "suffering" under
           | Javascript until Node and compile-to-js languages and the
           | Byzantine nightmare of a development environment that they
           | created came along. No one was shouting "Javascript Delenda
           | Est" when all you needed was an FTP account and a text editor
           | to configure a JQuery plugin.
           | 
           | I mean, Javascript development used to be reasonably simple,
           | straightforward and fun. It's Silicon Valley's fault that it
           | no longer is, not the language.
        
             | ethbr0 wrote:
             | > _Silicon Valley 's fault_
             | 
             | Personally, I'd lay this at the "copy & paste, boot camp-
             | trained" webdevs community's feet, along with their
             | customers.
             | 
             | Js has an unfortunate ecosystem dynamic where its primary
             | customers (I want to X on the web) don't understand it, so
             | its primary developers don't have any standardization
             | pressure (fragmentation / spaghetti at the wall), browsers
             | are forced to enable this behavior via monkey patching
             | standardization in presentation, so its end users (browser
             | users) are oblivious to everything under the hood.
             | 
             | It's like the perfect storm of hidden sausage-making.
        
               | Gunax wrote:
               | Do you think it would be better if they did understand
               | it?
               | 
               | You can be a Java dev for years (forever really) without
               | understanding how the JVM works. I don't see why the web
               | has to be any different.
        
               | ethbr0 wrote:
               | "They" was intended to be the customers: the clients
               | paying for development.
               | 
               | Ime, the less visibility and knowledge customers have
               | into an implementation, the more opportunity there is for
               | developers (especially contract) to go off the rails.
               | 
               | When the code behind "it works in my browser" is
               | completely opaque... that doesn't set up the best
               | technical incentives in the market. Past "minimize time-
               | to-deliver".
        
         | jp555 wrote:
         | Struggle sessions were still horrible Maoist actions back then,
         | not the "progressive" thing some call for them to be today. :P
        
         | netdur wrote:
         | For what? Imagine a world without Javascript? You have mini
         | extension in browser to just auto refresh gmail
        
           | 0xbadcafebee wrote:
           | Web browsers were not invented to be application platforms.
           | They were intended to view documents and click through them.
           | 
           | Server-side applications (CGI) started the trend of the web
           | browser becoming an application interface. Javascript made
           | the web browser the application _platform_. But of course it
           | was not designed for this, so a million hacks have been added
           | to shore it up. To the point of literally including a
           | standard to ship arbitrary binary executable programs into
           | it. There used to be another tool and language which allowed
           | you to ship arbitrary binary executable programs to remote
           | systems... it was called Java.
           | 
           | The Web is the best example in history of how successful turd
           | polishing can be. The global economy now rests on it.
        
             | wayneftw wrote:
             | > ...not invented to be application platforms.
             | 
             | Phones were invented to only make phone calls.
             | 
             | Coca-Cola was originally created as a way to counter
             | morphine addiction.
             | 
             | Listerine was originally a floor cleaner.
             | 
             | None of those were turds and neither is the web as an
             | application platform. Quite the opposite- Native apps suck
             | compared to web apps. The only native apps I personally use
             | besides the browser on my phone are Maps, Messages, Slack,
             | Camera/Photos and those are only because there's no other
             | choice. Imagine having to use an app instead of popping
             | open the web browser to order from Amazon? Yeesh
        
           | grishka wrote:
           | > Imagine a world without Javascript?
           | 
           | That would've been a better world. Imagine the web that isn't
           | an application platform. (it still isn't, but it's being
           | actively shoehorned into becoming one)
        
             | [deleted]
        
           | cesarb wrote:
           | > You have mini extension in browser to just auto refresh
           | gmail
           | 
           | That existed without JavaScript (and IIRC it was somewhat
           | common back when JavaScript was a novelty): <meta http-
           | equiv="Refresh: 60">
        
             | ptx wrote:
             | Periodically tearing down the entire UI while the user is
             | in the middle of using it is a terrible user experience.
        
               | TomGullen wrote:
               | That's not how it was usually implemented though, you'd
               | have frameless iframes that refreshed - eg for chat rooms
               | etc
        
               | ptx wrote:
               | Did it preserve the scroll position when refreshing? If
               | so, that might be OK for a chat room. But an email inbox
               | is more interactive, so I think it would be jarring to
               | have that refresh as you're poking at it.
        
           | tonyedgecombe wrote:
           | _Imagine a world without Javascript?_
           | 
           | What a dream.
        
             | RobAley wrote:
             | Be the change you want to see. Your personal website linked
             | to from your HN profile consists solely of a Javascript
             | game ... :)
        
             | Jean-Philipe wrote:
             | I'd be afraid flash would come back. Ah, those
             | flashbacks...
        
               | grishka wrote:
               | Flash is better than JS to be honest. JS still hasn't
               | caught up with ActionScript. The only bad part about
               | Flash is that it's proprietary.
        
               | stolenmerch wrote:
               | I would agree that Actionscript 3 as an implementation of
               | ECMAscript is more of a delight than JavaScript as a
               | language which conforms to whatever version of
               | ECMAscript. But compiling to VMs in the browser? Never
               | again.
        
               | recursive wrote:
               | When flash was focused, my keyboard shortcuts didn't
               | work. I hated it just for that.
        
             | hutzlibu wrote:
             | Out of curiosity, what language would have replaced
             | Javascript in you dream?
        
             | untog wrote:
             | This notion always makes me laugh. Which is better, Google
             | Maps or the old MapQuest pages that had arrows and reloaded
             | the entire page when you wanted to move the map? I know
             | which one I prefer.
        
             | _fat_santa wrote:
             | If we had a world without Javascript it would probably be
             | some nightmare with SaaS companies building their apps in
             | Flash or something.
        
           | simias wrote:
           | That was called an IMAP client. It was fine.
        
             | anoncake wrote:
             | It's still fine.
        
               | [deleted]
        
           | gspr wrote:
           | > You have mini extension in browser to just auto refresh
           | gmail
           | 
           | Why would I ever want to touch a webmail interface with a 3 m
           | pole?
        
           | Wowfunhappy wrote:
           | I'm pretty sure the GP was joking.
        
           | ddevault wrote:
           | >For what? Imagine a world without Javascript?
           | 
           | What a pleasant way to begin my day. Thank you for this
           | moment of bliss.
        
           | viktorcode wrote:
           | It was supposed to be Scheme in the browser, not an
           | inconsistent typeless error-prone mess.
        
           | PopeDotNinja wrote:
           | Development would be so much faster without JS. It could be
           | done in a Flash.
        
         | dang wrote:
         | Please don't post unsubstantive and/or flamebait comments to
         | HN.
         | 
         | https://news.ycombinator.com/newsguidelines.html
        
         | logicchains wrote:
         | Its created got fired from his job as CEO for creating it,
         | isn't that punishment enough?
        
           | paulryanrogers wrote:
           | Eich wasn't fired for making JS. He was fired because of some
           | political donations and opposing same sex marriage.
        
             | DonHopkins wrote:
             | Mozilla didn't fire Brendan Eich. He resigned of his own
             | free will, against the Mozilla board's request that he
             | stay. His own words and the Mozilla FAQ quoted below, I'm
             | not just making this up.
             | 
             | Down the following thread, Brendan suggested googling
             | "constructive separation" -- but I'm not sure if he meant
             | for that euphemism to apply to how he left his job at
             | Mozilla, or to how he wanted to cancel and destroy existing
             | happy same sex marriages in California against their
             | consent. All of the google results have to do with
             | marriage, not employment. Brendan, care to clarify?
             | 
             | As JavaScript proves, Brendan Eich never really understood
             | the concept of equality:
             | https://dorey.github.io/JavaScript-Equality-Table/
             | 
             | https://news.ycombinator.com/item?id=24127716
             | 
             | DonHopkins 3 months ago | on: Mozilla lays off 250
             | employees while it refocuses ...
             | 
             | Eich was not forced out or fired. In fact, just the
             | opposite: the board actually tried to get Eich to stay, but
             | he decided to leave all on his own. Don't try to rewrite
             | history to make an ideological point. It's all very well
             | and unambiguously documented what really happened, and
             | there's no excuse for you spreading that misinformation.
             | 
             | https://blog.mozilla.org/blog/2014/04/05/faq-on-ceo-
             | resignat...
             | 
             | Q: Was Brendan Eich fired?
             | 
             | A: No, Brendan Eich resigned. Brendan himself said:
             | 
             | "I have decided to resign as CEO effective April 3rd, and
             | leave Mozilla. Our mission is bigger than any one of us,
             | and under the present circumstances, I cannot be an
             | effective leader. I will be taking time before I decide
             | what to do next."
             | 
             | Brendan Eich also blogged on this topic.
             | 
             | Q: Was Brendan Eich asked to resign by the Board?
             | 
             | A: No. It was Brendan's idea to resign, and in fact, once
             | he submitted his resignation, Board members tried to get
             | Brendan to stay at Mozilla in another C-level role.
        
               | paulryanrogers wrote:
               | Thanks for clarifying. That said the impression I got at
               | the time is that his motivation to leave appeared closely
               | tied to controversy around his past donations and
               | personal beliefs. Hence the "under present circumstances"
               | statement.
        
               | DonHopkins wrote:
               | No problem -- it's a common misconception which is a key
               | part of the narrative that Brendan's Alt-Right GamerGate
               | supporters were doing their best to spread at the time
               | (GamerGate was in full swing when he resigned, and the
               | Alt-Right jumped on the issue at the expense of Mozilla),
               | in order to help Brendan play the victim (instead of
               | respecting Brendan's own victims and co-workers whose
               | marriages he wanted to terminate) and make him a martyr.
               | (Not that I think you're one of them, but they
               | unfortunately succeeded at spreading the misconception
               | that Brendan was fired far and wide, in the service of
               | their cultural war.)
        
           | bananaface wrote:
           | From a utilitarian perspective, probably not.
        
         | _pmf_ wrote:
         | The mother of all sunken costs.
        
         | agumonkey wrote:
         | the surface is wide to carry
        
         | _greim_ wrote:
         | Apologized because a scripting language is inherently a bad
         | idea for the browser, or because it was imperfect?
        
           | [deleted]
        
         | draw_down wrote:
         | Almost nothing in this world brings me joy like HN's hatred of
         | JavaScript. You all even came around on PHP in the end, which
         | just makes it funnier.
         | 
         | Stay mad, guys! :)
        
         | tjansen wrote:
         | I assume you have never used VBScript, which was the major
         | alternative back then.
        
           | toyg wrote:
           | VBScript is actually a later development, in reaction to JS
           | (or "DHTML", as we called it back then). But yeah, it was
           | pretty bad too.
        
             | icedchai wrote:
             | Not by much. VBScript was available with Internet Explorer
             | 3.0, which was released in 1996. It was only a little later
             | than early JS.
        
           | bdcravens wrote:
           | I worked at a computer store/ISP - the owner was a VB guy,
           | and coded up some stuff on our intranet in it. I recall his
           | shock that it didn't work in Netscape.
        
         | duxup wrote:
         | I have trouble imagining all the things folks don't like about
         | JavaScript ... not still being a thing if there was something
         | else.
        
       | arendtio wrote:
       | I wonder how many people rue that day (especially in the HN
       | community) ;-)
        
         | lta wrote:
         | I cannot express how much I rue this day.
        
       | edub wrote:
       | it is interesting that the archive.org version of this press
       | release has a semi-colon after AT&T;
       | 
       | i can't remember if in 1995 we would write the code to be
       | AT&amp;T or if that came a bit later.
       | 
       | perhaps the scraper thought it was an HTML entity starting with
       | the & followed by the T and it added the semi-colon.
       | 
       | or maybe it originally was posted in 1995 without the semi-colon
       | and before it got indexed in 2002 by archive.org someone ran a
       | regex style replacement on old static html files at netscape to
       | "fix" html entities.
       | 
       | it just doesn't seem likely that a static html file from 1995
       | would have had AT&T; in it, it seems more likely that it was
       | transformed either by the scraper or some internal script run
       | after it was originally posted.
       | 
       | i found an old email version of the press release on Lunds
       | University website that does not have the semi-colon.
       | http://www2.ldc.lu.se/temadag95/javascript.txt
       | 
       | and what looks like an archive of the 1995 version of the java
       | website hosted at University of Oviedo:
       | http://www6.uniovi.es/java-http/pr951204-03.html
        
         | hcs wrote:
         | In the raw version of the archived page, found by adding "id_"
         | after the URL[1], there is no semicolon.
         | 
         | The link to netscape.com at the end is mysteriously missing
         | still, "Additional information on Netscape Communications
         | Corporation is available on the Internet at ,"
         | 
         | [1]
         | https://web.archive.org/web/20020606002913id_/http://wp.nets...
        
           | ignoranceprior wrote:
           | Does this mean the Wayback Machine has a bug relating to how
           | it handles HTML entities?
        
       | jamesdhutton wrote:
       | Interesting to read the list of companies in the announcement,
       | and to contemplate that JavaScript has outlived most of them.
        
       | Tade0 wrote:
       | I wrote my first actually-doing-something lines of code back in
       | 2001 in JS, because unlike e.g. Pascal, JS (or actually JScirpt)
       | would just run and not ask stupid questions about types or
       | missing semicolons and required only a browser.
       | 
       | 12-year-old me was very happy with such a low barrier to entry
       | language, especially given that I didn't have an internet
       | connection until years later, so I had to learn mostly via trial
       | and error.
        
       | tomhoward wrote:
       | I didn't realise JS only appeared in late '95.
       | 
       | I first used the web in early-mid '95; it must've been around
       | April-May of that year.
       | 
       | I'm no JS-hater, but it's still nice to think I had a brief few
       | months of script-free web use before the JS era dawned.
        
       | didip wrote:
       | Javascript was such a misopportunity to use Scheme instead.
       | 
       | All three HTML, JS, and CSS could have used one Lisp-like
       | dialect.
       | 
       | Also, I remembered that JS was horribly misunderstood for a long
       | time because people weren't used to the prototypical inheritance.
       | And this is where jQuery comes in and took JS to the next level.
        
         | krapp wrote:
         | >All three HTML, JS, and CSS could have used one Lisp-like
         | dialect.
         | 
         | Other than being aesthetically pleasing to a demographic of
         | programmers, what would be the benefit? Modern sites already
         | have a problem with JS being used to generate CSS and HTML, and
         | separation of concerns being completely abandoned, and that's
         | just created a mess where three separate, more explicit
         | languages were simpler.
        
         | Wilem82 wrote:
         | Lol god forbid. Browser side programming is shitty enough
         | without lisp nonsense.
        
       | jzer0cool wrote:
       | My first browser I was accustomed to using was Netscape on a Mac.
       | Search engines were Hotbot and Webcrawler after Yahoo. Cannot
       | recall the others.
       | 
       | When I think back IE browser was the top browser and there were
       | all sorts of workarounds to get it html compliant (or rather IE
       | compliant). Easy to learn html, but hard to get it working right.
       | Then adding in javascript for the added dynamic flair.
       | 
       | I wanted to learn javascript & I ended up learning first java not
       | knowing the difference at the time. Fun times were also spent at
       | Barnes & Nobles / Borders (bookstore in U.S.) - checking out
       | technical books and eventually I toiled through learning VBScript
       | / Windows IIS to extend out a simple ecommerce site and possibly
       | paving my way into the technical field.
       | 
       | Didn't Netscape also have email integration? I can't recall
       | anymore as I went through multiple internet providers like Aol.
        
         | godot wrote:
         | I find the fragmentation interesting. In the mid to late 90s
         | when I was first on the internet, the "prominent search
         | engines" ranked (given to me by my ISP and some other sites)
         | was something like AltaVista, Yahoo, InfoSeek, with Webcrawler
         | and Hotbot down at the bottom. I believe my ISP distributed IE
         | (3 at the time) with whatever internet software cd they
         | included, and it was my first and default browser. Later on I
         | tried installing Netscape Navigator, but it felt slow and
         | clumsy compared to IE3 at the time, so I never understood why
         | anyone used it. It's quite interesting how our internet
         | experiences were so different!
         | 
         | What is the same between us however is I also learned coding
         | practically by first starting to make HTML pages, and some
         | Javascript, and that was also my way into the technical field
         | (decade and a half of working as a software engineer now).
         | Like, sure, there were computer programming classes in school
         | and every class used Pascal at the time (Quick or Turbo). It
         | didn't feel like creating anything useful for the real world
         | though; whereas with the web, I was immediately creating
         | something for the world to see. I'd say learning to make web
         | pages on my own was 99% of the reasons I became a software
         | engineer later. The programming classes in high school, not so
         | much.
        
         | mixmastamyk wrote:
         | Thunderbird debuted as Netscape mail and was combined in
         | Netscape Communicator suite I believe. Memory fuzzy.
        
           | cxr wrote:
           | Thunderbird came out of the Netscape 6 rewrite by way of the
           | Mozilla Application Suite, not either of the Netscape 3 or
           | Netscape 4 mail clients.
        
         | smt1 wrote:
         | I used Netscape 0.99 on a Mac. It was on a BMUG CD from 1994
         | that I would get a lot of freeware/shareware. Used it download
         | SPRY Mosaic, which Microsoft licensed to create IE on Win95
         | soon after (I had already seen Mosaic running on CDE on HP/UX
         | at my mom's scanning electron lab. she was getting a physics
         | ph.d). Then I got a Mac clone from Metroworks. It had a pretty
         | innovative C++ engine for its' time (PowerPlant), but I ended
         | up booting into mkLinux (a mach-based linux) just in time for
         | linux 2.0.0, discovering kde, then spending a while trying to
         | emulate hacking at khtml/konqueror just to reverse engineer IE
         | behavior "quirks" (5+ was a disaster) just to get websites to
         | behave. Eventually both Apple and Chromium adopted khtml
         | (webkit) instead of Gecko, before Firefox itself revived via
         | Netscape and Mozilla (after it escaped the AOL/Time Warner
         | fiasco). The funny thing is I use Firefox, chrome (on my
         | android), and safari (on my Mac) much more than I use linux
         | anymore. I'm pretty luckily to not have been just slightly too
         | young (I'm mid 30s) to go after the original .com boom.
         | 
         | I enjoy Rust the days. Modern C++ certainly ain't bad, but
         | nostdlib Rust is also the first serious threat to full spectrum
         | C in a long time.
        
       | optimalsolver wrote:
       | It doesn't have to be this way.
       | 
       | Hopefully Brython[0] which lets you do client-side Python
       | scripting takes off.
       | 
       | Imagine doing full stack web dev without seeing a single line of
       | JS.
       | 
       | [0] https://brython.info/
        
         | speedgoose wrote:
         | I very much prefer modern JavaScript compared to Python. It's
         | faster, has a better async support, as powerful, and I don't
         | have to care about white space.
        
         | niek_pas wrote:
         | Brython has been around for _years_ now and AFAIK has not shown
         | any signs of taking off.
         | 
         | I think you're better off placing your bets on newer ECMAscript
         | features and full-conversion libraries like React.
        
         | jfoster wrote:
         | I love the idea. From experience, though, this type of thing
         | becomes a bit painful when you realise that you actually want
         | to use some of the tools & code from the javascript world.
        
         | The_Colonel wrote:
         | That's just replacing one passable scripting language with
         | another passable scripting language, just with worse
         | performance.
         | 
         | I don't see the point.
        
         | bdcravens wrote:
         | I think building apps in Rails/Opal is just as likely.
         | 
         | Seriously though, I'm putting a lot of hope in the
         | LiveView/Stimulus Reflex/etc approach.
        
       | Kye wrote:
       | Think of how the web would be different if Microsoft leaned its
       | monopoly power on XMLHttpRequest. Would it have been the test
       | case for API ownership instead of Java?
       | 
       | https://en.wikipedia.org/wiki/XMLHttpRequest
        
         | toyg wrote:
         | XHR is possibly Microsoft's "Xerox PARC" moment. They held the
         | future in their hands and it just went through their fingers.
        
           | bdcravens wrote:
           | They also had VBScript and ActiveX in IE. I think had they
           | held onto XHR it would have gone the same route, and a
           | comparable alternative would have been developed.
        
       | victor106 wrote:
       | > today announced JavaScript, an open, cross-platform object
       | scripting language
       | 
       | Those words "open source" and "cross platform" are still in vogue
       | today.
       | 
       | That's just amazing for an industry that changes every year and
       | in the land of JS every month.
        
       | evan_ wrote:
       | In the beginning JavaScript was created. This has made a lot of
       | people very angry and has been widely regarded as a bad move.
        
         | colejohnson66 wrote:
         | > widely regarded as a bad move.
         | 
         | By who? You? Because there's tens (hundreds) of thousands of
         | programmers and thousands of companies working on JavaScript.
         | Just because many here consider JavaScript bad doesn't mean
         | everyone does. JavaScript has many problems, but it's not
         | "widely regarded" as bad.
        
           | evan_ wrote:
           | I love JavaScript, I spend 40 hours a week elbow-deep in the
           | stuff, I'm just having some fun.
        
           | abruzzi wrote:
           | the OP is referencing a line from The Hitchhiker's Guide to
           | the Galaxy:
           | 
           | "In the beginning the Universe was created. This has made a
           | lot of people very angry and has been widely regarded as a
           | bad move."
        
             | colejohnson66 wrote:
             | I'm an idiot. I should've picked that out...
        
           | Arnavion wrote:
           | (It's a quote from a popular book.)
        
             | [deleted]
        
       | atum47 wrote:
       | I bought a book, when I was about 12-15 years old, called DHTML
       | (Dynamic HTML). It blew my mind to see things moving across the
       | screen with just code.
       | 
       | Keep in mind that I learned pure html when I was 10, my websites
       | were all very static (apart from a animated GIF here and there).
       | The only way you could do a cool menu, effect or animation, was
       | with Java Applet (which I learned after purchasing a online Java
       | course that was taught over ICQ - it doesn't get more 90's than
       | that).
       | 
       | I have this love relationship with javascript ever since I wrote
       | my first "alert('hello')" and I wish it a happy birthday with
       | many more years to come.
        
         | arendtio wrote:
         | It still bothers me when people talk about dynamic HTML these
         | days. Just two weeks ago some team lead said it and I thought
         | 'dude, that is so 90s'.
        
           | flomo wrote:
           | Reminded me of the MS "DHTML Dude" blog. (no longer online,
           | it appears.)
        
           | lostcolony wrote:
           | It's also probably incorrect; DHTML didn't involve loading
           | data via AJAX after the page loaded, but instead configuring
           | the webpage on the client side after loading it.
           | 
           | That said, ask them if they'd prefer the backend in PHP or
           | Coldfusion.
        
             | WorldMaker wrote:
             | 1999 saw the release of XMLHttpRequest as an ActiveX
             | control for IE 5. There certainly were IE-focused
             | developers still referring to most of what they were doing
             | as DHTML and yet doing the earliest AJAX stuff, back when
             | the X still made sense that it stood for XML and
             | XMLHttpRequest was the first and at the time only AJAX tool
             | available in a web developer's toolbelt.
        
               | z3t4 wrote:
               | Also don't forget about long-polling (long running
               | request), or an iframe that refresh itself.
        
             | MentallyRetired wrote:
             | As someone who's been making websites since 1993,
             | everything you said here has made me twitch in one way or
             | another. I've been a ColdFusion team lead, a PHP developer
             | and I used to write DHTML scripts.
             | 
             | Also RIP to separation of concerns on the frontend
             | (document [html], style [css] and behavior [js]) since it's
             | all buried in javascript nowadays.
        
             | Mountain_Skies wrote:
             | Sigh. Working in cybersecurity, it makes me sad to see how
             | much ColdFusion is still in use, full of security holes
             | that no one will fix because the original developers have
             | long since moved on and current developers don't want to
             | touch anything CF related with a ten foot pole.
        
             | bdcravens wrote:
             | Given that Wordpress can be targeted as an API for a SPA
             | and Laravel is pretty hot, I'd say PHP isn't a bad choice.
             | 
             | ColdFusion of course is pretty out of vogue, but places
             | like Invision like it still.
             | 
             | A better comparison would be with ASP 3 or Perl.
        
         | tehlike wrote:
         | This is very similar to my exact experience, with ages probably
         | shifted by a year or two, given my site from 1999 shows a
         | javascript alert prompt lol.
        
         | bdcravens wrote:
         | In the late 90s/early 2000s you'd search (probably with
         | Altavista) for a DHTML script that did a given thing (and often
         | it wouldn't even be that dynamic, and might be something as
         | simple as form validation; "DHTML" was kind of a catch-all
         | phrase)
        
         | bdickason wrote:
         | I remember this book! I think it was red with a yellow font
         | maybe? Agree with you on the alert('hello') :)
        
           | atum47 wrote:
           | Turns out I still have my copy[1]. I remember this guy[2]
           | blowing my mind. He would move his arms to a menu, where your
           | mouse hover. This whole book was a thrill for me.
           | 
           | 1 - https://imgur.com/a/qMsw11C
           | 
           | 2 - https://imgur.com/a/kZKyhok
        
       | nonesuchluck wrote:
       | Not being on the web until the late 90s, the part I've never
       | figured out is, what could you actually _do_ with JavaScript in
       | the initial versions?
       | 
       | The way I understand it, early JavaScript could only address HTML
       | forms, links, and images. Can't modify HTML tags. Can't insert
       | new elements. Can't update the page and re-render until DHTML in
       | the version 4 browsers. Can't query the network until XHR.
       | 
       | Ok, so now what?
       | 
       | Do you just pop up an alert() when someone types 4 digits for a
       | Zip code instead of 5? Image rollovers? Is that it?
        
         | petercooper wrote:
         | Check out the JavaScript newsgroup from 1996 to see what people
         | were discussing and trying to achieve :-)
         | https://groups.google.com/g/comp.lang.javascript/search?q=af...
        
         | commandlinefan wrote:
         | One of the big things back then was form validation. Web pages
         | in the late 90's were necessarily very form driven (no AJAX
         | back then), and users were frustrated to submit a form, wait
         | for a response, only to be told that they were missing a
         | required input (or as you suggest, 4 digits for zip code). So
         | there were complex frameworks to let Javascript validate the
         | form before it was submitted - the Struts framework would even
         | generate the Javascript for you and keep it synchronized with
         | the backend.
         | 
         | But yeah, there wasn't really a whole lot of functionality. You
         | _could_ do fancier things with the Layer API in Netscape, but
         | it only worked in Netscape.
        
           | duxup wrote:
           | Yeah wiithout validation form validation still is wonky if
           | you want to do it on the browser / client end.
           | 
           | I see so many "you don't need JS" articles that mention some
           | of the basic HTML type form field validations and they're
           | nice-ish... they're never enough.
        
             | commandlinefan wrote:
             | Yeah - OTOH, it was a double-edged sword, since you had to
             | re-run the same validation on the server side, and you had
             | to be careful to make sure they were in sync.
             | 
             | Of course, this brings back painful memories of multiple
             | occasions where somebody said, "this is dumb, we already
             | validated it on the client side, we don't have to re-
             | validate it on the server side" and took out the server-
             | side validation (even after I tried in vain to explain to
             | them why that was a security hole...)
        
               | duxup wrote:
               | It's just hard to avoid the whole two pronged validation
               | situation. You just have to accept you're going to do it
               | on both ends.
               | 
               | If at all possible I think of client side as "active"
               | validation with lots of feedback and such built in. Back
               | end is "passive / defensive" where validation is more
               | 'nope just not gonna do that'.
               | 
               | Every time I think "let's see how much I can do this on
               | the back end" it ends up being kinda wonky, I'm sure it
               | is possible but just human interaction type stuff, I like
               | it on the front. Security, detailed rules, etc, back.
        
         | cygx wrote:
         | You could output HTML via document.write().
        
         | sodapopcan wrote:
         | ...and don't forget pre-loading images! We didn't have CSS
         | :hover back then and had to resort to image swaps for fancy
         | hover effects in menus :)
        
         | gmac wrote:
         | As I recall you could do what felt like quite a lot by abusing
         | image swapping and frames + document.write.
        
         | Zelphyr wrote:
         | JavaScript was quite limited at that point but then, so was
         | everything else. So by comparison, it actually gave a developer
         | a lot of relative control and power over a page.
        
       | _zamorano_ wrote:
       | Remainder of how hard is realizing you're witnessing history.
        
       | lr4444lr wrote:
       | ... and still looks like it hasn't aged a day in some ways.
       | 
       | https://www.jwz.org/blog/2010/10/every-day-i-learn-something...
        
         | severak_cz wrote:
         | opening via right click to private window works
        
         | hrafn wrote:
         | Note that the above link cannot be opened by clicking on it,
         | the site redirects away request with a HackerNews referrer. Can
         | still be opened by copying-and-pasting.
        
           | [deleted]
        
         | echeese wrote:
         | https://developer.mozilla.org/en-US/docs/Web/JavaScript/Refe...
        
       | cies wrote:
       | Not my fav announcement. This funny (I think) video shows why:
       | https://www.destroyallsoftware.com/talks/wat
       | 
       | Disclaimer: I like types, I hate automatic casting.
        
         | th0ma5 wrote:
         | It is wild to revisit some of the inspiration of the kind of
         | weaponized cynicism that hopefully we're getting away from.
         | This talk was funny for sure, but it started a large amount of
         | "computers are awful, look at what this stupid thing did" which
         | was very harmful. Not because it isn't true, but because
         | understanding why and how these things happen, dealing with and
         | educated people surrounding these things, and trying to make
         | things better is the goal (perhaps misplaced) of many in the
         | industry. It is incredibly easy to just shit on things.
         | 
         | Still a pretty funny talk for sure.
        
       | brk wrote:
       | I recall being at a local (Detroit) IT seminar around the time
       | Javascript was announced, and some guy from Sun with an English
       | accent going on and on about how safe javascript would be, since
       | it couldn't access local resources and they had purposefully left
       | out a lot of functions that could compromise the user. It's
       | changed a bit since then, I'd say.
        
         | Dangeranger wrote:
         | Being limited but safe may be the reason that JavaScript has
         | won out over Java. As I recall, applets turned out to be a
         | security nightmare.
        
           | krapp wrote:
           | Also, Javascript didn't require a compiler, and Java applets
           | were notoriously slow.
        
             | tonyedgecombe wrote:
             | I'm not sure JavaScript was any faster than Java at the
             | time.
             | 
             | I blame the failure of Java applets on Microsoft who
             | deliberately undermined them.
        
               | toyg wrote:
               | JS was definitely faster, but it wasn't really used it in
               | a modern sense anyway - just simple animations.
               | 
               | MS definitely had a lot to do with Java applets failing
               | though; after SUN fought to avoid being
               | embraced/extinguished by VisualJ++, MS just pushed their
               | own ActiveX tech to do the same thing, which was
               | inevitably more performant (because it was based on COM+
               | and other Windows-specific innards).
        
               | cesarb wrote:
               | It was faster. A page with JavaScript loaded instantly, a
               | page with Java locked up the whole browser for around a
               | minute while the JVM started. (That was probably also the
               | start of the "Java is slow" meme: anyone who had ever
               | visited a page with a Java applet immediately learned to
               | associate "Java" with "slow".)
        
               | meed2000 wrote:
               | Applets suffered a spin up of the mini VM time. And
               | applets couldn't affect the rendering of the html page,
               | they had their own 'canvas'.
               | 
               | I rather think JS was more appropriate as dev found more
               | use in dynamically altering the very html markup that
               | users saw, and after it was actually rendered.
        
           | toyg wrote:
           | Nah, Java applets lost because of the deployment nightmare
           | they had become after MS was blocked in their attempt to
           | coopt the language (they were barred from shipping
           | incompatible JVMs, so they stopped shipping JVMs and Java
           | IDEs altogether).
           | 
           | ActiveX was winning, but _that_ really was a security
           | nightmare.
           | 
           | Eventually enough of the useful parts of ActiveX crept into
           | JS enough to build real stuff with it.
        
             | specialist wrote:
             | 20/20: Java applets needed better integration, access to
             | the host browser's runtime. Like accessing the current
             | page's DOM, being able to hook the event loop.
             | 
             | I didn't care at the time. I hated all things HTML, CSS,
             | JS. Such a downgrade from state of the art. I regarded the
             | browser as terrible means to deliver, bootstrap applets.
             | Just like Flash.
             | 
             | One thing I didn't appreciate at the time was the genius of
             | HTTP and URLs.
             | 
             | I'm still completely baffled by the "worse is better"
             | thesis. I just can't understand why JavaScript was created,
             | much less why it succeeded.
             | 
             | One can understand how mistakes like \0 terminated strings
             | and SQL's NULL happen, become hard to undo. But JavaScript
             | is the original sin that just keeps poisoning. Other
             | platforms, ecosystems learn and grow and mature. JavaScript
             | stubbornly refuses to acknowledge truth and goodness, and
             | is all the more successful for it's belligerence.
             | 
             | Amazing.
        
             | xtracto wrote:
             | And Flash... I think a lot of the _commercial_ use cases
             | that Java was supposed to enable were actually filled by
             | Flash.
        
       | fuoqi wrote:
       | I wonder in how many billions of dollars future generations will
       | apprise this mistake.
        
         | Reedx wrote:
         | Enough billions to make up trillions.
        
       | hokumguru wrote:
       | Apparently this project was started the week that I was born,
       | nice.
        
       | DonHopkins wrote:
       | I love how the company contacts at the end include so many phone
       | numbers, only a few email addresses, and zero urls.
        
       | samstave wrote:
       | in 1997 Iworked at the first firm that adopted XML
       | 
       | Was on a conf call with VPs from Sun, and i said, and I quote
       | myself:
       | 
       | "So youre telling me that you have this shitty b2b system that
       | youre not happy with and you want us to implement XML to
       | accomodate"
       | 
       | and this VP was nixing it the whole time iwth "hand cut across
       | the neck" manurisms...
       | 
       | later I hired Dave Sifry - and had his team implement a b2b FTP
       | between us and sun...
       | 
       | I later went to him and stated " You should really make a linux
       | support company"
       | 
       | Linuxcare was founded, worth unicorn.
       | 
       | I got nothing
        
       | sradman wrote:
       | > JavaScript is an easy-to-use object scripting language designed
       | for creating live online applications that link together objects
       | and resources on both clients and servers.
       | 
       | This one document certainly captures the state of the software
       | industry before it was transformed by the Web (then Mobile then
       | Cloud). The vision of JavaScript being both server-side and
       | "isomorphic" is clearly articulated but it was a convoluted road
       | getting there.
       | 
       | Let's credit Google's V8 and Node.js for making performant and
       | concurrent/evented JavaScript ubiquitous. Netscape/Sun,
       | Microsoft, and Sybase abandoned their server-side JavaScript
       | efforts for Java/.net bytecode. Microsoft was the only relevant
       | browser until Firefox rose from the flames like a phoenix. Linux
       | and OSS software killed or maimed most of the companies
       | mentioned.
        
       | rodolphoarruda wrote:
       | Precisely the same time I used to think JS was a lighter version
       | of the Java language.
        
       | flohofwoe wrote:
       | Nothing technically wrong with Java and JS of course, but this
       | terrible PR piece which desperately tries to pitch Java as an
       | integral part of the web, going even as far as naming an innocent
       | scripting language for web browsers _JAVA_ script truly
       | demonstrates that the mid-to-end-90's were the dark age of
       | computing (at least the corporate side).
        
         | Kototama wrote:
         | For a starter, having no integer types and non-symmetric
         | comparison operators looks technically wrong to me.
        
         | codeulike wrote:
         | Java was the most buzzwordy thing imaginable back then.
         | Everything was Java Java Java
        
           | bluedino wrote:
           | "By installing Java, you will be able to experience the power
           | of Java"
           | 
           | https://www.joelonsoftware.com/2009/01/12/by-installing-
           | java...
        
         | chromanoid wrote:
         | Well I don't know if you are joking, but back then it was the
         | other way around. They put Java into JavaScript to pitch
         | JavaScript... I guess it worked almost too good...
        
         | toyg wrote:
         | It was actually a fairly exciting time...? OOP had really just
         | broken into the mainstream (with Java, the first OOP to really
         | take off) and would go on to become ubiquitous, spawning tons
         | of little new languages (including Python). There were multiple
         | vendors pushing VB-like products, some arguably better than MS
         | itself, giving high levels of productivity (who some argue have
         | never been achieved since). PCs had dramatically democratized
         | access, now anyone could build their own tools without having
         | to beg for server time, and sysadmin on Windows was so loose
         | that one could typically get away with anything (yes, virus bad
         | etc etc, but it was still a fun ride). Desktops had just become
         | a standard feature of every white-collar job and everyone was
         | busy trying to make sense of them; the smart folks made
         | millions selling line-of-business apps. And then the internet
         | arrived and everything had to be re-done as web-based (hello
         | Perl and ASP), _plus_ tons of intranet portals that were
         | horrible to use but fun to make, so to speak.
         | 
         | Maybe it's because I was 20 back then, but there was a sense of
         | fun and exploration in most computing that is somewhat missing
         | in this age of smart-everything, JS-everywhere, and total
         | surveillance.
        
           | blakesterz wrote:
           | I agree with you, it really was exciting. It was almost like
           | the opposite of the "Everything is awesome and no one is
           | happy" time we're living in now?
           | 
           | Everything was awful, and everyone was happy. Remember being
           | super excited the first time you saw an animated GIF!? Or you
           | could mouse-over a picture and there would be a popup that
           | said "hey don't touch my face"! Everything was slow and
           | crashed all the time, but it was new and really interesting
           | and fun. People were just figuring things out, and the new
           | stuff that was coming out was amazing at the time. Everything
           | was getting faster and better, but damn, it was hard to get
           | anything done.
        
             | anentropic wrote:
             | > Everything was awful, and everyone was happy.
             | 
             | Totally this!
             | 
             | Not sure if times were actually different, or it's just
             | that I was young then...
        
             | krapp wrote:
             | I literally remember the day in my school library when I
             | found out framesets were a thing and it blew my mind that
             | _this part_ of the webpage could move independently from
             | _that part._ And no one even uses framesets anymore.
             | 
             | And you're right - nowadays we can stream video, audio,
             | games, compile and run code from numerous languages right
             | in the browser, and the web has more interesting and rich
             | content than ever, but everyone is mad because that means
             | the web has moved beyond their childhoods and gotten
             | complicated with time.
        
               | toyg wrote:
               | _> everyone is mad because that means the web has moved
               | beyond their childhoods_
               | 
               | There is a bit of that, but there is also a realization
               | that we probably did not really _need_ most of these
               | "advancements".
        
               | krapp wrote:
               | Arguably, the web doesn't _need_ to be anything but a
               | simulation of paper documents connected with hyperlinks,
               | but if it had stayed that way, the world would have been
               | denied a great deal of creative and cultural expression
               | in other media (including code.) For all its faults, both
               | in the language and the ways that it 's been implemented,
               | Javascript on the web launched a revolution in writing
               | and publishing code akin to what the Gutenberg press did
               | for text.
        
           | bluedino wrote:
           | Java is like 3-4 years older than Python.
        
             | toyg wrote:
             | Python actually was first released in 1991, as James
             | Gosling and friends had just started working on Java, but I
             | can't even remember if python 1.x had classes _at all_.
             | 
             | Java was everywhere pretty much as soon as it landed in
             | 1995, because SUN pushed it like crazy and loads of shops
             | were actually looking for something better than C/C++ for a
             | large number of apps. By the time Python 2.0 was released
             | in 2000, OOP was pretty much a requirement for anything,
             | and I'm pretty sure that had classes. Python didn't reach
             | popularity in the mainstream until the late '00s anyway.
        
               | bluedino wrote:
               | Python had objects in Python 1.4, according to
               | documentation released on 25 October 1996. Python.org
               | doesn't have anything older than that on their site.
        
             | icedchai wrote:
             | You may have that backwards. The first releases of Python
             | happened in the early 90's.
        
               | bluedino wrote:
               | Ah - that's what I meant to post.
        
           | flohofwoe wrote:
           | Ok granted, it was not all bad :) For me the mid-90's were
           | traumatic because it was a transition from Amiga to PC (just
           | before Win95 arrived), which was like being thrown from a
           | bright Star Trek future back into the stone age. Also the
           | dream of building applications from reusable components led
           | to horrors like CORBA, COM and DDE.
        
         | pmarin wrote:
         | web _ASSEMBLY_ is not much better name.
        
           | k__ wrote:
           | Maybe we get WASM CPUs in the future, haha.
        
             | x86ARMsRace wrote:
             | Well, HTML5 super computers are the future.
        
             | usrusr wrote:
             | Well, the next regularly scheduled Apple ISA switch is
             | expected to be finished no later than 2035...
        
             | saagarjha wrote:
             | Why wait when you can bring back Jazelle for WebAssembly?
        
           | mrlala wrote:
           | Eh, the thing is until you said that it _never_ occurred to
           | me. However before I started to ever really code in the web
           | world I was always wondering if javascript was really like a
           | semi-java hack on the web or whatever.
           | 
           | Everyone knows that we are so far removed from assembly that
           | it creates zero confusion in reality.. javascript caused real
           | confusion.
        
             | pmarin wrote:
             | I allways though the name was an intended pun.
        
           | flohofwoe wrote:
           | Haha indeed, it could be worse though: JavaAssembly ;)
        
             | skocznymroczny wrote:
             | http://www.coboloncogs.org/HOME.HTM
        
         | tootie wrote:
         | In ye olden dayes, building big, interactive experiences on the
         | web wasn't possible without Java (or ActiveX). Even the first
         | iteration of JavaScript couldn't interact with the live DOM and
         | CSS hadn't come into being yet. It was a sincerely held belief
         | by technology professionals (myself included) that a desktop UI
         | platform was the only way to deliver rich experiences over the
         | internet. And honestly it may have to come to pass if the early
         | versions of Swing weren't so slow and ugly.
        
         | Dangeranger wrote:
         | My preference is still for something akin to the original
         | LiveScript or HyperScript.
        
       | overkill28 wrote:
       | I still don't know why they stuck the "Java" name on JavaScript.
       | Very confusing when the two languages are completely unrelated.
       | 
       | > Java programs and JavaScript scripts are designed to run on
       | both clients and servers, with JavaScript scripts used to modify
       | the properties and behavior of Java objects, so the range of live
       | online applications that dynamically present information to and
       | interact with users over enterprise networks or the Internet is
       | virtually unlimited.
       | 
       | Was this level of integration ever achieved? Did Java applets
       | actually have a JS API? Or is this just corporate double speak.
        
         | makecheck wrote:
         | There is a JavaScript interpreter built in to Java (or more
         | than one, in that you could choose at least one older one at
         | the time I tried it). I used this for a fairly complex app and
         | found it surprisingly easy to let it parse JavaScript and
         | affect the Java program, moving data back and forth.
        
           | dragonwriter wrote:
           | > There is a JavaScript interpreter built in to Java
           | 
           | Are you referring to Nashorn? If so, wouldn't "was" be the
           | correct verb, not "is"?
           | 
           | https://en.wikipedia.org/wiki/Nashorn_(JavaScript_engine)
        
         | valw wrote:
         | When you're in the business of sneaking in a Scheme-inspired
         | language into the universal programming platform in a world of
         | object-oriented dogma, you'd better add some camouflage ;)
         | 
         | And so the language was compromised in its name, and arguably
         | in its syntax and (lack of) macro system.
        
         | hathym wrote:
         | That is why it was renamed to ECMAScript
        
         | [deleted]
        
         | acdha wrote:
         | Marketing. Java was The Next Big thing and they wanted to jump
         | on board that bandwagon. The direct integration wasn't very
         | common but a lot of the JavaScript objects had similar names
         | (toString, etc.) and JS was commonly explained as a sort of
         | junior relationship.
         | 
         | Edit: expanding my not very common claim -- I first started
         | using JavaScript when it was called LiveScript in Netscape
         | betas, the second non-static website I built was Java (using
         | DB/2 on OS/2 -- I sure could pick winners!), and I worked at a
         | web development company until 2001. During that time, you'd
         | commonly hear about Java (along with Perl, PHP, Cold Fusion,
         | and even C++) and we used JavaScript heavily but I never once
         | met a client who was actually using server-side JavaScript
         | although they certainly existed.
        
           | ChrisRR wrote:
           | It's very odd, if someone nowadays called their language
           | CSharpScript, they'd get slapped with a C&D
        
             | m_st wrote:
             | According to the interview with Eich linked above: "Bill
             | Joy at Sun was the champion of it, which was very helpful
             | because that's how we got the name." Sure helps :-)
        
             | astura wrote:
             | Netscape had permission from Sun to use the "Java" name, it
             | was a partnership.
             | 
             | This press release itself even says it in the first
             | sentence
             | 
             | >Netscape Communications Corporation (NASDAQ: NSCP) and Sun
             | Microsystems, Inc. (NASDAQ:SUNW), today announced
             | JavaScript
        
             | acdha wrote:
             | This was voluntary. You have to remember that at the time
             | the residing hype kings were the so-called 4GLs (e.g.
             | Clarion, Clipper, PowerBuilder) and things like Visual
             | Basic, Pascal (Delphi), etc. so Sun and Netscape were
             | trying to present this as the pair of languages which you
             | used to build the web, which was already emerging as the
             | white-hot new thing starting to transform the world.
        
               | ajuc wrote:
               | Such a shame Clipper and Delphi didn't worked out.
               | 
               | In early 90s my uncle (now 60 years old electrical
               | engineer) taught himself clipper from 0 (no programming
               | background whatsoever, and no English language) and wrote
               | a software for capturing and analysing temperature curves
               | of polymer ovens at a factory where he works that is
               | still used to this day. They keep a DOS PC just to run it
               | :)
               | 
               | I don't think it's possible to do this with modern
               | programming technology, there's too many layers of
               | abstraction and unrelated asides blocking people from
               | "just making it work".
        
               | pjmlp wrote:
               | Delphi is still around, and there is a striving community
               | in Germany, big enough to keep conferences and magazines
               | going.
               | 
               | But yeah, Borland really messed up.
        
               | 725686 wrote:
               | My older brother still maintains clipper code that is
               | used in production.
        
             | hajile wrote:
             | Everything was fine because Sun owned the Javascript
             | trademark.
             | 
             | Oracle now owns that trademark today
             | 
             | https://tsdr.uspto.gov/#caseNumber=75026640&caseType=SERIAL
             | _...
             | 
             | For what it's worth, Microsoft lost a lawsuit over their
             | Java clone called J. Their Javascript clone was called
             | JScript.
             | 
             | They made .net and C# instead and probably would have tried
             | to make a new web language except that there was no room.
             | One could argue that that VB.net was that language to some
             | degree.
        
               | ojosilva wrote:
               | In fact Microsoft had their own browser scripting
               | language, called VBScript. It was released in 1996 and
               | only ran (runs) on Internet Explorer browsers (client-
               | side) and Windows as an interpreter (Wscript.exe).
               | 
               | I ended-up using it extensively for a period of time from
               | 1998 to 2002 to automate webpages that only ran in the
               | intranet. I also used Wscript to run certain OLE or ODBC
               | based automation (ie. grab data from Excel and write to a
               | file) that was clunky to write in Perl.
               | 
               | https://en.wikipedia.org/wiki/VBScript
        
               | DonHopkins wrote:
               | Now look at what's become of Sun's trademarked logo:
               | 
               | Zuckerberg's not-so-subtle message to Facebook employees:
               | Don't end up like Sun Microsystems
               | 
               | Facebook CEO Mark Zuckerberg has put a pretty hefty
               | reminder for Facebook employees to keep striving for
               | relevancy right outside the front door. An aging Sun
               | Microsystems sign, on the back side of the Facebook sign,
               | is a well-placed message to them.
               | 
               | https://www.geekwire.com/2014/zuckerbergs-not-subtle-
               | message...
        
             | bluedino wrote:
             | Nobody outside of developers knows what C# is, though.
             | 
             | Java was one of the biggest buzzwords of the late 90's.
        
               | identity0 wrote:
               | That's true, it's more like naming your language
               | "BlockchainScript". I could totally see someone doing
               | that today.
        
               | JackFr wrote:
               | "Scrypto"
        
               | cozzyd wrote:
               | I just checked and bitcoinscript.org seems to be owned by
               | a domain parker.
        
               | Arnavion wrote:
               | Bitcoin already has a script (it's what transactions are
               | made of) so that's not unexpected.
        
             | jen20 wrote:
             | scripts [1] suggests this has not been the case!
             | 
             | [1]: https://github.com/scriptcs/scriptcs
        
             | flowerlad wrote:
             | Remember, Sun needed Netscape to make Java successful.
             | Today Java is a server-side technology, but that's not how
             | it started its life. Java started its life as a technology
             | to build more powerful web pages (using embedded applets).
             | Sun needed Netscape to bundle Java into its browser. So if
             | Netscape wanted to leverage the hype that existed around
             | Java at that time then Sun had to let them.
        
               | pjmlp wrote:
               | They also needed Oracle and IBM, their two major partners
               | in the early Java days.
        
               | alasdair_ wrote:
               | >Java started its life as a technology to build more
               | powerful web pages
               | 
               | I'm pretty sure Java came from the work James Gosling did
               | on Oak, which was mostly used for embedded systems. I
               | remember a lot of the early documentation being OO
               | designs for devices like microwaves and CD players.
        
               | flowerlad wrote:
               | > _I 'm pretty sure Java came from the work James Gosling
               | did on Oak, which was mostly used for embedded systems._
               | 
               | Yes, when it was conceived it was indeed intended for
               | embedded systems but when it was released it was intended
               | as a tech for building client-side smarts into web pages.
               | 
               | Java was originally conceived as Sun's response to
               | General Magic's intelligent agent technology. Microsoft's
               | response to General Magic was Microsoft Bob, because they
               | saw General Magic's social interface as a threat to
               | Windows.
        
             | codetrotter wrote:
             | Sun was literally in on it though?
             | 
             | So it'd be like if whoever was announcing this hypothetical
             | C#Script was doing so together with Microsoft..
        
         | nickbauman wrote:
         | Yeah it was called Live Connect and it was pretty amazing. It's
         | long since gone though.
         | 
         | https://developer.mozilla.org/en-US/docs/Archive/Web/LiveCon...
         | 
         | FWIW as a Clojure/Script developer this technology would have
         | been kind of mind-bending if it still existed.
        
         | astura wrote:
         | Brendan Eich addresses that topic in this interview. The whole
         | interview is (very much!) worth a read but here's some key
         | parts about the name
         | 
         | https://www.infoworld.com/article/2653798/javascript-creator...
         | 
         | >It was all within six months from May till December (1995)
         | that it was Mocha and then LiveScript. And then in early
         | December, Netscape and Sun did a license agreement and it
         | became JavaScript. And the idea was to make it a complementary
         | scripting language to go with Java, with the compiled language.
         | 
         | >[The idea of an accessable scripting language] was very
         | strongly held by Marc Andreessen and myself. Bill Joy at Sun
         | was the champion of it, which was very helpful because that's
         | how we got the name. And we were pushing it as a little brother
         | to Java, as a complementary language like Visual Basic was to
         | C++ in Microsoft's language families at the time.
        
           | derefr wrote:
           | So, basically, JavaScript was originally annointed to serve
           | the function within the JVM ecosystem, that ended up being
           | served by Groovy?
           | 
           | Why didn't that happen? And why did it take so long before we
           | got Groovy instead, if Sun wanted was imagining something
           | like it way back in 1995?
        
             | smt1 wrote:
             | It's too bad JVM happened. Solaris was innovative before
             | Java, which became monetized primarily by the fees. They
             | released Self, SmallTalk, and Squeak before that. I think
             | the latter is still very innovative today, because of it's
             | Morphic interface (it's category theoretic). I think you
             | could teach kids the computational equivalent of pretty
             | high level mathematical physics, which is pretty
             | interesting relative to other standard CS101 intros (like
             | python, etc). TeleScript, which was basically inverse JVM
             | was also made around this time, it would have been
             | interesting if the Newton hadn't been discontinued:
             | 
             | https://en.wikipedia.org/wiki/Telescript_(programming_langu
             | a...
             | 
             | These days, ironically, Telescript is a model for how
             | distributed computation works in the 3rd world, and even in
             | the first world. But Telescript basically would have made
             | the lattice structures more hybridizable to project
             | information and jobs within the context of already existent
             | social networks and maybe provided a better nexus for
             | useful work done vs power given up (it was made on a very
             | astute observation about the energy, work, power, time,
             | information, transmission nexus) before anyone named a
             | "peer to peer network", a distributed consensus protocol,
             | or introduced money into the picture.
        
             | ojosilva wrote:
             | No. JavaScript was a web language for web developers to be
             | able to automate forms, etc, client-side. AFAIK, originally
             | it was never intended to run on the JVM server-side like
             | Groovy does.
             | 
             | Netscape did try to position server-side JavaScript as part
             | of its Enterprise Server package though, but it was not
             | JVM-based. But the environment was proprietary and not
             | compelling enough for a myriad of reasons. It ran server
             | JavaScript in CGI mode.
             | 
             | JavaScript took a long time to actually make it server-
             | side. First with standalone interpreters (ie. Spidermonkey)
             | and later with a full-fledged runtime and development
             | environment (NodeJS).
        
               | derefr wrote:
               | > No. JavaScript was a web language for web developers to
               | be able to automate forms, etc, client-side. AFAIK,
               | originally it was never intended to run on the JVM
               | server-side like Groovy does.
               | 
               | Sure, but that's not an argument against JavaScript
               | having potentially been a planned part of the JVM
               | ecosystem (or, at least, a language playing a _role_ in
               | the JVM ecosystem, without itself being hosted on the
               | JVM, instead maybe interacting with the JVM through some
               | kind of IPC or FFI bridge.)
               | 
               | Remember, Sun used to be trying to squeeze the JVM into
               | web browsers as well, in the form of Java applets. But we
               | never saw any real ability to script against these
               | applets. "Java applet 'engines' under JavaScript
               | control", could have been the portable equivalent to
               | "ActiveX components under JavaScript control."
               | 
               | You know how modern games involve 1. a self-contained
               | game engine written in C++ or C#, plus 2. the game itself
               | being mostly Lua scripting? If Sun had pushed harder, we
               | could have seen something like that in 1995, with web
               | browsers running JavaScript-scripted games calling into
               | Java game engines; long before we got equivalent HTML5
               | APIs like Canvas.
               | 
               | Probably, if the world had gone down that path, we would
               | have seen JavaScript gradually moving "into" the JVM; and
               | the JVM gradually coming to take the position that the
               | JavaScript engine takes in modern web browsers.
        
               | zepto wrote:
               | You actually could script against applets, it was just
               | incredibly clunky and slow, and so not worth it.
        
               | [deleted]
        
             | alisonkisk wrote:
             | Sun had some great people and some good ideas and products,
             | but as a coherent business it was a rolling train wreck.
        
               | Mountain_Skies wrote:
               | Sun had an unhealthy Microsoft obsession. When I was a
               | senior in college, Microsoft came to campus and gave a
               | two hour presentation on why we should work at Microsoft.
               | About a month later Sun came to campus and gave a two
               | hour presentation on why we should not work at Microsoft.
               | Sun workstations were very common in our engineering
               | program so we were ripe for the picking but Sun never
               | explained to us what was so great about working for them.
               | Well, except for one absolutely ridiculous video clip of
               | Scott McNealy standing on the roof of Sun HQ, playing the
               | electric guitar. Eyes were rolling out of everyone's
               | heads upon seeing that.
               | 
               | Looking back at interviews and industry articles from
               | that era, there is a common theme of Sun hating
               | Microsoft. Lots of companies and people hated Microsoft
               | but Sun seemed to make it their central ideology. As a
               | result, they took their eye off of making great
               | technology that customers could use to solve their
               | problems. It's a pity because they were so far ahead of
               | the game at that point that they could have developed
               | into something wonderful instead of being absorbed by
               | Oracle, with little trace left besides Java sleepwalking
               | through the modern era.
        
               | munificent wrote:
               | _> Sun had an unhealthy Microsoft obsession._
               | 
               | I think basically everyone did back then. There was a
               | pervasive understanding that if you were small enough,
               | Microsoft would use underhanded business practices to
               | crush you if you became a threat. If you made a
               | compelling product, Microsoft would clone it and use
               | their might to make it win.
               | 
               | It felt like taking a pottery class with a grizzly bear
               | in the room. Really hard to be like, "I should just make
               | the prettiest bowl I can" when you know at a moment's
               | notice your head might be swiped off.
        
               | hutzlibu wrote:
               | Which why they sadly ended up digested by Oracle.
        
               | pjmlp wrote:
               | Only after Google sent a couple of torpedoes and then
               | went as if it wasn't their business.
        
               | hutzlibu wrote:
               | What torpedoes do you mean?
        
               | pjmlp wrote:
               | Android and ripping Sun off.
               | 
               | Then they were hoping that no one would buy them, not
               | even themselves cared to own Java after their trick.
               | 
               | So now they push Kotlin, while researching Fuchsia, and
               | keep a bunch of lawyers quite happy.
        
               | hutzlibu wrote:
               | So implementing and pushing Java in Android was a torpedo
               | against Sun?
               | 
               | Interesting logic.
        
               | pjmlp wrote:
               | Android Java is not Java, and yes when I take someone's
               | product and don't pay what the license specifies, while
               | introducing an incomplete implementation, that is 100%
               | ripping off.
               | 
               | Thankfully we are going to have that settled in the near
               | future, and then Android folks can party all night long
               | with their Kotlin implementation and rename ART into KVM.
        
               | UncleEntity wrote:
               | > Sun Microsystems, Inc. (SUN) hereby grants to you a
               | fully-paid, nonexclusive, nontransferable, perpetual,
               | worldwide limited license (without the right to
               | sublicense) under SUN's intellectual property rights that
               | are essential to practice this specification. This
               | license allows and is limited to the creation and
               | distribution of clean room implementations of this
               | specification that...[list of requirements]
               | 
               | AFAICT the whole fight is over API's and not "don't pay
               | what the license specifies" as they give you the ability
               | to do a clean-room implementation without paying
               | royalties.
        
               | hutzlibu wrote:
               | Despite dalvic and co. it still pushed the Java
               | ecosystem, right?
               | 
               | Not what I would call a tornado in the meaning pf
               | destruction.
               | 
               | And about the license, well, it is disputed, right? I
               | only read about it tangential, but the case seemed far
               | from crystal clear to me.
        
               | pjmlp wrote:
               | As much as Microsoft did with J++.
               | 
               | No one needs Android Java slowing down the Java ecosystem
               | by imposing additional burdens on Java library authors
               | that also want to target Android.
               | 
               | Besides Google that is.
        
               | WorldMaker wrote:
               | Implementing it from scratch as a skunkworks reverse
               | engineering project designed to never need to pay license
               | fees upstream.
        
               | colejohnson66 wrote:
               | Despite the license allowing clean room reverse
               | engineering? Sun kindof shot themselves in the foot with
               | those words.
        
               | pjmlp wrote:
               | Where on the license? Please.
               | 
               | It explicitly only allowed the use of JavaSE on desktop
               | deployments, OpenJDK was yet to be made available.
        
               | ezekiel68 wrote:
               | I mean... if we took this version of the narrative at
               | face value, I guess we'd all have been better off with no
               | Compaq and hence no commodity PC clones.
        
               | pjmlp wrote:
               | Definitely, I miss Amiga, Atari, Acorn and friends, which
               | Apple is the only surviving one.
               | 
               | I was the only PC guy on my gang, and that was just due
               | to other factors not commodity.
        
               | alasdair_ wrote:
               | >Sun had some great people and some good ideas and
               | products, but as a coherent business it was a rolling
               | train wreck.
               | 
               | I had an internship at Sun in 2002. I distinctly remember
               | a town-hall meeting hosted by Johnathan Schwartz (CTO at
               | the time, later to be CEO) where an engineer asked
               | something to the effect of "this all sounds great, but
               | how does this actually make us money?" The engineer was
               | told in no uncertain terms that he shouldn't ask such
               | questions, that he should focus on engineering and that
               | he should trust that other people would handle the money
               | side.
        
             | fiddlerwoaroof wrote:
             | I think part of the original goal was for apps to be
             | written as Java applets and JavaScript use to bridge
             | between HTML and the applets.
        
           | calibas wrote:
           | I think if you combined the two "different" answers to why
           | it's named JavaScript, you get the truth. Yes, it was
           | promoted as a companion scripting language for Java, but that
           | was in part because Java was so hot at the moment, so
           | marketing had something to do with the decision to name it
           | JavaScript.
        
             | JxLS-cpgbe0 wrote:
             | Why "script" though? Aren't Java and JavaScript both
             | script(ing languages)?
             | 
             | Why not call it e-Java or Java XYZ or something?
        
               | calibas wrote:
               | This is all semantics, but the idea was that Java is a
               | "real" language for serious use and JavaScript is a
               | "script" that's much easier to use and doesn't involve
               | all the complications of a "real" programming language.
               | 
               | It was only kind of true back then, and not even remotely
               | true now. There really isn't a solid line you can draw
               | between a "script" and a "programming language". To me,
               | something like Python is right in between.
        
               | mlyle wrote:
               | To me, if something acts logically like it is run from
               | top to bottom, it's a scripting language. Python scripts
               | and JavaScript are in this category; Java isn't.
               | 
               | Additionally, explicit compilation/linking/assembly
               | shouldn't be required for a scripting language, even if
               | the interpreter does stuff kind of like this behind the
               | scenes for performance.
        
               | zepto wrote:
               | That makes Ocaml and Haskel into scripting languages.
        
               | kccqzy wrote:
               | You can't just put `putStrLn "Hello"` in the top level of
               | a Haskell program and expect it to work. You can do it in
               | a REPL, but that's besides the point.
        
               | zepto wrote:
               | Sure. I was responding to this:
               | 
               | "To me, if something acts logically like it is run from
               | top to bottom, it's a scripting language."
        
               | sdenton4 wrote:
               | I feel like "requires compilation" is a good first order
               | differentiator. And "has a somewhat sane type system" is
               | another.
        
               | kevin_thibedeau wrote:
               | tcc is fast enough to run C code (or langs targeting C)
               | as scripts.
        
               | cozzyd wrote:
               | Well, C++ can be interpreted (sort of, see CINT) and can
               | certainly be semi-transparently jitted (see cling).
               | Although it's certainly not designed for that!
        
               | wwright wrote:
               | Templates are turing complete and universally interpreted
               | AFAIK (I don't think any implementation compiles them
               | before evaluation?). There's also features like constexpr
               | these days.
        
               | colejohnson66 wrote:
               | C# 9 added "top level statements" which seems to be the
               | first steps towards usage in a script environment.
               | 
               | https://docs.microsoft.com/en-us/dotnet/csharp/whats-
               | new/csh...
        
               | vlunkr wrote:
               | > There really isn't a solid line you can draw between a
               | "script" and a "programming language"
               | 
               | I think it's easier to draw the line if you have the
               | requirements right. That's not the line that was being
               | drawn. it was scripting vs compiled languages. It was
               | very clear then which sides Java and Javascript fell on.
               | There are some weird cases now like compiling scripts
               | into different scripts, but in general it's pretty clear,
               | and Python is definitely a scripting language.
        
               | calibas wrote:
               | The great "script vs programming language debate". The
               | difference is clear to you because you have a clear
               | definition in your mind. The problem is that the
               | definition changes depending on who you talk to, which
               | invites endless debate.
        
               | vlunkr wrote:
               | Well it's a pretty bad debate if people aren't agreeing
               | on definitions. Hence this whole chain of comments.
        
               | mlyle wrote:
               | How could one consider Java a scripting language? It's
               | compiled to .class files, has no reasonable
               | interactivity, strict structure enforced upon the code,
               | etc. E.g. the antithesis of what makes us call something
               | a scripting language in basically every category.
        
               | JxLS-cpgbe0 wrote:
               | So Java _Script_ meant  "complement to Java, but
               | converted to machine language in the browser, instead of
               | compiled?"
               | 
               | (Thank you, genuine question)
        
               | mlyle wrote:
               | JavaScript is "logically" run line by line from the
               | beginning of the script. This may not be exactly true
               | anymore for performance reasons, but it's the logical
               | model behind it. A single set of expressions to run in
               | order "a=1+1;" is a conformant JavaScript script; hence,
               | it's a scripting language. It doesn't take much
               | imagination about how to have a JavaScript console that
               | operates interactively from user input.
               | 
               | Java code has lots of structure required to write a
               | minimal program. Java is transformed by compilation into
               | a set of .class files. Then, in turn, a loader loads,
               | resolves all the classes, and begins transforming and
               | executing code.
               | 
               | These distinctions can be muddy sometimes.
        
               | gpvos wrote:
               | More like interpreted rather than compiled. (I'm pretty
               | sure a google search on "interpreted versus compiled"
               | will get you up to speed with the basics on this point.)
               | This is generally seen as one of the main differences
               | between "scripting" and "serious" languages.
               | 
               | The twist is that the JVM (Java Virtual Machine) is also
               | a kind of interpreter, but can do on-the-spot ("just-in-
               | time") compilation of parts of the code as well.
        
               | pan69 wrote:
               | > So JavaScript meant "complement to Java
               | 
               | The whole JavaScript thing was just marketing. In 1995,
               | Java was THE hottest thing so associating it with Java
               | might fuel adoption/acception.
               | 
               | There is an old saying; Java is to JavaScript what Car is
               | to to Carpet.
               | 
               | Re. your compiled question. It's up to the browser on how
               | to execute JavaScript. E.g. Chrome has the V8 engine.
               | This is the VM that compiles and executes JavaScript
               | within Chrome. Other browsers might have different
               | engines.
               | 
               | https://en.wikipedia.org/wiki/V8_(JavaScript_engine)
        
               | hi41 wrote:
               | Sorry I am not an expert in Java, but doesn't the jvm
               | execute the .class files like bash would execute the .sh
               | scripts.
        
               | layer8 wrote:
               | Class files contain compiled bytecode, not source code
               | like shell scripts do. "Script" implies human-readable
               | source code. Java bytecode is binary, a kind of portable
               | machine language.
        
               | hi41 wrote:
               | Does this mean java .class falls in the middle of scripts
               | and native executables? Is this analogy correct? For
               | example, I think of native executable as Microsoft Word
               | where you can doubleclick and launch it. Whereas with
               | .class you have to run it on top of a jvm.
        
               | mlyle wrote:
               | Often even a "native" executable is opened by something
               | like the ELF interpreter, relocated, etc. Yes, a JVM is a
               | lot more heavyweight than these services, but...
        
               | pwdisswordfish4 wrote:
               | No. If you must insist on thinking of them as distinct
               | from native executables, then consider them foreign
               | executable instead--object files written for a different
               | machine architecture and a different loader convention.
               | There's really no middle ground they're occupying.
        
               | mlyle wrote:
               | This is a very good way to put it.
               | 
               | The super pedant in me, of course, would say they're a
               | sliver in the middle because they're targeted at running
               | in a software-implemented VM instead of on a real machine
               | architecture, and that this isn't all that different from
               | in-memory interpreter bytecode or something like a .pyc
               | written to disk...
               | 
               | But then something like the more complicated loaders for
               | native executables is a sliver in the middle, too. And
               | then you look at something like the AS/400 with super-
               | high level "instructions" and these distinctions get
               | super, super muddy.
        
               | layer8 wrote:
               | Not exactly. For one, class files are just components of
               | a program, so more akin to .o or .so files, not
               | executables. That set aside, they are binaries for a
               | virtual machine, the JVM. One difference to real machines
               | is that the bytecode doesn't have access to untyped
               | memory and to the hardware (not even "virtual" hardware),
               | and some instructions have more complex semantics than
               | you usually have in real hardware, but otherwise it's not
               | so much different from actual machine code. Overall it's
               | closer to native than to script, and therefore I wouldn't
               | quite say that it's in the "middle".
        
               | mlyle wrote:
               | Of course, there's murky things like Python which make
               | bytecode compiled forms behind the scene.
               | 
               | But there's a lot of magic involved in transforming Java
               | to class files, and then there's a lot of further magic
               | in resolving, loading, and eventually executing classes.
        
               | colejohnson66 wrote:
               | PHP does the same. It's compiled to a bytecode before
               | execution. But I don't think it's cached anywhere like
               | Python (but that may have changed in the decade since
               | I've used it)
        
               | meibo wrote:
               | PHP has had an OPCache as an add-on since 5.1.0(around
               | 2004), and by default since 5.5.0:
               | https://www.php.net/manual/en/intro.opcache.php
        
               | cubano wrote:
               | It better be cached or else that would be a total
               | tradegy... why wouldn't you automatically want to cache
               | the prerendered pages whenever possible?
               | 
               | It's not like writing a basic cache is very hard...or
               | just "borrow" one from an OS implementation.
        
               | nostoc wrote:
               | A scripting language is generally thought as a language
               | suitable for quick easy project, less so for large scale
               | software engineering. Verbosity of syntax, compilation,
               | presence of boilerplate code, static typing are all
               | things that make java unattractive as a scripting
               | language.
               | 
               | Java is great at what it does, which is not scripting.
        
               | Scarblac wrote:
               | I've never seen Java called a scripting language before,
               | actually.
        
           | dr-detroit wrote:
           | Not supposed to talk about Bill Joy hes not a gazillionaire
           | eCeleb
        
           | blakesterz wrote:
           | Interesting!
           | 
           | "JavaScript would have been the ideal name because that's
           | what everyone called it and that's what the books call it.
           | Microsoft couldn't get a license from Sun so they called
           | their implementation JScript. So ECMA wanted to call it
           | something and they couldn't get anybody to donate or they
           | couldn't get everybody to agree to a donation of the
           | trademark, so they ended up inventing ECMAScript, which
           | sounds a little like a skin disease. Nobody really wants it.
           | "
        
         | hi41 wrote:
         | As a new developer in early 2000, I couldn't tell the
         | difference between Java and JavaScript. I felt very ashamed of
         | that.
        
         | andi999 wrote:
         | Especially when you couldnt even google it (the other search
         | engines never found anything related to my keywords...)
        
         | reaperducer wrote:
         | _Very confusing when the two languages are completely
         | unrelated._
         | 
         | I once had a boss who thought I could write Java Android apps
         | because I knew Javascript from web development. "They're the
         | same thing, right?"
         | 
         | Lifting a line from somewhere deep in the bowels of the
         | internet, I told him that, "Java is to Javascript as ham is to
         | hamster."
         | 
         | Got fired shortly after that. Company folded a couple of weeks
         | later. Life moves on.
        
           | Rompect wrote:
           | I always use "Java is to Javascript as a car is to carpet"
           | but yours is also good.
        
         | Azleur wrote:
         | Marketing move. Same reason they shoehorned constructors into a
         | prototype based language. Java was all the rage in '95.
        
         | everlost wrote:
         | The biggest irony is that they believed Javascript
         | "complemented" Java!
        
           | stephenhuey wrote:
           | As others in this discussion have pointed out, Sun intended
           | this because they wanted people to see Java as the server
           | side language so even though applets could run Java in the
           | browser they never did much to improve performance because
           | they expected people to rely on JavaScript in the browser
           | (and buy their expensive servers to run Java).
        
         | robbrown451 wrote:
         | They aren't really unrelated as they explicitly made JavaScript
         | syntax "look like Java" which in turn "looked like C and C++".
         | 
         | This also helped with their LiveConnect stuff which allowed the
         | two to talk to each other. I think it was a huge selling point
         | that the languages felt similar, and felt comfortable to those
         | who already knew C and/or C++.
         | 
         | In those days I was doing a lot of pasting from one language to
         | the other, and editing "int" into "var" etc. Java and
         | JavaScript were similar in that, compared to C and C++, you
         | just sort of forgot about pointers and pointer syntax. (even
         | though they still sort of existed).
         | 
         | They sure seemed to me to be related. This is obviously most
         | true for light use of the languages (JavaScript especially was
         | designed for very light use)
        
         | bobince wrote:
         | > Did Java applets actually have a JS API?
         | 
         | Sure. LiveConnect was commonly used as glue to invoke and
         | interact with applets from JS.
         | 
         | I wouldn't necessarily say that it enabled a virtually
         | unlimited blah blah enterprise parp, but it had its uses. A
         | common hack was to put some shared storage in an applet so
         | multiple documents could use it to persist and communicate
         | cross-document data, back before browsers could do that
         | natively.
         | 
         | There was some really tedious bug in IE with the Sun VM that
         | occasionally allowed JS events to fire concurrently whilst
         | LiveConnect was waiting for a response from a method called on
         | an applet, which we never quite figured out. This was one of
         | many things that made JS+applet development unreliable and
         | unpleasant.
        
         | Yaggo wrote:
         | Not only the name, but also the C-like syntax was borrowed from
         | Java because of marketing reasons, despite the semantics were
         | inspired by quite different languages such as Scheme and Self.
         | What a pity!
        
         | Tade0 wrote:
         | > Did Java applets actually have a JS API?
         | 
         | It was possible to expose _something_ :
         | 
         | https://www.codejava.net/java-se/applet/liveconnect-the-api-...
        
         | ahlschwede wrote:
         | Before Ajax one way to do Web 2.0 style interactions was to
         | hide a Java applet in an invisible iFrame and feed data back
         | and forth from the page using JavaScript.
         | 
         | I think people forget that the early web had a proliferation of
         | plug-ins. JavaScript was most often used as glue between HTML
         | and plug-ins which had fewer platform incompatibilities than
         | the browsers. One of the reasons Flash became the dominant
         | plug-in was because it was universal enough to duplicate the
         | features of other plug-ins, including asynchronous
         | communication via Java applet.
        
           | moron4hire wrote:
           | IFrames were invented later (and initially, only in IE). You
           | also didn't ever need to put the applet in a separate frame.
           | You could just put the applet on the page. Indeed, putting it
           | in a frame would have defeated the purpose, because there was
           | no way to communicate across frames at the time.
        
         | bawolff wrote:
         | Yes, there was an api. https://developer.mozilla.org/en-
         | US/docs/Archive/Web/LiveCon...
         | 
         | That said, the nomenclature was pure marketng bs.
        
         | Supermancho wrote:
         | Some of the JS api (method names) matched the uniquely Java
         | api.
        
         | tbranyen wrote:
         | Definitely, HTML has several tags to help work with external
         | types. You can interface with java, vbscript, flash, pdf, etc.
         | You could absolutely expose top level methods and invoke them
         | in JS.
        
         | coliveira wrote:
         | It was just a marketing ploy based on the cooperation between
         | Netscape and Sun. Sun would provide interoperability between JS
         | and Java in the browser. Netscape would get the public support
         | of a major corporation at a strategic time in its fight against
         | MS.
        
         | AndrewStephens wrote:
         | Partly marketing but the integration certainly existed. As I
         | recall, public methods in the main applet class are exposed to
         | JavaScript. It was a little slow and clunky but it worked.
         | 
         | The idea was similar to how web components are used today. Your
         | web page would contain custom applets for a fancy input field,
         | a calendar control date picker, and whatever other controls
         | html didn't provide, all implemented as Applets.
         | 
         | It could have worked out and the web today would have looked
         | very different except that Java applets always performed
         | terribly on first load. Nobody wanted to have their customers
         | wait 30 seconds for the custom controls to initialize.
         | 
         | I sometimes wonder what might have been if Sun had actually
         | fixed the initialization of Applets. In many ways Applets were
         | nicer to develop than today's web components.
        
           | ethbr0 wrote:
           | Technically, why are / were Java applets so slow? I never dug
           | into the ecosystem deeply enough to understand (plus a bit
           | before my time).
           | 
           | Was it JVM startup time, Java xfactory-begat-y-begat-z code
           | init time, what?
           | 
           | Also, applets run outside the browser, correct? I.e. on the
           | browser's host system in a separate JVM process?
        
             | hajile wrote:
             | Java apps didn't integrate with regular HTML. They were
             | more like Flash apps with all those downsides.
             | 
             | Even today JS is interpreted before compiling to bytecode
             | because the startup latency is much lower (JIT only kicks
             | in once the background parsing is complete). Back in those
             | days, the extent of JS was a few click handlers or similar.
             | The JS interpreter would be done long before the JVM was
             | even loaded into memory.
        
               | mikro2nd wrote:
               | Oh, but they did. The DOM API was there from about 1.3
               | (iirc).
        
             | bitwize wrote:
             | The browser had an embedded JVM and applets ran right on
             | the page. It was very similar to WebAssembly today, just a
             | fair bit chuggier.
             | 
             | Two things caused people to backpedal from the applet
             | strategy:
             | 
             | 1) Because there was a large hiring pool of millions of
             | fresh grads leaving college with a little Java under their
             | belts, it having displaced C++ and Pascal as an
             | introductory language, companies began Java projects and
             | Java came to be seen as an enterprise language.
             | 
             | 2) The JVM that Microsoft implemented inside IE had
             | proprietary Microsoft extensions for greater Windows
             | integration. Sun sued Microsoft over this, and won. After
             | this, Sun pivoted to having Java be a browser plug-in in
             | order to provide a consistent cross-browser experience,
             | rather than having each browser vendor provide their own
             | implementation. The browser plug-in was way clunkier even
             | than the original embedded JVM was.
        
               | Mountain_Skies wrote:
               | The death of Microsoft's JVM is when I lost most of my
               | interest in Java. I understand why Sun didn't want
               | Microsoft's JVM to exist. They could see Embrace, Extend,
               | Extinguish coming for them but wow, did Microsoft's
               | version ever work better. I did go on to create a good
               | bit of Java code professionally but never touched it for
               | hobby work.
               | 
               | It really hurt Java in the browser when Microsoft refused
               | to ship Sun's code with Windows. Not sure why Sun assumed
               | that after suing Microsoft about the JVM, they'd be
               | willing to distribute Sun's bits for them. They really
               | seemed surprised and angry when this happened and were
               | unprepared for it. Maybe pivoting to browser plug-ins was
               | the only way forward they could see. Seems like the
               | actual path forward would have been to make the Sun JVM
               | better.
        
               | ethbr0 wrote:
               | It was a weird time.
               | 
               | Now, there's a straightforward business case and examples
               | of the many strategic and financial benefits of owning
               | development and guidance of an open platform.
               | 
               | Then... you either owned a platform completely (closed)
               | or didn't (someone else owned it). Vis: all the bs
               | machinations around proprietary Unix distributions.
               | 
               | Sun + Microsoft was likely seen more in the context of
               | "ceding ownership to Microsoft" than "growing the
               | platform, that we still have majority ownership of."
               | 
               | Ultimately, hardware vs platforms thinking. Or my-share-
               | of-zero-sum vs growing-the-market. Unfortunate.
        
             | kalleboo wrote:
             | My memory of the time (as a Mac user) was that the JVM
             | startup time was the big killer. It took like 30-60
             | seconds, during which it completely froze the
             | (cooperatively-multitasked) OS. Of course it ate up a big
             | chunk of memory at a time when our Mac had 16-24 MB of RAM
             | total. And Netscape 3 was unstable enough that in a decent
             | browsing session you'd have to relaunch it 2-3 times (each
             | time unloading the JVM). Lowering the available memory of
             | course worsened the stability.
             | 
             | The applets themselves performed alright. They took a few
             | seconds to initialize but we were used to waiting for JPEGs
             | and hover effects to load over a 14.4 modem so that wasn't
             | too bad relatively.
        
             | AndrewStephens wrote:
             | Sun seemed to have a real mental block when it came to
             | applets - people screamed at them for years about
             | performance and they refused to do anything about it.
             | Indeed, in 1995 the simpliest applet would take several
             | seconds to appear. In 2005 (about the time everyone stopped
             | caring), the same applet would take ... several seconds to
             | appear. They never got faster even as CPUs improved by
             | several hundred percent.
             | 
             | The Applets ran fast enough (even on 1995 machines) once
             | loaded, at least fast enough to be useful. But that delay
             | at startup when your CPU went to 100% and your hard drive
             | buzzed away, freezing everything else you machine was
             | doing, just killed any interest the public had in using
             | applets.
             | 
             | Part of the problem is that they JIT'ed everything without
             | caching it and that included the standard Java libraries.
             | So every applet started to execute, called some standard
             | API, the API was JIT'ed, that called some other part of the
             | API which was JIT'ed, etc, etc. I could never understand
             | why they didn't compile at least the standard libraries on
             | install or first use and save the result.
        
               | lolive wrote:
               | I think they still have the problem today. Which makes
               | any JVM language to be slow to run in elastic
               | environments (where hardware instances and server runs
               | quickly come and go depending on the load).
        
               | ethbr0 wrote:
               | From everything I've touched Sun was always very... Unix
               | in regards to UX.
               | 
               | As in "Well, just learn to deal with it. And be grateful
               | you have a graphical interface at all."
               | 
               | Making things better, or pushing the state of graphical
               | presentation art never seemed to even be a core interest,
               | much less competency.
               | 
               | Which is ironic, because a lot of that organizational
               | choice seems reflected in Java, e.g. having to boil the
               | ocean and re-implement everything for major arch changes.
        
               | smm11 wrote:
               | Sun briefly toyed with OpenStep, or essentially the UI of
               | the NeXT machines that morphed into today Apple's OS X
               | interface.
               | 
               | Anything would have been better than CDE or OpenWindows
               | at the time, and the NeXT GUI was quite innovative in the
               | 90s.
        
               | lenkite wrote:
               | This was deliberate - they were afraid Java would become
               | too popular on the browser side and people would stop
               | buying their heavyweight servers. They always pushed Java
               | as the server side language. If they wanted Java at the
               | client side - they wanted pure Java clients (webstart,
               | etc) not browsers hosting Java applets. Browsers hosting
               | Java applets were sneered upon.
               | 
               | JS eventually won the game here after IE advanced Web 1.0
               | with great support for AJAX, etc.
               | 
               | The funny thing is that if Sun was on the ball and didn't
               | abandon HotJava, your modern day browser would have been
               | a Java app.
        
               | pram wrote:
               | Yeah I dunno about that. HotJava was aggressively awful
               | to use.
        
               | AndrewStephens wrote:
               | I agree. One of the many, many, many areas where Sun
               | dropped the ball was the failure to implement a good HTML
               | control in Java. HotJava was very basic.
        
               | DonHopkins wrote:
               | I always thought JIT should be spelled JATWPT, for Just
               | At The Worst Possible Time (when the user's waiting for
               | the app to start up).
        
             | dtech wrote:
             | A combination of needing a heavyweight VM separately from
             | the browser and being either interpreted or having to wait
             | for a slow JIT.
             | 
             | Remember Javascript was slow as ass too until the late
             | 2000's when browsers were implementing efficient JS
             | engines. If web pages would've been build like common JPAs
             | they would've been as bad as applets.
        
             | other_herbert wrote:
             | They didn't have to be slow and you can communicate between
             | the two with a parameter in the applet tag " mayscript"
             | with that methods in the applet could be called from
             | JavaScript. I used that for an invisible applet that would
             | handle communication and drawing HTML to the browser..
             | kind. Spa like way back in the Wild West days when applets
             | could nearly do anything.
        
           | commandlinefan wrote:
           | > the integration certainly existed.
           | 
           | Definitely. Even the fourth edition of Javascript: The
           | Definitive Guide (published in 2002) still had an entire
           | chapter on Java/Javascript compatibility.
        
         | forgotmypw17 wrote:
         | It's because you could integrate a Java applet with JavaScript
         | in the page and have it all interoperate.
         | 
         | Pretty cool, too bad Java was so heavy...
        
         | pqb wrote:
         | > I still don't know why they stuck the "Java" name on
         | JavaScript.
         | 
         | It is still funny to see a job offer with a mistaken Java and
         | JavaScript posted in a title or in requirements section.
        
       | jfb wrote:
       | A date that will live in infamy.
        
       | thought_alarm wrote:
       | 8 months later, Microsoft would release VBScript.
        
         | greenkey wrote:
         | Which became dominant for a while, but cgi scripts on the
         | server-side were also hot.
         | 
         | Enter Perl and PhP server-side.
         | 
         | Then there was JSP, ASP, and ColdFusion, all server-side.
         | 
         | Rails! Also server-side.
         | 
         | Then back to JS.
        
           | toyg wrote:
           | Rails is like 10 years later tho... everything else you
           | mentioned was already around by 2000.
        
             | greenkey wrote:
             | Rails 1 was released in 2004.
        
       | shmerl wrote:
       | They should have used the name LiveScript. Java in the name was a
       | complete disaster.
        
       | brightball wrote:
       | It's funny seeing this. Yesterday I had to demo my 20 year old
       | built in desk and found a Netscape Navigator CD inside.
        
       | aproductguy wrote:
       | I legit miss Sun. Worked there for two years in 2002/03, and the
       | level of talent there was astounding.
        
       | joe_momma wrote:
       | Google where is your doodle honoring 25 years of javascript
        
       | greenkey wrote:
       | I wish Matz had been there with Rubyscript. JS wasn't as powerful
       | back then; it took over a decade for it to evolve enough where
       | people would really use it for much other than client-side
       | validation and neat UI tricks. In comparison, Ruby was a great
       | language to use, and it would've grown more quickly.
        
         | dan-robertson wrote:
         | I wish they'd just used scheme
        
           | colordrops wrote:
           | Exactly - rubyscript would have been just as hated as
           | javascript; something like scheme or some other well designed
           | language would have been better.
        
             | greenkey wrote:
             | That's kind of harsh. Ruby was a great language and
             | especially great syntax. Except for some duplication of
             | methods and early misspelling of one or two methods, it
             | would've been much easier for people to learn and do cool
             | things with that didn't happen in JS until years later.
             | 
             | Scheme's not bad, but I think if you compare The uptake of
             | both, Ruby did better? (Not counting Lisp.) It was a cool
             | language though; a lot of problems that would've been
             | avoided, if people could type all the braces in
             | correctly... for Lisp at least.
        
             | speedgoose wrote:
             | I think we would just have got more Java applets. The idea
             | of a programming language accessible to everyone did
             | contribute a lot to its success.
        
               | [deleted]
        
         | toyg wrote:
         | Ruby was first released on the same year. Python had been
         | around for 4 years already. What could have been, eh...
        
           | ptx wrote:
           | There was (in 1995) a Python-based web browser called
           | Grail[1] that could run client-side Python applets[2].
           | 
           | [1] https://en.wikipedia.org/wiki/Grail_(web_browser)
           | 
           | [2] http://grail.sourceforge.net/info/papers/restofus.html#ap
           | ple...
        
       | tacotacotacos wrote:
       | Complements Java?!?
       | 
       | I guess it also complements Erlang.
        
       | bangtoyib wrote:
       | nice
        
       | lioeters wrote:
       | Related - A project posted earlier today:
       | 
       | Mocha1995 - The world's first JavaScript engine written in 1995
       | by Brendan Eich, now compiled back to JS and WASM
       | 
       | https://github.com/doodlewind/mocha1995/blob/main/blog/about...
       | 
       | https://news.ycombinator.com/item?id=25300698
        
       | DonHopkins wrote:
       | Reminds me of one of Microsoft's first Dynamic HTML demos:
       | 
       | There were two buttons, one labeled "Our Web Site", the other
       | labeled "Our Competitor's Web Site".
       | 
       | When you moved the mouse over the "Our Competitor's Web Site"
       | button, it would quickly slide out from under your cursor before
       | you could click it!
       | 
       | Then when you stopped moving your mouse, the "Our Web Site"
       | button would slyly slide right underneath your mouse!
       | 
       | Dammit Microsoft!!! ;)
        
       | thrower123 wrote:
       | What a disastrous day for the world.
        
       | brundolf wrote:
       | What stands out to me is how much more foresight they had than
       | I'd thought about the ways JS would be used:
       | 
       | > With JavaScript, an HTML page might contain an intelligent form
       | that performs loan payment or currency exchange calculations
       | right on the client in response to user input. A multimedia
       | weather forecast applet written in Java can be scripted by
       | JavaScript to display appropriate images and sounds based on the
       | current weather readings in a region. A server-side JavaScript
       | script might pull data out of a relational database and format it
       | in HTML on the fly. A page might contain JavaScript scripts that
       | run on both the client and the server.
       | 
       | We tend to think of JS as having started out as just a way to
       | dynamically show/hide elements, maybe add an animation or two, on
       | top of fundamentally HTML-based web pages. But I see here
       | described what we now think of as "web apps", and even web
       | _servers_ (!) written in JS. They even talk about code-sharing on
       | the front and back ends, a la React in hybrid-mode. I had no idea
       | those things were in people 's minds at its inception.
       | 
       | Edit: Apparently they already ran JS on the server! I had no idea
       | 
       | > Netscape LiveWire enables JavaScript programs to be installed,
       | run and managed on Netscape servers
        
         | deft wrote:
         | ASP, the original one before .net, had a language called
         | jscript that ran the ie js engine on the server.
         | https://en.wikipedia.org/wiki/JScript
        
         | NegativeLatency wrote:
         | Didn't visual basic support some kind of client side code?
        
           | aidos wrote:
           | IE (3? 4?) let you specify vbscript instead of JavaScript as
           | the language in your script tags.
           | 
           | Edit: introduced in IE3 (1996) apparently.
           | https://en.m.wikipedia.org/wiki/Internet_Explorer_3
        
         | drblast wrote:
         | The industry is cyclical and to be forward thinking all you
         | have to do is describe what's already happened and assume it
         | will happen again. ;-)
         | 
         | The things being done with JavaScript today are not new, nor is
         | the idea that a server and client would coordinate to run
         | interactive apps. That fundamental concept has been
         | reimplemented in many different ways until we've landed on the
         | current rube goldbergian monstrosity that are web apps.
         | 
         | It shows that the desire to have users interact with a service
         | in particular ways will not go away. The technology used to do
         | that is mostly irrelevant.
        
           | brundolf wrote:
           | I'm not surprised that the architecture isn't new, I'm
           | surprised that web apps were already being talked about this
           | way using JS specifically. JS's early design flaws are often
           | written off as, "well it was never intended to be a _real_
           | programming language like it is today ". But from reading
           | this, that doesn't sound to be the case.
        
             | ChrisSD wrote:
             | I think JS' early design flaws were a result of being
             | written in a day more than anything to do with a specific
             | purpose (I exaggerate but not by much). Though it is true
             | that most people at the time used JS (if they used it) for
             | much simpler tasks than described in the article.
        
             | tracker1 wrote:
             | I don't so much think of them as flaws... the first use
             | case was form validation, and most of the fuzzy type
             | coercion makes a ton of sense through that lens, where ''.
             | 0, etc. coercion to falsy is easy for dealing with user
             | input. It's also why it's one of my favorite options for
             | ETL workloads.
             | 
             | It's just a matter of understanding the langauge. That
             | said, it's been my favorite language since well before the
             | "good parts" book.
        
           | ezekiel68 wrote:
           | I agree with your basic premise. However, in this particular
           | instance, what would have been the historical equivalent
           | ("already happened") of scripts sent by the server to the
           | client during the request response cycle, which could perform
           | layout and logic in the client?
           | 
           | If you're simply referring to code that could run on both
           | client and server, your point is clearer to me.
        
             | [deleted]
        
             | cubano wrote:
             | AJAX is part of the request response cycle?
             | 
             | Let's face facts...AJAX is the real secret sauce with JS
             | and what makes it truly useful.
        
           | smnrchrds wrote:
           | > already happened and assume it will happen again
           | 
           | So say we all!
        
             | osullip wrote:
             | Under appreciated BSG reference. Well done!
        
           | cubano wrote:
           | Yes for sure..I worked as a corporate contractor for AT&T in
           | 1990's and I was doing client/server apps using MSVC++ that
           | are basically identical to React-type wideweb dev...
           | 
           | Indeed, your absolutely correct in saying it was obvious
           | where webapps had to go, and that HTML and CSS just wasn't
           | going to get us there.
        
             | amenod wrote:
             | Nitpick: "...and that HTML just wasn't going to get us
             | there" (CSS came out in 1996).
        
         | AntiRush wrote:
         | Philip Greenspun has a great review of Netscape LiveWire from
         | the time.
         | 
         | https://philip.greenspun.com/wtr/livewire.html
         | 
         | You can see that the current JavaScript tooling complains are
         | nothing new under the sun:                 So what used to be a
         | few keystrokes in Emacs or Netscape            Gold now
         | requires three steps:              edit the .html file
         | recompile the .web file         restart the LiveWire app from
         | the appmgr
        
           | Lammy wrote:
           | This quote is adorable considering the size of most pages
           | today:
           | 
           | "This approach has several disadvantages, the first of which
           | is speed. You are gratuitously transporting potentially many
           | kilobytes of data back and forth across the network."
        
             | pmontra wrote:
             | I was there, kB were an issue. We had 56 kb/s modems vs
             | (let's say) 56 Mb/s fiber now. We gained a x1000 factor and
             | we're dealing with many MB now instead of many kB back
             | then. Page size grew x1000 too.
             | 
             | But loading pages was really slow, mainly because browsers
             | were slow. No parallel loading of images, no progressive
             | rendering. Those were the first optimizations.
        
         | giovannibonetti wrote:
         | Running the same logic and the same technology in the server
         | and the client was mandatory for realtime multiplayer games
         | since the 1990s. See this article from Valve [1] for a briew
         | overview of how client side prediction works. You should also
         | have the server process the data to avoid cheating by
         | modificating the client app.
         | 
         | [1]
         | https://developer.valvesoftware.com/wiki/Latency_Compensatin...
        
           | cubano wrote:
           | Wait a minute here...I was writing realtime multiplayer games
           | for Galacticomm's MajorBBS in thr late 80's and we just
           | pushed ANSI and made VERY interactive games without the need
           | for a rich client...altho we did envy AOL's bitmapped graphic
           | capabilities at times...
        
       | Zelphyr wrote:
       | I was just thinking the other day about how in late '95 I had
       | just bought my first PC and was teaching myself web development
       | and discovered JavaScript. I remember submitting bug reports to
       | Sun. I hadn't realized until the other day, after calculating the
       | timeline, just how new JavaScript really was at that point in
       | time.
        
         | Zelphyr wrote:
         | Correction: Submitting bug reports to Netscape.
        
       | Rochus wrote:
       | Wow, 25 years. Feels like yesterday, but several technological
       | revolutions happened in these years.
        
       | forinti wrote:
       | Such a shame that they didn't pick Scheme.
        
       | spamizbad wrote:
       | Anyone know what ever came of this?
        
       | divan wrote:
       | Such a sad day for an industry!
       | 
       | In a slightly different turn of events, web software ecosystem
       | perhaps could be different from the pile of hacks on top of hacks
       | it is now.
        
         | bdcravens wrote:
         | Java applets? Flash?
        
           | divan wrote:
           | I'm thinking mostly on a scenario where browsers could have a
           | competition of existing languages (C, C++, Java, Lua, etc).
        
       | ibraheemdev wrote:
       | Hopefully a few years/decades from now, we will be remembering
       | the day WebAssembly was announced. [1]
       | 
       | 1: https://github.com/WebAssembly/design/issues/150
        
       | sturza wrote:
       | We have to go back Marty!
        
         | toyg wrote:
         | "Hey you, take your damn javascript off her..."
        
       | siggi_pop wrote:
       | That's funny cause I announced a poo in pot that day.
        
       | newyorker2 wrote:
       | > JavaScript is analogous to Visual Basic in that it can be used
       | by people with little or no programming experience to quickly
       | construct complex applications.
       | 
       | >JavaScript scripts are designed to run on both clients and
       | servers, with JavaScript scripts used to modify the properties
       | and behavior of Java objects, so the range of live online
       | applications that dynamically present information to and interact
       | with users over enterprise networks or the Internet is virtually
       | unlimited.
       | 
       | JS has come a long way in 25 years :-)
        
         | [deleted]
        
         | syncsynchalt wrote:
         | > JavaScript scripts are designed to run on both clients and
         | servers,
         | 
         | Funny how long it took node.js to appear and make this bit of
         | press release a common reality.
        
         | ethbr0 wrote:
         | >> _can be used by people with little or no programming
         | experience to quickly construct complex applications_
         | 
         | ... has it? ;-)
         | 
         | (Note: joke with deference to the huge pool of incredibly
         | talented js developers! But there are still a lot of mind
         | bogglingly _terrible_ js devs too)
        
           | lostcolony wrote:
           | I think that's something JS also shares with Java, no. A huge
           | number of the people focusing in it are terrible devs.
        
             | ethbr0 wrote:
             | The relative trajectories of Java and JavaScript over the
             | years are fascinating.
             | 
             | Java became a language that you can toss a 100-developers
             | onto a project for, and incrementally grind out something
             | that has a mostly-consistent architecture. Aka the perfect
             | IBM Services language.
             | 
             | JavaScript became a language you can toss up a SPA in a day
             | from boilerplate glueing together frameworks and only
             | writing the use-specific bits. Aka the perfect web
             | developer language.
             | 
             | As other commenter said, bad developers are probably a
             | consequence of demand > supply for any language.
        
             | snazz wrote:
             | It's popular and taught in schools, so I don't think this
             | is really surprising.
        
           | hutzlibu wrote:
           | There are lots of terrible js devs, because js is easy to
           | start with.
           | 
           | I bet most js devs would not be able to make a "hello world"
           | in C. And pointers? What is that?
           | 
           | So for those people(not meant in a negative way) it is good
           | that they can use a language to get things done, even if they
           | have no academic background.
        
             | johannes1234321 wrote:
             | Even great JavaScript developers don't have to be able to
             | do C and pointer stuff. This has value, but there are many
             | other things which bring more applicable value.
             | 
             | However there are toooo many "jQuery developers" with no
             | understanding of the underlying things, while JS+libraries
             | enabled them to do quite fancy things.
        
               | hutzlibu wrote:
               | Yes, but my point was, if you know about pointers, you
               | are likely a better js dev than average as you have some
               | background knowledge about the computer. And know what
               | memory is and why it is not unlimited. And why some
               | operations are expensive and others not.
               | 
               | Also, it did help me recently, working with wasm. Not
               | compiling it yet, but using a libary.
        
               | johannes1234321 wrote:
               | For that I have seen too much code from C hackers, who
               | consider _each_ abstraction bad and try to outsmart the
               | compiler, while seeing great architectures in JavaScript
               | from people who have no idea what a pointer might be.
               | 
               | Being capable of two different languages (TS and JS
               | doesn't count ;)) however is a useful indicator.
        
               | hutzlibu wrote:
               | "while seeing great architectures in JavaScript from
               | people who have no idea what a pointer might be."
               | 
               | Those people have to be naturals, though. Or really just
               | focused on javascript and only javascript if they know
               | about software architecture but nothing about compilers
               | or pointers.
               | 
               | But sure, you definitely can write bad JS, if you are
               | forced to use JS, when you wanted to use C (++) ... which
               | probably happened to a lot of people, which is why we see
               | the hate of JS in that intensity.
        
           | duxup wrote:
           | Presumably anything popular enough has a good chunk of
           | terrible devs?
           | 
           | I'm guessing there are some very unpopular languages out
           | there that the % of highly skilled devs is pretty high, but I
           | don't know if that means much ;)
        
             | ethbr0 wrote:
             | Curious about the relative areas of esoterica...
             | 
             | Are there bad COBOL developers still practicing? FORTRAN?
             | 
             | What about Ada? Erlang? Smalltalk?
             | 
             | The mainframe families?
        
               | johannes1234321 wrote:
               | Certainly. Depending on your definition of terrible.
               | There are people who can keep the things running, but
               | only do patch on patch to keep things together, but no
               | architectural work, making more and more mess and we'll
               | knowing they are unreplacable. (Partially encouraged by
               | bad management direction)
        
               | Aperocky wrote:
               | There could be bad developer in COBOL but you would never
               | hear about them.
        
       | coldtea wrote:
       | No algebraic types. Less speed than Smalltalk. Lame.
        
       | bisRepetita wrote:
       | >Oracle Corporation Mark Benioff: (415) 506-7000
        
       | forgotmypw17 wrote:
       | I remember this, when the HTML chats didn't need to be manually
       | refreshed anymore...
       | 
       | I still test with Netscape 2.0 out of respect, and some JS
       | features work with it on my site.
       | 
       | The Web is just amazing, I can write across 25 years of platforms
       | from a dozen different vendors, totally unrelated, and it works
       | in all of them!
        
       | mseepgood wrote:
       | > A server-side JavaScript script might pull data out of a
       | relational database and format it in HTML on the fly
       | 
       | I didn't know that server-side JS was a thing back then.
        
         | rbg246 wrote:
         | Think it was this (I am sure someone here will know better):
         | 
         | https://en.wikipedia.org/wiki/Rhino_(JavaScript_engine)
         | 
         | Albeit it was two years after the announcement.
        
           | philo23 wrote:
           | Yeah, I remember people talking about Rhino when node.js
           | originally came out, saying things like it's been tried
           | before and wouldn't catch on.
        
         | k__ wrote:
         | There were a few backend products that used server-side JS
         | before Node.js
         | 
         | The Netscape Server had JS in 1998.
         | 
         | https://docs.oracle.com/cd/E19957-01/816-6411-10/contents.ht...
        
         | [deleted]
        
         | based2 wrote:
         | http://www.internetnews.com/dev-news/article.php/55431/Broad...
        
         | timw4mail wrote:
         | Classic ASP had JScript, I once had the dubious pleasure of
         | using JScript instead of VB on an ASP website.
        
           | TomGullen wrote:
           | Ugh, did some freelance work when I was younger in classic
           | asp, got a project do work on an asp site and day one turned
           | up it was all jscript! Nightmare!
        
         | sradman wrote:
         | Netscape had LiveWire, Microsoft had ASP, and Sybase had
         | PowerDynamo. The first version of ASP was interpreted and
         | supported pluggable scripting engines including JScript and
         | VBScript. The Netscape and Sybase DynaScript interpreters ran
         | on various flavors of Unix and RISC chips and were used much
         | like PHP, Rails, and Django; web interface to relational
         | databases.
        
         | vesinisa wrote:
         | It wasn't. They basically predicted Node.js 15 years before its
         | inception.
         | 
         | EDIT: Okay, server-side JS indeed long predates Node.js. See
         | below.
        
           | BigFatGuy wrote:
           | Netscape Enterprise Server executed server-side JavaScript
           | ("SSJS")
           | 
           | https://docs.oracle.com/cd/E19957-01/816-5653-10/816-5653-10.
           | ..
        
           | peteri wrote:
           | It was also an option for IIS as well as vbscript in classic
           | ASP pages.
        
           | icedchai wrote:
           | It was. I developed sites using Netscape Livewire, the server
           | side JS in Netscape Enterprise Server. It was probably closer
           | to ASP and PHP scripting, mixing HTML, client-side JS, and
           | server-side JS in the same file.
        
         | tootie wrote:
         | This was later but there was an entire server-side JS stack
         | called Helma back in 2008:
         | https://blog.astithas.com/2008/04/javascript-on-server-with-...
        
       | BasDirks wrote:
       | This is an important document, because it disproves the prevalent
       | notion that Java and JavaScript have nothing to do with each
       | other.
       | 
       | JavaScript has come a long way, to where the shame of any self-
       | respecting engineer has been reduced to a bearable minimum!
        
         | DonHopkins wrote:
         | No, it actually proves the notion that Java and JavaScript
         | having something to do with each other was just marketing
         | bullshit.
        
         | pluc wrote:
         | I wouldn't say bare minimum, JS still is all stupid about
         | types.
        
       | annadane wrote:
       | This has made a lot of people very angry and is widely regarded
       | as a bad move
        
       | blablabla123 wrote:
       | > complementary to and integrated with Java
       | 
       | That didn't go so well. It's well integrated with Webkit at least
       | ;)
        
       | [deleted]
        
       | cicero wrote:
       | I remember being very excited about this announcement. I had been
       | learning about Java, but I only had an HP workstation, which ran
       | HP-UX Unix at work, and a Macintosh at home. Neither of them had
       | a Java implementation yet, but I could run Netscape Navigator
       | with JavaScript. I gave an enthusiastic talk on JavaScript at the
       | next meeting of our local Java Users Group.
       | 
       | However, as I got to know the language better, my enthusiasm
       | dwindled due to what I thought to be a strange type system. Also,
       | I got access to Java implementations on HP-UX and Macintosh, so I
       | never went back to JS. This has always limited my ability to do
       | web front-ends, but now I'm looking to using Blazor for that.
        
       | supernova87a wrote:
       | I'm glad they added all the individual contact information at the
       | bottom -- I'm going call up Mark Benioff at Oracle (415) 506-7000
       | to ask him how to download the source!
        
         | mattl wrote:
         | That's just the main Oracle number I'm sure
        
           | supernova87a wrote:
           | I'm not sure, but I think he's no longer at Oracle.
        
             | mattl wrote:
             | Probably not
        
         | kkotak wrote:
         | Yep, before the Paypal mafia, there was the Oracle mafia :)
        
           | xtracto wrote:
           | I think technology-wise, the Sun mafia were the cool kids. Or
           | the Silicon Graphic mafia and even Microsoft.
           | 
           | I was born in 1981, and the "cool" technology places to be
           | when I was growing up were Microsoft, Sun and
           | SiliconGraphics.
        
       | desmap wrote:
       | OT: I recently learned C++ after doing JS/TS for years. This was
       | an eye-opener because there were so many similarities which JS
       | inherited from C/C++. Plus stuff I've seen in other languages and
       | environments.
       | 
       | After this, I thought that everybody should learn C/C++ at
       | school, it's like Latin to other languages (I learned Turbo
       | Pascal at school and didn't like how it handled pointers and its
       | overall elaborative style).
        
         | vips7L wrote:
         | C/C++ isn't a language! They're completely separate.
        
           | desmap wrote:
           | I know this very well, still both have similarities to JS and
           | eventually, C++ evolved from C. No need to be snarky.
        
       | xtanx wrote:
       | FYI the internet archive is currently having a 2-to-1 matching
       | campaign.
       | 
       | https://archive.org/donate/
        
       | doublerabbit wrote:
       | It's a shame too that TCL wasn't chosen to be the script of
       | choice.
        
         | DonHopkins wrote:
         | There was a whole war about that, in which Sun originally
         | supported TCL (having hired John Ousterhout), that was started
         | by RMS firing the first shot ("Why you should not use TCL"),
         | but which TCL eventually lost.
         | 
         | The Tcl War (1994) (vanderburg.org)
         | 
         | https://news.ycombinator.com/item?id=12025218
         | 
         | https://vanderburg.org/old_pages/Tcl/war/
         | 
         | Why you should not use Tcl. Richard Stallman
         | (rms@gnu.ai.mit.edu). Fri, 23 Sep 94 19:14:52 -0400
         | 
         | https://vanderburg.org/old_pages/Tcl/war/0000.html
         | 
         | John Ousterhout's classy reply:
         | 
         | https://vanderburg.org/old_pages/Tcl/war/0009.html
         | 
         | Personally, I was on the side of ScriptX at the time
         | (essentially object oriented scheme with a more traditional
         | syntax and a nice multimedia class library including
         | QuickTime), but it wasn't mature or open enough at the time,
         | and we lost too:
         | 
         | ScriptX and the World Wide Web. "Link Globally, Interact
         | Locally". By Don Hopkins, Kaleida Labs.
         | 
         | http://www.art.net/~hopkins/Don/lang/scriptx/scriptx-www.htm...
         | 
         | https://en.wikipedia.org/wiki/ScriptX
         | 
         | The real tragedy is that the script of choice for the web was't
         | Lua:
         | 
         | https://news.ycombinator.com/item?id=12027092
         | 
         | by DonHopkins on July 3, 2016 [-]
         | 
         | Around the time leading up to the TCL war, Lua was peacefully
         | and quietly born in a manger at the Pontifical Catholic
         | University of Rio de Janeiro, Brazil:
         | 
         | "In 1993, the only real contender was Tcl, which had been
         | explicitly designed to be embedded into applications. However,
         | Tcl had unfamiliar syntax, did not offer good support for data
         | description, and ran only on Unix platforms. We did not
         | consider LISP or Scheme because of their unfriendly syntax.
         | Python was still in its infancy. In the free, do-it-yourself
         | atmosphere that then reigned in Tecgraf, it was quite natural
         | that we should try to develop our own scripting language ...
         | Because many potential users of the language were not
         | professional programmers, the language should avoid cryptic
         | syntax and semantics. The implementation of the new language
         | should be highly portable, because Tecgraf's clients had a very
         | diverse collection of computer platforms. Finally, since we
         | expected that other Tecgraf products would also need to embed a
         | scripting language, the new language should follow the example
         | of SOL and be provided as a library with a C API."
         | 
         | http://www.lua.org/doc/hopl.pdf
        
           | doublerabbit wrote:
           | Awesome read. Thank you.
        
       ___________________________________________________________________
       (page generated 2020-12-04 23:00 UTC)