Better Together: IPVM for an Open World

A presentation at Compute Over Data Summit^3 in May 2023 in Boston, MA, USA by Brooklyn Zelenka

Slide 1

Slide 1

Better Together πŸ«‚ IPVM For an Open World πŸš€ github.com/ipvm-wg fission.codes

Slide 2

Slide 2

IPVM: Better Together

Slide 3

Slide 3

IPVM: Better Together

Slide 4

Slide 4

IPVM: Better Together Jesper, I have this idea in which we’ll connect all of the worlds Erlang systems to each other, imagine if every process could talk to every other process, world-wide! – Joe Armstrong, email to Jesper L. Andersen

Slide 5

Slide 5

IPVM: Better Together Brooklyn Zelenka, @expede github.com/expede

Slide 6

Slide 6

IPVM: Better Together Brooklyn Zelenka, @expede Cofounder & CTO at Fission discord.gg/fissioncodes @fission@plnetwork.xyz IPVM Spec Wrangler β€” github.com/ipvm-wg github.com/expede

Slide 7

Slide 7

IPVM: Better Together Brooklyn Zelenka, @expede Cofounder & CTO at Fission discord.gg/fissioncodes @fission@plnetwork.xyz IPVM Spec Wrangler β€” github.com/ipvm-wg github.com/expede

Slide 8

Slide 8

IPVM: Better Together 🀝 Brought To You By…

Slide 9

Slide 9

IPVM: Better Together 🀝 Brought To You By…

Slide 10

Slide 10

IPVM: Better Together 🀝 Brought To You By…

Slide 11

Slide 11

IPVM: Better Together 🀝 Brought To You By…

Slide 12

Slide 12

IPVM: Better Together Consistency & Distribution

Slide 13

Slide 13

IPVM: Better Together Consistency & Distribution

Slide 14

Slide 14

IPVM: Better Together Consistency & Distribution

Slide 15

Slide 15

IPVM: Better Together Consistency & Distribution

Slide 16

Slide 16

IPVM: Better Together Consistency & Distribution

Slide 17

Slide 17

IPVM: Better Together Consistency & Distribution

Slide 18

Slide 18

IPVM: Better Together Consistency & Distribution IPVM

Slide 19

Slide 19

IPVM: Better Together Consistency & Distribution IPVM

Slide 20

Slide 20

IPVM: Better Together Everything, Everywhere, All At Once

Slide 21

Slide 21

IPVM: Better Together Everything, Everywhere, All At Once Nothing less than connecting all of the world’s users & services. The β€œHTTP of Compute”: open, interoperable, & everywhere. Must be substantially better than the status quo.

Slide 22

Slide 22

Slide 23

Slide 23

β€”We Can Do Better Than β€” The Status Quo

Slide 24

Slide 24

The Status Quo Consequences πŸ‚

Slide 25

Slide 25

The Status Quo Consequences πŸ‚ β€’ Single source of truth (β€œthe” database)

Slide 26

Slide 26

The Status Quo Consequences πŸ‚ β€’ Single source of truth (β€œthe” database)

Slide 27

Slide 27

The Status Quo Consequences πŸ‚ β€’ Single source of truth (β€œthe” database) β€’ Server-centric β€’ β€œFront vs back end developers” β€’ DevOps, Docker, k8s β€’ How to train enough engineers?

Slide 28

Slide 28

The Status Quo Rolling Weight

Slide 29

Slide 29

The Status Quo Rolling Weight Other 35% IBM 4% Alibaba 4% Google 9% AWS 32% Azure 17%

Slide 30

Slide 30

The Status Quo Rolling Weight Other 35% IBM 4% Alibaba 4% Google 9% AWS 32% Azure 17%

Slide 31

Slide 31

The Status Quo Rolling Weight Other 35% IBM 4% Alibaba 4% Google 9% AWS 32% Azure 17%

Slide 32

Slide 32

The Status Quo Rolling Weight Other 35% IBM 4% Alibaba 4% Google 9% AWS 32% Azure 17%

Slide 33

Slide 33

The Status Quo Rolling Weight Other 35% IBM 4% Alibaba 4% Google 9% AWS 32% Azure 17%

Slide 34

Slide 34

The Status Quo Sending a β€œDirect” Message

Slide 35

Slide 35

The Status Quo Sending a β€œDirect” Message

Slide 36

Slide 36

