A presentation at ElixirConf in in Austin, TX, USA by Brooklyn Zelenka
The Jump to Hyperspace ๐ Light speed, antientropy, & moving past the cloud ๐ค
The Jump to Hyperspace ๐ Light speed, antientropy, & moving past the cloud ๐ค
I suppose it is tempting, if the only tool you have is a hammer, to treat everything as if it were a nail ~Abraham Maslow
I suppose it is tempting, if the only tool you have is a hammer, to treat everything as if it were a nail ~Abraham Maslow
[โฆ] by 2025, 75% of data will be processed outside the traditional data centre or cloud ~ Gartner (also Dell & IBM) https://www.gartner.com/smarterwithgartner/what-edge-computing-means-for-infrastructure-and-operations-leaders
Brooklyn Zelenka @expede
Brooklyn Zelenka @expede โข CTO at Fission โข https://fission.codes, @FISSIONCodes โข Infra & browser SDK for โedge appsโ โข Local-first, E2EE/EAR, distributed, passwordless โข Standards: DIF, UCAN, Ethereum, Multiformats, others โข Elixir: Witchcraft, Algae, Exceptional, &c
Meta ๐ฎ โข R&D at Fission and others โข Future looking, emerging space โข Edge, web3, dweb โข Go โup a layerโ from BEAM to the internet itself
Meta ๐ฎ โข R&D at Fission and others โข Future looking, emerging space โข Edge, web3, dweb โข Go โup a layerโ from BEAM to the internet itself
โHistorical Reasonsโ How We Got Here ๐ ๐ฒ
Motivation ๐ญ 1994 Set the Tone
Motivation ๐ญ 1994 Set the Tone
Motivation ๐ญ The Dream of the 90s is Alive on the Web ๐ถ
Motivation ๐ญ The Dream of the 90s is Alive on the Web ๐ถ ๐ ๐ฅ
Motivation ๐ญ The Dream of the 90s is Alive on the Web ๐ถ ๐ ๐ฅ ๐ข
Motivation ๐ญ The Dream of the 90s is Alive on the Web ๐ถ ๐ ๐ฅ ๐ข ๐
Motivation ๐ญ The Dream of the 90s is Alive on the Web ๐ถ ๐ ๐ฅ ๐ข โ ๐
Motivation ๐ญ The Dream of the 90s is Alive on the Web ๐ถ ๐ ๐ฅ ๐ข โ ๐ช ๐
Motivation ๐ญ The Dream of the 90s is Alive on the Web ๐ถ ๐ ๐ฅ ๐ข โ ๐ช ๐
Motivation ๐ญ The Dream of the 90s is Alive on the Web ๐ถ ๐ ๐ฅ ๐ข โ ๐ช ๐
Motivation ๐ญ The Dream of the 90s is Alive on the Web ๐ถ ๐ ๐ฅ ๐ข โ ๐ช ๐
Motivation ๐ญ The Dream of the 90s is Alive on the Web ๐ถ ๐ ๐ฅ ๐ข โ ๐ช ๐
Motivation ๐ญ The Dream of the 90s is Alive on the Web ๐ถ ๐ ๐ฅ ๐ข โ ๐ช ๐
Motivation ๐ญ The Dream of the 90s is Alive on the Web ๐ถ ๐ ๐ ๐ ๐ฅ ๐ข ๐ฅ ๐ข ๐ฅ ๐ข โ ๐ช ๐
Motivation ๐ญ The Dream of the 90s is Alive on the Web ๐ถ ๐ ๐ ๐ ๐ฅ ๐ข ๐ฅ ๐ข ๐ฅ ๐ข โ ๐ช ๐ ๐
Motivation ๐ญ Scaling Up ๐ ๐ ๐ ๐ฅ ๐ฅ ๐ฅ ๐ โ โ โ ๐ ๐ ๐ ๐ ๐ ๐
Motivation ๐ญ Scaling Up ๐ ๐ ๐ ๐ฅ ๐ฅ ๐ฅ ๐ โ โ โ ๐ ๐ ๐ ๐ ๐ ๐
Motivation ๐ญ Scaling Up ๐ ๐ ๐ ๐ฅ ๐ฅ ๐ฅ โ ๐ ๐ ๐ โ ๐ โCloudโ ๐ โ ๐ โ ๐
Motivation ๐ญ Less is More ๐ ๐ ๐ ๐ฅ ๐ฅ ๐ฅ โ ๐ ๐ ๐ โ ๐ โServerlessโ ๐ ๐ (AKA more โservers) ๐ฉ ๐
โฆand so it was for many yearsโฆ
โฆand so it was for many yearsโฆ ๐ฆโ๐๐พ๐ฐ๐ข๐
Motivation ๐ญ Natural Consequences ๐
Motivation ๐ญ Natural Consequences ๐ โข Single source of truth (โtheโ database)
Motivation ๐ญ Natural Consequences ๐ โข Single source of truth (โtheโ database) โข Server-centric โข โFull stack developmentโ โข DevOps, Docker, k8s โข How to train enough engineers?
Motivation ๐ญ Natural Consequences ๐ โข Single source of truth (โtheโ database) โข Server-centric โข โFull stack developmentโ โข DevOps, Docker, k8s โข How to train enough engineers?
Motivation ๐ญ Natural Consequences ๐ โข Single source of truth (โtheโ database) โข Server-centric โข โFull stack developmentโ โข DevOps, Docker, k8s โข How to train enough engineers? โข Infrastructure Hegemony โข AWS (60%), GCP, Azure
Motivation ๐ญ Sending a โDirectโ Message
Motivation ๐ญ Sending a โDirectโ Message
Motivation ๐ญ Sending a โDirectโ Message
Motivation ๐ญ Sending a โDirectโ Message โณ๐๐ข๐ช
New Environment ๐ฐ Users vs Cloud Infra Source: AWS
New Environment ๐ฐ Users vs Cloud Infra Source: AWS
New Environment ๐ฐ Users vs Cloud Infra 6 7 6 2 1 1 1 1 Source: AWS
New Environment ๐ฐ Users vs Cloud Infra 6 7 6 2 1 1 1 1 Source: AWS
New Environment ๐ฐ Users vs Cloud Infra 6 7 6 2 1 1 1 1 Source: AWS
New Environment ๐ฐ Users vs Cloud Infra 6 7 6 2 1 1 1 1 Source: AWS
New Environment ๐ฐ Users vs Cloud Infra 6 7 6 2 1 1 1 1 Source: AWS
New Environment ๐ฐ Users vs Cloud Infra 6 7 2 6 50M 1 1 1 1 Source: AWS
New Environment ๐ฐ Users vs Cloud Infra 371 million 56M/centre 6 7 2 6 50M 1 1 1 1 Source: AWS
New Environment ๐ฐ Users vs Cloud Infra 371 million 56M/centre 6 7 2 6 50M 1 1 ~435 million 435M/centre 1 1 Source: AWS
New Environment ๐ฐ Users vs Cloud Infra 371 million 56M/centre 6 7 2 6 50M 1 1 ~435 million 435M/centre 1 ~1.4 billion 1400M/centre 1 Source: AWS
New Environment ๐ฐ Users vs Cloud Infra 371 million 56M/centre 6 7 2 6 50M 1 1 ~435 million 435M/centre 1 ~1.4 billion 1400M/centre 1 Source: AWS
Video Killed the Radio Star A New Environment ๐
New Environment ๐ฐ New Environment
New Environment ๐ฐ New Environment Then ๐ Now ๐
New Environment ๐ฐ New Environment Need Then ๐ Now ๐ Convenient ๐ Critical ๐จ
New Environment ๐ฐ New Environment Then ๐ Now ๐ Need Convenient ๐ Critical ๐จ Location Data Centre ๐ข Powerful Clients (M1, IoT) โ๐๐
New Environment ๐ฐ New Environment Then ๐ Now ๐ Need Convenient ๐ Critical ๐จ Location Data Centre ๐ข Powerful Clients (M1, IoT) โ๐๐ ๐ฅ ๐ฑ Access
New Environment ๐ฐ New Environment Then ๐ Now ๐ Need Convenient ๐ Critical ๐จ Location Data Centre ๐ข Powerful Clients (M1, IoT) โ๐๐ ๐ฅ ๐ฑ Bandwidth ๐ Latency โฒ Access Bottleneck
New Environment ๐ฐ New Environment Then ๐ Now ๐ Need Convenient ๐ Critical ๐จ Location Data Centre ๐ข Powerful Clients (M1, IoT) โ๐๐ ๐ฅ ๐ฑ Bandwidth ๐ Latency โฒ ๐บ๐ธ๐ช๐บ ๐๐๐ โฆ ๐ Access Bottleneck Market
High Volume ๐ข Science Fiction โ Reality โข Remote surgery โข Extended reality โข Autonomous vehicles โข Location transparency โข Competitive cloud gaming โข Realtime manufacturing โข Continuous ML Literal brain surgery over 5G 3,000km ~ 1,900mi
Sensor data explosion will kill the cloud. [โฆ] existing infrastructure will not be able to handle the volumes or the rates We are absolutely going to return to a peer-to-peer computing [โฆ] not unlike distributed computing We are going to move to a world of data-centric programming. ~ a16z, โThe End of Cloud Computingโ
Sensor data explosion will kill the cloud. [โฆ] existing infrastructure will not be able to handle the volumes or the rates We are absolutely going to return to a peer-to-peer computing [โฆ] not unlike distributed computing We are going to move to a world of data-centric programming. ~ a16z, โThe End of Cloud Computingโ โ
Sensor data explosion will kill the cloud. [โฆ] existing infrastructure will not be able to handle the volumes or the rates We are absolutely going to return to a peer-to-peer computing [โฆ] not unlike distributed computing We are going to move to a world of data-centric programming. โ ~ a16z, โThe End of Cloud Computingโ โ
Sensor data explosion will kill the cloud. [โฆ] existing infrastructure will not be able to handle the volumes or the rates We are absolutely going to return to a peer-to-peer computing [โฆ] not unlike distributed computing We are going to move to a world of data-centric programming. โ ~ a16z, โThe End of Cloud Computingโ ๐คพ โ ๐
Sensor data explosion will kill the cloud. [โฆ] existing infrastructure will not be able to handle the volumes or the rates We are absolutely going to return to a peer-to-peer computing [โฆ] not unlike distributed computing We are going to move to a world of data-centric programming. โ ~ a16z, โThe End of Cloud Computingโ ๐คพ โ ๐
The World is Changing Relativistic Computing ๐ธ
The ship that made the Kessel Run in less than 12 parsecs ~ Han Solo
The ship that made the Kessel Run in less than 12 parsecs ~ Han Solo
New Environment ๐ฐ Mooreโs Law. But make it networked.
Low Latency ๐ Latency is a Physical Limit ๐ง โข Bandwidth max not even close โข Speed of light causality โข Edge dominates < 40ms โข Best at ~8ms โข 1ms applications exist โข โUltra Reliable Low Latencyโ
Low Latency ๐ Latency is a Physical Limit ๐ง โข Bandwidth max not even close โข Speed of light causality โข Edge dominates < 40ms โข Best at ~8ms โข 1ms applications exist โข โUltra Reliable Low Latencyโ f Source: Ericsson http://cscn2017.ieee-cscn.org/ iles/2017/08/Janne_Peisa_Ericsson_CSCN2017.pdf
Low Latency ๐ Latency is a Physical Limit ๐ง โข Bandwidth max not even close โข Speed of light causality โข Edge dominates < 40ms โข Best at ~8ms โข 1ms applications exist โข โUltra Reliable Low Latencyโ f Source: Ericsson http://cscn2017.ieee-cscn.org/ iles/2017/08/Janne_Peisa_Ericsson_CSCN2017.pdf
Low Latency ๐ What 8ms Looks Like
Low Latency ๐ What 8ms Looks Like Austin โก San Francisco Ideal Vacuum ๐ซ
Low Latency ๐ What 8ms Looks Like Austin โก San Francisco Ideal Vacuum ๐ซ Austin ๐ (almost) Atlanta Ideal Vacuum ๐ซ
Low Latency ๐ What 8ms Looks Like Austin โก San Francisco Ideal Vacuum ๐ซ Austin ๐ (almost) Atlanta Ideal Vacuum ๐ซ Austin ๐ New Orleans Ideal Fibre ๐งถ
Low Latency ๐ Causal Islands ๐๐
Low Latency ๐ Causal Islands ๐๐
Low Latency ๐ Causal Islands ๐๐
Low Latency ๐ Causal Islands ๐๐
New Environment ๐ฐ Friendly Neighbourhood Compute
New Environment ๐ฐ Friendly Neighbourhood Compute โข 5G networks & Starlink ๐ฐ โข Straight line point-to-point โข PoP directly on the tower ๐ผ๐
New Environment ๐ฐ Friendly Neighbourhood Compute โข 5G networks & Starlink ๐ฐ โข Straight line point-to-point โข PoP directly on the tower ๐ผ๐ โข Walmartโs Edge โข 90% Americans < 10mi [16km]
High Volume ๐ข A New Topology
High Volume ๐ข A New Topology ๐คณ
High Volume ๐ข A New Topology ๐ฐ ๐คณ ๐ผ ๐พโ
High Volume ๐ข A New Topology ๐ฐ ๐คณ ๐ผ ๐พโ ๐ข ๐พโ
High Volume ๐ข A New Topology ๐ฐ ๐คณ ๐ผ ๐พโ ๐ข ๐พโ โ ๐พโ โ ๐พ โ ๐พ โ ๐พ ๐พโ โ
High Volume ๐ข A New Topology ๐ฐ ๐คณ ๐ผ ๐พโ ๐ฐ ๐ฐ ๐ข โ ๐พโ ๐พโ โ ๐พ โ ๐พ โ ๐พ ๐พโ โ
High Volume ๐ข A New Topology ๐ฐ Local ๐คณ First ๐ผ ๐พโ ๐ฐ ๐ฐ ๐ข โ ๐พโ ๐พโ โ ๐พ โ ๐พ โ ๐พ ๐พโ โ
High Volume ๐ข A New Topology ๐ฐ Local ๐คณ First ๐ผ Realtime, Storage, Caching, OLTP ๐พโ ๐ฐ ๐ฐ ๐ข โ ๐พโ ๐พโ โ ๐พ โ ๐พ โ ๐พ ๐พโ โ
High Volume ๐ข A New Topology ๐ฐ Local ๐คณ First ๐ผ Realtime, Storage, Caching, OLTP ๐พโ ๐ฐ Relay, Replication, Consistency, Tasks ๐พโ ๐ข ๐ฐ โ ๐พโ โ ๐พ โ ๐พ โ ๐พ ๐พโ โ
High Volume ๐ข A New Topology ๐ฐ Local ๐คณ First ๐ผ Realtime, Storage, Caching, OLTP ๐พโ ๐ฐ Relay, Replication, Consistency, Tasks ๐พโ ๐ข ๐ฐ โ Aggregation, Batching, Training, โ ๐พ โ ๐พ โ ๐พ OLAP โ ๐พ ๐พโ โ
High Volume ๐ข A New Topology ๐ฐ Local ๐คณ First ๐ ๐ผ Realtime, Storage, Caching, OLTP ๐พโ ๐ฐ Relay, Replication, Consistency, Tasks ๐พโ ๐ข ๐ฐ โ Aggregation, Batching, Training, โ ๐พ โ ๐พ โ ๐พ OLAP โ ๐พ ๐พโ โ ๐
Functional Programming On the Edge ๐ง
Instead of [โฆ] โwhich database would be best to hold presences?โ, we could ask โhow can we best replicate data in a distributed system without the user having to worry about it?โ With Elixir, you are empowered to tackle problems that in other platforms would feel impossible to solve ~ Chris McCord, What Makes Phoenix Presence Special
On the Edge ๐ง Phoenix LiveView
On the Edge ๐ง Phoenix LiveView Users ๐จ๐ซ๐ฉ๐ญ๐งโ๐ท Client ๐ฅ WSS / REST / GraphQL โ Controller Logic โ Data Store ๐ DevOps ๐ค Developer ๐ฉ๐ป
On the Edge ๐ง Phoenix LiveView Users ๐จ๐ซ๐ฉ๐ญ๐งโ๐ท Client ๐ฅ WSS / REST / GraphQL โ Controller Logic โ Data Store ๐ DevOps ๐ค Developer ๐ฉ๐ป ๐ฅ ๐พ
On the Edge ๐ง Phoenix LiveView Users ๐จ๐ซ๐ฉ๐ญ๐งโ๐ท Client ๐ฅ ๐พ๐พ๐พ๐พ ๐ โ WSS / REST / GraphQL โ Controller Logic โ Data Store ๐ DevOps ๐ค Developer ๐ฉ๐ป ๐ฅ ๐พ
On the Edge ๐ง Phoenix LiveView Users ๐จ๐ซ๐ฉ๐ญ๐งโ๐ท Client ๐ฅ ๐พ๐พ๐พ๐พ ๐ โ WSS / REST / GraphQL โ Controller Logic โ Data Store ๐ DevOps ๐ค Developer ๐ฉ๐ป ๐ฅ ๐พ
On the Edge ๐ง Phoenix LiveView Users ๐จ๐ซ๐ฉ๐ญ๐งโ๐ท Client ๐ฅ ๐พ๐พ๐พ๐พ ๐ โ WSS / REST / GraphQL โ Controller Logic โ Data Store ๐ DevOps ๐ค Developer ๐ฉ๐ป ๐ฅ ๐พ
On the Edge ๐ง Phoenix LiveView Users ๐จ๐ซ๐ฉ๐ญ๐งโ๐ท Client ๐ฅ ๐พ๐พ๐พ๐พ ๐ โ WSS / REST / GraphQL โ Controller Logic โ Data Store ๐ DevOps ๐ค Developer ๐ฉ๐ป ๐ฅ ๐พ
On the Edge ๐ง Phoenix LiveView Users ๐จ๐ซ๐ฉ๐ญ๐งโ๐ท Client ๐ฅ ๐พ๐พ๐พ๐พ ๐ โ โ WSS / REST / GraphQL โ Controller Logic โ Data Store ๐ DevOps ๐ค Developer ๐ฉ๐ป ๐ฅ ๐พ
On the Edge ๐ง Phoenix LiveView Users ๐จ๐ซ๐ฉ๐ญ๐งโ๐ท Client ๐ฅ ๐พ๐พ๐พ๐พ ๐ โ โ WSS / REST / GraphQL โ Controller Logic โ Data Store ๐ DevOps ๐ค Developer ๐ฉ๐ป ๐ฅ ๐พ ๐ฅ ๐พ
On the Edge ๐ง Phoenix LiveView Users ๐จ๐ซ๐ฉ๐ญ๐งโ๐ท Client ๐ฅ ๐พ๐พ๐พ๐พ ๐ โ โ WSS / REST / GraphQL โ Controller Logic โ Data Store ๐ DevOps ๐ค Developer ๐ฉ๐ป ๐ฅ ๐พ ๐ฅ ๐พ
On the Edge ๐ง Phoenix LiveView Users ๐จ๐ซ๐ฉ๐ญ๐งโ๐ท Client ๐ฅ ๐พ๐พ๐พ๐พ ๐ โ โ WSS / REST / GraphQL โ Controller Logic โ Data Store ๐ DevOps ๐ค Developer ๐ฉ๐ป ๐ฅ ๐พ ๐ฅ ๐พ
On the Edge ๐ง Phoenix Inside Out ๐ฃ ๐ฅ ๐พ๐พ ๐ฅ ๐พ๐พ๐พ โ ๐พ ๐
On the Edge ๐ง Mo Distributed Mo Problems Property Consequence Casual islands No single source of truth! Local first How to do coordination? Replicate/run on any machine ACLs fail (for reads, many writes)
On the Edge ๐ง CAP โ PACELC ๐ฆ๐ฆ
On the Edge ๐ง CAP โ PACELC ๐ฆ๐ฆ โข If network partition, either: โข Availability (A) โ Uptime! โข Consistency (C)
On the Edge ๐ง CAP โ PACELC ๐ฆ๐ฆ โข If network partition, either: โข Availability (A) โ Uptime! C โข Consistency (C) A
On the Edge ๐ง CAP โ PACELC ๐ฆ๐ฆ โข If network partition, either: โข Availability (A) โ Uptime! C โข Consistency (C) P A
On the Edge ๐ง CAP โ PACELC ๐ฆ๐ฆ โข If network partition, either: โข Availability (A) โ Uptime! C โข Consistency (C) P โข Else (E) running normally, either: โข Latency (L) โ Speed! โข Consistency (C) A
On the Edge ๐ง CAP โ PACELC ๐ฆ๐ฆ โข If network partition, either: โข Availability (A) โ Uptime! C โข Consistency (C) P E โข Else (E) running normally, either: โข Latency (L) โ Speed! โข Consistency (C) A L
On the Edge ๐ง CAP โ PACELC ๐ฆ๐ฆ โข If network partition, either: โข Availability (A) โ Uptime! C โข Consistency (C) P E โข Else (E) running normally, either: โข Latency (L) โ Speed! โข Consistency (C) A L
On the Edge ๐ง CAP โ PACELC ๐ฆ๐ฆ โข If network partition, either: โข Availability (A) โ Uptime! C โข Consistency (C) P E โข Else (E) running normally, either: โข Latency (L) โ Speed! โข Consistency (C) A L PA/EL
On the Edge ๐ง New Assumptions, New Approach
On the Edge ๐ง New Assumptions, New Approach โข New assumptions โ new architecture โ new features โข Local-first โ network e cient ffi โข Data can run anywhere โ commons networks
On the Edge ๐ง New Tools
On the Edge ๐ง ff New Tools โข Conflict-free Replicated Data Type (CRDT) โข Software Transactional Memory (STM) โข Di erential Datalog (DDlog) โข Merkleization (hash chaining) โข Cryptographic compute (MPC/FHE/NIZK) โข REST < bidirectional sync < relative data views
On the Edge ๐ง ff New Tools โข Conflict-free Replicated Data Type (CRDT) โข Software Transactional Memory (STM) โข Di erential Datalog (DDlog) โข Merkleization (hash chaining) โข Cryptographic compute (MPC/FHE/NIZK) โข REST < bidirectional sync < relative data views
On the Edge ๐ง ff New Tools โข Conflict-free Replicated Data Type (CRDT) โข Software Transactional Memory (STM) โข Di erential Datalog (DDlog) โข Merkleization (hash chaining) โข Cryptographic compute (MPC/FHE/NIZK) โข REST < bidirectional sync < relative data views
On the Edge ๐ง ff New Tools โข Conflict-free Replicated Data Type (CRDT) โข Software Transactional Memory (STM) โข Di erential Datalog (DDlog) โข Merkleization (hash chaining) โข Cryptographic compute (MPC/FHE/NIZK) โข REST < bidirectional sync < relative data views
Fixing The Leaky Pipes Identity & Access ๐ฟ
Fixing the Leaky Pipes ๐ฟ ACL Read & Write
Fixing the Leaky Pipes ๐ฟ ACL Read & Write ๐ง๐พ
Fixing the Leaky Pipes ๐ฟ ACL Read & Write ๐ง๐พ โ
Fixing the Leaky Pipes ๐ฟ ACL Read & Write ๐ง๐พ ๐ โ โ
Fixing the Leaky Pipes ๐ฟ ACL Read & Write ๐ง๐พ ๐ ๐ โ โ
Fixing the Leaky Pipes ๐ฟ ACL Read & Write ๐ง๐พ ๐ ๐ โ โ
Fixing the Leaky Pipes ๐ฟ ACL Read & Write ๐ง๐พ ๐ ๐ โ โ
Fixing the Leaky Pipes ๐ฟ ACL Read & Write ๐ง๐พ ๐ ๐ โ Not in control โ
Fixing the Leaky Pipes ๐ฟ ACL Read & Write ๐ In control ๐ง๐พ ๐ โ Not in control โ
Fixing the Leaky Pipes ๐ฟ ACL Read & Write ๐ In control ๐ง๐พ ๐ โ Not in control โ
Fixing the Leaky Pipes ๐ฟ ACL Read & Write ๐ ๐ โ In control ๐ง๐พ ๐ โ Not in control โ
Fixing the Leaky Pipes ๐ฟ OCAP for Mutation
Fixing the Leaky Pipes ๐ฟ OCAP for Mutation ๐ต
Fixing the Leaky Pipes ๐ฟ OCAP for Mutation ๐ต ๐ฌ
Fixing the Leaky Pipes ๐ฟ OCAP for Mutation PID โ โ ๐ต ๐บ ๐ฌ
Fixing the Leaky Pipes ๐ฟ OCAP for Mutation PID โ โ ๐ต ๐บ ๐ ๐ฌ
Fixing the Leaky Pipes ๐ฟ OCAP for Mutation ๐ต PID โ โ ๐ต ๐บ ๐ ๐ฌ
Fixing the Leaky Pipes ๐ฟ OCAP for Mutation ๐ต PID โ โ ๐ต ๐บ โ ๐ ๐ฌ
Fixing the Leaky Pipes ๐ฟ OCAP for Mutation ๐ต ๐บ ๐ต ๐บ โ โ โ PID โ โ Addr ๐ ๐ฌ
Fixing the Leaky Pipes ๐ฟ OCAP for Mutation โ โ PID ๐ ๐ฌ โ Addr ๐ โ ๐ต ๐บ ๐ต ๐บ โ
Fixing the Leaky Pipes ๐ฟ OCAP for Mutation โ โ PID ๐ ๐ฌ โ Addr ๐ โ ๐ต ๐บ ๐ต ๐บ In control โ
Fixing the Leaky Pipes ๐ฟ OCAP for Mutation ๐ต ๐บ ๐ต ๐บ โ โ PID โ โ Addr In control ๐ โ All req info ๐ ๐ฌ
Fixing the Leaky Pipes ๐ฟ OCAP for Mutation โ โ PID ๐ ๐ฌ โ Addr ๐ โ ๐ต ๐บ ๐ต ๐บ โ
Fixing the Leaky Pipes ๐ฟ OCAP for Mutation โ PID ๐ฌ โ Addr โ โ ๐ต ๐ ๐บ ๐ ๐ ๐ต ๐ ๐บ ๐ ๐ โ
Fixing the Leaky Pipes ๐ฟ OCAP for Mutation โ โ PID ๐ ๐ฌ โ Addr ๐ โ ๐ต ๐บ ๐ต ๐บ โ
Fixing the Leaky Pipes ๐ฟ OCAP for Mutation โ โ ๐ง๐จ PID ๐ ๐ฌ โ Addr ๐ โ ๐ต ๐บ ๐ต ๐บ โ
Fixing the Leaky Pipes ๐ฟ OCAP for Mutation ๐ต ๐บ ๐ต ๐บ โ โ PID โ โ Addr ๐ ๐ โ ๐ง๐จ ๐บ ๐ฌ
Fixing the Leaky Pipes ๐ฟ OCAP for Mutation ๐ต ๐บ ๐ต ๐บ โ โ PID โ โ Addr ๐ ๐ โ ๐ง๐จ ๐บ ๐ฌ ๐
๐จ๐จ Fixing the Leaky Pipes ๐ฟ OCAP for Mutation ๐ต ๐บ ๐ต ๐บ โ โ PID โ โ Addr ๐ ๐ โ ๐ง๐จ ๐บ ๐ฌ ๐
๐จ๐จ Fixing the Leaky Pipes ๐ฟ OCAP for Mutation ๐ต ๐บ ๐ต ๐บ โ โ PID โ โ Addr ๐ ๐ ๐ ๐บ โ ๐ง๐จ ๐ฌ ๐
๐จ๐จ Fixing the Leaky Pipes ๐ฟ OCAP for Mutation ๐ต ๐บ ๐ต ๐บ โ โ PID โ โ Addr ๐ ๐ ๐ ๐บ ๐ โ ๐ง๐จ ๐ฌ ๐
Fixing the Leaky Pipes ๐ฟ Rights Amplification
Fixing the Leaky Pipes ๐ฟ Rights Amplification ๐ฅซ โ
Fixing the Leaky Pipes ๐ฟ Rights Amplification ๐ฅซ โจ โ
Fixing the Leaky Pipes ๐ฟ Rights Amplification ๐ฅซ โจ ๐ฅ โ
Fixing the Leaky Pipes ๐ฟ Faster, Stronger, More Streamlined
Fixing the Leaky Pipes ๐ฟ Faster, Stronger, More Streamlined
Fixing the Leaky Pipes ๐ฟ Faster, Stronger, More Streamlined
Fixing the Leaky Pipes ๐ฟ Faster, Stronger, More Streamlined Universal, verifiable, user originated
Fixing the Leaky Pipes ๐ฟ JWT++
Fixing the Leaky Pipes ๐ฟ JWT++
Fixing the Leaky Pipes ๐ฟ JWT++
Fixing the Leaky Pipes ๐ฟ JWT++
Fixing the Leaky Pipes ๐ฟ Reading the Universal Dataspace๐ช๐ฎ
Fixing the Leaky Pipes ๐ฟ Reading the Universal Dataspace๐ช๐ฎ ๐ ๐ฐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐
Fixing the Leaky Pipes ๐ฟ Reading the Universal Dataspace๐ช๐ฎ ๐จ๐ซ ๐ฉ๐ฌ ๐ ๐ ๐ฐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ง๐พ
Fixing the Leaky Pipes ๐ฟ Reading the Universal Dataspace๐ช๐ฎ ๐จ๐ซ ๐ฉ๐ฌ ๐ ๐ ๐ฐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ง๐พ
Fixing the Leaky Pipes ๐ฟ Reading the Universal Dataspace๐ช๐ฎ ๐จ๐ซ ๐ฉ๐ฌ ๐ ๐ ๐ฐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ง๐พ
Fixing the Leaky Pipes ๐ฟ Reading the Universal Dataspace๐ช๐ฎ ๐จ๐ซ ๐ฉ๐ฌ ๐ ๐ ๐ฐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ง๐พ
Itโs all about that Data, Data, Data ๐
Data dominates. If youโve chosen the right data structures and organized things well, the algorithms will almost always be self-evident. Data structures, not algorithms, are central to programming. Rob Pike, 5 Rules of Programming
Itโs All About that Data ๐ Gossiping Out of Order ๐
Itโs All About that Data ๐ Gossiping Out of Order ๐
Itโs All About that Data ๐ Gossiping Out of Order ๐ ๐จ
Itโs All About that Data ๐ Gossiping Out of Order ๐ ๐จ
Itโs All About that Data ๐ Gossiping Out of Order ๐ tโ ๐จ
Itโs All About that Data ๐ Gossiping Out of Order ๐ ๐ข ๐จ ๐ด ๐ก ๐ด tโ ๐ข ๐ข ๐ก
Itโs All About that Data ๐ Gossiping Out of Order ๐ ๐ข ๐จ ๐ด ๐ก ๐ด tโ ๐ข ๐ข ๐ก
Itโs All About that Data ๐ Gossiping Out of Order ๐ ๐ข ๐จ ๐ด ๐ก ๐ด tโ ๐ข ๐ข ๐ก
Itโs All About that Data ๐ Gossiping Out of Order ๐ ๐ข ๐จ ๐ด ๐ก ๐ด tโ ๐ข ๐ข ๐ก
Itโs All About that Data ๐ Gossiping Out of Order ๐ ๐ข ๐จ ๐ด ๐ก ๐ด tโ ๐ข ๐ข ๐ก
Itโs All About that Data ๐ Gossiping Out of Order ๐ ๐ข ๐จ ๐ด ๐ก ๐ด tโ ๐ข ๐ข ๐ก โ
Itโs All About that Data ๐ Entropy Isnโt What It Used To Be
Itโs All About that Data ๐ Entropy Isnโt What It Used To Be
Itโs All About that Data ๐ Abstract โข Network agnostic โข Any number of replicas
Itโs All About that Data ๐ Abstract Commutative โข Network agnostic โข Any number of replicas
Itโs All About that Data ๐ Abstract Commutative merge merge โข Network agnostic โข Any number of replicas
Itโs All About that Data ๐ Abstract Commutative merge merge โข Network agnostic โข Any number of replicas
Itโs All About that Data ๐ Abstract Commutative merge merge โข Network agnostic โข Any number of replicas
Itโs All About that Data ๐ Abstract Commutative merge merge โข Network agnostic โข Any number of replicas
Itโs All About that Data ๐ Abstract Commutative merge merge โข Network agnostic โข Any number of replicas Associative
Itโs All About that Data ๐ Abstract Associative Commutative merge merge โข Network agnostic โข Any number of replicas merge merge
Itโs All About that Data ๐ Abstract Associative Commutative merge merge โข Network agnostic โข Any number of replicas merge merge
Itโs All About that Data ๐ Abstract Associative Commutative ( merge merge โข Network agnostic โข Any number of replicas ) merge merge
Itโs All About that Data ๐ Abstract Associative Commutative ( merge merge โข Network agnostic โข Any number of replicas ) merge ( ) merge
Itโs All About that Data ๐ Abstract Associative Commutative ( merge merge โข Network agnostic โข Any number of replicas ) merge ( ) merge
Itโs All About that Data ๐ Abstract Associative Commutative ( merge merge โข Network agnostic โข Any number of replicas ) merge ( ) merge
Itโs All About that Data ๐ Abstract Associative Commutative ( merge merge โข Network agnostic โข Any number of replicas ) merge merge ( ) merge merge
Itโs All About that Data ๐ Abstract Associative Commutative ( merge merge โข Network agnostic โข Any number of replicas ) merge merge ( ) merge merge
Itโs All About that Data ๐ Abstract Associative Commutative ( merge merge โข Network agnostic โข Any number of replicas ) merge merge ( ) merge merge
Itโs All About that Data ๐ Abstract Associative Commutative ( merge merge โข Network agnostic โข Any number of replicas ) merge merge Idempotent ( ) merge merge
Itโs All About that Data ๐ Abstract Associative Commutative ( merge merge โข Network agnostic โข Any number of replicas ) merge merge Idempotent ( ) merge merge fill
Itโs All About that Data ๐ Abstract Associative Commutative ( merge merge โข Network agnostic โข Any number of replicas ) merge merge Idempotent ( ) merge merge fill
Itโs All About that Data ๐ Abstract Associative Commutative ( merge merge โข Network agnostic โข Any number of replicas ) merge merge Idempotent ( ) merge merge fill
Itโs All About that Data ๐ Abstract Associative Commutative ( merge merge โข Network agnostic โข Any number of replicas ) merge merge Idempotent ( ) merge merge fill
Itโs All About that Data ๐ Abstract Associative Commutative ( merge merge โข Network agnostic โข Any number of replicas ) merge merge Idempotent ( ) merge merge fill fill
Itโs All About that Data ๐ Abstract Associative Commutative ( merge merge โข Network agnostic โข Any number of replicas ) merge merge Idempotent ( ) merge merge fill fill
Itโs All About that Data ๐ Abstract Associative Commutative ( merge merge โข Network agnostic โข Any number of replicas ) merge merge Idempotent ( ) merge merge fill fill
Itโs All About that Data ๐ Abstract Associative Commutative ( merge merge โข Network agnostic โข Any number of replicas ) merge merge Idempotent ( ) merge merge fill fill
Itโs All About that Data ๐ PNCounter
Itโs All About that Data ๐ PNCounter
Itโs All About that Data ๐ PNCounter
Itโs All About that Data ๐ PNCounter
Itโs All About that Data ๐ PNCounter
Itโs All About that Data ๐ PNCounter
Itโs All About that Data ๐ PNCounter
Itโs All About that Data ๐ PNCounter
Itโs All About that Data ๐ PNCounter
Itโs All About that Data ๐ PNCounter
Itโs All About that Data ๐ PNCounter
Itโs All About that Data ๐ PNCounter
Itโs All About that Data ๐ PNCounter
Itโs All About that Data ๐ PNCounter
Itโs All About that Data ๐ Syncing Tables Seems Inefficient
โ OCT-2020
โ OCT-2020 kb_id owner_id mode switches inserted_at 42 1 Wireless Blue JAN-2020
โ OCT-2020 kb_id owner_id mode switches inserted_at 42 1 Wireless Blue JAN-2020
โ OCT-2020 kb_id owner_id mode switches inserted_at 42 1 Wireless Blue JAN-2020
โ OCT-2020 kb_id owner_id mode switches inserted_at 42 1 Wireless Blue JAN-2020
โ OCT-2020 kb_id owner_id mode switches inserted_at 42 1 Wireless Blue JAN-2020
Itโs All About that Data ๐ Relationships XYZ Name: @expede From JAN-2000 ๐ Work: Fission From AUG-2019 KEB ๐ Red Switches Switches: Blue From JAN-2020 From FEB-2020 Wireless
Itโs All About that Data ๐ Relationships XYZ Name: @expede From JAN-2000 ๐ Work: Fission From AUG-2019 KEB ๐ Red Switches Switches: Blue From JAN-2020 From FEB-2020 Wireless
Itโs All About that Data ๐ A Sequel to SQL: Nonlinear DBs XYZ Name: @expede From JAN-2000 ABC Name: @bmann From DEC-1999 KEB Type: Wireless Always ๐ XYZ Work: Fission From AUG-2019 ๐ KEB Switches: Red From JAN-2020 KEB Owner:XYZ From JAN-2020 KEB Switches: Blue From FEB-2020
Itโs All About that Data ๐ A Sequel to SQL: Nonlinear DBs XYZ Name: @expede From JAN-2000 ABC Name: @bmann From DEC-1999 KEB Type: Wireless Always ๐ XYZ Work: Fission From AUG-2019 ๐ KEB Switches: Red From JAN-2020 KEB Owner:XYZ From JAN-2020 KEB Switches: Blue From FEB-2020
Itโs All About that Data ๐ A Sequel to SQL: Nonlinear DBs XYZ Name: @expede From JAN-2000 ABC Name: @bmann From DEC-1999 KEB Type: Wireless Always ๐ XYZ Work: Fission From AUG-2019 ๐ KEB Switches: Red From JAN-2020 KEB Owner:XYZ From JAN-2020 KEB Switches: Blue From FEB-2020
Itโs All About that Data ๐ A Sequel to SQL: Nonlinear DBs XYZ Name: @expede From JAN-2000 ABC Name: @bmann From DEC-1999 KEB Type: Wireless Always ๐ XYZ Work: Fission From AUG-2019 ๐ KEB Switches: Red From JAN-2020 KEB Owner:XYZ From JAN-2020 KEB Switches: Blue From FEB-2020
Itโs All About that Data ๐ A Sequel to SQL: Nonlinear DBs XYZ Name: @expede From JAN-2000 ABC Name: @bmann From DEC-1999 KEB Type: Wireless Always ๐ XYZ Work: Fission From AUG-2019 ๐ KEB Switches: Red From JAN-2020 KEB Owner:XYZ From JAN-2020 KEB Switches: Blue From FEB-2020 ๐ข
Itโs All About that Data ๐ A Sequel to SQL: Nonlinear DBs XYZ Name: @expede From JAN-2000 ABC Name: @bmann From DEC-1999 KEB Type: Wireless Always ๐ XYZ Work: Fission From AUG-2019 ๐ KEB Switches: Red From JAN-2020 KEB Owner:XYZ From JAN-2020 KEB Switches: Blue From FEB-2020 ๐ฉ๐๐ฑ ๐ข
Itโs All About that Data ๐ A Sequel to SQL: Nonlinear DBs XYZ Name: @expede From JAN-2000 ABC Name: @bmann From DEC-1999 KEB Type: Wireless Always ๐ XYZ Work: Fission From AUG-2019 ๐ KEB Switches: Red From JAN-2020 ๐จ๐ณ๐ป KEB Owner:XYZ From JAN-2020 ๐ข KEB Switches: Blue From FEB-2020 ๐ฉ๐๐ฑ
Itโs All About that Data ๐ A Sequel to SQL: Nonlinear DBs โกโฌ XYZ Name: @expede From JAN-2000 ABC Name: @bmann From DEC-1999 KEB Type: Wireless Always ๐ XYZ Work: Fission From AUG-2019 ๐ KEB Switches: Red From JAN-2020 ๐จ๐ณ๐ป KEB Owner:XYZ From JAN-2020 ๐ข KEB Switches: Blue From FEB-2020 ๐ฉ๐๐ฑ
Collaboration & Memoization & E ects at Scale (oh my!) ff Universal Compute ๐
Universal Compute ๐ โWith a Little Scale From My Friendsโ
Universal Compute ๐ Throughput โWith a Little Scale From My Friendsโ Parallelization
Universal Compute ๐ โWith a Little Scale From My Friendsโ Throughput Ideal (Linear) Parallelization
Universal Compute ๐ โWith a Little Scale From My Friendsโ Ideal (Linear) Throughput Amdahlโs Law Parallelization
Universal Compute ๐ โWith a Little Scale From My Friendsโ Ideal (Linear) Throughput Amdahlโs Law Universal Scaling Law Parallelization
Universal Compute ๐ โWith a Little Scale From My Friendsโ Ideal (Linear) Throughput Amdahlโs Law Incoherence, Data Contention Universal Scaling Law Parallelization
Universal Compute ๐ โWith a Little Scale From My Friendsโ Throughput Global Adaptive Memoization ๐คฏ Ideal (Linear) Amdahlโs Law Incoherence, Data Contention Universal Scaling Law Parallelization
Universal Compute ๐ The Compute Commons ๐๐ฌ
Universal Compute ๐ The Compute Commons ๐๐ฌ Side E ect Stream Pure E ect Stream Pure Function Stream ff ff Base Event Stream
Universal Compute ๐ The Compute Commons ๐๐ฌ Side E ect Stream Pure E ect Stream Pure Function Stream ff ff Base Event Stream
Universal Compute ๐ The Compute Commons ๐๐ฌ Side E ect Stream Pure E ect Stream Pure Function Stream ff ff Base Event Stream tโ
Universal Compute ๐ The Compute Commons ๐๐ฌ Side E ect Stream Pure E ect Stream Pure Function Stream ff ff Base Event Stream tโ
Universal Compute ๐ The Compute Commons ๐๐ฌ Side E ect Stream Pure E ect Stream Pure Function Stream ff ff Base Event Stream tโ
Universal Compute ๐ The Compute Commons ๐๐ฌ Side E ect Stream Pure E ect Stream Pure Function Stream ff ff Base Event Stream tโ
Universal Compute ๐ The Compute Commons ๐๐ฌ Side E ect Stream Pure E ect Stream Pure Function Stream ff ff Base Event Stream tโ
Universal Compute ๐ The Compute Commons ๐๐ฌ Side E ect Stream Pure E ect Stream Pure Function Stream ff ff Base Event Stream tโ
Universal Compute ๐ The Compute Commons ๐๐ฌ Side E ect Stream Pure E ect Stream Pure Function Stream ff ff Base Event Stream tโ
Universal Compute ๐ The Compute Commons ๐๐ฌ Side E ect Stream Pure E ect Stream Pure Function Stream ff ff Base Event Stream tโ ๐
Universal Compute ๐ The Compute Commons ๐๐ฌ Side E ect Stream Pure E ect Stream Pure Function Stream ff ff Base Event Stream tโ ๐
Universal Compute ๐ GenEffect ๐
Universal Compute ๐ GenEffect ๐
Universal Compute ๐ GenEffect ๐
Universal Compute ๐ GenEffect ๐
Universal Compute ๐ GenEffect ๐
Where Do We Go From Here? ๐ญ
Where Do We Go From Here? New Environment Then ๐ Now ๐ Need Convenient ๐ Critical ๐จ Location Data Centre ๐ข Powerful Clients (M1, IoT) โ๐๐ ๐ฅ ๐ฑ Bandwidth ๐ Latency โฒ ๐บ๐ธ๐ช๐บ ๐๐๐ โฆ ๐ Access Bottleneck Market
Where Do We Go From Here? Relativistic Programming ๐ซ
Where Do We Go From Here? A Better Future on the Edge
Where Do We Go From Here? A Better Future on the Edge Embrace the distributed nature of the internet:
Where Do We Go From Here? A Better Future on the Edge Embrace the distributed nature of the internet: 1. Only replicate what you need to
Where Do We Go From Here? A Better Future on the Edge Embrace the distributed nature of the internet: 1. Only replicate what you need to 2. Remember that data propagates relativistically
Where Do We Go From Here? A Better Future on the Edge Embrace the distributed nature of the internet: 1. Only replicate what you need to 2. Remember that data propagates relativistically 3. Free yourself from intrinsic time
๐ Thank You, ElixirConf ๐บ๐ธ brooklyn@fission.codes https://fission.codes github.com/expede @expede
๐ Thank You, ElixirConf ๐บ๐ธ brooklyn@fission.codes https://fission.codes github.com/expede @expede
๐ Thank You, ElixirConf ๐บ๐ธ brooklyn@fission.codes https://fission.codes github.com/expede @expede
Itโs All About that Data ๐ Mutable Pointers send(:example@42.123.45.6, :ping) %{node_id => %{path => content}} โข Single-source server/client โข DNS: hostname โ IP address โข PIDs: number โ address โข Focused: physical network ff โข Referential opacity (same PID, di erent data)
Itโs All About that Data ๐ Mutable Pointers send(:example@42.123.45.6, :ping) %{node_id => %{path => content}} โข Single-source server/client โข DNS: hostname โ IP address โข PIDs: number โ address P H Y S I C A L L O C AT I O N ๐บ โข Focused: physical network ff โข Referential opacity (same PID, di erent data)
Itโs All About that Data ๐ Mutable Pointers send(:example@42.123.45.6, :ping) %{node_id => %{path => content}} โข Single-source server/client โข DNS: hostname โ IP address โข PIDs: number โ address V I R T UA L A D D R E S S ๐ฌ P H Y S I C A L L O C AT I O N ๐บ โข Focused: physical network ff โข Referential opacity (same PID, di erent data)
Itโs All About that Data ๐ Consistent Keys %{hash(content) => content} โข Above virtual address โข Focused: data itself โข Same for everyone & everywhere โข Perfect for caching โข Immutable data++ โข Consistent pointers โ consistent data
Itโs All About that Data ๐ Consistent Keys %{hash(content) => content} โข Above virtual address โข Focused: data itself CONTENT ID โ โข Same for everyone & everywhere โข Perfect for caching โข Immutable data++ โข Consistent pointers โ consistent data P H Y S I C A L L O C AT I O N ๐บ
Itโs All About that Data ๐ Consistent Keys %{hash(content) => content} โข Above virtual address โข Focused: data itself โข Same for everyone & everywhere โข Perfect for caching โข Immutable data++ โข Consistent pointers โ consistent data CONTENT ID โ V I R T UA L A D D R E S S ๐ฌ P H Y S I C A L L O C AT I O N ๐บ
Itโs All About that Data ๐ Hash-Based Relationships
Itโs All About that Data ๐ Hash-Based Relationships { } CID ~ Data PID Qm123456โฆ: { data: nil, links: [ {name: โcompanyโ, hash: Qmabcโฆ} {name: โindustryโ, hash: Qmzyxโฆ} ] }
Itโs All About that Data ๐ Hash-Based Relationships { } { Qm123456โฆ: { data: nil, links: [ {name: โcompanyโ, hash: Qmabcโฆ} {name: โindustryโ, hash: Qmzyxโฆ} ] } CID ~ Data PID Qmabcdefโฆ: { data: โFissionโ, links: [ {name: โcityโ, hash: Qm1gbโฆ}, {name: โaboutโ, hash: Qm0eNโฆ} ] } }
Itโs All About that Data ๐ Hash-Based Relationships { } { Qm123456โฆ: { data: nil, links: [ {name: โcompanyโ, hash: Qmabcโฆ} {name: โindustryโ, hash: Qmzyxโฆ} ] } CID ~ Data PID Qmabcdefโฆ: { data: โFissionโ, links: [ {name: โcityโ, hash: Qm1gbโฆ}, {name: โaboutโ, hash: Qm0eNโฆ} ] } } Qm123456โฆ/company/about/ceo => โBoris Mannโ
Itโs All About that Data ๐ Content IDs Are Easy
Decentralized Systems ๐ Different Clients ~ Schema Drift ๐ Source: Project Cambria, Ink & Switch https://www.inkandswitch.com/cambria.html
High Volume ๐ข Evolving Toolbox Cloud Geographic Sync Serverless Commons Networks P2P Local First ff O line
On the Edge ๐ง Why Elixir? โข Data-oriented, immutable โข Code-as-data ๐ data-as-code โข Shared-nothing architectures โข Easy concurrency, distributed systems โข Actor model โ OCAP โข Build up complexity from simple parts
We have a system that applies cutting edge CS research to tackle day-to-day problems in the applications we all write. Phoenix Presence - has no single point of failure - has no single source of truth -[โฆ] - self heals ~ Chris McCord, โWhat Makes Phoenix Presence Specialโ
Low Latency ๐ Earth is Just Too Big! ๐ โข Ideal 40ms one-way โข SF โก Austin, Vancouver, London, Tokyo โข SF โ Cape Town, Sidney, Rio de Janeiro Credit: Keenan Crane http://www.cs.cmu.edu/~kmcrane/Projects/ModelRepository/
Low Latency ๐ Earth is Just Too Big! ๐ โข Ideal 40ms one-way โข SF โก Austin, Vancouver, London, Tokyo โข SF โ Cape Town, Sidney, Rio de Janeiro Credit: Keenan Crane http://www.cs.cmu.edu/~kmcrane/Projects/ModelRepository/
What does this all mean? Consequence ๐
Consequence ๐ธ Primary Progression
Consequence ๐ธ Primary Progression 1. Embrace the distributed nature of the internet ๐ค
Consequence ๐ธ Primary Progression 1. Embrace the distributed nature of the internet ๐ค 2. Universal IDs (without coordination)
Consequence ๐ธ Primary Progression 1. Embrace the distributed nature of the internet ๐ค 2. Universal IDs (without coordination) 3. Direct access control
Consequence ๐ธ Primary Progression 1. Embrace the distributed nature of the internet ๐ค 2. Universal IDs (without coordination) 3. Direct access control 4. Cache friendliness
Consequence ๐ธ Primary Progression 1. Embrace the distributed nature of the internet ๐ค 2. Universal IDs (without coordination) 3. Direct access control 4. Cache friendliness 5. Relativistic databases
Consequence ๐ธ Primary Progression 1. Embrace the distributed nature of the internet ๐ค 2. Universal IDs (without coordination) 3. Direct access control 4. Cache friendliness 5. Relativistic databases 6. Interoperable formats (across time & team)
Consequence ๐ธ Primary Progression 1. Embrace the distributed nature of the internet ๐ค 2. Universal IDs (without coordination) 3. Direct access control 4. Cache friendliness 5. Relativistic databases 6. Interoperable formats (across time & team) ffi 7. E cient replication
Itโs All About that Data ๐ Minimal CRDT From Smaller Blocks
Itโs All About that Data ๐ Minimal CRDT From Smaller Blocks
Itโs All About that Data ๐ Minimal CRDT From Smaller Blocks
Itโs All About that Data ๐ Minimal CRDT From Smaller Blocks
Itโs All About that Data ๐ Minimal CRDT From Smaller Blocks Sibling / Concurrent
Getting Ready ๐ฑ Data > Compute โข Pure data-focus frees you! โข Clarify โrealโ dependencies on data โข Direct auth, OCAP
Motivation ๐ญ What Even Is a โServerโ?
Low Latency ๐ Canโt Go Faster, Make Shorter Trips
Low Latency ๐ Canโt Go Faster, Make Shorter Trips Source: Computer History Museum
Low Latency ๐ Canโt Go Faster, Make Shorter Trips >10ฮผm >10,000nm Source: Computer History Museum
Low Latency ๐ Canโt Go Faster, Make Shorter Trips >10ฮผm >10,000nm Source: Computer History Museum 10nm