The Software Ceiling

Who Uses Software?

End User Expectations

Apps

Inexpensive

Simple One-Purpose App

Hierarchy

Uninterested in Details

Learn Incrementally

Domain Expert Expectations

LEGO® Blocks

Whiteboards

Eschew Software Expertise

Tools

Software Professionals

Software LEGO® Blocks

Whiteboards

"Software is Complicated"

Hardware Advanced Faster Than Software

QWERTY Effect

New Technlogy?

Many Uses of Computers

Computers as Calculators

One In One Out

Synchronous

Functional Approach



Eschew Time

Eschew State

Removing state

CALL RETURN

Global Variable

Computers for Event-Driven Control

Asynchronous

Components Run Forever

Multiple Outcomes

Eschew Dependencies

Implementing Synchronous Paradigm Using The Asynchronous Paradigm

Isolation

Examples

Blockchain

TWO paradigms - not one

  1. Calculation
    • cryptography
  2. Event-Driven
    • time-based obfuscation
    • p2p

Accidental Complexity

Shuhari