The Status Quo Sending a β€œDirect” Message

Slide 37

Slide 37

The Status Quo Sending a β€œDirect” Message β³πŸ”‹πŸ›’πŸͺ 

Slide 38

Slide 38

The Status Quo Users vs Cloud Infra Source: AWS

Slide 39

Slide 39

The Status Quo Users vs Cloud Infra 6 7 6 2 1 1 1 1 Source: AWS

Slide 40

Slide 40

The Status Quo Users vs Cloud Infra 6 7 6 2 1 1 1 1 Source: AWS

Slide 41

Slide 41

The Status Quo Users vs Cloud Infra 6 7 6 2 1 1 1 1 Source: AWS

Slide 42

Slide 42

The Status Quo Users vs Cloud Infra 6 7 6 2 1 1 1 1 Source: AWS

Slide 43

Slide 43

The Status Quo Users vs Cloud Infra 6 7 2 6 50M 1 1 1 1 Source: AWS

Slide 44

Slide 44

The Status Quo Users vs Cloud Infra 371 million 56M/centre 6 7 2 6 50M 1 1 1 1 Source: AWS

Slide 45

Slide 45

The Status Quo Users vs Cloud Infra 371 million 56M/centre 6 7 2 6 50M 1 1 ~435 million 435M/centre 1 1 Source: AWS

Slide 46

Slide 46

The Status Quo 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

Slide 47

Slide 47

The Status Quo Event Horizon Aggregated Data

Slide 48

Slide 48

The Status Quo

Slide 49

Slide 49

The Status Quo As we continue to increase the number of globally connected devices, we must embrace a design that considers every single member in the system as the primary site for the data that it is generates. It is completely impractical that we can look at a single, or a small number, of globally distributed data centers as the primary site for all global information that we desire to perform computations with. – Meiklejohn, A Certain Tendency Of The Database Community

Slide 50

Slide 50

The Status Quo

Slide 51

Slide 51

Slide 52

Slide 52

β€” The Times They Are A-Changin’ β€” Signs of a Way Out

Slide 53

Slide 53

Signs of a Way Out Back to Our Roots

Slide 54

Slide 54

Signs of a Way Out Back to Our Roots 1. Decentralisation 2. Non-discrimination 3. Bottom-up Design 4. Universality 5. Consensus – The Web Foundation, History of the Web

Slide 55

Slide 55

Signs of a Way Out Back to Our Roots 1. Decentralisation 2. Non-discrimination 3. Bottom-up Design 4. Universality 5. Consensus en.wikipedia.org/wiki/OSI_model – The Web Foundation, History of the Web

Slide 56

Slide 56

Signs of a Way Out Back to Our Roots 1. Decentralisation 2. Non-discrimination 3. Bottom-up Design 4. Universality 5. Consensus en.wikipedia.org/wiki/OSI_model – The Web Foundation, History of the Web

Slide 57

Slide 57

Signs of a Way Out Back to Our Roots 1. Decentralisation 2. Non-discrimination 3. Bottom-up Design 4. Universality 5. Consensus en.wikipedia.org/wiki/OSI_model – The Web Foundation, History of the Web

Slide 58

Slide 58

Signs of a Way Out Everything, Everywhere

Slide 59

Slide 59

Signs of a Way Out Everything, Everywhere Commons Cloud & Edge Far Edge

Slide 60

Slide 60

Signs of a Way Out Everything, Everywhere Commons Cloud & Edge Far Edge

Slide 61

Slide 61

Signs of a Way Out Everything, Everywhere Commons Cloud & Edge Far Edge

Slide 62

Slide 62

Signs of a Way Out Dependency Stack

Slide 63

Slide 63

Signs of a Way Out Dependency Stack Compute βš™

Slide 64

Slide 64

Signs of a Way Out Dependency Stack Compute βš™ Data πŸ’Ύ

Slide 65

Slide 65

Signs of a Way Out Dependency Stack Compute βš™ Data πŸ’Ύ Auth 🎟

Slide 66

Slide 66

Signs of a Way Out ACL Redux

Slide 67

Slide 67

Signs of a Way Out ACL Redux πŸ§‘πŸŒΎ

Slide 68

Slide 68

Signs of a Way Out ACL Redux πŸ§‘πŸŒΎ βš™

Slide 69

Slide 69

