Hurt Me Plenty
I've been playing Doom 2 quite a bit lately. It's an old first person shooter, released in 1994, in which the player navigates through a hellish landscape fighting monsters.
What initiated this shotgun wielding stroll down memory lane was a fantastic book I read recently, Masters of Doom, that tells the story of the game's creators, John Carmack and John Romero. The two Johns were developers, with Carmack focusing on core programming, and Romero on game tools and design. Following the success of Doom 2, tension and resentment grew between them over Carmack's extreme focus on the continuing evolution of the engine that powered Doom. Romero ended up leaving the company to create his own game, Diakatana, which was supposed to be centered on game design instead of technical innovation. Though Romero had the support of deep pocketed backers, when Diakatana was finally released, reviewers panned it for being dated and poorly developed, while Caramack went on to create a string of hit games.
What's This Have To Do With Joomla?
I'm a developer, so I know that the most important aspect of Joomla! is the quality of its software engineering (of course I'm going to say that.) Seriously though, when I first read Kyle's assertion, I contemplated it for a few minutes and decided that he was right. No end user cares that Joomla! has a flexible architecture or is object oriented. Users just want to accomplish a task and the measure of any software is how well it aids them in doing so.
Beneath the Surface
Kyle makes a great point, but what about the lesson imparted by Carmack and Romero's story? I write extensions for a living and I have great admiration for the core developers and the bug squad because I'm frequently knee deep in code and using the results of their labor. For me, their work results in faster extension development with more possibilities, greater security, and less effort. To be clear, extension developers aren't the only ones who benefit because the underlying framework was designed to support the CMS which everyone uses. Additionally, it is by the virtue of having a modern code base that other core developers, such as the UX folk, are able to easily implement the cool new features we all want.
To get back to Doom 2, Romero faded away and Carmack went on to create other hits, however I don't think either of them has since created anything as fun as the game they originally created together; it is sublime when my Doom 2 character shoots a gasoline barrel and the nearby enemies explode in a gory, pixelated mess. I think the lesson is that it takes both great programming and a well designed user experience to make software shine and I know that we're going to see improvements for Joomla! in both arenas with future releases.