Keeping decentralized networking fun with Spritely

https://spritely.institute

The Spritely Institute: a research institution

Research means collaboration

In the off chance you didn't know Spritely

Pre-Spritely

ActivityPub-logo-large.png

Goblins!

Hoot!

OCapN!

And social stuff?!!?!

We're working on it, more later…

So… what's with the games?

Games are not the goal!

But they help our goals!

  • Good for stress testing infrastructure
  • Help people "experience" complicated topics
  • Games keep things fun!
  • But you have to scope them right!

Goblins

Goblins is:

  • A distributed programming environment
  • Builds on a powerful security paradigm (capabilities)
  • Transactional with automatic state rollback on unhandled errors
  • Time traveling distributed debugger
  • Persistent: secure serialization of a Goblins object graph to disk

Wait what?

How about we just show you instead?

Terminal Phase

Terminal Phase time travel

Time-traveling distributed debugger

Debugging example

Causality graphs

OCapN: The Object Capability Network

Fantasary v0.1: Chat in the terminal

Fantasary v0.2: Chat in the browser!

Persistence

Terminal Phase persistence

Hoot:

  • We want our software in the hands of users
  • We want to target the web
  • but we use Scheme!
  • Hoot compiles Scheme to WebAssembly

Early days: Wireworld

Next steps: Strigoform

Hoot meets Goblins: Cirkoban

Cirkoban

Community participation

Lisp Game Jam

Lisp Game Jam results

  • 48 games submitted
  • 15 written in Guile Scheme
  • 11 built with Hoot
  • 9 community projects!

System Crafters live stream

David Wilson streaming the development of Lambda Dungeon

Scoping games

Recap of how games help our goals

  • Good for stress testing infrastructure
  • Help people "experience" complicated topics
  • Games keep things fun!
  • But you have to scope them right!

"Virtual worlds tend to be more interesting to their developers than their users."

– Virtual worlds pioneer Chip Morningstar

So why build a virtual world?

"[Virtual worlds] let you bring a lot more of your innate neural hardware to bear on the problems that need to be solved.

By helping concretize problems that are otherwise very abstract, they make these problems a lot easier to think about."

– Chip Morningstar

2D is complex enough

Recommended reading

http://farawaytimes.blogspot.com/2023/02/how-to-make-good-small-games.html

Time box your projects

Call to participate

Try our games!

https://spritely.institute/arcade/

Join in development!

https://gitlab.com/spritely/guile-goblins

Let's build secure, distributed systems together!

https://community.spritely.institute/

Donate!

https://www.every.org/spritely