Hacker News new | ask | show | jobs
by JoeAltmaier 5167 days ago
They are at least mature products. I've worked on kernel code in Sun product, linux and Windows. And Windows was the only one done professionally, with mature complete APIs and some kind of design.

linux was the least mature. The kernel was a maze, there were 3 similar-but-fatally-different APIs for modules depending on where you graft them in (app, loadable driver, kernel driver), only 1 model of memory mapping was supported. And the code quality was very low. Nearly identical complete methods for trivial differences in argument (instead of calling common code). The same variable names used in different places for very, very different things (e.g. 'page' used for a page table entry, a page table pointer, a page directory pointer, a page directory, a page directory entry...) Spaghetti style code paths.

A large company like MS may have no coherent ethics or direction. But they have Lots of resources to actually, completely, exhaustively complete a code module with everything tested and in place.

So the products may not be great, or apply perfectly to solve your problem. Consider we're developers and our problems are pretty not much on MS's mind anyway. But they are responsibly coded and completed, which is a big thing.

1 comments

>linux was the least mature.

This I can agree with. I'm surprised that MS was well done though because their API appears to be a mess if Wine is any indication.