Jeff Madsen has a post on his site where he shares his opinions about Open Source software and companies giving back to the projects they use and love. His basic idea is that they're "screwing themselves" if they're not contributing for a few different reasons.
This will be a short piece, so I’m not going to go down [the] rabbit hole right now [of project timing], but tell me one thing: When a construction company is handed a one-of-a-kind blueprint of a new house, do they respond, “Well, golly gee! This has never been built before? - ?I have no idea how long it would take”?
[...] If you are good at creating software estimates, you probably already know the Joel Spolsky guide to making (somewhat) accurate ones. Break it down into small bits that you can understand. [...] Now…here’s where we start honing in on my point. I may have lied to you a little bit above?—?that construction team may not know how long it takes to build a stud wall with wiring [...] because they use bloody pre-fab for everything these days!
Relating this back to Open Source, he links these "pre-fab" items back to Composer packages, Node modules, etc and how they can help make things more efficient (more than writing it all yourself). A lot of companies see OSS as a way to get free software they don't have to create or maintain. Unfortunately they don't take into account the work behind them and how nothing ever fits 100% so you end up making modifications. If you contributed those modifications back to the project that could mean never having to do it again in your own work.
He ends with a few recommendations for companies looking to contribute these fixes and suggestions back to projects including providing monetary support or looking at paid versions over free ones.