The code base for WinMobile was a horrible, disgusting mess. The build system is one of the worst I've ever seen.
MS let WinMobile rot internally for years, building up tons of technical debt, and they paid for it in market share.
I was on a project that was repurposing pieces of the WM6 code, just cherry-picking drivers and stuff. We used to go rummaging through the source code on "Wait, you thought /that/ was bad..." sessions.
The BSPs ("Board Support Packages") that provided drivers and and other low-level code for the various platforms that WM ran on were written by third parties, largely by contractors, largely by the /same/ contractors, and the code quality was again terrible.
Don't ever let code quality and good system design take a back seat to politics, personal agendas or convenience. That kind of nonsense is at the core of why MS is not a major power in the mobile market today. Senior management at MS utterly dropped the ball; I like to think it's because the upper echelons don't really read code or look at designs any more.
The code was awful because there was no accountability. No oversight. Nothing happened to you if you checked in junk, as long as it compiled. Q/A was happy if their tests ran and every function did mindless NULL checking on parameters.
MS let WinMobile rot internally for years, building up tons of technical debt, and they paid for it in market share.
I was on a project that was repurposing pieces of the WM6 code, just cherry-picking drivers and stuff. We used to go rummaging through the source code on "Wait, you thought /that/ was bad..." sessions.
The BSPs ("Board Support Packages") that provided drivers and and other low-level code for the various platforms that WM ran on were written by third parties, largely by contractors, largely by the /same/ contractors, and the code quality was again terrible.
Don't ever let code quality and good system design take a back seat to politics, personal agendas or convenience. That kind of nonsense is at the core of why MS is not a major power in the mobile market today. Senior management at MS utterly dropped the ball; I like to think it's because the upper echelons don't really read code or look at designs any more.
reply