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

Apps Dev 101 - Bristol Uni

Apps Dev 101 - Bristol Uni

Presentation as part of the Guest lecture series at Bristol University as part of the Computer Science year 2 and Masters

Scott Alexander-Bown

November 26, 2014
Tweet

More Decks by Scott Alexander-Bown

Other Decks in Technology

Transcript

  1. Apps Dev 101
    Bristol Uni: Nov 2014
    Scott Alexander-Bown
    @scottyab
    Slides: https://speakerdeck.com/scottyab

    View Slide

  2. Scott Alexander-Bown
    ●  Senior Developer @intohand (Bath)
    ●  Co-author Android Security Cookbook
    ●  Co-founder SWmobile meetup group
    ○  meetup.com/swmobile

    View Slide

  3. 101
    •  Why I love app dev
    •  Getting start
    •  Development
    •  Ecosystem
    •  Development environment
    •  Further reading / resources
    •  Alternatives to native
    •  Testing
    •  Tips
    •  Building apps
    •  Getting hired

    View Slide

  4. What I love about app development
    •  App/mobile is now mainstream
    •  Wearables
    •  Embedded
    •  New stuff
    •  Skills
    •  Devices
    •  Yearly update of mobile platforms
    •  Software that’s used by millions world wide
    •  No barriers and lots of cloud API’s

    View Slide

  5. Fan boy?
    FYI: That’s not me

    View Slide

  6. • Who is your audience?
    • What problem are you solving?
    Getting started…

    View Slide

  7. Design

    View Slide

  8. Sketch it

    View Slide

  9. Wire framing

    View Slide

  10. App development

    View Slide

  11. Focus: iOS & Android

    View Slide

  12. Android in 60 seconds
    •  Open source
    •  Linux based
    •  Java
    •  Permissions
    •  Resources framework
    o  i.e build for variety
    •  Side load apps

    View Slide

  13. Fragmentation???
    This. Is. Differentiation!!!

    View Slide

  14. What I love about Android

    View Slide

  15. Development Tools
    •  Eclipse - Android Developer Tools plugin
    •  Build system: Ant
    •  Android Studio
    •  Build system: Gradle
    •  Xcode
    •  *Required* Mac

    View Slide

  16. iOS in 60 seconds
    •  Objective C and Swift
    •  Mac (Mavericks)
    •  Xcode
    •  Storyboards

    View Slide

  17. Ecosystem
    http://www.idc.com/prodserv/smartphone-os-market-share.jsp
    *Global*
    Q2 2014:
    84.7% Android
    11.7% iOS
    2.5% Windows
    0.5% Blackberry
    0.7% other

    View Slide

  18. Ecosystem: Playstore
    •  $25 developer registration fee
    •  No approval
    •  Alpha and Beta distribution
    •  Staggered distribution
    •  Automated security testing/monitoring
    •  Alternative app stores

    View Slide

  19. Ecosystem: App Store
    •  $100 yearly developer fee
    •  Approval (not as bad as people say)
    •  Walled garden
    •  Beta (via Test flight)
    •  Paid apps do better

    View Slide

  20. Getting help / further reading
    •  Android docs, training & samples
    •  Androiddevweekly.com
    •  Videos
    o  Android course (Udacity - ud853)
    o  DevBytes (YouTube)
    o  ADiA (YouTube)
    o  Google IO (YouTube)
    •  Busy coders guide to Android
    o  by Mark Murphy

    View Slide

  21. Getting help / further reading
    •  iOS docs, training & samples
    •  http://developer.apple.com
    •  https://developer.apple.com/swift/blog
    •  Stanford iOS course
    •  WWDC videos

    View Slide

  22. Alternatives to Native

    View Slide

  23. •  Mobile web / Responsive web
    •  Cross platform
    •  PhoneGap / Cordova
    •  Html 5/js/css wrapped in web view
    •  Plugins (camera, gps etc)
    •  Xamarin (free for students)
    •  C#
    •  Compiled to Native
    Alternatives to Native

    View Slide

  24. Testing
    •  3G and Wifi
    •  Use emulators
    •  But use real devices
    •  Beta test
    •  Friends
    •  Family
    •  Helpful customers

    View Slide

  25. Testing
    •  Hardware
    o  Last year flagship
    •  Emulator
    o  GenyMotion.com
    •  Services
    o  Errorlytics - Crashlytics
    o  Crowd source bug testing - UTest.com
    o  Cloud based UI testing - TestDroid.com

    View Slide

  26. Moto G

    View Slide

  27. •  Who is your audience?
    •  What problem are you solving?
    •  Wire frame before coding
    •  Lock to portrait
    •  Invest in quality app icon (elance, odesk etc)
    •  Beta test on friends/family
    •  Integrate Crashlytics and Analytics (i.e Flurry)
    Wrap up and tips …

    View Slide

  28. Tip: Open source community

    View Slide

  29. Tip: Backend as a Service
    •  Login with facebook and/or Twitter
    •  User management
    •  Data storage
    o  save and sync data objects
    o  files (large files)
    •  Analytics
    •  Push messaging

    View Slide

  30. Tip: watch out for…

    View Slide

  31. Tip: Keep it simple

    View Slide

  32. Thanks for listening
    CC BY-SA 2.0 Kris Krug

    View Slide

  33. Q&A | Contact | Feedback
    ●  Slides: https://speakerdeck.com/scottyab
    ●  [email protected]
    ●  meetup.com/swmobile
    ●  github/scottyab
    ●  @scottyab

    View Slide

  34. How to get hired (IMO)
    •  Enthusiasm for mobile (and development)
    •  Example work (no excuses)
    •  Uni project
    •  Hack-a-thon
    •  Contribute to community
    •  Stackoverflow
    •  Github
    •  No bullshit!

    View Slide

  35. Android Win
    o  Device choice
    o  Customisation
    o  True background
    tasks
    o  NFC
    o  Resources
    framework
    iOS Win
    •  Limited devices
    •  UI consistency
    •  Users upgrade to
    latest OS
    •  Clients, Managers,
    Designers have/
    know them
    •  Paid apps do better
    Vs iOS

    View Slide