Conclusion
can clone running VMs quickly
Conclusion
can clone running VMs quickly
files inside xfs get fragmented quickly,
fragmentation
Turning a Dockerfile into a rootfs for the MicroVM (quickly)
dockerfile rootfs
The unwritten
A Tailscale VPN
a Linear integration
What if you could open a development environment directly from a @linear ticket? 👀
It's now possible on CodeSandbox! You go to the ticket, click the button, and we create the branch with the right name so you can get started immediately!
Webhook built & runs CodeSandbox 😃
can consistently resume and clone VMs within 2 seconds.
consistent clione and resume
The total timings

But…
makes a fork, and only changes a single file
need to saved only the changed file
copies are lazy
only copy data when we need to mutate it
Whenever it reads from block 3 after this, it will read from its own block 3.
reads from its own block 2
using copy-on-write (CoW)
Copy-on-write,
like the name implies,
will only copy data
when we start writing to it.
Our previous mmap example also uses
copy-on-write if MAP_SHARED is not passed.

Getting
When we actually want to save the snapshot
we'll only have to sync back a little amount!

The kernel does this lazily
The kernel does this lazily:
whenever it has a bit of time on its hands,
it will flush the changes back to the file.
a “mapping” of a given file to memory
as in Emacs of old!

need to find a way where we don't have to write so many bytes to disk.
save on bytes to write on disk
Saving

cut down on serialisation time.
yes
start a server with an internal in-memory counte
The darker art

when switching branches, because it's a fresh environment
switching branch fresh environment
There's a catch
There's a catch to it as well.
Saving a memory snapshot actually takes a while, which I'll cover in this post.
hibernate a VM, we pause it and save its memory to disk
pause and save memory
if the VM has 4GB memory, this file will be 4GB
4GB
not only pause your code, it pauses the full machine, full-stop down to the kernel.
pause the machine
also resumes
spawns and resumes VMx
The dark art
Firecracker
The challenge
memory snapshotting.
yah
et a running MicroVM within 300 milliseconds
micro VM in 300 milliseconds
If you wanted to run a big project that requires Docker, it wouldn't work
required docker would not work


How we clone a running VM in 2 seconds

How we clone a running VM in 2 seconds
x
How to retrieve content uploaded via Helia using the IPFS gateway?
helia ipfs
Render HTML to an image
x
We need more of these build-it-once peer to peer serverless webpages.
I2P which, unlike Tor, supports UDP.
to: I2P - Invisible Internet Project
![]()
Chitchatter uses https://github.com/dmotz/trystero for peer connectivity,
chitchatter trystero connectivity
don't care if some messages are dropped (as chatters can figure it out using human brains)
chatters human minds
And if you trust github/Microsoft to not play games on what is delivered to you (say, because someone backed by the patriot act asked them to).
patriot act
Also the Chitchatter client is web-based, so you can just share a room link without anyone having to install anything to participate.
nothing to install to participate
nl on Sept 6, 2022 | root | parent | next [–] https://github.com/dmotz/trystero#how-it-works
trystero how it works
For anyone who is interested to learn more about Chitchatter, please check out the project README: https://github.com/jeremyckahn/chitchatter#readme
chitchatter HN
The Invisible Internet Project (I2P) is an anonymous network layer (implemented as a mix network) that allows for censorship-resistant, peer-to-peer communication.
from: HN chitchatter trystero
![]()
what a shame it is so invisible. Roamed around in P2P research space on and off before encountering. Obviouslyu lack of diligence but still
We need I3P InterPlaterary InterPersonal Invisible Project
Web logger based on indexedDB and WebWorker
weblogger
UnCloud docs
p2p chat system
for: IndyWeb
is still limited by a key feature of the web: Creating and Hosting servers.
hosting servers
local-first-cyberspace
local-first
WebXR flips this on it's head.
WwbXR flips it on it's head
A roadmap for realizing a local-first and offline-first cyberspace
l1cs
WebXR Device API
Local First Cyberspace Components
follow up
Error when opening newly created post on ipns sutty site
ipns agregore cache
Compare writable IPFS gateway with js-ipfs-fetch
ipns cached
A High-Fidelity Web Archiving Extension for Chrome and Chromium based browsers!
Hypercore Protocol A fast, scalable, and secure peer-to-peer protocol for everyone
Server-sent events for Go
interesting
I created this temporary group chat in order to provide a place that we can post a message among the four of us as needed.
Looks like it does work
IndyWeb 🦅 (alpha team)
could create a private annotation group But I do not see the point
Actually all this is to empower the Open Learning Commons and the Indy Learning Commons
remember feeling like a genius when I implemented my first abstraction Factory Singleton proxy decorator in JavaScript
You have been fooled at industrial scale
Javascript's greatest gift to Mankind
as Douglas Crockford the author of "Javascript the Good Parts" said:
Class-free Objects
Now that is just too empowering an idea
let's turn Javascript into Java
and perpetuate all the gratuitous complications that Java is infested with
simply because the underlying concepts are deeply limiting
I wish I would have written less code
code is not assets
but a liability
I recently asked "You are on your deathbed, what do you regret the most about programming?". Let's break down the biggest mistakes shared by most software engineers.

