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

10 Years of iPhone - A Developer's Perspective

10 Years of iPhone - A Developer's Perspective

Let us take a small trip back in time. It is 2006. George W. Bush is president of the United States, and there are wars raging in quite a few countries in the middle east. There were rumors of an upcoming financial crisis. People were getting excited about the possibility of a rather unknown black senator called Barack Obama becoming president. And Apple was rumored to be ready to unveil a new cell phone.

This talk will take us back to 2006 to understand the world of software development back then, and to realize how much it has changed, for the best or, in some cases unfortunately, for the worst.

The speech of this presentation is available:
https://akos.ma/blog/12-years-of-iphone-a-developers-perspective/

Adrian Kosmaczewski

May 08, 2017
Tweet

More Decks by Adrian Kosmaczewski

Other Decks in Technology

Transcript

  1. 10 Years of iPhone
    A Developer's Perspective

    View full-size slide

  2. “When the Mac first came out,
    Newsweek asked me what I
    (thought) of it. I said: Well, it’s the
    first personal computer worth
    criticizing."

    View full-size slide

  3. "So at the end of the presentation,
    Steve came up to me and said: Is
    the iPhone worth criticizing? And I
    said: Make the screen five inches by
    eight inches, and you’ll rule the
    world.”

    View full-size slide

  4. iPhone
    • 128 MB RAM
    • 4 to 16 GB
    • 32-bit CPU
    • 412 MHz
    • 2.0 MP rear camera

    View full-size slide

  5. … the iPhone didn't support 3G, it
    didn't support multitasking, it didn't
    support 3rd party apps, you couldn't
    copy or paste text, you couldn't
    attach arbitrary files to emails, it
    didn't support MMS, it didn't support
    Exchange push email, it didn't have
    a customizable home screen…

    View full-size slide

  6. Official SDK Announcement

    View full-size slide

  7. 2007 2008 2009 2010 2011
    AAPL 12.25
    Revenue 24
    iPods 52
    Macs 7
    iPhone 1.1

    View full-size slide

  8. WWDC 2008
    Sold out in two months
    (first time!)

    View full-size slide

  9. "…in the first 95 days, 250,000
    people downloaded the iPhone SDK.
    25,000 developers applied, and
    4,000 were admitted in the
    program."

    View full-size slide

  10. iPhone OS 2.0 1/2
    • Interface Builder was a separate
    application from Xcode 3
    • No Instruments
    • No ARC: retain, release and
    autorelease were our friends!
    • No IBOutletCollection
    • No Storyboards
    • No Auto Layout

    View full-size slide

  11. iPhone OS 2.0 2/2
    • No Gesture recognizers
    • No Map views
    • No Unit testing (OCUnit / SenTest did
    not work with iPhone apps back then)
    • No Nitro JS engine
    • No Pull-to-refresh

    View full-size slide

  12. [UIImage imageNamed:]

    View full-size slide

  13. iPhone 3G
    • Same specs as first iPhone
    • 3G
    • GPS

    View full-size slide

  14. Dow Jones Crash

    View full-size slide

  15. iPhone Conference in Geneva

    View full-size slide

  16. 2007 2008 2009 2010 2011
    AAPL 12.25 19.34
    Revenue 24 32
    iPods 52 54
    Macs 7 9
    iPhone 1.1 11.6

    View full-size slide

  17. Cumulated iPhone sales: 12.7 M
    13'000 Apps in the App Store

    View full-size slide

  18. WWDC 2009
    Sold out in one month

    View full-size slide

  19. New Frameworks
    • MapKit.framework
    • CoreData.framework
    • ExternalAccessory.framework
    • GameKit.framework
    • MessageUI.framework
    • StoreKit.framework

    View full-size slide

  20. iPhone 3GS
    • 256 MB RAM
    • 600 MHz CPU
    • 3 MP rear camera with video
    • Up to 32 MB storage

    View full-size slide

  21. Officially supported until
    February 14th, 2014

    View full-size slide

  22. 2007 2008 2009 2010 2011
    AAPL 12.25 19.34 12.88
    Revenue 24 32 36.5
    iPods 52 54 54
    Macs 7 9 10.3
    iPhone 1.1 11.6 20.7

    View full-size slide

  23. Cumulated iPhone sales: 33.4 M
    100'000 Apps in the App Store

    View full-size slide

  24. iPhone OS 3.2
    • Gesture Recognizers
    • Universal Apps

    View full-size slide

  25. "Thoughts About Flash"

    View full-size slide

  26. Clause 3.3.1

    View full-size slide

  27. WWDC 2010
    Sold out in 8 days

    View full-size slide

  28. iPhone OS ➡ iOS

    View full-size slide

  29. New, New, New
    • Xcode 4
    • ARC
    • Objective-C Blocks
    • Grand Central Dispatch
    • Core Text
    • Multitasking
    • Retina Displays (@2x)
    • iAd

    View full-size slide

  30. New Frameworks:
    • CoreMotion.framework
    • AssetsLibrary.framework
    • CoreTelephony.framework
    • CoreText.framework
    • EventKit.framework
    • EventKitUI.framework
    • MobileCoreServices.framework
    • QuickLook.framework
    • iAd.framework

    View full-size slide

  31. New Features:
    • FaceTime
    • App folders
    • Retina display
    • Support for iPad
    • Game Center

    View full-size slide

  32. iPhone 4
    • A4 SoC
    • 32-bit CPU
    • 1 GHz
    • 512 MB RAM
    • Up to 32 MB storage
    • 0.3 MP front camera
    • 5 MP back camera

    View full-size slide

  33. Supported until iOS 7.1.2
    June 30, 2014

    View full-size slide

  34. Open Source
    • ASIHTTPRequest
    • JSONKit
    • InAppSettingsKit

    View full-size slide

  35. "App" Word of the Year

    View full-size slide

  36. 300'000 activations/day

    View full-size slide

  37. 2007 2008 2009 2010 2011
    AAPL 12.25 19.34 12.88 27.44
    Revenue 24 32 36.5 65.2
    iPods 52 54 54 50
    Macs 7 9 10.3 13.6
    iPhone 1.1 11.6 20.7 40
    iPad 7.5

    View full-size slide

  38. Cumulated iPhone sales: 73.5 M
    300'000 Apps in the App Store

    View full-size slide

  39. Mac App Store

    View full-size slide

  40. WWDC 2011
    Sold out in 12 hours

    View full-size slide

  41. iOS 5 1/2
    • Siri (only on the iPhone 4S)
    • The new Notification Center
    • iMessages
    • Newsstand
    • Reminders
    • Twitter integration

    View full-size slide

  42. iOS 5 2/2
    • Music application (formerly the "iPod"
    application)
    • Users can use the volume button to
    take pictures
    • Rich text formatting in mail messages
    • New basic photo editing features in
    Photos
    • Safari Reader mode
    • iCloud (replacing Mobile Me)

    View full-size slide

  43. New Frameworks
    • Accounts.framework
    • CoreBluetooth.framework
    • CoreImage.framework
    • GLKit.framework
    • NewsstandKit.framework
    • Twitter.framework

    View full-size slide

  44. iAd
    500'000 ➡ 300'000

    View full-size slide

  45. HP shuts off WebOS

    View full-size slide

  46. iPhone 4S
    • No tethering
    • Apple A5 SoC
    • 32-bit CPU 1 GHz
    • 0.3 MP front camera
    • 8 MP rear camera
    • Up to 64 GB storage

    View full-size slide

  47. 2007 2008 2009 2010 2011
    AAPL 12.25 19.34 12.88 27.44 48.47
    Revenue 24 32 36.5 65.2 108.3
    iPods 52 54 54 50 42
    Macs 7 9 10.3 13.6 16.7
    iPhone 1.1 11.6 20.7 40 72
    iPad 7.5 32

    View full-size slide

  48. Cumulated iPhone sales: 146 M
    Cumulated iPad sales: 40 M
    500'000 Apps in the App Store

    View full-size slide

  49. iAd
    300'000 ➡ 100'000

    View full-size slide

  50. WWDC 2012
    Sold out in 1h 43m

    View full-size slide

  51. iOS 6
    • Maps
    • Passbook
    • Social network integration
    • FaceTime through cellular

    View full-size slide

  52. New Frameworks
    • AdSupport.framework
    • MediaToolbox.framework
    • PassKit.framework
    • Social.framework

    View full-size slide

  53. iPhone 5
    • New screen size
    • Dual core 32-bit CPU
    • 1.3 GHz
    • 1 GB RAM
    • 1.2 MP front camera
    • 8 MP rear camera
    • Up to 64 GB storage
    • LTE (aka "4G")

    View full-size slide

  54. Oldest device still supported
    (until iOS 10.3.1)

    View full-size slide

  55. Retina MacBook Pro

    View full-size slide

  56. 30-pin Apple Dock ➡
    Lightning Connector

    View full-size slide

  57. 2012 2013 2014 2015 2016
    AAPL 65.21
    Revenue 156.5
    iPods 35
    Macs 18
    iPhone 125
    iPad 58

    View full-size slide

  58. Cumulated iPhone sales: 271 M
    Cumulated iPad sales: 98 M
    700'000 Apps in the App Store

    View full-size slide

  59. minimaluminism

    View full-size slide

  60. WWDC 2013
    Sold out in 71s

    View full-size slide

  61. iOS 7
    • New "flat" UI idiom
    • New notification center
    • New apps
    • New, new, new…

    View full-size slide

  62. New Frameworks
    • GameController.framework
    • JavaScriptCore.framework
    • MultipeerConnectivity.framework
    • SafariServices.framework
    • SpriteKit.framework

    View full-size slide

  63. New, New, New 1/2
    • The new
    NSURLSession
    family of
    classes
    • Support for iBeacons
    • The new
    [NSData
    base64EncodedStringWithOptions:]
    method,
    • The new
    @import
    syntax for importing
    modules or frameworks
    • The
    CMStepCounter
    class for counting
    steps
    • The
    MKGeodesicPolyline
    class

    View full-size slide

  64. New, New, New 2/2
    • The default hiding of MAC addresses
    by the operating system for privacy
    purposes
    • The support for reading QR codes
    through
    AVMetadataObjectTypeQRCode
    • Smile detection through
    CIFaceFeature
    • Text-to-speech through
    AVSpeechUtterance
    • The new Text Kit built upon Core Text
    • Dynamic Type

    View full-size slide

  65. Helvetica ➡ Helvetica Neue

    View full-size slide

  66. iAd
    100'000 ➡ 50

    View full-size slide

  67. iPhone 5S
    • 64-bit dual core CPU
    • 1 GB RAM
    • Apple M7 Motion Sensor
    • Up to 64 GB storage
    • Touch ID
    • Gold!

    View full-size slide

  68. iPhone 5C
    • Same as the iPhone 5
    • Cheaper
    • Up to 32 GB storage
    • 32-bit CPU at 1 GHz

    View full-size slide

  69. 78% devices running iOS 7
    December

    View full-size slide

  70. 2012 2013 2014 2015 2016
    AAPL 65.21 65.07
    Revenue 156.5 171
    iPods 35 26
    Macs 18 16.5
    iPhone 125 150
    iPad 58 71

    View full-size slide

  71. Cumulated iPhone sales: 421 M
    Cumulated iPad sales: 169 M
    1'000'000 Apps in the App Store

    View full-size slide

  72. static OSStatus
    SSLVerifySignedServerKeyExchange(SSLContext *ctx, bool isRsa, SSLBuffer signedParams,
    uint8_t *signature, UInt16 signatureLen)
    {
    OSStatus err;
    ...
    if ((err = SSLHashSHA1.update(&hashCtx, &serverRandom)) != 0)
    goto fail;
    if ((err = SSLHashSHA1.update(&hashCtx, &signedParams)) != 0)
    goto fail;
    goto fail;
    if ((err = SSLHashSHA1.final(&hashCtx, &hashOut)) != 0)
    goto fail;
    ...
    fail:
    SSLFreeBuffer(&signedHashes);
    SSLFreeBuffer(&hashCtx);
    return err;
    }
    Source: Wikipedia

    View full-size slide

  73. WWDC 2014
    Lottery System

    View full-size slide

  74. iOS 8
    Biggest Release

    View full-size slide

  75. New Frameworks 1/3
    • AVKit.framework
    • Accelerate.framework
    • AudioToolbox.framework
    • CloudKit.framework
    • CoreAudioKit.framework
    • CoreAuthentication.framework

    View full-size slide

  76. New Frameworks 2/3
    • HealthKit.framework
    • HomeKit.framework
    • LocalAuthentication.framework
    • Metal.framework
    • NetworkExtension.framework
    • NotificationCenter.framework

    View full-size slide

  77. New Frameworks 3/3
    • Photos.framework
    • PhotosUI.framework
    • PushKit.framework
    • SceneKit.framework
    • WebKit.framework

    View full-size slide

  78. iPhone 6
    iPhone 6 Plus
    • Bigger screen sizes
    • Apple A8 SoC
    • Dual core 64-bit CPU
    • 1.4 GHz
    • Up to 128 GB of storage
    • 1 GB of RAM
    • 8 MP rear camera capable of 1080 HD
    video

    View full-size slide

  79. 65% of devices running iOS 8
    December

    View full-size slide

  80. 2012 2013 2014 2015 2016
    AAPL 65.21 65.07 71.51
    Revenue 156.5 171 183
    iPods 35 26 14
    Macs 18 16.5 19
    iPhone 125 150 169
    iPad 58 71 67

    View full-size slide

  81. Cumulated iPhone sales: 590 M
    Cumulated iPad sales: 237 M
    1.3 M Apps in the App Store

    View full-size slide

  82. Swift, Swift, Swift

    View full-size slide

  83. WWDC 2015
    Lottery, remember?

    View full-size slide

  84. Swift ➡ Open Source

    View full-size slide

  85. Helvetica Neue ➡ San Francisco

    View full-size slide

  86. iPhone 6S
    iPhone 6S Plus
    • Apple A9 SoC
    • Dual-core 64-bit CPUs
    • 1.85 GHz
    • 2 GB RAM
    • Up to 128 GB storage
    • 12 MP rear camera ➡ 4K video
    • 3D Touch

    View full-size slide

  87. iPad Pro
    • 12" screen
    • Apple A9X SoC
    • Dual-core 64-bit CPU
    • 2.26 GHz
    • Up to 128 GB storage
    • 4 GB RAM
    • 8 MP rear camera

    View full-size slide

  88. 75% of devices running iOS 9
    December

    View full-size slide

  89. 2012 2013 2014 2015 2016
    AAPL 65.21 65.07 71.51 117.16
    Revenue 156.5 171 183 234
    Macs 18 16.5 19 20.5
    iPhone 125 150 169 231
    iPad 58 71 67 54

    View full-size slide

  90. Cumulated iPhone sales: 821 M
    Cumulated iPad sales: 291 M
    1.8 M Apps in the App Store

    View full-size slide

  91. Apple shuts off iAd

    View full-size slide

  92. iPhone SE
    9.7" iPad Pro

    View full-size slide

  93. Swift 3
    Xcode 8

    View full-size slide

  94. New Features 1/2
    • Customize notifications
    • iMessage apps
    • Siri framework
    • Custom content in Maps
    • CallKit framework for VoIP apps
    • SFSpeechRecognizer

    View full-size slide

  95. New Features 2/2
    • True Tone display
    • Core Spotlight and
    CSSearchQuery
    class
    • Copy-pasting between devices
    • New app extensions: Call Directory,
    Intents, Intents UI, Messages,
    Notification Content, Notification
    Service, and Sticker Pack.
    • New Photo capture API:
    AVCapturePhotoOutput

    View full-size slide

  96. iPhone 7
    iPhone 7 Plus
    • Apple A10 Fusion SoC
    • Quad-core 64-bit CPUs
    • 2.34 GHz
    • 2 or 3 GB of RAM
    • Up to 256 GB of storage
    • 12 MP rear camera capable of 4K video
    • 7 MP front camera

    View full-size slide

  97. No headphone jack

    View full-size slide

  98. Mozilla shuts off Firefox OS

    View full-size slide

  99. 75% of devices running iOS 10
    December

    View full-size slide

  100. 2012 2013 2014 2015 2016
    AAPL 65.21 65.07 71.51 117.16 97.34
    Revenue 156.5 171 183 234 215
    Macs 18 16.5 19 20.5 18.5
    iPhone 125 150 169 231 212
    iPad 58 71 67 54 45.5

    View full-size slide

  101. Cumulated iPhone sales: 1.03 B
    Cumulated iPad sales: 337.5 M
    2.1 M Apps in the App Store (1 M for iPad)

    View full-size slide

  102. iOS 10 installed in 90% of devices

    View full-size slide

  103. Oldest device supported:
    iPhone 5 (2012)

    View full-size slide

  104. App Store Blues

    View full-size slide

  105. "You also need to acknowledge that
    you’ve marked your work as being
    essentially worthless, and that it’ll
    be discarded just as quickly. Your
    most vocal supporters will turn on
    you the minute you ask for more
    money (remember the extra levels
    for Monument Valley?)."

    View full-size slide

  106. WWDC 2017
    No more in San Francisco

    View full-size slide

  107. Swift 4? (no ABI !)
    iOS 11?
    watchOS 4?
    tvOS 11?
    macOS 10.13?

    View full-size slide

  108. AAPL ➡ 146 USD
    1.16 B iPhones sold
    360 M iPads sold

    View full-size slide

  109. 1.5 Billion iOS Devices Sold
    (not counting iPod touch devices!)

    View full-size slide

  110. Source: guerrilla-innovation.com

    View full-size slide

  111. What is next?

    View full-size slide

  112. Thanks
    @akosma

    View full-size slide