The trend is, write code, explain how it works later. If developers want to take themselves seriously I think they need to become engineers and practice design and design documentation, including writing specifications and publishing them. This is non-negotiable in many if not most corporate environments. It's not easy but you can't expect other engineers to build other implementations by reading yours. 1. because reverse engineering is a pita and not a proper way to implement a spec. 2. because often, they care more about getting attention for their "product" regardless if others can build on it. 3. they have a head start for funding and attention. Specifications have no wow-factor, and allow others to "take credit" for your work by implementing it. Upside-down incentives I guess.