> http.server isn't a production-ready webserver, so people use Flask [...]
Nit, but relevant nit: Flask is also not a production-grade webserver. You could say it is also missing batteries ... and those batteries are often missing batteries too. Which is why you don't deploy flask, you deploy flask on top of gunicorn on top of nginx. It's missing batteries all the way down (or at least 3 levels down).
Appreciate the nit. Had no idea that Flask wasn't production-grade. Yeesh.
I really don't miss this part of the Python world. When I started on backend stuff ~10 years ago, the morass of runtime stuff for Python webservers felt bewildering. uWSGI? FastCGI? Gunicorn? Twisted? Like you say, missing batteries all the way down, presumably due to async/GIL related pains.
Then you step into the Go world and it's just the stdlib http package.
Anyway, ranting aside, batteries included is a real thing, and it's great. Python just doesn't have it.
Consider that the insane growth in the cost of living - especially childcare - combined with wage stagnation means that now the vast majority of families have 2 parents with full-time jobs, keeping them away for their families for much longer than before. Consider that childcare is much, much harder to even get into now than in decades past. Consider also that "EdTech" means that nearly every child needs to be on an internet equipped-device at all times.
But sure, "Parents often give too little fucks for long term welfare of their children", that's definitely it. Parents just hate their kids! What a useful perspective you've brought to the discussion.
Look, I am in this category too, and all that high cost and parents far applies for me too. I live in Switzerland, country of many wonderful things in society but state helping young parents ain't one of the strong points, in contrary. Both me (cca senior banking position in IT) and my wife (doctor) have intense time consuming jobs. All family is very far and can rarely help.
Still, given all that, I don't do cheap excuses like that. Its pathetic and weak and simply untrue. Things are harder but thats it, not impossible like your side of argument wants to conveniently claim. Quality time well spent with kids is highly proportional to outcome of raising efforts. No way to hide from that simple fact, and nowhere to hide from results of parenting, everybody can see them in plain sight.
But if you setup your life so that pathetic things like career are your upmost importance and you have no time nor energy for anything else, those are your choices and thats fine. Just not getting why folks then have kids, just to skip on actually raising them and then whine how unruly they are, raised by toxic groups with no role models. Having and raising kids is not some fucking checkbox to tick and move on, its 20+ years full commitment and biggest achievement in one's life, or biggest failure. Worth some proper effort, no?
I'm like 3 sentences in and already things do not quite make sense.
> Calling [socket] operations in the wrong order [...] is undefined behaviour in C.
UB? For using a socket incorrectly? You sure about that?
> Documentation — trust the programmer to read the man page (C, Rust).
I'm sorry, are they saying that rust's socket interface is unsound? Looks to me like it's a pretty standard Rust-style safe interface [1], what am I missing?
True. So sad to think that hackers are exploiting - and yes, there can be no doubt, this is EXPLOITATION - weaknesses in coin-operated services. I weep to think how far has this once-noble vocation has strayed from its roots ...
John Draper and his fellow hackers were EXPLOITING coin-operated payphones and switchboards in the 60s, so I'm not sure how far back you have to go to reach the noble vocation you describe.
I agree, but can't tell if it's the nostalgia speaking. Like, I just went and tried to figure exactly what model of PowerMac my Voodoo card was plugged into, and just got a dangerous rush of nostalgia for model names like "PowerPC 8600" - which is an objectively very boring name but I think it meant something profound to me at one point in my life.
I have such fond memories of my old Voodoo card. Surprised how much nostalgia those pictures evoked - its rendering really had a unique look this that (LLM-generated?) FPGA captured quite well.
IIRC, it was a gigantic (for the time) beast that barely fit in my chassis - BUT it had great driver support for ppc32/macos9 (which was already on its way out), and actually kept my machine going for longer than it had any right to.
And then, like a month after I bought it, NVidia bought 3dfx and immediately stopped supporting the drivers, leaving me with an extremely performant paperweight when I finally upgraded my machine. Thanks Jensen.
Nit, but relevant nit: Flask is also not a production-grade webserver. You could say it is also missing batteries ... and those batteries are often missing batteries too. Which is why you don't deploy flask, you deploy flask on top of gunicorn on top of nginx. It's missing batteries all the way down (or at least 3 levels down).
reply