diff --git a/articles/javascript.md b/articles/javascript.md new file mode 100644 index 0000000..9149694 --- /dev/null +++ b/articles/javascript.md @@ -0,0 +1,23 @@ +# JavaScript +JavaScript, also known as JS or by its standard name ECMAScript is a scripting programming language created by Brendan Eich in 1995 +at Netscape. Despite its name, JavaScript has nothing to do with [Java](java.md), the "java" part was simply a marketing stunt. + +Originally a client side language (executing on the browser); some guy called Ryan Dahl had the excellent idea of extracting Chrome's +V8 JS engine and making it into a standalone program, naming it Node.js. After that JS escaped containment +and became a language used in the server side too. + +JavaScript is known for being a bloated language, specially in the last decade where it exploded in popularity, mainly among "coders". +The average JS program has a ridiculous amount of dependencies, mainly fueled by the incompetence of its users, where even trivial things +to implement become a package with millions of weekly downloads. See the left-pad incident, where its creator ragequited npm after a +quarrel with some company, he nuked all his packages (including left-pad); thus chaos and lulz ensured. +And this is server-side JS, client-side JS is just as bad, where "web developers" instead of writing HTML, CSS and using the builtin +DOM functions use gigantic and slow frameworks. This is why the average web page in 2025 has a size above 1MB. + +Wait, its actually worse; another guy had another brilliant idea: turning JS into a language for "desktop" development. That is, Electron. +Electron is basically just Chrome, with all its implications, extremely high memory consumption (both RAM and disk). + +No serious program should be written in JavaScript. Client-side JavaScript should be sparingly used, and only to **augment** a page +functionality. Any decent webpage should work without JS. + +## See also +- [Bloat](bloat.md)