As a software developer today, I live in a world of increasing conveniences. For almost every problem that exists, there is some existing open source library that handles everything difficult about it, and I just have to pull it in or write glue to it.
This attitude among programmers like myself reflects the relative lack of scarcity of tools at our disposal. Copying bits on the internet costs nothing. Failure only costs you your time. However, I believe having ready-made solutions for everything can really suck the joy out of the craft.
Machinists and carpenters frequently have to make their own tools to craft the parts they are commissioned to make. CNC has decreased the need for this, though custom tools are still often required.
As software developers, the art of making our own tools is steadily disappearing as the industry becomes commoditized. And in many cases, it's not just disappearing slowly, but actively discouraged, because it's seen as bad practice to use non-standard tooling.
We shouldn't have to be afraid to make our own tools as well when we have specific requirements, whether they be build systems or even full domain-specific languages. Not every existing tool on the web is perfect for the needs of your specific situation. Making something custom can solve a lot of problems, and allow you a degree of artistic freedom in your work—why work on something if you hate it?