LogosLab
A learning experience for the home or classroom
Background
We can use NixOS and a standard set of inexpensive devices to package both software and hardware, alongside instructions, into a self-guided experience which teaches technology, programming, and more, all while using the Logos stack to connect with other students and earn rewards.
Uses open-source hardware based on FOSS principles ( e.g. https://pine64.org )
Product
Example kit includes:
- Nix-compatible Laptop or mini-PC (no OS)
- Nix-compatible phone (no OS)
- Nix-compatible e-ink tablet, pre-installed with NixOS and an app called TechTree
- the tablet has no networking ports, bluetooth, or WiFi
- only NFC
- Keycard + Shell
- Printed Logos literature
- Branded Swag
- printed Getting Started instructions:
- setup Keycard + Shell
- create profile in TechTree with Keycard
TechTree:
- Prior art: https://speedrunethereum.com/
- Players progress through a dependency graph of lessons to learn, install, run, and build on the Logos stack, unlocking rewards along the way
- on the e-reader it’s basically an interactive instruction manual
- First stage: Install NixOS on laptop and mobile
- Second stage: Install and run nwaku, nimbus, nim-codex
- Third stage: generate a transaction to a specific smart contract and sign with keycard to unlock the next stage
- Third stage: follow instructions to write scripts that “gather” pieces of a puzzle from each network
- The different pieces were derived from the signing address and some secret value, such that if all the pieces are gathered together, one could prove that hashing with the signing address results in the secret value
- e.g. find a specific event for a smart contract, listen to a topic on Waku, get a cid from codex
- Fourth stage: Install Status and use the gathered key to unlock access to an exclusive community with other players
- From there, lessons continue depending on which tracts players choose
Misc
LogosLab in different settings
Home
The above product description assumes an individual purchasing a kit and playing with it at home. There’s not much guarantee it will be used at all, and in general it might be hard for someone, student or guardian of a student, to justify spending ~$600 for a phone and laptop (based on prices from pine64, and I doubt those are even fully capable of running every feature of our stack) for something that might not be used much. I do think there are some potential customers for this, but in terms of reaching as many people as possible it may not be as effective.
Classroom
An organization like a school (or homeschooling pod, university, etc) maybe buys several for a classroom, and maybe students can “borrow” them for the duration of a course and give them back.
In this case, it makes sense to expand the software to be able to store and retrieve all student’s data using just keycard or other method of authentication. So even if a student finishes a course, or leaves, or is away from the classroom, lessons can be resumed anywhere on any device (it’ll be up to them to get the logos stack running on devices that were not purchased as part of LogosLab).
But what if, in place of or alongside of, the portable devices, there are stationary terminals in form factors similar to arcade cabinets, using standard set of hardware both powerful enough to run full logos stack and deterministic such that they can be configured with NixOS and near-guaranteed to run all dependencies without compatibility issues.
The increased cost of these devices (now basically little servers with terminals) would be justified if they can be guaranteed to support an arbitrary number of students, even though only one student a time can use the physical terminal. Hence the need for fully-deterministic student “state” that can be retrieved using keycard. Even while being actively used as a terminal, the server can host and expose services for anyone on the local network to use, e.g. RPC access, Codex storage, Relay for Waku light clients, etc. Could even stake/mine when no one is using it?