Getting the best of you.

Good Morning Balkers: Worse Is Better

I’ve lived my whole life in the North East. I guess technically now I’m in that forgotten region of the country called the Mid-Atlantic, but my heart resides further north.

As an individual from New Jersey, you have to embrace the fact that people love to stomp on your state. Otherwise you come off as having an inferiority complex. Back in 1992 the NYT looked at this shared identity.

A rich compost of negative images applied over three centuries has given rise to one of the state’s hardiest crops, the collective inferiority complex.

Radio, television and movies have contributed to the problem by coming up with thousands of throwaway lines, but New Jerseyans themselves seem strangely compelled to assist in the process. The New Jersey joke thrives in part, said a Rutgers sociologist, Dr. Karen Cerulo, because “people who are insecure about themselves develop a self-deprecating humor.”

Advertisement

Thanks Doctor! But to be honest I pretty much agree. While the jokes about armpits and highway smells are cliche and eye roll worthy, they still get to you in some way.

Perhaps this is why one of my favorite articles about software development is The Rise of “Worse is Better”, where “Worse is Better” is called the New Jersey style. Below, a sample, but if you want to skip it the tl;dr version is basically a variation of “the perfect is the enemy of the good”. But at least stick around for the Purdue commercial reference at the end.

Let me start out by retelling a story that shows that the MIT/New-Jersey distinction is valid and that proponents of each philosophy actually believe their philosophy is better.

Two famous people, one from MIT and another from Berkeley (but working on Unix) once met to discuss operating system issues. The person from MIT was knowledgeable about ITS (the MIT AI Lab operating system) and had been reading the Unix sources. He was interested in how Unix solved the PC loser-ing problem. The PC loser-ing problem occurs when a user program invokes a system routine to perform a lengthy operation that might have significant state, such as IO buffers. If an interrupt occurs during the operation, the state of the user program must be saved. Because the invocation of the system routine is usually a single instruction, the PC of the user program does not adequately capture the state of the process. The system routine must either back out or press forward. The right thing is to back out and restore the user program PC to the instruction that invoked the system routine so that resumption of the user program after the interrupt, for example, re-enters the system routine. It is called ``PC loser-ing’’ because the PC is being coerced into ``loser mode,’’ where ``loser’’ is the affectionate name for ``user’’ at MIT.

The MIT guy did not see any code that handled this case and asked the New Jersey guy how the problem was handled. The New Jersey guy said that the Unix folks were aware of the problem, but the solution was for the system routine to always finish, but sometimes an error code would be returned that signaled that the system routine had failed to complete its action. A correct user program, then, had to check the error code to determine whether to simply try the system routine again. The MIT guy did not like this solution because it was not the right thing.

The New Jersey guy said that the Unix solution was right because the design philosophy of Unix was simplicity and that the right thing was too complex. Besides, programmers could easily insert this extra test and loop. The MIT guy pointed out that the implementation was simple but the interface to the functionality was complex. The New Jersey guy said that the right tradeoff has been selected in Unix-namely, implementation simplicity was more important than interface simplicity.

The MIT guy then muttered that sometimes it takes a tough man to make a tender chicken, but the New Jersey guy didn’t understand (I’m not sure I do either).

What I love about this is:

1) It’s actually a principle I often agree with while working on software (though it is not universally the best choice).

Advertisement

2) It let’s me indulge in my self deprecation and pride all at the same time.

3) It forces those who agree with the New Jersey guy’s argument that make fun of the state to reconcile that conflict.

Advertisement

In all honesty while I think most New Jersey folks don’t mind crapping on our state a bit, there is an odd sort of holiness to our musical apps. Dare insult The Boss on Bon Jovi and you may incur a great wrath (though I think we can all agree the former is better than the latter). I wish we laid a stronger claim to acts like the Fugees though:

If I had to pick one recent New Jersey band I’ve been most proud of recently, it’d have to be Titus Andronicus, which I’ll leave you with.

Share This Story