The issue about ignoring future proofing is that you can invest a lot of time & effort integrating the tool into your environment, writing scripts etc. If that tool gets obsoleted for any reason, it can be a lot of work to switch to an alternative (this goes for FOSS & commercial software equally). You can get locked in to FOSS just as easily as with commercial, you just have a few more options available with FOSS. Some tools can be swapped in & out at a moment's notice, but if you integrate something into your way of working very closely, it can be a nightmare to unpick later.
As for modifying code yourself, that requires a whole set of skills & disciplines many admin teams don't have - I know our team/organisation would struggle with that. There are, of course, 100s of companies who are quite happy downloading source & patching/maintaining it themselves.
Other than that, there's some good advice in there. Version control & release/test cycles are key for any software product.