6 ms·
> Brendan Eich implemented the first prototype for JavaScript in 10 days, in May 1995. And 28 years later, the world is still investing untold millions of doll
by lemming 3y ago
> Brendan Eich implemented the first prototype for JavaScript in 10 days, in May 1995.
And 28 years later, the world is still investing untold millions of dollars, and untold person-years of effort, working around it.
- skrebbel 3y agoThis is getting so old. It’s also dated, modern JS is a pretty great language.
- soggybutter 3y agoModern JS is a passable language only after a tremendous amount of time and effort was invested to retrofit it as such. For all of the purported isomorphic benefits, I still don't know why anyone would choose to use it outside of being forced to in browsers
- thecopy 3y agoI don't really mind that "a tremendous amount of time and effort was invested" into JS. It works great for me and my team and we are hugely productive using it. That why. It works and we deliver a lot of value.
- nitwit005 3y agoYou don't mind, because someone else spent the money. The people signing the checks probably did care.
- Mystery-Machine 3y agoIt works great for you because you haven't seen better. Which other languages do you have more than 1 year of professional experience with? May I answer that for you? None. Just because you've just discovered a knife, doesn't mean it's the best tool to eat the soup with.
- djbusby 3y agoAll the "good" languages have tremendous effort - it's how they get good. Nothing starts great...it's a journey. We've been watching the sausage being made.
- gowld 3y agoMost languages were OK and got enhancements, JS was terrible and got repaired. Python, for example, got a lot better a lot faster than JS did.
- Mystery-Machine 3y agoJust because "it's a journey" and we invested tremendous effort, doesn't mean it's suddenly great. It's a terrible language with many illnesses, even today's modern version, because it's kept its diseases from the past. It surely is lightyears better than what it used to be, but it's still a pile of turd IMO (I work with JS every day).
- londons_explore 3y agoJavascript, like python, was "simple yet flexible". Thats what made them successful. When a language is successful, people start to bolt on extra bits of syntax and features (async, prototypes/classes, lambdas, etc). Eventually it is no longer simple, and the learning curve gets steeper for new users. Someone comes up with a new simple yet flexible language, all the new users start with that instead, and the cycle repeats. BASIC/visual basic/VB.net went through that cycle in the 90's. C then C++ went through that in the 2010's. Python/Javascript is going through that now. Go is about to go through the same.
- jonny_eh 3y ago> a tremendous amount of time and effort was invested to retrofit it as such Great things require tremendous effort and even time.
- numbsafari 3y agoThat’s why git and JS don’t really belong on this list without a massive asterisk. It’s not like JS you use today is the same as the one that took “10 days”. Same goes for git.
- falcor84 3y agoNevertheless, there's something amazing about being able to release the first version of something so world-changing so quickly.
- IshKebab 3y agoModern Typescript is fairly decent. Plain Javascript is still awful. And I wouldn't say either are great. I especially don't understand why Javascript doesn't have a "modern" mode where `var` and `==` are banned, prototypes are immutable, etc. You can do all that with linters but the people that need help with that stuff don't know how to set up a linter in the first place or what options to choose.
- post-it 3y ago> You can do all that with linters but the people that need help with that stuff don't know how to set up a linter in the first place or what options to choose. Then how would they know how to enable "modern" mode? Junior devs shouldn't be setting up any of that stuff anyway, they should be given a laptop with VSCode + prettier already installed, and all of the config they need should be in the project repo.
- Mystery-Machine 3y agoThe language specification should have a directive similar to "use strict" (the JS doctype kinda thing), something like: "use es23"
- IshKebab 3y ago> they should be given a laptop with VSCode + prettier already installed, and all of the config they need should be in the project repo. Most Javascript beginners do not already have a Javascript programming job.
- post-it 3y agoIf I don't have to work with them, I don't care how they write their JS.
- soperj 3y agoAre all variables still global unless defined not to be?
- bunga-bunga 3y agoNot in a module context: # a.mjs (()=>{ a = 1 })(); # in a shell $ node a.mjs ReferenceError: a is not defined
- post-it 3y agoNo, as of eight years ago. https://en.wikipedia.org/wiki/ECMAScript_version_history#ES2015 https://en.wikipedia.org/wiki/ECMAScript_version_history#ES2...
- soperj 3y agothanks!
- bmacho 3y agoI'd rather say yes. AFAIK core javascript works exactly like 25 years ago, and they haven't changed anything on it, not removing a single keyword or altering a semantics of any less used function, so your 25 years old javascript programs can still run in modern browsers.
- Mystery-Machine 3y agoThe short answer is: yes. If you do <script scr=...> And in the .js file: var x = 5. That x is global.
- lemming 3y agoI didn't say anything about JS being bad. But this article is predicated on the assumption that doing things fast is good. I think it's hard to argue that if Eich had spent 20 days (or perhaps even 30 days!!!!) we would have been in a much better place for the last couple of decades. We're not working around the fact that JS is intrinsically a bad language, we're working around the fact that it was ridiculously rushed.
- skrebbel 3y agoHe made the world’s most popular programming language in 10 days. By most people’s definition that’s very impressive. Sure, he did it mostly by being in the right place at the right time. But lots of geniuses tried to do web programmability before, eg with java applets. They were in the right place at the right time too. They spent man years getting it all right, and even Eich’s very first 10-day hacked version of JS (or, well, LiveScript) was better. Don’t dismiss all the stuff he got right. It’s a lot!
- jljljl 3y agoA lot of red-tape and delays in modern projects is contending with debt from "Fast" projects
- djbusby 3y agoIf done right, the FastThing gets the money flowing to refactor into the GoodThing
- netghost 3y agoIt's the "if done right" bit that's so tricky. So often though the GoodThing doesn't have a clear payoff and another FastThing does.
- jljljl 3y agoSure, but you have to reinvest that money too. And it's a bit misleading to take just the FastThing cost and disregard the GoodThing costs. For example -- it took 10 days to build a JS prototype, but 10 more years of evolution before it became the dominant Web Development language.
- chrisco255 3y ago28 years later the web is a thriving platform responsible for trillions of dollars of economic activity, of which JS is a core component.
- gowld 3y agoThat's thanks to the HTML and DOM API, not "JavaScript". Early web companies didn't even need JS; every interaction coulf reload a page.
- ben_w 3y agoJS is a core component to all that in the same way that coal and oil are core to the industrial revolution: not the best, but it's easy and cheap and everyone has a lot of experience and sunk-cost investments.
- nitwit005 3y agoSure, but they could have made something very different, and that would still be true. People just have no choice but to use JS. Plenty chose Flash, Java, and friends when there were other options.
- kevinmchugh 3y agoAnd JavaScript beat those.
- nitwit005 3y agoNot due to some sort of virtue of the language being better. The browser devs wanted to cut down the security surface area. Javascript wasn't as removable as the plugins that used other languages were.
- drewda 3y agoFor what it's worth, I miss Adobe Flex.
- inopinatus 3y agoSteady on. I’m no fan of JavaScript either but it seems unfair to damn it so completely with such a backhandedly vacuous accolade. Some folks might not even get the irony.
- paulddraper 3y ago> the world is still investing untold millions of dollars, and untold person-years of effort because of the positive ROI