AltConf 2017: Full Stack Swift in 30 Minutes

cnbailey 488 views 37 slides Jun 25, 2017
Slide 1
Slide 1 of 37
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37

About This Presentation

The introduction of Swift on the server gave the promise of being able to easily build, deliver and own the whole user experience and the solution, not just the iOS app. Building a backend however introduces many new technologies and terms, from server, cloud and Swagger definitions, to Docker and K...


Slide Content

Swift @ IBM Engineering Team
Chris Bailey(@Chris__Bailey)
June 6th, 2017
Full-Stack Swift in 30 Minutes
Swift @ IBM

December 3rd, 2015
Apache 2.0 Software Licence

Linux Platforms
Darwin Platforms
Swift on Linux
Swift @ IBM
Swift
Standard

Library
FoundationDispatch
Swift
Standard

Library
FoundationDispatch
Consistent
Runtime across
Platforms

Why Swift on the Server?

4.0
0.0
20.0
40.0
60.0
80.0
100.0
120.0

Performant Applications
http://benchmarksgame.alioth.debian.org/u64q/performance.php?test=spectralnorm
Duration (s)
(lower is better)

4.0 4.3
0.0
20.0
40.0
60.0
80.0
100.0
120.0

Performant Applications
http://benchmarksgame.alioth.debian.org/u64q/performance.php?test=spectralnorm
Duration (s)
(lower is better)

4.0 4.3
15.8
0.0
20.0
40.0
60.0
80.0
100.0
120.0

Performant Applications
http://benchmarksgame.alioth.debian.org/u64q/performance.php?test=spectralnorm
Duration (s)
(lower is better)

Performant Applications
http://benchmarksgame.alioth.debian.org/u64q/performance.php?test=spectralnorm
4.0 4.3
15.8
134.2
0.0
20.0
40.0
60.0
80.0
100.0
120.0

Duration (s)
(lower is better)

15.0
0.0
10.0
20.0
30.0
40.0
50.0
60.0

Low Memory
http://benchmarksgame.alioth.debian.org/u64q/performance.php?test=spectralnorm
Memory Usage (MB)
(lower is better)

15.0
32.2
0.0
10.0
20.0
30.0
40.0
50.0
60.0

Low Memory
http://benchmarksgame.alioth.debian.org/u64q/performance.php?test=spectralnorm
Memory Usage (MB)
(lower is better)

15.0
32.2
25.3
0.0
10.0
20.0
30.0
40.0
50.0
60.0

Low Memory
http://benchmarksgame.alioth.debian.org/u64q/performance.php?test=spectralnorm
Memory Usage (MB)
(lower is better)

15.0
32.2
25.3
54.6
0.0
10.0
20.0
30.0
40.0
50.0
60.0

Low Memory
http://benchmarksgame.alioth.debian.org/u64q/performance.php?test=spectralnorm
Memory Usage (MB)
(lower is better)

Swift is ideal for Cloud

Data from Jens Ravens
@jenravens

Data from Jens Ravens
@jenravens

Data from Jens Ravens
@jenravens

Data from Jens Ravens
@jenravens

Data from Jens Ravens
@jenravens
$0.07 GB/Hr
256 MB 128 MB
$613.20 GB/Year
x2
= $306.60
x2
= $153.3

Swift is fast enough. We should focus on
developer productivity instead
Data from Jens Ravens
@jenravens

faster development = more revenue
Swift is fast enough. We should focus on
developer productivity instead
Data from Jens Ravens
@jenravens

Productivity is Key

Frontend Web Developer
0 17.5 35 52.5 70 11.9
Data from StackOverflow Survey 2017
https://insights.stackoverflow.com/survey/2017

Backend Web Developer
Frontend Web Developer
0 17.5 35 52.5 70 11.9
24.4
Data from StackOverflow Survey 2017
https://insights.stackoverflow.com/survey/2017

Full Stack Web Developer
Backend Web Developer
Frontend Web Developer
0 17.5 35 52.5 70 11.9
24.4
63.7
Data from StackOverflow Survey 2017
https://insights.stackoverflow.com/survey/2017
Web Developers are Full Stack

Full Stack Swift

for higher productivity

Full Stack Swift

for higher productivity
(and lower cost)

iOS APP

iOS APP
Hosted Services
DATA
SOCIAL
COGNATIVE

iOS APP
Hosted Services
GATEWAY
PUBLIC NETWORK CLOUD NETWORK
DATA
SOCIAL
COGNATIVE

iOS APP
Hosted Services
GATEWAY
PUBLIC NETWORK CLOUD NETWORK
DATA
SOCIAL
COGNATIVE

iOS APP
Hosted Services
GATEWAY
PUBLIC NETWORK CLOUD NETWORK
SWAGGER
DATA
SOCIAL
COGNATIVE

iOS APP
Hosted Services
GATEWAY
PUBLIC NETWORK CLOUD NETWORK
SWAGGER
DATA
PUSH ANALYTICS
SOCIAL
COGNATIVE
AUTH

iOS APP
Hosted Services
GATEWAY
PUBLIC NETWORK CLOUD NETWORK
SWAGGER
DATA
PUSH ANALYTICS
DEVOPS AVAILABILITY MONITORINGSCALING
SOCIAL
COGNATIVE
AUTH

iOS APP
Hosted Services
GATEWAY
PUBLIC NETWORK CLOUD NETWORK
SWAGGER
DATA
PUSH ANALYTICS
DEVOPS AVAILABILITY MONITORINGSCALING
SOCIAL
COGNATIVE
AUTH
WEB APP

Full Stack in 30 Minutes
https://github.com/seabaylea/FoodTrackerBackend-Workshop

Become a SwiftStack
Developer Today

kitura.iogithub.com/ibm-swift
swift-at-ibm-slack

.mybluemix.net