Signs of a Way Out ACL Redux πŸ§‘πŸŒΎ πŸ’‚ βœ‹ βš™

Slide 70

Slide 70

Signs of a Way Out ACL Redux πŸ§‘πŸŒΎ πŸ“‘ πŸ’‚ βœ‹ βš™

Slide 71

Slide 71

Signs of a Way Out ACL Redux πŸ§‘πŸŒΎ πŸ“‘ πŸ’‚ βœ‹ βš™

Slide 72

Slide 72

Signs of a Way Out ACL Redux πŸ§‘πŸŒΎ πŸ“‘ πŸ’‚ βœ‹ βš™

Slide 73

Slide 73

Signs of a Way Out ACL Redux πŸ§‘πŸŒΎ πŸ“‘ πŸ’‚ βœ‹ Not in control βš™

Slide 74

Slide 74

Signs of a Way Out ACL Redux πŸ“‘ In control πŸ§‘πŸŒΎ πŸ’‚ βœ‹ Not in control βš™

Slide 75

Slide 75

Signs of a Way Out ACL Redux πŸ“‘ πŸ’‚ βœ‹ In control πŸ§‘πŸŒΎ πŸ’‚ βœ‹ Not in control βš™

Slide 76

Slide 76

Signs of a Way Out Capabilities

Slide 77

Slide 77

Signs of a Way Out Capabilities πŸ•΅

Slide 78

Slide 78

Signs of a Way Out Capabilities πŸ•΅ βš™

Slide 79

Slide 79

Signs of a Way Out Capabilities πŸ•΅ πŸ—Ί Addr βš™

Slide 80

Slide 80

Signs of a Way Out Capabilities πŸ•΅ πŸ—Ί Addr 🎟 βš™

Slide 81

Slide 81

Signs of a Way Out Capabilities πŸ•΅ πŸ—Ί Addr In control 🎟 βš™

Slide 82

Slide 82

Signs of a Way Out Capabilities πŸ•΅ πŸ—Ί Addr In control 🎟 βš™ All req info

Slide 83

Slide 83

Signs of a Way Out Capabilities πŸ•΅ πŸ—Ί Addr 🎟 βš™

Slide 84

Slide 84

Signs of a Way Out Capabilities πŸ•΅ 🎟 πŸ—Ί 🎟 🎟 Addr βš™

Slide 85

Slide 85

Signs of a Way Out Capabilities πŸ•΅ πŸ—Ί Addr 🎟 βš™

Slide 86

Slide 86

Signs of a Way Out Capabilities πŸ•΅ πŸ—Ί Addr πŸ‘¨πŸŽ¨ 🎟 βš™

Slide 87

Slide 87

Signs of a Way Out Capabilities πŸ•΅ πŸ—Ί Addr 🎟 🎟 πŸ‘¨πŸŽ¨ βš™

Slide 88

Slide 88

Signs of a Way Out Capabilities πŸ•΅ πŸ—Ί Addr 🎟 🎟 πŸ‘¨πŸŽ¨ βš™ 🎟

Slide 89

Slide 89

Signs of a Way Out OAuth Sequence

Slide 90

Slide 90

Signs of a Way Out OAuth Sequence

Slide 91

Slide 91

Signs of a Way Out OAuth Sequence

Slide 92

Slide 92

Signs of a Way Out OAuth Sequence

Slide 93

Slide 93

Signs of a Way Out UCAN Sequence πŸ•™

Slide 94

Slide 94

Signs of a Way Out UCAN Sequence πŸ•™

Slide 95

Slide 95

Signs of a Way Out UCAN Sequence πŸ•™

Slide 96

Slide 96

Signs of a Way Out UCAN Sequence πŸ•™

Slide 97

Slide 97

Signs of a Way Out Disorderly Programming πŸ€– βš™ πŸ‘¨πŸ’» βš™ πŸ‘¨πŸ’» πŸ‘©πŸ’» πŸ€–

Slide 98

Slide 98

Signs of a Way Out Disorderly Programming πŸ€– βš™ πŸ‘¨πŸ’» βš™ πŸ‘¨πŸ’» πŸ‘©πŸ’» πŸ€–

Slide 99

Slide 99

Signs of a Way Out Don’t Make Me Think

Slide 100

Slide 100

Signs of a Way Out Don’t Make Me Think πŸ‘©πŸ’» πŸ“±

Slide 101

Slide 101

