personal cloud application architectures
DESCRIPTION
ersistent compute objects, or PCOs, are light-weight, event-based, cloud-hosted virtual machines that persistently store data and provide a programming model. PCOs represent a possible post-web architecture that supports privacy-by-design, breaks down application silos, and models real-world circumstances. This talk will present a model for PCOs based on standard Web technologies.TRANSCRIPT
Building Apps for Personal Clouds:A Post-Web 2.0 ArchitecturePhil WindleyCTOKynetx
Wednesday, May 8, 13
What’s a Personal Cloud?
Wednesday, May 8, 13
top-down, centralized
control
individual, decentralized
control
connected
stand-alone
Big Web Company Personal Cloud
Mainframe Personal Computer
From Johannes ErnstWednesday, May 8, 13
From Johannes ErnstWednesday, May 8, 13
control over terms
control over apps
control over data
From Johannes ErnstWednesday, May 8, 13
control over terms
control over apps
control over data
From Johannes ErnstWednesday, May 8, 13
control over terms
control over apps
control over data
From Johannes ErnstWednesday, May 8, 13
What about Dropbox, iCloud?
cloud
cloud
cloud
cloudcloud
Me
Service-Oriented Clouds
From Johannes ErnstWednesday, May 8, 13
What about Dropbox, iCloud?
service
Subject-Oriented Clouds
mycloud
serviceservice
service
service
From Johannes ErnstWednesday, May 8, 13
My personal cloud is formed by a constellation of persistent computational objects
Wednesday, May 8, 13
Picos are online computers
Globally unique identityPersistentProgrammableInteractive
Wednesday, May 8, 13
Picos Are Decentralized & Networked
personal cloud personal
cloud
HostingSpace
CloudSpace
HostingCompany A
Hosting Company B
SelfHosted
personal cloud
personal cloud
personal cloud
personal cloud
personal cloud
personal cloud
personal cloud
Wednesday, May 8, 13
Picos support a brand new programming model
Wednesday, May 8, 13
Web Application
Application Data
Browser
Wednesday, May 8, 13
Web Application
Application Data
Browser
Wednesday, May 8, 13
Why do this?Orthogonality and modularity are powerful: network effects!More flexibleLess workLess expensive
Wednesday, May 8, 13
What you will see...1. An app (could be running anywhere) using a personal
cloud
2. App uses data, connections, and functionality of the personal cloud
3. App does not store passwords, user data, etc.
4. Connections in personal cloud are used for evergreen contact information
5. Personal clouds can be running on different servers
6. Connection types control access
Wednesday, May 8, 13
What you won’t see
1.KRL - use your favorite language2.Databases - forget the hassle of user
data
Wednesday, May 8, 13
Allison's Cloud
Forever
Tom's Cloud
Vicky's Cloud Brad's Cloud
ACME Widgets Cloud
Wednesday, May 8, 13
Technology stack based on open source code and standard protocols like OAuth
Wednesday, May 8, 13
The primary purpose of the app is user interface and business logic.
Wednesday, May 8, 13
Forever is just one app. Personal clouds can support any number of apps doing myriad things.
Wednesday, May 8, 13
Let’s build an app…http://todo.windley.com/linkable.html
Wednesday, May 8, 13
We used only the data (CRUD) servicesOther important services include
NotificationsSubscriptionsMore…
These services distinguish CloudOS
Development notes:
Wednesday, May 8, 13
Web Application
Application Data
Browser
Wednesday, May 8, 13
from Joe JohnsonWednesday, May 8, 13
ChallengesSchemasPerformance FeaturesSecurity
Wednesday, May 8, 13
We’re looking for a few hardy alpha developers right nowhttp://developer.kynetx.com
Wednesday, May 8, 13
Contact info: Phil Windley
@windley
Building Apps for Personal Clouds
Wednesday, May 8, 13