Slashdot Mirror


Microsoft Plans to open sources for Windows Forms

prostoalex writes "Shawn Burke from Microsoft says they are ready to ship sources for Windows Forms for .NET Framework 2.0 and asks for specific advice on accomplishing that (specifically, a smart comment tool). Windows Forms contains .NET framework classes for building GUI applications."

29 comments

  1. Oy vey... by sethadam1 · · Score: 2, Interesting

    Let me be the first to say that this is a GOOD thing.

    God knows, Microsoft would not be the only group to have the need to strip/edit source code comments. I believe we should try to be constructive instead of 320 comments rated 0 or 1 that trash Microsoft for having naughties in the comments. Every bit of code I've ever seen tends to have jokes, sarcastic quips, etc embedded.

    I can only imagine what the comments might be though. Maybe stuff like

    /* next 10 lines stolen directly from OpenBSD */

    or maybe

    /* add the next bit to ensure that this code will *never* work in Gecko!! Hahahaha */

  2. And this affects us .. how? by AndroidCat · · Score: 4, Interesting

    Does this make a difference to projects like Mono? And what's the catch? Can I use the source for anything useful without being tackled by lawyers? If I look at their source am I tainted forever?

    --
    One line blog. I hear that they're called Twitters now.
    1. Re:And this affects us .. how? by kevin-cs-edu · · Score: 1

      This is a GREAT help to mono. Forms were one of the larger barriers holding it back from being more than just "feature complete" according to MS's released spec.

  3. Helpful maybe? by Joey+Vegetables · · Score: 3, Interesting

    As a user and developer of both custom 'Doze software (by day, for $) and OSS (at night, not yet for $) . . .

    Microsoft is not likely to release these under a genuinely Free or Open Source license . . . but . . . they will be helpful to me as a 'Doze developer by helping me find and work around and/or fix implementation bugs in Windows.Forms.

    I've thus far not had a use for Mono or Dot.GNU, but I suspect that the release will help them for the same reason it will help me: they won't be able to use the source directly but it will help them to find and either fix or (if necessary) re-implement Microsoft bugs upon which software may rely.

  4. Nota bene: this is a free sample of crack cocaine by davecb · · Score: 2, Insightful
    prostoalex writes: Windows Forms contains .NET framework classes for building GUI applications.

    If you use classes which depend on .NET, your application is dependent on code that's part of a monopoly platform.

    If you expect it to run anywhere than on Windows you have to depend on MS not using license terms, embrace-and-extend and patents to make mono fail. Or they can just keep changing the implementation as fast as they can ship out updates, and wear the mono folks out retaining the existing functionality, leaving them unable to add to the framework.

    Remember how long WINE took? And how few apps ran under it for the first few years? Indeed, how few run under it even now...

    --dave

    --
    davecb@spamcop.net
  5. Re:Nota bene: this is a free sample of crack cocai by Anonymous Coward · · Score: 0

    I agree.

    To this day, WINE barely works. I think a huge part of this is due to an unskilled workforce though. Skilled programmers often think of WINE as a waste of time. If WINE had good programmers from the beginning and a motivated workforce they would have had something that could run 90%+ of Windows applications in a relatively short time (see: OS/2).

    WINE is almost as old as Linux. I chuck it the the bin with other "Real Soon Now" applications that will never be completed or even mostly completed, or if they are it will be way too late (see: WINE, DotGnu, Mono, HURD, DukeNukemForever, FLTK 2.0, etc.).

    They would have something usable already if they were worth anything (see: Linux, VMware, Mozilla/Firefox, etc.).

  6. Re:Nota bene: this is a free sample of crack cocai by Anonymous Coward · · Score: 0

    I think that's an unfair statement. Just look at what Transgaming and Crossover have managed to accomplish. The most popular applications work quite well, not to mention the latest games.

    Based on what I've read, many 3rd party Windows apps have horrible hacks in them that even MS itself have had to work around. For example, people using offsets from a known function to access undocumented internal windows functions.

  7. Evil Tricks by FLAGGR · · Score: 2, Interesting

    Imagine MS releases source to something like their win32 API, or at least part of it. Then they sue WINE on the next feature that comes out. Sure, it may be soemthing general (They both used the word 'int' in their code :) ) but its still a setback for opensources PR, and with good lawyers and dumb judges, it can be dragged on for forever (SCO vs The World) until the EFF has no more money to give WINE.

    Microsft doesnt like open source things. If MS open sources something, they are up to no good.

    1. Re:Evil Tricks by Curtman · · Score: 1

      until the EFF has no more money to give WINE.

      Interesting timing on that comment. :)

  8. Rut Roh by white1827 · · Score: 1

    I have a feeling this is going to begin MS's campaign to squash the open source movement. If everyone can freely see the source code to the windows forms API, then they can go after any new form API's that look anything similar to theirs.

    1. Re:Rut Roh by chochos · · Score: 1

      That's why for example the Mono team asks you to refrain from contributing to their codebase if you have so much as downloaded and compiled Rotor (the "shared source" version of the .net CLR, which you can compile in OSX and maybe some other unices).
      But, the Mono team cannot benefit from this, since their winforms API is completely different on the inside, to be portable. MS's implementation of winforms is basically a wrapper for the MFC classes. Supposedly that will change and now it's going to be native, but my guess is it will now draw stuff making calls to the 2D classes in .net, which will still be wrappers for the native stuff.
      If you're going to develop anything in .net, you should stick with GTK# instead of using winforms; that way, you can switch to mono AND to another OS any time.

    2. Re:Rut Roh by Anonymous Coward · · Score: 0

      If you're going to the trouble of not using Windows.Forms in order to be more portable, surely you should actually use a toolkit that's supported properly on more than one platform. Like Qt, and Qt#.

  9. Sources != Open Source by k98sven · · Score: 4, Insightful

    It doesn't look like this is a "good thing", at all really.

    TFA:
    Now, this is not the MFC model where you'll be able to build it, etc. We're talking about just source and PDBs for debugging.

    Okaay. So they're going to let you look at the code, but not build it. With all certainty, modification and redistribution is right out. They just want you to help them with debugging, tainting yourself in the process.

    If I were a Mono or DotGNU developer, I wouldn't touch this thing with a ten-foot-pole, lest I taint myself. It's not going to be open-source. It's doesn't seem like it's even going to be buildable or readable.

    So unless you like MS so much you're willing to do their work for them for free, finding bugs in this (rather insignificant) part of .NET, it's not worth tainting yourself.

    Even Java is better than this. And it's not Open Source either.

    1. Re:Sources != Open Source by bay43270 · · Score: 1

      First, isn't this EXACTLY what Sun did with Java? You can't alter it, you can just see the code for debugging purposes.

      Second, although Mono programmers should stay away from this source just to be safe, realistically, seeing the source to windows forms wouldn't help them much anyway. Mono isn't using win32 hooks. It's cross platform. Their implementation would be completely different.

    2. Re:Sources != Open Source by k98sven · · Score: 1

      First, isn't this EXACTLY what Sun did with Java? You can't alter it, you can just see the code for debugging purposes.

      Pretty much. But their code (as I understand it) was buildable and not stripped of comments. And at least the Java Community Process, flawed as it is, is somewhat more 'open' than what MS is doing.

      But yes, code-wise it's probably going to be pretty much the same.
      (Although we have yet to see Microsofts license for this stuff. Who knows?)

      Second, although Mono programmers should stay away from this source just to be safe, realistically, seeing the source to windows forms wouldn't help them much anyway. Mono isn't using win32 hooks. It's cross platform.

      IIRC, Mono uses WineLib for the WinForms stuff, so it's more-or-less the same as coding for windows. (And Wine isn't very cross-platform, although I'm not sure about winelib.) DotGNU is taking a different approach here, though.

      This is still a drawback, given that it's a pretty thin wrapper, it just increases the risk that Mono's code already looks a lot like MS code. Which is all the more reason for not wanting to be tainted.

    3. Re:Sources != Open Source by bay43270 · · Score: 1

      I had assumed this work was complete when I posted. It looks like they are still working on removing Wine:
      http://www.go-mono.com/winforms.html

  10. Re:Nota bene: this is a free sample of crack cocai by bhtooefr · · Score: 1

    Yeah, but Win-OS2 was mostly the actual Windows 3.0, and then 3.1. It used PC-DOS (a fork of MS-DOS, IBM had full source), IIRC, and a compatibility layer that couldn't have been hard to write.

  11. hmmm by rnd() · · Score: 2, Insightful

    Could this be an attempt to get source code out into public view before Mono finishes its Windows.Forms implementation?

    Or was this code already available on Microsoft's website for building .net on BSD?

    --

    Amazing magic tricks

    1. Re:hmmm by Johnno74 · · Score: 1

      Nope, rotor (microsoft's open-source version of the .net framework, builds on windows, bsd and osx) doesn't include any windows forms.

      Also, there are substantial differences between rotor and the full ver of .net - primarily the JIT and GC.

    2. Re:hmmm by rnd() · · Score: 1

      so maybe my conspiracy theory is correct? Of course, mono is building their Windows.Forms api on top of gtk#, but perhaps Microsoft's lawyers consider opening the source to be a good way (as per the lessons learned from SCO) to put a stake in the ground about what is actually Microsoft intellectual property...

      --

      Amazing magic tricks

  12. probably not helpful by jeif1k · · Score: 1

    Many of those source releases come with licenses that put you at legal risk if you as much as look at the code. Sun Java is an example of a serious offender there.

    Generally, unless software comes with a known, proven free or open source license, do not look at the code. Otherwise, you may find yourself in legal hot water, and you may find yourself banned from many open source projects.

    1. Re:probably not helpful by Joey+Vegetables · · Score: 1

      This is probably good and indeed necessary advice in unfree countries (i.e., most of them). But I believe there still are places where such "licenses" are not enforceable, at least not against those who have not agreed to them.

    2. Re:probably not helpful by jeif1k · · Score: 1

      If you ever want to distribute your project to places where such licenses are enforceable, you still face the same problem. So, unless you only want to distribute your code in Southern East West Africa, you better pay attention to those licenses.

  13. ohthankfuckinggod by evilmousse · · Score: 2, Interesting

    -stimpy- joyyyyy~~~~ -/stimpy-

    i can't tell you how many times i've wanted the source when working in .net, especially when creating custom objects to extend some common .net object like a textbox or dataset. I've wept tears for weeks trying to debug things when I KNOW looking at the source would alleviate everything. Sometimes microsoft's APIs are just WORTHLESS.

    I share some of the political concerns over the open-sourcing that I've read in here, but I think this is a bait I'll bite on regardless. I can quit saying "When in doubt.net you can't read the source.net"

    1. Re:ohthankfuckinggod by Johnno74 · · Score: 1

      Try out Lutz Roeder's Reflector.

      Its a decompiler for .net, and it spits out very good code, complete with the original variable names as long as the code hasn't been run through an obsfcurator.

      Its very cool, load up a dll and browse the classes and decompile into vb or c# on the fly...

  14. MS Scared of infringing IP by jgoemat · · Score: 1
    There are two major issues. One is IP (Intellectual Property) but I'm comfortable with what's in Windows Forms.
    Sounds like he is saying the "IP" issue is that he's worried that Windows Forms would infringe someone else's IP, but he's pretty comfortable with what's in Windows Forms. What about the rest of the .NET framework?
    1. Re:MS Scared of infringing IP by MikeB90 · · Score: 1

      I think what he's saying is (as his next sentence implies) since Windows FORMS is mostly just a fancy wrapper around the Win32 controls, he doesn't feel much really gets exposed from an IP point of view.

  15. I'm killer,satanizer,evilner,apocalipser of games. by Anonymous Coward · · Score: 0
    1. kill -9 WinForms && kill -9 Wine
    2. install Mono.
    3. install the flyier QT/KDE.
    4. install the toolkit of forms QT#/KDE#.
    5. install MonoDevelop.

    It rules like a cheapest God!!! $0.00!!!

    open4free ©