Herding Code: Herding Code 158: Nat Friedman and Joseph Hill announce Xamarin 2.0

Herding Code

Nat Friedman and Joseph Hill from Xamarin join us for several big announcements: Xamarin Studio, Xamarin Component Store, iOS development in Visual Studio, and a new free Starter edition. Download / Listen: Herding Code 158: Nat Friedman and Joseph Hill announce Xamarin 2.0 Show Notes: (00:45) Na.

Running time
File size

Download Original File | View original post

Episode synopsis

Nat Friedman and Joseph Hill from Xamarin join us for several big announcements: Xamarin Studio, Xamarin Component Store, iOS development in Visual Studio, and a new free Starter edition.

Download / Listen:

Herding Code 158: Nat Friedman and Joseph Hill announce Xamarin 2.0

Show Notes:

  • (00:45) Nat begins by catching us up on Xamarin’s first eighteen months.
    • Xamarin’s focus is on helping developers build mobile apps across multiple platforms.
    • They have 230,000 developers in their community, adding 700-800 per day, with over 12,000 paying customers.
    • They’ve had top iPad (Bastion), music apps (Rdio) and some large mission critical line of business apps.
    • What’s special about their platform is that you can target iOS, Android, and Windows Phone, share C# code across  all those platforms, and still deliver a native experience.
    • Nat say’s they’re the overnight success that took ten years to prepare, referencing the ten years they took to build Mono.

  • (03:20) Xamarin’s value proposition and customer base

    • Kevin asks which of their value propositions (.NET based development, cross-platform development) resonates more with users.
    • Nat says that many developers are initially attracted by C# development, although that’s not always the case (referencing an internal app at GitHub written by Objective-C developers who just liked sharing code between platforms).
    • Nat says there’s no real way to be a mobile developer now without having a cross-platform strategy – iOS might have looked like the only platform that mattered a few years ago, but now Android is more popular and Windows Phone is growing in popularity.

  • (04:47) Code reuse strategy

    • Kevin asks how the code reuse happens, since these are true native applications.
    • Nat talks about different cross-platform strategies and says that they don’t believe in write once, run anywhere.
    • With Xamarin, you separate the backend and UI code and write specific UI code for each platform, although you still write it in C#.
    • Rdio has over 150,000 lines of code which are shared between iOS, Android and Windows which covers networking, caching, authentication, etc.

  • (07:55) First big announcement: Joseph Hill announces support for building for iOS applications in Visual Studio.

    • Nat says that you can have one Visual Studio solution targeting iOS, Android and Windows Phone, and step through the code with the full debugging support you’re used to.
    • How does the Mac support work?
      • Scott K asks if this means that you have to run Visual Studio on a Mac. Nat says that’s not necessary, you just need to pair your Visual Studio instance with a Mac – it just needs to be on the network somewhere. That’s required both to be able to sign releases and to meet Apple’s license terms.
      • Jon asks if this would work with a Mac Mini, and Nat says that’s a popular option.
      • Scott K asks about a "Mac in the cloud" option; Nat says they’re not planning that.
      • Kevin asks if several developers could share one Mac. Nat says that Apple’s requirement is that each developer is supposed to have a license, and Joseph says that the Apple toolchain is build for single user rather than server support.
      • Jon ask if he can start playing with iOS support without having a Mac, Joseph explains that you can install and look around a bit, but you can’t build or deploy.
      • Kevin asks about the Interface Builder interaction.
      • Kevin asks if it was incredibly painful to set up this support for Visual Studio.

  • (16:14) Second big announcement: Nat announces the release of Xamarin Studio.

    • Xamarin Studio runs on OSX, Windows, and Linux.
    • It’s based on Mono Develop, but it’s a completely new user interface with a lot of great new features.
    • Visual Studio Express users can’t install extensions so Xamarin Studio allows them to do Xamarin development, also it’s what all Mac users will be using.
    • Kevin asks if it’s a fork of Mono Develop.
    • Kevin asks if Xamarin Studio is open source.
    • Jon asks how it was developed. Joseph says it’s still C# Mono code using GTK. Developers write Xamarin Studio in Xamarin Studio.
    • K. Scott asks if you can target non-mobile scenarios. Joseph says you can still target ASP.NET, console, class libraries, etc.
    • Kevin asks what happens to Mono Develop. Nat says it continues as an open source project, and they’ll contribute back to it as they develop Xamarin Studio.

  • (22:35) Xamarin as a Mono producer and consumer

    • Jon says it’s interesting watching the evolution of the Mono / Xamarin efforts as they’ve moved from supplying the Mono framework to being both building Mono and building a business on Mono.
    • Nat says it’s great working for a customer base rather than an opinionated crowd. "A really good signal that we’re doing good work is that people give us money for it."
    • Joseph talks about their model, explaining how their Xamarin business works well with their role as stewards of the Mono project.

  • (25:28) Third big announcement: Nat announces the Xamarin Component Store

    • Nat says they see developers solving the same problems over and over again, giving an example of a common requirement for a signature capture control.
    • The Xamarin Component Store is a library of pre-built components. Nat gives an example of an Azure Mobile Service component.
    • It works in both Visual Studio and Xamarin Studio.
    • Components include documentation, screenshots, and sample projects. Nat says it’s conceptually similar to NuGet, but gives you a lot better experience and makes it easier to get started.
    • There are a lot of component vendors who are contributing both free and paid components, and Xamarin has also contributed several based on their experience in supporting Xamarin developers.
    • Jon asks how they handle cross platform, native user interface with components.
    • Kevin asks how people can submit components to the store.
    • Nat says he thinks this will really be a compelling feature of their platform, since developers won’t have to build everything from scratch.
    • Kevin asks they handle purchases and vender payments.
    • Kevin asks if the components are curated.
    • Jon asks about component support for Android and Windows Phone.
    • Kevin asks if it’s possible to create Xamarin components using native Objective-C components. Nat says they support both Objective-C and Java code reuse.
    • Jon says the design on the Xamarin Component store website looks great and asks about Xamarin’s approach to design. Nat says that they’re selling a good design experience and design is an important part of that.
    • Kevin says he like hover screenshots, Nat says he really likes the hover menu control.

  • (39:35) Fourth big announcement: Nat announces the free Xamarin Studio Starter Edition

    • You can use Starter Edition to get started, build, and deploy applications.
    • Starter Edition is limited to 32KB of IL code.
    • Jon loves the idea of limiting the free edition based on compiled code size.
    • Kevin asks what kind of app will fit in 32KB. Nat says that using a lot of DLL’s will put you over the limit quickly, but images aren’t content. About 20% of the apps in the store would fit under the limit.
    • Joseph says they didn’t want to limit based on features. Jon talks about the frustration people see in Visual Studio version based feature limitations. Nat says pricing is hard; ultimately they want to get a lot of people using Xamarin and they think this is a good way to do that.

  • (44:53) Jon asks about support for languages other than C#.

    • Nat says they see people using F# and Java (using IKVM).
    • Joseph says that C# is their main focus – all the documentation is in C# – but they’re happy to see people using other languages.
    • Kevin asks for JavaScript support. Nat says they think it’s hard to build large scale apps in JavaScript.

  • (47:35) Nat talks about their upcoming developer conference.

    • The first two days are focused completely on training.
    • The second two days feature some great talks by community leaders, user interface designers, and more. The entire team will be on hand to answer questions.

Show Links:

You might also like...



Why not write for us? Or you could submit an event or a user group in your area. Alternatively just tell us what you think!

Our tools

We've got automatic conversion tools to convert C# to VB.NET, VB.NET to C#. Also you can compress javascript and compress css and generate sql connection strings.

“Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.” - Brian Kernighan