Slide 1

Slide 1 text

 your  way   into  NoSQL   Patrick  Mulder   @mulpat  

Slide 2

Slide 2 text

In the beginning, there was LAMP

Slide 3

Slide 3 text

Linux   Apache   MySQL   Perl  (or  PHP)   hBp://en.wikipedia.org/wiki/LAMP_(soHware_bundle)   ALTER table ...

Slide 4

Slide 4 text

The dawn of ORMs Hibernate ActiveRecord

Slide 5

Slide 5 text

Data   Store   Client   API   stateless   URIs   resources   Today,  API‘s  vs  Clients   MV*  

Slide 6

Slide 6 text

remote STATE Synchronize

Slide 7

Slide 7 text

The client-side runs   JavaScript  

Slide 8

Slide 8 text

Document stores provide JSON natively

Slide 9

Slide 9 text

Apps with MEAN stacks

Slide 10

Slide 10 text

MongoDB ExpressJS AngularJS Node

Slide 11

Slide 11 text

But, there is also Meteor, ArangoDB-Foxx, Rendr, Brainy, Backbone-ORM, Serverbone, BookshelfJS, i-tier, Thorax, DerbyJS, ...

Slide 12

Slide 12 text

The main point 100% JavaScript

Slide 13

Slide 13 text

A Good Thing MulVple   runVmes  

Slide 14

Slide 14 text

A quick demo on  JavaScript   RunVmes:   Node  –  Browser  –  ArangoDB  

Slide 15

Slide 15 text

More Good Things concurrency   built-­‐in  

Slide 16

Slide 16 text

A quick demo on  the     event-­‐loop  

Slide 17

Slide 17 text

Challenges ... inheritance async vs sync throwing errors

Slide 18

Slide 18 text

From JSON ... {! "director": "Matthew Vaughn",! "rating": 3.4,! "showtime": 1388766180,! "description": „In grief and anger, Lensherr's magnetic power manifests .... ",! "title": "X-Men: First Class",! "id": 15,! "year": 2011,! "length": 132,! "genres": [! "Action",! "Adventure",! "Sci-Fi"! ]! }!

Slide 19

Slide 19 text

... to data „modules“ with event emitters to be exported Demo  let‘s  create  a  model  

Slide 20

Slide 20 text

„Enhanced“ data events   validaVons   map  primary  key   queries  

Slide 21

Slide 21 text

The jQuery of data Underscore Lo-Dash and promises

Slide 22

Slide 22 text

Interesting projects •  http://knexjs.org/ •  https://www.arangodb.org/foxx •  http://bookshelfjs.org/ •  https://github.com/Everyplay/backbone- blueprint

Slide 23

Slide 23 text

var talk; talk.quesVons()                .end();  

Slide 24

Slide 24 text

Developing Web Apps with BackboneJS