Microsoft Shared Source -- With a Twist
chill writes "Microsoft is now willing to share all the source code to WinCE that they don't license from others. This includes the rights to alter the code and sell the altered code! Of course, they want copies of the changes, but the program is FREE." There's another story at Windowsfordevices.com.
Well I like the fact that microsoft is looking at adopting mozilla like (i think) licences. But "Of course, they want copies of the changes".
Do they inherit the copyright to the changes? Can they then release your code as their own? Can they use your code in other products?
Mouse powered Chips, Open source Processors and Lego
As this cuts out the main revenue from WinCE, I can only see them doing this as a spoiling tactic. In other words, once WinCE has wiped out linux as a viable competitor in the embedded sphere, they'll release a new encumbered upgrade.
Of course this is unlikely to happen, as cost isn't what stops many companis using WinCE. The fact it's too big and bug ridden is.
Chris
Serioulsy, is this a good thing or is there some kind of trick behind the scenes?
I'm a girl too! See naked chicks in my journal!
This is great! I have an old Casio E-10 that I would love to use with 802.11b compact flash cards.
____
cheap web site hosting
Okay, sure, it might be free to obtain a copy of the source or whatever, but Microsoft STILL makes a profit on it, since they receive a royalty on all copies of Windows CE that are distributed.
"Microsoft expects the alterer to license the new version back to itself, for free, for incorporation into future versions. But if it is altered to work particularly in one device, with "value-added engineering," the modifier retains ownership of the changed portions, although it must sublicense a copy to Microsoft."
Now that right there sounds like one fucking lazy way of getting people to code shit for you. Plus another way to use OTHER PEOPLE'S ideas.
Ah am not a crook! (\(-__-)/)
What M$ is doing here is just leeching; per usual off of other people's efforts. This time however it is made to look like they're actually sharing source, but altercations that is really your copyright have to be licenced royalty-free to M$ yet to sell those changes you have to pay M$ as well as your engineers!? That's not in the spirit of OSS.
Karma whorin' since 1999
I think this could be the start of a new business model for Microsoft and others. They have seen the effect that open source has had in the marketplace and it both scares and excites them.
On one hand they see that high quality software can be produced by the open source method (apache, linux, java) due to the sheer volume of (admittedly less talented) programmers and beta testers involved. This takes money away from their products (especially in the server end where W2k advanced servehas been soundly thrashed by Linux despite being arguably the superior product) and costs them revenue.
What they really want to do is reap the benefits of open source while still being able to sell the program for prophit. As I understand it the process goes something like this:
1. Write the basic strucure of your program.
2. Release as open source.
3. See the variations that you like. Get your top programmers to incorporate the best ideas that open source has given you as well as improving your original program. Do not release the new program.
4. As this is Slashdot. Profit!.
Could this be the give-away that unlocks Windows, in general? Recall, Microsoft prospered because IBM allowed Bill Gates to sell DOS in their licensing agreement. An error I'm sure IBM will never forget. Microsoft is banking on many things, same as IBM was back then, and perhaps assuming WinCE isn't that important in their grand scheme. Maybe it isn't, maybe it will be. Once the horses have left the corral it takes some effort to bring them back. Of course, Microsoft's solution, lurking in the wings could be to change it radically, causing a fork. Timing could be everything.
A feeling of having made the same mistake before: Deja Foobar
The article makes it sound like this is primarily aimed at countering the presence of Linux in the embedded/handheld market, but I wonder if this won't do more harm to PalmOS in the short term. Palm has allowed its licensees a pretty free hand in making alterations and requesting features and changes to the OS, at a pretty low level. This is part of what has made it possible for licensees like Sony to run with the platform, and do a lot more with it than Palm's own handhelds do.
If MS extends this kind of freedom to their licensees,
then new clients (which Palm is going to try and acquire more aggressively once the device/platform split in the company is complete) will have one less reason to work with Palm rather than MS. So this is pretty win/win for MS; they get some extra edge on Palm during a vulnerable time for the company, when the pending division could cause things to go either way, they get some enhancements and/or fixes to their code from their lincensees, and they get to collect their royalties no matter what. I doubt that there are any real principles relating to support of Free Software involved; it's just a smart business move.
Remember, there's a reason they got to be the Evil Empire, and it doesn't necisarily involve the quality of their products. . .
... is that MS has realised that, without opening up in this way, WinCE doesn't have a hope in hell of making it onto phones.
Case in point: Sendo, who were the main UK manufacturer of WinCE-based phones, eventually gave up and switched to Symbian. One of the reasons behind the move was the release version of Stinger (WinCE for phones) getting later and later and playing havoc with their schedules.
It's worth noting, though, that there's still a lot of ugliness left over with the Sendo case, with suits and counter-suits going back and forth. Andrew Orlowski's piece in The Register contains many fascinating bits, but most interesting (and most applicable here) is that the main thing Sendo couldn't handle was their own code going back to MS to be incorporated into the OS, thus losing any competitive edge.
The new WinCE license demands such code returns. It shows they've learned their lessons about lawsuits, but maybe not about what their OEM customers actually want.
-- YozI'm working for a Fortune 500 client as an independent contractor. The group that I'm working with runs a massive Internet application that is multi-tiered. The front end of this application runs on Microsoft platforms (currently NT), but the application software we run could be deployed on *NIX. There is tremedous pressure on my team to upgrade to something because NT is being "End-Of-Lifed". So, while we debated whether to switch to *NIX or upgrade to Windows 2000, MS rides in like a white knight trying to explain how Windows 2000 is just as automated and scriptable as *NIX. They convinced management to upgrade to Windows 2000 because MS claimed that they could automate the entire upgrade process.
Guess how they choose to automate it... using WinCE. They basically did a WinCE instance running off a CD to suck all the config off the NT machines and install Win2000 from an image and reconfigure it based on the NT config.
Needless to say, we ran into many problems and it wasn't as nearly as seamless as MS advertised. Based on the bugs in WinCE that I've seen, they need many eyes -- both development and user -- on this product as quickly as possible to get any market traction. Anyway, be warned, I don't think this software is as "free - as in beer" as your labor will be if you choose to use this product, IMHO.
"Ahhhh, best laid plans of mice and men... and Cookie Monster." -- Cookie Monster, Sesame Street
Two things, Microsoft will have the right to use your code; so a commercial advantage is time limited. When an organisation finds a security issue in Windows CE, Microsoft will NOT have the right to include the patch as there is this period of a few months that a company has as a competitive edge.
Consider what it means for a company coding in Windows/CE; your additions are NOT guaranteed to provide a commercial advantage; Microsoft allows itself to your code. So the advantage of coding in Windows/CE has to ofset coding in Linux. With the GPL you do not NEED to contribute back to the community; you only have to provide the source and objects to customers! When you contribute to the community, there is no grace period for nobody.
I wonder when somebody writes a Windows/CE security patch and insists on the grace period would Microsoft be liable under the existing laws?
Thanks, Gerard
I tried to get some Delphi development tools for a CE project, and the Borland rep said they didn't have any.
Why? Because Borland had heard from Microsoft that WindowsCE was on the way out. They had other things they were going to use to take its place.
This must be some sort of *what do we have to lose?* trial balloon on Microsoft's part.
So what did we do instead? We figured out that the device we were going to use had a web browser. Now, how many free languages exist to drive one of those puppies?
If you got a $100 bill, put your hands up...
The embedded market uses Linux
Linux is a great alternative for embedded. But SymbianOS is what
Microsoft is really going after here. Symbian is being adopted by most big cell phone manufacturers, and
the source comes with the license.
True, it's not the way that most open source licenses work, but much of the value of open source (small o and small s) is that you can see the source. You can see how it works, you can learn how it works, and maybe you can write software to work with it. There's additional value in modifying it and even more value in distributing it, but the value doesn't begin there. While MS's program requirement doesn't meet the strict definition of open source, I would say that it meets the definition in a more loose way. The only requirement is that you email it back to MS and they get to use it, too. That doesn't sound like too strict a requirement, since the only difference is that instead of MS coming to you and downloading your source, you're sending it to them. Call them lazy. In addition, they're allowing you to profit from selling the software commercially, which is also not in the strict open source definition.
A lot of those undocumented registry settings belong to Pocket Internet Explorer, Office, and DLLs related to various useful portions of the operating system. Oh, thats right! Those are part of Pocket PC 2002 and not Windows CE. Well, I guess we are screwed. :(
In all serious though, the Connection manager isn't part of Windows CE itself and you won't find it in the source code. If you can score the free (after rape-rated shipping and handling) Platform Kit preview, then you get the extra documentation to Pocket PC 2002 as well. Still, no source code there.
But if I sell my modified version, I have to pay royalities per copy.
Actually, what they mean here is that, as an OEM reseller, you still have to pay a windows license whether or not you modify it. But you don't have to pay extra to modify it. That clause isn't very onerous. The "all your source are belong to us" clause is the kicker.
It would be nice and kludgey, but I think the best route around this would be to make the released changes to the binary instead of the source. Easiest way would probably be to coimpile the original source, make your changes to the source, compile again, run a glorified "diff" on the before/after binaries, and figure out what changed. That way, you could collect your changes to the binary into a patch. Then, you could redistribute your patch to people who HAVE windows, and you can NOT give them your source code.
Not the best solution, but it involves as little money hitting M$ as possible. Now I wonder if they already have a provision against this in the EULA of the Shared-Source dev kits?
-Looking for a job as a materials chemist or multivariat
Except that the whole point of OSS anywhere is to outsource your development cost. Seriously. If you wanted to get some software written, and you knew there was someone else who wanted it too, then you just start up a OSS project to do it and you get all the other developers time free, AND you get all their work back in your software. OK the license for resale might be different, but the tactic is virtually identical to MS. What MS are saying with this deal is "we are the only ones allowed to licence WinCE. You can add to it, change it, remove stuff, so long as you tell us. BUT a copy of WinCE is still ours to licence. Sounds fair to me.
You can't win Darth. If you mod me down, I shall become more powerful than you could possibly imagine
People do seem to realize that "shared source" isn't open source. In the embedded universe, even though you can read and modify the source code to Windows CE, you still have to pay a license fee to Microsoft for each device that you ship. Not so with Linux. That's why Linux is currently *beating* Microsoft in the embedded space. Microsoft recently contracted with a third party to make Windows Media available on embedded Linux. (Not on desktop Linux -- they'll make sure that doesn't happen.) This shows that they're admitting that they don't plan to have a monopoly in that space anytime soon, but that they're still working hard to try to achieve a monopoly on digital media. In reality -- no change. The number one rule of everyone, everywhere must continue to be: avoid ALL Microsoft products. Think of Microsoft products the same way you would think of cancer. You don't want even a little bit of it, because it *never* continues to be just a little bit.
Tired of FB/Google censorship? Visit UNCENSORED!
I've got Windows CE on my resume and I'm getting 3-5 unsolicited calls/EMAILs weekly for headhunters looking for CE guys. We work with a CE house that is buried. I won't say CE's market share will overcome VxWorks anytime soon, but for anything with a GUI display or that's web enabled, it's a very valid choice.
WinCE was 50 bucks, which is a lot of money in an embedded product.
First, I'd need to verify with our contract guys to be sure, but I believe we're paying more on the order of $10/licence. $50 sounds a lot more like embedded XP to me (which we're using in other products). Also, we're running an x86 with no BIOS, so BIOS royalties go away. In anycase, while recurring cost is a big issue, for lower volume products (say under 100K) the savings in initial software development costs (our biggest item here) recoups.
Now, before you say "Low volume, what a cop out!" I need to point out that there's an enormous amount of embedded development out there that meet this critera. Go to a trade show and you'll find at least half of the atendees are not building VCRs or PDAs but niche products - medication inventory trackers embedded within pharmacy carts, portable diagnostic equipment for high voltage power lines, or (in my case) in flight entertainment systems. You won't find any of these things at your local Best Buy, but there's more than enough demand for them to support these lower volumes. I agree that this was not MS'es initial goal, and it makes me wonder if they'll ever turn their back on CE because of that, but for the moment CE looks quite healthy to me.
"Prepare for the worst - hope for the best."
A little clarification:
The previous Shared Source license was for debugging purposes (so you could figure out why some of your code wasn't working by stepping through OS code). If you changes to the source you could only do it for debugging purposes and you could not make a device (your product) that used the changed code.
This license allows you to make changes to the MSFT source code and ship a device containing those changes (subject to other conditions).
The info you point to is not the Premium program for commercial use but a Shared Source program for non-commercial use. This program (and I suspect the Premium program) don't allow redistribution of source code.
NOTE: not all Shared Source licenses are the same. The license for Rotor (the SSCLI) is much more liberal.
I don't not speak for MSFT though I used to work for them in Win CE.
Hmmm, maybe we should be patenting software instead of copyrighting it.