12.07.2015 Views

Key Strategies for Mobile Excellence

Key Strategies for Mobile Excellence

Key Strategies for Mobile Excellence

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Power, Speed and Quality<strong>Key</strong> <strong>Strategies</strong> <strong>for</strong><strong>Mobile</strong> <strong>Excellence</strong>


Introduction to <strong>Mobile</strong>Post-PC devices are the fastest growing and most disruptive technological innovation ofour time. Smartphone adoption is happening ten times faster than the PC boom of the80s, two times faster than the internet boom of the 90s, and three times faster than therecent social networking explosion 1 . Smartphone shipments eclipsed PC shipments inless than two years, and started outselling PCs two to one in early 2012 2 . Tablet growthis happening at an even faster pace, with iPad adoption outpacing the iPhone’s growthrate three to one 3 .<strong>Mobile</strong> software is enabling a new generation of context-aware applications that werenot possible in the pre-mobile world, trans<strong>for</strong>ming customer relationships and businessprocesses. Your smartphone is always with you: it knows where you are, it has access to awealth of personal and corporate data sources, and it drives moreBy 2016, 70% of themobile work<strong>for</strong>ce willhave a smartphone,and 90% of enterpriseswill have two or moreplat<strong>for</strong>ms to support 5communication engagement than previous online methods—97%of text messages are read vs 15% of email 4 . Successful businessesare creating mobile-unique experiences to enhance productivityand enable new kinds of engagement—from redefining retail tomaking the full power of a company’s backend computing infrastructureavailable to employees anywhere.The impact on business is profound. Facebook experienced a 54%year-over-year growth in mobile active users, which account <strong>for</strong>30% of its year-over-year revenue growth 6 . U.S. mobile commerce is now growing nearlythree times faster than transactions from desktop PCs 7 .Companies that embrace mobility today have a vital opportunity to expand the valueand reach of their business, while those that are slow to act will lose relevance as moreagile competitors jump ahead.1


Introduction to <strong>Mobile</strong>Users Demand Native App ExperiencesWhether accessing past order history on a sales call or checking the schedule to catchthe next train, users expect mobile software to make contextually-relevant in<strong>for</strong>mationaccessible instantly, in a <strong>for</strong>mat that takes full advantage of the device’s capabilities and<strong>for</strong>m factor. Applications that can’t fulfill a desired function promptly and intuitivelysimply don’t get used.There are many factors that contribute to whether or not users engage with an app,including per<strong>for</strong>mance, reliability, design, and ease of use. In all of those areas, a fullynative application has significant advantages over non-native implementations.Defining Native: Three Important App Characteristics1. Native applications are built with standard, native user interface controls in amanner that fully con<strong>for</strong>ms with each plat<strong>for</strong>m’s design conventions.2. Native applications offer optimal per<strong>for</strong>mance, leveraging plat<strong>for</strong>m-levelhardware acceleration to deliver unmatched responsiveness.3. Native applications have access to the full spectrum of functionality exposedby the underlying plat<strong>for</strong>m and device, including plat<strong>for</strong>m-specific capabilitiessuch as stylus support and face tracking.Device plat<strong>for</strong>m vendors are fiercely engaged in a battle over market share. What isat stake here is not just today’s smartphone and tablet revenue. The battle is overcapturing a vast digital economy that will be conducted on devices used in the livingroom, workplace, car, and even as apparel as new wearable device categories emerge.This intense competition between plat<strong>for</strong>m vendors is greatly accelerating innovation—devices are becoming faster and smarter, with vendors adding differentiating capabilitiesat an astonishing pace. Businesses that are quick to integrate these new capabilitiesin their customer interactions and business processes command a significantcompetitive advantage.Native iPad app <strong>for</strong>Kimberly-Clark’sfield sales team, builtusing Xamarin2 <strong>Key</strong> <strong>Strategies</strong> <strong>for</strong> <strong>Mobile</strong> <strong>Excellence</strong>