Signs of a Way Out Don’t Make Me Think πŸ‘©πŸ’» πŸ“±

Slide 102

Slide 102

Signs of a Way Out Don’t Make Me Think πŸ‘©πŸ’» πŸ“± βš™ βš™ βš™ βš™ βš™ βš™ βš™ βš™ βš™ βš™ βš™

Slide 103

Slide 103

Signs of a Way Out Don’t Make Me Think πŸ‘©πŸ’» πŸ“± βš™ βš™ βš™ βš™ βš™ βš™ βš™ βš™ βš™ βš™ βš™

Slide 104

Slide 104

Slide 105

Slide 105

Compute Substrate β€” Schedule. Execute. Verify. Reuse β€”

Slide 106

Slide 106

Compute Substrate Wasm Eats the World

Slide 107

Slide 107

Compute Substrate Wasm Eats the World

Slide 108

Slide 108

Compute Substrate Wasm Eats the World Bring your own language Runs everywhere Deterministic mode

Slide 109

Slide 109

Compute Substrate With Their Powers Combined!

Slide 110

Slide 110

Compute Substrate With Their Powers Combined! Compute βš™ Data πŸ’Ύ Auth 🎟

Slide 111

Slide 111

Compute Substrate With Their Powers Combined! ! e r e h veryw E Compute βš™ Data πŸ’Ύ Auth 🎟

Slide 112

Slide 112

Compute Substrate With Their Powers Combined! ! e r e h veryw E Compute βš™ Data πŸ’Ύ Auth 🎟

Slide 113

Slide 113

Compute Substrate With Their Powers Combined! ! e r e h veryw E Compute βš™ Data πŸ’Ύ Auth 🎟

Slide 114

Slide 114

