4 ms·
I see teams using Make to execute commands (e.g., transpile this, rename that, etc.), as a replacement (or enhancement) of npm (in the node world), for compilin
by tkiolp4 3y ago
I see teams using Make to execute commands (e.g., transpile this, rename that, etc.), as a replacement (or enhancement) of npm (in the node world), for compiling Golang binaries, and even for running stuff in the pipeline. Make is quite versatile, indeed, but it feels like modern teams are using it in a way Make was never intended to be used. That’s the reason why alternatives to Make have appeared. My take is: wouldn’t it be possible to update Make so that it fits more modern use cases more naturally?
The problems with Make alternatives is that: they are many and they don’t come preinstalled with your usual Linux distribution. Make has that special place to be a greater tool than what it is right now.
- getrealyall 3y agoMake is not a command runner. That people are abusing it as such doesn't mean make needs to change, it means people need to use the right tool for the job. Shell scripts can do the exact same thing without the wonky syntax or attempted dependency resolution, so why not just write a shell script? Hell, even npm has script running functionality. Is that not sufficient?
- dima55 3y agoYes. Thank you. Make is a victim of its own success in many ways.
- shortrounddev2 3y ago> without the wonky syntax Idk about you but every shell syntax on a unix-like OS is wonky to me
- getrealyall 3y agoThat's fine, you can always use something like Perl or Python then. But at some point, it certainly seems like all people want to do is run shell commands, and a shell script is still the best way to do that.
- shortrounddev2 3y agoI think people want a kind of declarative way for the application to pick up their files and build them, often simultaneously
- jonathankoren 3y agoMake is literally a command runner. That’s all it does.