Introduction to <strong>Mobile</strong>The Diverse Device LandscapeThe mobile computing landscape is heterogeneous and is far more fluid and fragmentedthan the the prior PC era. From 2009 to 2012, Android vaulted from 4% smartphone marketshare to a whopping 66%. While Android dominates in device volume, Apple remains kingin user engagement with iOS users spending over twice as much time on device 8 .In order to <strong>for</strong>mulate a sustainable mobile strategy that will outlast the latest trends,companies need a cross-plat<strong>for</strong>m approach that enables them to take the high groundin the escalating plat<strong>for</strong>m wars.Global Smartphone Market Share By Plat<strong>for</strong>mSource: Gartner100%Share of Global Unit Sales90%80%70%60%50%40%30%20%SymbianOtherMicrosoftBlackberryAppleAndroid10%0%Q32009Q42009Q12010Q22010Q32010Q42010Q12011Q22011Q32011Q42011Q12012Q22012Q32012Q42012Q12013Current Cross-Plat<strong>for</strong>m ApproachesBecause the mobile device landscape is heterogeneous and highly dynamic, companies arefaced with the challenge of reaching multiple mobile operating systems with a single app.Un<strong>for</strong>tunately, current approaches to cross-plat<strong>for</strong>m mobile development have given thewhole concept a bad name. Let’s take a moment to examine the problems with currentapproaches.3


Introduction to <strong>Mobile</strong>Write Apps Three TimesAmazingly, one of the most commontechniques used by companies today tobuild mobile apps <strong>for</strong> multiple mobiledevice categories is to rewrite the appfrom scratch <strong>for</strong> eachThe overhead ofthis approachslows innovationwhich hurts bothbusinesses andend usersvendor’s mobile operatingsystem.iOSAppAndroidAppCompanies taking this“vendor-specific silo”Objective-CJavaapproach to mobileXCodeEclipsedevelopment have tocope with separatelanguages and tools, different teams with different expertise, and thefriction of having to implement every feature multiple times. If they want to support anyother emerging device plat<strong>for</strong>m—such as Samsung’s Tizen—they’ll have to replicate theentire app again. Building applications in each plat<strong>for</strong>m’s language and toolset comesat a great cost.The “Magic Box” ApproachAnother method taken by many crossplat<strong>for</strong>mframework vendors is thewrite-once-run-anywhere (WORA) approach.The idea of WORA appdevelopment is that youwrite your app once, in asingle codebase, and thendrop it into a “magic box”which adapts the app tothe operating system and<strong>for</strong>m factor of each device.This approach is familiar topeople who have experience with Adobe Air,Java SWING, and other cross-plat<strong>for</strong>m toolkits.Abstractionframeworks can’texpress the patternsand variations ofeach plat<strong>for</strong>m’sdesign languageParticularly with mobile, users rely on plat<strong>for</strong>m-specificstylistic cues to guide their interactionswith software. These cues are strippedin apps built with “Magic Box” tools. The resultis a disonnant, lowest common denominatoruser experience that threatens user adoption and puts the business objectives behindthe app project at risk.WindowsAppC#Visual Studio4 <strong>Key</strong> <strong>Strategies</strong> <strong>for</strong> <strong>Mobile</strong> <strong>Excellence</strong>


Xamarin’s Unique ApproachOverviewXamarin is redefining cross-plat<strong>for</strong>m development and enabling the best of bothworlds—providing the advantages of native UI, access to device features, and nativeper<strong>for</strong>mance coupled with the time-to-market advantages of code sharing and reuse.Companies that build mobile software today with Xamarin achieve cost-effective crossplat<strong>for</strong>mdevelopment and have the flexibility to handle any app use case and userexperience requirement.Xamarin’s new model <strong>for</strong> cross-plat<strong>for</strong>m development:• Accelerate time to market: Xamarin enables significant code reuse, reducing thetime and overhead of producing rich applications <strong>for</strong> multiple plat<strong>for</strong>ms.• Start now with existing teams: developers who are at home with C# and VisualStudio are productive with Xamarin from day one. There’s no need to learn a newprogramming language or hire developers with specialized expertise.• Engaging, native experiences: build rich applications that deliver optimal per<strong>for</strong>manceand leverage every last inch of functionality exposed by the underlyingplat<strong>for</strong>m and device.• Integrate with existing enterprise architecture: leverage .NET’s extensiveframework of libraries <strong>for</strong> calling web services and interacting with data sources,and share the same application logic written in C# across client and server.“The results from our new field sales app are phenomenal—our salespeople love the app and are able to engage customers and closesales more effectively. <strong>Key</strong> to the app’s success is the beautiful, fastuser experience made possible by Xamarin. ”Kim MacDougall | Senior Capability Manager5


