9 ms·
Without downplaying all the effort being put into this, I think we're just digging a deeper hole. Websites do more or less the same thing they did 15 years ago
by smarkov 3y ago
Without downplaying all the effort being put into this, I think we're just digging a deeper hole.
Websites do more or less the same thing they did 15 years ago but they are now 20 times more complex to develop and maintain. A good amount of developers would rather donate a kidney than write CSS. Accessibility is a hack. Performance is getting worse despite us having better than ever hardware. We're spending large amounts of time reinventing the wheel. JS is a horrible, bare bones language which is why you can't get anything done without 100 packages.
It's time to move away from HTML/CSS/JS. They worked great for as long as they did but instead of further contributing to the mess that they've become, we should be looking into alternatives.
- capableweb 3y ago> Without downplaying all the effort being put into this > Websites do more or less the same thing they did 15 years ago That is a huge downplay if anything :) Websites certainly does the same they always done, the difference nowadays is that there are web apps too, interactive applications, which existed 15 years ago sure, but they didn't have the same scale as today. But, most web apps today should just be websites, but there are some use cases for web apps too, although they are few. Once you start to understand there is a difference between websites and web apps, things start to make sense. There is still a huge misuse of making things into web apps, but at least you start to understand why the ecosystem moves in a direction you seemingly don't grasp. > It's time to move away from HTML/CSS/JS. They worked great for as long as they did but instead of further contributing to the mess that they've become, we should be looking into alternatives. There is huge efforts into this already, which you also seem to have missed. The whole WASM effort is about being able to write code for browsers in any language you want, and it's already usable today. It's missing some vital things like DOM manipulation to be 100x more useful, but again, still useful today. Lots of games are written in Rust and deployed as WASM for example, runnable in the browser.
- o1y32 3y agoThe second paragraph is just simply plain wrong throughout. You should actually learn the web stack and look at how things work in 2023 instead of reading other people's rants or secondhand opinions to form your own opinions. CSS is not hard. Performance talking is meaningless without benchmarks. No, you can definitely build a decent small website with a few or even no package dependencies. Maybe do a reality check first. > It's time to move away from HTML/CSS/JS Just meaningless empty talks over and over on HN. People who don't understand web stacks ranting about web without knowing the complexity and nuances. What alternatives do you have? Are they going to provide enough features and customization as the status quo? Will this new thing achieve at least 80% of development speed? Many companies adopted web stack for their application because of the flexibility and time to deliver. They make products, instead of being a purist
- tjoff 3y agoAlternatives we have? Regular good old html without or with minimal amount of javascript. Absurdly fast compared to todays site. Many orders of magnitude less power. Faster to develop and better user experience too. But I also think we should think about alternatives. Things like gemini are interesting but will have a hard time go mainstream. But I do believe we need something completely new because the user hostile nature of the web today is so devastatingly toxic that I see no hope for the future.
- pferde 3y agoThe best thing would be to split webpages and webapps. Webpages can keep using HTML with some minimalistic, gracefully degrading javascript, while webapps need something better than hacks upon hacks upon hacks upon ... on top of technology that was meant to display static interlinked documents.
- elementalest 3y agoIsn't that whats happening to a certain extent with wasm?
- solarkraft 3y agoI don't see how
- refulgentis 3y ago[flagged]
- ttfkam 3y ago> Regular good old html without or with minimal amount of javascript. You just described Svelte. All the JS minimalism and speed without sacrificing the power.
- 3y ago
- cdogl 3y ago> Websites do more or less the same thing they did 15 years ago As a tech enthusiast, I’ve paid close attention to what tasks I can achieve on my PC (and eventually smartphone) over the past 15 years. In my experience, this is simply not true.
- ThunderSizzle 3y agoWhat has changed significantly on the website side? My bank website did a full re-design to be modern looking, but it's slower, no longer supports multiple tabs, and links don't work well, especially if you go through the sign in flow. The ones that didn't redesign into a JS heavy spa are still faster and links tend to be more reliable for e.g. bookmarking. They don't look great, but they tend to be more functional.
- cdogl 3y agoI can buy something, pay using a number of different standardised mechanisms (debit card details, Apple/Google Pay, other web services like PayPal) and have it quoted for shipping from almost anywhere in the world to my house with just a few presses in a mobile browser or on my laptop. There are a huge number of moving parts involved in providing that experience and it is fairly consistent between large tech players and small. It might not be flashy stuff like a nice replacement for JavaScript to make developers' lives easier, but a lot of my story above depends on significant advancement in web standards plus industry experience and consolidation. The web (as well as walled gardens like Apple and Google native) has been critical in enabling that. It's the bedrock for the entire digital economy, including many transactions that drive the physical economy. 15 years ago you couldn't even trust that the average user's browser had a decent fetch API. edit: I do agree that things have gotten slower and everything is terrible.
- franklampard 3y ago> A good amount of developers would rather donate a kidney than write CSS. Accessibility is a hack. Name one :)
- satvikpendem 3y agoPeople who write Flutter, for one, including me to some extent.
- ohgodplsno 3y agoDepends. What browsers do I have to support ? The amount of kidneys I donate is directly proportional to how much I have to target IE6, at which point I donate both and would rather die.
- forgotmypw17 3y agoThe beauty of the Web stack is that all of what you are describing is optional. You can write simple, accessible, performant websites, which use JS as a bonus and have all the basic features without. And as a bonus, it works across all the browsers, not just Chrome/Firefox. As a bonus, it works for all the accessibility scenarios, not just the standard ones in the test suites. And as a huge bonus, it's much easier to maintain and less fragile. I'm personally on the extreme end, what with trying to support not just today's browsers but also the retro mainstream such as Netscape and IE, but you don't have to go that far to have an enjoyable experience with this platform.
- lapinot 3y ago> The beauty of the Web stack is that all of what you are describing is optional. The problem is not that you cannot write lightweight accessible and beautiful websites, you can. The problem is that this is now all part of the "default web browser" and so many people are taking advantage of its widespread availability to use it without a good reason to. Most commonly fingerprinting, tracking, following corporate dev fads, etc. And because of that it is now borderline impossible to have a decent experience using a lightweight browser because so many websites make crucial use of stuff they should really not. It's possible but it takes time and know-how, personally i don't find it fun enough to invest more time than crafting my ublock whitelists. And this is already more than most people (even people that would be able to do it).
- forgotmypw17 3y agoI don't have a strategy for fixing the entire ecosystem, but for my little corner of the world, I guess I've constructed a mental venn diagram where I only browse at the overlap of "content I'm interested in" and "sites which are accessible to me", and leave the rest of it alone. There is more than enough for me to browse in that space, especially combined with my own websites, that I rarely even think about the horrors you mention. One of the coolest things about it is that I have noticed over time that obnoxious frontend correlates very strongly with crappy content, so the average quality of what I read and watch has improved drastically. I try to practice a "mental diet", and it has helped tremendously with that. In some ways, it's not unlike IRL, where there are places I would rather not be, and they have certain tells, and I'm OK with them being there, I just don't go inside if I can help it, and I leave as quickly as possible if I do. I think the Web is still very young, and now that we have can have ML-assisted markup generation, accessibility will be coming around, just like wheelchair ramps became the norm. Pretty soon, we won't be dismissing a 0.01% browser as not worth supporting, because it will be so much easier to just tell the server, "please remove JS and all but the minimal markup from your pages". If you want to see a PoC of what this may look like, here is a quick demo video. The NoJS bit is at about 2:30. https://vimeo.com/828698165 https://vimeo.com/828698165
- SanderNL 3y agoI actually think you have a point. Sure, it’s missing nuance and there are certainly things 2000s tech will not do properly, but to be honest I’m not quite hundred percent sure what the past two decades brought other than funky frameworks and libraries. Useful, but funky. I know for example CSS animations and layout possibilities are off the charts nowadays but they do not strike me as fundamental improvements although the QoL is certainly appreciated. What happened last two decades is browsers getting their act together though, that made a huge difference. I’m a webdev. I work with React and Angular. Again, missing nuance but I’m not completely sure we are on the right track at all. Not sure what we should do. I made a comparison between crystal meth and wordpress before. I’m not sure getting us all on the web (crystal meth) train is the way to go. Sure it’s standard and lots of people like it. It’s cheap.. but yeah. The alternative might be painful (aka not do it).
- jeroenhd 3y agoCSS has become much easier. CSS grids and flexbox have removed all the stupid layout hacks from long ago. No more need for HTML tables to get two elements to align. The CSS spec has also improved a lot. JS has also improved massively, though it can't rid itself of its original flaws it has solved a lot of problems in fifteen years. Accessibility has become trivial. You really don't need all that much knowledge about screen readers anymore. If you follow the standard even just a little, screen readers will already Just Work. HTTP/3, WebP, Brotli, and a whole range of technologies have made some of the worst pain points of web development go away for free. No more messing around with connection pipelining, ordering resources to work around the browser load order, minifying text resources manually, you just let the tech stack do its thing and it'll work fine. The problem isn't the web stack, it's the framework of the week throwing out the last five years of development as "bloat", redefining how things Should Be, and then growing to a form where it's considered "bloat" and replaced again. I've started my web dev career with PHP on the server. It's really not that bad. The web works fine. Things that work fine are boring, though. Writing HTML and wiring basic actions to it is tedious work when there are all of these interesting frameworks and methodologies to try out. Or, in some cases, people skip the basics and start with learning React or another heavy Javascript framework. Who needs to know the difference between a <nav> and a <div class="nav"> when you only have two weeks to get through the bootcamp? It's really not all that difficult to make websites. Web apps are even easier because you can demand Javascript and all of its tooling to be present. We've tried replacing the web with apps on phones. As it turns out, that's just as hard, often even harder. The actual problems that make web development hard just aren't easy problems to solve. Throwing complex layers of other people's code over them sometimes helps, but in most cases anything that promises to make web development easy just moves the complexity some place else.
- twobitshifter 3y agoWebsites do the same thing as 15 years ago? Not true, websites can now exceed desktop apps. Was their figma 15 years ago? 20 times more complex - this comes with doing more. 15 years ago there was no CI/CD. Write CSS - don’t have to given Sass, components, and bootstrap. Performance is worse - look at v8 benchmarks, look at webgl and Wasm. The browser itself can run much faster today, and people are doing more with it. JS barebones - just one package. https://github.com/stdlib-js/stdlib https://github.com/stdlib-js/stdlib. - and the node ecosystem is a feature not a bug. Look elsewhere - every other UI framework we’ve tried before has been worse in terms of compatibility, functionality, flexibility, and available prebuilt tooling.
- lapinot 3y agoNothing you say is wrong per se. But what GP is saying i believe is that most website should not need these features to provide value to users. And indeed most website useful to me are still mildly interactive documents. The problem is that web browsers, standards, ecosystems inflated to cater these few webapps needing advanced control over the machine. In a sense web is just the new java: a new environment said to be "cross-plateform" where it is in fact just a new plateform that got its vm ubiquitous. The web-as-vm has nothing wrong, but it has eaten the web-as-interactive-documents. And now to have a lightweight web experience not focused on webapps i am stuck with the heavyweight runtimes with even more stuff on top just to disable features, lock down invasive websites that grabbed the newly available features to implement invasive anti-features, etc.
- speed_spread 3y agoIn the late 90's we had native apps with UIs more complex than Figma that ran fine with 1/100 the CPU, RAM and storage we have now. The online rush buried a whole class of development tools that has to be painfully reinvented over the next 20 years and are still bogged down by the incidental complexity of using the web as an application platform.
- ptx 3y agoOne example of this, I think, is that modern UIs are seemingly no longer able to display large lists. The native win32 API had virtualized list views 27 years ago, since Windows 95 OSR2 [1][2]. [1] https://learn.microsoft.com/en-us/windows/win32/controls/list-view-controls-overview https://learn.microsoft.com/en-us/windows/win32/controls/lis... [2] https://www.geoffchappell.com/studies/windows/shell/comctl32/history/ https://www.geoffchappell.com/studies/windows/shell/comctl32...
- satvikpendem 3y agoIndeed, this is one reason why Ian Hickson (who helped create the HTML5 spec) is advocating for moving towards an application platform based on WASM instead. He has some good comments on this thread. https://news.ycombinator.com/item?id=34612696 https://news.ycombinator.com/item?id=34612696
- imbnwa 3y ago>In theory, HTML is device independent. In practice, we can't even get web apps to work on desktop and mobile, to the point where even sites like Wikipedia, the simplest and most obvious place where HTML should Just Work across devices, has a whole fricking separate subdomain for mobile. Does he actually know why the cases are separate? Asserting this without any historical analysis is meaningless. For all we know, Wikipedia split desktop and mobile domains before responsive tooling in the browser got good and they just never changed it cause, like most businesses, they have better things to work on as the current solution still works.
- zelphirkalt 3y agoWhile I agree with websites being 20 times more complex, I don't agree with: > A good amount of developers would rather donate a kidney than write CSS. If I was doing web development, I would most definitely use modern CSS to make responsive websites. I would prefer it and use it in almost all cases over using JS. > Accessibility is a hack. If one uses HTML semantically, and does not resort to hacks, it actually offers a lot of accessibility. More than most "modern" JS-only websites. > Performance is getting worse despite us having better than ever hardware. We're spending large amounts of time reinventing the wheel. JS is a horrible, bare bones language which is why you can't get anything done without 100 packages. Yes. Most of that performance loss is due to JS bloat (need to download that framework first), ads, and unwanted tracking. JS itself has actually improved, at least the APIs for events, DOM access, AJAX, and probably more. What has not improved is the mindset and development practices of developers and companies. Probably 90% of the websites using big frameworks would not need any of it and could live on server side rendered templates like we had more than a decade ago already. Sprinkle in some interactive components only on pages that need them and most of a website's pages would not be affected by that at all. Done. Sometimes we should take a step back and really ask ourselves what kind of website we are building. What is the character of that website? Is it merely a website that shows some information about a company? It can probably live on server side rendered templates. A blog? Same. Not every website needs to be a "web app". Most of them actually do not. > It's time to move away from HTML/CSS/JS. They worked great for as long as they did but instead of further contributing to the mess that they've become, we should be looking into alternatives. I don't agree. It is time to embrace standard and good usage of HTML and CSS and eschew heavy JS frameworks and JS on the server as much as possible. I would not put HTML/CSS and JS into one basket here to throw out things. HTML and CSS have made great progress. JS too, but as I said, the mindset and practices of the ecosystem and people are not there.
- HollowEyes 3y agoAgree a load of old crap that could have been achieved in the most part with a better implementation of html frames. Sames sucky problems like publishing barriers, Devs holding sites to ransom. Etc. Etc. A good open source app for a shop, a church, a school would be a better focus of a million monkeys on MacBooks.
- kome 3y agowe should go back to hand written html and css, and php when needed. i'm not even ironic.
- LeFantome 3y agoIt has been educational to watch the SerenityOS / Ladybird team implement browser features. As they make real websites work, you can see how the technologies for even simple brochure sites have changed. For example, logos may be SVG instead of simple images which makes sense given the range of screen sizes and resolutions that need to be supported. You can also see that CSS continues to grow but in pragmatic ways that actually reduce the amount of JavaScript to do the kinds of things that users expect these days. On the performance and capability front front, WASM is a game changer. Regardless of what JS framework is in vogue, I do not think it is fair to say that we are doing the same thing on the web as we always have or even to say that the base technologies are getting more complex for no reason. At least, it is no more fair than any other programming domain. I mean, we can look at Excel and VisiCalc and say that we are creating the same apps that we always have with more complexity and bloat. I mean, people do say that but there is an awful lot left out of that analysis. Even more so if I compare VisiCalc and Excel via Office365 in a browser. Regular people are routinely accomplishing far more with their computers than they have in the past. More and more of that is being done in web browsers.
- smarkov 3y ago> Regardless of what JS framework is in vogue, I do not think it is fair to say that we are doing the same thing on the web as we always have or even to say that the base technologies are getting more complex for no reason. Certainly. The things you can do on the web have vastly increased, but the things we actually are doing are mostly the same. Read some text, make an account, login, submit a form, make a payment, upload a file. That's what the vast majority of the web has been and still is, yet the path you take to get there is many times more complex and the user experience hasn't proportionally gotten that much better. Arguably, it's gotten worse.
- LeFantome 3y agoWell, I think you can break it into two parts. I see the underlying tech getting better, making it easier, and making it faster. Look at the HTML dialogue element as an example. So, “the path you take to get there” CAN be much improved as a developer. Now, as a user, you may find that sites that could be simpler are much heavier and complex than you want them to be. My question is why? My argument is that both users and producers of these sites WANT them to be more complex. Which means blaming the technology is misplaced. Certainly we CAN still make the sites that ran in Netscape 4. Why don’t we?
- stjohnswarts 3y agoHTML/CSS are fine, as is javascript, but yeah I don't understand why web pages get bigger and bigger and bigger and slower. Just because we have more bandwidth, I don't know why we have to chew through with ever more complicated webpages. I get stuff like slack or gmail, but showing a company webpage? Why does that take 10 seconds to download and render?
- Tagbert 3y agoAds and all of the frameworks that each ad network include.
- LeFantome 3y agoBecause users want that? As a result, sites that deliver that deliver more value to their owners than sites that don’t? I do not subscribe to the view that it is all just collectively worse because we are cooperatively moving things away from our preferences. I use ancient hardware. I wish the web was much lighter. That said, I do not see the fact that it ( and everything in computing ) keep becomes more and more resource intensive as evidence if some kind of incompetence or collective failure. It just means I represent too little demand to dictate the supply.
- jupp0r 3y agoIt always boggles my mind how people on HN keep claiming that websites are slow because of JS when every 10th headline is about raytracing in WebGPU at 60fps or running LLM inference locally in the browser or similar. Let me open your mind up to the possibility that no language can prevent unperformant applications being written in it and that the vast majority of web apps don't treat performance as their primary concern as long as it's good enough for their particular definition of "good enough". If you are so motivated, creating high performant web apps is easy. The tooling to make improvements is among the best for all programming languages.
- satvikpendem 3y agoThose examples are both using...the GPU. No wonder you can make websites fast if you offload everything to a separate processing unit. Which unironically is one reason why people are pushing for WASM and GPU rendering for canvas as an application platform.
- jupp0r 3y agoModern browsers use GPUs extensively in their rendering engines. Here's a nice overview presentation on Chrome's rendering pipeline, for example: https://docs.google.com/presentation/d/1i1Brb5FTmjStDpnUeKBphKZOJVjZzpM_rv5Wb3TMMtU/mobilepresent?slide=id.g3c8accb579_0_0 https://docs.google.com/presentation/d/1i1Brb5FTmjStDpnUeKBp...
- FpUser 3y ago>"JS is a horrible, bare bones language which is why you can't get anything done without 100 packages." BS. I use JS for front ends without any frameworks Just some of domain specific libs. Works fine and I "get the shit done". Sure I prefer compiled type languages like C++ but code in anything if it makes the the project completed faster given whatever constraints.
- marcosdumay 3y agoWhat do you mean? HTML is just a hierarchical document format, and CSS is just a logical document styling language. Those two are about as simple as they can be. Accessibility is a very hard and complex thing where half of its outspoken "promoters" fight against every gain because they have money invested on the status-quo. That's why it doesn't improve fast. Most developers avoid CSS exactly like most developers avoid SQL, to avoid logical programing. That doesn't mean that logical programing isn't the best known paradigms for data querying and document styling, it just means that most developers are bad and will avoid learning something as hard as they can. Honestly, I have no idea how to fix this, but conceding our tools to the preferences of the worst of us isn't going to lead to anything good. JS indeed can be improved. But guess what, many people are working hard to replace it.
- kitkat_new 3y ago> Most developers avoid CSS exactly like most developers avoid SQL, to avoid logical programing. I avoid CSS and don't avoid SQL nearly as much, because the latter is logical, simple and easy to learn.
- dathinab 3y ago> Websites do more or less the same thing they did 15 years ago no not at all and the browser internally diverge far far more then that in their handling of things