Re:Things Microsoft Still Does Well
by kabdib on Sunday February 09, 2014 @09:11AM
(#7205570)
Microsoft might be /okay/ at doing a Mobile OS; they are, however, at the mercy of the platform drivers, and this recently drove me away from my perfectly-fine-except-for-one-killer-bug Nokia 920.
Something deep in the Nokia 920 was turning on and spinning the CPU like mad; the unit would heat up and drain the battery by mid day. Nothing I could do fixed it; I waited through two system updates and it was never fully addressed. (AT&T was never very quick about releasing updates, either; separate problem). I finally downgraded to an iPhone a few weeks ago. I can use the iPhone all day without worrying about the battery, but the mail client (which I use constantly) is a lot more clumsy to use than the one on the Windows phone.
Microsoft is at the mercy of bad little code monkeys who write drivers at the BSP (Board Support Package) level, which are usually done at contract houses like BSquare. The code I've seen some out of these places has been . . . marginal. In the cases I've had to use it, I've usually wound up rewriting a lot of it. You get code that passes tests, but that's about the only bar for acceptance; internally the code is usually badly organized spaghetti whose mission is to pass the tests, and that's it.
You want the driver-level code in your system to be ROCK SOLID. If you contract this work out, you're going to need a great acceptance system [code and design reviews, because automated systems like WHQL are inadequate and get gamed anyway], a way to update drivers in the field so that mistakes can be corrected quickly [phone releases seem to happen every 9 months or so, so nope], and you want to be able to get good feedback from customers [looks at AT&T . . . sighs].
A phone is a top-to-bottom thing; blow one level and you've got a bad product. Microsoft hasn't really figured this out yet; maybe with the Nokia purchase they'll have a full stack and finally do everything right.
Something deep in the Nokia 920 was turning on and spinning the CPU like mad; the unit would heat up and drain the battery by mid day. Nothing I could do fixed it; I waited through two system updates and it was never fully addressed. (AT&T was never very quick about releasing updates, either; separate problem). I finally downgraded to an iPhone a few weeks ago. I can use the iPhone all day without worrying about the battery, but the mail client (which I use constantly) is a lot more clumsy to use than the one on the Windows phone.
Microsoft is at the mercy of bad little code monkeys who write drivers at the BSP (Board Support Package) level, which are usually done at contract houses like BSquare. The code I've seen some out of these places has been . . . marginal. In the cases I've had to use it, I've usually wound up rewriting a lot of it. You get code that passes tests, but that's about the only bar for acceptance; internally the code is usually badly organized spaghetti whose mission is to pass the tests, and that's it.
You want the driver-level code in your system to be ROCK SOLID. If you contract this work out, you're going to need a great acceptance system [code and design reviews, because automated systems like WHQL are inadequate and get gamed anyway], a way to update drivers in the field so that mistakes can be corrected quickly [phone releases seem to happen every 9 months or so, so nope], and you want to be able to get good feedback from customers [looks at AT&T . . . sighs].
A phone is a top-to-bottom thing; blow one level and you've got a bad product. Microsoft hasn't really figured this out yet; maybe with the Nokia purchase they'll have a full stack and finally do everything right.