aaaXamarin’s Unique ApproachNative CapabilitiesIf you can do it inObjective-C andJava, you can do itin C# with XamarinXamarin apps look native because they are native. Through our unique binding technology,developers have complete access in C# to all of the same APIs and user interfacecontrols used to build iOS, Android and Mac apps in the plat<strong>for</strong>m-specificlanguages. The full feature set of the underlyingplat<strong>for</strong>m is exposed, including capabilities like face tracking,calendar integration, NFC and Core Bluetooth—providingsupport <strong>for</strong> any app use case or user experience requirement.Xamarin’s binding technology makes it possible <strong>for</strong> Xamarinto quickly deliver support <strong>for</strong> new features as they are introduced in the device operatingsystems. Xamarin released updates <strong>for</strong> iOS 5.0, iOS 6.0, and iOS 6.1 all within 12hours of their public release—providing full support <strong>for</strong> new plat<strong>for</strong>m capabilities suchas PassKit and full compatibility with new device features such as the larger screen sizeon the iPhone 5. In the highly competitive mobile application landscape, users increasinglyexpect apps to support the latest features on day one. With Xamarin, you neverhave to worry about getting left behind.Reach 2.6 Billion Devices with Existing Teams and CodeXamarin provides a frictionless glide path <strong>for</strong> migrating existing C# skills, teams, toolsand code to the world’s most popular mobile plat<strong>for</strong>ms—making it possible to use C#to reach 2.6 billion devices. Companies that transitiontheir existing .NET teams to Xamarin achievemobile productivity within a matter of days.Xamarin makes it easy <strong>for</strong> any C# developerto become a mobile developer, eliminatingthe need to staff multiple,plat<strong>for</strong>m-specific teams.Companies that initially built appsin plat<strong>for</strong>m-specific languagesare now turning to Xamarin asa scalable solution <strong>for</strong> achievingbroad reach across plat<strong>for</strong>mswithout sacrificing native user experiencesand per<strong>for</strong>mance. This combinationof rich, fully native developmentand extensive code sharingacross device plat<strong>for</strong>ms is not possiblewith any other cross-plat<strong>for</strong>m solution.Xamarinand C#6 <strong>Key</strong> <strong>Strategies</strong> <strong>for</strong> <strong>Mobile</strong> <strong>Excellence</strong>


Xamarin’s Unique ApproachNative UINative UINative UIThe Xamarin ApproachWrite apps entirely in C# withaccess to 100% of each plat<strong>for</strong>m’sAPIsDeliver a device-specific nativeuser interface while sharing anaverage of 75% app logic codeacross device plat<strong>for</strong>msShared App LogicCompile apps as nativebinaries <strong>for</strong> fast per<strong>for</strong>manceCode Sharing AdvantagesWhen building software with Xamarin, developers create distinct native user interfaceswith plat<strong>for</strong>m-specific elements, while sharing their application logic—such as input validation,web service calls, database interactions, and backend enterprise integrations—across operating systems. Xamarin developers share an average of 75% of their codeacross plat<strong>for</strong>ms. This means that all of the code below the user interface layer is writtenonce and reused—reducing the surface area <strong>for</strong> testing and leaving less room <strong>for</strong> bugs.Xamarin also gives developers a practical path <strong>for</strong> extending the reach of their existing.NET skills and code to modern mobile environments. Companies that have existingdesktop and web applications built with C# use Xamarin to bring much of the underlyingapplication logic to Android and iOS. Xamarin makes it possible <strong>for</strong> organizationsto leverage their existing C# investment instead of starting over from scratch.Xamarin is a particularly compelling choice <strong>for</strong> developers who want to build mobilefrontends <strong>for</strong> existing ASP.NET applications. In addition to supporting all of the nativecontrols exposed by the underlying plat<strong>for</strong>m, Xamarin also makes it easy <strong>for</strong> developersto build hybrid applications that display HTML content in native web view controls. It’seven possible to use ASP.NET’s Razor templating engine in a Xamarin mobile applicationto generate HTML on the client. In some cases, it’s possible to share the same exact datamodels between the frontend and the backend.This immensely powerful blend of native plat<strong>for</strong>m functionality and .NET libraries offersdevelopers the perfect toolset, accelerating time-to-market and enabling amazing userexperiences.7