recently I volunteered my time at a hospice center for dying programmers also known as X and I asked the question
x
Element: querySelectorAll() method
document.querySelectorAll('meta[property="og:image"]')[0].content
do.how - open graph image

Nothing you can say but you can learn how to play the game.
Nothing you can make that can't be made.
Nothing you can do, but you can learn how to be you in time.
There's nothing you can know that isn't known. ❌‽
Nothing you can do, but you can learn how to be you in time.
learn how to be you thorugh time
Isomorphic JavaScript
x
talking about ipfs fetch specifically i want to look at how i've combined some of the usual webby interfaces we're used to with some of these cool peer-to-peer interface
.meta.doHow - development on the margins - continue with the practice of articulating on the margin - start to develop on the margins, the software needed to creat & morph annotations
.meta.do.how :- create a card for page
fn.getTitle
``` document.querySelector("title").innerHTML
```
.fn.getOgImage ``` document.querySelectorAll('meta[property="og:image"]')[0].content < 'https://i.ytimg.com/vi/ARkArPQFmXc/maxresdefault.jpg'
```

.real.soon - intent to be able to process annotations
.card
- titlle: 'IPFS Fetch - Mauve - YouTube'
- stub
- to:
'https://via.hypothes.is/' + location.href
https://via.hypothes.is/' + location.href

.do.meta - create card
``` document.querySelector('title').innerHTML 'IPFS Fetch - Mauve - YouTube'
document.querySelectorAll('meta[property="og:image"]')[0].content
'https://i.ytimg.com/vi/ARkArPQFmXc/maxresdefault.jpg'
```
.card - title:'IPFS Fetch - Mauve - YouTube' .- src: 'IPFS Fetch - Mauve - YouTube' - stub: - talking about ipfs fetch: - how i've combined some of the usual webby interfaces we're used to with some of these cool peer-to-peer interface

IPFS Fetch - Mauve
do.how - create card
get title - document.querySelector('title').innerHTML
get image - document.querySelectorAll('meta[property="og:image"]')[0].content
represented
named and amenable to the put to be interpreted in specific context/environment dependent way
.card: - title: How to access local host on a mobile device? - stub: BrowserStack have made it easier to test and access local development environments on mobile devices.

BrowserStack have made it easier to test and access local development environments on mobile devices
title
Test your Local Website on Real Devices Access your local website on real mobile devices. Test its look and feel before launching

How To Host A Web Server On Android

How To Create Web Archives with ArchiveWeb.page
The Internet is hard to archive.
indeed

from - Agregore
as you all know Licklider is heading up up ARPA the government funding agency
just listen to the next couple of minutes where he says API is a baaad ide

About A basic fediverse blocklist for Mastodon admins to block the most well known sources of hate speech, harassment, etc.
from: "Distributed Press" (distributed.press)

