Slide 1

Slide 1 text

@iHiD Propono

Slide 2

Slide 2 text

@iHiD Jeremy Walker iHiD

Slide 3

Slide 3 text

@iHiD The MonoRail One huge app that tries to do everything.

Slide 4

Slide 4 text

@iHiD Dependency Hell

Slide 5

Slide 5 text

@iHiD Symptom: Large Gemfiles

Slide 6

Slide 6 text

@iHiD Tight Coupling

Slide 7

Slide 7 text

@iHiD Symptom: Strings of behaviours

Slide 8

Slide 8 text

@iHiD Messy

Slide 9

Slide 9 text

@iHiD Complex

Slide 10

Slide 10 text

@iHiD Hard to Understand

Slide 11

Slide 11 text

@iHiD Hard to Maintain

Slide 12

Slide 12 text

@iHiD Bugs

Slide 13

Slide 13 text

@iHiD Pub/Sub Publish-Subscribe Pattern

Slide 14

Slide 14 text

Publisher Publisher Subscriber Subscriber Subscriber Subscriber Topic Subscriber

Slide 15

Slide 15 text

Mobile App Website Email Sender Friendship Suggestion Generator Initial News Feed Builder Klout Determiner New User Created Gravatar Cacher

Slide 16

Slide 16 text

@iHiD Separation of concerns

Slide 17

Slide 17 text

@iHiD Loose Coupling

Slide 18

Slide 18 text

@iHiD Scalability

Slide 19

Slide 19 text

@iHiD Add or Remove Functionality

Slide 20

Slide 20 text

@iHiD Speed of Iteration

Slide 21

Slide 21 text

@iHiD Propono github.com/meducation/propono

Slide 22

Slide 22 text

@iHiD Sits on top of AWS. Simple Notification Services (SNS) Simple Queue Service (SQS)

Slide 23

Slide 23 text

@iHiD Subscriber Subscriber Subscriber SNS Topic Publisher SQS Queue SQS Queue SQS Queue Publish N otifies Notifies Notifies Subscribes Subscribes Subscribes

Slide 24

Slide 24 text

@iHiD Propono automatically: • Creates SNS topics. • Creates SQS queues. • Securely glues everything together. • Handles failures, errors, retries etc.

Slide 25

Slide 25 text

@iHiD No setup.

Slide 26

Slide 26 text

@iHiD Instantly and infinite scaleability.

Slide 27

Slide 27 text

@iHiD As reliable as you get.

Slide 28

Slide 28 text

@iHiD Fast.

Slide 29

Slide 29 text

@iHiD Insanely Cheap Millions of messages for a couple of euros.

Slide 30

Slide 30 text

@iHiD Two function API

Slide 31

Slide 31 text

@iHiD Let’s try an example.

Slide 32

Slide 32 text

@iHiD Open up your laptops.

Slide 33

Slide 33 text

@iHiD Please use conference internet responsibly. No Dropbox, Google Drive, OS updates, etc.

Slide 34

Slide 34 text

@iHiD > gem install propono

Slide 35

Slide 35 text

@iHiD Who’s Here?

Slide 36

Slide 36 text

@iHiD Three Objectives: • A Twitter list of everyone who’s here. • I want to follow you all on Twitter. • I want to everyone to see everyone’s faces.

Slide 37

Slide 37 text

@iHiD Everyone :twitter List Builder Automatic Follower Web App “iHiD”

Slide 38

Slide 38 text

@iHiD Let’s Try It.

Slide 39

Slide 39 text

@iHiD http://bit.ly/baruco14