Xamarin Plat<strong>for</strong>mOverviewXamarin offers a compelling blend of powerfuldeveloper tools, efficient cross-plat<strong>for</strong>mcode portability, full access to the underlyingdevice plat<strong>for</strong>m APIs, and a rich ecosystemof third-party libraries. Those characteristicsmake Xamarin a great choice <strong>for</strong> modernmobile developers who want to build successfulapplications that reach users on everymajor plat<strong>for</strong>m.Rich IDE SupportXamarin Component StoreVisual StudioXamarin StudioNative Compilation Technology<strong>for</strong> Optimal App Per<strong>for</strong>manceWith support <strong>for</strong> both Visual Studio and Xamarin’sown Xamarin Studio IDE developershave everything they need to design, develop,debug and deploy great mobile apps.Xamarin integrates with Visual Studio, makingit possible to build iOS and Android apps inMicrosoft’s preeminent development environment.Visual Studio users finally have thefreedom to write code <strong>for</strong> all major plat<strong>for</strong>msunder one roof—using the programming language they know and love—with convenientaccess to Microsoft’s ecosystem of extensions and tools like Resharper and Team FoundationServer.Xamarin also comes with Xamarin Studio, a powerful cross-plat<strong>for</strong>m IDE <strong>for</strong> mobile developmenton Mac and Windows <strong>for</strong> developers who do not use Visual Studio. XamarinStudio combines a strong foundation of general-purpose C#programming capabilities, specialized mobile developmentfeatures, and tight integration with Xamarin’s frameworks andbuild toolchain. The result is an IDE tailored <strong>for</strong> building appswith Xamarin, offering a good balance of power, extensibility,per<strong>for</strong>mance, and ease of use.Native SDK Bindings <strong>for</strong>iOS, Android & MacMonoCross-Plat<strong>for</strong>m Implementation of .NETSuperior tools increaseagility and enabledevelopers to focuson innovation andquality—great toolslead to great appsXamarin’s IDE support includes a built-in design surface <strong>for</strong>building Android user interfaces and a new iOS designer <strong>for</strong>building layouts and configuring transitions between views.These design tools leverage the same conventions and file <strong>for</strong>mats as the design toolssupplied by Apple and Google. They enable drag-and-drop user interface constructionand are tightly integrated with the Xamarin Component Store and the rest of the Xamarintoolset.8 <strong>Key</strong> <strong>Strategies</strong> <strong>for</strong> <strong>Mobile</strong> <strong>Excellence</strong>


Xamarin Plat<strong>for</strong>mXamarin Studio and Xamarin’s Visual Studio extensions include advanced debuggingtools that work across the full spectrum of supported plat<strong>for</strong>ms and environments.Developers per<strong>for</strong>m interactive debugging on an application that is running in theAndroid emulator, the iOS simulator, or even directly on hardware. Xamarin’s debuggersupports all of the modern features that users expect—setting breakpoints, inputtingwatch expressions, and accessing local scope variables at runtime. Xamarin also supportsa number of advanced debugging features, such as conditional breakpoints.Component StoreThe Xamarin Component Store is a searchable catalog of free and paid componentsthat add beautiful UI controls, libraries, and 3rd party web services to apps with afew lines of code. If an application requires complex features like bar-code scanningor a sophisticated user interface control like a signature pad, developers can simplyinstall the desired components and then focus on wiring them together with their ownapplication-specific glue code.9


How it WorksApp ArchitectureThe best practice when building mobile applications with Xamarin is to isolate coreapplication logic in a portable layer of plat<strong>for</strong>m-neutral code that uses .NET frameworksand APIs. The developer then builds a separate user interface <strong>for</strong> each plat<strong>for</strong>m on topof the shared code, using native controls and native plat<strong>for</strong>m APIs that Xamarin exposesin C#. When done properly, only a small amount of plat<strong>for</strong>m-specific code is typicallyneeded to implement the user interface behavior <strong>for</strong> each plat<strong>for</strong>m and bind it to thefunctionality from the shared library.Structuring a Xamarin application <strong>for</strong> maximum code reuse is easy. There are a numberof well-understood design patterns that developers can adopt to ensure that their userinterface layer is optimally decoupled from application logic. Some common approachesinclude Model View ViewModel (MVVM) pattern endorsed by Microsoft or the more traditionalModel View Controller (MVC) pattern.Independent analyses per<strong>for</strong>med by Xamarin customers offer insight into the amountof code that can typically be shared across plat<strong>for</strong>ms when building applications withXamarin. Using an automated tool that measures code reuse, developer Frank Kruegerdetermined that the Android, iOS, Windows RT and Mac OS X ports of his sophisticatediCircuit application share between 70 and 88% source code across plat<strong>for</strong>ms.Code Sharing Statistics from the iCircuit AppApp LogicUser Interface Code11


