As people have probably guessed, a lot of the demos you've seeing out of me (the magent paper, Goblins, and yes, even Racktris) are Spritely-related. For those who don't know, Spritely is my longer-term project for distributed online social environments... imagine a fediverse MUD or etc, but with much stronger security and privacy properties than the Fediverse has.
I'm going to keep doing this for a bit, churning out demos; they're going to get more visibly close to the real system as I go.
I feel embarrassed about the slow pace; it would be great if I could work on this full time; development would be much faster. I'm in a reasonably good place in that I have a nice $DAYJOB where I do work on some related problems and with great people (though I do hate working with javascript).
I've considered asking for money for my Patreon or something to see if I could replace that income, but I dunno. Maybe I need more to show before such a thing is even worth exploring.
@cwebber Put the Patreon page up, goddammit. You're one of the people responsible for the future of the Fediverse and I'll gladly throw money at you because of that.
@phoe Oh, I have a Patreon page, I'm just not advertising it really: https://www.patreon.com/cwebber
I think it would take hitting $1500 / month for me to be able to totally work full time on this stuff though, and that seems like a lot to raise. In the unlikely event that somehow I got that much coming in per month, I could switch to working on building cool fediverse-converging-with-distributed-games things full time.
That seems like a lot to raise though.
@phoe I might be able to do it if every time I release one of these demos I accompanied it with a "like this? donate to my patreon!" type thing or something, which is I guess a thing people do
And since I'm working I'm of course thinking about the demos I will be writing next... probably one of the following:
- A minimal ActivityPub server tutorial?
- Add support for actors distributed across processes and machines to Spritely
- A minimal chat client and protocol in Racket (demo goal: practice for for the MUD'ish AP client)
- Finish that damn petnames paper already
- An actual petnames "contact list"
- Maybe one of the above explicitly in conjunction with I2P or Tor Onion Services
Oh, and:
- Figure out how to get live hacking ability into Racket
- Port of the MUD code I wrote in Guile to Racket (you can see more on the video on http://www.gnu.org/software/8sync/ )
- Add an object capability secure language to Racket for secure remote code execution (so players can contribute NPCs and etc to the server safely)
@cwebber Oh nice, I just made a post about my MUD as well. Is yours open-source?
@freemo Mudsync is free software, you can see a demo video of it at http://www.gnu.org/software/8sync/ and the code is at https://notabug.org/cwebber/mudsync/
But the plan is next to move to a distributed, federated "MUD" like game https://dustycloud.org/misc/mmose.pdf
@freemo BTW if you want to see how that distributed system could possibly work, this paper involves a lot of ocap jargon but it has most of the right ideas https://ieeexplore.ieee.org/document/4480750/?reload=true (can't find the non-paywalled version anymore though)
@freemo here it is, non-paywalled preview version https://www.uni-weimar.de/fileadmin/user/fak/medien/professuren/Virtual_Reality/documents/publications/capsec_vr2008_preprint.pdf
@cwebber Awesome, thanks so much. I'm glad I wont have to design all this from scratch. I'm all about standards. Can I help in your efforts in any way.
@freemo Not yet but keep watching here. I hope to get up some demos soon that may request that people experiment with the user-generated-content stuff. That'll be a good time to jump in.
@freemo Reading that paper, reading the ActivityPub spec, and reading up on object capability security are good steps in preparation for now though.
@cwebber Yup, ActivityPub I've studied already.
Going to attempt a deep dive on those papers and ill hit ya up with my feedback.
@freemo Can you read lisp'y code btw? If so, you may find this paper on object capabilities from a language perspective helpful http://mumble.net/~jar/pubs/secureos/secureos.html
There are many ways to do object capabilities, and the above paper explores a programming language approach
@cwebber I can read lisp/clojure yea. Though I rarely develop in it. I should be able to grok that link, just added it to the reading list for today.