pump.io

Overview

Motivation

About me

StatusNet

Identi.ca

Different payloads, same topology

Social topology

Social streams

Federation

OStatus

OStatus suite

Wins

Problems

Problems: LAMP

Problems: AGPLv3

Problems: Architecture

Problems: Perception

Problems: Participation

Goals

Developer tool

Payload agnostic

Simple API

Simple federation

Performance

Push innovation to the edge

Widespread use

Use cases

Interaction

Architecture

node.js

Databank

Express

HTML5

Web UI

API

API

Identity: Webfinger

Payload: ActivityStreams JSON

ActivityStreams JSON example

    {
        "id": "http://coding.example/bwk",
        "actor": {},
        "verb": "post",
        "object": {},
        "published": "1973-01-01T00:00:00"
        "links": {},
    }
  

ActivityStreams JSON example

    "actor": {
    "id": "acct:bwk@coding.example",
    "displayName": "Brian Kernighan",
    "objectType": "person",
    "url": "http://coding.example/bwk"
    }
  

ActivityStreams JSON example

    "object": {
        "id": "http://coding.example/hw",
        "objectType": "note"
        "content": "Hello, World!"
    }
  

Authentication: OAuth

Authentication: Dialback

Endpoints

Endpoints: User

Endpoints: Object

Endpoints: Site

Interoperation

What next?

Release

Try it!

identi.ca and status.net

Get involved

Follow me on the Internet