How it WorksFull API coverageXamarin provides access to 100% of the native APIs available on each mobile plat<strong>for</strong>m,ensuring that developers aren’t confined to an arbitrary subset of features. The C#bindings provide 1:1 mappings to native APIs, while adding support <strong>for</strong> features likeLINQ, delegates, events, and other idioms C# developers expect.Fully ExtensibleThe .NET base class libraries offer support <strong>for</strong> a wide range of common operations,including networking, data serialization and persistence, file I/O, text processing,threading, and more. Between portable .NET libraries and plat<strong>for</strong>m-specific librarieswith C# bindings, Xamarin application developers have access to an extraordinarily richecosystem of third-party code.The Xamarin Component Store makes a tremendous range of third-party libraries andSDKs available <strong>for</strong> drop-in adoption in Xamarin projects, but it’s also very easy to generateXamarin bindings <strong>for</strong> existing third-party Java and Objective-C libraries. Xamarinprovides tools, such as Objective Sharpie, that largely automate the process and generatehigh-quality bindings that are idiomatically copacetic with C#.There are also a growing number of libraries that provide universal C# abstraction layersover plat<strong>for</strong>m-specific capabilities. Some examples include PushSharp—a cross-plat<strong>for</strong>mlibrary <strong>for</strong> push notification—and Xamarin’s own Xamarin.<strong>Mobile</strong> library—which providescross-plat<strong>for</strong>m support <strong>for</strong> features like geolocation and the system address book.“Xamarin offers the best of all worlds. We deliver per<strong>for</strong>mance-drivennative apps that, until Xamarin, were only possible with Objective-Cand Java. Sharing over 50,000 lines of code across plat<strong>for</strong>ms givesus more time to spend on great user experiences. ”Matt Crocker | Senior Software Engineer12 <strong>Key</strong> <strong>Strategies</strong> <strong>for</strong> <strong>Mobile</strong> <strong>Excellence</strong>


How it WorksProduction-Proven Technology <strong>for</strong> Mission-Critical AppsXamarin is built on top of Mono—an open source implementation of the .NET runtimeand framework class libraries, and a C# compiler. Mono is highly mature with over adecade of innovation and successful production use in a variety of environments, fromembedded devices to enterprise backends. Xamarin’s advanced compiler technologyuses highly sophisticated techniques to ensure optimal per<strong>for</strong>mance and reliability whilebringing the power and stability of Mono to iOS, Android, and Mac devices.High Per<strong>for</strong>mance and Low Memory FootprintThe Mono runtime—combined with Xamarin’s advanced compilation technology—offersexcellent per<strong>for</strong>mance. Xamarin applications handle computationally-intensive operationsat speeds comparable to that of iOS and Android applications built with Objective-Cand Java. In fact, internal Xamarin benchmarks suggest that Xamarin C# code can oftenoutper<strong>for</strong>m equivalent Android Java code.Xamarin provides rich support <strong>for</strong> threading and parallelism, allowing developers to buildapplications that utilize the limited processing power of mobile devices as effectivelyas possible. By using the standard user interface controls supplied by the underlyingplat<strong>for</strong>m, applications built with Xamarin achieve optimal responsiveness and benefitfrom plat<strong>for</strong>m-level support <strong>for</strong> hardware-accelerated rendering.Xamarin’s Compilation TechnologyUnlike other cross-plat<strong>for</strong>m frameworks, Xamarin apps are compiled as native binaries,not interpreted. This results in high per<strong>for</strong>mance apps under even the most demandingscenarios like complex data visualizations and high frame-rate simulations.Xamarin.iOS uses Ahead of Time (AOT) compilation, which preemptively compiles anapplication down to a native ARM executable during the build process. When a C# applicationis built with full AOT compilation, the output is an architecture-specific binaryexecutable that contains no bytecode and does not require JIT compilation when itruns. The Xamarin.iOS compilation toolchain uses the LLVM optimizing compiler, thesame compiler that Apple ships in the official iOS SDK. The user’s application code, the13


