3 ms·
> Do you actually have a problem that any of those are causing? With JavaScript turned off (an essential security precaution), no text is visible at all, which
by zeveb 10y ago
> Do you actually have a problem that any of those are causing?
With JavaScript turned off (an essential security precaution), no text is visible at all, which is a bit of a problem.
> I mean the site comes in at around 500kb transferred. That's not small, but it's also not obscenely large.
The actual content on the page really isn't that large. I got too bored to actually complete this, but you can see an example of what it could have looked like at http://pastebin.com/DBgK4Tv9 http://pastebin.com/DBgK4Tv9
It could have progressively enhanced itself, taking the plain-text HTML page, parsing out the choices in the em tags (which could of course have had classes attached to mark them as choices, or even to indicate classes of choices, e.g. 'day-name'). It would have been a perfectly useful tool for people without JavaScript; it would have been perfectly useful printed on a page.
And, frankly, it would almost certainly have been a lot smaller than 500K.
That doesn't take away from how cool it is: the author did a nice, exhaustive job (so exhausted I got exhausted trying to recreate it). He should be commended for it. But we should all reflect on how we got into a situation in which the easiest thing for him to do was the wrong thing, and how we can instead get into a situation where the easy thing is the right thing.
- Klathmon 10y agoWell, I disagree with you on disabling javascript being an "essential security precaution", but that's another discussion... As for the rest, there's also the point that the author probably wouldn't have done this that way. That seems like a dumb sentence, but hopefully i can explain it. This kind of thing isn't going to make any money, even with ads this is an niche thing and would probably end up making him tens of dollars at most (unless he got really lucky). That means that most likely his motivation was to "show off" a bit. Show potential employers that he can use those technologies, show off his professional skill, and at the same time solve a problem that he saw himself. So most likely it wouldn't have been made without those technologies. But either way, I don't think that this is the wrong way of doing things. I know that many disagree with me, but for most "web apps" progressive enhancement is dead. Yeah, for a simple company website, or something which should be accessed by as many people as possible like government websites, PE is still very alive, but for everything else, it's done. Javascript is part of the platform, and disabling javascript but still expecting a fully useful web is like disabling python and still expecting all of your linux tools to work the same (after all, those same devs could have written their code in C, then progressively enhanced it with python). It's part of the platform, and it's here to stay. Disabling javascript is not the solution to security issues.
- zeveb 10y ago> I know that many disagree with me, but for most "web apps" progressive enhancement is dead … Javascript is part of the platform It shouldn't be, it really shouldn't be. The web should be about GETing, PUTting, POSTting & DELET(E)ing resources (i.e., documents); it shouldn't about GETting executables. There's definitely a place in the world for a well-thought out universal executable platform, but HTTP + HTML + CSS + JavaScript ain't it. Progressive enhancement is a good thing: a document which used JavaScript to become a better, live version of itself would be better than an ASCII list of neat things doable with the Google interface; it'd be better than a static HTML document. And it'd be better than a single-page app. > It's part of the platform, and it's here to stay. JavaScript delenda est.
- Klathmon 10y ago>It shouldn't be, it really shouldn't be. See, but why shouldn't it be? Would it be valid for me to say that python shouldn't be a part of linux? That people should stop using python on their linux command line tools because linux is really about C. The web is an application platform, and I still haven't heard any convincing arguments as why we shouldn't use it as one besides "Because it wasn't one in the past". I agree that progressive enhancement is a good thing, and in a perfect world every application would start with the bare minimum and work up the "technology tree" to get to the latest and greatest, but in the real world of limited time and money that's almost never possible. Having something that's not perfect is better than not having anything at all.
- TeMPOraL 10y ago> Would it be valid for me to say that python shouldn't be a part of linux? That people should stop using python on their linux command line tools because linux is really about C. Somewhat fair point, but at least it would cut out the number of language runtimes one has to have on a Linux computer. For simple command-line tools, besides C/C++, you end up needing Perl, Python, Ruby, and now probably also Go and Rust. > Having something that's not perfect is better than not having anything at all. Arguable. The Internet is a perfect example of having a lot of things that would be better off not existing in the first place. Like, e.g., most of the sites for which ads are the only viable business model. But that's a longer discussion. I think the important point is that, while the individual choices of a software engineer in a particular time and moment can be excused, the trend as a whole is pushing us towards increasingly batshit insane pseudo-engineering. A static list like that should not need anything more than plain HTML/CSS and a little bit of JavaScript sprinkled on top to do the click effects. That people end up using shit ton of frameworks and external services for simple sites (this one is far from the only case) suggests that there's something very wrong with the industry as a whole. It's worth identifying it and figuring out how to fix it.