Offending Religiosity

In my recent post, I made the following introductory statement:

Scala is a far superior language to Java.

Sadly, but most predictably, some people took issue with this fact. It seems I have “stepped on someone’s meme” so-to-speak. Programming languages, unfortunately, have formed cliques who defend their territory with classic religious devotion.

It is certainly not difficult to conceive two programming languages where one is inferior to the other, and so long as neither language has any devoted followers, it is acceptable and makes perfect sense to anyone willing to hear it. I invent a language called Plus and it has one function + and integral literals; I invent another language PlusMinus and it has two functions, + and - and integral literals also. PlusMinus is superior to Plus.

We can traverse the futile path of “Actually, whether PlusMinus is superior to Plus depends on whether - is of any value. The non-existence of the - function in Plus may make it superior under some circumstances”, but I’m hoping, perhaps too optimistically, any objectors can see straight through this misnomer.

It is cases like these where the similarities to the typical religious organisations becomes astounding. I am charged with religiosity, because I am completely atheistic (i.e. null hypothesis) about my meme membership, by those who themselves are more religious than ever! Something about pots, kettles and blackness seems apt here. Furthermore, it is quite often the case that when the charges roll in, in defence of Java, those making the charges know Java quite poorly anyway (most so-called Java programmers do in my observations) — another religious theme that seems to be deeply embedded.

The status of “Java” has been artificially elevated by its groupthink members such that any attack or suggestion of inferiority is reviled, even if the suggestion is perfectly rational and able to be supported with evidence. I could simply discredit their understanding of their belief system by demonstrating how little they know about it (I am always surprised at how easy this is), but it does seem somewhat distasteful. Alternatively, I could present aforementioned evidence, only to have it (predictably so) misunderstood and misrepresented in various forms of logical fallacy.

No, I’d rather work toward abandoning religiosity itself and demonstrating that reason trumps. After all, like most religious memberships, I don’t think these charges have any kind of malicious intent or deceptive techniques behind them, invoke Hanlon’s Razor:

Never attribute to malice that which can be adequately explained by stupidity.

7 Responses to “Offending Religiosity”

  1. Pseudonym Says:

    Phil Wadler pointed out that programmer types (i.e. us) have a strange relationship between faith and science. Those with faith will, quite rightly, defer to science on a topic like evolution. However, when it comes to programming language choice, science takes a back seat to faith.

    Now having said that, here’s my concern:

    I once read a news report about a London gynecologist who had a theory that Stonehenge was a representation of female reproductive organs. The thing is, if you’re a gynecologist, you’re going to see female reproductive organs EVERYWHERE, right? Humans are very good at finding patterns, even in places where there is none.

    I don’t see any “astounding” comparisons to “typical religious organisations” here at all. I just see normal humanity.

    For example, it’s also true that that programming languages are languages, and the Sapir-Whorf hypothesis (to the extent that it’s true) applies. People who use Java regularly (and don’t know any better) have their programming minds partly conditioned by Java, and so tend to see all programming problems in terms of objects and methods, even where that’s not the “best” solution. Moreover, all subsequent programming languages are compared with Java rather than evaluated on their own merits (at least until you know a critical mass of programming languages).

    I don’t want to play armchair psychologist (I’m shockingly underqualified for that) but, and I mean this with the greatest respect, Tony, you seem to see the pattern of religion even when it’s not there.

    I’m sure none of us are any different; we all have something different that we read into things.

  2. Tony Morris Says:

    Hi Pseudonym,
    I am only commenting on what I am observing. I am not drawing any conclusions just yet. Programming language memes and religiosity have some striking resemblances. It is perhaps explained simply as ‘they are both memes’ or in your words, ‘they are being human’.

    But here are some that baffle me:

    * Those who defend their selected “culture” are often the least qualified to do so. In other words, I find myself having a debate with someone where I feel that I am able to argue their position (that I am disagreeing with) better than they can. I also find this when it comes to religion and philosophy. I don’t always observe this trend thankfully.

    * The defensiveness of the meme is often inversely proportional to the plausibility of its foundations. Again, I find this in both programming and religion.

    There are some others, but I’m not sure I am seeing it “everywhere”, since I don’t see it more often than I do. It just seems that I am able to predict a response in an nonconstructive programming conversation, simply by referring to historical evidence provided by religion and it occurs with alarming accuracy.

    I should point out, that my armchair study of philosophy and dedication to programming are not my only passions. Why do I not find such behaviour elsewhere? And as a side thought, I think I would go insane if I did!

    Overall though, I am wrong more often than I am right and I hope it stays that way :)

  3. Pseudonym Says:

    BTW, my observations might be off. And obviously I don’t know you, which makes me even less qualified to talk about what you see everywhere. :-)
    And yeah, I’m usually wrong, too, and I wouldn’t have it any other way. That’s how we learn.

  4. Ian Clarke Says:

    Saying that Scala is better than Java is somewhat passe, everyone and their dog has been complaining about Java for years.

    Why not challenge a real sacred cow and argue (as I have) that Scala is better than Ruby?

  5. Tony Morris Says:

    Ian, I thought that was obvious :) Really, it’s nowhere near as obvious. There are too many variables and areas where one might be subject to the possibility of conceding. There is no doubt that an improvement to the existing Java, whether it is called Java 5 or Java 7 or Scala, is indeed an improvement in all ways. In practice, Scala is a massive improvement over anything Java is likely to be in its lifetime (or my lifetime?).

  6. she Says:

    One problem is that often people EITHER attacking OR defending a language, do not know ENOUGH. Not even rather simple facts.

    I dont expect people to know everything (i know neither, and i am very bad at coding), but what I _do_ expect from people is that WHEN they critisize something, they really know what they are talking about. And at least a good motivation is that when you invest some time into something, you will experience drawbacks on your own.

    However, I get mad when people critisize a language without really TRYING to be objective. It happened too often in the past. These days when it happens, I laugh about these few people who can not even critisize objectively.

    Thus, I applaude you for your attitude of observing first, and judging later. Its much better than judging first, and then trying to fit your observation into this judgement.

  7. Gabriel Claramunt Says:

    Probably is a matter of wording: you should have said that Scala is Java 9 coming from the future :D Is amazingly ironic how religious technical people tend to be: critique any language and you’ll have hordes with pitchforks asking your head, the “agile” jihad is still fresh in my memory, many people run out screaming at the sole mention of proprietary software, and let’s not even mention operative systems or computer makers!
    The sad part is everybody seems to focus on technical tricks and forget the basic elements for software development: brains and communication.
    Me? I’ve been programming in Java the last 5 years and now I’m in a honeymoon with Scala, and of course, I firmly believe that everybody is wrong with the exception of me ;)

Leave a Reply