Slashdot Mirror


Microsoft To Acquire Xamarin (phoronix.com)

New submitter androlinuz writes: Microsoft has signed an agreement to acquire Xamarin, a leading platform provider for mobile app development. In conjunction with Visual Studio, Xamarin provides a rich mobile development offering that enables developers to build mobile apps using C# and deliver fully native mobile app experiences to all major devices, including iOS, Android, and Windows. Xamarin's approach enables developers to take advantage of the productivity and power of .NET to build mobile apps, and to use C# to write to the full set of native APIs and mobile capabilities provided by each device platform.

15 of 130 comments (clear)

  1. Pulling an Elop by Prien715 · · Score: 3, Funny

    Looks like Miguel de Icaza has officially become part of Microsoft. Maybe he can pull a Elop and get Windows 11 to use Gnome as its desktop environment.

    --
    -- Political fascism requires a Fuhrer.
    1. Re:Pulling an Elop by Caesar+Tjalbo · · Score: 3, Funny

      Yep. This being Slashdot, I expected this story's title to be "Miguel de Icaza at long last officially a Microsoft employee".

      tftfy

      --
      "I'm not much interested in interoperability. I want substitutability. I want to be able to throw your software out."
  2. Re:Microsoft also owns microsoftsucks.com... by Dutch+Gun · · Score: 3, Insightful

    As far as I understood, it's simply a way to use C# to develop cross-platform mobile apps - nothing as grandiose as you're suggesting. That a space that, at least initially, Microsoft wasn't interested in filling. However, given Microsoft's recent focus on cross-platform development, this actually makes a lot of sense for both companies. For Microsoft, it means not having to duplicate work that's already been done, and for Xamarin, frankly, it means not having to compete with a space Microsoft wants to get in.

    Historically speaking, I'd argue that Mono has been the alternative to Microsoft's proprietary implementation of C#, along with whatever other languages it supports. Also, now that Microsoft has open-sourced the .NET core, there might end up being a waning demand for an alternative implementation, although that's admittedly just a guess.

    --
    Irony: Agile development has too much intertia to be abandoned now.
  3. Re:didn't this happen in 2014? by joaommp · · Score: 4, Insightful

    "Embrace, extend, extinguish"...

  4. Re:Wow by xxxJonBoyxxx · · Score: 4, Informative

    >> Xamarin's approach enables developers to take advantage of the productivity and power of Visual Studio to build mobile apps

    FTFY. When we were building our last set of apps, we were happy that our developers could reuse their Visual Studio / C# skills; we purchased Xamarin so we wouldn't have to care (as much) about what the compiled code ran on, and specifically so we could avoid hiring more than a handful of dedicated Android or iOS developers (to perform touch-up work if necessary).

  5. Re:Microsoft also owns microsoftsucks.com... by Jesus_666 · · Score: 4, Interesting

    What? No. Xamarin allows you to develop .Net apps for iOS and Android using Mono (Android) or a rickety cross-compilation toolchain (iOS). These days you use something very similar to the Windows Mobile API (including XAML) to target iOS, Android and WinMo/Metro. It's pretty nifty; I work on a Xamarin-based app and about 95% of the code is shared while the app looks and feels 100% native on all platforms.

    I can see Xamarin as something Microsoft would want - now they supply one of the most popular APIs for cross-platform app development.

    --
    USE HOT GRITS WITH STATUE OF NATALIE PORTMAN (NAKED AND PETRIFIED)
  6. Good by ilsaloving · · Score: 3, Informative

    Normally, I would say that this is a bad thing, but Xamarian's pricing is brutal anyone who just wants to play around, explore, and possibly try to sell an app or two if they're halfway decent. When I was looking at cross-platform development tools, I was really interested in using Xamarian, but I wasn't about to fork over $1000/year just to play with developing cross platform software (ie: mobile AND desktop). And their starter edition only runs with Visual Studio, which is Windows only.

    QT is even worse. Their documentation actually states "Please consult a lawyer before using QT for commercial development". Their pricing is so brutal they don't even advertise it on their website. I had to google for leaked price lists just to get a ballpark figure, and the prices almost made me fall out of my chair. So heaven forbid you write an app and think, "Hey, this ain't bad. I'll put this on the app stores and see if anyone likes it." QT will be suddenly expecting several thousand dollars right up front before you legally able to sell.

    I really like the "It's ok, you can pay us once you're making money" system that Unreal and Unity have switched to. THAT's how you encourage indie adoption. Unfortunately they're geared primarily for making games, not regular applications, so if you wanted to create some kind of database-type system or whatever, then those toolkits are not a good fit.

    1. Re:Good by Anonymous Coward · · Score: 3, Informative

      I was super excited to try Xamarin last year. I spent a night downloading and installing their software after seeing that they did have a free tier for developers to test their apps to see if Xamarin worked for them. The download and setup took so long that I ended up having to call it and finish the next evening. So I sit back down at my computer the next night, only to then have to go give my life story to Xamarin just to open their software. Finally, account registered, I open up their own tutorial which is a simple "Hello World" app. Literally, it just displays Hello World on the screen. I go to run the app and get:

      "We're sorry, this application exceeds the compiled file size limit for your tier. Please upgrade your subscription to continue."

      After Googling this extensively, I found that apparently the limit is so arbitrarily small that there was no point, and that Xamarin themselves had already responded to user complaints on this and doubled it to get to the limit I had hit.

      I then spent the next evening uninstalling their software.

      In short, I felt lied to about their pricing practices. Don't advertise your "free tier" if it's not even usable. I lost three evenings of my life to that.

      So me hearing that Microsoft bought them out sounds like an amazing move, if for no other reason that I hope Microsoft will at least put some of the basic functionality in Express so I can finally try it out.

    2. Re:Good by StormReaver · · Score: 3, Informative

      QT is even worse.

      I used Qt extensively for years. Qt >= 4.0 is LGPL (unless that's been changed when I wasn't looking), meaning you are free to use it for closed-source purposes as long as you don't modify the library itself.

      That being said, I find Java to be much better than Qt for desktop software in almost every way.

  7. Good for Miguel! by Rinikusu · · Score: 3

    Miguel de Icaza, you earned it.

    --
    If you were me, you'd be good lookin'. - six string samurai
  8. A Logical Choice for Both Companies by ndykman · · Score: 4, Interesting

    It was overdue. Oddly, I think it was Xamarin that delayed this acquisition. I think MS would have been happy to pick them up two years ago. For all the flack Miguel de Icaza gets, he is a big open source supporter, and I bet he was concerned with how that would work being at MS and all. But, when .Net core happened, the writing was on the wall, and now they can just get .Net core to be what it needs to be.

    Make no mistake, this is a play to displace some existing players and to encourage adoption of hosting on Azure and using Azure services. It's a good story for a lot of companies. You can use one set of skills (C#/.Net) to address development from end to end and you get pretty streamlined hosting (via Azure). Compared to having to assemble all the pieces from front to back, plenty of companies will take the ecosystem lock in.

  9. Re:didn't this happen in 2014? by lgw · · Score: 3, Insightful

    Microsoft lacks the power to do that shit any more, and they know it. They're not betting the company on the success of the Windows phone. They're hoping people will develop apps for Android and iPhone (and Windows) using C#. As someone who prefers C# to Java, I really want to see this happen seamlessly.

    --
    Socialism: a lie told by totalitarians and believed by fools.
  10. Re:Wow by PmanAce · · Score: 3, Informative

    When I built my app for droid and touch (android and iPhone as you can imagine), my client couldn't tell the difference between native apps and my apps because the end result was a native app.

    --
    Tired of my customary (Score:1)
  11. Re:Wow by LostMyBeaver · · Score: 5, Interesting

    I've been doing it as well.

    To be fair, I come from a really long history of bringing multi-million line projects to up to 80 different platforms (everything from Symbian to Mac to Qnx to Nintendo Wii) and from the beginning of the project focused 100% on portability to begin with... I chose C# because C is for OS Kernels (write those too) and C# is for apps. They're the two universal languages in the sense that they are the two languages who can access APIs on any platform.

    I found that with good planning, I have been able to make a program which runs on Windows Store, Windows Desktop, Mac OS X, iPad and Android using all native UI components as well as pixel perfect print support with less effort than I ever put into with Qt or my own homegrown. As a result, I can't really imagine ever writing in anything else again. I let me focus on learning platform APIs and not screwing around with things like SWIG or crazy assed Android C++ adapters.

    Oh... let's not forget that by managing my data structures intelligently (my document format is almost as complex as Microsoft Word's), I was able to outperform manually management memory schemas every time and by hooking the garbage collector I was able to implement a memory defragmentor which I've done in C++ in the past and required so much template hell that the code became unmaintainable. By defragging the memory through the GC, I was able to take advantage of language level relocation and as a result, the code is readable and manageable... oh... and quite a bit more performance efficient since it generally runs as a FSM during idle cycles.

    C# allowed me through a single language to quickly implement about half a million lines of code and focus more on productivity and less on dicking around with things like SWIFT compiler errors and warnings which look like "Something is wrong an caused a parser error within a 100 lines of line 241 that makes this line think it's a chicken.. please call again later when you comment out 90% of your file and restructure you code to manually find the actual error".

    C# compiler errors suck too, but at least the Visual Studio GUI makes it pretty easy to drill down to root cause.

    I'll say this much, they started as a development tool company, they always nailed the development tool thing and now with LLVM support offering C standard compliance directly within Visual Studio, I think Microsoft has really nailed it.

    Now if they throw enough money at compiling for Mac and iPhone without a Mac that would be awesome. Programming in XCode is so painfully slow it's unbareable. If you made the mistake of buying a Mac Pro and are wondering why it's so damn slow, install Windows 10 on it and use Visual Studio instead and run OS X in a virtual machine to compile against. It's a HUGE improvement.

    Last thing to fix I think is getting remote app support for iPhone simulator. Then make it so if I press F5, I get just that Window. I'm using iRapp at the moment which isn't awful, but it's a bit intrusive.

  12. Re:.NET by terjeber · · Score: 3, Insightful

    In the late 1990s our company released some serious Java software for a very significant US market. We were very successful with it, and Sun used our logo as one of the success stories when taking out some double-page ads in papers like the New York Times. I have always been a huge fan of Java, but these days, when I do something for the JVM, it tends to be Scala. I much prefer Scala to Java.

    About six years ago I was asked to take on some C#/.NET stuff, and it was surprising to me how easy it was coming from Java. C# was clearly a "copy" of Java. This was .NET 3.5. After a while I realized that the MS tooling plus the C# language and the .NET environment made me more productive in C# than I had been on Java. Tooling in particular was very good, but also some of the language features of C# were simply more mature and more well thought-out than in Java land. C# does, for example, auto-boxing properly while Java autoboxing is a cluster fuck (compiler-stage autoboxing an Boolean object to a bool, for example is an idea that must have come out of the excrement of a brain dead developer, for example).

    Then C# developed. Took on functional aspects, got Linq, moved on. Java on the other hand. Nothing. Nothing. Nothing. Nothing. For years and years. Death by committee. Today a decent developer is probably twice as productive in C#/.NET as it is possible to be in Java, and things do not seem to be improving much. If your shop uses Windows PCs, Active Directory etc, you'd be practically insane to use Java/JVM over C#/.NET.

    Now, if the Xamarin move pans out, if you are a Windows shop who need specialized mobile apps, you'd be insane not to use C# or (important, I would typically use this) Cordova.