Slashdot Log In
Josh Ledgard On MS's Future Open Source Efforts
Posted by
timothy
on Tue Aug 24, 2004 06:59 AM
from the inspect-gift-horse-carefully dept.
from the inspect-gift-horse-carefully dept.
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!
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Full
Abbreviated
Hidden
Loading... please wait.
Office.. (Score:3, Funny)
Re:Office.. (Score:5, Insightful)
Parent
Re:Office Specs.. (Score:5, Informative)
Parent
Re:Office.. (Score:5, Informative)
MS Office files are actually miniature filesystems in their own right, containing serialized objects that are the in-memory representation of a document. There is no intermediate step between the objects that are the document in-memory that translates it into ".doc format" on the disk - it's just the object itself.
So:
Parent
Re:Office.. (Score:5, Insightful)
Which, of course, don't count a bit on any other platform than Windows.
That said, Microsoft claims [microsoft.com] to offer "open and royalty-free documentation and licenses for the Microsoft Office 2003 XML Reference Schemas." I haven't looked at them myself, but it looks like the real deal. The FAQ [microsoft.com] states that the "license is not restricted to particular individuals or entities. It is available for customers, governments, academics, hobbyists, and IT companies."
Granted, the download is available as a Windows executable, but I imagine someone will boot up their Windows boxes to look at it.
This is big plus in my book for Microsoft. Still, the specification for good'ol
Parent
Re:Office.. (Score:5, Insightful)
Having to instantiate the word processor that originally created the document in order to use it doesn't strike me as 'fully accessible', 'reusable' or anything remotely like open source.
Parent
Re:Office.. (Score:5, Funny)
Parent
Re:Just as if it were open source... (Score:5, Informative)
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.
Parent
Code contribution tracking (Score:5, Interesting)
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.
Parent
MS has been open source for years (Score:5, Funny)
Re:MS has been open source for years (Score:3, Interesting)
Hacking in cheat buttons for pass-through-walls, free points, change speed, etc... Pass through walls was a mistake, though. People went off the map and it crashed. There were some interesting side-effects when the score overflowed, too ;-)
Fixing bugs in QBasic Nibbles! (Score:4, Informative)
Parent
Quick and obvious answer ... (Score:3, Funny)
Women. Lots of women. Covered in baby oil, writhing around me as I did the work for Microsoft.
OpenSource IE (Score:5, Interesting)
Re:OpenSource IE (Score:5, Insightful)
Parent
Re:OpenSource IE (Score:5, Insightful)
Parent
Re:OpenSource IE (Score:5, Informative)
However, most of the IE related code is in several seperate files, specifically:
hlink.dll (HyperLink Library)
iexplore.exe (main program exe)
imgutil.dll (Image Decoder API)
mshtml.dll (HTML rendering engine)
jscript.dll (JScript runtime)
shdocvw.dll (Internet Explorer core)
wldap32.dll (Win32 LDAP implementation)
msxml.dll (XML parser)
pngfilt.dll (PNG library)
and probobly a few others as well.
Microsoft would have nothing to loose and probobly a fair bit to gain if they were to Open Source those bits that are "IE" (and not the other bits connected to, related to or used by it e.g. Windows Media, Shell, Windows Core, Outlook, OLE, COM, Common Controls etc)
Especially if they then took the best "user changes" and put them into the official tree and future IE updates.
Parent
Something I noticed... (Score:5, Insightful)
Microsoft needs to truly contribute to Open Source (Score:4, Interesting)
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.
Parent
Re:Microsoft needs to truly contribute to Open Sou (Score:5, Insightful)
The CPL was not created by Microsoft - as mentioned here [ibm.com], it was created by IBM, and is essentially an updated and generalized version of IBM's original Open Source license, the IBM Public License [opensource.org].
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 [gnu.org]) 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 [opensource.org]. It's acknowledged as a free software license [gnu.org] 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" [sourceforge.net]. 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
Parent
Free beer! (Score:3, Funny)
If he wants free-as-in-speech contributions, he should dole out some free-as-in-beer. Everyone knows that beer looseneth the tongue.
Do work for MS - for free? (Score:4, Insightful)
Eh, a small slice of the profits they make from selling the fruits of my labour would be nice.
Office File Formats (Score:4, Interesting)
What would get me interested? (Score:4, Interesting)
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.
Well... (Score:5, Funny)
Opensource whatever, I'm not interested (Score:5, Interesting)
Microsoft software except for Windows Media Player series 9 with codecs, perhaps also
Windows Media Encoder could be of some interest.
Why ask first? (Score:5, Interesting)
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.
Open sourcing bits of code is all very well (Score:5, Insightful)
Some light on your two items (Score:5, Interesting)
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
Parent
Only read a bit of the article (Score:4, Insightful)
"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.
Screw open source. (Score:5, Insightful)
Not that I expect it to happen... but it is a nice thought.
I would (Score:5, Interesting)
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.
Re:I would (Score:5, Interesting)
The best source of Open Source developers your going to find that will work on developiung MS products in their freetime are going to be found in the Windows user groups. These are the people that run into the little problems here and there, consistently, over and over, for weeks and weeks on end. Some of them would probably bribe you to let them get in there and fix the problems. I say some because it doesn't matter wat community your part of, there is always someone who would prefer to whine to doing real work.
So start with a small windows groups of developers. Maybe give them IE as a starting place since it is not an essential product, but rather a bundled one (ie, it doesn't directly have a price). See if you can get them interested in implementing some of the newer standards, or re-implementing CSS or the JScript DOM to match the standards. Don't ask them to help, offer limited access to a SourceShare archive and a tasklist, let them work on it as they please. I'm willing to bet you'll find a lot of work getting done, especially after one of them comes back from an especially painful application install or intranet development.
I have been in the grey area, ie not a fanatic about either Linux or Windows, for years. I develop (for work) primarily with VS.Net, with occasional Web Devel mostly aimed at IE. I prefer Linux these days simply because everything happens for a reason. With Windows it's all black magic even when I kind of know what is going on under the hood based on how the system acts. It's the difference between training Gorillas based on watchng them for several years or training chimps after being given Gods notes on how and why he built them.
-T
Parent
Standardize the 'standards' in MS software (Score:5, Insightful)
Stop reinventing the wheel (Score:5, Insightful)
Feel ready to own one or many Tux Stickers [ptaff.ca]?
Re:Stop reinventing the wheel (Score:4, Insightful)
Do you expect them to implement every specialty codec? They have to draw some line in the sand & it is good that third-party software can easily pick up the slack--even by extending what formats WMP can read.
I don't really think MS sets out to make the best anything--they set out to make a useable default choice.
I agree whole heartedly that other proprietaty binary formats should be better documented (especially the Office documents), but I guess I can see that doing so would give MS very little.
Parent
No need to open more. (Score:5, Interesting)
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.
Should be obvious (Score:5, Insightful)
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.
Contribute to WINE (Score:4, Insightful)
DirectX (Score:5, Interesting)
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.
How about releasing the specs on the doc format? (Score:5, Insightful)
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.
They'd need to open source visual studio (Score:5, Insightful)
"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.
patents (Score:4, Insightful)
Talk about aiming to high (Score:5, Insightful)
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!
Ransom Strips (Score:5, Insightful)
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.
Actually... (Score:5, Insightful)
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.
Re:Future Open Source efforts? (Score:3, Informative)
Re:Future Open Source efforts? (Score:5, Insightful)
Outside of source with bizarre licenses, source that clearly furthers a Microsoft agenda (such as the Installer SDK Wix), etc..., does anything substantial exist?
Is there a single Open Source project out of Microsoft with a reasonable license that is worth anything in and of itself?
Parent
Re:Future Open Source efforts? (Score:5, Informative)
Parent
Re:Future Open Source efforts? (Score:5, Informative)
Parent