💾 Archived View for uscoffings.net › writing › 20130717-trivial-patches.md captured on 2024-06-19 at 22:51:09.

View Raw

More Information

⬅️ Previous capture (2022-06-03)

-=-=-=-=-=-=-

{
	"title": "Trivial Patches",
	"description": "Open source ratchets up",
	"tags": ["licensing"],
	"date": "2013-07-17"
}

I sent a patch to Michael Kerrisk, of Linux man-page "fame".  It was absolutely
trivial, but it was a race condition the I noticed in readlink(2) recently.

If you are Linux programmer, I suspect you too cut/paste example code from the
man pages, and massage it to fit your purposes.  I know I do, multiple times per
week.  I know what I'm doing, so it feels okay, but this perhaps is the Linux
equivalent to the IDE's nasty habit of spitting out boilerplate code.  (At least
we Linux people massage and understand our starting point.)

## Linux Community

The crazy thing is that I realized I'd cut-and-pasted this code twice previously,
and the NULL-termination case never made sense to me.  So I stopped, thought it
through carefully, concluded that the man page was not precisely correct, and
submitted a patch to improve it.

It was accepted, and will be in the next release.  Yay.  No biggie, but I've
scratched my itch, finally.

## Windows "Community"

At work, I'm porting some Windows code to be cross-platform.  The first target
is, of course, Linux.  Obviously, then, I'm looking up WIN32 functions on MSDN
constantly to be sure I understand them.  And many times on MSDN, I encounter
comments with suggestions and corrections that have been languishing, ignored,
for years.  Very quickly the difference between Linux (open-source,
world-improving- and ego- driven) versus Microsoft (closed-source,
profit-driven) becomes painfully apparent.

Many people have noticed this before me.  Here's just one, from 2009:
[msdns-community-features-really-suck](http://www.owenpellegrin.com/blog/rants/msdns-community-features-really-suck/).
He's complaining he can't get anyone at MS to listen.  Google and you'll find
many more.  It's the nature of the beast.

## Corporate Churn

Over the years, I have also have noticed on MSDN what I will call "tagging".
Currently, MSDN seems to be tagging content with respect to the current
hotness (XP? 7? 8? RT? ...?)  Each time a new reclassification push seems to
take hold, the old comments are flushed.  (I haven't carefully tested the
hypothesis, but I do notice that the current MSDN pages that classify the API
applicability against currently selling OSs tend to have comments that are similarly
current.)  Perhaps it's a valid point that MSDN isn't a reasonable place to give
feedback... but, then, where else?  The feeback there gets ignored and then
eventually flushed.

This is corporate churn.  There's always a new profit target, but the small
community complaints never get addressed.

## Ratcheting Up

On the other hand, open-source incorporates even the smallest improvements as it
moves forward.  There is not really the corporate reorganization or refocusing,
which whole-sale drops things.

I'll take the open source model.  Far less frustrating.  I feel like once I've
done something, it's done for good.  Good coders don't want to churn on the
trivial stuff; they want to ratchet up.  Open source lets them do that.