36 ms·
The unreasonable effectiveness of simple HTML
- JoeAltmaier 6y agoClient-side javascript is underrated. We put simple websites in embedded devices with shockingly low memory/flash. They're for configuring the device. The pages are pretty serviceable with html controls, color schemes, logo etc. Embedded javascript to make them responsive. A couple of kilobytes total html.
- mattl 6y agoAnd what if the device can't or won't run JavaScript?
- JoeAltmaier 6y agoI didn't make myself clear. The embedded device is the web server in this setup. The browsing device (phone, tablet etc) runs javascript. You're right, no way a tiny embedded device runs javascript.
- Twirrim 6y ago"And what if the device doesn't run javascript" You've still got javascript requirements there on the browsing device, eating up more CPU/Memory/Battery than a straight HTML page would.
- wayneftw 6y ago"Embedded javascript to make them responsive" That sounds optional and a bit of JS for making things responsive certainly doesn't automatically create a CPU/Memory/Battery drain.
- DHPersonal 6y agoThe PSP does, but it's pretty limited.
- kwdc 6y agoJavascript is available for microcontrollers within various ram footprints. Here's one mentioned recently on HN https://jerryscript.net/ https://jerryscript.net/ There's even benchmarks for them. https://bellard.org/quickjs/bench.html https://bellard.org/quickjs/bench.html
- JoeAltmaier 6y agoCool!
- tshaddox 6y agoWhat if a device doesn't have a web browser? Or a display? Or a network connection? At some point you have to make some basic assumptions about the platform you're targeting.
- mattl 6y agoThere are many web browsers that don't support JavaScript, and JavaScript is something that can be quite easily turned off in many browsers that support it. Harder than it used to be, if anything.
- godshatter 6y agoThen there are those like myself that run NoScript or something similar where the author of the website has to entice me into allowing them to run javascript code on my computer. If I can find the correct one to enable out of the dozen or so that most websites seem to use.
- forgotmypw17 6y agoAt some point it,s time to give up. But before I do, I will bend over backwards twice to try to accomodate the user. Maybe it,s because of all those times some arrogant asshole website told me my browser isn,t goos enough.
- forgotmypw17 6y agoMy several years iPad with iOS 9, an otherwise capable device, locks up regularly on many js sites. JS is a global toggle which takes 30 seconds to switch.
- simias 6y agoI concur. I wrote a web interface for a crappy 20yo DSP last year, the thing doesn't even have an MMU and only 32MB of RAM. I basically put all the code in the browser, on the device there's only a very simple C HTTP server that serves the static files and blobs of data. In the end the UI looks fairly modern and responsive even though the backend is potato hardware. I wouldn't say that client-side JS is underrated though. If anything I'd argue that the modern web heavily abuses it. Try browsing twitter or youtube with Javascript disabled for instance. The site simply won't work.
- iforgotpassword 6y agoFor YouTube I kind of still see a point, if only to not make scraping videos dead simple by not just having the plain URL of the video file in the html (yes there are still tools out there). But twitter is so ducking ridiculous in that regard. At its core it is a web site to share 280 character long strings, but as of recently you cannot do this anymore without JavaScript! They shut down the legacy page at the end of 2020 that was blazing fast and a pleasure to use. And what irritates me the most about their modern Js based mobile page is that it frequently happens that I tap a twitter link on HN which takes forever to load, then it shows two blue spinners one at the top and one in the center and then after another eternity it says "this content isn't available". Then I hit reload, the whole thing repeats and this time the 280 characters display just fine. How? Just how do you end up with this?
- scaladev 6y agoI would imagine it's the result of inventing some busywork the keep the frontend team occupied after the product is "done" and the only thing it really requires is low amounts of maintenance. That, and pushing more useds to the mobile application.
- simias 6y agoI would argue that the fact that video content is often so frustrating to scrape is symptomatic of the massive cultural shift the web has seen over the past decade or two. In the "old" web you could basically right-click -> save anything you want (ignoring plugin blobs for the sake of making my point more compelling). Meanwhile I tried manually scrapping a video from reddit the other day, I succeeded but it was quite the puzzle. First you have to find the right element in the DOM, then find the source which is a playlist for the various qualities available, then there was a 2nd indirection I think, then finally I got the URL of my video file. My browser obviously knows about all of this but it won't expose it easily. No "Save video as" menu. For some reason I don't expect that Chrome will implement it any time soon...
- theandrewbailey 6y ago> Embedded javascript to make them responsive. We must have different definitions of 'responsive'. You don't need javascript to make a website look different due to different screen sizes.
- fouric 6y agoWhat if you do, though? Flexbox is a CSS 3 feature. Support appears to have been implemented in FF and Chrome around 2012-2014 and still doesn't fully work in IE[1]. The fact that a site uses CSS and HTML instead of Javascript does not imply that it's easier for older browsers to display. Javascript 1.0 was released in 1996. [1] https://caniuse.com/flexbox https://caniuse.com/flexbox
- leephillips 6y agoYou don’t need CSS to make a website look different due to different screen sizes. In other words, plain HTML is responsive by default. You can improve things with CSS. But if your site is unusable on small screens, you’ve broken something with your “design”.
- giantrobot 6y agoFlexbox is by no means necessary to make a responsive web page. Media queries have been supported by mobile browsers for over a decade as has the viewport meta tag. Between the two it should be straightforward to make most page designs responsive. Old browsers (old IE especially) that don't handle those features aren't a problem because they'll just fall through to the screen style. Trying to use JavaScript to help old browsers is a worse solution as you're more likely to run into JavaScript incompatibility problems than CSS.
- lmm 6y agoFortunately there's a practical way to do properly responsive layouts that will work in any browser even from before 1996: HTML tables.
- dvdkon 6y agoThey might have meant actual responsiveness, as in the absence of lag. On low-end embedded devices, rendering a template with something like PHP could easily take high units or even tens of seconds, whereas JS on a much more capable client device can respond to the user's input immediately.
- antihero 6y agoDifferent solutions for different problems. You have a different design requirement when you are designing something for use by the most vulnerable and those without access to reasonable technology. This absolutely needs to be factored in when choosing how to build something, however, this is a tiny subset of users, and this is for essential life-is-in-the-balance types of service. The vast majority of users will have even a rudimentary smartphone (some years ago I visited the Calais jungle to donate food and supplies, and whilst people were struggling to eat, they knew that a smartphone was a cheap, key thing to obtain and hold onto because they make accessing help and communicating with their support network possible) and or laptop that can handle some lightweight JavaScript and benefit from an enhanced experience.
- zelphirkalt 6y agoI think this is an exclusionary mindset. Just because it is a tiny subset of users, it is OK to exclude them? How about when it is quite easy in many cases to support them, by using standard conform simple HTML? Example: How many login forms have I seen, which will not show their input fields, if I do not allow their shitty scripts to run? In fact, just today I have seen it, on a VPN login, on a thing, that is supposed to give you security, I need to allow scripts, to have a login. Otherwise there is only a background picture. Thank you very much, so helpful! And then when I allowed their scripts, guess what. A text became visible, which told me, that in general scripts need to run in order to use the page. How much fail is that? They don't know the noscript tag or something? That's only today's anecdote. I see this kind of fail every day, except for the days, when I miraculously manage to avoid all badly designed websites. It is getting worse and worse, because web developers seem to find it normal to, by default, reach for JS, instead of thinking about how they can solve the same thing using just HTML and CSS for a second or two. I think it is still worth pursuing simplicity in web development. For the earlier example: Rendering a login using JavaScript is not simplicity. It is unnecessary, silly, and exclusionary without need. So my message is: If your service can be done using plain simple standard conform HTML(5), then use it. It will also almost always have less bugs and be simpler code to maintain. Information display does not require dynamic pages per se. Usually it does not and many many websites are about information display, not impossible to solve via REST dynamic pages. Nowadays properly designed static websites are faster than badly designed JS heavy websites, which render on the client-side. The bloat has become this bad already.
- ogre_codes 6y agoThis is a fantastic article, it does miss one very key point about bog-standard HTML which is worth mentioning though. The standard widgets are all accessible, people with screen readers, limited mobility, poor vision, etc, all rely on pages being written so the devices they use to read the web can function properly. People who choose to eschew these standard components very frequently end up with a site which is unusable for disabled people. Very few people have the skill to turn a div into an effective button, yet over and over I see web sites with rows of buttons which are in fact just divs with javascript behind them. Making your site accessible isn't just a good practice, in the US, it is the law. Courts have ruled that the ADA applies to web sites along with any other type of business. A small sample of sites where people thought they could smash together super-fancy sites without concern for basic needs of users: https://www.atilus.com/top-10-ada-lawsuits/ https://www.atilus.com/top-10-ada-lawsuits/
- arcturus17 6y ago> Making your site accessible isn't just a good practice, in the US, it is the law > Courts have rules that the ADA applies to web sites along with any other type of business For a business like a coffee shop I'd imagine that accessibility is codified in law through things like building regulations (ie, you must have n disabled parking spots per square foot, a disabled toilet, etc) Is there an equivalent legally codified and enforceable standard for the web?
- rstupek 6y agoThere is not a codified standard however that doesn't stop websites from being sued
- ogre_codes 6y agoIf you comply with the WCAG 2.1, you have a pretty good legal defense. While it isn't "Law", it is the most widely known published standard and likely to be added to the law soon. https://www.w3.org/TR/WCAG21/ https://www.w3.org/TR/WCAG21/
- 6y ago
- apabepa 6y agoI am not a front-end developer but looking at it from a distance I really don't get modern web design. Sure some sites might need fancy javascript single page features, like if your webpage is an interactive map or realtime game, but most sites are just text and some pictures. Whats with all the javascript? Your site looks just like the next one anyway! It feels like an "Emperor's New Clothes" situation or maybe more likely I just don't understand the allure as an clueless user.. I am almost tempted to make a webpage to see what the big fuss is about!
- alecst 6y agoI agree with you. It definitely does not serve the user. I have two thoughts, as a nobody. 1. Ads/trackers/etc. need javascript 2. It's a way of flexing and saying "we have resources to put into this webpage which makes us a serious business." Any other thoughts?
- apabepa 6y agoYes the ads/trackers/etc is most likely a reason that a webpage cannot be completely without javascript. Two other possible reasons from the top of my head: If a web developer is hired to make a site they can probably charge more if it is a fancy javascript site. In some cases it might be in their self interest to up-sell this to a client that does not know better. If a web developer makes a site for themselves I am sure many want to take the opportunity to get some experience in the latest web-tech while they are at it. Just as I will use an obscure programming language for my next side project..
- dgb23 6y agoThings that are running based on JS on "regular" sites from the top of my head: - Toggling widgets such as menus, modals and other things you only want to show when the user requests it. This includes updating accessibility related HTML attributes. - filtering, sorting etc. of larger data sets in the client. - live updates of fresh, time related data - search that doesn't force a complete reload, via AJAX or cached on the client. - smoother page / content transitions via AJAX - everything related to forms / user input: you want to instantly react - managing and preserving state / context per user - visualizations / graphs that are explorable / interactive - polyfills for older browsers that don't support optimizations such as lazy loading. - interactive widgets such as chat boxes (not a fan but still) - testing and analytics A website isn't made of paper.
- pbronez 6y agoLove this: > Go sit in an uncomfortable chair, in an uncomfortable location, and stare at an uncomfortably small screen with an uncomfortably outdated web browser. How easy is it to use the websites you’ve created? It's so easy to get disconnected from the real-world applications of our technology. Build user empathy.
- red_hare 6y agoMy favorite example of this was when I worked on a B2B product with a daily email report. We noticed the most common usage of this email report came from native iOS email clients first thing in the morning. As a test, my team all went home and practiced being the user. We had a test email sent to our email addresses we would open first thing in the morning and attempt to make sense of it while laying in bed. The result was a lot less cruft, bigger text, and key takeaways above the fold.
- foopod 6y agoI love examples like this, I hope you don't mind me tagging on my own. Our team was doing in home interviews for a TV product. One of the customers subscribed to an expensive sports service and yet barely ever watched it. When we probed it was because her two sons had left home in the last year and she knew they would come home when a game was on if she had the service. She said that she wish she knew when big/popular games would be coming up so she could invite them around and see them more often. We trialed a fortnightly email newsletter for people that were subscribed but not very active. And saw a decent uptake in viewing almost immediately.
- satyrnein 6y agoVery poignant example! In terms of dispassionate product analysis, nice job using emails to reengage users at risk of churning out.
- allenu 6y agoYears ago I noticed that when I was hungry and tired, I would notice just how much bad design got in the way of completing a task. Things that I would work around easily when I was well-rested and sated all of a sudden became incredibly frustrating. Unclear instructions, or buttons that were hard to find, or error messages that were inscrutable suddenly became very obvious. I posited that it would be an interesting user test to have someone who was in an irritable mood try to use your product. I've never actually done this, and I still think it would generate interesting feedback.
- stakkur 6y agoI'm embarrassed to say that “It’s shit. But it worked" is a fair assessment of many web projects I've worked on over the years.
- thehappypm 6y agoAds need JavaScript, in general. Rich logging/event tracking needs JavaScript, in general. Native Apps tend not to be HTML-powered, they're powered by APIs that can also power Web sites that use JavaScript, again, in general. A lot of these corporate-ey features rely on JS.
- grishka 6y agoSo, yeah, if you disable JS, you'd only improve your experience on many non-interactive websites.
- john37386 6y agoExcellent story. It's true that sometimes we should go back to the origin of the web, when it was mostly grey. I miss that web. I feel that it was an art to make it that ugly, but for me it was beautiful to the eyes.
- MaxBarraclough 6y ago> I asked about the PSP – a hand-me-down from an older brother – and the web browser. Her reply was “It’s shit. But it worked.” This is particularly high praise for simple HTML as the shit part is likely the PSP's UI, which is of course out of the control of the website, whereas the it worked part is due to the PSP's browser and the website both working adequately. Good on GOV.UK for doing it properly.
- deleted 6y ago[deleted]
- deleted 6y ago[deleted]
- bachmeier 6y agoNot really the point of the article, but I've been moving to plain HTML for a while now for certain types of personal documents. It's a great feeling to open a file in the browser and know it's going to work. Make a change and all you have to do is refresh the page. Markdown, org-mode, etc. have good intentions, and they work for super simple documents, but in the end the flexibility of html and its closing tags pays off.
- forgotmypw17 6y agoAmen. Markdown does unexpected things so often, and then I struggle with how to escape it.
- anderspitman 6y agoFWIW, I started going this direction and ended up taking one step back and settling on Markdown. The reason was I realized an HTML renderer is still a pretty heavy dependency to consume my content. The upshot is you can now browse my blog with curl or netcat: curl https://apitman.com/txt/feed nc apitman.com 2052 <<< /txt/feed I may switch to another format in the future. It doesn't matter much as long as it's readable as plain text.
- petepete 6y agoI tend to write in Slim, it does an excellent job of removing most of the tag noise from HTML while giving you more flexibility than Markdown. https://slim-lang.com https://slim-lang.com
- moonchild 6y agoSlim doesn't look particularly interesting for majority-plaintext applications. It doesn't let you add nodes inline, so things like emphasis or links become much more verbose.
- petepete 6y agoYeah, that's the main weakness. Being able to drop down to markdown from within Slim alleviates the problem to a degree.
- nabla9 6y agoI suspect there is a growing web developer conspiracy to fight overconsumption and climate change. I see slow websites with carousels of large images with big texts. They link to value statements, mission statements, experiences, goals, community bullshit. If you want to know products, prices, or even what the site is all about, you must squint your eyes and really concentrate, maybe scroll down to the bottom of the page. I save €1000 per year in impulse buys because of these sites.
- exporectomy 6y agoSomehow we've regressed to 2000s levels of aggravating websites. When I want to buy a thing from a retail chain, I go to their site ready to search and have to click through multiple pop-ups first. No I don't want to subscribe to whatever bullshit, no I don't want to allow access to location data, no I don't care about stupid cookies, no I'm not wasting time talking to a chatbot that interleaves computer generated and human generated text with unpredictable delays. Just get out of my face and let me buy the thing I'm here for. I could understand all that for, say, a news site where they need to suck you in to subscribe for them to make money, but not a retailer where you're obviously there because you already want to buy something!
- salutonmundo 6y agoThe worst web browser I have access to is the "experimental" one on a Kindle 4. Most web pages that one might want to visit will not load in this web browser—because it does not support modern versions of TLS. For the reasons mentioned in this article—it's probably a good idea to keep plain HTTP access available on your websites.
- forgotmypw17 6y agoThis, a thousand times. No one is going to mitm someone browsing my text blog. On the other hand, https creates many barriers to access, including recent version requirement, time sync, and extra cpu and bandwidth.
- tpxl 6y agoISPs regularly MITM http websites to inject ads (in the US even).
- forgotmypw17 6y agoIt happens. I think I'd rather my site be served with ads, than not at all. It would be great if we could always automatically choose the right option, but browsers don't do that.
- tpxl 6y agoAds aren't that much of a problem, but serving cryptominers/phishing websites/viruses is a real issue.
- forgotmypw17 6y agoDo ISPs really do that?
- tpxl 6y agoI haven't heard of it, but other malicious actors surely do.
- xkr 6y agoReminded me of https://motherfuckingwebsite.com/ https://motherfuckingwebsite.com/
- tpxl 6y agohttp://bettermotherfuckingwebsite.com/ http://bettermotherfuckingwebsite.com/
- ryandrake 6y agoThe irony is that bettermotherfuckingwebsite is worse in almost all ways. I wonder if that was what the author was going for. I don't know what's truly satire anymore!
- jedimastert 6y ago> worse in almost all ways How so? I dislike the text color choice, but other than that it seems perfectly fine to me.
- ryandrake 6y agoAdmittedly most is just personal preference but the line width thing is the cardinal sin. Forcing huge blocks of whitespace on either side of the text for nebulous "readability" reasons is just wasteful. Too many web sites ape this pattern too. Look at John Gruber's website [1] on a nice wide 27" monitor for an extreme example. The content takes up less than 1/5 of the width of the screen. 1: https://daringfireball.net https://daringfireball.net
- wffurr 6y agoIf only it was simple to configure my user agent to act as my agent and format things readably. I prefer moderate line widths. Even at half-screen on my 29" widescreen monitor, unformatted text is too wide.
- forgotmypw17 6y agoI,ve been working on a hyper-compatible web forum system. With some tweaking, I,ve been able to achieve compatibility with Netscape 2.x, IE 3.x, Mosaic 1.x, Opera 3.x, and everything since then, not to mention Lynx, Links, w3m, etc. I still have some advanced JS stuff, but it,s behind feature checks. 25+ years of various client compatibility, for people with older devices and retro fans. Amazing tech we should not throw away.
- chrismorgan 6y agoPity that you must expose everyone’s passwords in plain text to achieve this (those older browsers won’t support TLS).
- forgotmypw17 6y agoNot every website requires passwords or any other secrets to be transmitted. I use a combination of fingerprinting and WoT to allow (but not require) anyone to maintain an identity without having to register or sign in.
- tommica 6y agoWhat is WoT? Does your system send a single-use code to the email, or some other method? I cant imagine a way to login to the account without some secret key, and that creates a dependency that might make the app unusable in another way on older devices.
- forgotmypw17 6y agoI use a combination of cookies, fingerprinting, and web-of-trust verification (by volunteer moderators). The WoT works by building a DAG of "vouch" tags for each user. For more capable browser, client-side signing using a private key is available. There is always an accessibility-security gradient, and there are trade-offs you have to make on every side. The needs of each user are different, and many would prefer to trade a lot of security for a lot of accessibility. For example, if someone un-housed is only using borrowed devices, older tech, library computers, public wifi, many would happily trade some security for being able to let their loved ones know they're OK. They're not worried about espionage or privacy, they just want to be able to send an "I'm OK" message to their family every day or two. For this type of scenario, and many others like it, a simple http-accessible website behind a simple password is by far the best solution I've found to date.
- lovelyviking 6y agoThose are not ‘crappy browsers’. If we call it “Browser” it should be browser, isn’t it? It should brows pages. It was never intended to be overweighted virtal machine and not a good one by the way. Past 8 years or so Youtube has nothing really more to offer then it was offering back then. The only new things it offers for me is overweighted dumb slow shit that fails to perform what it was perfectly doing 8 years ago, and all those slowness added for no particular reason that I could appreciate. All of this ‘comfort’ is getting on the way or doesn’t work at all. Perfectly capable IPad Pro now is struggling to load even Youtube. Almost every site I visit is bloated with idiotic unnecessary things that do not not even work properly. And once you see some new idiocy appearing on some big site, the first thing you think is :‘oh no’ because you can be pretty sure that every “designer” would copy this bullshit and it will appear on every site very soon for no reason. If that is not a dumb design by definition then what is? I would not call it even design. Those are layers and layers of garbage piled on top of each other and at this point when I see simple HTML I just wish to thank the author for lack of so called “design”. It’s not crappy browsers - It’s crappy sites overloaded with useless features. I didn’t see One big site lately that did become better ... not one! I wish to see one, show me one please. I wish to be mistaken there but I think it simply doesn’t exist.
- grishka 6y agoOh, YouTube. I'll never understand how they made it such that when you open your subscriptions page it first loads the list of videos, and then, 5 seconds later, shows their durations. Or how the player UI is unresponsive for several seconds after you open a video. That took some special talent apparently.
- Ashanmaril 6y ago>you open your subscriptions page it first loads the list of videos, and then, 5 seconds later, shows their durations Every time this happens I have this horrible feeling that they just removed showing video durations entirely. Which wouldn't even surprise me, I could imagine them doing some stupid A/B testing to discover they got more people clicking around when durations were removed. But regardless, it's insane that one of the biggest sources of internet traffic on the planet is software that can render a bunch of images (thumbnails) but it takes several seconds to display a few characters of text on them. I don't know if they're grabbing durations as a separate API call, or if that's just how slow their JavaScript is. Either way, it's pathetic.
- dekhn 6y agoMy undergraduate thesis has been hosted by my undergrad institution, UCSC, https://compbio.soe.ucsc.edu/papers/thesis_rafael/thesis.html https://compbio.soe.ucsc.edu/papers/thesis_rafael/thesis.htm... for 26 years. It was rendered using Latex2HTML. The "next page" images don't work since they were links to a website that doesn't serve those assets any more, but the thesis is still completely readable.
- cashewchoo 6y agoAs someone who did a lot of desktop application development prior to the web just totally gutting native app development, this is my take: The problem is that people want to make dynamic applications that have a rich UX and deep system integration while being highly portable. Unfortunately, it turns out that "portable" is basically a Great Filter for applications. If you can't run it, you can't use it and the rich UX and deep system integrations don't matter. So developers cast about looking for alternatives to Qt and GTK and friends. Flash and Java (and Silverlight....) all had browser plugins and offered vaguely convenient APIs for building applications with rich UXs. Unfortunately those plugins had inherent technical issues and died (or were killed, as it were). So what platform remained that had super easy distribution and portability? A XML document format that supported directives for styling xml and some rudimentary scripting language that could dynamically change that xml and styling. So that's what ended up getting built upon. And now, since abstraction can do anything, we finally have things resembling what we had 30 years ago in desktop applications but built on top of a standardized runtime with a JIT and a sandbox and a nascent assembly language. So that's finally what people use. I really had nothing but disdain for web applications built with javascript/jquery soup for the longest time. They worked, sure, and printed money and all that, but I was bitter that such poor technology was what won, instead of some evolution of the existing desktop app paradigm. Now with React et al it's finally getting bearable again. But I still find myself wishing I could just say forget all this web junk, I could write this as a Swing or JavaFX program in 10% of the time. (It's just unfortunate that nobody would be able to use it because nobody downloads programs off random websites anymore except Putty and nobody has an (independently-installed) Java runtime anymore. Which brings us right back to the initial problem).
- ratww 6y agoMy memories of non-web toolkits are not as fond as yours. You mention Swing, but I remember lots of my non-programmer friends dreading having to use applications made with Java, since they were considered sluggish and resource-intensive. They also had a certain look and feel to them that made them stick like a sore thumb compared to other apps, and a lot of people knew by looking when an app was made with Java. Java was actually pretty fast even back in the early 2000s, but thanks to Swing et al (and to the JDK requirement), Java desktop apps had a reputation was much worse than Electron or JS-heavy websites have today. Especially among non-programmers. Strangely, OTOH, Visual Basic had a terrible reputation among programmers, but most Windows users had no idea about it since it used native widgets.
- stickfigure 6y agoThis is a good article, but I have to differ with this bit: > If your laptop and phone both got stolen – how easily could you conduct online life through the worst browser you have? If you have to file an insurance claim online – will you get sent a simple HTML form to fill in, or a DOCX which won’t render? Assuming my laptop & phone got stolen, I'd have a hell of a time getting through 2FA to my email and password manager. I can get other non-crappy devices. And I'd never log in through an untrusted device anyway.
- anderspitman 6y agoNah I think I'll just keep rendering text in my 20M SLOC virtual machine thank you.
- turtlebits 6y agoPart of the problem is that once you expand past a single read-only document, things like navigation, routing, user input/forms- get complicated. Devs want friendly URLs, static sites for easy deploys (ie no backend for form processing).
- TeMPOraL 6y agoThat's true, but vast majority of websites are just a collection of interlinked single read-only documents. There are various reasons why they get overloaded with JavaScript, and none of them are beneficial to the reader.
- chovybizzass 6y agohad an interview yesterday where the guy was trying to justify using jsx over html. i hung up on him
- vascocosta 6y agoThe simple HTML of Hacker News is one of the reasons I love it so much. What a breath of fresh hair compared to modern Reddit.
- greggturkington 6y agoYeah. <img> tags for presentation (with no `alt` attr). Form <input>s without <label>s. No skip link, no landmark regions. <table>s with <div>s inside for non-tabular content. <font> tags. FONT TAGS. "A breath of fresh hair" is a typo that accidentally makes a good comparison.
- seumars 6y agoHN gets only 1 bag of popcorn
- yen223 6y agoHacker news has divs for the upvote/downvote buttons too, which apparently is a cardinal sin
- greggturkington 6y agoFor accessibility and on general principle, you should use a <button> for a button.
- userbinator 6y agoNonetheless, the fact that it works in browsers as old as IE6 (haven't tried anything before that) is living proof of the fact that dogmatic "best practices" cargo-culting is, practically speaking, of zero or even negative value.
- greggturkington 6y agoThat idea is progressive enhancement, is a best practice, and has been around for two decades
- tabtab 6y agoWarren Buffett said one of his greatest assets is the ability to "no" without fear of social pressure and retribution. Too many bosses and customers want fancy eye-candy without knowing and/or caring about the carrying cost of this bloat. Staff feels obliged to make them happy. All primates love "shiny red things", even humans, even if it's not rational. K.I.S.S. is dead in IT. Fads and toys won.
- cutler 6y agoToys won in more ways than one. Most content consumers now use apps more than websites so all this won't matter in a decade or two when the open internet will be some anachronism which lives outside the prevailing handful of walled gardens.
- greggturkington 6y agoSo, progressive enhancement?
- kome 6y agoI loved this article so much. For real. I hope web designers will follow the advice, and focus all their efforts on html+css. It's more complicated, I know. But it's better.
- SulfurHexaFluri 6y agoIts not simply better. Going HTML only means killing features and conveniences that users want for a benefit they mostly won't see. Its perfectly possible to make web apps run very fast.
- hn_scripter 6y agoWith careful architecture, it is perfectly possibly to run performant web apps with a lot of JavaScript, or Wasm even.
- jbj 6y agoMade me think of a time I didnt do adequate research before buying an expensive flight ticket: I was in Changi Airport and had a cheap return ticket to Malaysia, when I got back I was going to travel in the east coast of Australia for a few weeks as the end of my study abroad in Asia. It dawned to me that I never actually checked the Visa rules for Australia, but just pressumed that they would be like any othet commonweath country I had previously visited. Turned out I was lucky and didnt need a paper visa, but could do with an e-visa. As my HTC Desire Android phone had died in the humiddity, I only had the cheapest nokia I could find, X-1 ... Armed with a 2011 public internet kiosk of internet explorer, I tabulated through the australian immigration forms and found the correct form, filled it out while my browsing session of the kiosk expired, after a few tries, I knew exactly the way around the static site, and was what some would call "speedrunning" through their website. After sumbitting I just had to hope for the best. If that site had been required any more than it did, I am not sure I would have been able to submit my application through that public internet browser.
- GoblinSlayer 6y agoAnother example: a train schedule site that requires the latest approved browser. If you want to travel, first make sure you're not in the middle of nowhere.
- jbj 6y agoTalking about the sun ... We got a variant of those credit card sized NFC cards to check in to public transit, the issuer decided that they should have an expiry date. From what I remember reading in local tech news, the logic was that people bend/break them over time, making them have a measurable lifespan. My card actually expired in the middle of the countryside, and phone support just told me to get a replacement in the nearest convenience store. I could have been prepared for this if I had checked the expiry date and put it in my calendar, but how many people do this? btw, apologies for typos in my post above, it went quick, and was typed on touch screen.
- app4soft 6y ago> The unreasonable effectiveness of simple HTML If website owner gone wild he would just disable simple HTML frontend and would bloat you to download hundreds of JS-sripts. Still curious, why Nitter CAN provide usable & modern looking simple HTML frontend for Twitter[0], but Twitter itself can't (guess, probably won't) do that. [0] https://nitter.net/app4soft/status/1335199292701761538 https://nitter.net/app4soft/status/1335199292701761538
- euske 6y ago> Go sit in an uncomfortable chair, in an uncomfortable location, and stare at an uncomfortably small screen with an uncomfortably outdated web browser. How easy is it to use the websites you’ve created? This is such a quotable paragraph. It also reminds me of this: "Do what you can, with what you have, where you are." - Theodore Roosevelt
- stjohnswarts 6y agoThis article has a lot of good points. I went to my county's covid page to sign up for the vaccine wait list. It could have been one page of about 10 questions and radio button (and other basic controls) and a submit button. But nope, it had 500k of god knows what javascript being downloaded for transitions and fancy buttons and 5 pages of really nice looking questions. All I wanted to do was register for a wait list! Imagine older people (who I'm all have surely filled out simple online forms) with older computers going through this stuff. Or someone who is blind. It's ridiculous.
- chenster 6y agoFunny, no one mentioned Craigslist.
- lmm 6y agoMaking things work on crappy browsers is definitely important. But that doesn't always mean "simple HTML", and it definitely doesn't mean avoiding react or jQuery or whatever HN framework hipsters are complaining about this week - if anything, those popular, "bloated" frameworks are more likely to have been tested on these obscure browsers and have whatever workarounds you didn't think of. It might not even mean following "web standards"; frankly I've found writing HTML3 with no CSS, table layouts, and maybe even the occasional <EMBED> works a lot better on these old browsers than flexbox, semantic tags, or whatever the overengineers are trying to push these days. The bottom line is right; rather than posturing, test your site - actually test it - on one of these browsers.
- GoblinSlayer 6y agohtml3 is still a web standard all right: https://www.w3.org/TR/REC-html32 https://www.w3.org/TR/REC-html32
- rob74 6y agoHmmm, starting out with a description of what the plebes do in the housing benefit offices. Then mentioning in passing that his "old car" is a BMW i3 (can I have that old car? Oh, he was only test driving it...). This juxtaposition doesn't really endear the author to me. Ok, maybe I'm not getting the British sense of humour... he does have a point however!
- JonNordland 6y agoI might be misunderstanding you, but it seems that you feel the author tried to sneak in a brag, by telling us he owns a i3. Not to be disparaging i3, but it's not here bragging car. It goes for 11,5k USD in Norway.
- rob74 6y agoMaybe having an i3 today is not something worth bragging about for the HN clientele, but saying your "old car" is an i3 after the previous paragraph might not go down well with someone who would be glad if they could afford a (used) i3. Just my impression...