How it Workscore of the Mono runtime, and the frameworks and libraries on which the applicationdepends, are all statically compiled into the binary as native code. From Apple’s perspective,an iOS application built with Xamarin is just like any other native applicationthat runs on the plat<strong>for</strong>m.Android has its own runtime environment called Dalvik, which is used to execute conventionalJava-based Android applications. Much of Android’s plat<strong>for</strong>m-specific functionalityis made accessible through Java APIs that are tied to the Dalvik environment.Xamarin.Android applications use the Mono and Dalvik runtimes at the same time,allowing developers to take advantage of the full range of functionality offered by bothenvironments. Mono itself operates on Android much as it would in any other computingenvironment—it uses standard Mono JIT compilation. Fully transparent interactionbetween Mono and Dalvik is made possible by leveraging standard Java NativeInterface (JNI) calls. Android’s open plat<strong>for</strong>m model enables Xamarin to leverage the fullpower of Mono while providing deep interoperability with the plat<strong>for</strong>m’s native developmentstack. As a result, Xamarin applications run just like regular Java-based Androidapplications, but with full access to all of the functionality provided by Mono.“Our customers rely on National Instruments <strong>for</strong> their mission- criticalsystems, and we in turn rely on Xamarin to extend our capabilities tomobile devices. Xamarin enabled our engineering team to becomenative mobile developers almost overnight. ”David Fuller | VP, Application and Embedded Software R&D14 <strong>Key</strong> <strong>Strategies</strong> <strong>for</strong> <strong>Mobile</strong> <strong>Excellence</strong>


The Formula <strong>for</strong> <strong>Mobile</strong> <strong>Excellence</strong><strong>Mobile</strong> technology is reshaping the way that people connect, work, and play. It enablesnew kinds of customer engagement, makes distributed work<strong>for</strong>ces vastly more efficient,and further lubricaties the flow of data that serves as the lifeblood of our in<strong>for</strong>mationeconomy.Connected devices have implications <strong>for</strong> companies across theentire spectrum, not just those in the technology industry. Theimportance of mobile technology will continue to increase ashardware improvements and declining costs propel us into aworld where connectivity is present in everything around us.We’re at the start of a virtuous cycle where the growing pervasivenessof mobile integration is making mobile technologymore vital and indispensable, driving more adoption and moreintegration. No company can af<strong>for</strong>d to fall behind.Businesses in themodern mobile eranow have a solutionthat provides resiliencyagainst industrychanges, whileproviding the flexibilityto leverage theemerging capabilitiesof top mobile devicesCompanies that have adopted a Xamarin-based mobilestrategy are winning, rapidly delivering quality, plat<strong>for</strong>m-specificexperiences to customers, employees and partners—appsthat take full advantage of the latest capabilities across a heterogeneousdevice landscape. Enterprises that are still <strong>for</strong>mulating their mobile strategycan rely on Xamarin to accelerate their ability to move from strategy to this level ofmobile excellence.References1http://blog.flurry.com/bid/88867/iOS-and-Android-Adoption-Explodes-Internationally2https://intelligence.businessinsider.com/smartphones-outpacing-pcs-two-to-one-2012-113http://www.slideshare.net/kleinerperkins/kpcb-internet-trends-20134https://www.digitalmarketingassoc.com/social-media/closer-mobile-marketing/5http://www.gartner.com/technology/research/symposium-keynotes/http://www.crn.in/news/software/2012/10/26/gartner-two-thirds-of-enterprises-will-adopt-mobile-device-management-solution6http://techcrunch.com/2013/05/01/facebook-sees-26-year-over-year-growth-in-daus-23-in-maus-mobile-54/(Facebook Q1 2013 earnings)6http://au.businessinsider.com/mobile-is-taking-more-e-commerce-2013-58http://www.netmarketshare.com/15


About XamarinXamarin was founded in 2011 by Nat Friedman and Miguel de Icaza,technology veterans with a successful track record in enterprisesoftware. The company employs a passionate team of 70 highlyskilled software engineers, has a robust training and developer certificationprogram, and world-class support and documentation.Xamarin’s worldwide partner network is comprised of over 50 globalsystem integrators, national and regional consulting companies, anddigital agencies who have deep experience building enterprise andconsumer apps with Xamarin.Fulfilling the promise of cross-plat<strong>for</strong>m mobile development withoutcompromises, Xamarin’s breakthrough products have attracted acommunity of over 350,000 developers. Xamarin today has over17,000 paying customers, including Microsoft, Kimberly-Clark,Clear Channel, Schindler, McKesson, Bosch, Halliburton, Cognizant,GitHub, Rdio, and WebMD.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!