A long time ago I was a co-op student and was selected for a four month term at the Ministry of Natural Resources in Ottawa. The department I was working in did some transformation programs on old mainframes that took recorded field data and turned them into grids and stuff for maps. Well, it turns out that one of their main programs suddenly stopped working and they thought they would inflict it upon the co-op student to see if he could fix it.
Was the program written in C++ or Java or something else contemporary to the time?
No, it was written in Fortran 77. About 3000 - 4000 lines of Fortran 77. And debugging it required me making changes, compile it, load it on the mainframe, and run it there.
After a month and a half of learning the language, learning the massive program, and figuring out the problem (turns out the input data format changed from 6 digits to 5) I was finally able to solve the issue and deploy the fix. And promptly spent the next two and a half months mastering Minesweeper.
OK, how does this relate to EVE?
Given a working environment, all code can be deciphered and understood with enough effort. Wrong language? Learn it. Convoluted logic? Map it. Weird behaviour? Understand it. Computers work logicially and programmers have the ability to untangle that logic and understand code given enough time and intelligence. No code understanding problem is intractable.
Its been years since we first heard that the underlying POS management code is a terrifying mess of poorly understood source. And I can understand that, I've been knee deep in esoteric corners of confounding code before and I know the terror that comes from being faced with the thought that a change may occur. Ramp up the estimates, increase the doomsday rhetoric, and give other less terrifying options.
But eventually, that excuse is no longer valid. Sooner or later, if you have a festering sore in your code base its your duty as a programmer to clean and excise the infection. If you have a massive tangle of sphaghetti code in a language no one understands anymore, you decode it.
CCP, you've had enough time to address the problem that is the POS infrastructure code. You have not done so, instead putting it off with the same tired excuse we've heard so many times before. Its no longer acceptable and reflects a lack of managerial will and developer fortitude to deal with the problem, and as a result you are letting down your users who are stuck using that code day in and day out.
No more excuses.