You're not alone in this complaint. One of my former
co-workers used to whine at me about this every month or so
(I was the defacto "Linux/Free Software/Open Source" person
in the office and was thus considered an appropriate
target). It seems he had had occasion to take a few swipes
at the Linux IPv4 stack and a few bits of network related
userland code while working on his Master's project, and had
a bad experience with the almost complete lack of
documentation and the use of cryptic variable/function names.
Considering that one of the main points of free software is
that it is "open to many eyes," it seems to be a little off
that so many of the prime examples of free software make
little if any effort into making the code more understandable.
I, myself, had more than one occasion to grumble about the
crypticness of the network stack while at my previous job.