GardenFence to automatically block servers that have shown to be sources of hateful rhetoric, harassment, and spam.)
block some
Approve replies as comments
replies
Post to the Fediverse
Post to the Fediverse
part of POSSE
incorporate ActivityPub
activity pub
Social Inbox for the Decentralized Web
social inbox for DWEB
check out the auto-generated swagger interface.
“DWeb-ify” your site, you just need a Distributed.Press instance
instance => server?
make publishing fair, democratic, and dignified for all.
Distributed Press is an open source publishing tool for the World Wide Web and DWeb. It automates publishing and hosting content to the WWW that it seeds to Hypercore and IPFS.

embeded with social interactions
amplify free expression worldwide
amplify
Distributed Press API
from: "Distributed Press" (distributed.press)
A Space-based architecture (SBA) is an approach to distributed computing systems where the various components interact with each other by exchanging tuples or entries via one or more shared spaces.
Exchanging messages
Transition form Actor Model to Human Actor Models
from-"No to SQL? Anti-database movem…" (natishalom.typepad.com)
Space Based Architecture (SBA). The Actor model that was introduced with new functional languages like Scala and Erlang is built into the SBA model, with the difference that in SBA, actors can share state and pass events by references, and thus avoid the overhead of copying the data with every transaction.
Space Based Architector (SBA)
“No to SQL? Anti-database movement gains steam”
No SQL Anti-(SQL)-databases
15 years later No Databse per se Anti-Database The Network became the computer
time for the Network to become the Datanse
No to SQL? Anti-database movement gains steam – My Take
The Bernician In Voluntary Association I Trust

A preconfigured instance which allows developers to "test drive" OrbitDB.
test drive OrbitDB
How to do most anything with your Helia node

install IPFS
IPFS Helia
Helia
command-line version of IPFS
no GUI
Get Started
IPFS
“I know not with what weapons World War III will be fought, but World War IV will be fought with sticks and stones.”

computers are virtualizes that's what Universal turning machine means
most ideas don't scale well
forget about wires you
don't need no stinking wires what we need to do is to understand how to organize systems as virtual entities and
we can render some of them and hardware and we'll render some of them in software but in fact everything winds up
being something like a single communications line with an arbitrary number of entities on everyone can talk
to everyone else and all of a sudden you've thrown away all the things that Bell Telephone had and every
piece of the way most offer was done and replaced it with a simple messaging system
it was called the Internet and they could not use any technique that Bell Telephone 80 used because didn't scale just completely out of the scope
did not scale
you have to go back to a different conception of what the materials are
how to build structures that scake very well
what we can do with out special knowledge we wind up with an Egyptian
pyramid it's the only big thing you can build without knowing how to build which is just a big garbage dump and plastered
over with limestone so it looks good but if you think about it camp it has no room inside so in order to get the
superdome you have to do that other thing you have to go back to a different conception of what the materials are was
you're actually tensile structures and then you can build enormous domed structures that scale very very well
pulling other people into a blue world
invention is easy with the right kind of funding
what.is - difficult - pulling other people into a blue world
difficult < is - pulling other people into a blue world
the blue plain < is - also a Gulley
the blue plane is also a gully
https://hyp.is/400alBEAEe-CiTPy83Uu9A/www.youtube.com/watch?v=NdSD07U5uBs
sanity is relative to the things we believe are true
sanitty < is
mimetic signatures
Memetic signature
Salience landscape
Symmathetic signature
those that are on the Forefront of evolutionary change are largely operating in silos with little in the way of shared infrastructure
unconscious economy
They are heavily interconnected
delivered is via profoundly and progressively disempowering architecture
Apps
returning to that uh sanity
Indigenious worldviee
our systems for Collective sense making meaning making and choice making are themselves breaking down
breaking down
Wow Person Centric Architecture and the MAP Memetic Activation Platform MAP
https://via.hypothes.is/https://www.youtube.com/watch?v=sfB7zCwOpo8
via.hypothes.is now loads youtube videos with transcripts with the docdrop.org annotator preloaded
looks like hypothes.is is automatically brings up transcript for annotations!
No need to have the browser extension installed can signup to hypothesis and make reading active and social and annotate!
fostering co-creation of a world that works for all
Memetic Activation Platform MAP
https://via.hypothes.is/https://www.youtube.com/watch?v=sfB7zCwOpo8
via.hypothes.is now loads youtube videos with transcripts with the docdrop.org annotator preloaded
Represents elements with an attribute name of attr whose value is exactly value.
document.querySelectorAll('meta[property="og:image"]')[0]
document.querySelectorAll('meta[property="og:image"]')[0].content
'https://i.ytimg.com/vi/sfB7zCwOpo8/hqdefault.jpg'

