Josh Ledgard On MS's Future Open Source Efforts
prostoalex writes "Josh Ledgard from Microsoft, the developer responsible for open-sourcing WiX and WTL, is looking for opinions on what Microsoft should do next in regards to the open source movement that he himself established within the company. "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?", asks Josh." Update: 08/24 19:04 GMT by T : As Ledgard writes on his site, "I am NOT the person responsible for the WIX/WTL projects. I cite 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." Sorry for the misattribution!
Open source MS Office. :)
Were there any past ones?
It is your personal duty to fight for what is right on a daily basis. Ignoring injustice is identical to approving
I remember editing the source for Gorilla.bas
Women. Lots of women. Covered in baby oil, writhing around me as I did the work for Microsoft.
Open Source IE. That's what they should do.
He keeps saying that he wants the users to give him feedback on what MS needs to improve and if people would be willing to contribute to the programming, but no where does the software get mentioned as becoming free, or even discounted, but "improved, repackaged, and resold." This seems more like customer service than "open sourcing."
~*~ ~*~ ~*~
yes, girls read /. too...
If he wants free-as-in-speech contributions, he should dole out some free-as-in-beer. Everyone knows that beer looseneth the tongue.
Sheesh, evil *and* a jerk. -- Jade
If not, what could entice you? If so, what would be your motivation?
Eh, a small slice of the profits they make from selling the fruits of my labour would be nice.
Open up the file formats for Word documents so that other programs (e.g. Open Office) can correctly decode the formatting.
Microsoft has overstayed its welcome. Their past litany of cut-throat misadventures has piss-tainted this sand-box far too many times.
The only thing that would entice me to contribute to their efforts to get even more richer, and even more powerful, is if they were broken up into smaller companies, their mass wealth redistributed, and Windows gets open sourced.
Honestly, not a flame. I've been completely Microsoft-free for 5 years now, I intend to keep it that way
; -- the corruption of government starts with its secrets. a truly free people keep no secrets. --
Basically there are only three points
- To push competitors out of the field by offering their products for free. This is a more agressive version of what MS did with Netscape. SAP and IBM are using this to attack Oracle and MS.
- To establish own standards and push competing approaches out of the way. Stuff like TCP/IP and XML come into mind...
- To grab control of a competitor's standard base by offering free tools for a modified version.
That's the main point of the Eclipse project targeted at SUN.
So, OSS can strenghten/enlarge your own market share greatly but I don't see people making money by OSS directly.No, RMS getting donated money to get a shower doesn't count.
1) Microsoft quit funding "independent" bogus TCO research to discredit OS operating systems. Oh yeah, and call off SCO.
2) Microsoft quit attempting to make all of their file formats dependent upon the OS/software that they write. The data is MINE, and I should be able to use other software to read the data. Commit to open file formats and I'd look a lot more favorably on MS.
3) Microsoft quit using draconian EULAs that make me fear that any contribution I made to a MS effort would be locked away for good once MS got a hold of it.
4) Money. Truckloads of it.
Well, maybe not so much 4, but the first 3 would be a good start.
My problem is that I've got such a bad image of Microsoft after working with their stuff for the past 12 years or so that at the end of the day I'd rather contribute effort to a "real" open source effort than anything funded by Microsoft. I just don't trust them to "do the right thing" with anything that came out of an OSS initiative.
They could stop being evil for a start. Those sessions in the boardroom that end with Bill Gates going "Bwahahahah" really have to stop.
I don't see any point in opensourcing any //Pingo
Microsoft software except for Windows Media Player series 9 with codecs, perhaps also
Windows Media Encoder could be of some interest.
--- Linux or FreeBSD, it's like blondes or brunettes. I like both. ---
What I think is distuurbing that they want to askt this question. Just start the project and see who is interested. If it is interesting, people will jump aboard. If not, people will not.
It almost looks as if they know that the OSS comunity will spit them out and then the can play the underdog.
If people are interested, they can first play the nice guy who allowed the OSS comunity what they wanted and then let it blow up to proove that OSS does not work.
This is a win-win situation for them. So my question to them is, if you think that Open Source is so good, when can we help you with other parts that ARE interesting (and who need to be open by European court desision anyway). If you truly believe the project is interesting, it will create followers. If not, it will die a silent dead, as many projects that were started.
Don't fight for your country, if your country does not fight for you.
I remember fixing bugs in QBasic Nibbles. There were two notable ones, as I recall: First, if you hit Pause, and your target number was located in the same part of the screen where the Pause box showed up, it wasn't redrawn and basically turned invisible. Second was a UI tweak/bug: they turned off Number Lock, but not until all the screens asking you for... numbers. =b
The World Wide Web is dying. Soon, we shall have only the Internet.
but I'd rather see them pay more attention to open standards, and "opening" their file formats/protocols.
This is what I seem to be reading:
"Wouldn't it be great if you all improved Visual Studio or whatever for us free of charge between releases and then wouldn't it be cool if we kept your improvements and then sell them in our next version of Visual Studio."
I'm not sure that is a standard definition of Open Source Development.
What would be good would be to see the GPL used to cover the 'open sourcing'. The article clearly envisages developments that are not protected against becoming non-free (is that the same thing as enslaved?)
The browser. We like standards compliant browsers. Switch to or adopt Mozilla technology. This is an anathema of Microsoft's strategy of usurption, but if you want to extend the olive branch, it's got to be attached to something we care about.
Seeing as Microsoft essentially stops developing the browser after it's done with it anyway, it might as well take advantage of the free maintenance costs, continual renewal and compliance adherence inherent to projects like Mozilla/Firefox. Instead of a whole team of Internet Explorer programmers, sponsor some open source programmers, as it feels fit.
Also, incidentally and less idealistically, by involving itself in something like the development of Mozilla, Microsoft could garner some support for proprietary technologies, that would otherwise fall upon deaf ears. Control comes with money. If Microsoft is on the outside, they have no control. The ideals of Mozilla/Firefox right now are precisely aligned against Microsoft's dominance; to curb or curtail that alignment requires involvement.
No, really. I don't think that MS needs to release Office under gpl or anything silly like that. If they really wanted to show that they have changed, they should embrace open standards. Free for any to read, understand and implement. They should make sure that these standards were royalty free, that they could be used equally by any and all developers. They should refrain from later extending these standards with closed code. In short - if they cared they would stop being assholes and fight fair.
Not that I expect it to happen... but it is a nice thought.
Someone needs to
1) sit him down
2) quietly cup their mouth as they bend down to whisper something in his ear
3) then scream at the top of their lungs...
"WE DON'T LIKE, WE NEVER LIKED YOU, AND WE NEVER WILL!!!"
If Microsoft started open source projects, with "real" open source licenses I would be glad to work on them under two conditions. First, the project has to interest me. That's rather obvious that since open source work is volunteer that nobody is going to work on something that doesn't interest them. The second thing is it has to be software I can use. Since I don't run windows there are probably going to be very few MS OSS projects I would work on.
What MS SHOULD do is appeal to all the Windows developers out there. Yes, there are people out there who live in Visual Studio and love windows. They should get these people to fix all the bugs in windows and IE and such. There are people out there, willing and able to do work which the internal MS developers have failed to do multiple times over. Give someone else a try.
The GeekNights podcast is going strong. Listen!
What I would like to work on is fixing some of the 'standards' Microsoft proclaims to abide. It would allow other products to interoperate with MS software and allow fair competition. But hey, somehow I think that MS won't feel happy for these contributions.
This is a replacement signature.
For so many years, Microsoft has brought useless fileformats to complete with those that already exist. Stop trying to innovate and start supporting the open standards. Did we really need BMP? How come PNG is so lamely supported? How about pushing Ogg Vorbis/Theora with your media player?
Feel ready to own one or many Tux Stickers?
software, personally. However, I am incensed when MS takes open software and "extends" it with hidden code to make it unusable. Remember Kerberos?
Contribute what you wish to contribute, but better yet: open your file formats or allow open formats to interoperate with your preferred file formats.
For me that would more than suffice. Note, however, I am not holding my breath in expectation.
Though I would pay attention if they open sourced
What they should try doing is participating with the community rather than trying to harvest/divide it. Ship perl, python, apache... Work with some of these open source projects. Show this isnt headed the direction of mosaic, embraced and extinguished mit licensed works.
Show this isnt just some game. Otherwise, have fun.
MSFT's culture is bankrupt. They have little to bring to the table. Show they are changing their culture, come out and play.
Opensource the API, then you'lll suddenly have a lot more coders working on your system. The way I see it, Microsoft doesn't need to cpmete for customer base any more.
They need to compete for coder base, as we're approaching a time when the system will be sold not on its own merits but on those of the applications it runs. This is already the case in enterprise computing and can only grow.
I have been a user for about 10 years. This ends Feb 2014. The site's been ruined. I'm off. Dice, FU
I think that MS is missing one crucial market that they could be poised to overtake. The Open Source OS market. Think about it, if MS put out a version of Linux that was easily integrated into Windows networks, offered better security, and was less expensive than Windows, they could control the Linux market AND the Windows market. I'm not a huge fan of MS or anything but I think they're truly missing out on a monopolistic opportunity here. Isn't that what they're famous for anyway? As for what would entice me to work with MS? I would like to see an 8 year old kid punch Bill Gates in the balls. That would be worth a small labor contribution to MS. Definitely. -B
60 percent of the time, my comments are right everytime.
As the recent article from ecommercetimes.com mentioned on Slashdot states, Microsoft makes the majority of it's profits by selling Windows and MS Office. Even though it would slightly knock their O/S sales, I think it would be a worthwhile venture for Microsoft to contribute to WINE so that Linux users could run MS products under Linux. It would be a big boost to the WINE project and Microsoft would get product sales in return.
Because it is the one area where MS completely and utterly destroys Linux and the one are where Linux really needs to grow up.
Course, it won't happen, ever.
http://slashdot.org/~GuyFawkes/journal
So far MS released source for two bits of technology that is absolutely useless to Linux. How about something useful for a change: doc file format. That would be very useful -- it would allow Open Office to be 100% compatible with MS Office. And you don't even have to release any source, just the specs.
Of course this will never happen because the whole purpose of this "open source" work is so that Microsoft can say "look, I'm supporting these hippies", when in fact what they released has no effect on Microsoft business or Open Source movement.
___
If you think big enough, you'll never have to do it.
Simple really.
"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."
Sounds a little like the process with Eclipse doesn't it? The difference of course is that with eclipse the core is open source (well everything except java but apparently it's possible to run eclipse with gcj). Why would an active community contribute work to a project which is at its root closed source? I still don't think they get it.
They do. You can license them. Trouble is, once you have, you're bound by quite a number of restrictions One of the POI developers (Jakarta Word/Excel project) recently had to stop, as he'd changed employers to someone who'd licensed the specs: leaving email What would be nice is getting those docs without all the heavy licensing
This post will enter the public domain 70 years after my death, unless Disney buys another extension.
sign all current and future patents to the EFF.
But if this guy is serious and he really does mean it and he really does have any say in the company I got 2 simple opensource projects for him. Samba and OpenOffice. If he wants to prove MS can play nice after all get him to work on these 2 projects and make sure they are compatible whenever MS decides to "rework" their code and "accidently" break compatibilty.
When the next windows version does not break samba, when Microsoft Office opens OpenOffice files and vice versa without problem THEN I will be willing to believe MS can be just another IT company and not the IT company from hell.
At the moment it is like a rapist asking what will help to get him accepted back into society. STOP RAPING!
MMO Quests are like orgasms:
You may solo them, I prefer them in a group.
One of the major potential benefits of contributing to open-source projects is that, when searching for a future programming job, one can point to one's open-source contributions and say "Here's some of my code, and people are using it." This works especially if one has contributed to a project with prestige - something that a Microsoft-sanctioned project would certainly have in the closed-source corporate world.
However, it can be difficult to pick out the code that one has contributed from a large project and say, "yeah, download this tgz and look at kluge.cpp lines 377-421, that's my code!" So I would propose, as a carrot to your future open-source contributors, that you design a system that keeps a database of who contributed code, how old it is, and maybe some other statistics about it. You could post a summary page for each contributor with browseable links to the code and statistics.
-Ansel.
G=C800:5
I think this fully vindicates RMS's objections to Open software. It can easily be subverted in the manner that MS are doing: they come up with something entirely self-serving and closed and still call it Open Source.
In contrast they couldn't call it Free Software and get away with this crap because Free Software disdanes the pragmatic crap associated with Open Software (eg Linus' famous "Bitkeeper" defence.
And as an aside to the many posters that have made this mistake. Open Software does not equal software that runs on Linux!
Bad analogies are like waxing a monkey with a rainbow.
My belief is that this will never happen, because even deep in the bowels of Microsoft they have no complete documentation of the file format. This is the only explanation I have for the lack of compatibility between different platforms, or even different versions, of Word.
I've been a Microsoft avoider (if not basher) for 20 years. But, I think this is a tremendous opportunity for all of us. The only thing I would want to see is a quid pro quo relationship. If Microsoft wants to "bury the hatchet" I'd think a great place for them to start is to open their formats. Once that were accomplished open source developers would naturally support development projects that would benefit both sides. This could be very exciting for us all. (But I am not holding my breath)
When a property developer makes a house, they will often sell the house and the land, but keep ownership of a small strip of land between the house and the street which they license to you.
If you want further access (e.g. for a garage, a second garden path etc.) then they'll happily sell it to you for a huge amount.
Those are called 'ransom strips'. They hold you to ransom for access to your own property by controlling a small strip of land around it.
Microsoft is just open sourcing stuff it has surrounded by ransom strips. The GPL would protect against these tricks, but Microsoft don't use the GPL.
So it's not a real open source effort, its just MS playing its little word, license and patent games.
The problem is, you can't do it. It goes against everything you stand for. You don't get it, you never will. There are no angles to be had, no strategies to follow. Regardless of how well-intentioned this guy at MS may be, he is not the faceless company that has implemented horrendous business practices over the last 20 years. Microsoft, you aren't part of this community, don't pretend like you are. We are a cancer, remember? Piss off.
My beliefs do not require that you agree with them.
As I'm sure many of you noticed, Microsoft has been making some 'Open Source' pushes as of late. They started by creating the CPL, getting it certified, and have now been hiring prominent open source developers to work on CPL.
For those of you not in the know, the key distinction between CPL and the GPL, is that I can incorporate a CPL'ed project into my code, whole, without contributing back, as long as I don't modify the CPL'ed code. If I do, I have to publish modifications to the CPL code in the same way I would for the GPL.
I'm of the opinion that the CPL has two serious flaws:
First, the transparency. How often have we all seen companies violating the GPL? I can assure you, it's a whole lot more frequent than even we hear about. I've known many Windows developers, who had no clue about, or respect for, the GPL, and would download bits of code from anywhere to incorporate if it made their lives easier. (Often because they didn't understand the task at hand, and they just wanted to get it to work.) It's not normally a matter of policy, but I've definitely seen it knowingly overlooked at companies I've worked for previously.
Right now, if we find a company using GPL'ed source, we have a smoking gun we can use to ensure license compliance. When someone incorporates CPL code, there's no way to prove that they modified it themselves, and so CPL compliance is based entirely on the goodwill of corporations, and we've seen how generous that goodwill is...
Second, there's the free rides. The CPL is designed so that companies can take advantage of the work of open source developers without having to compensate them in any way. With proprietary code, developers receive fiduciary compensation, and, traditionally, with Open Source, the developers receive the source for their project, and any derivative works.
With the CPL, companies get a free ride, which in the end screws the developers out of any benefit of their hard work.
Now, the reason why I bring this all up is that, as mentioned above, Microsoft has been hiring prominent open source developers, having them release their source under the CPL. It is my belief that Microsoft wishes undermine the Open Source movement. They hope to get the CPL to be popular, so that they can freely incorporate works developed by others without having to contribute back. They've hired 'evangelists' to show the benefits of CPL, without showing the downsides. (Because, of course, Microsoft is currently releasing software, and they want us to believe that's not going to change.)
So, in conclusion, Microsoft, what I'd like to see is Microsoft projects released under the GPL as well, so that we can see a benefit to the Open Source movement, not just to you.
There are a couple of items that would make me want to use open source Microsoft code - and perhaps even target their platform as a primary with Linux / Solaris secondary.
.net - Languages want to be sheparded, but based on community standards and open. What that means is that any vendor can publish a compiler / runtime according to a published spec, and they won't be sued by the sheparding company if they truely conform to the spec. Heck, I don't even mind paying some bucks for the spec certification (ala Java). There's still plenty of money to be made on advanced IDEs, tools, support, training, etc. The language itself is not a profit center.
:-)
These would be:
Avalon - Honestly, I want an open slick UI to program with. Flash and Shockwave do some pretty slick things in an efficient manner (compared to other mechanisms), and I'd truely like to have an open codebase to do the same things on every platform - in any language I happen to be using. I've seen the transition effects it can handle, and it's pretty decent. Let others help update it, and it will shine far faster, and with less bugs, than you doing it yourself.
These next 2 aren't open source, but just open documentation items.
Document formats - All document formats should be immediately opened so that anyone can read / update them. I know this is one of your bread and butter pieces, but face it, either do that, or Open Office is going to cut your office revenue in half.
Protocols - Open up them all so that true interoperability can exist between Windows / Linux / Unix. Show the strengths of your platform, but atleast allow efficient communication with others.
Doing these four things would go a long way to reducing the "evilness" persona that surrounds Microsoft. Honestly, their UI engineers do a fantastic job of pushing the envelope - even if they get their ideas from sundry locations occassionally.
...responsible for open-sourcing WiX and WTL
Correct me if I am wrong but since the WTL is written primarily in C++ templates then Microsoft had no choice in making in open or closed source. WTL is a collection of header files. You can't make a binary library with that alone.
Um... visual studio actually has a project type of "Visual Studio Add-in". MS exposes a large amount of the functionality in this project type, and allows you to build tightly integrated plug-ins that modify and extend behavior.
All of your nicer 3rd party tools integrate right into VS. Microsoft has been known to purchase these components for the purpose of releasing them with visual studio. I don't remember for sure, but I think they're doing something with nUnit in visual studio team system.
Either way, point is that visual studio is quite open. You just don't get the source.
Hahaha, I guess you've never read the DOC specs. I read a very old version of them that was distributed/leaked one time on MSDN many years ago - you can get it from the WvWare homepage.
Basically the Word specifications are nearly incomprehensible to human beings, let alone the code. Given that the specs actually partly consist of copy/pasted code I think even if Word were open sourced we'd only be a bit further in having OpenOffice and the like able to read them.
The Word developers use structures with members names like fcPlcffldHdrTxbx. It's hungarian taken to the logical extreme. Here's a line from one of the struct definitions:
FTC rgftcStandardChpStsh[3]; // ftc used by StandardChpStsh for this document
Helpful, isn't it? I'm convinced the Word team are actually robots from the 23rd century, no people could have produced this.
Mind that the specs appear to be internal documentation yet are still incomplete!
Basically it would not surprise me if the internals of Word are like the internals of Windows: the people who truly understood them left or retired years ago leaving a mess of interlocking systems and hacks that nobody can fully comprehend.
First thing you have to remember is that this IS Microsoft. They are NOT going to be giving away their cash cows, so completely forget IE, Office, and Windows. It ISN'T going to happen. Knowing the crowd here, there will be a lot of noise, and very little signal! Now that said there are a couple areas that they could:
.Net development and it is good. Having a tool like that under linux to develop against IIS servers... that would be nice.
:)
Development tools:
If you've ever done work in the Microsoft environment, you'll know that the tools are decent. For those about to flame me, don't bother, you haven't really USED the tools. I use Visual Studio for
SQL Server Tools:
Having a true collection of tools such as the client, and enterprise manager, and Query Analyzer would be a nice thing. Again, this may be a pipe dream as it means they have to play nice with linux users, but it could help connect all those PHP sites to SQL Server!
Outlook/Exchange Protocols: Wow.. this would be the cat's meow... being able to create a client that would connect up to the exchange server. Forget Linux.. I would love to have this under Windows!
Messenger:
Create an native API available to everyone for the basic services. I'm in the telephony world and would love to be able to create a client that is compatible with MSN and then connect to my servers for phone calls!
Windows CE/Pocket PC 2003:
You can forget about the windows pirates here! You buy a pocketpc, you get the OS.. that's the way it goes. So, open up the source, let the masters of kernel tinkering in the world play a bit! This could open the way to many devices guys!
Since all of Microsoft's profit comes from licensing closed source software, I guarantee they will be EXTREMELY careful of who works on open source software within the company. If one of their developers contributes to a GPL'd project and then gets moved to a closed source internal project they need to be absolutely certain he doesn't "contaminate" the closed project with any open code. They also need to watch that no one working on a closed project looks over at the open code for ideas. If GPL code gets discovered within any of their closed software, that software can no longer remain closed until the "offending" code is removed. So if Microsoft actually does play seriously with open source, they will be extremely careful of licensing (hence the CPL and not GPL) and code cross-contamination. While they may still end up with some open source software their development won't be very flexible or too open.
Developers: We can use your help.
Stop selecting what you're going to open the source on based on what has the least market impact. Stop opening source under licenses that noone would accept. Stop using open source as an advertising gimick rather than development and community way of life. Open source welcomes alternative competing projects while MS does everything in its power to prevent them. You can't just open the source for 'goofy rarely used tool' and expect developers to turn their cheek.
I applaud Josh and what he's trying to do but he's fighting MS's entire business model and as soon their jaunts into open source no longer look profitable, you can bet they'll drop the initiatives like a bad habit.
LilMikey.com... I'll stop doing it when you sto
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'd 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.
This is not going to happen. Linus himself already told innumerous times that he thinks this would make unnecessarily hard to change the kernel APIs, and that, notwithstanding the point "2", below, he is not interested in binary compatibility for kernel-space things between versions of the kernel. This is right, and if you did not get it yet, I'll explain it to you: it leads to Big Bad Difficult Bugs, trying to get kernel modules to work in various kernel versions. Many things evolve from one version of the kernel to the next, many assumptions change.
2. and the 'grey' area of binary modules sorted out as well. I dont think it will happen.
This one has already happened, (*) but many people still want to pretend it didn't. Some binary modules are derived works of the kernel, and such, to be distributed at all, they must be distributed under the GPL. Some binary modules are not derived work of the kernel, and as such, they can be distributed under any license that the author seems fit. What determines if a work (in the case, a binary module) is a derived work of another (the kernel) is copyright law.
In the USofA and in Brasil, the copyright law states that a derived work is the result of some non-automated transformation of the original work. USofAn case law established the method of "abstraction, filtration, and comparison" [AFC] to determine derivation of works.
There is a myth, spread by the last paragraph of the "postamble" of the GPL, "How to Apply These Terms to Your New Programs": I will repeat here the position I have after carefully studying the GPL, copyright law, and case law: the GPL regulates the licensing to derived works of the GPL'd work, but it cannot regulate the licensing of encompassing "anthology" works. Linking does not make a work derived on other work: to see if some work is a derived work, apply the [AFC] method. Some (not all) linking, non-derived, non-GPL'd, works can be even distributed along with a GPL'd work, because they would be covered by the "mere aggregation" clause in the 3rd paragraph of section 2 of the GPL.
And one more funny stuff: the section 6 of the GPL states: This basically means that you can't even clarify the license further than copyright law would restrict the rights of the recipient of your work (**), without rendering it undistributable by others (and even by yourself, if your work is derived from another GPL'd work).
But, OTOH, IANAL and TINLA. But I am a paralegal. IMMV and the others TFFLAs
(*) Google for: "linus torvalds" abstraction filtration comparison binary
(**) Google: "hans reiser" derivative plagiarism
It's better to be the foot on the boot than the face on the pavement. ~~ tkx Kadin2048
I still feel the empirical evidence is the strongest: The lack of compatibility between different platforms and different versions of Word is the proof that there is no usable documentation.
I'll tell you what you should open source, and why it will benefit MS in the long run.
1) Internet Explorer
IE is free anyway, so there's no money to be lost. But what you are losing is marketshare to Mozilla and Opera-based browsers. This is due mainly to the security problems in IE. You could save developer resources AND marketshare by just releasing the source of IE so that it can be fixed/expanded more easily and quickly.
2) Visual Studio
There's nothing that will get developers rallying around your product like allowing them to customize the development tools they have to use every day. In addition, more people could/would write apps for Windows if they didn't have to spend a bunch of money purchasing compilers that they can get for free on Mac/Linux/Unix. You're already dominating on user-level market share. Having free development tools will undoubtedly convert developers, and the universities that are teaching those developers.
3) MSN Messenger
Instant messaging is a hot topic everywhere. AIM obviously dominates the market now, and open source systems like Jabber are starting to take a small foothold in businesses. A quick way for you to crush all of that is to open source your IM client and it's protocols. It's already in use by a lot of people, but it could be in use by a lot more. In addition, you'll likely get a lot of free ports to Mac/Linux/Unix and draw customer-base from there as well. This will give you more ad revenue, and may also lead to people getting MSN internet, hotmail, as well as purchasing your server products.
4) Virtual PC
I know you guys just paid a lot of money for buying it, but the whole purpose of buying it was to get Mac and Linux geeks to start using and relying on Windows apps, wasn't it? By providing it as open source you'll get faster adoption than ever before, which will only increase the number of Windows apps in use by these non-Windows markets.
5) Direct X
This is likely to be the most controversial one internal to MSFT. I know that a lot of people in MSFT believe that the gamer market is the second biggest reason people are holding on to Windows (2nd to MS Office). You're losing that war though. More and more games are being developed to Open GL and other open standards to make them more portable. Giant games like Unreal Tournament, Savage, and America's Army ship with Linux versions these days. And others like Doom 3 and Neverwinter Nights put out Linux versions shortly after their release. In addition, MSFT has become a huge publisher in the gaming market. Releasing Direct X as open source would allow more of your games to be played on more systems, which will increase the profits of that division. In addition, it may help you to hold on to your lead role in the game technology world, instead of losing it to other open standards.
A lot of people fault you for developing your own standards. If you take some of these technologies, and open source them, you can permanently make them become the standard.
The CPL was not created by Microsoft - as mentioned here, it was created by IBM, and is essentially an updated and generalized version of IBM's original Open Source license, the IBM Public License.
Irrelevant - there's no way to prove that someone has incorporated GPL code into a closed source product, short of obvious indicators like embedded strings, etc. GPL compliance is also "based entirely on the goodwill of corporations". The long and the short of the matter is that a company that's willing to knowingly violate the CPL will probably also be willing to knowingly violate the GPL.
As is the GPL. Neither the CPL nor the GPL are concerned with the origin of software, they're concerned with the distribution of software. They're both designed to ensure that the recipient of a piece of software has access to the source code. That's it. Nothing in either license about compensating the original developers, or having to give back source code to the original developers. Even you recognize this - while it's "traditional" to contribute back changes to an GPL'd project, it's not required. In fact, the FSF considers this kind of requirement onerous enough that they explicitly classify licenses that have this requirement (for example, the Open Public License) as non-free.
...which is bad, why? We're talking about Microsoft's own code, here - it's their choice as to what license they want to release their code under. The CPL is recognized by the OSI. It's acknowledged as a free software license by the FSF, albeit one incompatible with the current GPL because it addresses patent issues that the GPL does not.
In fact, at this point, if there's anyone that's getting a "free ride" off of Microsoft's actions, it's everyone except Microsoft, who now has access to - and can use - Microsoft's CPL software, as is, without any obligation.
Overall, I think this is a positive event. It appears there are OSS advocates (not juse Josh!) within Microsoft who seem to be trying to convince the corporate culture there that OSS is not neccesarily a threat to Microsoft, and they're going about it in a very reasonable way. They selected an existing OSS license instead of coming up with Yet Another License. They released code for a couple of trial projects under this license, and have been following the OSS philosophy of "release early, release often". They've apparently met with enough success with these projects that they feel they have a good reason to actively encourage the release other projects under OSS licenses, and they're asking the community for input on what else to consider releasing
"Great men are not always wise: neither do the aged understand judgement." Job 32:9
I know that very few people have heard of this, 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 just sad that one of Microsoft's best programs is almost completely unknown, and the hundreds of great movies made with it suffer for it.
I respond to your sigs
Trust. That's what Open Source software sells to me. I can not trust Microsoft. If they could find a way to sell genuine, believable trust, then I wouldn't care if their software remained closed source.
When I buy cars, houses, groceries, electricity and other services, I am not faced with the kind of EULA that Microsoft would shove in my face. Microsoft sells from the point of mistrust and I have to buy from them from that standpoint. It's really creepy. It's like buying telephone service and having to sign a paper where I agree I won't make crank calls or stalk people or commit fraud using their services. I'm guilty before I can prove I'm innocent.
It bothers me less and less how much "ease of use" I may be giving up by buying open source. What I gain is an incredible relationship, built on freedom, openness and trust -- with a whole community behind it. You can't buy any of that from One Microsoft Way. The members I've met in their "community" are wallet watchers, not trust builders (i.e. most of them seem to defend Microsoft because it affects their income).
Here's what I want: I want to be able to buy a word processor from my favorite word processor vendor that will interoperate with a spreadsheet from my favorite spreadsheet vendor. This is, more and more, what it's been like to "buy" from open source. I can trust that the KDE camp won't work against, but with the OpenOffice.org camp. It would seem they even have my best interest at heart! Go figure. It's a lot like buying from IBM PC compatible vendors. Everything is compatible!
That's how far Microsoft has to go in opening up. In the end, I don't think it's really about how open your source is. It's about how open you are with the community. "Trustworthy Computing"? Ha! Right. That will happen when they get other, eager contributors -- outside their protective moat -- to jump in and help them (with such a daunting task). That can't happen without trust.
Bottom line: Microsoft needs to quit being such a wormhead [a type of fish that takes over whole ecosystems] and start leaving room for diversity. Then I may begin to trust them again.
1. Use the GPL or BSD. Take a stand for license uniformity and standardized open source licenses. This is a problem that I think needs addressing and MS could be part of the solution. DO NOT make up new licenses. If I see a license from MS that I don't recognize, I will click "Cancel" because I assume it is another stupid MS EULA in sheep's clothing. Using an existing open source license is like choosing HTML over something proprietary, RSS over Atom, Unicode over CP-whatever, you get the picture. Stick with what's already popular.
2. Drop your ridiculous anti-GPL stance. The GPL is an excellent license, and especially so for companies like Microsoft because it guarantees that you don't have to compete against your on code in the marketplace based on secrets, but based on better service for customers. However the BSD is good too for those MS customers who are still using the closed-source model. Sure, your enemy Linux is GPL'd, but your GPL attacks don't seem to be changing many minds so please drop the facade.
3. I will only act in my best interests, I do not volunteer time on open source projects because I think they are neat or because I'm altruistic. I need access to the code to customize for customers, to interop with other software or programming languages, or as a form of documentation. If I find flaws or shortcomings in the code I will submit them back to MS only to save myself the trouble of doing the same on the next version.
4. Let's get this out in the open: I would not cry if Microsoft went out of business tomorrow (just like MS would not cry if Linux stopped being popular). So I have little interest in "working together" or "coexisting" other squishy language I see in people's blogs, unless it solves customer needs. Just keep that in mind. I don't *want* to help Microsoft, I just realize it's unavoidable.
Microsoft, if they're really interested in getting involved in open source, should pay attention to some of the things Apple has been doing for the past few years.
Apple hasn't gotten everything right, but they have made a lot of the right moves. They built their system over CMU's Mach kernel, build everything with the GCC toolkit, and bundle a full suite of familiar tools with their products like Perl, Python, Ruby, Apache, Samba, PostgreSQL (it's embedded in their new Apple Remote Desktop), etc. They participate in the right mailing lists, and they generally try to submit useful patches -- even if those patches don't end up being accepted, they're at least putting in an effort to play nicely. They share what they've done with technologies that they either developed in house or adopted before most others, like Rendezvous (or OpenTalk or whatever it is now), Firewire, Bluetooth, 802.11, etc. All of this ends up coming back to them favorably in the long run.
That isn't to say that Microsoft should slavishly copy everything Apple has done, but they should look at how the moves Apple has made have enabled Apple to move farther much more quickly than they could have alone. Once Microsoft understands that, then they can start picking & choosing what they want to open up, what they want to pull in from outside the company, and what they want to leave unchanged. For example, Microsoft probably wouldn't gain anything if they dropped the NT kernel for Mach or Linux, but they might want to consider scrapping the IE engine for KHTML or Gecko if it's really as gnarly as some of the rumors suggest, and a lot of people would appreciate truly open & understandable file formats for Office the way Apple has done with Keynote & XML.
On a different level, the moves Apple has made have encouraged others to bring their offerings to the Mac when they never would have before. Microsoft could do the same. A lot of people would be happy if they deprecated cmd.exe and instead offered up a fully functional bash / ksh / tcsh / zsh shell, complete with all the expected command line tools and system facilities (grep, cron, /etc config files, and so on). If Microsoft made it easy for Linux software developers to port to Windows just by changing GCC's target platform, knowing that autoconf (etc) would work on Windows, they could bring in thousands of developers overnight. Moreover, if they gave away (free beer, but maybe or maybe not free speech) at least a lightweight-but-complete version of their development tools, the way Apple does with XCode, that too would encourage open source developers to start messing around on Windows in a way that they currently do not do.
Microsoft has spent the past 20 years ripping off ideas from Apple. I don't see why they're having such a mental block about doing it again now...
DO NOT LEAVE IT IS NOT REAL