If you read anything about pop-culture online you have no doubt seen the phrase “fanboy” bandied about. The Urban Dictionary loosely defines a fanboy as being a “passionate fan of various elements of geek culture“. I’d argue that their definition is a little generous, as most fanboys that I know go well beyond “passionate”, often veering into the realm of fanaticism.
Sometimes it’s easier to understand the term fanboy in context. I happen to use an iPhone 5S as my mobile phone. I like the iPhone, I have a ton of music and movies in my iTunes app from the early days of iTunes — before they even had the iTunes store. But that’s just me, there are plenty of great Android phones, and plenty of folks who prefer the Windows Phone. Andy Ihnatko raves about the camera in the Lumia 1020 phones. Yet, Android fanboys tend to refer to my iPhone as an “iToy”. That says more about them than it does about me. Sure, there are differences in functionality between the various mobile devices and operating systems, but you can still get work done in iOS, Android, Windows Phone and BlackBerry OS 10. In the real world you can, in the world of the Fanboy you simply CANNOT. And this is isn’t just about mobile devices. Pick any database, computer operating system, hardware device or programming language and you’ll find fanboys rallying around their own personal standard. And anybody that is, god forbid, USING SOMETHING ELSE, is a heathen of the worst kind.
We don’t run our companies that way. Users should be able to use any device that makes their work comfortable. We follow Daniel Pink’s advice – autonomy, autonomy, autonomy. There are practical limits of course. We never want our companies to be using technology that is getting too old, or is no longer supported, or is too far out on the leading edge. That creates unnecessary risk. But even here, we are flexible. One of my teams recently petitioned hard to useRavenDB as their NoSQL datastore for a new project. It’s a little too new for my blood, and maybe a little too, let’s say “niche” as well. <- That’s EXACTLY the kind of comment that would send a RavenDB fanboy into fits of vitriol. At any rate, the team ran some tests and proved that they were right and I was wrong. RavenDB was faster than the alternatives and it was easier for the team to use with their C# code. It was the right choice. So guess what? They are using RavenDB for their new project. I’m not running around posting on message boards that they are using a “toy” database” and that “SQL Server” RULES. We like developers that are passionate about their technology, passionate but not fanatical. There is more than one way to get any given job done and we believe in giving our teams the autonomy to make their own choices. Fanboys need not apply.