More Microsoft Engagement with Open Source Projects

UPDATE: Welcome Slashdot visitors.  I'm not sure how to submit a correction to slashdot, but I am NOT the person responsible for the WIX/WTL projects. I site them as examples and am working with people who where responsible for those projects to enable more of the same for the groups I work in.  It would be great if someone at Slashdot could change the wording here since I really can't take credit for the work the WIX and WTL project leaders have done. 

UPDATE #2: Thanks to whoever updated the story on Slashdot.  To be honest I'm going to be a bit behind responding to a lot of these comments.  I just wanted to let you know that I am working my way through them and will take the time to respond to constructive feedback.  There is a LOT of it so it will take me a while. Be patient. I am listening. 

UPDATE #3: I've started to respond. So my responses aren't lost in the comments I'll list my responses here as well.

Slashdot Comment Responses #1 (On Cardkeys and Trust)

Slashdot Comment Responses #2 (A bit about Patents)

Slashdot Comment Responses #3 (Your Requests for Open Projects)

Slashdot Comment Responses #4 (Contests, Free Software Distribution, Halloween, and More)

Slashdot Comment Responses #5 (Ending on a Good Note)

I'm currently working to enable more collaboration of the "Open Source" type with the developer community and Microsoft.  It should be easy for teams here at Microsoft to develop extensions to their platforms and potentially pieces of the platforms with customers in an open/transparent fashion. What better way (especially for teams that make tools for developers) to form real connections with developers than working with them collaboratively on real technical challenges?

Working with customers on actual source code forms a stronger connection than simply answering their questions in the newsgroups.  You get to see, in a more real way, how customers work with code and where holes in your platform exist since you are effectively dogfooding.  I experienced this first hand with my efforts to get the original "VS Powertoys" off the ground and open sourced. Several of the customers I've worked with from these efforts are now on my MSN buddy list and chat with me frequently about the specific projects and technology in general. 

Engaging the "open source crowd" is something that we have historically neglected.  Hell, from their perspective, some of our assaults on Linux are downright insulting.  I cringe when I see the news headlines like "<Random Microsoft Executive> Rails Against Open Source".  Of course, they get to fire back and be just as insulting with some of their initiatives. Some bridge crossing could do both sides some good.  There is a balance to be struck somewhere between the "free software radicals" and the "only for profit" mentalities.  There are several extensions, for example, to Visual Studio that we just don't have the time to get to for one reason or another.

Wouldn't it be cool if there was a process whereby passionate Microsoft developers could work officially with engaged members of the community to build these missing features on top of the VS Platform, then these missing features could eventually be included as part of an additional install step as a part of the product?  Microsoft wins because Visual Studio gets extended functionality between releases, the community wins because these would be provided for free and more officially supported, approved, and tested by Microsoft. Ideally the license would work such that Microsoft could eventually include these as part of future shipping products and the contributors could take the source and use it for their own purposes commercially.  In this example we could eventually ship the VB PowerPack as basic control in the toolbox, but the contributors could also take the source, improve upon the basics, and re-sell the improved versions as part of their control vendor package for current and down-level .Net versions.

This sort of engagement can be good press as seen by the reaction to the WIX and WTL experiments

"I think the download numbers, while not mind-boggling, certainly indicate the depth of interest from the developer community in working with Microsoft oriented projects," Stephen O'Grady, an analyst with research firm Redmonk, told "Microsoft and open source may not be all that comfortable in the same sentence yet, as some of Bill Gates' recent remarks abroad indicate, but I think these shared source projects are a good indication that each party has something to contribute to the other."

What I (and others) are working to-wards is a world where we have a simple, official, process for Microsoft employees and customers that covers all sorts of collaboration initiatives that may range from "Wiki-ized Whitepapers" to code samples to platform extensions to product specifications to whole pieces of a platform.  You can see bits and pieces of this today @ Microsoft (in ad-hoc or one off fashions) and other companies. The Sun JCP and Real Helix Communities stand out as examples today. 

I was inspired to post this because of several other posts I've seen recently that touch on the subject and it's something people internally are looking at me to help them accomplish.  Before I'm accused of re-inventing the wheel, I'm aware that there are currently open source projects managed by people at Microsoft today.  However these are projects that are further removed from the owners area of work at Microsoft and are less tied to official commercial offerings at Microsoft. There is a lower risk of taint or injunctions against Microsoft because of their participation in several of the existing projects.  It's also a space where Microsoft teams could use some best practice advice and guidance to enter. 

I've talked long enough about this.  I'd like to hear your thoughts...

  • What types of projects or specific projects should we look to open source in the future? And don't just say "Everything".  I'd like suggestions I feel I could actually help teams deliver on in the near future. 
  • If you have participated in any of the current Microsoft sponsored shared or open source projects how could we do a better job of managing these projects?
  • If you have participated in non-Microsoft sponsored shared/open source projects... what did you like or not like so much?
  • Would you have interest in working on these types of projects with Microsoft? If  not, what could entice you? If so, what would be your motivation?

This is going to be a fun world to open up.  I'm personally really excited about some of the potential projects I've heard being discussed.  Good Times ahead! - Josh

