3 ms·
I am not sure that I want Windows open sourced, there is actually some value in not being open source. Having strong control over a system makes coherent design
by danbruc 12y ago
I am not sure that I want Windows open sourced, there is actually some value in not being open source. Having strong control over a system makes coherent design decisions much easier, helps avoid fragmentation and simplifies compatibility. You can see all this at play in the wild - hundreds of Linux distributions, competing GUI frameworks or the relative ease of targeting a limited number of gaming console hardware options or the pretty coherent design of the .NET Framework.
There are real costs behind all that, when developing and maintaining several competing options as well as when deciding between or targeting them. Easily being able to look at the Windows source code would probably be a nice thing, but I am not sure if I would value this high enough to risk ending with a fragmented ecosystem a decade or so in the future.
- dhimes 12y agoYou can be open source and still maintain tight control over the system. Just don't let anybody hack the official repo. Open source doesn't have to be open development. It would be nice for third-party devs to be able to see the source to develop better apps. That was the problem with MS historically- they only allowed you certain hooks, and if you had a product they were interested in competing with, your hooks never seemed to work quite properly. Then their product would come out and work quite well with their system. IIRC, an example of this was RealPlayer vs MediaPlayer. Also, open source allows security audits and faster fixes, etc., at least in principle.
- danbruc 12y agoI have to disagree. There are two use cases, reading and changing the source. When Microsoft only allows very limited contributions to the source it either becomes effectively read-only or it will get forked. If it gets forked they will sooner or later face the decision to either compromise on their design decisions in order to maintain compatibility with forks or they start going down the fragmentation road leading to compatibility issues. Only reading the source is a different story. It should actually be a exceptional use case, for example for debugging, but besides that you should of course usually not worry about implementation details or even take dependencies on them. And Microsoft's documentation of the public surface is pretty good and therefore there is rarely a need to look at the source to understand the functionality. Finally at least for research purpose it has been possible for a long time to obtain a copy of the source, not sure if this is possible or how hard it would be for non-research purposes.
- pc2g4d 12y agoThe open-sourcing of Java could be considered to be a counterexample to the picture you're painting. In spite of being opened up years ago, Java has not been meaningfully fragmented as a software platform/development target. Of course, there are differences, such as Java being a language, library, and tooling, whereas Windows is an OS in addition to APIs and tooling. I'm sure you're right that there would be costs as well as benefits to open-sourcing of Windows.