I’ve mentioned before that JWZ was one of my blogging heroes; but one of the most dramatic influences he had on me was introducing me to Richard Gabriel’s essay, The Rise of “Worse is Better”. Even though it’s about Lisp and Scheme versus Unix and C++, it’s an excellent, thought-provoking read which looks at why certain computer languages work and thrive, and why others fail. You should read it.
How many of you still use Scheme after college? I know I haven’t touched it or MATLAB since COMP 101, but I’ve sure used Python, Java, and C/C++ in my career as a professional programmer. Is Scheme still useful? Yes. It is widespread? Not outside of academia.
The core idea of the Worse-is-Better philosophy is that simple implementations which achieve most of the desired functionality are superior to complex implementations which achieve the whole thing. UNIX is really a collection of small programs which do certain things adequately, assembled and refined over the years until it’s a rock-solid operating system. But it’s not the stability which makes it so ubiquitous – it’s how it can run on almost anything. Microsoft figured this out with the NT to XP transition, and the success of XP – and relative failure of Vista – should be object lessons
Warcraft, in many ways, is an adherent to the Worse-Is-Better philosophy. The cartoonish graphics and relatively low pixel counts have allowed Warcraft to spread, like a virus, on computers which would not normally be considered gaming machines. The graphics degrade well because the style is simple and doesn’t require high resolution to convey the desired image. More processing power adds better effects but isn’t a requirement to play.
Simplicity is good for adoption. At any time, half of the computers out there are below the median, and if you are spending marketing dollars to get people to try your game you don’t want their machine to be an impediment. Games that don’t support certain operating systems or have high graphics requirements automatically start off at a disadvantage because they limit their customer base. This is a tradeoff from a development standpoint – you can’t port your game to every operating system, you can’t support everything, but you have to support enough to be profitable. I probably would have tried SW:TOR if it had a Mac client, but it didn’t, and I didn’t feel like buying a Windows 7 license and running Boot Camp to try it out. Bioware made a conscious decision to not support Macs to keep their development costs low, which eliminated me as a potential customer. That’s an acceptable tradeoff! It happens all the time. You have to focus your efforts to ship a product.
But that development decision had implications down the road.
Yesterday’s WoW patch (5.0.4) brought with it the new graphical requirements for Mists of Pandaria. It was a bit of a surprise to me, since my laptop – which had run the Beta fine – was suddenly unable to run Warcraft. I wrote about how it affects me personally on tumblr, but I don’t want to dwell on it. It’s done, I can’t use the laptop, my playtime is reduced until I upgrade it (which isn’t happening soon). Other people have it worse than I do – their only computer can’t play their favorite game, and I feel really bad for them.
I think it’s more interesting to consider the bind Warcraft’s longevity has put Blizzard’s developers into. Every year that WoW continues is another year where technology gets better. If we follow Moore’s Law, computers today are 16 times more powerful than when WoW launched, and the game competition being developed now can take advantage of that increase. Warcraft is competing against games that can count on a computer having an order of magnitude more resources than when it was first designed.
In many ways, that’s Warcraft’s strength, because it’s a social game, and mass adoption is key to continued success. I’ve said before that Warcraft is really a video game bolted on top of a social network. But that strength is also a weakness as the game ages, because WoW competes in the market with those other games. It has to adapt, which means that events like yesterday happen. Customers log in and discover that they’re suddenly unable to play because their computer is no longer good enough. All the marketing costs to acquire that customer, all the support and development costs to keep that customer, are lost if they choose not to upgrade their computer.
Consider that cost for a minute. Blizzard incurs a cost to acquire a customer (marketing dollars, core game development, retail packaging and distribution) and an operational cost (customer support, continued development, server hosting and operational upgrades, corporate expenses). The customer has an initial startup cost (buying the game) and an operational cost (subscription fees). This is all pretty straightforward in the short term.
In the long term, however, both sides incur costs to support the game. Blizzard has to spend development resources to maintain old operating system versions, old hardware models. Customers have to invest in hardware to be able to continue playing the game. (The initial investment in buying a computer which can play the game is often overlooked, because it’s the very first part of market selection – “does this person have a computer?” – and is a fundamental assumption.) Increasing the minimum requirement for the game brings this specific assumption into question – does the player still have a computer which can play the game – and also increases the cost for the player. Instead of $15 a month, now the player needs to look at it and say, should I spend $1-2k on a new computer so I can continue to play WoW?
If we assume a 36 month lifetime of a given computer upgrade, it’s $27.78-$55.56 additional a month for the customer. So at a minimum, purchasing a $1k computer to continue playing Warcraft is effectively the same as spending $45 a month on on sub.
Warcraft (or any software package which forces one) gets an unfair part of the blame in this decision to upgrade. There are usually other reasons to upgrade a computer which factor in to the decision (faster CPUs, more hard drive space, more memory) – but psychologically, the triggering event is the one which we focus upon. If I want to play Warcraft on a laptop, I need to get a new laptop. That’s the decision some people are faced with today. They aren’t saying, my web browsing is kinda slow or running a lot of applications (they probably are). They’re looking at Blizzard and Warcraft and going, is this worth an additional $30-60 a month? Do I have the cash to do this? Oh god Christmas is coming up and I was going to get Mists and now I can’t play Warcraft holy fuck what am I going to do I wanted PANDAS.
But computers are sixteen times more powerful than they were when Warcraft launched. That’s amazing!
This is a really interesting aspect of the game industry, and the MMO industry, which I don’t think gets enough attention. How do you have a subscription model where, over the long term, your customers will churn due to equipment requirements? What happens when your product is still going strong almost a decade later? How do you get the broadest adoption?
Worse-is-better is the answer.
Warcraft has taken a lot of heat for its cartoonish graphics, its low-polygon models, its antiquated engine. But that art style, that engine, has had good survival characteristics in the marketplace. I think other game developers and game enthusiasts alike should take note of it – long term success requires broad adoption over a variety of platforms. Your product needs to be easy to port, easy to adapt. Making a hugely complex jewel of a game which can only run on 5% of the computers out there is not going to be as profitable as making a Facebook game.
There’s a somewhat unique balancing act here that Blizzard has to walk. They are tied to old technology that has good survival characteristics, yet have to compete against new tech that can be shinier, faster, fancier. Much like UNIX, I don’t think that a competitor who follows Blizzard’s model is going to usurp them. MMO game clients which overly rely upon the customer’s hardware will keep running into adoption problems. Thin clients with broad platform support are much more of a threat than a traditional MMO because they can be adopted quickly. Put most of the graphical processing up in the cloud and watch the same game get ported to consoles, PCs, smart TVs, smartphones, microwaves, in-car entertainment centers – who knows where they will end up next?
I know I don’t. Not really, not yet.
But I do know that the game industry needs to start thinking more about the lessons Common Lisp taught more than 30 years ago, because asking your customers to purchase new hardware to continue your revenue stream is a tough sell.