defectbydesign
Open source have to die to give back value to the software industry.
Nothing new in a capitalist world...
Probably some of the less than 20 % of indian readers who prefer to hide the destruction of american jobs by India but actually by overpaid american tech leaders in the silicon valley. ;-)
In many industries it's not uncommon to subcontract a service by a subcontractor which himself subcontract the same service to another subcontractor (usually cheaper).
In the end it is only a question of money!
Actually top american tech companies don't have to go directly to India to get cheaper workers but instead they call american subcontractor to get cheaper workers anywhere in the world. Even more with restricted green cards thanks to Donald TRUMP. :-)
Are you ready for the dot com bubble 2.0? :-D
You can spread components in as many object files or libraries as you wish.
IMHO it's not a C related problem but a code design one.
Write libraries (with headers) only if you need to share the code but if you're not sure about that just include it for your specific program.
There is no shame to include local files containing declarations and definitions.
I think it is a misconception from C programmers to write headers for local purpose.
A paperbook is less likely to be lost and K&R is the more affordable reference to C rather than ISO 9899.
It seems cowards don't have any argument. :-)
A little effort and you could make C deprecated. ;-)
This makes me think that there are as many C++ gurus than Go(ogle) gurus who want to kill C to be the new Java which brings you a bad coffee from a dirty kitchen.
For reference I still use The C Programming Language by KERNIGHAN/RITCHIE and The Standard C Library by PLAUGER.
In my view what programmers need the most is good practices rather than any syntactic sugar.
I prefer C rather than any other programming language for its conciseness.
There is opportunities for any new programming language to replace C if it is at least backward compatible with K&R C SE (aka ISO C90) and provides a portable access to de facto standard hardware acceleration such as SIMD instructions for vector computing.
For now we have to write in assembly language SIMD optimized libraries in order to get the full calculation power of modern processors.
For programmers who expect C to bring them a hot drink, I would recommend them to stick with the bloated C++ framework which sometimes enlarges your p*s. :-P