Compute Substrate With Their Powers Combined! { IPVM ! e r e h veryw E Compute βš™ Data πŸ’Ύ Auth 🎟

Slide 115

Slide 115

Compute Substrate Code-as-Data

Slide 116

Slide 116

Compute Substrate Code-as-Data Arguments

Slide 117

Slide 117

Compute Substrate Code-as-Data Arguments

Slide 118

Slide 118

Compute Substrate Code-as-Data Task f Arguments Scheduling Con ig, etc

Slide 119

Slide 119

Compute Substrate Code-as-Data Task f Arguments Scheduling Con ig, etc

Slide 120

Slide 120

Compute Substrate Code-as-Data Task f Arguments Scheduling Con ig, etc

Slide 121

Slide 121

Compute Substrate Code-as-Data Task f Arguments Scheduling Con ig, etc

Slide 122

Slide 122

Compute Substrate Code-as-Data Receipt Task f Arguments Scheduling Con ig, etc

Slide 123

Slide 123

Compute Substrate Code-as-Data Receipt Task f ff Arguments Pure Values & E ects Scheduling Con ig, etc Metadata (e.g. trace)

Slide 124

Slide 124

Compute Substrate Input Addressing

Slide 125

Slide 125

Compute Substrate Input Addressing 🦞

Slide 126

Slide 126

Compute Substrate Input Addressing hash(🦞) 🦞

Slide 127

Slide 127

Compute Substrate Input Addressing hash(🦞) 🦞 🧾

Slide 128

Slide 128

Compute Substrate Input Addressing hash(🦞) hash({ rsc: β€œdns:example.com” op: β€œcrud/update” input: {foo: β€œbar”} }) 🦞 🧾

Slide 129

Slide 129

Compute Substrate IPLD Schema

Slide 130

Slide 130

Compute Substrate IPLD Schema Instruction (Closure)

Slide 131

Slide 131

Compute Substrate IPLD Schema Task Instruction (Closure)

Slide 132

Slide 132

Compute Substrate IPLD Schema Invocation Task Instruction (Closure)

Slide 133

Slide 133

Compute Substrate IPLD Schema Invocation Invocation Invocation Task Task Task Instruction (Closure) Instruction (Closure) Instruction (Closure)

Slide 134

Slide 134

Compute Substrate IPLD Schema f Work low Invocation Invocation Invocation Task Task Task Instruction (Closure) Instruction (Closure) Instruction (Closure)

Slide 135

Slide 135

Compute Substrate Matching Impedance

Slide 136

Slide 136

Compute Substrate Matching Impedance

Slide 137

Slide 137

Compute Substrate Matching Impedance

Slide 138

Slide 138

Compute Substrate Matching Impedance

Slide 139

Slide 139

Compute Substrate Matching Impedance e.g. 2 IPLD numerics < 10 WIT numerics

Slide 140

Slide 140

Compute Substrate Matching Impedance e.g. 2 IPLD numerics < 10 WIT numerics

Slide 141

Slide 141

Compute Substrate Matching Impedance

Slide 142

Slide 142

Compute Substrate Composition Without Imposition

Slide 143

Slide 143

Compute Substrate Composition Without Imposition πŸ‘©πŸ’» 🌈 🐢 🍬 🍾 🧸

Slide 144

Slide 144

Compute Substrate Composition Without Imposition πŸ‘©πŸ’» πŸ‘¨πŸ¦³πŸ–₯ 🌈 🐢 🍬 🍾 🧸 🌈 🐢 🍬 🍾 🧸

Slide 145

Slide 145

Compute Substrate Composition Without Imposition πŸ‘©πŸ’» πŸ‘¨πŸ¦³πŸ–₯ 🌈 🐢 🍬 🍾 🧸 🌈 🐢 🍬 🍾 🧸 πŸ‘©πŸš€ 🐢

Slide 146

Slide 146

Compute Substrate Composition Without Imposition πŸ‘©πŸ’» πŸ‘¨πŸ¦³πŸ–₯ 🌈 🐢 🍬 🍾 🧸 🌈 🐢 🍬 🍾 🧸 🌈 🍾 🧸 πŸ‘¨πŸŽ¨ πŸ‘©πŸš€ 🐢

Slide 147

Slide 147

Compute Substrate Composition Without Imposition πŸ‘©πŸ’» πŸ‘¨πŸ¦³πŸ–₯ 🌈 🐢 🍬 🍾 🧸 🌈 🐢 🍬 🍾 🧸 🌈 πŸ‘©πŸš€ 🐢 🌈 🐢 🍾 🧸 πŸ‘¨πŸŽ¨ β˜βš™

Slide 148

Slide 148

Compute Substrate Distributed Invocation

Slide 149

Slide 149

Compute Substrate Distributed Invocation dns:example.com/TYPE=TXT crud/update

Slide 150

Slide 150

Compute Substrate Distributed Invocation dns:example.com/TYPE=TXT crud/update await mailto:alice@example.com msg/send {to: bob@example.com}

Slide 151

Slide 151

Compute Substrate Distributed Invocation dns:example.com/TYPE=TXT crud/update await mailto:alice@example.com msg/send {to: bob@example.com} await mailto:alice@example.com msg/send {to: carol@example.com}

Slide 152

Slide 152

Compute Substrate Distributed Invocation dns:example.com/TYPE=TXT crud/update await await mailto:alice@example.com msg/send {to: bob@example.com} await mailto:alice@example.com msg/send {to: carol@example.com} await https://example.com/report crud/update

Slide 153

Slide 153

Compute Substrate Distributed Invocation dns:example.com/TYPE=TXT crud/update await mailto:alice@example.com msg/send {to: carol@example.com} await mailto:alice@example.com msg/send {to: bob@example.com} await await https://example.com/report crud/update

Slide 154

Slide 154

Compute Substrate Distributed Invocation πŸ‘©πŸš€ πŸ‘¨πŸ³ dns:example.com/TYPE=TXT crud/update await mailto:alice@example.com msg/send {to: carol@example.com} await mailto:alice@example.com msg/send {to: bob@example.com} await await https://example.com/report crud/update

Slide 155

Slide 155

Compute Substrate Cache, Suspend, Move, Verify

Slide 156

Slide 156

Compute Substrate Cache, Suspend, Move, Verify 🚰 🧾 🚰 🧾

Slide 157

Slide 157

Compute Substrate Cache, Suspend, Move, Verify 🚰 🧾 🚰 🧾

Slide 158

Slide 158

Compute Substrate Cache, Suspend, Move, Verify 🚰 🧾 🚰 🧾

Slide 159

Slide 159

Compute Substrate Cache, Suspend, Move, Verify 🚰 🧾 🚰 🧾 🚰 🧾

Slide 160

Slide 160

Compute Substrate Determinism = Fully Verifiable Computation

Slide 161

Slide 161

Compute Substrate Determinism = Fully Verifiable Computation

Slide 162

Slide 162

Compute Substrate Determinism = Fully Verifiable Computation 🚰 🧾 🚰 🧾 🧾

Slide 163

Slide 163

Compute Substrate Determinism = Fully Verifiable Computation 🚰 🧾 🚰 🚰 🧾 🚰 🧾

Slide 164

Slide 164

Compute Substrate Determinism = Fully Verifiable Computation 🚰 🚰 βœ… 🧾 βœ… 🧾 ❌ 🧾 🚰 🚰

Slide 165

Slide 165

Compute Substrate Determinism = Fully Verifiable Computation 🚰 🚰 βœ… 🧾 βœ… 🧾 ❌ 🧾 🚰 🚰

Slide 166

Slide 166

Compute Substrate Surprise: Reverse Lookup For Free

Slide 167

Slide 167

Compute Substrate Surprise: Reverse Lookup For Free InID β†’ Computed Result

Slide 168

Slide 168

Compute Substrate Surprise: Reverse Lookup For Free InID β†’ Computed Result e.g. AI moderation classifier

Slide 169

Slide 169

Compute Substrate Surprise: Reverse Lookup For Free InID β†’ Computed Result e.g. AI moderation classifier e.g. Distributed token validation

Slide 170

Slide 170

Compute Substrate With a Little Help From My Friends

Slide 171

Slide 171

Compute Substrate Throughput With a Little Help From My Friends Parallelisation

Slide 172

Slide 172

Compute Substrate With a Little Help From My Friends Throughput Ideal (Linear) Parallelisation

Slide 173

Slide 173

Compute Substrate With a Little Help From My Friends Ideal (Linear) Throughput Amdahl’s Law Parallelisation

Slide 174

Slide 174

Compute Substrate With a Little Help From My Friends Ideal (Linear) Throughput Amdahl’s Law Universal Scaling Law Parallelisation

Slide 175

Slide 175

Compute Substrate With a Little Help From My Friends Ideal (Linear) Throughput Amdahl’s Law Incoherence, Data Contention Parallelisation Universal Scaling Law

Slide 176

Slide 176

Compute Substrate With a Little Help From My Friends Throughput Global Adaptive Optimisation πŸš€ Ideal (Linear) Amdahl’s Law Incoherence, Data Contention Parallelisation Universal Scaling Law

Slide 177

Slide 177

Compute Substrate With a Little Help From My Friends Throughput Global Adaptive Optimisation πŸš€ Ideal (Linear) Amdahl’s Law Incoherence, Data Contention Parallelisation Universal Scaling Law

Slide 178

Slide 178

Slide 179

Slide 179

The Safety Dance β€” Out of the Locality Tar Pit β€”

Slide 180

Slide 180

The Safety Dance πŸ•Ί

Slide 181

Slide 181

The Safety Dance πŸ•Ί If their application can be cast as pure data processing, they benefit from the past 40-50 years of work form the database community, [and] completely isolate the developer from the possibility of failure β€” Goldstein et al, AMBROSIA: Providing Performant Virtual Resiliency for Distributed Applications

Slide 182

Slide 182

The Safety Dance πŸ•Ί Virtual Resiliency

Slide 183

Slide 183

The Safety Dance πŸ•Ί Virtual Resiliency Mutable πŸ¦‹ Idempotent πŸ”‚ Deterministic πŸ“…

Slide 184

Slide 184

The Safety Dance πŸ•Ί Virtual Resiliency Mutable πŸ¦‹ Idempotent πŸ”‚ Deterministic πŸ“… Query A Query B

Slide 185

Slide 185

The Safety Dance πŸ•Ί Virtual Resiliency Query A Query B Compute A Mutable πŸ¦‹ Idempotent πŸ”‚ Deterministic πŸ“…

Slide 186

Slide 186

The Safety Dance πŸ•Ί Virtual Resiliency Query A Query B Compute A Mutable πŸ¦‹ Query C Idempotent πŸ”‚ Deterministic πŸ“…

Slide 187

Slide 187

The Safety Dance πŸ•Ί Virtual Resiliency Query A Query B Compute A Mutable πŸ¦‹ Query C Idempotent πŸ”‚ Deterministic πŸ“… Compute B Query D

Slide 188

Slide 188

The Safety Dance πŸ•Ί Virtual Resiliency Query A Query B Compute A Mutable πŸ¦‹ Query C Idempotent πŸ”‚ Deterministic πŸ“… Compute B Query D Mutation

Slide 189

Slide 189

The Safety Dance πŸ•Ί Virtual Resiliency Mutation Query A Query B Compute A Mutable πŸ¦‹ Query C Mutation Idempotent πŸ”‚ Deterministic πŸ“… Compute B Query D Mutation

Slide 190

Slide 190

The Safety Dance πŸ•Ί Simplified Safe Layout

Slide 191

Slide 191

The Safety Dance πŸ•Ί Simplified Safe Layout Queries Queries Queries

Slide 192

Slide 192

The Safety Dance πŸ•Ί Simplified Safe Layout Queries Queries Queries Pure Computation Pure Computation Pure Computation

Slide 193

Slide 193

The Safety Dance πŸ•Ί Simplified Safe Layout Queries Queries Queries Pure Computation Pure Computation Pure Computation

Slide 194

Slide 194

The Safety Dance πŸ•Ί Simplified Safe Layout Queries Queries Queries Pure Computation Pure Computation Pure Computation Mutation

Slide 195

Slide 195

The Safety Dance πŸ•Ί Simple Example Compute A Query Compute B Mutation

Slide 196

Slide 196

The Safety Dance πŸ•Ί Simple Example Compute A Query Compute B Mutation

Slide 197

Slide 197

The Safety Dance πŸ•Ί Simple Example Compute A Query πŸ¦Ίβœ” Compute B Mutation

Slide 198

Slide 198

Slide 199

Slide 199

Wrap Up

Slide 200

Slide 200

Wrap Up

Slide 201

Slide 201

Wrap Up Reusable/Remixable Specs

Slide 202

Slide 202

Wrap Up Reusable/Remixable Specs UCAN Core 🎟 Distributed Authority IPLD-WIT βš™ ABI Varsig ✍ Signature Multiformat

Slide 203

Slide 203

Wrap Up Reusable/Remixable Specs UCAN Pipeline 🌊 Call Graph, Awaits, etc UCAN Invocation πŸͺ„ Input Addressing, Execution, Memoization, etc UCAN Core 🎟 Distributed Authority IPLD-WIT βš™ ABI Varsig ✍ Signature Multiformat

Slide 204

Slide 204

Wrap Up Reusable/Remixable Specs IPVM Task βš™ VM Config, Verification, etc UCAN Pipeline 🌊 Call Graph, Awaits, etc UCAN Invocation πŸͺ„ Input Addressing, Execution, Memoization, etc UCAN Core 🎟 Distributed Authority IPLD-WIT βš™ ABI Varsig ✍ Signature Multiformat

Slide 205

Slide 205

Wrap Up Reusable/Remixable Specs IPVM Workflow πŸŽ› Transactions, Error Handling, Defaults IPVM Task βš™ VM Config, Verification, etc UCAN Pipeline 🌊 Call Graph, Awaits, etc UCAN Invocation πŸͺ„ Input Addressing, Execution, Memoization, etc UCAN Core 🎟 Distributed Authority IPLD-WIT βš™ ABI Varsig ✍ Signature Multiformat

Slide 206

Slide 206

Wrap Up Reusable/Remixable Specs IPVM Workflow πŸŽ› Transactions, Error Handling, Defaults IPVM Task βš™ VM Config, Verification, etc UCAN Pipeline 🌊 Call Graph, Awaits, etc UCAN-Chan / ユーキャンけゃん Consumable Channels UCAN Invocation πŸͺ„ Input Addressing, Execution, Memoization, etc UCAN Core 🎟 Distributed Authority IPLD-WIT βš™ ABI Varsig ✍ Signature Multiformat

Slide 207

Slide 207

github.com/ipvm-wg lu.ma/ipvm πŸŽ‰ Thank You, Boston πŸ‡ΊπŸ‡Έ brooklyn@fission.codes discord.gg/fissioncodes github.com/expede

Slide 208

Slide 208

github.com/ipvm-wg lu.ma/ipvm πŸŽ‰ Thank You, Boston πŸ‡ΊπŸ‡Έ brooklyn@fission.codes discord.gg/fissioncodes github.com/expede

Slide 209

Slide 209

github.com/ipvm-wg lu.ma/ipvm πŸŽ‰ Thank You, Boston πŸ‡ΊπŸ‡Έ brooklyn@fission.codes discord.gg/fissioncodes github.com/expede