Eve Needs a Tock, Not a TickPosted: 2013-01-07
The Clock Keeps on Ticking
The computer industry uses a term called “tick-tock” to describe progress in the CPU-release cycle. A tock represents a major breakthrough or a radical change in architecture while a tick refers to an incremental upgrade that while noteworthy, is nothing to rave about.
Intel’s new processor increased in Base Frequency from 3.4 GHz to 3.5 GHZ? That’s a minor enhancement when compared to changing architecture of Intel’s Sandy Bridge series processors.
I thought that the CSM7 cycle would have been a period of major change but rather we saw a laundry list of items receive work. The Crucible, Pre-Inferno, and Inferno cycles got developer time assigned to work on a backlog of ticks.
Granted Retribution contained a lot of ticks, but I wouldn’t call them a tock when looking at the scope of changes that came when Tech 2, Capital Ships, and Wormhole space were introduced.
My current sentiment are mirrored in Marc’s recent post:
…There are murals that could be painted to guide the way for EVE’s development for the next ten years, rather than looking at the last ten years and trying to fix all the mistakes. Not to say that mistakes can’t be addressed, but instead let’s try addressing them in new and inventive ways. Let’s kill two birds with one stone – set past wrongs right while also providing new and exciting content, or the frameworks for content generation, to attract a whole new generation of EVE players.
CSM Season Opens with Two Declarations and a Drama at Malefactor
Code Life Cycle
Working daily with a team that uses the same Agile software development methodology as CCP, I understand their struggle because we have many of the same challenges in our environment.
From what I have gathered from reading over CSM minutes, staff interviews, and perusing the Developer comments on the forums, a major hindrance to the advancement of the Eve world was in their inability to decouple their code.
If you made a small change to one section, it will affect thirteen other places that rely on it — oh, and all of the code is undocumented and the developer that wrote it no longer works here. As developers have changed seats and coding methods have advanced, I’m sure the style and quality of the current code is far more elegant and efficient. It can be easily tested and regression tested (something I think they have a problem with in previous years).
In the past few years CCP would develop, deploy, and then fix-on-failure. Compare the amount of patches and bugs in the 2009/2010 releases to the recent Retribution deployment. I haven’t worked out the numbers, but I feel it is significantly less.
The decoupling steps have been happening are ticks that will (hopefully) lead us up to a major tock. Two major examples of steps to decouple sections of code can be seen with changes that came in the Crimewatch redesign and the rework of Hangars.
CCP has stated repeatedly that the Crimewatch system was old, clunky, and filled with a ton of fringe cases that they had to handle with bulky nested code. With the re-write of the system, they have reduced the amount of arcane scenarios into a more manageable rule system that they can support.
The recent changes to Hangars took a section of code that treated Hangars in POS’es, Ships, and Stations as the same entity and made them separate. Now making a change to the branch that handles a Carrier will not longer need to be tested against POS’es or Hangars.
I see this Hangar change as a necessary step to enable the development of an entire new section of code that will handle POS’es. There was no way to use the existing branches to handle all the design requirement that we are requesting in the new POS system. Now that POS Hangars have been decoupled, they can truly start working on the new POS design.
Tick, Tock, Tick, Tock
Time moves on and more cycles pass as we march through time. Hopefully we can have some major tocks coming up rather than ticks now that a lot of smaller, necessary work has been done to set us up for a major architecture change.
Just as Marc stated in his post that I quoted from, demand more of the next CSM and yourself. We have the power to put people in place that will help us drive the changes we want.
[Jan 07 update]
Comments from CSM7 Member Hans Jagerblitzen: