Code King

On human social behavior, in can be observed that one person cannot only take or only cause pressure. People that are pressured tend to search for possibilities to cause pressure themselves, and vice versa.

When interacting with machines, pressure gets thrown back at the human operator. Especially in the case of writing code, the developer normally realizes that it is all his own fault, because the machine does not make mistakes. It just acts on rules created by physics. Thus, the developer experiences a feeling of powerlessness which creates pressure upon him. Or perhaps it creates a feeling of ultimate power because the machine is the one and only thing in the world that will ever do exactly what the programmer tells it to do, and that they desire to maintain this power in social interactions which results in their supposedly unbearable pressure in human interaction. Both of these ideas seem wrong.

The result of this can be noticed in many important open source projects. There are often some (usually very talented) programmers involved who tend to cause much pressure on human interactions to relieve themselves from the pressure they have to accept from working at the project. This often causes newbies to be scared off the development. It also causes stubbornness when searches for the responsible project when debugging problems where the fault could lie in one of many interacting programs. Every maintainer blames another project for the problem then. Blaming others and avoiding blame is part of human nature, and would happen regardless of your hypothesis that it is due to pressure from the machine. But it still holds that the programmer cannot blame the machine in the course of doing so. That isn't true, either. That a programmer perhaps should not blame the machine does not mean the programmer cannot do so. The programmer doing so would contradict the assumption that it is a talented programmer. So this argument does not hold. You subject your argument to the NoTrueScotsman fallacy. Your hypothesis that talent as a programmer requires a particularly rational emotional disposition is almost certainly wrong.

This could be one of the major effects slowing down the development of large software systems in a community effort. It would be interesting to read about possible solutions for this problem. On step in this direction would probably dealing more consciously with this topic. Would the developers think more according to the idea of LiterateProgramming, regarding programming as a form of communication to human beings, they would not treat the computer as the kind of singularity proposed on the rest of this page. This would probably cause them to learn that there is nothing special in their role, community-wise. The act of regarding the machine as a kind of pole in programming then has the role of an anti-social act of wankery.

This pattern has some similarity with the GodKing pattern.

This page exists on both MeatBallWiki and WikiWikiWeb because both the social pattern aspect and the software development pattern aspect are important to this, but the direction it takes may be very different on the two wikis.

<-> http://www.usemod.com/cgi-bin/mb.pl?CodeKing


Personally, I am usually not mad at my machine - but rather mad at buggy code written by myself or by other people. I find I am pressured by time, and I hate the fact that life is not long enough to complete all coding projects. I take this out on other people at times, but I am not so convinced that I am mad at my machine - in fact I love the machine. The machine is too nice to me. This doesn't mean I love the fact that sometimes the USB is broken or the hardware won't install on linux - that is usually a bug in OtherPeoplesCode or a lacking of code altogether (missing drivers, etc). The only real time I get mad at the actual machine.. is when a wire melts, the video card breaks, the CPU doesn't fit in this motherboard, the fan noise is too loud (this is one hatred I have), the hard drive is too loud (another hatred, can't sleep, have to invest in more expensive fans, have to put machine in a separate room and cables are now longer and a mess, etc).

Get yourself a water-cooled laptop system with large persistent-flash storage... you'll have a lot less money, but it sounds like you'll be happier.

I have invested in a nice quiet hard drive which cost the same amount as a loud hard drive but the RPM is a bit slower.. next I will try updating the fans to a quieter ones. Luckily it is a cold climate in Canada where I live so I can keep the computer in a cupboard or closet, but not in the summer - the doors should be kept opened. I have heard of the water cooling and have yet to try that out, mostly due to lack of funding and fear that water may leak or that the technology isn't easy to install or.. etc. I usually use a desktop rather than laptop.


Shouldn't this pattern be called "MachinePressure?".. or something pressure related.. i.e. why is it a King subject?


EditText of this page (last edited May 23, 2008) or FindPage with title or text search