I bought a HTML template for a site I'm making. Typically I just pull the compiled html files out and make a standalone project which I maintain in a text editor. But, this time I figured it's time to learn modern web development so I tried using the toolchain it came with.
The toolchain consists of 3,446 dependencies, runs 15 processes, and uses 3 GB of ram. Unfortunately I can't run for president, but if I could I would run on the platform of making Node.js illegal.
They got a node.js mastodon also I saw recently! 🐘.js
Citation:
infosec.exchange/@shanmukhatej…
I had a vendor give us instructions on how to deploy a product from a Github repo once. It was a Node.js app. I spent a day or two learning Docker so that I could put it in a container and not have it completely shit on our system.
And, of course, it was an old, out of date version of Node.js that was required.
Yeah I had the same experience using Node to do React stuff. I spent 6 months with it, hated it for exactly that reason, understood all at once why we have toolchain vulns, and then ditched it (was going to see if I wanted to write a phone app in React native- Narrator: "he didn't").
I actually returned to Kotlin as my safety position (!), which blew my mind, since I was fleeing Java/Kotlin because "too bloated man".
Raw-dogging websites: index.html, styles.css, script.js. No frameworks, no CMSes, no build steps, no nuthin'. Sure, you can call it a static site, but even those tend to be compiled by sophisticated tooling behind the scenes.Brad Frost
“Extracting compiled html from a template with 3446 dependencies”
I haven’t paid much attention to front end development these past few years but I see the demonic rituals are progressing well and the pact has been sealed.
That’s nice.
This is my main motivation for developing Modulo JS - a one-file, zero-dependency micro-framework: modulojs.org/
I currently use it in my day-to-day work to develop over the file:// protocol directly in the browser, so there's no need for Node.js, node_modules... or anything, not even a web server!
Modulo.js is a HTML Web Component Framework with easy-to-learn interactive documentation, crammed into a tiny self-building filemodulojs.org
This is why I end up running screaming from my computer every time I start poking into any modern front end dev toolchains.
I mostly end up with a .css file with about 20 entries and some tables
My main language of choice is Python. It's good for getting things done quick and dirty.
I tried Node.js for a project I wanted to work on... and got really confused with npm and didn't go back.
You had me at 3,446 dependencies.
I immediately knew it was NodeJS and did not have to read more, but I did just for the confirmation.
i've been programming as an amateur since 1988 ish.
the only thing that defeated me was .. "modern web development"
it would be more pleasant to rip my very soul from my body, pass it through a pasta grinder, and re-assemble it with shoe glue, and stuff it back inside my body
how did this happen?
controversial - some say it happened because web devs aren't engineers by mindset - but instead tech enthusiasts - so blind to that mountain of tech junk aka dependencies?
How did you do this? Mine projects have never been bigger than 400 mb. Usually it's around 90-100Mb.
If we going beyond web development, I have one big project using tauri, however 4GB weight comes from rust dependencies. And the frontend dependencies only weigh 120 mb (keep in mind that most of my code is exactly on the frontend since it is a custom viewer for interactive instructions)
I'm just curious, how do you get your hands on one of these? I really want to see these mythical "node_modules are heavier than a black hole".
(I'm using sveltkit btw)
What were they doing that couldn't be done with Perl/CGI?
Yes, that dates me. Modern web is just reinventing the wheel in increasingly inefficient ways.
Needless complexity == lack of understanding. I deeply disliked Node from the start. When coding HTML/CSS templates I went back to the fundamentals, even dropping LESS in favor of well structured plain old CSS. Just a good editor and my experience and knowledge.
In the end all those needless tools/helpers simply create more work and a mess of unwanted dependencies. Fully agree with you, you have my vote.