Should JavaScript Be Renamed? (kieranpotts.com) 170
Software engineer Kieran Potts asks: does JavaScript need to be renamed?
There's no doubt there are problems with JavaScript's branding...
- Correctly, "JavaScript" refers to a subset of ECMAScript specified by Mozilla, but the word is used interchangeably to refer to multiple different ECMAScript supersets, depending on context.
- JavaScript is a trademark of Oracle Corporation, which doesn't fit comfortably with the language's position as a central component of the web platform, which is meant to be built entirely from open technologies and standards.
- There isn't even an official logo for JavaScript, let alone a cute mascot like Go's gopher or PHP's elephant.
- And famously, JavaScript is unrelated to Java. This has confused the hell out of non-technical managers and recruiters for decades.
The article also suggests "a standard convention" to identify the runtime's host system (for example, "WebJS" or "ServerJS").
But in response to the question of rebranding JavaScript, "the most common, knee jerk reaction was a quick guffaw and an exclaimed 'no!'" notes tech columnist Mike Melanson, "while others offered that the simple contraction to JS would suffice."
- Correctly, "JavaScript" refers to a subset of ECMAScript specified by Mozilla, but the word is used interchangeably to refer to multiple different ECMAScript supersets, depending on context.
- JavaScript is a trademark of Oracle Corporation, which doesn't fit comfortably with the language's position as a central component of the web platform, which is meant to be built entirely from open technologies and standards.
- There isn't even an official logo for JavaScript, let alone a cute mascot like Go's gopher or PHP's elephant.
- And famously, JavaScript is unrelated to Java. This has confused the hell out of non-technical managers and recruiters for decades.
The article also suggests "a standard convention" to identify the runtime's host system (for example, "WebJS" or "ServerJS").
But in response to the question of rebranding JavaScript, "the most common, knee jerk reaction was a quick guffaw and an exclaimed 'no!'" notes tech columnist Mike Melanson, "while others offered that the simple contraction to JS would suffice."
Yes (Score:5, Funny)
Re: (Score:2)
Not even there it's really a good language.
Please let it die.
JavaScript+Mithril/HyperScript+Tachyons is awesome (Score:3)
Look, I know JavaScript has lots of issues (wow, do I know from years of working with JavaScript and TypeScript). I've been programming about forty years (since a teenager learning 6502 Assembly on a KIM-1), and in general I'd prefer to use a language and environment more like Smalltalk or Clojure or Racket. Ideally, browsers would have supported a Smalltalk-like VM (webassembly-ish) from the start. But JavaScript, given its Scheme roots, especially now with ES6 and ES7 advances including async/await, can b
Frankly, it isn't as shitty as its reputation. (Score:2, Troll)
PHP, VB, C++ (sorry, I do think that), etc are also strong contenders.
JS's implicit casts are insane, yep. But languages with implicit casts are generally insane. There is no sane way to do it.
Its OO system is merely misunderstood, and a bit cumbersome in its implementation, but not bad. Just different from class-based systems. (Which, IMHO, are a bad concept that I consider constraining and harmful.)
The rest comes from it being the language for every newbie and hack out there. Which is not the language's f
Re: (Score:2)
while others offered that the simple contraction to JS would suffice
As the book says: You don't know JS [github.com]
Re: (Score:2)
Re: (Score:2)
JS is insane in every possible way. It has two null values. It has three different definitions of a "property". It has at least three kinds of values (objects, primitives and natives).
Sure, but that's minimalist compared to PHP or Python or any of the other dreck that passes for computer languages these days.
Re: (Score:2)
Javascript originally had objects that could inherit the properties of another hidden object, which was associated with the receiving object by a property of this latter object that you couldn't set yourself, but it would be set for you by the language runtime if you created the receiving object by calling the "new" operator against a function, which itself is an object, and in that case a property with a well-kno
Re: (Score:3)
Where is my MOVQ and BEQ?
The big performance killer, the lack of flags. WebAssembly is just C with an assembly syntax, pretending to be "low level" when it doesnt have any low level semantics at all (even BASIC can peek and poke memory, so no, pointers dont make you low level.)
Re:Frankly, it isn't as shitty as its reputation. (Score:5, Funny)
I would like to remind you that C is just a skin on PDP11 assembly language, and the PDP11 was designed as a "hardware FORTRAN* machine".
So lets cut the crap, and just design all the websites in FORTRAN!
However, if you really want to continue having god-forsaken crap as your way of describing executable web pages, why not go the whole hog and insist they are written in COBOL - you could even commission an object-disoriented COBOL if you want, and call it COBOLLOCKS. With a bit of luck, writing websites would be so slow and tortuous that it would massively cut down on the amount of crap on the Internet.
* That is FORTRAN 4 - as in "real men write FORTRAN".
Re: (Score:2)
It would have been better if BASIC was the scripting language. Or Pascal, which isn't *that* far different.
No it wouldn't. JavaScript is quite a powerful language once you stop treating it like BASIC or C.
Where is my MOVQ and BEQ?
That'd be "webassembly": https://en.wikipedia.org/wiki/... [wikipedia.org]
Re: (Score:2)
> No it wouldn't. JavaScript is quite a powerful language once you stop treating it like BASIC or C.
You mean after we have to keep doing the HACK of?
Gee, maybe the language SHOULDN'T be like BASIC out of the box.
Re: (Score:3)
Bikeshedding.
Re: (Score:2)
Indeed. Although it seems many people do not know that idea these days. Which is really part of the problem.
Re: (Score:2)
The other side of that coin is people using bikeshed issues to force their way into management of a project. They demand something unrelated, like a name change, get a bunch of people fired up to support them, and then act like they're a core contributor to a project, entitled to force their way down everyone's throat begore they move on to a new project.
These people have earned nothing. No right whatsoever to demand change. You want to change the name, fork it and write some code. Bam, name's changed. But
Re: Yes (Score:2)
Why do you hate women?
Re: (Score:2)
Why do you hate women?
Why do you assume it's women doing the bikeshedding?
Your comment says much about your own personal beliefs.
Re: Yes (Score:2)
Why are you avoiding the question?
Re: (Score:2)
You did not ask a question. You made a dishonest and slanderous comment, thinly veiled as a question.
Re: (Score:2)
Wrong on all counts. What should disturb you is your own lack of a clue.
Re: (Score:2)
Shouldn't even use it for that - AFAIK people who use javascript for web front ends only use it for some really basic operations (like string concat). The real use is DOM manipulation, which could be donw in any language as its down to the (standard) API the browser provides.
So how about it Mozilla, scrap JS for a web language that is small and has only those things you need to mess with the DOM. Make it a standard, wait for browsers to roll it out, then we can scrap JS and all its myriad of "interesting fe
Re: (Score:3)
I nominate:
JavaSchit -- for how crappy its design is.
But what can you expect that it was designed and implemented in 10 days.
Re: (Score:2)
There is a proposal to rename Perl because it is so hated by developers as a 'write only' language. The proposal to rename JavaScript comes from it being hated by anyone who has to try to read something on the twitchy websites that use it. Pages that keep rocketing up and down as you try to keep the text in focus, popups coming up in your face as if to scream "Stop reading my site!" and that fake Flash installer malware page that appears at random intervals.
My suggestion:"Javadegook."
Re: Yes, but not that (Score:2)
Re: (Score:3)
Um, HTML isn't a programming language.
Re: (Score:3)
PITAscript could be a good choice as well.
Re: (Score:2)
No need. It will die soon. (Score:5, Insightful)
As soon as WebAssembly gets proper browser API support, as was planned, everyone can use any language they want. And then, almost certainly, everyone who has to pick (like a newbie) will pick something better.
The only reason that thst isn't the case yet, is because they chose to implement the minimum viable subset first, and that means you have to use JS to interface between the browser and wasm.
- - - -
I certainly won't use "HTML5" at all anymore. I will have a basic canvas page, and just compile my proper applications to wasm as a, how I call it, legacy target.
Until browsers just become such generic virtual machines (which they mostly already are), that "HTML5" will be just one (shitty) of many platforms.
For actual documents, I will keep using some better format, like TeX, PS/PDF, etc.
Yep. Buh Bye JavaScript (Score:2, Interesting)
The oh-so talented web development community continues to pretend that big bad WebAssembly isn't going to nuke JavaScript from orbit in the very near future.
And even the ones who see the writing on the wall for the rapidly approaching doom of JavaScript think that there will be high paying Cobol type jobs supporting legacy systems for the next decade or two.
Once WebAssembly has minimum viable access to the DOM in the major browsers for real world sites, JavaScript usage numbers are going to look like WeWork
Re: (Score:2)
Just like JavaScript, WebAssembly will be blocked in the browser because, like JavaScript, it is an ill-conceived hunk of crap.
Re: (Score:2)
And how did you arrive at that insight? "Fills the same role, must be the same thing"? Or was some actual thinking involved?
WebAssembly was not ill-conceived. (Score:2)
It evolved out from a few different projects with completely different approaches that went on their own for years of evolution of their own. It is not ill-conceived. Maybe a few things are not perfect but nothing ever is... which is why we have versioning.
What is ill-conceived is adding DOM access to WebAssembly just for some slight speed bumps. The wise move will be to make WebAssembly a generic safe VM with the most minimal API possible which then requires a bridge to connect it to any environment it
Re: Yep. Buh Bye JavaScript (Score:2)
There will be JavaScript jobs, probably not high paying like COBOL, but they will be there.
We're better poised now than ever before to rapidly transition from the /user/ point of view -- browsers auto update, and very few use systems that won't support new technologies as they appear, it's not like the bad old days of having to worry about supporting older versions of IE, Netscape, whatever... ...but from the developer side of things there are trillions of lines of JavaScript out there happily doing what ne
Re: (Score:2)
That is pretty much what I expect will happen. The freedom to use good tools will finally be reestablished. And you can finally do things like, say, Python with C modules for performance again. Completely agree on the document formats.
Re: (Score:2)
...you can finally do things like, say, Python with C modules for performance again.
I can't wait for you to start creating web pages. I'll have lots more free time while they download.
Re: (Score:2)
I do not even need to comment on this. Your cluelessness is obvious.
Javascript is just fine... (Score:4, Interesting)
1) scripting languages as classically defined have blurred the lines as compiled languages act more like scripting languages and we use compiling tools for scripting languages. Anything you compile should not be called scripting even if the end product is a script... hell, Java goes to bytecode which is interpreted (usually compiled... but then our scripting languages dynamically compile now too!) So I'd define it as something the developer does NOT need to compile.
2) Quick (development,) dirty automation and coupling of abstracted components. That is what their purpose has been and same for javascript. Improper demands upon have them evolving in the wrong direction. Javascript's still a good language, but like C++ it gives you too many ways to hang yourself up... that is, the blame is largely yours (and ECMA for giving you extra rope and others for giving you a jungle gym to navigate. Most complaints can be levied against C++ too.)
3) Tie things together with duct tape. One of the big time consuming problems of software engineering is the high level work of manipulating components that were not designed to cleanly work together. So we have tons of high level errors coupling things that were decoupled and insane amounts of refactoring to fit squares into round holes. Scripting allows easier ways to duct tape parts together without all the extra labor. The evolution of scripting should be to aid in the testing, experimenting and coupling of complex opaque components to AVOID refactoring (except in scripting because it's more flexible to refactor... and most often, profiling points out what needs porting to a compiled language.)
4) ABUSE ONLINE: any programming ability will be exploited by marketing bastards to just beyond the limit of our tolerance. Web Assembly is next.
5) WEB ASSEMBLY SHOULD NOT GET API SUPPORT. Did we learn nothing from Java Applets? Sure it'll be better... until it's not. Coupling the browser API with WebAssembly components with scripting makes it a much harder attack surface - and it uses scripting for it's intended purpose: coupling things together. The evolution should be in the direction of making this easy so there is almost no work to port code and compile it to webassembly. Most that labor should be JS bridging on the outside.
Re: (Score:2)
Bwahahahahahahahahahahhhahahaha!!!
You crazy...
I think it could work... (Score:2)
If Microsoft, Google and Facebook did it together it could happen.
My vote is DomScript.
Re: (Score:2)
DomScript is good. It basically writes the moniker and descriptive "DunbScript" itself.
Sure (Score:5, Insightful)
Let’s change the name after it’s been known as “JavaScript” for the past 25 years. I can’t think of any problems with that.
Re:Sure (Score:4, Insightful)
Javascript suits the language perfectly: thought up over a weekend with no real planning or consideration, became a de-facto standard and is almost entirely unsuitable for the tasks required of it.
Re:Sure (Score:4, Insightful)
Indeed. It was something they wanted in before the impending release, so something was slapped together in a few days. And it was never really fixed.
Re: (Score:2)
It is a surprsingly good language all things considering. The problem with using it, is that the standard library (the DOM), is shite.
it indeed is. problem is clueless people using it like it were java or c#. and no, the silly 'JavaScript' name is no excuse for a competent programmer to just assume it's another java and not bother with even rtfm.
besides, the relation to dom is circumstantial, only a few 'api' in the engine interface with dom directly, js is actually a standalone language.
anyway, let them call it whatever, it's still the same language. just don't change the effing file extension, please, pick something sensible. like ... j
Absolutely - KiddyScript (Score:2, Insightful)
The language for 3rd rate devs and over promoted graphic designers and typesetters everywhere.
No serious dev chooses to program in this dogs dinner of a language, its mainly ones who arn't good enough to develop in or even understand C/C++, Java, C#, Python, Scala or 101 other properly designed languages.
Re: Absolutely - KiddyScript (Score:3)
I used it to help build a system that processes over 1 billion transactions per year at less than 0.005$ per transaction.
Re: Absolutely - KiddyScript (Score:3)
You know Js runs on the server, right?
Re: (Score:2)
Which of those can do client side DOM manipulation to enable users to get things done faster, without adding unnecessary server side processing?
No, WASM doesn't count because it's an unreadable BLOB.
Anyone doing web stuff is going to have to learn some JavaShit, and changing the name after 25 years just invalidates all the search results or adds more substitution cruft to any decent search engine. Just no.
Re: (Score:2)
Re: (Score:2)
If that is your opinion, you have no clue about the topic.
Why would a programmer that needs to know more than you in his environment be third rated?
Are you fourth rated?
Do not to spoil the fun (Score:5, Funny)
We could name it "Perl 6"
Re:Do not to spoil the fun (Score:5, Funny)
We could name it "Perl 6"
No that will chase everyone a....
Hang on, great idea, that's got my vote!
Re: (Score:2)
Hehehehehe, mine too. We cannot let this excellent possibility for synergies just go to waste!
Re: (Score:2)
Something catchy and apt (Score:5, Funny)
Re:Something catchy and apt (Score:5, Funny)
I was thinking DumpsterScript, but I like this better.
Re: (Score:3)
I like this one! My personal proposal is "CrapScript", but yours has more style.
logo (Score:2)
Re: logo (Score:3)
Is PHP really an elephant? That's hilarious and appropriate.
I dunno, I've had a copy of The Rhino Book since 1996, but I do suspect most "professional" JavaScript programmers were born after that so maybe they are unaware. This logo complaint didn't need to happen.
As far as the name, the industry tried for ECMAScript more than a decade ago. If it didn't work then, and this entire premise is a waste of energy until Oracle starts suing people. Which they rarely hesitate to do, but apparently haven't yet
Re: (Score:2)
Well, the only real argument for using JavaScript is that it runs in all browsers, and no other language does. WebAssembly some day will probably replace it, and allow for pretty much any language to run safely in browsers, but until then, JavaScript is the only option.
Sure, I am a bit sad that the browser scripting language was switched from the original scheme (lisp) to Java-ish syntax, but it's too late to fight that battle.
Cane Toad as logo (Score:2)
I suggest they adopt the logo of a Cane Toad. It seems to fit.
Type system: "They’re well known for humping dead animals, even trying for hours to hump a female that has been run over by a car, but they don’t limit themselves to just dead frogs, they’ll even hump dead salamanders, snakes, lizards, mice, anything."
Truth in Naming (Score:4, Funny)
If there were Truth in Naming we would call it BlockMePlease
What's wrong with ECMAscript? (Score:5, Interesting)
I see the answer in the question.
- Correctly, "JavaScript" refers to a subset of ECMAScript specified by Mozilla, but the word is used interchangeably to refer to multiple different ECMAScript supersets, depending on context.
In the article it points out that the different subsets and/or implementations of ECMAScript were given trademarked names like JScript, TypeScript, and ActionScript. Seems to me that the problem is that people use the word "JavaScript" when they mean "ECMAScript", much like people use the brand name "Kleenex" when referring to any single use facial tissue. The answer to this question then is to use the right word for the context. If you mean to refer to the specific subset or implementation of ECMAScript then use the name given to that, be it JavaScript, JScript, ActionScript, or whatever. If you mean ECMAScript then use the word ECMAScript.
JavaScript doesn't need a new name because JavaScript is a trademarked name for a subset of ECMAScript. Seems to me the question that is really being asked is if ECMAScript needs a new name. Which leads me to ask, what's wrong with ECMAScript? I guess it's because it doesn't quite roll off the tongue.
I took a look at the Wikipedia page on ECMAScript and I see that they already have a proposed name for the next version, ES.Next.
https://en.wikipedia.org/wiki/... [wikipedia.org]
ES.Next isn't too bad. Maybe "NextScript", but that might run into some confusion. Maybe get rid of the period in the name and call it "ESNext".
Perhaps before we can provide an answer the question needs to be clarified. What problem is trying to be solved exactly?
Re: What's wrong with ECMAscript? (Score:3)
Or, since itâ(TM)s a subset of EcmaScript, why not just call it ESLite or PoopScript?
Call me old fashioned, but a âoelanguageâ where variable type is determined by the scripting engine, interpreted based on context, and can change on the fly is well...poop. How anyone writes solid and reliable code is beyond me.
This is why languages such as TrueScripr and Transpilers have become popular - they provide order to a chaotic scenario and a way to herd cats.
Re: (Score:2)
How anyone writes solid and reliable code is beyond me.
That's easy. Just write a Fortran Compiler in ECMAscript first.
Re: (Score:2)
You are not old fashioned. You are a hipster.
Old fashioned languages are dynamic typed but typesave.
How anyone writes solid and reliable code is beyond me.
1) discipline
2) knowledge
3) unit tests
Unit tests where pushed in the Smalltalk circles. Unfortunately since Kent Beck wrote JUnit now half the people who read books like Clean Code think every class in a statically typed language needs a unit test.
Re: What's wrong with ECMAscript? (Score:2)
Hipster? Think not. Iâ(TM)ve been doing this since the mid-70â(TM)s. JS is an ugly language.
If, once a type is assigned to a variable, the type couldâ(TM)t change during application execution, Iâ(TM)d be less critical of it. But, the lack of type safety makes it very difficult to write solid, safe, code.
Only Perl 6 needed renaming. (Score:2)
People was insane amounts of energy rebranding and rewriting things that are DONE already. UI people are the worst justifying their employment with BS changes; marketing is second...
ECMAScript is the name; almost nobody uses it. A rebrand will not succeed only help the IT profession climb from the top 5 professions with the most jargon.
Javascript was like a scripting version of C with objects. It's evolution is making it C++ script where it's trying to be everything to everybody. The fact it's now included
Re: (Score:2)
"Javascript is pretty good duct tape;"
How true.
Perhaps JavaScript should be renamed to DuctTape to reflect it's usage. While we are at it, WebAssembly can be renamed to ChickenWire to reflect how it is intended to be used. That way, you will have crap that runs in the browser (which should be just a display engine) being built with DuctTape and ChickenWire ... an apropos description of what a crock they in fact are in reality.
Wanted: HTML Display Engineer fluent in DuctTape and ChickenWire to cobble toge
Let's call it... (Score:2)
I renamed it long ago (Score:5, Insightful)
I call it Noscript on my machine.
Re: (Score:3)
I call it TrackScript - because 90% or the time JS is used for data raping and for serving ads. Noscript is a misnomer, because it's a piece of software designed to block TrackScript.
Re: (Score:2)
Excellent! Made LOL.
lipstick (Score:2)
Putting lipstick on that pig won't help it.
Confusing managers and recruiters? (Score:2)
Any manager or recruiter who doesn't understand there is a difference between JavaScript and Java needs to be out of the position that has them making choices for roles that use it... no excuse for that by now.
Re: (Score:2)
So, the name reflects the state of the language (Score:3)
The naming is a mess, the language is a mess. There are differences between interpreters/compilers and you have to support them all, or use tools that translate one variant to another variant.
Nothing against the language itself though. It is not $otherlanguage but it does the job. Support is the problem.
Re: (Score:2)
Yes, but... (Score:2)
I propose "CrapScript" (Score:2)
That will also immediately give people a good appreciation as to what it is and what it can do. Or maybe scrap it completely and use PhP, hardly any difference.
Name changes never work (Score:4, Interesting)
Changing the name of anything that's well-known under its old name is a recipe for disaster. It's even worse for something that will generate lots of questions (like a programming language) because the namechange will nuke the entire repository of existing resources and make everyone's life more difficult.
Face it: this ship sailed a long time ago, and you're stuck with the current name.
Re: (Score:3)
Google: object inheritance with there
The results would be nonsensical.
I propose naming it "Oak" in honor of Gosling (Score:2)
Gosling originally renamed Oak to Java.
ECMAScript was renamed to Javascript.
To follow the same twisted login, I proposed we rename Javascript to "Oak" in honor of Gosling's Oak tree that proudly stood outside his office at Sun Microsystems where he developed Java.
Even though Java and Javascript have nothing to do with each other, I still propose the name "Oak" in honor of the tree that started that whole Java craze.
Anyone want to sign my rename petition for W3C?
I thought of a great name. (Score:5, Funny)
Really? (Score:2)
This ship sailed 25 years ago. And, given the state of what Oracle is doing to Java, in 5 years this won't even be a concern for the ignorati.
If something needs a name change (Score:2)
Fix the code, change to something better.
A name change cant hide the existing results...
It already has a name (Score:2)
If you are coding to the standard, you're using ECMAScript. If you are writing a Node app, you're using Node.js. If you are making front-end web pages, you are using JavaScript. Why is this so challenging for people?
C/C++ doesn't have a cute logo. Why the fuck does a programming language need a logo? What problem are you trying to solve?
Stop the nonsense. There's no ambiguity unless you choose to speak with ambiguity. There's no trademark concern from Oracle, because they haven't defended their trade
How about calling it COBOLScript? (Score:2)
Or maybe C++Script?
RubyScript?
PythonScript?
ForthScript?
PL/1Script?
DigiCompScript?
No, wait: VBScriptScript!
CurlyScheme (Score:2)
And no mascot, please
It shouldn't be renamed... (Score:2)
It would've helped more 15 years ago. (Score:2)
I can hardly count the times I was discussing technologies and solutions with non-IT people only to notice 2 days in that they are mixing up Java and JavaScript. It's a little late now for renaming, but better late than never.
Just please give it a distinct name. WebScript, DynaScript or something like that actually would make sense. But please do *not* call it SomethingJS - that would be really stupid.
My 2 eurocents.
I nominate ... (Score:5, Funny)
Mascot (Score:2)
Oh the humanity! How did we ever get this far without one!?!
replacement (Score:2)
Yes there are many disadvantages about it but what kind of things should replace it?
For the record, I think we do need a logo.
It should be a concave nonagon with a cursive 'C' in it, just to confuse people.
kinda like the Daylight Savings discussion... (Score:2)
...this is one of those topics that /. posts pretty much on an annual basis.
Memory Check (Score:3)
This related to the topic but I wanted to see if anyone remembered the following:
Is it true that JavaScript got named that because at the time Java was getting all the media hype so someone thought it would be a good idea to try to hitch onto that hype? This would be the early-to-mid '90s.
Who was it that said "Javascript is the industry's most feared language?"
Re: (Score:3)
Re: (Score:2)
Hehehehe, sorry no mod points and already posted, but this is definitely "insightful".
Re: (Score:2)
Yes.
Re: Java/JavaScript (Score:2)
> Is that supposed to be a joke? Because that's not how you do a joke
The sign of a quality troll is how people react to it. The reacts are the joke.
That's a JokeFactoryFactory in fancypants ECMAScript Design Patterns parlance for you 'developers' out there.