Backend as a Service

25
Backend as a Service Philipp Michel, @phimi_ Dr. Lutz Kohl, @lutzkohl @iPhone developer conference 2012 22.11.2012, Stuttgart Dienstag, 23. Oktober 12

description

Bei Apps zählt neben Design auch Funktionalität. Apps mit Interaktionsmöglichkeiten halten derzeit Daten meist zentral in einem Backend. Das Implementieren von skalierbaren Backends mit standardisierten Schnittstellen setzt Kompetenzen auf verschiedenen Gebieten voraus. Verschiedene Firmen haben sich dieser Komplexität angenommen und bieten auf Webseiten Backend as a Service (BaaS). Der Vortrag führt am Beispiel in die Thematik BaaS ein und gibt einen Überblick über verschiedene Anbieter.

Transcript of Backend as a Service

Page 1: Backend as a Service

Backend as a ServicePhilipp Michel, @phimi_Dr. Lutz Kohl, @lutzkohl

@iPhone developer conference 201222.11.2012, Stuttgart

Dienstag, 23. Oktober 12

Page 2: Backend as a Service

Do you need a Backend?

Dienstag, 23. Oktober 12

Page 3: Backend as a Service

with Backend

without Backend

RapunzelToothbrushFlashlightRechnen

new App

InstagramXINGWWM

kaufDA

or

Dienstag, 23. Oktober 12

Page 4: Backend as a Service

with Backend

Backend exists

new Backend

Immoscout24DB NavigatorHRS Hotels

Amazon

WunderlistAngry Birds

IT-GipfelmyTaxi

or

Dienstag, 23. Oktober 12

Page 5: Backend as a Service

Where is the problem?

Dienstag, 23. Oktober 12

Page 6: Backend as a Service

new Backend

selfmade BaaS

slow dev speed fast

full customizability depends

expensive dev cost cheap

depends scalability promised

or

Dienstag, 23. Oktober 12

Page 7: Backend as a Service

BaaSfunctionality

crud your datamulti platform sdks

pushgeo queries

user managementdata browser

pic/file hostingquery language

im/exportcustom business logic

Dienstag, 23. Oktober 12

Page 8: Backend as a Service

BaaS- Companies

+ some others...

Dienstag, 23. Oktober 12

Page 9: Backend as a Service

With choosing a BaaS-Provider...

...I will be locked in his systemNo. You own the data. You can export it.

...I won‘t be flexible enoughNo. You can inject custom backend logic.

... I cannot connect to my existing data No. You can import/connect your data.

BaaS -Myth

see alsohttp://www.kinvey.com/blog/922/breaking-backend-as-a-service-myths

Dienstag, 23. Oktober 12

Page 11: Backend as a Service

Let‘s compare BaaS Offers

Dienstag, 23. Oktober 12

Page 12: Backend as a Service

Which SDK‘s do I get?

Dienstag, 23. Oktober 12

Page 13: Backend as a Service

SDK‘s Parse Stackmob Kinvey API O MAT

REST, iOSAndroid yes yes yes yes

JS yes yes yes no

Ruby thirdparty yes no no

Java thirdparty yes no yes

PHP thirdparty no no yes

Python thirdparty no no yes

Dienstag, 23. Oktober 12

Page 14: Backend as a Service

How can I do custom server logic?

Dienstag, 23. Oktober 12

Page 15: Backend as a Service

server logic Parse Stackmob Kinvey API O

MATwrite

business logic in

jsJava Scala

Clojure

node.jsw/ cloud foundry

js

tools command line tool

create jarw/ maven ant or sbt

command line tool

handlejs on

website

log yes yes yes yes

Dienstag, 23. Oktober 12

Page 16: Backend as a Service

What do I get for free?

Dienstag, 23. Oktober 12

Page 17: Backend as a Service

free Parse Stackmob Kinvey API O MAT

number of users 200

storage 1GB 2gb

api calls 1M 60K

pushs 1M 60K

number of versions 1

Free in Public Beta

Dienstag, 23. Oktober 12

Page 18: Backend as a Service

What do I get for 400$/month?

Dienstag, 23. Oktober 12

Page 19: Backend as a Service

Parse199$/m

Stackmob400 $/m

Kinvey400 $/m

API O MAT

number of users 12K

storage 10GB 100GB

api calls 15M 9M

pushs 5M

number of versions 2

Free in Public Beta

Dienstag, 23. Oktober 12

Page 20: Backend as a Service

What‘s in the SDK‘s?

Dienstag, 23. Oktober 12

Page 21: Backend as a Service

iOS SDK Parse Kinvey API O MAT

type generic generic generated

caching yes yes yes

offline yes yes soon

connectedobjects yes yes yes

Dienstag, 23. Oktober 12

Page 22: Backend as a Service

Example:

Dienstag, 23. Oktober 12

Page 23: Backend as a Service

CityKit

• Adresses, Offers, Coupons, Appointments around the user

• 24 Data Model Classes, csv import

• Native iOS & Android App

• PHP-Website, GWT-Dashboard

• only 2 month for planning and implementing backend and iOS-App

Dienstag, 23. Oktober 12

Page 24: Backend as a Service

Generic vs. generated SDK

• if we would have used a generic sdk we would have implemented 24 data models 4 times

• we edited the data models on the website --> data models in the sdks were generated automatically

Dienstag, 23. Oktober 12