Slashdot Mirror


Can Recent MS Patents Affect Mono and DotGNU?

5p1urge asks: "I really love the Mono and DotGNU projects. As someone who's worked in Java for for over 5 years, I welcome C# and it's buddies to the OpenSource world. However, here's question: as far as I can tell, only the C# spec and System.* assemblies were submitted to ECMA and therefore made officially public. What happens when MS decides that, Linux -is- going to steal valuable income-generating business, and therefore it should use it's newly acquired patents to sue? I'd appreciate comments from IT lawyers / solicitors and individuals with experience in this area, as well as from the wider community. I'm asking this question because I want to code in mono / DotGnu but I'm cautious because I wonder if MS can take it away from us?"

17 of 410 comments (clear)

  1. Re:Answer by innosent · · Score: 4, Insightful

    Thanks, and on the other side of the case, would it matter? As far as I'm aware, the courts have always allowed the copying of functionality/appearance, just not the methods used. Since this is a compatibility issue, I doubt MS would have a case anyways, unless the methods used to be compatible were the same as their patented methods.

    The only thing you can patent is an algorithm, not functionality. If you get a really broad patent on the algorithm, you might have a case, but it's a pretty weak one (since you may lose the patent). As I see it, software patents really aren't worth the trouble, since the only thing they really protect is your algorithm for doing something, but it tells everyone how you do it (making it easier to copy functionality). If MS does sue, who would they sue, and what would they get? It's pretty much guaranteed that they'll spend more in legal fees than they'll ever see if they win.

    --
    --That's the point of being root, you can do anything you want, even if it's stupid.
  2. Re:Nope by Frymaster · · Score: 5, Insightful
    Software patents will soon see their death.

    er, why would you think that? intellectual property has only become stronger over the last 20, 100, 500 years.

    government regulation of economic rights parallels economic growth. when agriculture became the dominant economic model, feudalism and land-rights became entrenched. when capitalism and the industrial revolution made their debut, property rights becamed enshrined by the state. now that we are heading into a "post-industrial" (don't blame me for that phrase), information-based economy, intellectual property rights will becomed entrenched.

    let's face it: the opensource folks like us are the diggers and godwinists of the information revolution. we will impact the nature of property rights, but not abolish them.

    doubt me? read up on the diggers and william godwin. sounds like the oss movement today, right?

  3. With Perl and Python being mainstream by RLiegh · · Score: 4, Insightful

    I would suggest to you that perhaps you should concentrate your efforts on freely available programming languages and protocols instead. Python is steadily gaining ground as an embedded scripting solution and more and more sites are turning to Perl so this will boost your employability.

    As far as microsoft goes: man who sleeps with gates wakes up as goatse.

    1. Re:With Perl and Python being mainstream by codepunk · · Score: 4, Insightful

      I would have to agree you don't see much perl in web applications any longer. I have one chunk of perl left on a web site I maintain and the next time I have to mess with it I am converting that as well.

      And python is my favorite choice for anything not related to web development. It is by far the most productive and maintainable language for business work.

      --


      Got Code?
  4. It's simple... by dazk · · Score: 5, Insightful

    Don't do it.

    I don't like the development of Mono and DotGnu anyways. Think about it. Gnome started in part because some people didn't like the QT license. A "problem" that is now resolved with QT being GPL licensed and a contract that will put it under a BSD-style license once Trolltech decides to stop working on it or is going out of business.

    Mono on the other hand reproduces MS technology that MS apperantly doesn't want to be open despite it's (marketing) efforts to standardize a subset of the Framework. I think developing with/for mono is counterproductive since it allows possibly great Opensource software to be used with Windows, taking away another reason for people to switch or even consider a switch. Because only a subset of .NET is halfopen, a great bit of .NET software won't run on linux anyways, which reduces the weight of one of the arguments for Mono significantly.

    While .NET might even be an interesting technology, community based (partial) support will only benefit Microsoft. It will add additional Software for Windows but probably only few Applications will arrive for Linux, since producing applications with a small subset of the API will be more work. Considering that a commercial QT license is not that expensive for businesses developing software compared to the labour cost, and the very few applications using this powerfull toolkit for easy multiplatform development, I really can't see many companies limiting themselves to the subset of .NET to create applications that also run on Linux.

    So in the end it should be clear, don't support Mono by developing applications for/with it.

    1. Re:It's simple... by absurdhero · · Score: 4, Insightful

      What does QTs license change years ago have to do with making a mono and dotgnu creating webservice platforms and C# portability?

      I understand your concerns about mono helping microsoft, one can say the same thing about php and perl helping the MS server platform, gcc supporting MS development, and frozen bubble making windows a better gaming platform. This argument is old and has little effect in the real world.

      You seem to no nothing about DotGNU. The project's goal is to create a free software web platform in much the same way the GNU project set out to create a free unix-like platform. One could argue that GNU/Linux has helped SCO, ATT, or HP to improve their commercial unix, but somehow I think they would all disagree.

      And to revisit your issues with mono, claiming that C# and MSIL support for linux is helping microsoft more than it is helping anyone else is similar to saying that java support on linux is only good for Sun. I just don't see the evidence or reasoning.

      Your tie in with QT makes no sense. I think you are missing something important. QT and GTK+ are completely unrelated to the webservice and binary portability arenas where mono and dotgnu are. Incidentally, there are libraries to use QT and GTK+ from C#.

  5. ECMA submittals *ALSO* subject to patents by cheesedog · · Score: 5, Insightful
    As a note, the reason Microsoft continually goes to ECMA for standardization is that ECMA doesn't require that "standardized" specifications be immune from patent protection. From my understanding, it doesn't matter what is and isn't in the spec -- Microsoft can claim patent rights on any novel* pieces of .NET that they want.

    *and of course, the the USPTO, "novel" means "anything a 18-month old baby couldn't have authored."

  6. Call me stupid by codepunk · · Score: 4, Insightful

    What on earth is so great about .NET and or Mono. I see absolutely nothing about it that would make me desire to code with it.

    Is it faster? No

    Is Development Faster ? No

    Is it cross platform ? No

    Does it do things that other languages cannot? No

    Is it Encumbered By Patents? Yes

    Sure makes me want to use it....

    --


    Got Code?
    1. Re:Call me stupid by miguel · · Score: 4, Insightful

      You got the questions with the wrong answers:

      1. Measuring speed is difficult, but to give you an example, the Mono C# compiler compiles itself on 3.5 seconds (50,000 lines of code).

      2. development is faster, I would say 3x to 6x depending on the task. In the case of ASP.NET vs J2EE, we know from two studies (ours and Forrester/Giga) that it is 20-28% more effective (see my blog for details).

      3. Is it cross platform? Yes, it is. The Mono C# compiler was originally built/compiled on Windows. Today, it does not matter. We routinely run large applications (web services, console, gui) on it.

      4. It offers plenty of functionality that is hard to find elsewhere: cross-language interop, unified GC/threading/io

      5. Patents: the ECMA core has been freed of any patents, see: primates.ximian.com/~miguel/tmp/map.png

  7. their problem is that they don't show details by SHEENmaster · · Score: 5, Insightful

    I can't patent "A Device that Catches Small Animals", but I can patent "An Improved Device for Capturing Small Animals by Use of Magical Cheese" in the hardware world. In the software world, I can go so far as to patent "Magical Cheese" without the recipe for said cheese or an investigation into my magical bacteria.

    We don't need to do completely away with software patents any more than we need to do away with all patents. We need to make both reasonable.

    By reasonable, I mean non-profit groups should be exempt, patents should last 2-5 years depending upon the technology involved, and nothing that significantly advances a previous technology should fall under that technology's patent.

    Patents should spawn innovation in exchange for the disclosure of the underlying technology. They shouldn't hold innovation hostage for decades to come.

    --
    You can't judge a book by the way it wears its hair.
  8. MS not helping .NET development now by GGardner · · Score: 4, Insightful
    Oddly enough, Microsoft is making it rather hard for third party developers to develop .NET applications, at least those that aren't only for in-house use. The .NET CLR does not yet come with any version of Windows -- you have to download the 25mb runtime yourself. There's still lots of dialup-speed users out there, and there's no way they are going to download a 25mb runtime just to run your app. I bet there's a lot of broadband users who would look askance at such a large download.

    Until .NET is installed on enough desktops, it is going to be difficult to justify developing distributeable applications with it.

  9. .NET is not worth cloning by Junks+Jerzey · · Score: 4, Insightful

    Yes, sadly, many programs for non-MS operating systems, like Linux, are blatant clones of that from Microsoft. It's always been a bit ironic, but livable. But cloning .NET--as Mono--is by far one of the dumbest moves ever, and I mean that in a non-trolling way. At its heart, .NET is a way to break free from the aged Win32 API and old fashioned languages like C and C++. This is they key point of .NET, not web services. Now you can use Visual Basic-like forms from any language. Now you can have garbage collection. Now you can have true modules, not the FORTRAN-era separate compilation of C. None of this is new; none of this was invented by Microsoft. But is all so much better than building apps with MFC or raw Win32 calls. Windows programmers are flocking to .NET for this reason.

    But there are other ways to reach the same end. Python + a UI toolkit is a biggie. It's even more modern than C#, which is hopelessly mired in the 1990s philosophy of very strict object-orientation (Python is much looser in this regard). And it's interpreted, so you can incrementally build and test code, while still having all the same general benefits of .NET and C#. So anyone promoting Mono for Linux is putting their effort in entirely the wrong place. This is the one spot in which open source is already far superior, but for some reasons some zealots want to copy the inferfior solution, most likely just to spite Microsoft. What a complete waste of time.

  10. This is probably not the answer you expect by jsse · · Score: 5, Insightful

    As someone who's worked in Java for for over 5 years, I welcome C# and it's buddies to the OpenSource world.

    I highly recommend you stick to Java.

    All our major projects are developed under J2EE and we first use Tomcat as it's free. Later we switched to BEA because it has better performance; years later we changed our deployment to Oracle App servers for Linux because Oracle offered some attractive discounts for their Linux initiatives. We saved huge amount of operational/maintenance budge in switching from UNIX/Windows to Linux.

    All of the migrations took us very minimal efforts because all J2EE platforms are pretty much agree on the same standard. Sweet isn't it? :)

    I don't think you've such a freedom in .NET platform, and I don't see it's justifiable to implement .NET on Linux than Windows. You're right that MS is holding the balls of Mono and they could do whatever they like with it. So, why take the risk?

    (Ok Ok, I know SUN is holding the balls of others with that J2EE certification, but you can see their difference. :)

  11. Re:Could be intaresting.... by Anonymous Coward · · Score: 4, Insightful

    Microsoft uses its patents as a hedge against OTHER companies using their patents against Microsoft.

    That's why you'll see cross licensing agreements between Apple and Microsoft and IBM etc.; Microsoft had to catch up in that respect actually since its patent portfolio wasn't a priority for a long time.

    Microsoft along with those other big players don't tend to litigate and push their patents because they simply don't need to. They create intellectual property and through licensing agreements they can still share it amongst each other (sometimes grudgingly, but they don't want to get into a huge countersuit war on other patents they're "infringing" on).

    It's only the little guys who have one patent and nothing to lose in a countersuit who will sue everybody to hell -- those are the true stiflers of innovation.

  12. Re:Nope by jc42 · · Score: 5, Insightful

    why would you think that? intellectual property has only become stronger over the last 20, 100, 500 years.

    Of course, it hasn't been a steady advance, and there have been occasional major setbacks to the progression.

    For example, a bit over 200 years back, there was a revolution in North America, and when a new Constitution was established, it restricted "IP" to a short time, and only when it advances the arts and sciences. Some economists and historians have claimed that this was one of the major reasons the US became the world's biggest economic power. Of course, now this has mostly been cancelled by recent laws extending patent and copyright indefinitely, and allowing them for rather silly "inventions". So the US's technical lead is probably ended, at least for the near future.

    But it's always possible we'll see another such revolution, either in the US or in another part of the world that wants to take the lead in technology while the US strangles its own creative folks. It has happened before, after all; there's no reason to believe it can't ever happen again.

    --
    Those who do study history are doomed to stand helplessly by while everyone else repeats it.
  13. Does MS want/need developers anymore? by Latent+Heat · · Score: 4, Insightful
    Patents could be used to tie mono/.Gnu up in knots. The idea is that if you develop for .NET/Windows you should be darned well tied to Windows instead of traipsing off into Linux or whatever.

    OK, Windows is Microsoft's flagship OS, and they want to defend their turf. So, lets say developers and their customers pay MS the required tithe. If you play this software game too far, is there any room for little-guy developers of even Windows itself?

    When MS started out with DOS and then with Windows, I think they went to great lengths to get "mindshare" of developers: MSDN, Visual Basic for applications programmers, VC++ for heavy-metal programmers, and so on. And then you had all the "third parties." Where would the PC have been without Lotus 123? Where would programming languages on the PC be without Borland? It is said that MS treatment of developers is what sunk OS/2. IBM was charging an arm-and-a-leg for OS/2 development tools at a time when MS was handing tools out at conferences to get developers to forgo OS/2 and develop for Win32.

    But a good part of MS was that they fostered 3rd party developers, but when you got big enough they either bought you out or squashed you.

    So having good developer relations was important to the growth of Windows and Microsoft, and the fact that there were a lot of people besides Microsoft writing apps for Windows was part of what was so great about Windows, especially since early iterations of Microsoft compilers, spread sheets, and other apps were pretty lame.

    But now the development tools all cost an arm and a leg, and with software patents as a club, what size developer will Microsoft tolerate. If you are selling a recipe program written in VB to a handful of friends, you will be off the radar, but at what market size does MS these days decide they want all of that market.

    More importantly, if independent software developers are all put out of business through the enforcement of IP, how is MS going to develop new markets through their usual strategy of buying out or squashing out the pioneers. MS has in the past been pretty clumsy in all their attempts at new markets and has depended on acquisition (can you say Anders Hejlsberg? I knew you could!).

    Besides choking off small developers, at what point is MS going to shoot themselves in the foot?

  14. Look at it from the strategic point of view by msafar · · Score: 5, Insightful

    Every line of .NET framework code (J#/C#/VB.NET) is a line that didn't get written in Java. From that perspective, Mono and DotGNU help Microsoft to expand the market for .NET.

    What is the revenue model for .NET though? Microsoft charges only for the development environment, which you can purchase from Borland if you like. The real strategy is to keep people focused on the Windows platform. .NET's value to Micrososft is to make Windows developers more productive.

    Bottom line: Microsoft will likely allow Mono (as they have so far) and DotGNU until applications utilizing it on Linux reach critical mass. At that point, Microosft will probably start charging royalties to commercial developers (either per programmer, or rev share).

    Will Microsoft forbid .NET on Linux? Maybe for a short time this could happen, and it is a danger, but I just wonder if they'll dare pull such a stunt given the EU/US anti-trust watchdogs. The only reason they would do it is to try and slow down the march towards Linux, which, frankly, will not be affected by the presence of .NET on that platform.

    Devil's Advocate note: I also wonder if they'll try to stop it now because if they let it go for too long without challenging it, the courts might say they didn't defend it for so long that they lost their chance (but I'm not a lawyer).

    Finally: Why use .NET at all on Linux (note that I LOVE .NET on Windows)? The whole point of writing distributed applications with Web services is so that platforms can communicate over SOAP (or SOAP-ey) protocols. I don't see any major advantage of .NET over J2EE for an enterprise dedicated to Linux.