Privacy
yes
make it as hard as possible to switch to a different provider.
hard to switch
leaving all control of it to them.
leave control to them
companies like Tumblr can purge content from their servers and leave people without a platform.
Tumbl purge content no platform
they get to be the ones that decide how and what you can share
they decide what u can share
Publishing content on the web is already easy
publishing is easy
The link you get back is used to find devices in the P2P network that have a copy of your data so that you can start downloading from them.
link find the 1 who has a copy
all I need to publish content is to run a command
publish by running a command
With P2P tech, you're able to scale your content up just by way of the protoco
P2P tech
scale up by protocol
pay for additional third parties in front of their content.
pay additional third parties
need to be just as easy, if not easier, to set up as an existing CDN
easier cheaper than CDN
sharing the load amongst everyone that's accessed it.
sharing load amongst those accessing it
Content Distribution Costs
n order to convince people to adopt something, you need it to be 10 times better than what they have already
convince 10x better
looking for existing places to shove it into rather than solving an actual problem
A Killer App For P2P
Better be called a maker App
high level API for "lists of posts"
API for list of posts
should be some sort of service for backing people's feeds up when they're offline
backing up service?
"create an account" on their local device, set up tags for their profile, and find other people by their tags.
create an account on their own devices
Makes it easy to share data between users Emphasizes users owning their own data Works offline and shares data on the local network Makes it easy to form ad-hoc communities
TypePadhttps://natishalom.typepad.com › 2009/07 › no-to-sql-an...TypePadhttps://natishalom.typepad.com › 2009/07 › no-to-sql-an...Jul 9, 2009 — Eric Lai published a provoking article on Computerworld magazine titled “No to SQL? Anti-database movement gains steam” where he pointed to
Showing results for egregore(function(){var q='egregore';var fprsl=document.getElementById('fprsl');fprsl.onclick = function(e){var orig = document.getElementsByName('q')[0].value;if(google.ac&&google.ac.ou){google.ac.ou(q);}else{document.getElementsByName('q')[0].value=q;} document.getElementById("fprs").outerHTML='';document.title = document.title.replace(orig,q);google.log('','&ved='+fprsl.dataset['ved'],'',fprsl);e.preventDefault();};})();Search instead for aggregore

The moment where my dislexia strikes gold
aggregor is a web browse
Web browser integrate P2P protocols
Interview with Mauve, the Creator of Agregore
Agregore IPFS Development Environment V3
using this
BitTorrent Web - Sketchup
BitTorrent + Markdown + Native UI + Content Authoring = Local-First Web
Mauve's Blog
x
My data is in a useful format:
useful formats
Credible exit

Sphere servers are superpeers, personal IPFS gateways that live in the cloud and do a handful of useful things. Your sphere server…
Sphere servers are super peers
personal IPFS gateways that live in the cloud
Sphere Server: your personal IPFS gateway

from < Agora - tutorial - part 2 - impb
P2PU course platform aka Lernanta
Interplanetary Micro Blog IPFS, Web Components, HTML5
A proof of concept application to create and maintain a peer 2 peer blog using the IPFS protocol handlers in the Agregore Web browser.
Interplanetary Micro Blog
Wow
IPFS, Web Components, HTML5
A proof of concept application to create and maintain a peer 2 peer blog using the IPFS protocol handlers in the Agregore Web browser.
Projects
Vizualizing complexity in Gentoo

