Slashdot Mirror


Miguel De Icaza Forms New Mono Company: Xamarin

rubycodez writes "After being thrown out on the streets by Attachmate, the purchasers of Novell, Miguel De Icaza has formed a new company Xamarin to make .NET development tools for Android and iOS. The company will also provide commercial international Mono support. There are those who would say Mono poses a risk of drawing Microsoft patent or other IP litigation for its inclusion in some major Linux distributions, and that these recent events might be the beginning of the demise of widespread use of Mono and other .NETiness in open source software, a good thing."

38 of 286 comments (clear)

  1. The cross-platform .NET? by Anonymous Coward · · Score: 5, Insightful

    They failed in their first attempt at making Mono a ubiquitous development platform by keeping their mobile ports behind a paywall. Now they lost access to those proprietary parts and decided to start again, in exactly the same fashion... brilliant.

    1. Re:The cross-platform .NET? by tepples · · Score: 2

      what is so great about C# that people seem willing to practically move heaven and earth to shoehorn it in to every platform they can get their hands on.

      What's so great is the popularity of Microsoft products in a few areas. For example, Xbox Live Indie Games won't run anything but C# and other languages that compile to .NET bytecode meeting some specific criteria. The big advantage of C# is that your video game for Xbox 360 and your game for another platform can share game logic.

    2. Re:The cross-platform .NET? by UnknowingFool · · Score: 3, Insightful

      The problem isn't with C# itself as it is a decent language. I view it as C++ enhanced to be better than Java. The problem is Mono. Mono attempts to port the .NET framework into other platforms like Linux. While there has been a great deal of work done, it still is incomplete and missing some parts that many consider crucial. Add to that there is the looming threat of MS legal action at any time. Given the MS sabre rattling on how Linux violates hundreds of MS patents, it is understandable that some regard Mono as not safe enough.

      --
      Well, there's spam egg sausage and spam, that's not got much spam in it.
    3. Re:The cross-platform .NET? by Mongoose+Disciple · · Score: 3, Insightful

      Some of it's probably personal preference -- I'd personally rather use almost anything than Eclipse, though I know a lot of people love it. (For me, at its best, it's a pair of left-handed scissors and I'm right handed, and I don't get a lot of 'best' days.)

      Some of it might be the versatility of the .NET framework with respect to language -- for example, if you prefer writing Python to Java, in theory in the .NET world you could just switch over to writing in IronPython instead of C# and call it a day, and either way it becomes .NET bytecode.

      Some of it might just be a desire for competition. For several years Java was the de facto standard for solving a lot of kinds of problems -- for example, writing custom apps for businesses. That having happened, Java as a language really stagnated in a bad way. It wasn't until C# surpassed Java (in terms of features) that Java really got going and was driven to improve again. In that sense, even if you prefer Java or something else to .NET, having .NET around will probably spur it to be better.

    4. Re:The cross-platform .NET? by solkimera · · Score: 2, Informative

      it is compiled bytecode designed to run in a virtual machine, it does automatic garbage collection, and it appears to be the premier platform for MS development.

      He's a troll. At most he can complain about you using byte code, MS calls it CIL Common intermediate language. They have their name for their VM too. But that's like saying "I'm not riding a vehicle, I'm riding a car".

    5. Re:The cross-platform .NET? by ByOhTek · · Score: 2

      Here are my reasons.

      (1) The API is very well document. Admittedly, Java and python are about as good. All three seem to have differences in where their documentation excel/lack, for me the .NET documentation seems a bit better.
      (2) Even considering Psycho, it is faster than Python, and depending on the task, the speed can go between slightly faster, parity and slightly slower than Java
      (3) Visual Studio is an excellent IDE, probably my favorite (but opinions vary). I just started using MonoDevelop, and it has now beaten out Eclipse as my #2 (this is simply rating IDEs for the languages they work best on, not all languages). Mind you, this is a personal preference, but there are plenty who will agree with it (and since someone will say so, plenty who will disagree as well). Java with a good IDE (Eclipse/Netbeans) comes close, but I've yet to see a good autocomlpeter for python, which makes sense given the language - that would be a non-trivial task.
      (4) I've had better luck in running .NET apps and running them on non-windows desktop platform, than Java apps running on multiple platforms. Mind you, to get this to work their are a few parts of the API you need to avoid, primarily WPF. Again I've seen opinions vary on this.
      (5) The .NET method for accessing native libraries is much easier/cleaner than that of Java or Python
      (6) Programming file IO seems a lot cleaner than you would get in the cluttered mess Java gives you. Python has .NET beat here, though.
      (7) Dynamically loading/unloading .NET libraries from .NET is easier than doing the same for Java libraries in Java. Again, I think Python has a slight advantage here.

      --
      Self proclaimed typo king, and inventor of the bear destroying coffee table (patent not pending).
    6. Re:The cross-platform .NET? by gbjbaanb · · Score: 2

      In theory, .NET is the only language/runtime/framework/library you'll ever need, but in practice......

      in practice, you use different tools for different jobs. Line of Business apps are still being written in Java, more "hardcore" apps are still being written in C++, more webserver apps are being written in PHP. I think I like this state of affairs, because I wouldn't want to be tied into a single system forever. Apart from being a bit boring, you hit the reason right - it stagnates and never sees any need to compete.

      So Mono isn't helping, its trying to make the 'one system to rule them all' come about and we both agree here that that is a bad thing. If Miguel really wanted to improve the overall marketplace, he'd be writing dev tools that kicked ass for Linux/iOS/etc or creating a library platform for all the other languages out there - imagine the .NET framework that he has for Mono available as a native tool for C, PHP and Python code. That would be helping us out. Making a .NET on Linux really isn't.

      I do applaud the work he's done, and I applaud C# as a language (its not so bad at all), but I really think he's lost his way here, become too narrow-focussed on one thing.

  2. Who didn't see this coming? by Barbara,+not+Barbie · · Score: 3, Interesting
    Q. Who didn't see this coming?
    A. Miguel.

    "Xamarin" - because "Ximian" was already taken.

    --
    Let's call it what it is, Anti-Social Media.
    1. Re:Who didn't see this coming? by Richard_at_work · · Score: 3, Insightful

      Ximian was a company founded by Miguel in 1999.

      And also, what has this got to do with Miguel "not seeing this coming"? The thing people were beating him over the head with was the theory that Microsoft would step in and sue people left, right and centre. This isn't that, this is Mono's supporting company failing of its own accord, it has nothing to do with the viability of Mono.

  3. Good news? by nicholas22 · · Score: 5, Interesting

    This brings on the specter of legal action by Attachmate. While there has always been the thought that Mono could be sued by Microsoft, such as lawsuit would require Microsoft convincing a court that it was “just kidding” and the CLR/C# patent covenants are non-binding. Between their obligations to the ECMA standards body and the legal principal of equitable estoppel, the chance of this happening is slim to none. Attachmate is a completely different story. Even if they aren’t supporting it, they do own a product that is in direct competition with Xamarin’s future offerings. Without some sort of legal arrangement between Attachmate and Xamarin, the latter would face the daunting prospect of proving that their new development doesn’t use any the technology that the old one did. As a result of this, as well as the general uncertainty of any new product, some developers on the mono-android mailing list are stating that they are moving back to Java development for now. Source: http://www.infoq.com/news/2011/05/Mono-II

    1. Re:Good news? by Svartalf · · Score: 2

      If it's under the GPL and LGPL, it's going to be a rough case Attachmate would be making, considering that it's open licensed and they just kicked the team to the curb. Unless Attachmate has enforceable non-competes, along with carrying Mono forward, they're not going to have all that much of a case. Violating Copyright? Not really.

      As much as I wish that this stuff would have MS take the spectre of patent lawsuits away from this, or better yet, just die the death it needs to- this isn't a concern I have for it all.

      --
      I am not merely a "consumer" or a "taxpayer". I am a Citizen of the State of Texas
  4. I wonder if Apple would allow it... by mlts · · Score: 2

    Doesn't Apple have a prohibition of using a framework other than Objective C for their iOS apps? I know some tools get around this by making Objective C source code.

    1. Re:I wonder if Apple would allow it... by tepples · · Score: 4, Insightful

      Doesn't Apple have a prohibition of using a framework other than Objective C for their iOS apps?

      Apple has since rescinded this provision, apparently because it was causing Apple to lose money as games and other popular iOS apps that use internal scripting engines were getting kicked off the App Store.

    2. Re:I wonder if Apple would allow it... by kervin · · Score: 4, Interesting

      More likely because DOJ was beginning to probe on the behalf of Adobe.

  5. There are those who would say... by Anonymous Coward · · Score: 5, Insightful

    ...that the submitter should just state his opinion rather than hiding behind weasel words.

  6. from the point of view of getting things done by circletimessquare · · Score: 3, Insightful

    it's not a good thing that Mono should go away

    it is a good thing from the point of view of ideology, however

    but as a working programmer, i like getting things done. to hell with the ideologues

    --
    intellectual property law is philosophically incoherent. it is your moral duty to ignore it or sabotage it
  7. Surely... by Richard_at_work · · Score: 4, Insightful

    these recent events might be the beginning of the demise of widespread use of Mono and other .NETiness in open source software, a good thing

    Surely thats a matter of opinion?

    1. Re:Surely... by PsychicX · · Score: 4, Insightful

      It's a matter of unnecessary Slashdot editorializing, promotion of stupid viewpoints by stupid people. Free Software, amongst other things, exists to promote choice amongst developers and users both. So why is losing effective development choices productive? It isn't. But because there's a vague connection to Microsoft here, it must be evil and be destroyed. Especially now with Java in Oracle hands, what does this accomplish? It's like these people never got out of college and think their professors' dedication to C and a UNIX variant is the only legitimate viewpoint.

    2. Re:Surely... by Anonymous Coward · · Score: 4, Insightful

      But because there's a vague connection to Microsoft here, it must be evil and be destroyed.

      First of all, it's not a "vague" connection between .NET and Microsoft, they created and own the platform FFS. The connection is as explicit as can be.

      Second, Microsoft has proven time and time again that given half a chance will fuck over anything and anybody that stands in their way. And has never stopped trying to take out FOSS, GPL, Linux, open standards and, again, pretty much anything they see as threatening their cosy monopolies. As we speak they're mounting another covert attack on Linux using software patents.

      Fool me once, shame on you, fool me twice, shame on me. Trust Microsoft? Sorry, never again.

    3. Re:Surely... by cyber-vandal · · Score: 2, Insightful

      People's lack of trust in Microsoft's behaviour is not some paranoid delusion but the result of years of experience of watching them misbehave. How do you know that Microsoft won't try to say that Mono violates their patents? They've already said that Linux does, but in the case of Mono they may well be able to prove it. I work in C# .NET and I really enjoy my job but I wouldn't trust Microsoft not to shit on a competitor. Even a brief look at their long and chequered legal history would show that.

  8. Re:I don't get it by nicholas22 · · Score: 3, Interesting

    Java isn't native to Linux. But I get what you were trying to say.

  9. It's open core- not free software, not open source by ciaran_o_riordan · · Score: 4, Interesting

    From TFM:

    The new versions of .NET for the iPhone and Android will be source compatible with MonoTouch and Mono for Android. Like those versions, they will be commercial products, built on top of the open core Mono.

    "open core" is not free software, and it's not open source.

  10. Re:I don't get it by westlake · · Score: 2

    Most companies won't touch it...if they're running on Linux, they're going to go with a language that's native to the platform, like Java.

    What maks JAVA any more "natively" Linux than .NET or Mono?

  11. 17 USC 1201(f) by tepples · · Score: 2

    and in many ways immune to patent litigation (although possibly not DMCA reverse engineering litigation -- I've heard that folks thought that was a possibility at one time)

    Reverse engineering for the express purpose of interoperability is not grounds for a DMCA suit according to 17 USC 1201(f). Say what you want about Universal v. Reimerdes, but I'd bet it would have gone down much differently if DVD Jon had waited until Linux had stable UDF support before releasing DeCSS.

  12. Not a "Good Thing" by mrbluejello · · Score: 5, Insightful

    It is not a "good thing" to have Mono or .NET interoperability taken out of reach of Linux users. Interoperability layers such as Mono allow Linux systems to participate in networks that are dominated by Windows and other commercial systems. If it weren't for software like this, Linux systems may not be invited into some corporate networks, and would not get a seat at the table. The idea of a "pure" linux or no linux is going to continue having linux sitting out in the cold all by itself. Interoperability is crucial. If anything, we need more software like Mono, not less.

  13. it's just a platform by spiffmastercow · · Score: 3, Insightful

    Seriously, isn't it a little juvenile to rally against a software platform just because it's based on something created by a company you don't like? And isn't it hypocritical to bolster Java when it's supported by Oracle, which has a reputation for destroying everything it touches?

    1. Re:it's just a platform by aaarrrgggh · · Score: 2

      For me, as a non-programmer, the rally against .net is a call for simple cross-platform functionality. We are spending a lot of money on ERP/accounting software for my company, and due to the .net backend and client, we are forced to add windows servers and to forego mobile access. It does have a web client... that just works in IE.

      The situation is typical in dealing with software that went down the .net path. It reduces flexibility and limits beneficial use.

  14. N-version programming by tepples · · Score: 2

    That company would be best advised to bite the bullet and implement it 3 times...using the correct and supported languages for the targeted platform

    Then what method do you recommend for ensuring that a program written in Objective-C, a program written in Java, and a program written in C# do exactly the same thing in all circumstances? Which N-version programming tools do you recommend?

  15. Ok, everybody. Two things: by Qbertino · · Score: 4, Insightful

    1st of all:
    Quit picking on Miguel. You may not share the same opinion as he on bigger issues, as do I, but treating him the way the majority here does is primitive. He deserves all respect and professional merit you can give. Unless you are Linus Torwalds, RMS or someone other of the rare few on which who's work his work is based on, you are not entitled to picking a fight with him or destructively ragging about his decisions and/or motives. The others actually aren't either, but at least they have a track record to back up their ego.
    He's done considerable contributions to the cause of FOSS, more than most of humanity anyway and way more than anybody of the wannabees here on slashdot could ever dream of accomplishing, so suck up any stupid and/or ignorant and/or snide remarks you may have ready and just STFU. Thanks.

    2nd: Mono may be a controversy in broader issues, but that's not to say it's not a good project. As for the product itself and products based of it: I know at least one that is a game changer and a major leap forward in its industry, that is based entirely on Mono and wouldn't be possible without it ( http://www.unity3d.com/ ). Cudos to Miguel and the Mono team for making it possible. I know for sure that the other large x-plattform around, Java, would have been beyond pointless as a foundation for realising this and would have failed miserably. Mono and Monodevelop are cool cross-plattform toolkits, and as far as I can tell they get the job done.
    Who can say that about their pet FOSS project?

    --
    We suffer more in our imagination than in reality. - Seneca
    1. Re:Ok, everybody. Two things: by salparadyse · · Score: 2

      you are not entitled to picking a fight with him

      You mean pick.
      And yes we are.

      There is no law that says that critics may only come from a select class.
      Criticising things on an ideological basis is open to all.

    2. Re:Ok, everybody. Two things: by jedidiah · · Score: 2

      Miguel is not the pope. Stop trying to treat him as such.

      This is Slashdot, check your Lemming mindset at the door.

      --
      A Pirate and a Puritan look the same on a balance sheet.
  16. shouldn't it be called Duo by Locutus · · Score: 3, Insightful

    Since Attachmate didn't sell Mono to this Xamerin group are there not two versions of Mono? That would then be a Duo. Because two Mono's don't make it right.

    That reminds me, Miguel already has a dual personality with his proclaimed love of open source yet his constant admiration for everything made by Microsoft.

    LoB

    --
    "Anyone who stands out in the middle of a road looks like roadkill to me." --Linus
  17. Re:I don't get it by greap · · Score: 3, Informative

    The bits that make sense in cross platform systems have been done: http://www.mono-project.com/Compatibility

    Those that are missing currently (almost entirely limited to entity framework and workflow) have open source alternatives already available (EG NHibernate for EF).

    In terms of release cycles it varies fairly wildly. Mono actually was at release for several parts of Framework 4 before Microsoft had their version out of the door, Microsoft tend to be fairly verbose with the roadmap and also put out a great deal of CTP’s targeting small sections of functionality which allows downstream projects to stay on top of what’s coming,

  18. System.Reflection.Emit not in XNA by tepples · · Score: 4, Informative

    And like you noted, .NET apps or games can be written in many different languages. He seems to like Python

    I was under the impression that IronPython and other DLR languages required System.Reflection.Emit, which was not present in the subset of the .NET Framework supported by Xbox 360 and Windows Phone 7 last time I checked.

    All the languages can also use the huge library of code and API's.

    The libraries also have to be written in pure .NET code, unlike in Python where it's common to package a C++ library as a module.

  19. No Android-powered game console by tepples · · Score: 2

    Otherwise, there is no way I'm going to use a second class dev environment on my first choice platform. Here is a list of the top grossing games on Android

    Does an Android-powered device capable of running apps come in a set-top form factor? I haven't seen one. If not, then Xbox 360 is pretty much the only platform for indie console games, and any such game needs to be written in .NET so that it can run in the XNA environment.

  20. Commercial Support by kvvbassboy · · Score: 2

    Can someone tell me who uses Mono "commercially"?

  21. Rewriting code legalities by kripkenstein · · Score: 5, Informative

    If it's under the GPL and LGPL, it's going to be a rough case Attachmate would be making, considering that it's open licensed and they just kicked the team to the curb.

    The FOSS code is not a concern here.

    The issue is the proprietary code that Miguel et al worked on in Novell, the Android and iPhone runtimes. That is owned by Attachmate now, and this new startup contains exactly the same coders, who are intentionally going to write the exact same product from scratch - they will be 100% "source compatible" with the old runtimes.

    So legalities are a reasonable concern. Even if no code is copied, the same people writing the same product - immediately after writing it the first time - may lead to basically the same code being written. It might be hard to prove no code was copied even if none was. Lawsuits are filed for much less.

    Of course, this only matters if Xamarin is a big success - no one sues a failure. Time will tell.