- updated the cosmicplayground.org summary, "a free and open source noncommercial hobby project exploring tools and toys using web tech for fun and learning"
- updated my first blog post
- in cosmicplayground
added pinch-to-zoom gesture support, like for
Soggy Planet, so non-busted mobile
support is almost there, and soon I want to extract it so it's reusable, maybe as an action
instead of the current component (pulls
why it took 3 PRs and it's still not doneThere's a janky zoom bug that took a couple extra PRs to diagnose and it's still not fixed. Firefox for Android is delaying some pointer events which causes big janky jumps for some quick pinch gestures, and then reversing your pinch won't put you where you started. Chrome for Android works great, so at least my code seems ok, but it's little consolation when my primary mobile browser feels broken with it. I'm now wondering if I should abandon pointer events and revert to mouse+touch. I started down the Bugzilla rabbit hole but it's deep... The silver lining is that the problem nudged me to improve the code significantly from the first pass.
- on this website added dark mode support by upgrading felt-ui and using Themed - currently it only detects the user's preference, soon I'll fix things upstream so we can add a switcher for users without the current boilerplate (pull #2)
- deployed earbetter.ryanatkn.com with enough features to be announced
revised and tooted about my second blog post, "Modeling virtual social spaces: in this house we post cat pics on Saturday", with more on Mastodon:
@firstname.lastname@example.org (Mastodon): WIth ntnsndr.in/ImplicitFeudalism in mind, I'm curious whether there is any possibility of checking the power of Control? Is there a way in which that could be non-absolute?
Control is held at the group/org/community level (Felt names these "hubs" now) by actors. In the default hub template the creator gets the all-powerful "steward" role, but the hub itself has an actor, and control is transferable/sharable. The hub actor's actions are controllable by automated/assisted/direct processes. Other group actors could be involved.
to clarify, "steward" is just the name for a role in the default hub template and a convenient way to reference the idea, they can be constrained with fine-grained permissions like any other customizable role - this contrasts with Slack (no customizable roles) and Discord (coarse-grained permissions)
given this API you could design a set of roles that split powers, separating/balancing concerns
hub templates make it easy to share pre-fab designs with the initial roles/permissions/etc
In our implementation, actors are assigned roles which have permissions. You helped me realize that by splitting permissions among roles we could support non-absolute power with this: hci.social/@ryanatkn/109770994846184255
An all-powerful group actor's actions could result from collective governance processes
or, I think we can support designing systems with structural checks and balances through permission assignment, so any actors could have mutually co-checking subsets of permissions in a hub
That's the first-order UX prioritized by end users. This second part is ignorable by most people most of the time, but for the governance enthusiast:
Hubs are hosted on infrastructure controlled by "operator" actors. These have the power to pull the plug, and may technically have hub control bypassing stewards, like modifying a database.
Maybe there's instance/server/etc levels between infra and hub, but that's an impl detail. Felt has instances controlled by "admins".
The operator actor could be co-ops/nonprofits/other orgs, or as you've written about, bl0ckchains or similar. Bchain enthusiasm makes sense here b/c the operator won't pull the plug or modify the db barring acts of God. Felt.social plans to be a platform co-op operator providing infra.
btw I love this so much, Boba Board (boba.social) has leaned into *explicit* feudalism for their fandom communities, owning it right in the brand! "Be the Monarch of Your Own Realm!"
- renamed this project's main building block from
Digest, seems friendlier and better for puns (commit)
- posted the first draft of my second blog post, Modeling virtual social spaces: in this house we post cat pics on Saturday
Boardview to Felt - it's like a chat room but upside-down, so the input is at the top and content flows downward, replies are nested, and the newest posts and replies appear at the top: github.com/feltjs/felt-server/pull/663
- created this project to log my doings (log.ryanatkn.com, source)
- started work on an ear training game named Earbetter (ryanatkn.github.io/earbetter, source), porting code from an old prototype which was a followup design to my simple ear training game Ear Sharpener (source)
- improved the ability to create a Felt community and its initial objects from JSON data (@feltjs/felt-server#632)