For what it's worth, this comment is toxic. I am probably the kind of dev that would get lumped in to the group you're calling out, but I edit my own nginx files, I am interested in being close to the metal, and I'm focused on having strong fundamentals. So why not help out instead of being pessimistic? The eternal september thing is everywhere on the web. Everyone loves to talk about how much better it was 'back then'. It's very easy to look back and say that the past was better. You just strap on your rose tinted glasses and sense of superiority, and excuse yourself from any logical, productive discussion.
What I would like to see from experienced devs like yourself is some help with merging the best of both worlds. When should I be close to the metal? When should I work high up the stack? If you offer some real help, you could save us days or weeks or months, but if you take the easy route and point the finger then we all lose.
On HN specifically it's pretty challenging. I haven't made a billion dollars, I haven't scaled anything up to 10 million users, I don't have a Github project with thousands of stars, ergo there's no reason to listen to anything I have to say. I have no merits to spend on the meritocracy here.
HN also tends to rush to embrace the shiny and the new, so it's not sufficient to say something like, "build new things out of old, simple, battle-tested tools" -- which would be a stupidly obvious thing to say to a room full of greybeard sysadmins -- but you have to be able to justify why you should use older tools, and you have to be able to show that they're sufficiently better than the new thing, and you have to have specific examples, preferably from personal experience.
And I don't have the encyclopaedic knowledge to field that argument on much of anything, either.
...maybe a better way to handle this would be to just ask you, what is it that I could say that you would listen to?
I am looking to build a single-page app that communicates with a server several times per second. The idea is to have some python code created interactively in the browser through some click-and-drag process. That python code is sent to the server and ran alongside other similar python scripts; the scripts are actually competing game AI's. So you build it in the browser, and run it on the server with the game state being sent back to the browser to be viewed.
If you have a picture of the fundamental architecture this requires, would you kindly explain the major components and their functionality? I could use something like Django/flask on the server, but how do I keep my front end updated? It's hard for me to imagine the full stack, so if you could paint the picture and explain the parts that would be useful.
Thank you
> could save us days or weeks or months
I think you mean years or decades...
My point was more towards the JS side of things. JS just seems like a terrible choice of language for the tasks being performed where there are so many better alternatives, sure it makes writing a desktop app as easy as a web app but it just doesn't seem suited for the purpose. To me it's like writing complex systems in bash, sure it works but it's a pretty terrible choice.
But I agree, I wish it had been a different language.
The sysadmin niche has recently been flooded with young people coming from development backgrounds (which, today, the cutting edge is dominated by languages like JS and Go and Python), and they are approaching systems administration from a software development point of view -- attempting to abstract away the systems themselves, set up repeatable and testable environments, that sort of thing.
There's a lot of it that's not bad, but as always happens in these situations, they're ignoring the advice and experience of everyone that's kept the lights blinking for several decades now, and those older folks are finding it impossible to keep up with the flood of new people.
If anything kills this project one day, it'll be that it's no longer considered "okay" to connect to an individual server over ssh at all; you're supposed to use an IDE-like interface in a web browser, that connects to a service written in Node, that uses an API to download crowd-sourced pre-written web server configurations from a paid service, that then spins up a new VM using an API from another service, that then installs a daemon written in Go, that then installs the new web server configuration, and then all of your data gets migrated over to the new server and the old one gets decommissioned. If you actually ever touch a server or, gods forbid, edit your own Apache or nginx configuration files, you're a fool and an old-timer and you should retire.
(Inspired by an actual comment I saw on HN not too long ago.)