P2PU badge platform
An open badge issuing platform built to encourage project based learning and peer feedback. None of the gamification hoohaa. I worked with the always insightful Vanessa Gennarelli to build this project from concept to pre-MVP and handed it over to the trustworthy hands of Erika Pogorelc to launch and shephard.
Unbreakout
Unbreakout
What if doing breakouts in Zoom calls could be collaborative and fun? That is what this proof of concept project explores. Users get to create breakouts and can choose what session to join while engaging in a light weight and interactive interface.
Zoom breakout
Learning Circles
Learning Circles
The b(ack)log
from << Agregore - tutorial - part 3
Octasphere
A nice picture of (dependency) hell
dependency hell
And now let's get the index.html and lib.js from the web and add them to our site using the function we just defined.
getting lib.hjs and index.html from the web https://www.thebacklog.net/projects/agregore-web-apps/amt3.js'
https://www.thebacklog.net/projects/agregore-web-apps/amt3-index.tmpl
to https://hyp.is/E4-QqA73Ee-RRKP8GhMMag/www.thebacklog.net/
If you want to create something, you serve it directly from your computer, and when somebody downloads their content they will also re-share it.
creator serve it from their computer
when somebody download they will re-share
for - Indy Learning Commons
The distributed web works by removing central web servers and instead using Peer to Peer connections directly between people to load data
distributed web p2p connections
![]()
blocking = theft is the criminalization of the inalienable right to privacy.
blocking = theft

Basic Mode

The advanced popup user interface includes a point-and-click firewall that is configurable on a per-site basis.

wide-spectrum content blocker

from - Agregore
is not an "ad blocker", it is a wide-spectrum blocker, which happens to be able to function as a mere "ad blocker". But it can also be used in a manner similar to NoScript (to block scripts) and/or RequestPolicy (to block all 3rd-party servers by default), using a point-and-click user interface.
not an adblocker
wide spectrum blocker

Cloud storage Jump to bottom gwarser edited this page Mar 27, 2024 · 60 revisions
from - Agregore
Pin Manager
📌 Agregore pin manager
Let's create a function to fetch the contents of a directory. Normally when we fetch an IPFS directory in the Agregore Browser, it checks to see if there is an index file present and if so, it returns that file. To disable that, we add the querystring ?noResolve to the end of the directory URL
create list dir
We can get a list of list of all the files in a directory in IPFS by adding '?noResolve' to the path.
noResolve
you should now see a directory listing
x
Agregore Browser IPFS Development Environment
Load the script and create index.html:
``
let script = document.createElement('script')
script.src = 'lib.js'
document.head.appendChild(script)
setTimeout( () => updateSite('index.html',<html>
<head><title>Page title</title></head>
<br />
<body>
</html>`), 1000) ```
Define and save the updateSite function
javascript
async function updateSite(filename, content){
let cid = window.location.hostname
const resp = await fetch(`ipfs://${cid}/${filename}`, {method: 'put', body: content})
const newLocation = resp.headers.get('location')
window.location = new URL(newLocation).origin
}
updateSite('lib.js', updateSite.toString())
Start with a blank site:
window.location = 'ipfs://bafybeiczsscdsbs7ffqz55asqdf3smv6klcw3gofszvwlyarci47bgf354'
have a minimum viable site that we can update!!
``
updateSite('index.html',<html>
<head><title>Page title</title></head>
<br />
<body>
O, hey darkness, you're still there?
<script src="lib.js"></script> </body></html>`) ```
do a PUT request to the current IPFS content ID
create a basic HTML file
``
let newPageContent =<html>
<head><title>Page title</title></head>
<br />
<body>
</html>let cid = window.location.hostname
const resp = await fetch(ipfs://${cid}/index.html`, {method: 'put', body: newPageContent})
const newLocation = resp.headers.get('location')
window.location = newLocation
```
open the developer tools.

This is a special IPFS address for an empty directory.
open empty directory
sepcial IPFS address
enter the following address: ipfs://bafyaabakaieac/
create a basic development environment for a site hosted on IPFS
development hosted IPFS
Agregore Browser IPFS Development Environment

Sociocratic Neighbourhood Circles in Europe
x
you don't 00:03:40 have control over it since other people will upload your name and phone number without your knowledge
You do not have control over identifying information
Your Pseudonym should work under your control and anything related to that
