Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Eindhoven Mobile Development Meetup

Eindhoven Mobile Development Meetup

Slides used during the first Eindhoven Mobile Development Meetup.

Chris Key

March 02, 2016
Tweet

More Decks by Chris Key

Other Decks in Programming

Transcript

  1. During the meetup u Our first meetup. u We love

    to facilitate and like the group to contribute. u Feel free to ask questions and to interact with each other u Feedback and Ideas are welcome u #EMDM u Keep your mobile phone on
  2. First Meetup u Short Introduction u Overview Mobile Development Landscape

    2016 u Break u Mobile app development lifecycle u End, recap u Drinks
  3. Introduction Luc de Bruijn Practice Manager Open Circle Chris Key

    Mobile Developer Open Circle Stephan van Stekelenburg Mobile Developer Independent
  4. Introduction u Facilitated by Open Circle Solutions u Three units:

    u Java Open Source u Mobile Development u Big Data/Data Science u Product development/Open Source Projects u Average of 14 years of experience in consultancy and business critical applications.
  5. Background Mobile Team u Our Mobile developers have worked on

    mobile solutions in the B2C, B2B and B2E area’s. u Clients include large enterprises from different industries but also lean startups. u We focus on Xamarin for development u Our Mobile developers have developed several products internally. Both for developing new technology skills as well as new business models.
  6. Why a meetup? u We all have different/same challenges at

    our work. u Technical challenges/choices u App Lifecycle Management u Tooling u Business and IT awareness u Share experiences u Share ideas u Share best practices u Broad field of mobile development, what do we pick?
  7. First Meetup u Short Introduction u Overview Mobile Development Landscape

    2016 u Break u Mobile app development lifecycle u End, recap u Drinks
  8. iOS App Android App Windows App iPhone iPad Apple watch

    Apple TV Phones Tablets Smart Watches Smart TV’s Car systems Phones Tablets Desktop Xbox Holo-lens
  9. What platforms to support? u Depends on project u Depends

    on users u Depends on region u Depends on budget u Not necessarily all at once
  10. Types of development u Native u iOS SDK’s u Android

    SDK’s u Windows SDK’s u Hybrid u PhoneGap u Sensha u Cordova u Appcelerator u Ionic u Many, many more… u Web Apps u HTML 5
  11. Native development u SDK (Software development kit) provided by Google,

    Apple or Microsoft u Specific per platform u Tooling u Language(s) u Controls u UI Guidelines u Interaction Guidelines u Entire code base per platform
  12. Hybrid development u Third party tools that work with platform

    SDK’s u One language u Can write on all platforms, building requires specific OS u Share resources u Write logic one time
  13. Pro’s Native - Performance - Device API’s - Support -

    Look and feel Hybrid - Cross platform - Write once * - Use one language / tool - Access to device Web - Little development needed - Control
  14. Con’s Native - Write / maintain multiple times - Different

    approach - Different language - Can be expensive to built everything multiple times Hybrid - Performance - Write once (fix everywhere) - Look and feel - Scripting - Testing more difficult Web - Not an app - No offline support - No (or limited) access to device
  15. Anything you can do in Objective-C, Swift or Java can

    be done in C# and Visual Studio with Xamarin
  16. Xamarin’s Unique Approach Shared app logic, platform-specific UI, all in

    C# Shared App Logic in C# iOS C# UI Android C# UI Windows C# UI Shared App Logic § Platform-specific UI code in C# § Shared app logic code in C# § Fine-grain control over the app user interface § Good for apps with sophisticated UX requirements (complicated gestures, animations, design)
  17. Native Performance Xamarin.iOS does full Ahead Of Time (AOT) compilation

    to produce an ARM binary for Apple’s App Store. Xamarin.Android takes advantage of Just In Time (JIT) compilation on the Android device.
  18. Completely up-to-date with device OS releases u Always up-to-date with

    Apple and Google API releases. u Track record of offering same-day support: iOS 5, iOS 6, iOS 6.1, iOS 7,iOS 7.1, iOS 8 and iOS 8.x releases. u The only cross-platform solution with support for the Google Glass SDK, Android Wear, Amazon Fire TV and Apple Watch.
  19. First Meetup u Short Introduction u Overview Mobile Development Landscape

    2016 u Break u Mobile app development lifecycle u End, recap u Drinks
  20. First Meetup u Short Introduction u Overview Mobile Development Landscape

    2016 u Break u Mobile app development lifecycle u End, recap u Drinks
  21. Business goals & strategy User Experience and Design Technical architecture

    AppStore optimization Advertisement Social media Development Automated testing Continuous integration / delivery Beta release management Deployment OS / platform updates Business analytics and insights Feedback collection Monitoring
  22. What to do next? u Business Goals & Product Strategy

    u B2B vs B2C vs in-house u Concepts and Research u User Experience Design u Technical Architecture
  23. More choices to make u Which platforms? u What form

    factors? u Disconnected scenarios u Specific device capabilities
  24. Silo Approach Build App Multiple Times iOS App Android App

    Windows App Swift / Objective-C XCode Java Android Studio C# Visual Studio
  25. Xamarin’s Approach Native with Code Sharing Shared App Logic iOS

    C# UI Android C# UI Windows C# UI Platform Specific Native iOS App Native Android App Native Win App
  26. Xamarin’s Forms Approach Native with Code Sharing Shared App Logic

    Xamarin.Forms Platform Specific Native iOS App Native Android App Native Win App
  27. Biggest Mobile Quality Challenges? u Device Fragmentation u App Complexity

    u Fast Release Cycles u Short & Volatile User Sessions u High Mobile User Expectations
  28. Thousands of iOS and Android APIs Public web APIs Backend

    integrations Third party libraries Memory, CPU and network constraints App Complexity
  29. Mobile Testing Options Long Cycles Rapid Iterations High Test Realism

    Simplistic Tests Beta Testing Manual Testing Automated UI Testing Unit Testing
  30. “ ” If you’re not using ASO to increase your

    app’s search ranking, you’re missing out on the largest discovery channel available to your app. SOMEONE CLEVER 63% (iOS) of app customers report browsing in the app store to discover new apps.
  31. AppStore Optimization u Description is important u Carefully pick your

    keywords u App reviews vs developer feedback u Leverage Store specific options to promote your app u Localize your AppStore listings
  32. App Maintenance u OS / Platform updates or new releases

    u Updates to libraries u Support for new devices and device families (think wearables) u Bug fixes
  33. Monitoring and Feedback u App Usage Insights u App Content

    Management u Who owns / updates in-app content? LaunchKit Review Monitor
  34. First Meetup u Short Introduction u Overview Mobile Development Landscape

    2016 u Break u Mobile app development lifecycle u End, recap u Drinks
  35. Future meetups u More presentations? u Real world cases? u

    Workshops? u Interactive sessions u Hackathons u Social meetups u Feedback
  36. Contact Information Luc de Bruijn Open Circle Solutions [email protected] @ldbruijn

    Chris Key Open Circle Solutions [email protected] @chriskeynl Stephan van Stekelenburg Independent Stephan.van.stekelenburg@g mail.com @stephanvs