From iOS- to Vapor Developer (VaporLondon)

From iOS- to Vapor Developer (VaporLondon)

Diving into server-side Swift can seem straightforward at first if one knows the programming language, but it might be harder than you think since it involves developing on a new platform. I will walk you through my journey coming from iOS into Vapor, what challenges I faced, and which strengths I had coming from the iOS platform. I will talk about how these challenges can be overcome and I will share my experiences after working with Vapor in production for 6 months.

Talk given at a VaporLondon event (https://www.meetup.com/VaporLondon/events/243769172/) on the 30th of October 2017.

9993186221ec65f6f10db0dc9cff7c07?s=128

Steffen D. Sommer

October 30, 2017
Tweet

Transcript

  1. 2.
  2. 3.
  3. 4.
  4. 6.
  5. 12.

    Pros • Swi% • Fast • Code share • More

    fullstack developers • Xcode
  6. 13.

    Pros • Swi% • Fast • Code share • More

    fullstack developers • Xcode • Big community
  7. 18.
  8. 19.

    Cons • New language • New package manager • New

    framework • Xcode • Hos6ng • Lack of libraries
  9. 20.

    Programming languages in the making • JavaScript (1995): 22 years

    • Java (1996): 21 years • Ruby (1996): 21 years • Swi$ (2014): 3 years
  10. 21.

    Web frameworks in the making 1 • Spring MVC (2002):

    15 years • Ruby on Rails (2004): 13 years • NodeJS (2009): 8 years • Kitura/Perfect/Vapor (2016): 1 year 1 Since their version 1.0 release.
  11. 23.
  12. 27.
  13. 29.
  14. 30.
  15. 31.
  16. 32.
  17. 36.
  18. 37.
  19. 40.
  20. 45.

    Vapor - Users do not want to wait for requests

    to return - More performance = more money
  21. 56.
  22. 57.
  23. 94.
  24. 95.

    My experiences with Vapor in produc4on • Lots of moving

    targets (Swi3, Vapor, Vapor Cloud) • Overhead in crea,ng and maintaining open source packages
  25. 96.

    My experiences with Vapor in produc4on • Lots of moving

    targets (Swi3, Vapor, Vapor Cloud) • Overhead in crea?ng and maintaining open source packages • Lack of documenta.on
  26. 97.

    My experiences with Vapor in produc4on • Lots of moving

    targets (Swi3, Vapor, Vapor Cloud) • Overhead in crea?ng and maintaining open source packages • Lack of documenta?on • Outdated resources
  27. 98.

    My experiences with Vapor in produc4on • Lots of moving

    targets (Swi3, Vapor, Vapor Cloud) • Overhead in crea?ng and maintaining open source packages • Lack of documenta?on • Outdated resources • Few experts
  28. 99.

    My experiences with Vapor in produc4on • Lots of moving

    targets (Swi3, Vapor, Vapor Cloud) • Overhead in crea?ng and maintaining open source packages • Lack of documenta?on • Outdated resources • Few experts • Lots of boilerplate
  29. 100.

    My experiences with Vapor in produc4on • Lots of moving

    targets (Swi3, Vapor, Vapor Cloud) • Overhead in crea?ng and maintaining open source packages • Lack of documenta?on • Outdated resources • Few experts • Lots of boilerplate • Linux quirkiness
  30. 102.

    How things have improved • Updates are slowing down (Swi3

    and Vapor) • Vapor Cloud reached 1.0 and is stable
  31. 103.

    How things have improved • Updates are slowing down (Swi3

    and Vapor) • Vapor Cloud reached 1.0 and is stable • We don't create as many open source packages anymore
  32. 104.

    How things have improved • Updates are slowing down (Swi3

    and Vapor) • Vapor Cloud reached 1.0 and is stable • We don't create as many open source packages anymore • Documenta*on is improving
  33. 105.

    How things have improved • Updates are slowing down (Swi3

    and Vapor) • Vapor Cloud reached 1.0 and is stable • We don't create as many open source packages anymore • DocumentaDon is improving • More and more resources
  34. 106.

    How things have improved • Updates are slowing down (Swi3

    and Vapor) • Vapor Cloud reached 1.0 and is stable • We don't create as many open source packages anymore • DocumentaDon is improving • More and more resources • Bigger community - more experts
  35. 107.

    How things have improved • Updates are slowing down (Swi3

    and Vapor) • Vapor Cloud reached 1.0 and is stable • We don't create as many open source packages anymore • DocumentaDon is improving • More and more resources • Bigger community - more experts • Less boilerplate
  36. 109.

    What it means to us • 25+ customer projects running

    in produc3on using Vapor and Vapor Cloud
  37. 110.

    What it means to us • 25+ customer projects running

    in produc4on using Vapor and Vapor Cloud • 30+ open source packages created
  38. 111.

    What it means to us • 25+ customer projects running

    in produc4on using Vapor and Vapor Cloud • 30+ open source packages created • Hos$ng fees are going down
  39. 112.

    What it means to us • 25+ customer projects running

    in produc4on using Vapor and Vapor Cloud • 30+ open source packages created • Hos4ng fees are going down • More and more of our iOS developers starts to catch up
  40. 113.

    What it means to us • 25+ customer projects running

    in produc4on using Vapor and Vapor Cloud • 30+ open source packages created • Hos4ng fees are going down • More and more of our iOS developers starts to catch up • More rapid development