Second time I run into a developer on itch.io who doesn't know what a #web server is and thinks they need to code a #NodeJS app to serve static files.
This is terrifying. It's the future Google wants to build, with their HTTP 2.0 and Wasm: a future when even the basics are horribly hard and not even developers know how the web works because it's all a black box.
I'm begging you: fight this. Educate people. Don't let openness die.
This entry was edited (11 months ago)
Haelwenn /элвэн/ likes this.
reshared this
Frost, Wolffucker 🐺:therian:
in reply to No Time To Play • • •silverwizard
in reply to Frost, Wolffucker 🐺:therian: • •No Time To Play
in reply to silverwizard • • •Luna Dragofelis ΘΔ likes this.
silverwizard
in reply to No Time To Play • •No Time To Play
in reply to silverwizard • • •Luna Dragofelis ΘΔ likes this.
Frost, Wolffucker 🐺:therian:
in reply to No Time To Play • • •@silverwizard Yeah, exactly.
And as for "but efficiency!!!" – if it worked on 1990s computers, it works more than fine now on our vastly faster, vastly higher bandwidth ones.
Text-based protocols are GOOD, not Evil that Should Be Replaced.
Luna Dragofelis ΘΔ likes this.
Luna Dragofelis ΘΔ
in reply to Frost, Wolffucker 🐺:therian: • • •Frost, Wolffucker 🐺:therian:
in reply to Luna Dragofelis ΘΔ • • •@LunaDragofelis @silverwizard Forgot that, yeah! =^.^=
And if you need to do multiple whatsis, uhhhhhh, requests, Connection: keep-alive :3
Luna Dragofelis ΘΔ likes this.
Frost, Wolffucker 🐺:therian:
in reply to Frost, Wolffucker 🐺:therian: • • •Luna Dragofelis ΘΔ likes this.
Proxfox Virtual Environment 🦊
in reply to No Time To Play • • •Frost, Wolffucker 🐺:therian:
in reply to Proxfox Virtual Environment 🦊 • • •@tay @silverwizard You're missing the point.
The point is that with text protocols, you don't HAVE to use a thing somebody else already wrote.
And besides, someone had to write libcurl in the first place.
Binary just makes shit difficult for literally no reason.
Frost, Wolffucker 🐺:therian:
in reply to Frost, Wolffucker 🐺:therian: • • •@tay @silverwizard Like, yeah, if you're just making a thing, you can absolutely use a library, that's what they're for.
But what if you're writing that library? Or testing things? Or just playing around?
Proxfox Virtual Environment 🦊
in reply to Frost, Wolffucker 🐺:therian: • • •@IceWolf @silverwizard yes. someone who can dedicate a lot of time can do the work of writing a good HTTP client.
H2/3 are remarkably faster than H1
Frost, Wolffucker 🐺:therian:
in reply to Proxfox Virtual Environment 🦊 • • •@tay @silverwizard "Faster"? Meh. Not by any metric that matters.
Plain text worked in 1990 and it still works now.
Frost, Wolffucker 🐺:therian:
in reply to Frost, Wolffucker 🐺:therian: • • •Proxfox Virtual Environment 🦊
in reply to Frost, Wolffucker 🐺:therian: • • •Frost, Wolffucker 🐺:therian:
in reply to Proxfox Virtual Environment 🦊 • • •@tay @silverwizard For NOW.
What d'you think Google's plan is? Real HTTP is probably going to get "deprecated" once "everyone's on things that support HTTP 2 anyway".
Frost, Wolffucker 🐺:therian:
in reply to Frost, Wolffucker 🐺:therian: • • •@tay @silverwizard And also, being a Google power trip is a pretty good reason not to use it as well as it being a binary unapproachable mess!
(See also: webp, the other big one I can think of. There's probably other things too.)
Proxfox Virtual Environment 🦊
in reply to Frost, Wolffucker 🐺:therian: • • •@IceWolf @silverwizard ???????????????
You are aware the internet is decentralised? Like, Google doesn't run the entire internet. The current version for the H2 spec wasnt even authored by anyone at Google. It was Mozilla & Apple.
No Time To Play
in reply to Proxfox Virtual Environment 🦊 • • •Proxfox Virtual Environment 🦊
in reply to No Time To Play • • •Frost, Wolffucker 🐺:therian:
in reply to Proxfox Virtual Environment 🦊 • • •Proxfox Virtual Environment 🦊
in reply to Frost, Wolffucker 🐺:therian: • • •@IceWolf @silverwizard again. RFC 9113 is attributed to people from Mozilla and Apple. Not Google. It is owned by the IETF, who again, is not Google.
Google does a lot of bad shit - yes, but this isn't even something to blame on them, even if H2 was a bad thing, which it's not.
No Time To Play
in reply to Proxfox Virtual Environment 🦊 • • •No Time To Play
in reply to Proxfox Virtual Environment 🦊 • • •Proxfox Virtual Environment 🦊
in reply to No Time To Play • • •Frost, Wolffucker 🐺:therian:
in reply to Proxfox Virtual Environment 🦊 • • •Frost, Wolffucker 🐺:therian:
in reply to Frost, Wolffucker 🐺:therian: • • •Frost, Wolffucker 🐺:therian:
in reply to Frost, Wolffucker 🐺:therian: • • •Proxfox Virtual Environment 🦊
in reply to Frost, Wolffucker 🐺:therian: • • •@IceWolf @silverwizard you can still write your own H2 server. it might be more work, but a basic implementation shouldn't be too much harder (i haven't read the spec so don't quote me on that)
and if you don't want to, just write a H1 server. that is going to go away approximately never
Frost, Wolffucker 🐺:therian:
in reply to Proxfox Virtual Environment 🦊 • • •@tay @silverwizard
– It's pointless work that /shouldn't be there/ and /doesn't have to be there/. We already have a perfectly working stack from before Google started fucking with everything.
– I don't fucking trust "but it'll stick around!".
Frost, Wolffucker 🐺:therian:
in reply to Frost, Wolffucker 🐺:therian: • • •@tay @silverwizard Like what, you want real HTTP to be relegated to the obscurity of things like Gopher? Because yeah, technically gopher still exists, but not outside hobby circles. It's not like it's the thing you use every day already.
Plain-text real HTTP is something special. The fact that you can look at what's going on and /it's all just text/ is something special. It's not worth "oh we made things a tiny bit faster!" to lose that.
Proxfox Virtual Environment 🦊
in reply to Frost, Wolffucker 🐺:therian: • • •@IceWolf @silverwizard but H1 & H2 are kinda the same thing. ones just a binary transport for the same headers, status codes & data.
only 35% of the web supports H2 (and that's actually down from 40% last year). H1 isn't going away
Proxfox Virtual Environment 🦊
in reply to Frost, Wolffucker 🐺:therian: • • •@IceWolf @silverwizard i still have no clue where this idea that H2 is a conspiracy invented by google to sell more whatever their business and is
it exists because a plain text format is inherently slow.
Frost, Wolffucker 🐺:therian:
in reply to Proxfox Virtual Environment 🦊 • • •@tay @silverwizard A plain text format is not inherently slow! If it was slow, they wouldn't have been using it on much-much-less-powerful 1990s computers!
And considering Google is also trying to do this with literally everything else from TCP to image formats...
(video gets a bit of a pass, but only because Fucking Software Patents; they don't have that excuse for images)
Frost, Wolffucker 🐺:therian:
in reply to Frost, Wolffucker 🐺:therian: • • •Proxfox Virtual Environment 🦊
in reply to Frost, Wolffucker 🐺:therian: • • •Proxfox Virtual Environment 🦊
in reply to Frost, Wolffucker 🐺:therian: • • •Frost, Wolffucker 🐺:therian:
in reply to No Time To Play • • •@tay @silverwizard Yeah exactly!
Google's thing here is like. They're trying to warp the entire tech stack into whatever's best for them, screw the fact that we already have perfectly working stuff that anyone can play with.
Proxfox Virtual Environment 🦊
in reply to Frost, Wolffucker 🐺:therian: • • •@IceWolf @silverwizard
> Meh. Not by any metric that matters.
H2 can cut a page load time by up to half (css-tricks.com/http2-real-worl…)
HTTP/2 - A Real-World Performance Test and Analysis | CSS-Tricks
David Attard (CSS-Tricks)No Time To Play
in reply to Proxfox Virtual Environment 🦊 • • •Nasado
in reply to No Time To Play • • •Frost, Wolffucker 🐺:therian:
in reply to Nasado • • •@nasado @silverwizard You can just open a raw TCP (or TLS) socket and start typing!
You can also write servers/clients in basically anything, you don't need a preexisting library.
Nasado
in reply to Frost, Wolffucker 🐺:therian: • • •@IceWolf @silverwizard
Not really? First of all, textual HTTP is still very rigid compared to human-to-human communication; no novice without a guide is going to guess the incantation "GET / HTTP/1.1\r\nHost: en.wikipedia.org\r\n\r\n". I've worked with HTTP before and I still didn't get it right on my first try; I had the "HTTP/1.1" at the beginning of the line. It'd be even harder for someone who isn't good at English, since all the text in HTTP is based on English vocab.
As for writing new servers and clients... in my experience the exact opposite is true. Creating and examining samples of textual formats may be easy, but when it's time to write the code, binary is just so much simpler to work with, especially without a parsing library at hand. Not to mention that learning to read and modify other people's code is a vital skill for a programmer.
Frost, Wolffucker 🐺:therian:
in reply to Nasado • • •Nasado
in reply to Frost, Wolffucker 🐺:therian: • • •In some cases they're about the same, in others binary is nicer, but outside of dedicated string-processing languages I've never seen text protocols be easier to parse and generate programmatically.
And that's not the only thing I said, either, so.
silverwizard
in reply to Nasado • •chris martens
in reply to No Time To Play • • •No Time To Play
in reply to chris martens • • •Haelwenn /элвэн/
in reply to No Time To Play • • •At the same time if you want to bundle a bunch of static files, you're in for some portability hell because no browser could agree between each others on the format.
At least so far I've been able to unarchive most web-based games and launch a web server like gatling in the folder, but I can't expect everyone to be able to do the same, even on Unixes.