Over the past 18 months, I've written two pieces about Windows Phone. In November 2011, I did a piece about the Lumia 800. Last month, I did a piece about the Lumia 620. Cut a long story short, I'm not a massive fan of Windows Phone.
That aside, typically when you write pieces that criticise technology you can attract the ire of fanbois. The really odd thing about criticizing Windows Phone is that you emerge from the process feeling like you're covered with a sticky goo. There is a strangely icky energy that Windows Phone fanbois come at you at with. It's quite off-putting.
But with a baseline level of bile, you always get useful feedback. In particular in that piece, a lot of people said they wanted more detail in that last piece as to why I felt iOS did a better job than Windows Phone. That's fair criticism, and if I return to talking about Windows Phone, I'll try and do a better job of that side of the coverage.
As well as feedback from strangers, you'll also get some feedback from people you know and work with. One piece of feedback I got from a colleague described the piece as "harsh," saying that I "was an ally of Microsoft's who's written their eulogy."
My reply to this was that "today in our industry, there is no place for allies." Anyone who hitches their career to any one vendor with anything more than guarded distrust is doing it wrong. This wasn't always the case — I did pretty well for almost 15 years doing nothing but being entirely "on message" from Microsoft, but certainly now it'd be mad to hope for another 15 years.
However, I don't think that this shift is a result of things changing at Microsoft or any of its peers within the industry. Nor do I think it's because currently everything is consolidating and changing very quickly. I think the idea of "allying oneself" to a vendor is going out of fashion because the computing industry is finally beginning to mature.
Personally, I have no problem with bias. Bias is part of basic human psychology, and we all do it. You'll be biased about some things, I'll be biased about others. Where we struggle as an industry is managing to remain in control of our emotional responses with regards to bias.
Say someone reads an article that proclaims that the "iPhone is rubbish." Assume the reader has a bias towards thinking the iPhone is good. There are two ways they can go — they can respond emotionally, or they can react emotionally. An emotional response is one where the individual understands their own psychic landscape and has an understanding of how their own biases affect their own thoughts. The outcome of this is a measured, sensible reaction allowing the writer and reader to reach a joint understanding through constructive exploration of ideas. An emotional reaction is one where the individual is not aware of their own psychic landscape and just reacts — typically with vitriol, and often with ad hominem attacks. This is where appreciation of a technology ends and "fanboiism" starts. The danger of fanboiism is that it's unconstructive — it's not about building a collaborative understanding. It's only about "lashing out."
Tech companies typically employ a special class of salesperson called an "evangelist." Their job is to seed customers with a special combination of love and technical information designed to de-risk a customer's adoption of a technology. These evangelists often work directly with companies on what is essentially a consultancy engagement, but they also often work in a loose way with the community. The purpose of working directly with the community is to both gather leads and to "spread the word." Importantly, the cost codes for this sort of evangelism sits within sales and marketing budgets.
Proper, paid evangelists rarely exhibit fanboiism — part of this is due to the fact that they are salespeople at heart, and salespeople typically have good emotional awareness because of the nature of the process of selling. They are also public representatives of their employers, which demands a certain deportment. Finally, paid evangelists have access to better information that provides a more complete understanding. But their job is to get you to drink whatever Kool-Aid their employer would like you to drink.
Go outside of paid evangelism and things are a good deal less controlled and it's much easier to find fanboiism. Oftentimes, particularly in this industry, baseline emotional awareness is pretty low. Information is often starved, leading to a lack of a complete picture. There's also no embarrassment that flows from a lack of professional deportment — fanbois often operate anonymously.
A realization that I've come to recently is that in our industry, vendors have worked out how to cultivate allies out there in the community, but those allies are simply unpaid extensions of the sales and marketing teams. Say you set up a hackathon using your own time and money to show people how to make — picking stuff at random — Android apps using Xamarin MonoDroid, who are you doing that for? You might get some advantage in terms of networking and creating sales leads, but the most obvious entity in that scenario that benefits is Xamarin.
(And I might be being biased here myself. Xamarin makes great products and I believe in what they're doing. Am I actually acting as an extension of their sales team by mentioning their product here? There's a strong argument that I am, but my desire is to use a real company to make it easier to follow my point. As a reader, you need to judge my bias, and my motives.)
Anyway, if you think about it, that whole arrangement is downright weird. As professionals we're being asked to choose the best solutions for our customers, but everything we do and everything we hear is being influenced by a chain of people from paid evangelists down to unpaid allies all (hopefully) pushing the "correct" positive message.
A question I've been asking myself for a while is "why are there so many open source frameworks now?" The answer, I think, is because as an industry we're moving towards structures found in academia, rather than the sales-led approach of the technology industry dinosaurs of yesteryear.
Go back even just to the turn of the century, the landscape of the industry worked was that you would have a few "ivory tower" type companies that would sit there and push dictats into the industry. Microsoft might push a five-year plan of how people are supposed to use Windows Server, SQL Server, IE, IIS, and ASP.NET to build applications for use in organisations. They could be clear when products were dropping, could define the tooling that was used, and seed the community with information that was needed to bring their objectives to pass.
Sun, Oracle, IBM, and a few others were also able to do this. Keep going back in time and you can roll in very old-school companies like DEC. The point here is that all of these are sales-led operations.
The problem with a sales-led approach is that it doesn't promote critical thinking. It is adversarial (I'll come onto that), but it's more about "tricking" the customer into building a mental picture where the good parts seem larger than reality and the bad parts seem smaller than reality. Thus as an industry we're immensely bad at being able to frame a constructive discussion as to -- again picking stuff at random -- why .NET is better than Java or vice-versa. In other industries with more rigour, that sort of comparison is easier because they are better at cultivating bodies of evidence that helps build a clear picture through disinterested analysis.
But, the good news is is that I believe the industry is moving to a next stage of maturity where we're starting to shed our "sales-led" approach and moving to one which is more like academia.
The purpose of the academic process is to take an idea and tear it to shreds in order to see if it works. Some of this is to do with safety -- you have to make sure a new drug is safe before it's generally available. However, most of the academic process is just to do with basic scientific rigour. There is no point in having everyone believe that the sun goes round the earth if that actually isn't a true fact. One example of this is that when CERN make a big announcement with regards to finding the Higgs boson, everyone grabs the data and starts validating it in a manner that's both adversarial and constructive, rather than just assuming the discoverers were correct and cracking out the champagne.
At this point, the only difference lies in how being an adversary works. In a sales-led approach, it's about trickery. In an academic approach, it's about taking an intentionally opposing view and looking to disprove a theory. Structurally, how I think this is happening in our industry -- and this part of the discussion is more biased towards software engineering -- is that we're creating analogues for mechanisms that exist in academia.
The ivory tower approach in software engineering no longer works. Most people aren't waiting for the next big thing from Microsoft on .NET or Oracle on Java. (And if you look at something like TypeScript, they're not even trying to use an ivory tower approach -- they're working in sympathy to the community.) What we have now is a large network of "cells" -- each of these cells being analogous to a research group. A couple of people might come up with an idea -- for example "jQuery" -- and put it out into the community. This is analogous to a "peer-reviewed paper", except for the review is not formalised, it's simply judged on whether the it gains momentum. (Perhaps this is like crowdsourcing the peer review?) Eventually the "paper" gets accepted into the body of understood facts within the community -- in this example we now know that jQuery has moved from the "theory" that it might be a good way to work with a DOM to the point that we now know for a "fact" that it is.
There's an angle here with regards to open source. People tend to think as open source as an "enabler" of this approach and that being open source provides an advantage. In this model, open source is not an enabler -- a lack of open source has a frictional effect. Imagine you work for a company and write a toolset. You go to your boss and ask to make it public. He/she turns round to you and says "no, it's part of our intellectual property". What's happening there is a commercial imperative is stopping the "publication of your peer-review" paper. Because open source doesn't have that frictional effect, it has an advantage. Note as well that an open source approach also has an analogue in application of scientific rigour. You can't validate an idea if it's a secret -- you have to have the paper/idea out there, being pulled apart and examined by as many people as possible in order to get validation.
The shift here is that the vendors are no longer in a position imposing "facts" on the industry. We are now much more empowered to create our own facts. But what goes along with this this is that if you're not applying a proper scientific rigour to our own personal analysis of technologies that we support, we're just being an unpaid salespeople.
Maturation of our the industry can only come from criticism and academic rigour. That's why I'm no longer an ally to any of the vendors, or a fanboi for any technology.
We need more evidence, and less salesmanship.
What do you think? Post a comment, or talk to me on Twitter: @mbrit.