This footnote actually made me think about IDEs and the JS toolchain even more than makefiles.
If I'm writing a small project (say, 10 code files) surely an IDE where most people only know how to use 4 of the 1000 buttons is overkill, and I'd use a makefile.
Similarly surely 10 code files with 10 config dotfiles to set up a JS environment and tooling for dependencies, versioning, linting, transpiling, etc is overkill too.
- Basic javac/gcc/swiftc/whatever commands are simple, even if they can scale up through every niche via configuration options.
- Basic makefiles are simple, even if they can scale up to something like the xnu makefile tree (the most complex make system I've encountered).
- Let's not talk about JS.
I'm hesitant to use the word "lazy" to describe people who do what the author is describing - not just because I sometimes do it myself but because I believe that laziness is a derivative observation of time constraint, executive function exhaustion, and other factors. It also reminds me of the classic "I'm going to learn X, which handles/wraps Y, so that I can avoid learning Y", which is generally a bad pattern of motivation.
At its core this feels like a failure to understand (or failure of others to teach) fundamentals / first principles of the tools being used.