What kind of Hater are you???

In general, I like to think that technically savvy people are reasonably smart.  But I am always amazed at how blindly devotional many of us are.

At the recent Startup Weekend, the dev team’s choice was Ruby on Rails.  The question of whether I am a "Ruby Hater" of some kind has already come up a couple of times.  For the record I’m not.  I really don’t care.  What I care about is the end result.

But polarizing everything into haters versus fanatics is very common in the tech world.  PHP guys denounce Ruby and Java.  Ruby guys denounce everybody else.  Mac users think PC users are idiots.  Vi lovers spurn Emacs users.  Pick your toolset or platform and I guarantee there will be factions that pronounce you worthy or mentally challenged based on your choice.

When I ran an animation studio, it was the same thing.  We need Maya. 3D Studio sucks.  Lightwave just can’t be used for whatever.  On and on and on.

But the point is this: the whole haters vs fanatics thing is crap.  Sure, in the early days of something new, some functionality will be lacking and key features will be missing.  But once a new tool reaches a base level of functionality the differences between new and existing tools become largely irrelevant. 

However, thanks to our collective devotional tendencies, tool choices often become a matter of personal religion, not an assessment based on facts.  And that can’t be good.

For example, in the case of our recent Startup Weekend adventures, I personally would not have chosen Ruby on Rails for three reasons:

  1. There was a RubyCon in Charlotte on the same weekend, so presumably we were a little light on highly experienced Ruby dev guys.
  2. While the idea was simple, there was still a lot to be done in a weekend.  By virtue of it’s age, PHP has a far greater library of available code that could have been used to get things done.
  3. We were integrating with a number of external systems (Google maps and a payment system).  This has been done more and debugged more with other languages.

Note that these reasons have nothing to do with architecture, scalability or any other serious technical concerns.  My reasons have everything to do with the constraints of the situation (available time, resources etc).

While you can always argue over the finer points of something, you ignore reality at your peril.  And if reality conflicts with your current "religion" you either bury your head in the sand or you act like a rational being.

I for one prefer rational behavior.  That’s what guides my decisions, and that’s the way I like it.

4 comments for “What kind of Hater are you???

  1. November 13, 2007 at 9:46 am

    In the interest of keeping this blog hip and fresh, consider using ‘Hatah’, instead.

    In all seriousness, the fanatic/hater thing may just be a reaction to the overwhelming amount of info out there. As a .Net developer, there’s no way I have time to even keep up with all the new .Net technologies, let alone whatever Java is doing. As a result, it’s easier to just say, “Java is slow”, write it off, and get back to what I’m already quasi-good at.
    It’s also more likely just raw ignorance, though. I think developers tend to latch on to things and if it ain’t broke, we don’t fix it. So we stick with what works, focus in on it, and get better at it. When we have free time, we don’t always go looking for a new language to learn – after all, we already have a skill set that works. 🙂
    In the end, exposure makes more well-rounded developers, who can rise above zealotry to find the tool that works best for the problem at hand.

  2. DisMonkey
    November 13, 2007 at 12:36 pm

    Nicely said…

    P.s. As for Hatah, I’m too old to be that hip. I think of myself as charmingly retro 😉

  3. November 13, 2007 at 7:51 pm

    What’s “hatah” is that that new programming language?

    Seriously though, I agree with your basic principle Nick. Blind fanaticism is pretty dumb, no matter what the context.

    As for SW, if I’d been the “benevolent dictator” I probably would have picked Java, but mainly just because we had several strong Java programmers present and it’s what I personally know and am strongest with (outside of C++ which is, IMO, not a great fit for the SW environment). But when the group went for Ruby I didn’t make a big deal out of it, reasoning that I didn’t want to be “That Java Zealot Guy.” 🙂

    I think developers tend to latch on to things and if it ain’t broke, we don’t fix it. So we stick with what works, focus in on it, and get better at it

    Yeah, very much so. It’s a tough choice to make, to decide when to spend time learning something completely new, vs. just honing your skills at what you’re already good at. That said, SW did spur me into starting to spend some more time with Ruby. So much so that I’m typing this from the Raleigh.rb meeting. 🙂

    Now to learn Scala, Groovy, Erlang, Lisp and Haskell….

  4. November 14, 2007 at 12:29 am

    I never observed any hate of any sort during the weekend and I’m sorry that you somehow got tagged with the question. It’s too strong a word for normal use, IMO.

    That said, the process I observed for choosing a framework wasn’t necessarily for one that would guarantee a Sunday night launch (which of course, it didn’t). I think it reflects the segment of the dev culture most focused on startup companies right now.

    For many, the weekend was primarily about community building. Most of the workperch core devs were at the Ruby Brigade meetup tonight (driving from Carrboro!) listening to two Ruby developers talk about the motivation, process and tools in their two person startup.

    The local Ruby community seems the most entrepreneurial right now. If nothing else, the choice of RoR for workperch has added another half dozen devs right smack in the middle of the startup mindset that everyone in the area wants to see grow. I love that.

Comments are closed.