26
- A Couch to Go Image source: http://hiconsumption.com/tag/driving-experience/ Friday, January 25, 13

- A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

- A Couch to Go

Image source: http://hiconsumption.com/tag/driving-experience/

Friday, January 25, 13

Page 2: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

Katrin Apel (@kaalita)

product manager -> iOS developer

I <3 CouchDB

Friday, January 25, 13

Page 3: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

Nooo, I have to write a backend for my app!

Image source: http://hiconsumption.com/tag/driving-experience/

Friday, January 25, 13

Page 4: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

Image source: http://www.funnycutepics.com/funny/chill/

Friday, January 25, 13

Page 5: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

Friday, January 25, 13

Page 6: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

NO INTERNET

Friday, January 25, 13

Page 7: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

SLOW & LOSSY INTERNET

Friday, January 25, 13

Page 8: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

EXPENSIVE

Friday, January 25, 13

Page 9: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

WHAT DID I WANT?

* Same API for Online and Offline access

* Readymade syncing solution

Friday, January 25, 13

Page 10: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

TouchDB is a lightweight Apache CouchDB-compatible database engine suitable for embedding into mobile or desktop apps.

Friday, January 25, 13

Page 11: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

CouchDB API

SQL Lite

Objective C

Friday, January 25, 13

Page 12: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

CouchDB API

SQL Lite

Objective C

CouchDB HTTP Protocol

CouchDB API

Friday, January 25, 13

Page 13: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

CouchDB API

SQL Lite

Objective C

CouchDB HTTP Protocol

CouchDB API CouchDB API

Friday, January 25, 13

Page 14: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

CouchDB API

SQL Lite

Objective C

CouchDB HTTP Protocol

CouchDB API CouchDB API CouchDB API

PouchDB ?

Friday, January 25, 13

Page 15: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

I will synch data with everything that speaks CouchDB!

Friday, January 25, 13

Page 16: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

PERFECT FOR EMBEDDING

Small: ~350 kbytesQuick startup time: < 100ms

Supported systems:* iOS >= 5.0* Mac OS X* Android 2.2

Friday, January 25, 13

Page 17: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

EASY SETUP#import <CouchCocoa/CouchCocoa.h>

// Creating TouchDB serverCouchTouchDBServer* server = [CouchTouchDBServer sharedInstance]; // Creating a local databaseself.database = [server databaseNamed: @"memories"];

// Creating the replicationsNSArray* repls =

[self.database replicateWithURL: _couchSyncURL exclusively: YES];

_pull = [repls objectAtIndex: 0];_pull.continuous = YES;_push = [repls objectAtIndex: 1];_push.continuous = YES;

Friday, January 25, 13

Page 18: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

FEATURING:

Friday, January 25, 13

Page 19: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

Views

Friday, January 25, 13

Page 20: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

Attachments

Friday, January 25, 13

Page 21: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

Replication

Friday, January 25, 13

Page 22: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

IMAGINEThere’s no server

Image source: http://hiconsumption.com/tag/driving-experience/

Peer to peer sync

Friday, January 25, 13

Page 23: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

DEMO TIME

Friday, January 25, 13

Page 24: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

• Current version: 1.0.1.• Developed by Jens Alfke from CouchBase• Source Code on Github:

https://github.com/couchbaselabs/TouchDB-iOS• Getting help:

https://groups.google.com/forum/#!forum/mobile-couchbase

Friday, January 25, 13

Page 25: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

I <3 CouchDB

Every platform should have an embedded Couch!

Friday, January 25, 13

Page 26: - A Couch to Goconf.couchdb.org/couchdb-conf-berlin-january-2013/...Katrin Apel (@kaalita) product manager -> iOS developer I

Friday, January 25, 13