JavaScript Naked Day
starbreaker.org
starbreaker.org
> Stop dicking around with JS and learn a language that will allow you to develop portable native applications.
A lot of those are not much more "native" than web applications. To be able to install on some platforms like iOS you need to pay and get approval from the platforms owner. On some platforms there are clear security issues with installing random applications.
> Or just pick a platform, whether it’s GNU/Linux & BSD, Windows, macOS, Android, or iOS.
And exclude a lot of people.
I just don't get it. The web is a sandboxed environment that everyone can run. I can understand hating Electron, but the web? I don't think users these days want to install Netflix or Facebook on their desktops.
Electron/Web let's you bypass all this shit, mostly. Also, the only reason why Linux desktop is actually useful to me is those webapps those people hate. It just makes sense to target web first.
I just wish there was more separation of website and webapp in the browsers. Two different things, in my opinion.
When? You think the average consumer wants to download a facebook app on their laptop? To be negged with updates vs just visiting the site?
I buy that the HN crowd wants native apps.
I and many others really, really don't. I prefer webapps for almost everything except things that need full access to things like filesystems, hardware, etc.
I want my mail, calendar, chat, videos, etc. to fully live in my browser where I have consistent management of tabs, bookmarks, extensions, logins and so on. I also really, really don't want to install applications unless needed.
> I just wish there was more separation of website and webapp in the browsers
Sure, that might be nice, but it also might create the opportunity for webapps to require being put in the "webapp" pool, and I really like just being able to run them as a website once and then just close the tab.
I think what you are describing is mostly what we already have with PWAs?
That's not much better than "everyone runs Windows" (but is a good way to view this). (And yes, you cover choosing an OS later in the post.)
What happens is that a select few browsers have what's considered at this point the runtime. So you are always leaving people out. Maybe the runtime price tag in itself isn't a problem now, but the hardware might be. The interface. And there will certainly be users who just want to avoid the low-contrast always-animating nature of some sites, for example.
Nowadays to me the environment is pretty much like Microsoft in the late 90s, early 2000s with their Windows+Office monopoly, and cultures that saw no problem is assuming that was available. But now, instead of these two, we're all expected to be running one of the select browsers that implement a recent enough version of the "living standards", and with powerful enough hardware and graphics acceleration.
But still, in some cases it has to be more complicated to make sites incompatible with other browsers and in the absence of javascript. Recently, I think I read something attributing trends in loading and rendering using javascript to the way Google ranks entries in search results.
There are sites that blank the viewport until scripts change css rules or class names, or load stylesheets.
The latter is especially noticeable when such a site has absolutely no error checking or fallback and stops on some javascript error, leaving the page "blank".
It's absolutely better. It's open standards based instead of proprietary, all current engines are opensource, there are multiple implementations.
> select few browsers
There are three current engines, and I try https://ladybird.dev/ every now and then. It's gotten pretty good and proves that even with a small team you can write a browser that will work with many sites.
> And there will certainly be users who just want to avoid the low-contrast always-animating nature of some sites, for example.
You could make all of that without JS. I'm not sure why people keep conflating the language with the design decisions the website author took. Just HTML+CSS is enough to make all the badly designed sites you want.
Yup, now days you can make pretty good animation site with out JS! Why are people insisting on using JS to be a criteria to see a web page? Could be that the some big players are using it to fingerprint users?
April 24 is JavaScript Naked Day – Browse the web without JavaScript (https://news.ycombinator.com/item?id=40104842) - Apr 2024 (42 comments)
Or you make a decent framework for cross-platform interactivity that’s write once and get back to business.
You keep your native apps. I’ll keep the freedom that platform agnostic code provides.
You're definitely writing it in less steps. Nobody would say Electron takes more steps than native GUI development.
It's gotten so much better to write, and most websites manage not to screw things up. But it only takes a few of them to put a bad taste in your mouth.
But don't worry, if there were any alternatives, people would screw them up, too. When WASM really takes off, it's going to be quite fun to watch. Everyone that hates JS will hate WASM even more.
And to achieve these cool animations websites have to load a shitton of javascript which makes them even slower.
These often even look sluggish, but maybe it is a relative thing and some see the prompt movement of UI elements as unpleasant and call the animations "smooth". Or maybe it really takes a very powerful GPU on the right hardware to fully experience animations without feeling annoyed? Or both?
In general, minimizing the amount of JS you write improves all of these issues across the board. A minimum of JS is easy to debug and ridiculously fast.
It offends me that in order to read a document I also have to grant the author of that document execution privileges on my machine.
It offends me when a page’s images are all blurry, low-resolution images (which would be redownloaded by the Javascript I have disabled).
The World Wide Web is a web of documents. It offends me that is has instead become a consortium of walled gardens.
Here in 2024, I am running Linux, with a nice huge full-colour display running XOrg (because Wayland is still not ready for primetime). I’m using Firefox. I have Emacs. TCP/IP and Ethernet are still around, although if I want spotty performance there’s always WiFi. FLAC and Ogg Vorbis have mostly replaced MP3s. I can easily watch high-resolution video, which is a definite improvement. Streaming, too, has gotten a lot better. I have a CD/DVD RW drive in my computer. CPU, RAM and storage are a lot larger, faster and cheaper.
It’s not really that different, other than the spyware infesting the web. That pretty much didn’t exist in 1999.
I wouldn’t mind going back to 1999. The software I used had a lot less bloat!
Sure, and if you want to define it as such you are free to only include documents in that definition. The rest of us will keep using the same protocols for accessing other things too and have another definition of www.
In general, it is a mighty odd notion every random person who can throw up a web page gets to run code on my machine. This shouldn't be a casual thing, sandbox or not.
I don't dislike JavaScript. I dislike JavaScript being used to make the web suck. So I have NoScript for when it sucks too much.
The 'build' tooling is terrible too, with layers of build-steps (due to incompatible code module types) that result in excessive script sizes. Due to the nature of Javascript, each byte is more computationally expensive than HTML or CSS.
TLDR: Websites are slower, and the fanciness doesn't add much.
Hijacking the user's scroll, rendering the entire website content on JS at client-side (although the emergence of SSR has made this less of an issue. Who knew that not rendering all the things on the client device makes things better, I'm shocked…) and SPAs more generally (GitHub for example is so jank and annoyingly slow nowadays, it's just irritating), doing things like buttons and links with a `<div>` with an `onClick` instead of using the appropriate markup, et cetera.
Of course, many of these things are exactly opposite to the actual best web development practices. But why, then, is this shite so prevalent‽ It's also bad for things like accessibility, with screen-reader users and such sometimes struggling majorly because of myriads of badly developed web applications. Meanwhile a standard HTML document, with some CSS and maybe some JS for progressive enhancement just works. Of course, I know that many use cases require far more interactivity and dynamism than that, but is it such a big burden to not make the user experience worse with bollocks like reinventing browser scrolling?
That's a shame, I used that a lot for quick browsing, checking and/or comparison of code in repositories hosted by Github.
Meh. Not offended, just bored by the silly maximalism. The web is big enough for all kinds of shit, and is better than anything as a distribution platform. Who is he to say what does and what doesn't belong on the web.
MathML can be generated from LaTeX with pandoc or latexml.
I believe MathJax has a similar capability.
Except this often means Electron. Dunno which is worse.
Although I would disagree with the initial premise, too. Javascript has been a part of the web for nearly 30 years now. Pretending it doesn't belong there at this point and ranting about other people finding it useful is just infantile.
So if you disagree, fine. It's not like you're disagreeing with gravity or something.
It's just de facto not any more, sorry. You can be a maximalist all you want, you're achieving nothing and nobody cares. You're not hip.
Do you know many users of my application care that it doesn't work without JS? Precisely none. My revenue would grow literally 0% if I went through this effort, and I would have a much worse application at the end of it.
I remember when all that was done server-side. And I remember having bespoke apps to interact with everything. It was horrible. Yeah, the rant dates the person pretty well - not old enough to remember having to download some platform specific .exe shipping some Java nonsense that somehow depends on having IE6 just to order computer parts from a supplier. Yes, it was a smaller download than just the same supplier's homepage is today, but it was just horrible to work with. I'll take the 60 MB of JS frameworks any day.
Exactly. I'm starting to believe that a lot of these HTML only maximalists are newer developers, who think it's some kind of trendy, retro badge of honour to reject JS.
Yes, there are some messy, bloated JS web site these days, but if you think we haven't progressed from web 1.0 I have to question whether you ever actually experienced web 1.0.
It's so frequent that I click to enlarge and the loaded image is displayed at a smaller, or about the same size due to the formatting around it.
For truly huge images with lots of detail to inspect a zoom and pan interface can be useful, but for most please just give me a link to open the image file directly - I will choose if I want that to happen in the same tab or a new one.
I’m arguing against being King. King of what?
The original article is arguing against using JS at all. We all understand that both are necessary, it's maximalists like the author that turn it into some war.
I could obviously use a lightweight framework to make rendering HTML easier with loops and conditionals, but I'm still using HTML. But JS makes that easy for me and no other language does that. That's why JS is king, it runs everywhere and a little bit of it goes a long way.