Geekerata : UNIX analog of Max Ehrman's Desiderata

Geekerata (A UNIX Analog of Desiderata (Max Ehrman, 1927)) (mainly as addressed to a network process) Badri Krishnamoorthy badri@srtc.com Route placidly amid channel noise and network failures, And remember what throughput there may be in executing all alone. As far as possible, without overflowing buffer Be on communicative terms with all processes. Broadcast your data quietly and clearly And listen(2) to others. Even to the null and the unreachable, They too have their requests. Avoid long and argumentative sessions They are burdensome to the ether. If you compare your priority with others' You may become vain or bitter For always there will be greater and lesser processes than yourself. Enjoy your CPUtime as well as your idletime. Keep cognizance of your portmapper, however low-level It is a constant port in the changing mappings of the network. Exercise caution in your execution, For the kernel is full of traps. But let this not blind you to what swap space there is; Many channels strive for high bandwidths, and everywhere Computing is full of parallelism. Be yourself. (Check with getpid(2) frequently) Especially do not forge NFS file handles. Neither be cynical about sockets, For in the face of all congestion and delays They are as powerful as STREAMS. Take kindly the influx of new requests, Gracefully re-prioritizing the older ones. Nurture support of check-points to rollback from sudden crashes But do not thrash pages due to imagined pagefaults: Many core dumps are born of bus error or segmentation faults. Beyond a nominal consideration, Be nice(1) to other processes. You are a child in the kernel space No less than the daemons and the device drivers, You have a right to execute here. And whether or not it is apparent to you No doubt the kernel is crashing, though it shouldn't. Therefore be at peace with your programmer However geeky you think s/he is. And wherever your read(2)'s and recvfrom(2)'s, In the noisy communication channels of the network, Keep a valid (void *) buf available in your address space. With all its stopped jobs, missing arguments and broken pipes, It is still a UNIX shell. Be backward-compatible. Strive to be up and running always.