Instead of a bunch of adware and megabytes of JavaScript / developers implementing totally random ways of doing things sites can serve "data" directly. Your browser should then take that data and give you some nice way of viewing it or letting you look up ways of viewing it (or buying or whatever for people that want that).
We could already start seeing things like that now with the ActivityPub data being published out there. What if the data itself also had suggestions for "default views".
One thing that we have now semantic-web-wise is a lot of data that random folks care a lot more about (it's their community or special interest!). And this is also coming from folks that were likely using alternative APIs already so they could get the best view of the data for their use case.
Usually this means new apps for specific purposes. But what if we could simplify making those apps and being able to recombine elements between them. In some sort of "user agent" for example.
However! This is also where the SemanticWeb and ActivityPub fit in.
One grossly underuse feature of activitypub is the client-server model and having the option to have access to data using a proper JSON-LD interface.
In other words. What if "fediverse" clients were just "Semantic Data" clients. Instead of relying on a specific app, we could have views over the raw data within a particular community through common (and swappable) interfaces.
Here's how we can get there and why it makes sense
One pain point though is exploring the domain specific way of formatting data while still being able to do all the social stuff. E.g. right now if I want to see a lemmy thread, I need to either see it boosted or navigate a lemmy instance and copy paste a link.
This means having lots of apps and identities, or also jumping between a bunch of websites.
This is where we are with the web and the current state of apps. A bunch of silos and we let them take full control.
One thing that we're seeing with stuff like kbin and lemmy is that there's room for other formats of the fediverse that can be appealing to lots of communities. And with AP at the core we can at least get some basic interactions server to server regardless of the specific format.
A friend of mine recently burned out on maintaining open-source software and communities, and had been half-joking for a while that they wanted a sassy license to the effect of "I release this code for free, take it or leave it, or go do it yourself".
Tonight I wrote that license for and with him. Please enjoy the "Fork Off" Public License, v0.9: https://github.com/klardotsh/fork-off-public-license
(I'll tag a v1.0 after any feedback y'all might have to clarify things or make it funnier. Forking it is also of course ok.)
In Jacky Zhao's article on Agentic Computing, Jacky writes "Maybe we bring back the philosophy of LANs, but rather than networks based around closeness in physical distance bounded by routers, we created networks based around closeness in social and trust space?" What are your thoughts on this? What are some ways we can bring back "trust" in computing? https://jzhao.xyz/posts/agentic-computing/
Tired: Organizing the world's information and making it universally accessible and useful.
Wired: Owning the web and middle-manning every interaction in the world, thus maximizing ad revenue.
Inspired: Using ML to middleman the whole idea of knowledge into an unreliable stochastic word-slurry so people need to quadruple-check every piece of information they ever want or need by clicking around to dozens of other sources, thus maximizing ad revenue.
If all y'all want to take away any one lesson from watching site after site enshittify, it should be this:
Never. Trust. The. Money. Men.
Sooner or later, they're going to demand you take your great product that you worked so hard on, all the users and communities you've carefully built, and squeeze all the joy and life out of them in exchange for profits. And if you won't do it, they'll replace you with someone who will.
In my experience the best docs for the average codebase I encounter are their unit tests. At least there you can see how the devs expect their library to be used even if they don't provide actual examples or actual docs for how to use it.
My hot take is that auto-generated docs from static types usually suck. Getting a randomly sorted list of function signatures is about as useful as just reading the source code.
Docs should get to the point and show people how to use the thing and fall back to type signatures for the nitty gritty bits when the examples don't suffice.
Golang/Java/Etc projects often just dump their types into an HTML page and call it a day without any context given to how to use it.
No confirmation yet, but the head librarian or whatever seemed interested in talking more about the workshops I wanna run to teach folks some skills to have more control over their computers.
I think devtools and bookmarklets might actually be more useful in the near term than full blown apps or whatever since it can give people the most broad range.
Beep boop time to wire up some codes.
Today in "Mauve Remembers How To Golang":
- Set up an IPLD blockstore (or whatever they call it)
- Wire up an ndjson parser which parses dag-json
- Wire up the IPLD Blockstore to a ProllyTree blockstore
- Sketch up indexing data into the tree
https://github.com/RangerMauve/ipld-prolly-indexer/tree/initial
Occult Enby that's making local-first software with peer to peer protocols, mesh networks, and the web.
Exploring what a local-first cyberspace might look like in my spare time.