Microsoft's New Core OS Team Learning from Linux
sokk writes "Seems like Microsoft is paying attention to the Linux way of doing things. According to itworld.com, a new central engineering division will work on the core of Windows: "The Windows Core Operating System Division (COSD), within the company's Platforms Group, will be responsible for the core OS platform, including development, program management and testing, Microsoft said in a statement sent via e-mail.". A little further down the page analyst Rob Enderle: "They have been studying Linux extensively. Part of their study has been on how Linux has been able to maintain a high level of consistency in the kernel while groups around it maintain maximum flexibility,".
"
It's not like Linux developers haven't learned (or blatently copied) anything from Windows.
Username taken, please choose another one.
Microsoft isn't stupid, Linux is a great study in OS Development, and they are using it to their advantage.
Microsoft better watch out! That GPL software might corrupt their innovation!
Denigrate it loudly while duplicating it quietly.
Is there any evidence that this is anything other then an organizational change? I mean apart from the thoughts of an analyst who doesn't really know? Analysts get compensated for getting their company's name in the press.
Read Epic the first RPG novel.
Maybe someday we can all work together and learn from each other. Linux got a few ideas from windows. and windows from linux. Hey if windows can be more stable and work more for the user, more power to Microsoft.
Some software money can't buy. For everything else there's Micros~1
Maybe because it is open source ? The consistency surely comes from having the entire codebase to refer to, and the flexibility from people being free to suggest any patches they like to the kernel.
Microsoft might say that they admire the way that linux contributors interract, but I think it will be a cold day in hell before the admit that they're implementing technical features of linux.
Buy Steampunk Clothing Online!
I'm going to go against the grain and NOT make this an "I told ya so" MS-bash. From a business perspective, it makes sense for them to learn from Linux, just as it would make sense for Linux to learn things from MS. Each do things differently that work. It's generally regarded that Linux has a better core, better security, and fewer bloat-features that introduce vulnerabilities. It's also generally regarded that Microsoft has superior usability/UI. In the end, for my mom, Microsoft wins. If this new MS team can improve the core to the point where it's as good or better than Linux, then the only reason anyone would use Linux would be cost.
At the same time, Linux's usability has been improving, it'll be interesting to see what happens when MS and Linux converge to the point where they're both as usable AND both as secure/stable/etc.
Wer mit Ungeheuern kämpft, mag zusehn, dass er nicht dabei zum Ungeheuer wird. --Nietzsche
.. they can't learn to have a love of what they do. That's a huge difference between Open Source and proprietary.
Trolling is a art,
First they ignore us
Then they despise us
Then they ridicule us
Then they become us...
Microsoft is going to become more centralized to better compete with a competitor based highly distributed, decentralized development.
I'm amused, of course the proof will be in the bits.
Linux is Linux, if One need clarify their dist: <Dist>/GNU Linux
bsds are of course just BSD
If M$ won't adopt Linux, at least it will use ideas developed in the open source community to help Windows become a better operating system. Isn't that what we all want? Better operating systems?
Linux is anti-American, unconstitutional, hippie-dippie, probably communistic, causes cancer in laboratory animals . . .
and now Microsoft wants to be more like Linux. Got it.
Someone you trust is one of us.
According to the Microsoft apologists and mr Gates himself there is no innovation in Linux...
Soon to come: a new development process invented by and patented by Microsoft.
This is the way that NT started. Dave had total control over the core (and the people) while Bill had control over the API on up. Then Bill took back control of all of it. Bill should have left Cutler in control of the core.
I prefer the "u" in honour as it seems to be missing these days.
Red Hat, Inc. is now Microsoft's #1 competitor in the marketplace. Has Red Hat been studying Microsoft for years? One need only look at kernel support for NTFS or the Samba project to answer that. Now in order to keep up with this arms race, Microsoft must in turn study Linux in order to keep up.
Capitalism demands this fierce escalation: it's called competition.
If guns kill people, then CmdrTaco's keyboard misspells words.
Comment removed based on user account deletion
So you got a bunch of MS core people who are _encouraged_ to look at the Linux kernel.
They got some really bright people there you know.
And what that bunch of bright hackers would want to do pretty soon? Contribute. Just like that Microsoft fellow from the original Haloween documents described - he had the urge to make changes, to improve the open-source code he looked at.
Even it they are prohibited from doing so (which I doubt - engineers and lawyers don't mix), the certain cross-contamination of the ideas is bound to happen.
This will lead to the whole bunch of interesting things - from super-SCO-sized legal battle to Longhorn Linux.
"Part of their study has been on how Linux has been able to maintain a high level of consistency in the kernel while groups around it maintain maximum flexibility,"
MS, here's a clue: Stop using undocumented/proprietary hooks into your OS from your apps.
Linux is the way it is (in reference to the above quote) because people stick to the "API"... partly because there's no other way, but that's another topic/philosophy alltogether.
- Preferences: Solaris 10 (servers), Ubuntu (desktops), Solaris 11 (personal servers) -
Microsoft is at another point in its company evolution where it sees a good idea and assimilates it into it's business and product strategy. It is unsuprising, given the fact that the company has in the past profitted from the innovations of others by refining and mass marketing them (i.e. Windows came from observing the innovation of Apple and Xerox's PARC, Internet Explorer came from the observing of Netscape, and the continuing development of PocketPC which came from the observation of Palm.) One can now only hope that they actually implement the philosophy of open source development that has made Linux one of the most robust and flexible operating systems, or whether they simply copy features.... time will tell.
one world | many people
"By closely controlling the OS core, Microsoft will be able to better ensure that Longhorn will arrive on time and meet its quality and security objectives, Enderle said. He expects Longhorn to come out in the fourth quarter of 2005, provided that a beta becomes available as planned in 2004."
Looks like they're still looking at a 2006 release. (Come on, fourth quarter 2005 always means 2006).
The question is, will assembling this team help them meet that goal or will the initial organization of it take away some time and delay the project more?
I can't say from experience on what the effects of forming a new style of management to a project, no matter how capable that style is, will do as a project is underway but I'd assume there would be some hassles to start things off with and get the ball rolling.
Rob Enderle makes more media pronouncements than just about any other analyst. In general he has no expertise and no information on which to base his statements.
I would completely discount any report that uses him as a source.
Don't take my word for it. Use Google and judge his veracity and competence for yourself.
An Indian-American Hindu committed to non-violent thought/speech/action alarmed by the global explosion of radical Islam
Comment removed based on user account deletion
I mean, I'm sure openness is a factor.. but from the beginning, things were this way.
I think it's more about focus.... or maybe lack of focus...
See, the kernel teams worries about the kernel, and exporting usable interfaces to that kernel. Not that interesting to Mom & Pop jones, but of great interest to other developers... like those who, say, build distributions.
MS takes a whole systems approach... the libraries and kernel and everything altogether.. they don't have a group just concened with releasing the best kernel... they have to meet whatever requirements happen internally.
It's flexible because in the open source world, the kernel team doesn't have to compromise for lazy app developers, or vice versa.
Windows coders are not allowed to get anywhere near linux (or any other code). If a win coder needs to use a linux box, it will have absolutely NO source code on there anywhere. Code contamination scares the hell out of ms becasue if they end up with contaminated code the will be liable for huge amounts in damages and need to rework a large portion of windows(cause everything is intentionally over-integrated) in order to replace the offending code.
"They have been studying Linux extensively. Part of their study has been on how Linux has been able to maintain a high level of consistency in the kernel while groups around it maintain maximum flexibility,"
I know why and they will never be able to achieve it.
Linux does not suffer from one crippling problem that EVERY big software company has.
Management and Marketing.
If you eliminate the managers, the PHB's and the marketing team from ever communicating to the programmers, then you can do this.
I have seen management utterly destroy some of the most amazing and elegant software ever made.
Do not look at laser with remaining good eye.
yeah and what's great for them is that no one could prove they were either. yay for closed source development
As anyone who has ever worked in a commerical software house can tell you, for every one super-skilled developer writing code, there are dozens (hundreds?) of others who are not.
The reason that Linux's codebase has remained so cohesive, focused, and flexible is that Linux has so many really skilled developers -- the kind that most companies are fortunate to have just a handful of.
Software development is one thing where the difference in output between the most skilled person and the average person can be orders of magnitude.
There really aren't many other fields or occupations where you could argue that the top people/employees are orders of magnitude better than the median person/employee.
Shooting from the hip I'm taking this guess at the model for M$ future:
After WWII, Japan (well, Asia et.al.) learned to imitate US technology - we even helped them! Autos, Electronics, Watches and Cameras are prime examples.
The thing to watch for is what happened next - after Imitation came Innovation...and the popularity of those commodities took a swing to the East. The US economy took a pretty good hit, as I recall!
This is a wake-up call for Linux devs to stay sharp and keep up the steam of progress.
db
Cig:
ôô
Embrace and extend.
It has come to mean good things (not trying to reinvent the wheel, but building a car around it), and bad things (trying to force down the use of the de facto microsoft-owned standards incompatible with de jure ones), but it's the key idea in Microsoft's business decisions. And it's what's behind trying to separate more clearly the Windows kernel from it's GUI and it's shell. Perhaps we'll be seeing plenty of third-party GUIs or shells (I know there's litestep) to Windows.
It was at one point clear (DOS/Win3.1), but then the GUI started to "own" many features (net support, and even CD-ROM access!) from 95 on - and they finally did away with the separated "core system" from ME on.
Perhaps they're starting to see it's a bad idea, or that it's losing them customers. The first thing that attracted me to Linux is how I could have internet access without ever booting the GUI. And while XP is not the nightmare ME was, it's pretty hard to fix when broken in a deeper level.
On an off note, Billy Gates' "Road to the future" is actually an insightful book, you know. You just need to remember he's a businessman, not an actual geek. To him, it's better to admit to having been wrong than losing money or market share. Welcome to the world!
"Better operating systems" is just part of it. Freedom is the other bit. I don't see M$ adopting that any time soon...
At least, that is what America always seems to preach: "Democracy and Free market spur technological advancement which increases the quality of life."
If you are a company, what else do you have to control other than the "social" aspect.
I think MS implying "social superiority" to the Open Source model is far more damning than admitting technical superiority, because the latter implies a "point of advancement" while the former implies a "rate of advancement." Plus, very few companies have been able to reap the benefits of both the Open Source and Corporate worlds at the same time (though, Mandrake is getting pretty close).
How do you recreate the structure that naturally appears when you open the source and all future benefits derived from that source to all of humanity? Isn't that kind of like trying to recreate the functions of a living organism without DNA?
If you ask me, the best "social" aspect to open source is the amount of heart people pour into it.
Sdelat' Ameriku velikoy Snova!
<troll>
That Microsoft will someday be able to release a stable operating system?
Sorry, I just couldn't resist...
</troll>
But seriously, it looks as if the mere presence of Linux is having an effect on Redmond. Perhaps Microsoft will produce better systems than they have in the past if they consider Linux a threat to their business model. Nothing inspires excellence like a little competition...
The society for a thought-free internet welcomes you.
If that is not a strong motivation for churning out quality code I don't know what is!
Too bad for a certain closed source vendor that this is hard (if not impossible) to replicate within their current business model.
But, who knows? Maybe they can learn something else from the OSS process. It's completely open and successfull, so it must be the ideal research subject!
"First lesson," Jon said. "Stick them with the pointy end."
Microsoft will not win over linux in the market place, because they believe their own propaganda - that copyrights are some type of free market property right and not an overbearing government regulation. The GPL accounts for that, the MS EULA doesn't.
Once they understand that restricting what people copy is not some kind of inherent right, but an inherent burdon that is no longer workable in the informaiton age - it will probably be too late for them.
It's not just code they are looking at. Windows and Linux use entirely different kernel architectures. They are looking at development methods.
Saying Java is nice because it works on all OS's is like saying that anal sex is nice because it works on all genders.
What makes me "wonder" is why everyone is accepting speculation on the part of an outside analyst as definitive proof that Microsoft is doing anything other than a dilbertesque reorg.
If you need web hosting, you could do worse than here
"To a certain extent, Microsoft's decision to form a division focused on the OS core was driven by its main rival, Linux, said Rob Enderle, principal analyst at Enderle Group, a consulting firm specializing on emerging technologies, in San Jose, California.
Microsoft didn't say a damn thing about emulating linux, Rob Enderle did. The memo was distributed by MS, but appears to have no content regarding an emulation of Linux development methodologies.
Might want to reign in the horses a bit boys.
They've got enough programmers that they could simple go "open source" within the company, and that would be a big enough community to get all the benefits cited by ESR in his Cathedral paper.
A few other big companies could also do this if they wished.
Long term, I think, what Linus himself will be remembered for won't be the Linux kernel itself, but for how he managed the project. Hell, I personally know half a dozen people that could have done everything Linus did on the technical side of things, but I doubt any of them would have been the project manager he turned out to be.
"It seems that GPL must be in place to bring stability to the thing", said one of the core group leaders.
It is puzzling since the exact same version of Windows was setup and only the GPL-labeled boxes were able to keep an extended uptime. The same core group leader said "It is extremely odd. We suspect that the GPL has some magical attributes to it, making everything under those three letters run better. See, we've made a test and enabled users to select the licensing scheme, whether to follow our usual EULAs or GPL. After the selection, the software was installed as usual, with no differences whatsoever, since we did not let users customize the install after the license selection. We found out that installations made when the user clicked on the EULA option tended to be more susceptible to hangups than installs made under the GPL".
Does anyone find it funny that COSD is really close to BSOD? There has to be some relationship there...
It seems to me that Microsoft is nneding to revamp the way that they make their OS. If you read about the original development team it was 30 or so people for NT 3.1, a managable development team. NT 4.0 was a couple hundred and now the NT/XP team is huge and they are all working on the OS. The bug count last I heard was in the 40,000 - 60,000 region. It is simply to complex a system to keep track of all changes and bugs. In The Million Man Month they discuss there being no silver bullet for creating perfect software, but definitely putting more people on the team will not help.
I think it is great MS is changing the way they make OSs. If MS makes a good OS that is stable and secure, it raises the bar for everyone else to compete. They have to change their method. I think they have there divisions implement changes and Software QA verifies build stability the way that most Application development shops work. This seems impossible on the OS level. Linux is great because they have the UNIX design model to work with, everything laid out in a clean working fashion. The Kernel is so stable because they do not make major changes to the way user space is made because it just has to allow for UNIX applications to run (including X). All of the modules like memory and file systems are layed out. Microsoft has ruined their chance of using this model in Win XP by putting the GUI in kernel space, grabbing the messy registry system from Win 95, and whatever they could hack to make a consumer heavy duty OS.
Perhaps MS could have Linus Torvalds come in and be their OS development consultant for a day. They could elect someone as their Linus to check in every major change. They could add features for 6-12 months at a time, and test and revise changes for the next 6-12 months and blamo they have a Linux like development team.
- Kill Yourself, spare us all! -
No No NO. Did you not read the Groklaw article yesterday or thereabouts pointing out that this scenario is not true?
The penalty for abusing GPLd code is not the compulsory re-licensing of everything. If you're in breach of the terms of the GPL license, then you're breaking copyright law. Nothing makes their proprietary code suddenly open, unless they decide to comply with the GPL rather than fight/settle/re-code.
Actually, there are 2 classes of Linux programmers: (1) those of us who grew up in a Unix environment before Windows came along (and are thus very experienced) and (2) those who started computing with Windows or DOS but were technically adventurous and confident enough to venture beyond that. Either way, it lifts the average competency of Linux developers.
Linux isn't there yet until Joe Shmoe can throw together a toy app quickly and easily that can keep track of his beer, cigarette, and pork rind expenditures.
Isn't that what Perl is for?
I think up-modding and down-modding should be based on powers of two. One positive vote increases the base score by one point, it takes two more votes to increase the score again, four to increase the score yet again, and so on. The same could hold true for down-modding. It would be just as easy to sort by score and give a boost to the best comments, but it would also put slow down the effect of rushing to say something funny first.
Yep, I know I'm *way* off-topic. I'll slink away like the A.C. I am.
I think this statement is right on, but needs to be thought out some more. Hopefully, the "average" computer user will change. Right now, the Average Computer User (ACU) was probably born when personal computers didn't even exist. Look ahead 50 years, and that won't be the case. The ACU will be much more familiar with computers, and there will be no need to coddle them as much. Unless of course, they are coddled their entire lives. I think at some point the learning curve needs to be adjusted.
And my mom is a newbie to computers too, just using it for email and very minor web surfing. To her, the Windows UI is extremely confusing. Double-clicking was a new concept. Saving a file, locating where you saved it, opening it, all the wizard options, the odd error messages, etc. These were all brand-spanking-new things to her. Nothing was intuitive about Windows. Now I am not saying that Linux would have been, but if she were to start out using computers today, the Linux UI would be no more difficult than the Windows one, because her computing needs are simple. The more things you use a computer for, the more you delve into the particular OS's UI.
The real question is, is the ACU in 50 years going to be just as clueless as to how a computer operates as they are today? I certainly hope not, because that would mean that we are not progressing.
My beliefs do not require that you agree with them.
Comment removed based on user account deletion
I remember reading articles back in the 90's (remember, the last decade) that Microsoft was studying Unix and BSD kernels. Some of the impact seems to have shown up but overall it seems like not too much has changed.
Until Microsoft isolates the the kernel calls from user based calls don't hold your breath waiting for a change. Given the legacy code they support I don't think any big improvement will be soon.
"There is magic in the web." - Othello Act 3 Scene 4.
They already do shared source for their "partners". I got to see some Windows code when I was trying (and eventually failing) to write a driver.
And don't forget that you can see the source code of Windows CE if you want to.
All's true that is mistrusted
How would you know?
Even with their "we'll show you the source" programs you can't compile and compare checksums to make sure you are shown the source to the code that actually generated the binaries you are running...
Can you?
--Phillip
Can you say BIRTH TAX
For 1500 years alchemists worked tirelessly in their secret labs making potions and spells with the ultimate goal of turning whatever into gold. 1500 years wasted because everone kept everything secret. Chemistry came along when people published and studied work of others. After 300 years we know it takes a nuclear reaction to turn something else into gold. Linux is like chemistry. Microsoft isn't. Get the idea?
Just a guess, but offhand I'd say it through design driven by software developers, versus design driven by marketing and artificial deadlines. In other words, in any organization, the behaviours that get rewarded the most increase, while those that get punished decrease. MS apparently does not reward consistent, flexible design or implementation.
"Freedom means freedom for everybody" -- Dick Cheney
"Studying" Linux, hehe.
Developer 1: "Ah.. so this is how they do it in this section..." *copies and pastes code and gives it a quick test* "That should do it. Next section!"
We have secretly replaced these Slashdot mods' sense of humor with a rusty nail. Let's see if they notice!!
You compared apples and oranges with that one.
Slashdot - the place where you can look like a genius by restating the obvious
"They have been studying Linux extensively. Part of their study has been on how Linux has been able to maintain a high level of consistency in the kernel while groups around it maintain maximum flexibility,".
It's because the Linux kernel is under the control of (no offense) a dictator, where as the MS kernel is under the control of a bureaucracy..
Sometimes dictators are a GOOD thing..
...that the process isn't two ways. Linux developers should be taking a look at,and studying how windows does some things. Security might not be microsoft's strong point, but they did excel in the area of integration and user interfaces. Linux distrobutions could _really_ use help in both these areas.
BeauHD. Worst editor since kdawson.
So, are you saying that MS is not doing that currently? Aha! Finally, they admit it.
[sarcasm]
Reeeeeeeally? So when is Longhorn due?
2003 you say.
Now you say 2004.
2005?
2006?!
So how's that Trustworthy Computing thing working?
Never mind.
[/sarcasm]
Well, there's spam egg sausage and spam, that's not got much spam in it.
They are looking at development methods.
The problem is that development methods are not the problem. Microsoft simply cannot understand this. This is not a Microsoft-specific problem. It's just due to the way large companies work.
Basically, some Microsoft analyst team sat down and decided that Linux isn't wildly technically better than Windows. The only other difference must be the development methods -- every software manager knows that software engineering methods are crucial.
And that's where they'd be wrong. The development model is slightly different, but it's not magical. There are groups that feed software up and a few knowledgeable people that review code. It isn't that unique or unheard of.
The philosophy and the *social* structure is what matters. I don't mean from a Richard Stallmanesque "We have an ethical mandate to ensure that software is Free", but simply their goals. The people working on Linux make decisions based on one criteria -- technical merit. They are doing what they are doing because they want to make a name for themselves, because they love the technology itself, because they want to fix a problem that's bothering them, and sometimes even because they want to help others. They have a *reason* to put in the extra effort to make code be really clean. It isn't even just that their work can be viewed by millions (and sloppy Linux code frequently gets harshly panned), but that they want to do their best because they're making something to be proud of. You simply cannot replicate this in a traditional company. A programmer is tasked with implementing a feature. He didn't come up with that feature. The feature was decided upon by a committee that was reviewing input from marketing. The feature then hit a high-ranking person in the software development system, and flowed down to this programmer. He knows that much of the Windows codebase is a mess already. If he does a really exceptional job, he can't keep the code with him or show it off to others. He doesn't have the pride there, and the most enthusiastic project manager or juicy set of incentives can only keep the interest and excitement alive for so long. He's putting in his hours to implement something that's customer-driven, and may not be something that he wants to use. You *cannot* produce a large company that has programmers that produce works of love, because you'd get lots of difficult-to-sell output, and in any case the sheer bureaucracy would stamp the joy out of things.
If I wanted to make a system as close as possible to replicating the Linux system, here's options I'd consider:
* Open source the code. An ultimate reward is allowing programmers to allow others and employers to see their entire body of past work. If you want an incentive to do well, this is a big deal.
* Use only programmers that will use their own work. This is hard for some fields, and extremely difficult for vertical market software -- it's the rare programmer that directly uses banking transaction software. However, the rewards are enormous. The gaming industry has got a pretty good grasp of this. There are a lot of games that have lots of neat visual effects or features, things that were thrown in because the programmer *wanted software* that could do something. They have some incentive to go the extra mile. In the open source world, this is frequently called "scratching the itch". Programmers *want* to write software and will write *better* software, if the result is something that matters to them. "Eating your own dogfood" is a hazy corporate attempt to implement this, but I'm talking about going beyond this -- if you're making a raytracer and need another man on the project, try and find a programmer who ray traces in his free time, and give him free rights to use the product on his own as much as he wants.
* The implementor of a feature should have design influence over that feature. This is a tough one. Software design is harder to do well than software imp
May we never see th