If you look at the past 30 years of frontend, I don't think you'd find a place where you would want to pause the change. The IE 6 era? The Flash era? The jQuery era?
No, Rebecca is right - the game changed for front-end developers when client-side scripting became ubiquitous, which is a somewhat recent development:
For example, while XMLHttpRequest was introduced in 1999 (IE 5), it took years to gain traction (XHR support was added to Opera with version 8 in 2005), and incidentally, JavaScript frameworks (Prototype 2005, jQuery 2006) and distributed version control (Mercurial, Git 2005) entered the spotlight at the same time.
While serious JS-based applications were definitely around before the advent of Web 2.0 (you can go a long way with hidden iframes, long polling, chunked transfer, forms, 204 status code), these were the exception, front-end work was mostly about layout and code-reuse virtually nonexistent.
> 36 years at least. I'm not talking about WWW. HTML and JS were never meant to be the end-all of human computer interaction, but yet here we are.
I have to be honest I don't know what you mean here.
The web and its frontend (and tooling) is what this thread is about. We've thrown out a lot in the mean time. Java applets, Flash/Shockwave, ActiveX, dynamic HTML ... the web has grown a lot and will continue to do so.
But the world of JS as a front-end application language is still fairly new. Until the late 2000s it was just a bolt-on for doing little things around static HTML.
What's old is new again. My first front-end role was building web applications wayyyyy back in 1999. Everything was done with "Vanilla" JS, including fancy stuff like drag and drop in a treeview, click to edit, building what effectively was a single page app, etc. etc. The hardest part was negotiating the differences between Netscape and Internet Explorer.
This list shows how out-of-date I am with frontend webdev. I last did frontend stuff with Spring MVC and JSPs!! Yeah it's been over a decade. I was also using table-driven UI element placement still and hadn't fully switched over to CSS. I'll get there someday...
Yeah, I've been watching the same as you describe, and I think jQuery was the peak, but also the beginning of the descent into abstraction.
A couple of years ago, I realized that the art of web development is about to be lost, and I started to re-learn all those lost skills, such as direct DOM manipulation, feature-checking, backwards compatibility testing, etc.
I now have a reasonably functional website which works back to the earliest HTTP/1.1 browsers, like IE3 and NN2, classics like Windows Safari and Opera 12, and many many other lovable, once again usable browsers.
I've been around the web since document.write() and <font color=red> were cutting edge.
You're wrong.
There is no way, shape, or form where 2008 web technology is comparable to today. (IE6!!!) Not in styling. Not in consistency. Not in performance. Not in accessibility. Not in security. And certainly not in management of complex sites.
A cursory look at caniuse.com should disabuse you of any notion of stagnation or lack of capability.
Folks rewrite "every two years" because it gets better so quickly. Svelte/Solid/Qwik are clearly steps forward from React. Were you advocating for sticking with older stuff simply because you don't like change? Or did you think C, Unix, et al technologies were born fully formed as they exist today with no evolutionary steps (and missteps) in between?
I've never built a web application of any description. As a user, what are the improvements that I should be looking for that have been introduced over the past 10 years? It was longer ago than that that AJAX started getting big, and as far as I can tell, that was really the last key innovation for most apps: Being able to asynchronously load data and modify the DOM when it becomes available. I'm aware of other things like video tags, webgl, canvas, and such that allow us to replace Flash for a security win, but that seems replacing a past technology just to get feature parity with what we had a decade ago.
Everything else seems like stuff that makes things better for the developers but not much visible benefit to the user. I can understand where a comment about the web not being much better would come from, on the scale of a decade.
Go back 20 years, and you're talking about a completely different world; frames, forms, webrings, and "Best viewed with IE 4.0". But if '96 to '06 was a series of monumental leaps, '06 to '16 looks like some tentative hops.
I hope you’re right. Personally I think that epoch peaked with jQuery. I’ve been watching the culture of web development steadily descend from what you describe to whatever it is we have now. But software history is circular, so maybe those good times are coming again.
Am I the only one who couldn't connect this to "making things move in a web browser" for a minute? It wasn't until I saw the pseudo-HTML (JSX) code that it clicked. Even the headline is full of jargon.
Seems that everyone is busy coming up with convoluted ways to do the same old thing (manipulating the DOM). When I look at early jQuery era front-end code, it's quite easy to follow what's going on. The language (ES3) was simpler, and the competing libraries at the time provided thin abstractions on top of the DOM API.
The DOM was more or less complete when DOM Level 3 was specified in 2004. How much of the front-end code being written now, will be able to be easily understood and maintained in ten years time, after the trendy fads have come and gone? Maybe that question is irrelevant since most business fail within that timeframe, but for posterity's sake, I'd like to look back and learn what went well and what went horribly wrong.
In terms of easily cranking out a CRUD app, the current state of the art in web front-end development is a long ways behind Visual Basic 4 which was released in 1995.
If you want to see the future, look to the past...right? With all of the advances in JS/CSS features and performance I would expect that a lot of the garish 90's Flash "enhancements" will make a return beyond some of the simple scrolling and animation touches we see now.
Full 3D spinning cube navigation, automatic audio playback, loading screens, constant page/background animations, etc. It's all going to come back in some way, and that's not some sort of wishful thinking on my part.
Having watched and been a part of the evolution of the web during the rise of Macromedia, what we're seeing now with CSS and JS is very similar to the simple SWFs people were putting together back then. Once everyone gets comfortable with the way things work, it's going to evolve.
Off topic a bit, but how long have the concepts of “full-stack”, “front-end”, and “back-end” been around? In the old days, when websites were just static html, I would imagine those concepts didn’t exist. Did they develop around the same time that JavaScript did?
Am I getting old? As far as I can tell, this is what we were doing before JS became the mighty weapon it is today (like pre-2005).
So if you don't like JS, this is a pattern you might want to revive, but I can hardly believe, that we want to go back to that world as a standard for web development.
reply