DEV Community

Cover image for How has JavaScript development changed over the last decade?
Ben Halpern
Ben Halpern

Posted on

How has JavaScript development changed over the last decade?

... And what new things changed it the most?

Oldest comments (38)

Collapse
 
sherrydays profile image
Sherry Day

In 2012, the jokes about JS being a ridiculous way to program were still fairly real. But if you hung on to that attitude, you probably got left behind.

"Ridiculous" meaning using the inconsistent language for anything other that jQuery-driven UI updates.

But since then the language has improved, the ecosystem has plowed along at breakneck pace, and TypeScript is pervasive.

It's a really different landscape now.

Collapse
 
dinerdas profile image
Diner Das
  • React introduced a way to handle complexity in UI that informed everything since.
  • TypeScript normalized a new way of writing JavaScript
  • The Node ecosystem matured with several really great options for getting started.
  • VSCode really leveled up the tooling in this ecosystem.
Collapse
 
iamschulz profile image
Daniel Schulz

Framworkization, mostly.
In 2012, jQuery was a good gateway drug to JS. You didn't necessarily have to get it's syntax details, async weirdnesses or compatibility issues, but you'd still have to understand how JS worked.
Now most people learn JS through React, Vue and Angular. Those bring a very nice DX and speed with them, but devs who have no experience outside their framework are on the dry.

The same goes for HTML and CSS, by the way.

Collapse
 
ben profile image
Ben Halpern

The same goes for HTML and CSS, by the way.

Utility-first CSS (i.e. Tailwind) was a major step in this direction — In a good way for the sake of productivity within that environment. But possibly in a not-so-good way for dependency dependence and learning.

A decade ago I found the CSS libraries available were generally worse than just writing plain old CSS with some sort of self-imposed structure. These days I think some of the new stuff is truly really awesome to use, but it's not necessarily a good thing if it reduces peoples' capacity to interact with CSS proper or write websites that don't require the build step.

Collapse
 
jamesthomson profile image
James Thomson

A decade ago I found the CSS libraries available were generally worse than just writing plain old CSS with some sort of self-imposed structure.

This is so true... the days of adding Bootstrap (or some terrible WP theme) to your project and then having to go through sooooo many classes to overwrite them shudder. I'm so glad those days are gone.

Collapse
 
karandpr profile image
Karan Gandhi

We used to make sites with Internet Explorer in mind. (40-50% market penetration, Moz was around 30, Chrome around 10-15%). MS dictated the web in some way or other.

Now we make websites with Chrome in mind(90% is either Chrome or Webkit based, Moz is at 4% ). Google dictates the web.

Collapse
 
jaeming profile image
jaeming • Edited

10 years ago we didn't even have Promises natively. Async was handled by callbacks making for these terrible horizontal prymids of code.

Collapse
 
jeremyf profile image
Jeremy Friesen

10 years ago, if the javascript broke, your site might still work. Today, that's unlikely.

In other words, sites are far more dependent on Javascript than they were 10 years ago. And we're sending more code to browsers to process and consider. Thus often increasing bandwidth and resource requirements for client-side rendering.

The manifestation is our websites are becoming indistinguishable from desktop applications.

Collapse
 
kayis profile image
K

2009, Node.js was released and gained in popularity quickly, which helped many JS developers to implement software that doesn't run in the browser. While this was before the last decade, I think the move of JS developers out of the browser took a few yerars.

JS engines were added to iOS and Android, so JS developers also gained access to the mobile space.

Function as a service offerings all included JS right from the start, so JS was a main participant in the serverless movement.

Web3 is basically Web2 frontends with decentralized backends, so JS plays that game too.

In terms of technical changes, the ES2015 changes gave JS quite a facelift. Promises, async/await, arrow functions, classes and a native module system made JS a more "mature" programming language.

Collapse
 
adam_cyclones profile image
Adam Crockett 🌀

Node.js changed the game and it's easy to think it's always been here but it hasn't

Collapse
 
jonrandy profile image
Jon Randy 🎖️

It's become ridiculously overcomplicated and over-engineered

Collapse
 
jankapunkt profile image
Jan Küster

Thanks to babel, typescript and standardization the language became not only powerful but also reliable, compared to 10 years ago.

On the framework and library side we see a huge fragmentation and as an engineer I wonder how many hours/days other people invest into choosing the right tech stack for a certain project. To me it starts to become highly unproductive unless I either stick with big names or with what I am familiar with.

Collapse
 
deathvenom54 profile image
Deathvenom

ouch

Collapse
 
jonrandy profile image
Jon Randy 🎖️ • Edited

Not having strict types is one of JavaScript's best features

Collapse
 
lexlohr profile image
Alex Lohr

I think Microsoft finally ending the browser wars started a new era that made compatibility-centered frameworks like jQuery mostly obsolete, new MVC-pattern frameworks took over in the front-end.

At the same time, transpilation really took off, hastening the adoption and development of new language features in JavaScript/ECMAscript and Web APIs. The overall tooling improved beyond recognition.

This powered moving logic from the back-end into the front, blurring the lines between web sites and applications. Static apps, powered by minimal back-ends, became the new norm.

Interestingly, the revolution keeps turning. With JavaScript running in the back-end, we're going full circle with remix or astro and having the same logic that we previously moved to the front-end inside the server to increase rendering speed.

Collapse
 
jcubic profile image
Jakub T. Jankiewicz • Edited

I remeber when DHTML was a thing, it was when I've started learning JavaScript. And my dream was to create Modal Dialog that you can drag & drop. But the tutorials I've seen was way to complex for me, and I was never be able to do that back then.

So I think that biggest change for me was appearning of frameworks and libraries that was making things like this easy. First DojoToolkit, Prototype.js, Script.aculo.us and later jQuery was first game changer for me.

Also before the frameworks there was AJAX revolution that was big thing, that give birth to JavaScript applications.

Second big thing was AngularJS that was probably the first ever full framework where you could create your own SPA in better way. AngularJS was pioneer after it came the Trinity: Angular, React, and Vue. Each of them can be its own milestone in JavaScript development.

I think that major thing was also NodeJS and appearing of NPM (anyone remembers Bower?). And of course Babel (with other tooling like Grunt/Gulp/Webpack) that allowed to use Latest ECMAScript right now.

Collapse
 
polterguy profile image
Thomas Hansen

I am tempted to say it's no longer called JavaScript but rather TypeScript ... ;)