Comments (239)

  1. OR-Mapping, although controversial, is considered a really useful tool by a sizeable fraction of programmers. For a moment it seemed like Microsoft was going to offer an official OR tool, but then ObjectSpaces was delayed, and delayed, and delayed… And now we are starting to face the splintering that happened in the Java world: too many choices is bad! So I suggest that you take whichever looks more promising (say NHibernate) and nourish it.

  2. Caius says:

    An Apache like Project hosting a lot of subprojects under the umbrella of MS.

    NMS (.NET Message Server) πŸ™‚ I know MSMQ is available, but it is a big hassle for a developer – as it is tightly integrated with Active Directory. Also an open source Naming Service Provider would be great.

  3. Stephane Rodriguez says:

    Honest, there’s at least one goldmine to open : the windows source code of user32.dll, shell32, …as a way to help us developers write more consistent code. As a replacement or complement to Raymond Chen’s blog like.

  4. Articles like this are totally cool with me. This is a guy that seems to honestly make the world a better place with projects that he is involved with. Yes, he has obvious associations with the "Big M", but it does not appear to affect desire to want to participate in the Open Source movement. This leads me to wonder about something….

  5. Luc Cluitmans says:

    One area where this type of projects would be helpful is the design of utility libraries to fix missing functionality in ‘official libraries’, such as the .NET BCL.

    For instance, some time after the .NET framework was released (I am talking about 1.0 or 1.1), it became clear that some functionality was missing for some scenarios.

    As an example, lets take serial port access support, which happens to be relevant to my line of work. (As you may be aware, this has now been added in the 2.0 framework, see System.IO.Ports). There are several snippets of code floating around the net for accessing serial ports, many of which don’t seem to have been tested well, because they only work partially…

    I guess MS realized after releasing .NET 1.0 that serial ports are like weed: they will never really die…, and some level of support for accessing them would be nice in the .Net framework, even for this ‘prehistoric’ technology. Now, to get that support in takes an entire development cycle, which for .Net 2.0 has taken already 2 years and is not complete yet. This is a point where an open source project providing a serial port library would help: it would provide a fully functional prototype of a future extension to the BCL without being bound to the glacial development cycle of the BCL itself.

    This type of projects would have some important advantages for different parties.

    – For the developer, it provides at least a ‘semi-standardized’ library solving his problem, alleviating him from developing the code himself, or finding the bugs in code found floating on the net. And that without waiting 3 years for the next version of the BCL…

    – For the BCL development team, this may give valuable feedback on how their proposed APIs are perceived in practice in ‘the wild’, giving them an opportunity to change the API based on real user feedback before releasing it.

    Of course, there are some negative points too. Most importantly, it will only work for libraries that are relatively independent from other ‘new’ libraries. Also, those prototype libraries must necessarily be in a different namespace than final versions, should they be incorporated in a future version of the BCL. And using this strategy to do some ‘public prototyping’ may have legal consequences.

    That being said, a few places where this approach might work would be (some of these already exist independently):

    – a library of new collection classes

    – a library of new generic classes

    – a library of XPath/Xslt/XQuery extension functions

    – a library for getting to some features that are currently not exposed in the BCL; I would love a library that exposes the pentium CPU’s ‘rdtsc’ instruction without having the overhead of PInvoke (If you dont know what ‘rdtsc’ is: this is the core for the QueryPerformanceCounter() function in the win32 API)

  6. Tux says:

    Microsoft can not go open source. Microsoft, by definition, is a closed source company, and this is it’s most important achievment. Locking people into code Microsoft has 100% control on.

    There’s room for co-existance of, weather Microsoft likes it or not, it doens’t realy have a choice. But trying to delute the ideas behind free software and open source into this mish-mash of ideas, seems more intentional then serious.

    Talking about WIX and WTL, relased under CPL, is a good enough example. Thought open, Microsoft buisness-minded approach lets it keep patent rights. Unlike IBM, it does have full intention to use is at will.

    It’s a conflict of intrest, more blogs like this are not going to make thing less obvious.

  7. Mark Levison says:

    I’m interested on more automated testsing tools. Pitching in with Nester ( is one good possibility.

    Another interesting possibility is working on the tool described in "Effective Software Test Automation" (

    I’m interested in any tool that will help us test and improve the code quality in our application.

  8. josh says:

    Wow, lots of great comments here!

    Caius: Another choice would be partnering with sourceforge. But yes, it would be great to see a much better release of the GDN workspaces that actually work for normal applications.

    Stephane: I think we are a little off from that at the moment. But I admit, it would be interesting for people doing certain types of development.

    Luc: We are thinking along the same lines. These are the types of things I think would be great to see happen. I, of course, can’t make any promises, but there are a lot of people here who would like to do these things as off cycle releases.

    Tux: I never said MS would go open source. I’m not sure how what I’m suggesting dilutes rather than co-exists with effectively. I’m not sure what IBM does differently. Could you elaborate?

    Mark: πŸ™‚ And we have some really cool testing tools here we use that I would LOVE to see open sourced. They will be some of the first people I approach once we have a standard mechanism in place.

    Lockgnome: Thanks for the kind words. I like working here because of the freedom I’ve been supported with to work on efforts like this. Steve’s comments haven’t had much effect on the work I do, except for the aforementioned negative clips. If he was to come to my office and lay out some ground rules I would have to consider how I felt about each one and the freedom it gave/removed from my job. It’s all part of the value proposition of working at Microsoft and if some of the freedom is removed then the value of working here goes down for me and I would look to work elsewhere or on my own.

  9. Jonathan Payne says:

    I have wondered before if Microsoft could make some of the non-core parts of Visual Studio open source. For example, all the functionality of the Solution Explorer window could be implemeneted through the publically documented automation interface so perhaps it would be possible to release it as a mini open source project.

    If there were mini-projects for things like the Solution Explorer and the Output Window and perhaps even the text editor users could fix parts of the program that annoys them and help make Visual Studio better.

  10. Ami says:

    The most useful think to open up isn’t code so much as specs. Un-encumbered specs for Word/Excel/Publisher/etc. would encourage the development of complementary tools.

  11. Ami says:

    re: the above, I mean file-specifications, in case that wasn’t clear.

  12. Giles Jones says:

    Maybe it’s about time Microsoft stopped complaining about Linux and Unix, maybe it’s about time they made their products work well with standards and other operating systems. Stop trying to dominate, lock-in and takeover the computers of companies.

    Try and give computers users a proper choice and a reason for using each operating system/plaform based on their merits.

    Open source isn’t going away and neither is Microsoft. You will never see the twain meet while Microsoft does it’s best to spread FUD about the competition. Open source advocates don’t trust Microsoft and some of Microsoft’s internal memos give them reason to.

    Open source gives people back control, computer users used to have control. They bought Windows because it was something they wanted to use, but many Windows users would switch if the competion did everything they needed. However due to licenses and uncooperative hardware vendors, there are still plenty of drivers missing from Linux.

    Why do they want to switch? complacency, security and the sheer cost of the OS license.

  13. Alex Krumm-Heller says:

    My job involves developing applications using the DirectShow API. In order to improve our applications we would love to understand the internals of DirectShow and even contribute to the future direction to the API.

    A large amount of example code is already provided by Microsoft and I think that continuing to build upon this by opening the source of DirectShow Microsoft could reinvigorate development in this area. I think a lot of future applications will use video and rather than just leaving DirectShow to gather dust it could be extended to accomplish things that no other platform is capable of.

  14. random opensores-hippie says:

    MS sucks, use Sun.

  15. kde says:

    The biggest thing about Linux is not the fact its just Open Source. The community has created a *process* which took about 15 years to develop. The process includes its own media, search engines, source countrol understood by a school student, development tools, libraries – all can be traced from line 0 to the millionth line – something that Microsoft failed to deliver. Myself being a certified MS developer (C#.NET), I switched 7 home computers (everything) from Microsoft to Linux about 2 years ago. I cant even find an equivalent of tools im using in Linux in Windows – they simply dont exist. Theres also a spirit of freedom in Linux, which Microsoft wasnt able to beat. By admitting users dont want Microsofts model anymore, Bill Gates is admitting the failure of his ideas. Good. That was the point of GNU Linux after all. Microsoft cannot compete with the true open source, and is only digging its own business model grave – okay with me.

  16. Microsoft should stop the FUD against Linux and the GPL.

  17. asdf says:

    I want to see you guys release more source code in the C and C++ runtime. Right now, you guys are hiding the implementation of exception handling and RTTI which makes it hard for somebody to write their own stripped down CRT unless we want to read the disassembly. Other things like float to string and string to float conversion functions are hidden in a lib file too.

  18. Todd says:

    The open source growth is a direct response to Microsoft’s dealing with the market space. A lot of developers (Many non-open source programmers are looking to programming on Linux with Open Source tools. Not because the software is free but because there are less strings attached to it.

    1. Once you switch to Microsoft you are Suck with them. So you get Visual Studios, But then you will need Windows OS, Now for fastest performance and programming ease you will need MSSQL Server… Then one component needs to be upgraded say you need a new library that only works in the next version or 2 versions. Then you will need to upgrade the hole set. Of tools. This is where it gets expensive. Especially for the Open Source programmer who is doing this out of his own hart.

    2. The Microsoft way or the program becomes unreliable. When programming in VS you have to try to program the way the Microsoft prescribes, if you don’t then there is a good chance that your program will become unreliable. But the reason why we need to program a program is because it is something that Microsoft or some other company doesn’t have or work to the way we need it, thus Microsoft prescribed methods often will not work well in these cases. The way that VS is set up makes programming beyond the Microsoft prescribed method much more difficult, then with many other of the OSS tools out there that expect different methods of programming.

    3. Allow us to migrate our code. We as developers should choose what platform our software should work on, not the maker of the tools to make it. It is like a carpenter can only use screws in New York and has to use nails in Texas. If in VS we can cross compile our code for Linux (x86, Sparc, PPC), Solaris (x86, Sparc), MacOS (ppc). .NET has the ability to help with this but right now there isn’t much trust in in multi platform compatibility because of the windows only centric nature to it, right now .NET is the Speed of Java with the Platform Independence that only VS can provide. (Essencly the worst of both platforms) I say Open Source the .NET VM, and give us a Legal Binding contact that you will not close it up for any version. Now this way we are more willing to program in VS because we know we are not lock into windows.

    4. Fool me once shame on me. Fool me twice shame on you. Customers are tired of offering us choices then after a small amount of time we find that we are locked in. I work for a consulting firm and we find 4 major groups of people.

    a. Open Source programmer who will avoid MS at all cost.

    b. People who like MS products but afraid to lock in, so they use OS.

    c. People who are locked into MS products and can’t get out although they want to.

    d. People who don’t know what else is out there and the last time they checked was 10 years ago.

    This doesn’t look good for Microsoft where the most satisfied customer are the ignorant ones. MS Needs to spend more time learning the strengths of Open Source then finding and touting all of it weakness.

  19. Amir Michail says:

    We would love to collaborate with Microsoft on the open source Stabilizer project, a system for quickly stabilizing buggy GUI applications:

    Currently, it supports Java GUI applications. Perhaps a collaboration with Microsoft would provide solid support for Windows applications as well.

  20. Geoff says:

    1. Change MSDN to be a Wiki. You don’t know how many times I’ve wanted to add a link to what the dumbass MSDN authors considered related or wanted to fix some doc bugs.

    2. Release the code to Visual Studio 6’s IDE since you guys don’t support it anymore. There are many developers who prefer that IDE to the VS.NET IDEs and would keep on working on it to keep it up to date.

  21. Nigel Head says:

    The biggest thing you could do would be to document, publish and allow open use of file formats and API’s. Open sourcing code is all well and good, but is kind of an all-or-nothing scenario (it’s no good opening selected parts of the source base) whereas opening the specifications, formats and API’s allows completely independent OSS developments to enhance or interoperate with your products.

    I’m pretty sure that that’s exactly what the MS marketing strategy doesn’t want to support/encourage but it’s what you’ve got to do to gain any plausibility in teh OS world, IMHO.

  22. Randall Sanborn says:

    Call me crazy, but I just think that the MS gestapo tactics of kill all doesn’t do much to encourage the current OSS community. Furthermore, their actions would at the very least make me highly weary of letting them get their hands anywhere near any code I write.

  23. Jonathan Wilson says:

    I aggree with the statement that "non-core" parts of Visual Studio should be opened up.

    In terms of what I would like to see Open, one big thing would be the Microsoft Visual C++ Runtime Library and associated components.

    Essentially, everything in crtsrc in the visual C++ distribution being made open under an OSI compatible licence. (including stuff like tlssup.obj, setjmp.obj and others for which source code is not included with Visual C++).

    Also, all the stuff in include that goes with the aformentioned code.

    And there are (I believe) a few other libraries (e.g. largeint.lib, comsupp.lib) for which no source is provided.

    And it would be nice to see ATL and MFC go Open Source too (along with Open Source or at least Freely Usable windows API headers, platform SDK etc) but even just the CRT would be a good place to start πŸ™‚

  24. Lee says:

    Copyleft compliance. Simple as that.

  25. sandman says:

    Build tools, in general will probably get a good reaction to being opened source. Also the user communtity for those tools is the communitity which can do the most with them.

    It’s prolly no surprise that the there are such a wide range of open source developent tool out there which target unix.

    Whether tools like gflags should be opensourced in an interesting question, but I suspect making more of the api it uses known would only aid good (I’ve had success using app verifier with gdb for instance) and better tools for your platform.

    Equally it’s worth allowing those tools to build for other platforms, eg, I’d like to be able build Msi’s striaght from LINUX (I x-compile windows applications) just by adding the approirate rules to by make file. You shouldn’t write a linux installer, but allow other to build and windows installer for their windows apps from a linux/bsd/whatever xbuild envoironment I think would be a good thing. It opens up your platform and encourages people to build their apps form windows. Not that much encouragemnt is normally needed, but why put problems in their way.

  26. Edward Faulkner says:

    "Engaging with the open source community" is very easy. You simply need to make your source public – all relevant source code.

    The reason I don’t work with Microsoft systems at present is that I can’t get inside and figure out what’s really going on.

    All coding is debugging. And when forced to use a black-box API, your debugging can only go so deep. Good coders don’t just exercise APIs, they need to understand the systems they’re attempting to control.

    Keeping applications closed source can make sense. But keeping an OS closed source is just silly – the OS only exists to support applications, and people can’t write great applications without fully understanding the OS.

  27. Ann Onymous says:

    GPL baby!

  28. Mike Capp says:

    If you host projects on MSDN, please give some thought to opening up the bug-tracking process. The feedback system for the current VS2005 betas ( is an improvement on the old process, where you’d send in a painstaking researched bug report and it’d vanish into a black hole never to be seen again, but it’s still far from perfect.

    Why does it demand I create a Passport account and fill out a questionnaire just to *read* feedback? Why do I have to log in again every time I go to the site? (Passport not playing nice with Mozilla, I suspect.) Why is some information not visible to the public? (Very often you’ll see the "last modified" date change without any corresponding change in the visible details – something’s going on, but we aren’t allowed to know about it.)

    Things like this make a real difference to how a project is perceived. Transparency fosters trust, and encourages participation because you can see things happening as a result of that participation. I switched from Opera to Moz precisely because of this issue – at the time Moz was still buggier, but because of the process I had a lot more confidence that it would improve.

    Browsing shows that many Microsofties run Firefox these days. Would it be politically impossible to run Bugzilla?

  29. I’ve got two particular projects I’d like to see Microsoft open up more.

    First, Interix. Interix has borrowed heavily from the Open Source community, and includes both GPL and BSD code already. It’s probably the easiest component in Microsoft’s stable for existing OS programmers to get up to speed in, and would also provide a common environment for porting other OS code to Windows. Keeping it closed doesn’t benefit Microsoft: it’s already free-as-in-beer, and there’s already the competing (and less secure) Cygwin product so microsoft wouldn’t be giving away anything. As a final bonus, having a Microsoft OS product more secure than the GNU equivalent would be ironic.

    Second, Internet Explorer. It’s clear that Microsoft isn’t interested in addressing the core security problems of IE, and again it’s already free-as-in-beer and losing market share to open-source competition. Why not let the community help?

  30. kvr says:

    The .net framework libraries (especially

    Windows.Forms) This will give great

    insight and makes working with .Net

    so much richer and easier.

  31. Bill Dunn says:

    List of things that should be openned up and let loose in the world.

    1. File Formats

    2. File Systems FAT/NTFS/WinFS, etc

    3. Protocols like SMB/CIFS,Exchange

    4. IE

  32. Oh, yes, and IE is another Microsoft product that started as an open-source (though not open-license) project, NCSA Mosaic.

  33. Alexandru Toth says:

    Microsoft is a closed source company. It looks now that under the GNU pressure, it is trying to save some apparences.

    This "open-sourcing" is a dead project from start to end, because you will inevitably stay locked in small details as CRLF, path separator, incompatible make files, COM+, ActiveX , DLL dependencies, CLI… so in the end you’ll be running wizards in Visual Studio on top of Windows XP.

    So please, what’s the whole point?!?

  34. How about some Microsoft contribution to WINE?

  35. Paul says:

    There is an big interest in using .NET as an alternative to Java (see But questions of stability and security come up and until these are truly addressed .NET will always be #2 to Java. I was a .NET developer from Beta up to 4 months ago when I abandoned it for Java because of a lack of open source tools available, stability of the .NET framework, and security.

    I think that a big reason you don’t see more open source projects created for .NET is people are concerned about it’s stability and compatability with itself. If Microsoft were to open source the .NET framework it would help to stabalize it, better tools would become available, and a bigger community would embrace it.

    I think there is a big myth out there that open source does not like Microsoft. I personally don’t have a problem with Microsoft. I choose to use linux and Java right now because of stability and security concerns. Both of which I think would greatly improve with an open source .NET framework.

  36. Didier says:

    MS is not nice. Frankly if you are anywhere near serious and not just another "MS is serious about security" type marketing droid then it is pretty obvious what you gotta do.

    <p>PLAY NICE. Convince us that you get opensource. Stop trying to break opensource projects. Two very important projects that MS is constantly trying to break are OpenOffice and Samba.

    <p>Let MS go to these two projects and help them to fully work with MS software without trying to crush them.

    <p>Prove that you are serious. But of course you aren’t MS doesn’t want competing Opensource projects. Proof me wrong.

  37. Jonathan Wilson says:

    As for the idea of releasing the Visual Studio 6 IDE, I suspect the biggest hurdle is somehow allowing the old IDE to handle the new core changes (new debugging symbols format, new languages like C# and all the other stuff added since the aging Visual Studio 6 IDE was written).

    Also, something else that would be good to see Open Sourced is some of the various utillities that come with windows (e.g. Notepad, Wordpad, Paint, Solitare etc).

  38. Windows-oriented open source sites like codeguru, codeproject etc are a big asset for MS, which can otherwise be a difficult environment to get started in and to find small free components in. MS should work with those sites, adding expertise (answering ‘how do I…’ questions) and resources (helping turn some of those useful free components into enterprise-grade ones). Everyone would benefit.

    Unfortunately, MS has historically tended to work _against_ such efforts (remember SysInternals and NTFS). The days when this sort of tactic could work for anybody other than IBM are now over.

    So, MS, why not assign a few developer man-hours to sifting through codeproject, answering and fixing, and see if a good open-source project emerges from any of the half-a-projects they have there?

  39. Activesync. Again, it’s not core, it’s got some real simple problems that would really benefit from OS work (like, how about using link-local addresses instead of 192.168.55 which happened to conflict with one of our internal networks and broke Activesync until we renumbered), and it would improve market share for the Pocket PC if it could be ported to other operating sustems.

    And speaking of which, I’ll bet there’s a bunch of Pocket PC code you could open up.

  40. blah says:

    I think a good area for open source collaboration would be tools that help integrate or support Microsoft products into other environments. There is a real life need for non-MS and MS products to co-exist, that MS is not going to escape from. If MS can sponsor some open source integration tools, then it can get some good will. Unfortunately this very integration ability seems to run counter to the MS strategy of lock-in, so I’m not sure how management could justify it…unless the goodwill outwieghs to the risk. Glaring candidates are document formats, migration tools, and "viewers" of documents developed in the office suite.

  41. undisclosed developer says:

    why should developers spend their own time assisting microsoft who has billions? Today, there’s is no reasonable assurance from Microsoft (the corporation) at a high level that the code contributions will follow an open and honest guideline. this means a balance between commercial needs and the communities needs. On more than one occassion, microsoft has borrowed and distorted public works without giving proper credit and acknowledgement. If you want the trust of the community, you have to first show respect to the community. Not a bunch of hand waving marketing speak. that kind of initiative has to come from the top, otherwise any effort to adopt an open source approach will fail.

  42. dalibor topic says:

    It ain’t research till others can verify it.

  43. Bill says:

    I would say the key thing to making people want to work on Open Source projects with/for Microsoft is to get the developers to trust you. Why should anyone want to work with/for Microsoft when Microsoft has a tendancy to treat its customers like criminals. As a show of good faith, dump the product activiation technology that does nothing to reduce piracy but makes legitimate users lives miserable. Then give some sort of guarantees that Microsoft won’t pull a SCO in the future. Instead of the open source projects being done for Microsoft, they should be done by a wholy independent entity sponsored by Microsoft. Its all about trust. If I can’t trust you not to come sue me down the line why should I even look at anything offered by Microsoft? My goal has been to reduce, and attempt to eliminate all shreds of Microsoft software from my company simply because you do treat me like a criminal.

  44. fm says:

    If you want suggestions on Open Source, why not invite RMS to give a talk at Microsoft. How open and free can a piece of software be if its on a pay for OS. Why not open source XBox, forget about Windows leave that for a history lesson. Don’t get me wrong I think MS and GPL have a lot of good things to offer. In the long run GPL is better, "I’d like to by a value please".

    FM πŸ™‚

  45. Mitch Pirtle says:

    The big draw to Free/Open Source (F/OSS) is cost of entry. I can download an entire environment, operating system and server processes, and get started.

    What you propose requires me to buy Windows, then buy Visual Studio. And THEN I can get started? The average teenager will not be interested OR capable to pony up that dough. And when they hear of a free alternative, they will not be interested in commercial software (even if you give it to them), because they know that someday they will have to pay the piper…

    As long as you are a ‘for profit’, you will be bound to charge money for your goods – and that is perfectly ok and has been for thousands of years – but that is the biggest barrier between Microsoft and F/OSS: Why buy to learn when you can get it for free?

    I have seen Macromedia enjoy success with Dreamweaver and their plugin/extension capability, but it is also limited; and almost all extensions were also written ‘for profit’.

    I suppose this would indicate further that you cannot take a ‘for profit’ product and attract F/OSS talent – the only folks interested are the other commercial developers.

    Here is another twist: Even F/OSS companies cannot truly operate in the Open Source world.

    Case one: MySQL ( They supposedly release their database under the GPL, but it is only free as in free beer, not free as in free speech. I am not welcome to join the development team, as they are a closed group of commercial developers. I have a philosophical problem with this setup, as they will always be thinking about making money first, and then appeasing the community second.

    Case two: Zend Technologies ( I live in PHP (and am a core developer for a GPL CMS that is based on PHP), but I am frightened about their licensing strategies. It is a mixed hybrid license that blurs commercial and F/OSS with the same product – and even now on the forums it is constantly debated. The ambiguity is annoying, and I have more than onece looked for an alternative technology that was truly GPL.

    Wait, here’s an alternative.

    Case three: Mambo content management server ( This is a truly GPL CMS with extensive support for third parties (templates, components, and modules). They have taken the opposite approach as Microsoft, and it is working quite well – they open source the technology, and third parties flock to the platform to provide both F/OSS and commercial goodies and services.

    Works for me πŸ˜‰

    But it will only work for you if you choose to spin off a relevant technology. Don’t just open source some ancient dungheap that nobody wants (SAP DB anyone?). You gotta reach deep down and give till it hurts, baby.

    If the platform was GPL, a lot of bugs would get fixed, and many MANY developers would have renewed interest in the platform.

    But I digress!

    Whatever the outcome, I certainly do wish you the best.

  46. Chuck says:

    This is a longshot, but the Compact Framework. The CF is woefully inadequate and doesn’t play as well as everyone would like with the desktop version of the framework. You cannot reasonably develop a .NET CF application without using a plethora of other 3rd party libraries. 3rd party libraries are great, they help move the development market – except all the 3rd party libraries I use are open source already. The OpenNETCF project isn’t moving as fast as it could; an open source CF sponsored by MS would be a godsend – of course it would have to be on SourceForge and not GDN.

    New product: we already know that the next version of Visual SourceSafe will not be adequate. There are great products out there, like SourceGear’s Vault, which do a wonderful 98% of what is required. We have the staple of open source version control, CVS, and its new offspring, SVN. SVN requires some weird hacks to work with Web Application projects in VS.NET. We need an MS-sponsored open source version control system which integrates tightly/correctly with Visual Studio .NET so the Java and Linux C programmers stop laughing at Visual SourceSafe, and in turn, us. Of course it would have to be hosted on SourceForge and not GDN. And I’d be just as happy to have a couple MS developers lend their experience to AnkhSVN because, IMO, SVN trumps everything else out there. (,

    There is significant good reason to open source the development tools and make them as low cost (or free!) as possible. MS has been doing a really good job of this (low cost, free) over the past couple of years and it looks like its getting better. The most important point here is, why should someone pay $$$ to develop C# or VB.NET or what have you in the Visual Studio .NET IDE when they can download Eclipse for free and write Java? Yes, the compilers for .NET are free, and SharpDevelop is great, but there is a certain cohesiveness and quality that Eclipse offers to budding Java programmers vs. budding C# programmers.

    Not sure what the status of Mono is with MS but whatever it is, improve it. There’s a battleground .NET developers are consistently losing when they write a web application which is placed up against a similar system written in Java; the deciding factor is that the Java system can run on Linux or Solaris or what have you. Mono can help level this playing field, help to oust J2EE in favor of the .NET Fx, and increase the number of .NET developers overall. If this doesn’t happen soon I fear I’ll be using Hungarian notation for my public members and generating .class files.

  47. Jason says:

    Give it up. Why keep a proprietary core that you can extend? For MS, it’s a win-win. They get to charge you money, and you do the development of really cool features. Eventually, wouldn’t you like to gut that core and replace it with something free?

    Enter opensource. You can contribute to Eclipse, KDevelop, or whatever. You get a compiler that works pretty much on every 32 bit platform under the sun (gcc). You get open architecture and the complete source.

    The other point I don’t get is you have Ballmer running around in stage saying "Developers!" and then they turn around and charge you to develop on their propritary platform, which only helps them.

    I’ve used both OSS and MS about the same amount now. O have to say OSS wins every time (for development) Maybe .Net is different, but I remember having to manually recalc control coords just because of a resize. I’ve never had to do that under Linux, thanks to Layout Managers. Something so simple…

    VB Changes with every release of the DE. Python is just as easy and doesn’t change.

    Just about any application made with Linux is cross-platform. YMMV, depeding on your toolkit, but it is a lot more portable. Qt, GTK, wxWindows are the 3 best out there. And all have C (C++ for Qt) or Python, so your C and VB people will be happy.

    Josh, you will come to realize that Microsoft is not the way to go. Between platform issues, poor documentation and inablity to access source, you’re ending up paying for pain.

    Ask yourself this: Is Enlightenment better associated with MS or OSS?

    Never is Enlightenment associated with lock-in, fees, and poor documentation. Enlightenment instead is only achived when one is free.

  48. mschaef says:

    I’d love to see enough of ATL/MFC released so that WFC could be used by folks without Visual C++. Otherwise, the public release of WFC doesn’t really mean all that much.

  49. janeiro says:

    So a group could who contributes the code gets to license it however they see fit, and microsoft gets to use it, but what about the rest of us? this sounds like a way to give the illusion microsoft is promoting open source, while just taking code from developers and then distributing free binaries. so where’s the source? is that up to the contributers to decide? as a contributer why would i want to "contribute" code to microsoft who has contributeed nothing to me?

    maybe you just don’t go into the details, but it seems that what you’re talking about is contracting without exclusive rights, but microsoft doesn’t pay and gets to reap the full reward (aka distributing it in their comercial products). write another article when you understand the open source movement.

  50. janeiro says:

    i agree with a lot of the other comments. if microsoft is really interested in open source, show some good faith and GPL, or heck, even BSD license something significant. if you want to take from the community, give something first. i don’t know IE, the XP/Longhorn Kernel, Active Directory, the Office file formats, SMB/CIFS, whatever the current domain authentication scheme is, someone mentioned active sync, something, but something significant.

    i think that would shock the open source community and you might attract some developers that way.

  51. says:

    1> You might try opening up MS file formats. How the hell is anyone supposed to write for MS apps when we don’t even know what the specs are for application data files?

    2> If you GET something from an open source, LEAVE it open source; don’t go throwing ‘proprietary’ roadblocks around it once you’ve got it.

    3> Follow industry standards, and quite ‘enhancing’ them so they’re incompatible with everything BUT MS products.

  52. flacco says:

    1) indemnify open source and Free software against patent attacks.


    2) fix all your products so they use open, documented, royalty-free protocols


    3) fix all your products so they interoperate with F/OSS peers.


    4) fire upper management.


    5) behead them.


    6) put their heads on sticks lining the road to the MS campus as a warning to remaining employees.


    but seriously… what makes you think microsoft can sweep years of insults, abuse, and proxy corporate warfare under the rug by throwing us this quasi-open source bone?


    it seems quite obvious – especially given the wording of your appeal – that microsoft has *no* honest interest in open source, and just wants to sap off talent and energy from the true open source and free software communities.


    any coder with an ounce of common sense willpolitely decline and put their efforts into a project that is truly free, truly community-oriented, and has integrity hat microsoft "open" source projects will never have.

  53. Mark Hiscocks says:

    Josh, I have to agree with Luc. Opening up the code to more advanced MS UI tools would be of great benefit to many companies, as well as to Microsoft.

    One of the biggest hurdles for a user to overcome is learning a new UI. However, if cross-company UIs are similar in their implementation, users would become more productive at a quicker rate, thereby increasing the enjoyment of a given application. If, for example, the VS "Solution Explorer" code was made public and used by various companies, users of one app would immediately feel at home in the second app due to the commonality. Familiarity breeds loyalty.

    I’m no economist, but I would think that:

    Loyal users = More income

    If "people" get more familiar with the MS UI through external applications, then Windows would have an(other) advantage over the competition.

  54. Arash Partow says:

    I think one very important thing MS can do is via its MFC for win32 apps and via the .NET framework for .NET apps is to begin supporting the POSIX APIs.

    I know windows is not a UNIX etc etc, but I think such a move for windows would attract more code to be written and run under windows, it would also make the development of cross-platform code much easier.

    Currently MS has an excellent opportunity with their next version of OS to implement such basic compatibilities.

  55. Geoffrey says:

    I would never support Microsoft’s efforts in any way because of their history of ’embrace and extend.’ They swallow up anything they get involved in and spit it out with proprietary twists. Change the way Microsoft does business, and I’ll consider changing my view. It would take a very long time to do this as Microsoft’s history makes them untrusted.

  56. Chuck says:

    >> Ask yourself this: Is Enlightenment better associated with MS or OSS?

    Enlightenment is better associated with Rasterman. Oh wait, wrong project. ::grumble, grumble::

    Yeah, have to agree on another point: open source ActiveSync. The PocketPC platform doesn’t seem to be doing a whole lot. Better integration of the PocketPC with, say, Thunderbird would probably make a few people smile (ahh, don’t burn me! I never researched this so I don’t know if it’s really a problem!).

  57. Ken Wood says:

    We have already decide where to help Microsoft with open source.





    You recognize the need to start winning back trust? Burn the BSA.

    Quit trying to befriend your enemy. we don’t want to be friends with the likes of you.


  58. Jeff Mercer says:

    I think that the NTFS and WinFS standard should be published. It would be awesome if some code can be contributed, but if code was not contributed, a published standard would allow other OSes to mount your windows drive without problems. On the other side, I would like to see native support for XFS, Riser, and ext2/3 in Windows. If you couldn’t install Windows onto an ext2/3, I wouldn’t care, I’d make a WinFS for the OS, an ext3 for Linux, and a shared ext3 data drive. The more interoperable Windows and Linux are, the better off both camps are, and the anti-trust lawyers will definitly back down a lot more.

  59. Topper Harley says:

    The best thing for MS would be to GPL the source of .Net. That will immediately attract half of the Java developers and all people participating in Mono project. This way Steve B. won’t have a reason to complain about the lack of developers.

    Just my 2c.

  60. I8TheWorm says:

    Speaking as both a Microsoft Developer by trade and an OSS developer by hobby, I think MS faces a huge problem in attracting open source developers. One of the reasons for joining open source projects is to help fill a hole in software needs by working with other developers who share the same desire. The products are released for free with the idea that they are not the only people that have this need.<br><br>

    I don’t think many people will donate their time (and as a developer/engineer/architect I know my time is fairly valuable) toward a project that a company is going to turn around and sell for a profit. I do realize that part of the idea is to worn on open source projects that will remain open source, but there are a myriad OSS projects out there already on MS platforms. MS has historically snubbed it’s nose at open standards (CSS anyone?) and has yet to prove they will do otherwise in the future.<br><br>

    As a developer, I would really hate to see my hard work become non-standardized and close sourced, and I think a lot of other OSS developers feel the same way.<br><br>

    What would be your plan to ensure that open standards are adhered to, and MS-OSS projects are not engulfed in the profit machine and close sourced?

  61. beerwulf says:

    If Microsoft were serious about cooperating with the open-source movement, they would have to abandon their dreams of one overarching framework. It’s the source of the most frustration for developers (having lots of cruft in the software to trip over) and the biggest drain on IT budgets (having to pay $$$ for people whose main stock-in-trade is knowing how to work around COM and COM+ quirks).

    They could also break the linkage between Visual Studio and Visual SourceSafe, or provide open hooks so that instead of being stuck with VSS we could use CVS or Subversion or some other real version control system. In doing so, they could stop trying to do our thinking for us (which is really meant to foster dependency instead of actually helping, and is kind of insulting to boot).

  62. mike says:

    How are all the comments on this page copyright of jledgard??

  63. Tim says:

    Start/work on an open-source calendaring interoperability project; working with the existing standards or simplified versions of them. Calendar interoperability is not at a very good state right now, for MS to improve the situation can only help everyone (and, if interoperability improves, it might help sales for you too, who knows?).

  64. Mark Tetrode says:

    It probably has been said before here, but I will repeat it

    documentation regarding the protocols

    open up your protocols, document them. When they change, document the change at the same time, not years later.

    documentation regarding the document formats

    open up your document formats and document them. When they change, document the change at the same time.

  65. beerwulf says:

    Now that I think about it, they could provide an Eclipse plugin so that we could use their compilers with a fully customizable (and less annoying) IDE.

  66. Chuck says:

    >> The best thing for MS would be to GPL the source of .Net. That will immediately attract half of the Java developers and all people participating in Mono project.<<

    We already have this. Its called Rotor. I’m sure more than one contributer to the Mono project, while developing, said "I wonder how they are doing that?" and took a gander at the Rotor code. Heck, I do it from time to time and it is extremely useful. Of course Rotor doesn’t cover some of the more important items of the framework, like Windows Forms, ASP.NET, and ADO.NET. These are things the Mono developers have had to implement on their own.

    >> They could also break the linkage between Visual Studio and Visual SourceSafe, or provide open hooks so that instead of being stuck with VSS we could use CVS or Subversion or some other real version control system.<<

    They already do this. You can use any version control system you want. Its just there are some idiosyncracies to deal with if you want to use something other than Visual SourceSafe or another vendor’s source control software that doesn’t have hundreds of thousands of dollars behind it. MS needs to improve this API, publish it if they don’t already (they probably do), and probably just open up the source so add-on developers can work around some of these weirder bugs. A few fixes to the way VS.NET communicates with the source control provider libraries is warranted as well (c’mon; I can’t use F2 to rename a file in a source controlled solution when I’m using AnkhSVN because AnkSVN can’t capture that renaming event?).

  67. Microsoft already provides a good POSIX environment. It’s off hidden inside Services For UNIX, but it’s there.

  68. Fred Grott says:

    You already give away a product that needs security and standards adherence improvements..

    If the patens and previous copyrights bought from others can be satisfied..why not open source MSIE?

  69. I have a quick suggestion.

    Give back to the open-source community where MS has taken.

    E.g., Microsoft made extensive use of an open specification, Kerberos, when putting AD together. Kerberos had been tested and worked on for quite a long time, and was a well-established standard with a well-established reference implementation by MIT.

    Microsoft has made some extensions to Kerberos (particularly to what’s called the PAC) field. I believe those extensions are documented, but only under nondisclosure.

    It would be a useful gesture (useful for people who would like to incorporate Microsoft products into open environments), and in fact a significant gesture to the community, if Microsoft would, in effect, put back some of what it has taken from the Kerberos community by removing the nondisclosure strictures from its changes to Kerberos, and in effect open source them.

    Richard Goerwitz

    Carleton College

  70. Daniel says:

    Microsoft with its extra billions of cash and its extreme profit image should have the courage to behave consistently. Instead of mimicking others, it could organise open competition for original applications. The selected winners would be rewarded with generous monetary prizes. But is this company so greedy that it can not even imagine such a scheme?

  71. lpbbear says:

    How can Microsoft work with Open Source "crowd".

    Open the information about how Outlook interacts with Exchange and make it available freely to other mail client and server products INCLUDING Open Source and Free Software.

    Open the information about how Frontpage interacts with IIS and make it available freely to other client and web server products INCLUDING Open Source and Free Software.

    Open the information about how .doc and .xls files work and make it available freely to other word processors and office products INCLUDING Open Source and Free Software.

    Open information about how Windows interacts with applications and make it available freely to WINE, Codeweavers, and Transgaming and any Open Source and Free Software.

    etc, etc, etc

    Stop acting like a frigging monster in the marketplace, pull your heads out of your collective rearends, and wake up to the fact that computers are really about one thing, communication. Stop acting as a hindrance to communicating in an open and free manner with the greatest communication device mankind has ever seen, the personal computer


    If you don’t the public will gradually wake up and MAKE YOU DO IT.

  72. John Douh! says:

    Personally I would like to see the NTFS file system opened up. I know you can already mount it on Linux, but think if a geek could make it more stable like the ext3 and the reiser4 file system so that you don’t have to defrag every week/month. It would also increase the interoperability of *NIX and Windows since Linux has a hard time writing NTFS partitions. ( Matter of opinion I know, no need to flame. )

  73. Standards and fundaments.

    MS software runs on a too different platform, namely MS Win32; and embodies too bad development and administration practices. You have been improving, but be it the marketing smokescreen or whatever, sometimes it seems you only improve points without ever seeing the picture.

    IMNSHO you really missed the boat when you scuttled the planned migration from MS DOS 2.11 or some successor of it to MS Xenix, deciding instead to keep patching MS DOS until it became real-mode MS DOS^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^HMS OS/2^H^H^H^H^H^H^HMS WNT^H^H^H^H^H^HMS .Net, whatever.

    Now what you can do? Even if MS .Net is relatively good, the platform it runs on is just too complex. You could possibly migrate to a free software kernel like Linux, a BSD or even the GNU Hurd, but I doubt it. Making MS .Net a standard could help, but it would need to come with assurances of no aggression with patents or whatever.

    MS SQL Server should not only strive for but indeed achieve ISO SQL compliance at least on par with IBM DB2.

    Just as good or better would be to freely publish specs of protocols, interfaces and file formats. That would in effect preclude nearly all the antitrust nastiness, and create a level playing field with free software. It would, as a huge bonus, build the bridge with free software, as in enabling you to use more of it – apart from hoarding the BSD IP stack into MS Windows and using the GNU toolchain in MS UIS – and enabling the free software community in using more of your tools and platform.

    Now as we are talking about this, why not go to the root of the problem?

    One of the main reasons there are so many standards (and non-standards like your proprietary interfaces, protocols and formats) is complexity, and one of the main causes of complexity is lack of power deriving from poor fundamentals. Look at Lisp: one of the three oldest programming languages, it is also one of the simplest and at the same time more powerful. Even C and POSIX, bad as they are, have such longevity compared to MS platforms due to their inherent power.

    One way here would be to collaborate with the GNU Hurd, that tries to stabilish a bridge between the POSIX (and why not MS Win32 and .Net) world with the functional programming world.

    But an even better way would be relational data.

    MS SQL Server may be nice enough as far as current SQL products go, bar IBM DB2 and PostgreSQL, and MS .Net has a real nice concept with its common type system. But you could both make MS .Net and an RDBMS successor to MS SQL Server much better if you made a sane type system the base of your whole platform, and integrated a D language-accessible TRDBMS compliant with Date’s and Darwen’s _The Third Manifesto_ at the core. The icing on the cake would be functional programming as a preferred systems programming language, but perhaps that’d be asking too much.

    And what would that have to do with free software? Well, it would be such a leapfrog on systems development and deployment that it would stabilish whole new standards. Make them real standards – just as IBM did with ISO SQL –, and you won’t really need to give much away to be a good member of the global village.

  74. Chris says:

    Support open standards and make implementations of those standards open source.

  75. Jonathan Wilson says:

    An open source .NET would definatly be great πŸ™‚

    Something else that I just thought of would be for microsoft to detatch backend parts of visual studio (the debugger for example) from the front end parts (the editor, project browser and stuff) and basicly Open Source the front end/IDE so that people can make a better IDE whilst still using the same Visual Studio compiler, linker, tools etc as they always have.

    For example, the debugger could go in a dll with a COM interface so you can do things like "add watch" and "get data at memory location x" and "step the next ASM instruction" and "disassemble bytes from address x to address y" and so on and the debugger core could do events back like "stopped at breakpoint x" and "watch x has just changed, new value is x" and stuff.

    Not just the debugger but the compiler, source code control and such too.

    Also, how about opening the file formats of things like the MS Debug Symbol files (PDB files)

  76. RandomThoughts says:

    One thing that will really help this is if MS keeps the new "hobiest" IDE(s) free.

    The personally I would like to see the editor inside the IDE opened. There are numerous items I miss (column blocking).

    I would love to see all the power tools opened up.

    Lastly for those of you saying you have to buy something to develop in .NET have you actually looked around, or just decided to bitch?

    #develop + the .NET framework is free and does a fine job of developing .NET.

  77. Nick G says:

    I’d love to see Microsoft do one thing in particular (well, two really):

    * split the "window manager" part of the GUI into it’s own executable

    * open source the code for the new exe

    Within months there’s be a myriad of different Windows window managers, just as there is in Unix-land. This would also benefit MS by helping users of different GUIs to migrate to Windows more easily.

  78. Oren says:

    Microsoft provides very strong IDE and desktop environments. Make use of this.

    Add features to Visual Studio to support more deployment targets. Support more third party development tools such as CVS/Subversion. Make VS a viable alternative for J2ME, GNU C, and other developers. Compete with Borland and Metrowerks.

    Don’t waste time attempting to bridge the back-end and create N-tier solutions involving MS servers. This is where emotional sensitivities and Intellectual Property issues are strongest and realistic benefits are minimal.

  79. Pete Nelson says:

    The reason I’m leary of your open source projects is because I’m not a lawyer. If there are patents or IP involved, I don’t want it tainting my ability to work on a similar project without MS‘s stamp of approval. Unless the IP these projects are based on are unilaterally released into the public domain, its viewed with suspicion by many. If there is no IP of concern, that should be clearly expressed. I haven’t looked, but a NDS, of course, would be the nail in the coffin.

    As far as technologies that I would like to see opened, my short answer would be anything that fosters interoperability. That would include SMB, NTFS and Office file formats. Now, I realize that’s a pipe dream, but you did ask.

  80. Jerome says:

    I am sure there are people who are pro open source at Microfost.

    What I would like it both systems and models to coexist in a friendly and competetive manner.

    That means stop being a monopolist jerk when it comes to rule the world. You can have a monopoly but still treat your users in a nice way

    Make your standards open. I hate that I cannot use NTFS from Linux. But I would also like Windows to be knowledgeable of other formats. Why can’t windows know about my Linux file systems?

    Split IE from OS. Why do I have to upgrade system to upgrade IE?

    From there, you have to slowlt build up your community. It takes time. Look at Sun they are having their go at it.

  81. Microsoft has already hired the creator of to continue that project. I’d like to see him have all the resources he needs and get that language working well and integrated with the various Microsoft tools and libraries.

    The big hole in Python IMHO is that neither Python nor Iron Python really support CSP(Communicating Sequential Processes) well yet. Microsoft could create some incentives to fix that–and in doing so would deal a serious blow to Java.

  82. Aggrajag says:

    I think that parts of the ui would be the perfect place for Open Source: Explorer, shell32, user32 etc. There are a lot of people who like all the bells and whistles on their desktop and (people like me) who take away all of the eye-candy and would like to see even more optimized Windows GUI. I think that Explorer is very usable at the moment but the size just seems to be increasing with every new version of Windows.

  83. Dave says:

    For me, there are two attractions of open source. The first is the guarantee it gives me – I know that my data will be forever safe. As Microsoft explores new licensing options (particularly "software leasing") I have no guarantee that I can obtain legal copies of software to unlock my data from Microsoft formats for terms that I consider reasonable. Sure, my existing programs will keep on working, but if I buy a new PC, I need to buy another license, and MS may not wish to sell me one. With Free Software, I don’t have that problem. Even if the developers of my favourite application give up, I can always install more legal copies of the application, and if there’s a feature I need badly enough, I can always pay someone to implement it.

    There’s not an awful lot that MS can do about that, except publish complete specs of all the file formats and give a binding undertaking to allow implementations of them for no license fee. That way, I know that it’s at least possible to always get my data back if MS does something bad, and in practice is probably a goof enough guarantee.

    The second thing is configurability and scriptability. I want hooks everywhere so I can plug python scripts into, well, everything, really, and make the environment behave in a useful way. Some of this can be done, but most of the interesting stuff requires me to pay $1000 for some IDE or other. I don’t want to pay $1000 just to make my Windows work a bit better.

    Oh, and for the love of Bob, get the IE guys to learn how to render PNGs properly. Alpha transparency really isn’t all that hard.

  84. A Sysadmin says:

    Tons of enterprise and univ level sysadmins would be happy to work on projects to make intergrating windows systems into the enterprise easier.

    Open source anything needed for authentication and authorization. Open source anything needed for remote monitoring and management.

    None of "us" are ever going to be "MS only" — so there’s no market advantage to the "tower of MS" anymore.

  85. Martin says:

    I am little confused. The idea seems to be to ‘engage the free software community’ and then you start saying about what projects Microsoft can open up. I feel this is the wrong approach. At the moment there isn’t the motivation for a lot of free software developers to work on Windows based software. Why not take the alternative tactic and come join us. I’m not saying ‘Immediately GPL all MS products’, simply start contributing to projects as a member of the free software community.

    A little public domain documentation (and it would have to be public domain) would buy a lot of good will with the WINE and NTFS project teams, financing a handful of your developers to contribute to GNU and GPL products, shifting development towards using open standards and open protocols, a donations to GNU, FSF or OSTG would be a lot more cost effective that advertising, stop the anti-free software rhetoric and start offering support and tools for hetrogenous environments. The immediate financial cost of this sort of thing – not significant, business oppertunities – would probably create more than it ‘looses’, publicity – invaluable.

    I (as something of a free software evangelist) think it’s a good idea, 10 – 15 years ago IBM was ‘the great evil’, they’ve turned things around and are now gaining significantly from their involvement with the community. There is no reason Microsoft couldn’t do the same.

    There have been a lot of disagreement between the two camps but this division could be healed if Microsoft are serious about wanting to. Rather than inviting ‘us’ into your closed, propriatory world – why not come and join the ‘open to all’ party that is going on.

  86. Jeff Carr says:

    MS need not do anything thanks, we have things in the free software world going along just fine. But, maybe MS employees should follow Bill’s lead and start dumping your stock before it’s too late.

  87. Linuxer says:

    Learn from Google : do not be evil! Stop funding SCO, killing small companies with frivolous patent litigation and spreading FUD about Linux. Just be nice.

  88. Jim Dabell says:

    I think that the most buggy, user-visible software Microsoft makes is Internet Explorer. It’s also the least likely to contain anything valuable to Microsoft – even if the application itself is of strategic importance, the code is years behind that of its competitors.

    Even if you aren’t willing to open the source for anything, having an open Bugzilla that anybody can read and post comments to would be valuable.

    As I have to work around Internet Explorer bugs on a daily basis, I would be more than willing to participate in such a project.

  89. I’m in the world of chip design software (EDA – electronic design automation), so my world is a bit different from Microsoft’s. A typical product will have thousands of customers instead of millions, but they pay anywhere from $10k-$500k/license/year. Furthermore, a typical customer will have an entire CAD department devoted to customizing and (re-)qualifying our software (because it’s expensive to make bad chips). The release cycles, though, are just as tight as Windows or Office. Given these constraints, we leverage a /lot/ of third-party software, including open source.

    This space has traditionally been dominated by Suns, with a few HP-UX and AIX ports thrown in for good measure. As SPARCs have fallen behind x86 processors, there’s been a big push to move to PCs. There was a big push to move to NT in the late 90’s (prompting us to develop our GUIs on MFC and port to Solaris using Bristol’s Wind/U), but that stalled. The environment was too different, for both developers and the CAD departments; all of this porting was too expensive.

    Linux is where everything is headed now. As an architect, though, Linux is a platform nightmare. If there was a bug on Solaris, for example, we could tell the user to download Sun patch #xxx, problem solved. With Linux, it’s a mix of libc, libstdc++, X, glib, kernels, eye of newt, toe of frog, etc. GUI toolkits used to be more of a problem, but everyone seems to be settling down to Qt (which is a big relief from Bristol — ever try to debug a crash in AfxBeginThread implemented on top of pthreads with no source and Bristol support engineers who won’t look at anything larger than 10 lines of C? Yeah.). I’m also less than pleased by the output by GCC (compared to either Borland or MSVC).

    I’m straying. Getting back to the point of my comment, I have played with Windows Services for Unix, thought it was neat, but mostly something for IT folks. NT’s POSIX subsystem was a great idea but was abandoned. Open either or both of these up, get them up to speed, and it will make life easy for those of us loathe to give up our Bourne shell scripts and fork() calls but are itching to ditch X.

    I see a lot of comments referring to standards. Standards mean little in software. Linux and X, for example, are riddled with non-standard extensions (which are sometimes very useful). The point of a standard is to make interoperability easier, but they’re not the *only* way to achieve this. Defacto standards (e.g., Qt, MFC, K&R C, Solaris threads, …) tend to be far more useful than committee-wrangled standards (e.g., C++).

  90. red floyd says:

    This comment is not so much about open sourcing, but it fits with the tenor of some of the other comments.

    It seems to me that when Microsoft "gets religion" over a certain way of doing things, they drop all support for all other ways.

    Example: Back in ’98/99, I was just starting to work on code for Win32 (having previously worked in the embedded arena). My target platform was an "old-style" non-networked "monolithic" app. I had an MSDN subscription. This was right around the time that MSJ and MIND merged into MSDN mag.

    My problem was that it was difficult to find info on writing stock Win32 apps, but that all the documentation was related to the new 3-tier web-enabled apps, which frankly, I didn’t give a damn about.

    Now we see the same thing with .NET.

    While it is necessary to move on to newer and (possibly) better things, you can’t just drop support for older paradigms. PEOPLE STILL WRITE THOSE SORT OF THINGS!

  91. The trends I’m seeing in this thread are:

    1) Open source .NET.

    2) Open Source IE.

    3) Open documentation for the stuff you already have.

    4) Improve and stabilise the APIs to make OSS easier to integrate.

    That sound about right, folks?

  92. Oh yes…

    5) Come out and play in *our* sandboxes as well.

  93. Don Quixote says:

    Open source the majority of the .Net Framework, and allow porting to Linux, OSX, etc. As a .Net developer, being able to do cross-platform development would be very beneficial.

  94. Anonymous says:

    CSP looks alot like running a bunch of child processes that communicate via FIFOs | pipes.

    You can do that now on a *nix machine and/or across a network with just about any OS that supports Python and sockets (I would assume Windows would – but don’t have the time to dig through the dogfood to get a definitive answer).

  95. I would love to work with Microsoft on an object persistence framework (and OR mapper), and would gladly submit the existing code base of Gentle.NET (see URL) for use in such an endeavour.

  96. Parker Smith says:

    If MS had an ounce of decency, it would open its formats and APIs. I bet it won’t though, for it knows that that would only accelerate its collapse into irrelevance.

  97. David F. Skoll says:

    Too late. Microsoft has no credibility in the Open Source or Free Software communities, so anything it does will be of interest only to Windows customers, and of little interest to the open-source community.

  98. Bilbo Baggins says:

    This is such a joke.

    MS refuse to even open so much as their office file formats.

    It’s just a classic divide-and-conquer technique. Anyone who cares about the future of software should have nothing to do with it.

  99. Kenneth says:

    The huge crusade that Microsoft started against GNU/GPL has severely damaged the firm’s reputation.

    However, some fair play should be done by Microsoft in order to change the business model before falling under a tombstone:

    – Publish the APIs for every software.

    – Stop crafting protocols to turn them incompatible if they hadn’t been publicly discussed before.

    – Build software that runs on top of GPL software.

    – Stop abusing of other propietary software firms.

    IMHO, every piece of software is simple while looked through a looking glass, so closing the code will only stop the cut & paste of software.

    Internet is not secure anymore, it has been proved that source code can be stolen from any place.

    So shouldn’t it be better to show the code and make it available for public review (one of the strongest points of the OpenSource) but mantaining it copyrighted to defend against piracy and cut & paste? This would upgrade security everywhere and also the firm’s image.

    This way, MS could use this gun against third parties not allowing their customers to ensure about the quality of the bought product πŸ˜‰


  100. monster says:

    what is this community you speak of? The only people interested in open source microsoft projects are those who want to steal intellectual property

  101. gnome says:


  102. says:

    Continue with new releases of IronPython under the Common Public License so that it can be used in Mono as well as in VisualStudio .NET.

  103. zogger says:

    I don’t think anyone should develop for, use, support, or encourage anyone to continue to use Microsoft. You listening moz guys? Stop bailing them out! Let em crash and burn all on their own!

    Sorry, MS as a "corporation", no matter if some individual employees here and there are "nice guys", can be summed up in a few words. *Chronic* *Serial* *Crooks*. Gangsters, proven gangsters. If we had better laws that stopped letting corporations get away with abuse like they have done for years, and if they were enforced, this corporation that has bled dry computing for years and beat up on all sortsof people and cost the economy who kjnows what in huge amounts of lost opportunity, then having to deal with insecure crapware on a daily basis, would have been broken up, cast to the winds, and the shareholders be danged.

    Ya’all Microsoft folks made enough hundreds of billions, why don’t you just retire, go work someplace else and stop working for the mafia? You miss the news the past decade, or what?

    Oh, I forgot, "cash", anything is OK as long as you can make some "cash" from it.

    Sorry, that don’t compute, it’s the same excuse crack dealers use, "it’s just business".

    Like some other posters here have said, open source doesn’t need microsoft, go away, go buy an island someplace and retire with your loot.

    thank you very much. I’m sure you’re a nice guy, like your kids, pet dogs, open the door for ladies, and so on, but when I think of microsoft "helping" people I think of carjackers "helping" you drive your car.

  104. 1. Promote OSS licenses within Microsoft Research.

    2. Leverage MS‘s patent portfolio by offering open patent licenses on a large number of them, with the proviso of those patents being applied to software that uses MS operating systems. Many patents sitting on the shelf, if applied, would increase the quality of Windows software and would give ISVs a better comfort level when their Windows apps happen to compete or overlap with MS’s own offerings. Of course, the Linux crowd wins nothing here, but Windows developers certainly do.

    3. Open protocols for MS Messenger to other clients.

    4. Ditto on opening up the ObjectSpaces O/R library that never happened.

    5. Currently, even MS apps aren’t consistent in their widget libraries: e.g., compare toolbars in built-in Windows XP apps to Office 2003. How is an ISV supposed to create quality software with fancy GUI widgets that are consistent with MS products? Open-sourcing some of those libraries would go a long way toward helping many small software companies have high-quality, XP-compliant interfaces without the expense and lock-in of the various proprietary libraries that mimic other MS software.

  105. Travis Wells says:

    3D Movie Maker.

    I doubt you’ve heard of it, but it was a little program MS made in ’95, aimed at kids, that let you make simple movies, using premade actors.

    It’s 9 years old and still has a community of hundreds of directors. I run a site that stores 1344 movies made with this great little program.

    By letting you use premade actors,props, and backgrounds, they shifted the focus on the voices and story. It’s basicly a movie prototyping program.

    But it still has flaws. It was made right as Direct3D was being released, so it missed the boat. (It’s using a software renderer). Some very useful tools were left out (multi-select, texture/model importing, dynamic camera movement) either because they were aiming it at little kids, or because of limitations of the software renderer.

    Our community is pretty unknown because you have to own the program to view these movies. With the source we could make a 3dmm2AVI converter and let others view some of the best 3dmm movies without having to buy/download the program. We’ve got several C++ programs and a dozen VB coders, we could do so much with this program.

    It’s sad that one of Microsoft’s best programs is almost completely unknown, and the hundreds of great movies made with it suffer for it.

  106. Petrus says:

    To be honest, I find myself wondering whether anyone can trust what this guy is saying or not. I offer <A HREF="">this</A&gt; as exhibit A for the prosecution.

    I can see two possibilities here. Either this entire site is a complete crock, and is being used as a means of infiltration, or this guy genuinely *is* decent enough, is passionate about what he does…most importantly is not associated with the "old guard" or Microsoft’s senior management…and does want to open lines of diplomatic communication. I’m trying to keep an open mind about the idea that this is possible, especially given the inroads and attacks on Microsoft from all sides recently…The company is basically going to have to change its position or die…it’s really that simple.

    Given the incredibly vague chance that the unthinkable could happen and that co-existence and collaboration really are possible, I see one way in which Microsoft and the open source/UNIX using community could be of enormous benefit to each other, as I will elaborate.

    As ESR has written, the UNIX world’s specialty is in the area of internal, CLI based infrastructure…the core guts of an operating system. In that area, Linux and (to a lesser extent) the other Unices are the best in existence. However, one area where (at least at times) things are a bit more lacking is on the GUI side of things. It is true that the KDE project in particular is looking amazing in most respects these days…but there is still a lot of work to be done in some areas. I remember exchanging email with a KDE developer a bit back where he talked about development/usability guidelines were in somewhat short supply. This brings me to Microsoft.

    It is of great interest to me that Microsoft’s areas of proficiency and weakness are directly the opposite of those seen in the UNIX world. While no offense to anyone here is intended, from the point of view of the technical quality of the core operating system, (including the issue of security) in my view Microsoft’s track record runs between barely mediocre and utterly attrocious. However despite this, it needs to be remembered that a builder and an interior decorator are two entirely different professions. Where Microsoft has vast experience which could be of tremendous use is in the area of focus grouping and market research, in terms of usability, as well as having written the very kind of developers’ usability guidelines which the poster from the KDE project I mentioned earlier was lamenting the lack of.

    Basically, I see a situation here where each group has something the other needs and could benefit from. Microsoft I think should be discouraged from continuing to attempt to develop core operating systems, and should leave that to the open source community. Where I can see Microsoft and the consumer world benefiting tremendously would be in Microsoft developing its own window environment/window manager system, similar to KDE. And in fact, this is what Apple have done with OSX. Recognising their own strengths and weaknesses, they decided to abandon trying to develop a core operating system themselves, (which they weren’t so good at) and instead focus on developing their user interface. (which they are)

    This would work well in a number of different ways. Microsoft would benefit enormously because, due to the stability of an underlying UNIX codebase, their poor reputation for stability and security would be able to recover. The customer would benefit by retaining the Windows interface to which he/she was accustomed, but also by no longer being faced with the possibility of his/her computer being violated on a daily basis.

    Microsoft also would not need fear that this would destroy their ability to make money, either. If a consumer can buy a sound, reliable product that is also easy to use from a readily accessible source, then such peace of mind is something that a very large number of people will continue to very willingly pay for. Some adjustment of their current pricing model would be of benefit to all concerned…but it would still be more than possible to make a profit.

  107. pixel fairy says:

    many of us would like to see a world where anyone can freely choose whatever software they want, including yours.

    you are doing everything you can to prevent this, and drive us away.

    it doesnt make sense to help someone who is trying to drive you under.

    as for balmer, he seems to want some kind of war.

  108. Another User says:

    Open standards and interoperability are what Microsoft is missing right now. The most valuable collaboration Microsoft could have with its customers would be to document its file formats. Word, Excel, Power Point, and so on.

  109. ammoQ says:

    MS has been busy lately placing those nasty "Get The Facts" adds on open source related websites. While I love the idea of MS indirectly sponsoring OSS-related activities, I could think of adds that are more likely to find interest by the typical reader of such a website. It’s simply unfriendly to do that. You want the open source people to develop for and with ms… so where are our free tools? Why does the add say "click here too learn that our system is 10x cheaper and 2x faster than yours" instead of "click hear and get everything you need to write Windows programms for free, this means, Windows+VS (some restrictions apply)"?

  110. ene says:

    I would really like to see the shell opened up (either in source or in specs).

    Microsoft over the years has really focused on providing a better and better user experience. Based on the current demos, Avalon will only move this goal further.

    However, I am unconvinced that a single user experience is right for me. Explorer.exe may be a wonderful environment for 95% of users, but true customization (not just theming and custom animations) can only be acheived by having third parties contribute their own innovations.

    Some environments already exist that replace explorer.exe: <a href="">Litestep</a&gt; and <a href="">BB4Win</a&gt;. These programs are only marginally useful as they were not programmed against the specs, and will likely no longer work under Longhorn.

    I believe that a fair amount of teenagers+ who migrate to Linux do it not for the OpenSourceness, but for the possibility to tweak their environment. Wouldn’t it be great if one day we had a variety on Windows such as <a href="">this</a> ?

  111. Andrew says:

    Open source Windows 3.1.

  112. Erik Sargent says:

    My ideas are wiki (which at least one MS developer started on his own already) and build and test tools.

    The idea I read that makes the most sense to me is ActiveSync.

  113. James says:

    I am not a programmer in any sense of the word. Thus this comment is coming from a slightly different perspective than most.

    Part of Microsoft’s problem (as I see it) is its past history. Programs like Stacker and Dr. Dos come to mind fairly quickly. Kerberos extensions that seem to – in some strange manner – may break non-MS kerberos applications. The other part of the problem is how FOSS developers would view MS‘s approach. Ie:

    1. How do I (Microsoft) convince FOSS developers that I will not just take but give back and/or give help to a project? (Key words, "give back", "help a project")

    2. How do I (Microsoft) convince FOSS developers that I will not embrace, extend, and ultimately crush any FOSS package that is worked on (aka Netscape) if it is in my best (financial) interest to crush it?

    3) How do I (Microsoft) convince others that if I give access to API/program "blah" that I will not come back later with some sort of patent, copyright and/or trade secret issues and take the work of others?

    While I’m doubtful the following would happen (given that MSOffice is a key revenue generator) here are some thoughts on how MS could start to improve it’s image to various FOSS groups:

    0. Maybe a FOSS program to access the "" site that can be run from a DOS command line instead of a GUI like IE. Like Debian’s apt-update and apt-upgrade command.

    1. Start opening up the (some?) file formats for Word, Excel, etc. Even if it is from Office 97 or Word for DOS. Open it up _without_ having to sign a zillion NDAs.

    2. Have MSOffice support the file formats of OpenOffice and/or StarOffice. The formats are freely available.

    3. Support official standards first and then other (MS) standards. I’ll let others smarter than I go into detail on how MS might not be up-to-snuff when standards are concerned.

    4. Open up NTFS file/system formatso that unix boxes can mount it RW with more confidence.

    Just some thoughts. Film at eleven.

    — James

  114. Caleb Moore says:

    Hi Josh.

    As a fairly active open source developer myself I feel that trust is the most important elements of cooperation. An open source project is a huge investment of time and both intellectual and emotional energy, if one is to invest in this one needs to feel very secure that the people that one is working with are trustworthy.

    Please remember that I am not trying to insult you with the following statements, just sharing my perspective. Microsoft does not have a great track record of trust. Microsoft’s business practices have been found illegal by a united states court and although it doesn’t seem like the punishment was severe it was enough to lower MS‘ credibility to many. Microsoft’s practices of using market dominance of one product to displace a competitor’s product in another market is seen by many as underhanded. Microsoft’s past history of modifying standards without consultation or proper documentation so they become incompatible with competitors products like with "HTML 5.0" shows to most potential partners in open source development that Microsoft is not trustworthy and consistent. The ideological pursuit of excellence in software creation doesn’t seem to be shared by Microsoft who have released versions of software with disabled functionality such as Windows XP Home Edition, and even more so the soon to be released Windows XP starter edition. This behavior of purposefully limiting a product is seen as repulsive to almost all open source developers. Look Josh, I like your visual studio, it is an excellent environment and it clearly distinguishes itself from most of its competitors by it’s coherent, integrated structure, however you must admit that your company has forced some real crap onto the world.

    Also, open source software is a community, if you attack one project you offend the it in its entirety. I am well aware that Linux is a serious competitor in Microsoft’s main market and your livelihoods at least partially depends on defending against it, however every time it is targeted specifically, even hackers that detest Linux realize that it could be their project that is attacked next. If you pour your free time into developing something how could you trust an organization that is pouring millions into destroying something similar because it is in their way?

    Finally, there is the practical aspect. If someone is experienced, committed and indoctrinated enough in free software to be an asset to your team in more concrete way than simply "open source hippie diversity window dressing" they are probably more comfortable and experienced with unix than they are with windows simply because of the natural trend of surrounding oneself with software of an open nature if that is what one is keen on. As such there is fairly little benefit for Microsoft in cooperating to create a product that in all reality will be made by the open contributers to work far better on the competitors products (OSX, Solaris, Linux, BSD etc.) than it would under Windows, clearly counter-productive for anything but public image.

    So in conclusion, yes, I would work with Microsoft engineers if they happened to want to work on something that I was interested. I don’t have a grudge against MS, just a deep rooted mistrust. No, I would not work with Microsoft the entity because I am convinced that their strategic overseers are working to undo things that people like myself have done even if their engineers may not be. If you want trust, create a version of MS office for Linux and BSD. It doesn’t have to be open source itself or anything, just a symbolic action to say "if you want to use open source products, we’re cool with that." I suggest that you make it using the GTK+ toolkit as it is quite consistent and powerful, it can link to closed software without royalties and it would prove that you are willing to contend with our obfuscated, counter-intuitive, poorly-documented interfaces for a change rather than the other way around.

  115. tuco says:

    Everyone else has already said it. But the file formats needed to be opened if MS wants to play nice with the other kids in the sandbox.

    And since that will NEVER happen, it seems pointless to waste time and engery trying to open up MS. Longhorn is all about locking down and locking out. I don’t see much of a balance in the the future; only a battle.

  116. Caleb Moore says:

    Hi, it’s me again. I don’t know if you are naive, optimistic or simply trying a cynical image stunt, but I just wanted to add that I sincerely wish you all the best for what you are attempting. I really hope you find the cooperation you are looking for.

    Good luck — Caleb

  117. guy says:

    Your choice of "Powered by" says it all. And they are not very "open" choices at all (pay full price for these? I bet not).


  118. More Microsoft Engagement with Open Source Projects I’m currently working to enable more collaboration of the "Open Source" type with the developer community and Microsoft. It should be easy for teams here at Microsoft to develop extensions to their platforms…

  119. Tony Hoyle says:

    Open up the specs.

    The IFS driver kit is $800… I just paid $2000 for MSDN Universal to get the checked build of XP, plus DDK, etc. (admittedly I could get MSDN Prof. instead for this but the point stands I thnik). That’s a *huge* barrier to entry for opensource projects.

    The reason given for this is that driver development is ‘hard’ and they don’t want any old developer doing it (they recommend a company that wants $25,000 for a 2 day training course on it)… which for me just about sums up the MS attitude (‘we can’t let the peasants vote.. only landowners are qualified’).

    btw. filter driver development is not ‘hard’ if you have the documentation (for any half decent programmer). I’m nearly finished just from using google and a little bit of luck. Still need to wait for the proper docs to arrive to find out what horrendous bugs are in there, though…

  120. Anonymous coward says:

    Don’t open source anything. I have to work daily with a number of open source jihads and I see the code they produce.

    All they do is vent the fact that they have no life in horrible code and use comments to insult each other.

    Why would MS support that? If anything, create a way for small ISVs to gain access to MS source code where it is mutually beneficial.

  121. Simon Brooke says:

    When I was a young programmer IBM dominated the industry and was able to use its strength to make genuine innovation difficult or impossible. It wasn’t until the arrival of microcomputers as a disruptive technology that people were able to overturn the monopoly and begin to build a more open software market again.

    And Microsoft very quickly closed that down again. There’s no point here in discussing the rights and wrongs of how it was done, but software with proprietary protocols and proprietary file formats make monopolies very easy to establish and very hard to break.

    Programmers living in a world with a giant have three choices: we can subsist on the scraps that fall from the giants table, tinkering at the edges of the giant’s technology; we can seek the specialist niches the giant hasn’t yet invaded, and then live in fear of the day when the giant decides to move into our niche; or we can work to develop the new disruptive technology which can overthrow the giant.

    IBM is now no longer the colossus that bestrides and crushes the rest of the industry, and IBM has rebuilt itself as a good corporate citizen. Much to my surprise, I find I now cooperate with IBM and am happy so to do. When non-Microsoft operating systems account for 90% of the market, when all office applications use open, standard, documented file formats, I may similarly be prepared to co-operate with Microsoft.

    But until then, no.

  122. Russ says:

    How about System.Windows.Forms? MS is touting how they submitted C# and .NET for the ECMA standard — but this is all BS becuase they intentionally left System.Windows.Forms out of the ECMA spec, which of course is the lynchpin of any GUI app.

    This seems to be the standard MS lock-in mechanism rearing its ugly head. Eveyrone knows that .NET is used a LOT for GUI apps, and it would be a real olive-branch for MS to give people the info they need to implement a compatible widget library for other OSes, so .NET could TRULY be cross-platform.

  123. josh ledgard says:

    Wow, this is a LOT to read through. I normally try and respond to every comment on my blog. I generally don’t get more than 10. πŸ™‚ In this case, however, I think I’ll have to respond to themes of comments. I’ll write up a post today/tommorow with a LOT of my responces.

    I just wanted you to know I am listening.

  124. BillR says:

    I think Travis Wells’ comment about 3D Movie Maker says it best:

    "It’s sad that one of Microsoft’s best programs is almost completely unknown, and the hundreds of great movies made with it suffer for it."

    What’s sad is that if there had been an Open Source alternative to hitching all his wagons to a proprietary product and format, there’d be hundreds of films that wouldn’t have to rely on anything but the passion and technical skill of them people behind them.

    having lamented about the past, this all boils down to trust: MicroSoft has a long and storied history of "Embrace, Extend, Extinguish". There are a lot of people that see Open Source as a final and effecive protection against MS‘s predatory business practices. You need to help peopel overcome years of fairly slimy past history. I know many people feel "tainted" when they involve themselves with MS and its products. You’ll have to overcome that feeling. It’s a religious thing with some folks. There are practical issues as well.

    Little things come to mind, like would you allow developers to collaborate via IRC/jabber/etc, or is MSN the only avenue possible? Stuff like this matters.

    The license you mention sounds great until one wonders what would happen if MS decides to change libraries, API, file formats, network protocol, etc. a couple years after a fork.

    Similarly, how would any software patent notions shake out? If I work on something with MS, and then am allowed to "use it for [my] own purposes commercially", how do I know MS won’t patent what I’ve helped with and then lock me out? If MS intends to grant me royalty-free use of whatever I’ve worked on in perpetuity, what if I decide to transfer ownership? Many OS developers don’t have cadres of lawyers. MS does, and is *never* afraid to do business with them first.

    Would MS have any rights to say what I did with my version of the forked code? Even if I intend to compete commercially directly against MS? Or if I intend to collaborate with one of MS’s competitors?

    One last word: Open Source is, at its core, about liberty. That means there are never interoperability issues, because *everything* is open. Products and projects stand or fall on their own merit, not because of vendor lock-in, marketing budgets, or scare mongering amongst the users. Can MicroSoft square with that? Really? Deep down? That’s what it means to eat your own Open Source dog food.

  125. Devin Watson says:

    I have been courted by Microsoft in the past about going to work for them. And I must say that the benefits were really nice, pay was real good, but there was one thing that hung me up about it: I liked using open source software to solve certain problems that MS products simply couldn’t do on their own.

    At the time, it was anathema for any Microsoftie to even suggest such a thing, so I think this is a good step in the right direction. If I knew for a fact I could go work for MS *and* write OSS code, or work on OSS projects, then I’d be there in a heartbeat. It’d be the best of both worlds.

  126. TeD says:

    Things i’d love to see:

    Once longhorn comes out, MS releases the source code to all the obsolete and unsupported versions of windows.

    Some work towards a BSD/Linux/Unix backing towards windows (yeah… i like OSX) at least enough so that I wouldn’t need to dual boot in order to be able to run certain apps that I require. (Colinux for example is moving towards a good direction.)

    Opening up explorer.exe, and allowing for more customization would also be a great addition. shell replacement can only go so far.

  127. JeffW says:

    Consider a native, open-source version of active directory – client and server, not just a client – written in ANSI C, hopefully, that integrates seamlessly with UNIX, and that can be easily ported to any platform. None of this crap about exporting from NIS to Active Directory – I’d like to see a PAM module that speaks AD natively. I suppose that means a complete protocol spec, too, but maybe thats too much to hope for.

  128. Chris Kunicki says:

    An important part in any plan to promote open source or better community of code sharing requires good infrastructure. SourceForge.NET is years ahead of

    For some time I have felt the major shortcoming in Microsoft’s strategy has not been to bolster GDN and advertise it. GDN is a great tool, but is notoriously slow and it’s not a surprise to find it unavailable.

  129. Peter says:

    All the accessories that come with windows. e.g. Notepad, Paint, Calc, Wordpad

    And possibly the Games as well.

  130. Omar Buhidma says:

    Microsoft would do the whole world a boon if they would hand Internet Explorer over to a Mozilla Foundation like organization. Competition in the browser arena is healthy. The only browser that has a chance of really competing with Firefox right now is IE (mainly because of user base), but IE grows more discredited every day. Hand it over to an organization that’s unencumbered by the usual MS distrust and the emerging browser war will be far more constructive then it would otherwise be.

    Open file formats would also be good. My understanding of the way some versions of office applications save to disk make me beleive this may be difficult (and the poor quality of some of Office’s file filters for use with older Office file formats leads me to beleive even the MS developers don’t have a full grasp of the Office file formats), but any attempt to improve the detail and accuracy of the published file formats would improve Microsofts credibility.


  131. Gonzalo says:

    Everything that needed to be said has been said. To summarize:

    1) Support OASIS file formats in your products. This is how you were able to beat Lotus and Wordperfect before.

    2) Allow others to read your file protocols and show that you have faith in your own products by letting customers see that you compete on the merits of the Office suite. In other words, don’t lock customers.

    3) Enhance interoperability at every layer of the software stack. Microsoft has the technology how-to and the money to change how we experience computing, but they will only be able to do so by opening up so that we can all work on a common set of standard file protocols and APIs.

    Open sourcing .NET would be a huge boom to Microsoft as it would alter computing history creating the single most unified computing platform in history.

    Do it. Be relentless, be the voice of reason and change within Microsoft. Lead and educate others and make it known to management that the world has changed and thus Microsoft must too change.

    Good luck

  132. Chris says:

    Switch to a linux/bsd based OS and you might have a chance.

  133. great to see this. the walls between open and closed source are coming down. software companies need to do both. i noticed you quoted my business partner and it was interesting because we’ve spent a lot of time on this:

  134. Cory says:

    What would be extremely groovy, would be a free(speech and beer) framework that work beautifully on both platforms. (java still needs work) For instance, .Net is great for App development in Windows. Qt is equally great for Linux (I’m a KDE man.. Sorry Gnome folks) I understand that Qt works on Windows too ($2500 is a bit pricey though.) What would be great, is a project to make ANY application run as well on either platform as it would with it’s own APIs would. Or an API translator so You could take a .Net app and have it "traslated" to Qt/C++. This way, applications can be released for either platform and can reach 100% of the market.

  135. J. Daniel Smith says:

    One way to get some traction on this is to determine were the true "value add" is in various pieces of software.

    For example, Solitare and Write add very little value (if any), so make the source code available. Things start to get tricker with things like windows Movie Maker or Internet Explorer, but I think both are relatively unimportant compared to Word (the blather about IE being "integrated" into Windows aside).

    Large parts of .NET are already open-sourced, and there are projects that provide Visual-Studio like tools. So maybe VS could be tweaked to separate out the "free" stuff from the "pay" stuff (perhaps pushing the "Express" concept a bit further).

  136. Carsten says:

    Because this is doing OSS no good and it proves MS to be dishonest with their "strategy" of embracing OSS. Or is embracing meant as in "embracing one more time before putting an end to OSS"?

    Besides that I welcomed MS’ first SharedSource on and did download it to see what kind of sourcecode was made available for "free". I was astonished to see that it was not only half-a-full application (cmd line app) but that it was also code that could eventually be shown to other people. Keep up with that. As to your OSS, or rather Shared-Source, initiative- better keep it as it is, don’t try to make another market your market. It has shown in the past, that you did not do good to your first market. As OSS is highly ideology driven, and MS is a firm with the most incompatible ideology to that of OSS I reckon that it would not become OSS if MS tried to make it a part of their strategy – or that it would not become MS, consider MS becoming an anti-imperialistic, non-profit organization, a good laugh we all would have at the mere thought of it, wouldn’t we?

    Leave it as it is I say, but at least change some of MS ideology and (sub)culture to become more respectful in terms of respect for other human beings and their needs besides what MS thinks that their needs are or should be in regard to a prospering MS. It is the people that should prosper on OSS and every other software and not MS on the people by making OSS part of their whatever-the-strategy-was.

  137. avecfrites says:

    Not strictly an open source comment, but here is a big win for Microsoft trying to attract hip developers: Give the huge number of Perl developers a way to create "real" Windows apps, cheaply or for free. This means:

    1) Really support Perl in .net, not relying on ActiveState and other external parties to provide slow kludgy expensive separate tools.

    2) Provide a stripped down development kit, free, for Perl coders who want to download and use it.

    Lots of Perl programmers would love to be able to deploy more than CGI programs, and they typically move to Java, or stay on servers, because Microsoft doesn’t give them anywhere to go.

  138. Ian Schmidt says:

    This is probably not going to be read ;-), but here’s some suggestions. (My background: I run and play with Linux at home, I write proprietary software (including Win32, Xbox, and .NET) at work.

    1) Separate Visual Studio from the languages. Make it work with GCC (via MinGW/Cygwin), including debugging. Throw in Perl/Python/whatever support. Support open-source source management like CVS and Subversion. Maybe even open source VS itself. Every Win32 developer on the planet has a pet peeve with VS (mine being the dreadfully bad BRIEF emulation compared to the recently departed CodeWright) and if they all could "scratch their itch" you’d have one hell of a great product.

    2) Eliminate all the "secret" (by-number) imports in the major Win32 DLLs that apps like IE, Explorer.exe, and Office use. Shell32 in particular is rife with them, and ComCtl32 has a lot as well. Throw the docs up on MSDN. If something is useful for IE, why should I have to reinvent it?

    3) Open source all the non-essential bits that come with various MS things. Pretty much the entire contents of Start -> Programs -> Accessories would be a good place to start.

    4) Open source older "non-revenue" technologies as they’re replaced by the latest and greatest, including entire OSes where applicable (example: Windows 3.1, the 16-bit version of Visual C++, "Bob", and whatever other skeletons are rattling around MS’s closets).

    5) Open up file formats where applicable. I understand keeping current Word secret as a business model, but opening up e.g. Word 97’s formats would go a long way.

  139. avecfrites says:

    Provide a stable socket-capable port of Perl to the Pocket PC, along with a developer price on wifi-equipped Pocket PCs. You’ll find some pretty cool mobile p2p apps come out, most of which will be open source.

  140. avecfrites says:

    Contribute some interface modules to CPAN that allow Perl programmers to integrate with key Microsoft components, such as Exchange, UI widgets, DHTML, Office, whatever you want enhanced. CPAN contains lots of great stuff, but a lot of it is also not quite stable and not certain to track future Microsoft changes.

  141. How about providing support for Visual Basic (e.g. vs. 6) for all those users who are unwilling to move to VB .Net?

  142. I would like to see Microsoft start releasing the source to older versions of Windows such as Windows 95. I would suggest a 10 year cycle. In 2005 you BSD license what you can from Win95 and in 2008 you do the same for Win98.

    Windows NT is another case as the NT kernel is still a big cash cow for Microsoft as with our little friend ReactOS I doubt Microsoft would want to release it right away. I would suggest doing it that same way. Release the souce for it in 2008 and then service pack 6 in 2009.

    I doubt this will ever happen as the community could then adopt a Free version of Windows and improve it rather than buying the latest and greatest. I mean look at Unix, its lasted 30 years.

  143. Erik Martino says:

    I would like to see COM/DCOM open sourced

  144. Daniel Carrera says:

    I would like to see Microsoft adopt open formats. Specifically, I would like to see MS Office support the new OASIS file format.

    OASIS is a standards organization that includes several corporations (Sun, Corel, Boeing, etc), non-profig troups (KDE Leagues) and individuals.

    The OASIS file format is intended as an open standard for office applications. It will be the default file format of starting at version 2.0 and KOffice starting at version 1.4.

    I expect future versions of Corel Office will at least support the format (since Corel is in the OASIS committie and helped design the format).

    I would be much less wary to work with Microsoft if I had the confort and security that the OASIS format brings.

    If you are interested in talking about this, feel free to contact me. My name is Daniel Carrera and I am an volunteer.

    I can be reached at



  145. audiokat says:

    In participating in open-source projects there are several things I enjoy. If there’s truely a bug in how something works, e.g. it’s supposed to do something and doesn’t or does something it’s not supposed to such as crash, I can usually pull open the source and debug it until I find it and squish it. I also enjoy being able to find out why it does what it does and whether or not it conforms to the protocol/standard it’s supposed to be using and trying to get it to adapt as much as possible to that.

    As far as what projects I’d like to see Microsoft open source, I think Microsoft needs to decide what applications are core to the business and which applications don’t matter as much. For instance, companies spend thousands and thousands of dollars setting up email solutions using exchange and therefore buying windows licenses for their exhange servers as well, many times also using NT authentication or active directory on another machine with another windows license. I would like to see the protocol for exchange published as a standard and to have outlook released as a reference implementation of that standard. Internet Explorer is similar.

    I think the cooperation between open source and microsoft is mutually beneficial especially with outlook and Internet explorer. Even while many open source folk (and even a bunch of those who are not) don’t choose to use or despise internet explorer many of us still have to use it for various reasons and/or support it in web pages and applications. Having internet explorer conform more to standards and open to security audit would be of much help to both parties. Same with Outlook.

    And a note to those who say they wouldn’t get anything back by contributing to a microsoft project…..if microsoft was to grant access to the source of internet explorer or outlook, I think that many of us, especially in the internet or IT field, and any of us that have had a family member calling up asking about a virus they got via IE or outlook or other things of that nature inherantly benefit, whether we get kudos, recognition, beer, cash or nothing.

  146. Over on his blog, Josh Ledgard (the program manager for visual studio) is looking for feedback on which projects Microsoft should open source next. Ears down to the track and you can hear the train a’coming…….

  147. Alvaro says:

    Quite simple: take IE into that route. Let the IE development go through a community. The biggest lack for IE are the security bugs and the standards (W3C) no-compliance. Particulary bad is the latter, even for non-IE users (such as me). Letting a community drive or help IE development would definitely help everyone, approaching standards faster and not ever stalling development again.

    Unless Microsoft removes IE from the Windows OS, of course.

    By the way, a good choice of license that allows what you are looking for is clearly BSD.

    Good luck!

  148. tuco says:

    This is OT but I was reading your "When Penguins Attack" and you made mention not understanding MS Licensing and didn’t like losing customers this way. Here is a link that breaks down some legal terms in the MS EULA for home users and explains things.

    The MS EULA is what keeps me from using Windows! For me, the MS EULA is totally unacceptable. And I don’t see how anyone can accept these terms. It is control-freak city. Of course, no one reads it and just clicks "I Accept". And if you did read it, you’d need to be a lawyer to understand what rights you are surrendering. The terms in the EULA need to be negotiable.

    Sorry for being OT but comments for that post are closed.

  149. Leon Anderson says:

    I am quite interested to see if any of the ideas and suggestions on this blog will be seen by microsoft developers to put together some sort of suite for the programmer to establish standards and protocals for all to follow….and to be able to quickly deploy feedbacks and benchmarks for the community…what Sun and Helix have over microsoft…i would gladly help with this if there was an actual interaction within the community and the company. Sun and Helix

    listen to their communities and actually give them feddback for their evolving developments!

  150. Leon Anderson says:

    My first open source project for the microsoft community is to set up a software that allows virtual internet clustering of computers s that anyone that allows microsoft to do so by agreeing to the " Super Computer Simulation Project " will allow microsoft to set up a virtual cluster over the internet and see how many computers we can actually cluster together.

    The reason for doing something like this is if ever there is a disaster or situation requiring a vast amount of processing power…more than what the super computers out today can actually put out….

    RealWorldExample : Imagine a corporate space travel company trying to win that space x contest makes it out to the very top layers of the atmosphere and something goes wrong….

    there are minutes ( not hours or days ) to figure out what to do with the problem….

    use the microsoft software that actually uses a database to get or refer a list of available computers online allowing themselves to be used for this situation.

    not 1 not 100 not 1000 not even 10000

    but imagine the processing power of 1000000

    computers…each on an average having a pentium III processor….

    The draw back is that someone allowing themselves to be used for this would want something in return…..maybe microsoft can offer the big ani-virus companies more of their source code for the developement of better anti-virus software….running this new project/program…you would need it!

  151. Hey everybody…would it not be cool if microsoft where to start a community for this project and set them up with a message board

    and actual adminsitrators/developers that could monitor that blogs and forums and post some helpful comments to those individuals developing "their" software…..but that means they would have to actually pay a few of these "microsoft professionals" some money for administrating these forums. That would mean it would cost them money…and we know this won’t happen…..because the whole reason they are going "open source" is that they want to cash in on the "free" development that everyone does for all these other companies/projects.

  152. palisade says:

    Open up Direct3D, if nothing else.

    a) it would be a heavy blow to opengl

    b) there would be ports of d3d to macos and linux among other platforms, thereby making d3d ubiquitous (as much as opengl)

    c) someone would inevitably create embedded versions of d3d for pda for any embedded OS

    d) slews of bugs and thereby fixes to d3d would come out of the woodwork from 3d and game developers

    e) tons of features and enhancements would surely be made by those same people

    The way I see it, MS would still have their proprietary XNA technology. Therefore there’s no harm in opening up D3D, which would really benefit and bring relief to many 3D software developers and game programmers.

    While you’re doing that it might be handy to open up DirectInput along side this. Almost everyone uses this as the defacto method of grabbing high resolution input and handling many devices. Which is just as important as Direct3D. In fact, it might be easier to convince the higher ups to open that up first.

  153. MSB says:

    I think the one program Microsoft desperately NEEDS to open source is Internet Explorer. IE generates negative revenue as well as negative publicity for Microsoft and apparently Microsoft lacks the motivation to spend resources on getting IE fixed adequately fast. If IE were released as open source under an acceptable license (i.e OSI approved), I have no doubts that IE would quickly develop into a secure and standards-compliant browser. Microsoft would benefit from this as would end users as would web designers. Everyone would win.

    Aside from releasing its own software as open source I think Microsoft should start distributing open source. There are lots of open source packages for Windows. Why doesn’t Microsoft ship a selection of software comparable to what you get with a Linux distro? They could do so at almost no additional cost.

    Windows should ship with standard Unix tools by default.

  154. James says:

    Josh, above you wrote: (quote) "I cringe when I see the news headlines like "<Random Microsoft Executive> Rails Against Open Source". (/quote)

    Start cringing again. πŸ™‚ This is why most people hesitate to trust MS. The article is on and the original article from the New York Times.

    "The New York Times’ John Markoff has the story that Microsoft has pulled out of a UN software standards body (United Nations Center for Trade Facilitation and Electronic Business, or U.N./Cefac) for "business reasons", after a dispute over "a set of thorny issues over control of intellectual property that is being contributed to the standards-setting effort":

    "Earlier this year, Microsoft’s participation had created controversy within the group, which is attempting to define standards for creating a new generation of Internet services to automate buying and selling through networks of computers."

    In an email to the group, Microsoft made clear that any prior contributions it has made are "not bound by the negotiations taking place over the control of intellectual property." The group wishes corporations who contribute technology to indemnify the United Nations against IP claims. In May, SAP also withdrew from the group.

    Oops….or maybe this: "Microsoft published today a new license and FAQ for Sender-ID anti-spam standard being developed by the IETF’s MARID WG (based on SPF). To use the license, a signed agreement with MSFT is required. Compatability with the Open Source Definition, the Free Software Definition, the Debian Free Software Guidelines, and the GPL/LGPL licenses is already in question."

    And of course you can’t have a post without a slashdot link. πŸ™‚

  155. Tommi says:

    I suggest Microsoft open sources their localization tools. LocStudio, Helium, you name it. They are all better than the competition’s and it would be so great if everybody could use them and not only Microsoft’s employees and localization vendors.

    Also the likelihood of bugs in these tools being fixed would most likely be higher than it is now. πŸ˜‰


  156. Jonathan Wilson says:

    Heres another cool idea.

    Support GCC on windows.

    Help out MingW to be better at windows.

  157. Jonathan Wilson says:

    and, in case it hasnt been said enough yet, Open Source Internet Explorer.

    Its probobly actually costing you money to maintain it (fix security holes etc). Several experts (including the US government CERT I believe) have said to stop using it.

    Release it under an OSI licence and I am sure there are a fair few people out there who are willing to make (and let you guys use/ship) genuine improvements to IE to make it a better browser. Better PNG support. Better W3C HTML standards complience. Better W3C CSS standards complience. Better security when it comes to ActiveX and VBScript. And so on.

  158. lilo says:

    Probably the simpler is to turn into open source support for MS hardware devices that MS is no longer producing.

    I think specifically about the wifi broadband routers and cards (MN-100/500/700, etc). MS has announced that is getting out the business of selling these devices, and is not upgrading the firmware for several of them.

    It would be great if these can be supported through an open source effort. This wouldn’t impact MS business <read not competing>, and in fact would improve the value of an MS product for customers <read increased trust in future MS products>.

  159. Tux ninja says:

    M$ is a nocive company and you should be ashamed of work for Bill Gate’s company.

    Long live to true free (as freedom, not like freeware) software and linux !

  160. Anonymous says:

    dragon bringers &raquo; Josh Ledgard for Microsoft CEO!

  161. James says:

    Why I don’t trust any of what is being done… Well how about this one.,775,781.WKU.&OS=PN/6,775,781&RS=PN/6,775,781

    This patent application patents the SU and Sudo commands Which for those who don’t know are commands that have been around since before M$ released thier first OS of any kind. In short. What is the missing link. Trust. I don’t really think M$ will ever have that. Not even from their partners (Oracle, IBM, Nvidia, Adobe etc.) past and present.

  162. Seems at least one <a href="">person</a&gt; at Microsoft would see them do a little more in the Open Source arena. On …

  163. Brian says:

    Not so long ago RMS wrote a piece about the Java trap. That is to say that even if a developer writes Java software and licenses it in a free software manner unless it can be used with free software Java VMs like gcj it does not help the community. It’s much the same with .NET, unless it works with Mono or DotGNU it isn’t that useful should the commercial system suddenly be yanked out from under you. And this can be extended to your example of a developer writing a plugin for Visual Studio.

  164. OFFICE says:

    OFFICE PLEASE!!!!!!!!!!!!

  165. NotNeeded says:

    If instead of utter stupidity and incompetency it can be proven that they are applying for the patent as part of a FUD campaign then they their managers and the CEO of the company should be imprisoned and the company fined 10% of its net worth and prevented from operating for 30 days. Punitive penalties such as this are the only way to stop companies like Microsoft, Monsanto, IBM, Disney and Roche from **stealing** on a regular basis.

    Tobacco company execs got punished for destroying lungs MS should be **punished** for stealing and attempting to PATENT a concept so general and self-evident that it is an affront to human decency.


    Sudo was first conceived and implemented by Bob Coggeshall and Cliff

    Spencer around 1980 at the Department of Computer Science at

    SUNY/Buffalo. It ran on a VAX-11/750 running 4.1BSD. An updated

    version, credited to Phil Betchel, Cliff Spencer, Gretchen Phillips,

    John LoVerso and Don Gworek, was posted to the net.sources newsgroup

    in December of 1985.

    In the Summer of 1986, Garth Snyder released and enhanced version

    of sudo. For the next 5 years, sudo was fed and watered by a handful

    of folks at CU-Boulder, including Bob Coggeshall, Bob Manchek, and

    Trent Hein.


  166. rk sys admin. says:

    Please Open Source Resource kits.

    Windows cant’ be professionally administered without resource kits utilities.

    Those should be opensourced.

    Resource kits could stay unsuported/separate download. But open source would allow them to improve, faster and in the direction that afects the people who use it most.

    After the resource kits tools, administrative tools, accessories.

    When was calc.exe last improved? How long did it take to fix that wrong calculation bug

    Right now it feels more like the tools provided with windows are unfinished. Have not been worn/shaped by extended use. A bit like an prefab campingcar and an old wooden ship.

  167. One thing to keep in mind is that open standards have to come before open source. You write open source code, in general, that is, to open standards.

    So, for example, if I write a piece of software that uses the new "caller ID" specification for authenticating mail transfer agents, I need to write it to an open standard.

    Note that Microsoft, after negotiating with various groups about how this standard should look, and seemingly taking the stance that MS would collaborate towards the production of an open standard, Microsoft has reneged.

    Their "caller ID" license is encumbered in unacceptable ways.

    It’s really important, if Microsoft wants to show itself truly committed to open source efforts, to become interested in open standards as well.

    The license, by the way, for "caller ID" is here:

    I don’t see how Microsoft can be seen as a legit advocate of open source unless we see a bit less of this sort of thing….

    Richard Goerwitz

    Carleton College

  168. Outlook PST User. says:

    After that administrative tools, accessories.

    Open sourcing old horrid MAPI code.

    Specifically PST client code:

    I really would like a outlook to read a readonly PST file to put on archived mail CD.

    That should not be difficult with source


    I am sure this would make a lot of people happy.

  169. Johan Moller says:


    At university, we had the choice between OpenGL and DirectX (among other choices). I chose OpenGL because it is portable hence more free. If i want to develop an application (for free or for profit) i write it with portability in mind because that leads to a more wide usage.

    After i got graduated i’d love to program games and although i’m not sure if that’ll be some open or closed source game it’ll be in OpenGL because of its portability. When MS would allow other platforms to implement a working DirectX API, i’d reconsider my point, but currently i don’t even have much choice except to go OpenGL. We’re currently working on a modeller as a proof-of-concept of some theory we have and so far it runs on Solaris, IRIX, Linux and FreeBSD. Nobody of our group has tried to port it over to Windows yet although it should be trivial. When we decided to develop a our program using DirectX API however it wouldn’t be portable to those other platforms hence 2 of our 4 developers (who don’t run Windows) couldn’t even test the software!

  170. Bill stole 8080 BASIC. He stole DR-DOS

    (and lost the Digital Research lawsuit to that

    effect – and Microsoft doesn’t lose lawsuites


    No attribution was made to Berkeley for the

    BSD stack NT uses.

    Microsoft paid an "undisclosed sum" (that

    is well known) to Digital after NT came out

    and the similarities to VMS were evident – no

    small coincidence since MS hired away Digital’s

    lead OS designer and had new OS within two years

    with the 3.11 GUI badly bolted on.

    Now Microsoft’s on a patent frenzy – most of

    them have obvious well known prior art – sudo

    for example.

    Every license Microsoft can manage has

    anti-compete clauses that prevent you from

    working on open source projects after touching

    Microsoft code.

    So, HOW STUPID do you think we are?

    Do you REALLY need anyone so mentally lacking

    as to cough up their IP and rights to develop


    Why don’t you go ask on the short bus

    if any of them can program?

    Bugger all…


  171. xml says:

    I think the "passion" for Microsoft

    died a few years ago.

  172. Roger says:

    well, might seem really cool.

    However, just wait until the MS legal/sales team (or attache) swarms down upon an open source project.

    There would seriously need to be a line here before any collaboration starts.

    Possibly, some serious protective measures.

    Since the ball is in Linux’s court, I would only accept a "GNU" license before working with them … or maybe some other really popular license. Working under a GNU license might provoke ms to work even harder on tearing apart the GNU License.

    …just my thoughts.

    btw, never close the doors on an offer. i’d give it a try, but don’t expect to gain anything in return — type attitude.

  173. I don;t think this went through so trying again.

    First a little about me:

    I worked for Microsoft from Aug 1999 until Sept 2003 first as a temp then as an FTE. I was in PSS, and participated quite heavily in discussions regarding how to compete with Linux. I made several major recommendations which have been acted on in this regard.

    I now run a consultancy which generally advocates open source software where appropriate in North Central Washington. I am not hostile towards Microsoft, but I tend to think that one gets a better deal with open soruce software in many environments. Indeed some markets simply cannot survive without it! My homepage is at

    You ask:

    What types of projects or specific projects should we look to open source in the future? And don’t just say "Everything". I’d like suggestions I feel I could actually help teams deliver on in the near future.

    My answer:

    Microsoft is in an interesting position here, and I am thinking about what Microsoft can practically open source which will have value for customers. Here are a few things which come to mind:

    1) MDAC, including the Jet database engine. In the end, this will likely result in faster development in these areas, and a larger number of supported database managers in this package. Of course, some components may not be able to be open sourced due to licensing issues, but open source what you can, then release your own package with the add-ons.

    2) The major POSIX subsystem components of SFU, the NFS server, client, etc. Encourage others to contribute AD schema enhancements for allowing UNIX systems to authenticate against Windows systems, etc.

    3) The various VS.Net command line tools. Perhapse even itself…. Though this may be wishful thinking….

    You asked:

    If you have participated in non-Microsoft sponsored shared/open source projects… what did you like or not like so much?

    I run two such projects. I have liked the level of customer interraction I get and the level of feedback I get regarding design and implimentation of the project.

    I also participate in various open source communities (not the projects themselves though) and like the quality and quantity of peer-to-peer support. Also I like the ability to write the developer and ask questions if I need it. You simply can’t get better support than that.

    You also asked:

    Would you have interest in working on these types of projects with Microsoft? If not, what could entice you? If so, what would be your motivation?

    I don’t know. I am not much of a C or C++ coder so I might not be of much help. However if the tools were good, I could at least use them and help provide feedback for the developers.

  174. Ian writes, "1) Separate Visual Studio from the languages. Make it work with GCC (via MinGW/Cygwin), including debugging."

    Again, I’d like to urge Microsoft to do this, but use the Interix framework, and open source as much of Interix as you can (I’ve already got an attaboy from a guy at Microsoft for suggesting this, so there *are* people in there listening) rather the Cygwin.

    Similarly, a bunch of people write things like "use a Linux kernel!" or "I’m tired of dual-booting". I quit dual-booting once I had Interix installed on my Windows-mostly box. Interix is pretty much a hosted UNIX port running directly on the NT kernel, bypassing Win32, and in some areas it gives you a more UNIXy system than OSX… for example, from Interix you get real case-sensitive file names under NTFS. Mac OS X won’t give you that under HFS+.

  175. From my reading, what Microsoft has patented is not SUDO, but SUDO-over-RPC. Now this might still be a problematical patent (it’s similar to what just about any database admin utility does), but it’s not what’s been presented on /.

    On the other hand, it’s kind of scary. I can’t help but expect it to be a fertile source of security holes if they ever implement anything using it.

  176. Dwayne L. says:

    Well, for starters, Microsoft needs to quit hindering technology development through the use of its patent portfolio.

    The Sender-ID standardization process comes to mind…

  177. thegrendel says:


    You do seem sincere about this personally.

    Unfortunately you’re working for the wrong outfit.

    When it’s a matter of money, *big* money,

    your employer will not bend in any meaningful way.

    In fact, MSFT has been funding proxies to attack

    Open Source. Six years ago, it was the Wang Labs

    lawsuit against Netscape/Mozilla. Now, it’s

    the SCO Group and the threat of patents.

    It all comes down to a matter of trust.

    Yes, *trust*, the sine qua non, of any meaningful

    relationship. Open Source people just don’t trust MSFT.

    And considering MSFT’s track record, why should we?

    For this "initiative" to go anywhere, MSFT has to make

    a meaningful good faith gesture. Previous comments

    have suggested some good ones, such as for example,

    releasing the specs to MSFT file formats. Or, how

    about renouncing the SCOX Unix "license"?

    Yes, Josh, I commend your efforts but I think you’re

    wasting your time. In fact, I don’t think you have much

    of a future at MSFT, considering what you’re advocating.

    It’s unfortunate, but hey, you’re young, and you’ll

    probably land on your feet after you’re fired.

    Best of luck.

  178. Zabil says:

    Although it seems like next to impossible, Microsoft should do something on the Mono project this way a wider base can be covered.

  179. Girlie Juice says:

    Hey Josh, when’s your last day?

  180. Daniel says:

    hey, what about memphis? (the interfaces to the upcomming universal back-end)

    i work in compilers and i’d like to see at least the memphis interface definitions… i see absolutely no problem with publishing the entire back-end source code… just think about it, how many people are that low-level… on the other hand, how many developers (MS developers would actually benefit from a more open memphis)???

    the msvc++ product managers seam to have a different oppinion, which is quite easy to understand, given their background… πŸ™‚

    isn’t just about time for a change???


    Daniel //

  181. Bill Gates says:

    You’re fired.

  182. McDice says:

    I commend your efforts as well; being slashdotted isn’t goign to help your cause. I remember the feeling of getting called down to the principal’s office and I think you’re in for something similar. I wish you luck, you seem like a good guy.

    Anyway, how about open sourcing the MS shell? It would be really nice to have a [bkctc]sh-like shell for use with Windows systems. You’ve got the GUI down for all those right mouse clickers but the CLI needs some serious work.


  183. AT says:

    Tony Hoyle:

    I disagree with you.

    DDK must be hidden from public. This is an example of something that must not be given to public.

    If somebody can not afford to pay a few bucks for DDK – this mean that this person doing some unpaid or hobbist job.

    Costs of studying how to write correct kernel code is much higher that $25,000 and take longer that 2-days training.

    As well costs of any flaw in your kernel driver is extremely high.

    This is not user-space there your flaw affect only your process and your data. Any bug in kernel can result in BSOD or data corruption for totaly independ processes.

    I would Microsoft keep DDK closed from public.

    But AFAIK, almost complete Windows source licensed to selected partners. I know several persons who had *legal* access to Windows NT/2000 sources as part of thier job.

    Something that must be provided to public – is more information about user-mode interfaces, formats and protocols. I’m willing MSFT compily with DoJ settlement fully. No needs to open-source anything. I’m simply willing quality of MSDN documentation increased! This is there community can assist Microsoft.

    Community need to keep both Microsoft and IBM worlds. Otherwise this will be monopoly for one of thouse big companies.

  184. Mark Janveaux says:

    This can be a win/win situation for both Microsoft and the open source community. Cost of entry is always going to cause open source developers to USE and DEVELOP free and open software and tools instead of to application suites like microsoft office, and visual studio. Microsoft may be able to gain the communities support however by accepting source code contributions from the open source community and in turn funding and sponsoring, a project of the open source community’s choice, perhaps by popular vote or the like. Microsoft would benefit by extending functionality and be a staunch supporter of open source. The open source community would benefit by having more choice and a better relationship with an industry giant.

  185. Anon says:

    Two suggestions:

    – Support NHibernate

    – Once the Microsoft Business Framework has been released, give the source to developers so they can suggest and contribute changes.

  186. Jonathan Wilson says:

    Also, something else I would like to see is a version of vcbuild.exe that is compatible with the Visual C++ Compiler Toolkit 2003

  187. Well, if MS needs a tool for software structural dependencies analyses (I know there is no such plan for VS2005), I would be glad to cooperate with the basis of my tool NDepend (which is for now, involved mainly with code metrics):

    By the way, IBM has releases the tool SA4J (Structural Analysis for Java)

    Authors (Alex Iskold and Daniel Kogan) were previously developping and selling an equivalent product called Small Worlds.

  188. I posted a blog article on this subject about a month ago when I guess this subject was just beginning to start. You can read it here as I do not want to write it all over again on this blog.

    Here it is:

    I list the products that I would love to see open sourced and the reasons behind them. Some fo the reasons are simply so that you guys can concentrate more on creating software and less on fighting inane lawsuits. Just my opinion of course.

  189. Steven Hatch says:

    Personally, I’d like to see InfoPath as an OSS project or at least open the file format and allow the client to be freely downloaded or packaged with Windows like IE is today. (e.g. HTML is the open file format for IE and the client is a free download.)

  190. David Kastrup says:

    The main mindshare problem with Microsoft is lack of standardization, a lack of information, and a lack of interoperation. I think that the most important thing probably would be the Windows API code under an LGPL-compatible licence. There are layers between the Windows API and the kernel proper that make up a lot of the idiosyncrasies of Windows. Making those available for free would make it possible to improve layers like Wine to a degree where they can be used to successfully run most Windows applications natively.

    This would serve to establish the Windows API and Windows applications on Free Operating systems, at the cost of reducing the market for preloaded consumer Windows. It would also help to make free software run better under Windows: offerings like SFU are still largely met with distrust.

    Certainly not a run of the mill kind of decision to be thinking about.

  191. M. Dionne says:

    Some of the web-service related utilities. For example, xsd.exe, wsdl.exe (& wsewsdl2.exe) and WebServiceStudio. This would allow developers to modify them to meet their specific needs and would also allow the tools to become more robust.

  192. says:

    Josh Ledgard Program Manager working with the Visual Studio – Community Team at MSFT has a great post regarding the broader collaboration between Microsoft and the vast open source community (via /.). "It should be easy for teams here at…

  193. Jonathan Wilson says:

    in light of what is said here

    How about Opening the Microsoft ACPI code

  194. Julien says:

    There are lots of mentions of opening the file formats in the previous comments, and I second these.

    I’d like to add the Ink binary format on the Tablet PC. I think it would help the Tablet PC market and allow more cool apps to be developped.

    Keep the reco algos closed, since I would think that’s were most of the IP is… File formats are not the core of intellectual property and they should not be means of protecting a business!

  195. Raja Iskandar Shah says:

    I second on the proposal for opening the file formats. is already on the way for putting their file formats as open standards. MS Office itself can be closed with widgets / tools / wizards etc – but user files should be transparent / portable.

    I have 1 client, whose Excel file was corrupted. Excel refused to open it. OOo managed to read it in text form so that we could still rebuild a new file. Would have been better if the file format was on open standards, so that the affected lines can be patched to get the whole file back.

    Thanks for taking note.

  196. I proposal for opening the file formats, Doc (word), xls (excel), …

  197. Tuxiradical says:

    This is my list.

    1) File formats

    2) File system NTFS.

    3) VS.NET 2005 Express πŸ˜‰

  198. Brian H says:

    I’d like more of MS‘s internal or nearly abandonware tools to be open-sourced. For instance, there is a tool called CDIMAGE that leaked out of Microsoft a while ago. It was an internal-use tool for composing ISO images for burning on CDs. It has many useful features that I haven’t seen elsewhere, but I can’t see it succeeding commercially, so why not open-source it?

    There must be many tools like that in Microsoft, install tools like WiX, build tools, development tools. Distributing them as open-source would generate a lot of good will.

  199. Chris Badal says:

    I would like to see the cmd program or another shell program (and several command line programs) get open sourced and included into windows.

    I would really like it if the open source community could improve upon the ‘findstr’ program to ‘smartly’ search through different MS-format files (.doc, .rtf, .ppt ect…).

    I would also like to see a new windows shell for windows 2000 & XP (perhaps a shell who’s native syntax is perl or bash-like, with command line history and tab-completion).

  200. Digging .NET says:

    Microsoft and open source

  201. Imagine a blog entry where I discuss Open Source at Microsoft via posts on Josh Ledgard’s blog.

  202. job search says:

    Very cool,

    thanks for taking the time to make this.

  203. It started with the thinkweek paper, then Dare and Adam dissected it, and Mini encouraged us all to post…

  204. It started with the thinkweek paper, then Dare and Adam dissected it, and Mini encouraged us all to post…

  205. yaen says:

    hello and have 365 happy days this year.

    could be cool to open source of dirextx the one thing that shows that microsoft seems to want to keep away from open source.

    OpenGL is a technology for all gamers. Could it be the same for directx ????

Skip to main content