38
Streams and Things JAX London 2013 - Darach Ennis - @darachennis

Streams and Things - Darach Ennis (Ubiquiti Networks)

Embed Size (px)

DESCRIPTION

Presented as a keynote at JAX London 2013 A programmer's perspective on the Internet of Things, reactive development, the hacker ethic, and how we can open up software development, making and craft to the masses. This talk features a live presentation of a home-made, modified Internet of Things. And robots. Audience participation... mandatory!

Citation preview

Page 1: Streams and Things - Darach Ennis (Ubiquiti Networks)

Streams and ThingsJAX London 2013 - Darach Ennis - @darachennis

Page 2: Streams and Things - Darach Ennis (Ubiquiti Networks)
Page 3: Streams and Things - Darach Ennis (Ubiquiti Networks)

Internet of Things

Page 4: Streams and Things - Darach Ennis (Ubiquiti Networks)

– “Internet of Things” - added to Oxford English Dictionary - August 2013

Internet of Things (noun) - a proposed development of the Internet in which everyday objects have network connectivity, allowing

them to send and receive data …

Page 5: Streams and Things - Darach Ennis (Ubiquiti Networks)

– “Internet of Things” - a better definition - Darach Ennis, October 2013

Internet of Things (noun) - a proposed development of the Internet in which everyday

people can easily network everyday objects, allowing them to send and receive

data …

Page 6: Streams and Things - Darach Ennis (Ubiquiti Networks)

Streams of Events

Page 7: Streams and Things - Darach Ennis (Ubiquiti Networks)

Streams of Events - receiving, processing and generating data flows in near real-time

using software algorithms to analyse the event data in flight…

Page 8: Streams and Things - Darach Ennis (Ubiquiti Networks)

Things

Page 9: Streams and Things - Darach Ennis (Ubiquiti Networks)
Page 10: Streams and Things - Darach Ennis (Ubiquiti Networks)

#firstworldproblems

Page 11: Streams and Things - Darach Ennis (Ubiquiti Networks)
Page 12: Streams and Things - Darach Ennis (Ubiquiti Networks)
Page 13: Streams and Things - Darach Ennis (Ubiquiti Networks)
Page 14: Streams and Things - Darach Ennis (Ubiquiti Networks)
Page 15: Streams and Things - Darach Ennis (Ubiquiti Networks)

AR Drone 2.0 Protocols

• A flying wireless access point with

• 9 Protocols: FTP, Auth, Video Recording, Navigation Data, Video, Command, Raw Capture, Printf, Control

• Hackable: Linux based embedded system

Page 16: Streams and Things - Darach Ennis (Ubiquiti Networks)

Streams

Page 17: Streams and Things - Darach Ennis (Ubiquiti Networks)
Page 18: Streams and Things - Darach Ennis (Ubiquiti Networks)

a.pipe(b).pipe(a)

Page 19: Streams and Things - Darach Ennis (Ubiquiti Networks)

by: @maxogden

Page 20: Streams and Things - Darach Ennis (Ubiquiti Networks)

Embedded Event

Processing

Page 21: Streams and Things - Darach Ennis (Ubiquiti Networks)

Embedded Event Processing

• Simple embeddable subset of CEP

• Flow a la Node.js streams and pipes

• Aggregate windows

• Extensible, modular

• Functional, reactive, easy to port

Page 22: Streams and Things - Darach Ennis (Ubiquiti Networks)

Embedded Event Processing

• Windows / Aggregates

• eep-js

• eep-php

• eep-clj!

• eep-java!

• eep-erl

• Flow

• beam-js

• beam-erl

• beam-java

Page 23: Streams and Things - Darach Ennis (Ubiquiti Networks)

Sources

Page 24: Streams and Things - Darach Ennis (Ubiquiti Networks)

Sinks

Page 25: Streams and Things - Darach Ennis (Ubiquiti Networks)

Operators

Page 26: Streams and Things - Darach Ennis (Ubiquiti Networks)

A op B

Pipelines

Page 27: Streams and Things - Darach Ennis (Ubiquiti Networks)

Filter

Page 28: Streams and Things - Darach Ennis (Ubiquiti Networks)

Transform

Page 29: Streams and Things - Darach Ennis (Ubiquiti Networks)

Builtin Functions

Page 30: Streams and Things - Darach Ennis (Ubiquiti Networks)

A op

Branchop

op

Page 31: Streams and Things - Darach Ennis (Ubiquiti Networks)

Branch

Page 32: Streams and Things - Darach Ennis (Ubiquiti Networks)

op

Combineop

op

B

Page 33: Streams and Things - Darach Ennis (Ubiquiti Networks)

Combine

Page 34: Streams and Things - Darach Ennis (Ubiquiti Networks)

In filter!keys

filter!up

filter!down

filter!right

land?

fly!up

fly!down

fly!right

do!land

Page 35: Streams and Things - Darach Ennis (Ubiquiti Networks)
Page 36: Streams and Things - Darach Ennis (Ubiquiti Networks)

Streams and Things… putting it all together … demo, with you and robots!

Page 37: Streams and Things - Darach Ennis (Ubiquiti Networks)

– “Internet of Things” - added to Oxford English Dictionary - August 2013

People and Things - can we take the simplicity of an educational tool such as scratch and empower ordinary people to hack and

mashup their things in ways ‘we the creators’ never imagined?!

!

!

!

Page 38: Streams and Things - Darach Ennis (Ubiquiti Networks)

Thanks. Questions?

!

@darachennis

http://github.com/darach/eep-java!!

http://github.com/darach/beam-java