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

What it takes to build an app

What it takes to build an app

During a Summerschool at the Universiteit van Amsterdam I Introduced app development to students who were taking a course in programming. Most of them were new to the subject of programming, so I tried to give more background information instead of being technical.

B272216b76be8aacbfd11fad48196558?s=128

Ivo Jansch

July 05, 2016
Tweet

Transcript

  1. UvA Summerschool What it takes to build an app

  2. About Egeniq 2 “Smart apps for smart devices”

  3. Pathé Thuis App ‘App of the week’ at nu.nl 4.5

    (out of 5) stars at iCulture 3
  4. Pathé Thuis App - Guiding principles 4 Simplicity Do one

    thing right (watching movies) User friendly Intuitive Quality
  5. Pathé Thuis App - Guiding principles 5 Modern features Integrations

    Easier for user / harder for developer
  6. Pathé Thuis App - Guiding principles 6 Top content ‘Premium’

    look and feel
  7. 7

  8. 8 Newsletters Wallets Streaming Trailers Ratings Tickets User data Metadata

    DRM Reviews App CRM SEO Movie Windows Payments Vouchers
  9. 9 Graphical Design Interaction Design Functional Design Technical Design Security

    Hosting Maintenance Monitoring Marketing Sales Content Management Licensing Project App Review App APIs Performance Testing Multi Platform SCRUM
  10. Multi platform complexity 10 Platform ipad tv web xbox android

    ???
  11. The ‘What’ and the ‘Why’ Functional Design

  12. 12

  13. Functional Design WHY > WHAT 13

  14. Expectation Management 14

  15. Scenario’s, abstracting features 15 My rented movies Featured movies Featured

    movie collections Recommendations Popular movies
  16. The ‘How’ Interaction Design

  17. 17 “Design is not just what it looks like. Design

    is how it works.”
  18. 18 Frames of interaction Source: http://mattgemmell.com/2011/07/22/apps-vs-the-web/ 1 frame 2 frames

    3 frames
  19. Making it pretty Graphical Design

  20. This page intentionally left blank

  21. Under the hood Technical Design

  22. Abstractions 22 App Optimized API

  23. Architecture 23

  24. 24 Multi Platform Development - Crossplatform tools Instant Coffee

  25. Building the app Development

  26. Communication is key 26

  27. SCRUM Process at Egeniq 27 ‣ Concept leads to an

    estimate of amount of work ‣ Initial estimates form a budget ‣ Budget is used to develop the app ‣ Keeping an eye on budget, changes during the project are welcomed ‣ Deadline and budget are defined up front, functionality will be flexible Concept Estimate Project Budget
  28. SCRUM Process at Egeniq 28 ‣ Develop in multiple cycles

    (sprints) ‣ Each sprint allows project improvements, new ideas, changes in features ‣ The last couple of sprints each deliver a working product that is ‘app store ready’ ‣ While app is being reviewed, next sprint is executed Design Code Test Polish App Store Review Evaluate
  29. Development process 29 Develop Branch Feature Branch Code Commit Pull

    Request Code Review Merge New feature
  30. Social Coding 30

  31. A lesson from open source 31 Given enough eyeballs, all

    bugs are shallow - Eric S. Raymond
  32. Continuous Integration 32 ‣ Automatic builds ‣ Build validation ‣

    Build distribution ‣ https://buildozer.io
  33. Our responsibility as a developer ‣Respect user privacy ‣Collect only

    what you need ‣Be open about what you collect ‣Treat data responsibly ‣Write secure code ‣Follow common security best practices ‣Protect data (server, device, transport) ‣Don’t invent your own wheels (standards!) 33
  34. Making sure it works right Testing (QA)

  35. ‣QA process is integral part of process •Quality is flexible

    ‣Testing method & practices •Automated testing (Unit testing) •Manual testing •User Interface testing •Client environment testing (OS versions, hardware) 35
  36. Getting it live Deployment

  37. App Review 37 Automated checks Manual Review Reject Ready for

    Sale Automated checks Ready for Sale Automated checks tip: http://appreviewtimes.com
  38. Performance & Scalability - RTL Nieuws App Launch 38

  39. Performance & Scalability - RTL Nieuws App Launch 39 ‣

    News item had > 1 million TV viewers ‣ 40.000 installs on day 1 •30% of which in 5 minutes following news item ‣ ~ 100.000 apps installed in week 1 ‣ No 1 app store position for 16 days in a row ‣ Over 1.000.000 installs after a couple of years
  40. Predict Usage Patterns Everybody watches movies at roughly the same

    time Friday, Saturday after 20.30 Holidays 40
  41. Keeping it alive Maintenance

  42. 42

  43. 43

  44. You’re never alone Communities

  45. 45 Communities appsterdam.rs cocoaheads.nl dutchaug.org

  46. If you become a programmer A couple of tips

  47. 47 Passion

  48. Take It One Step At A Time

  49. Pick a new technology Explore Get Comfortable Master

  50. “Perfection is achieved, not when there is nothing more to

    add, but when there is nothing left to take away”  Antoine de Saint-Exupéry
  51. Shameless self promotion http://nwaysbook.com 51

  52. Inspiration 52 “Stay Hungry, Stay Foolish” Steve Jobs 2005 Stanford

    Commencement Address https://www.youtube.com/watch?v=UF8uR6Z6KLc
  53. Thank you! Questions? ivo@egeniq.com Ivo Jansch @ijansch