Activity Pub support for 3D printing, and he's now going to talk about something slightly
different but related, so wonderful, thank you James.
Thank you Andy.
President McMinds, you have more 3D printers than me, because I've only got 2.
Anyway, hi, I'm James, I'm going to talk about something that's been mentioned
a couple of times today, already, but I'm glad to be able to give more detail, which
is Fediverse, Fedus Gavary, or the Fediverse Observer's Providers, and it's fast, I don't
really know why I named the talk this naming is hard.
I speak, but yeah, I'm going to talk about Fediverse Discovery Providers, which was a project
that was launched, I think, in the death room last year.
If I remember correctly, it was sort about last year.
Talks about last year, and then, through the year, it's been sort of built, and why am I talking
about it?
I am not involved in the project at all, is an NGO search project run by MasterDog and
Capably done by David down there, give everyone a wave, there we go, I am just some guy
who read this back, and thought, oh, I'll have a go.
Why?
I thought I'd have a go.
I built a thing called Manifold, which is, as Andy said, it is a tool for organizing and sharing
3D print files, anyone with 3D printable know about thingiverse, it's a bit like having
your own one of those, but now also Fedorates with activity pub, so you can have 3D models
on one instance, and you might have your account on another, and how do you find them
between different things, it's the problem, so there was this Fedorates cover thing, and
I thought, all right, let's see what that's all about, because that would build my own.
So Fedorates, auxiliary service providers, are these extra services that sit and connect
to your Fedorates services, so we have various things like it could be mastered on it,
it could be pitch you, but whatever, and then you have the search provider instances for instance
that you might choose to connect to that one over there that's run by somebody, I know,
or that, you know, it might be another one, so it's sort of opting in to a shared search
index anyway, and not just for search, it's starting with search, but I'll come to that.
So I'm going to talk a little bit about how it works, see how we did it, the first thing
that you do is that you register your server with the fast, the service provider, and you
do a little registration dumps, you can initially go to the fast, sign up for an account,
and you tell it where your server is, it then does a bit of back and forth, gets the provider
info from the node info, does a little bit of key exchange backwards and forwards, and
then says, yep, okay, we've talked and showed you a fingerprint of the keys and then
redirects you back to your server, where you check that fingerprint, make sure that everything
is lined up properly, and you say, yes, okay, cool.
So this is that in action, this is the sign-up page on the Fediscovera reference implementation,
I guess, of the fast, this is the one that David built, and I'm running my own off, but
you would find one of these out of that, sign up for a thing, you say, there is the base
URL of my service, and it does a little dance, and it says, right, you're registered now,
thanks signing up, here's a fingerprint, and because it's taught to the server, it knows
where to send you back to, in order to then go back and check, so it will then, like that,
send you back to Manifold, you can check that fingerprint, and hit the big green approved
button, and at that point, you're connected up to servers, know about each other, they
can securely change information, they know how to tell what's what, and you get then this
list of capabilities, the overall protocol is about the sort of the registration, and how
you discover what's available, and then there are sort of mini specs within that for
different capabilities, which you can see here, there's a counter search, follow recommendations,
trends, and data sharing, those of the ones that initially are in the thing at the moment.
Some of those, most of those are really simple, they're actually just, okay, you're
registered now, you can do calls to this thing, and a counter search is just to get to
the account search thing when you're keyword, simple as that, likewise follow recommendations,
follow recommendations you can give it an account, you're right, so it's like this person
follow, and if the fast is able to do something with that, it will, and like my trends,
it's just a thing, the one that's a little bit more complicated is data sharing, the top ones
are all sort of fetching information from the fast, but how do we tell it what we've got,
so they'd share in part, they'd share in capability, if you enable that, the fast will send
back a request saying, okay, could you let me know about these things, and it will set up
events, subscriptions for different things. In this case, it's sent back to subscriptions,
back to Manifold, so, right, could you tell me when any lifecycle events happen for any account,
or any content on your server, so now it's up to my servers to respond to those and let the
fast know when those things happen, of course that is in control of my server, the client,
cool, so a quick example, this is in, in my death manifold instance, I can go to the right
lots of that page, I can put in a search term, and up pop some results from a different server,
and all it's done is just go to go to the, go to the fast, fast for the results for that keyword,
so we have, these are all from a 3D print not social, which is the, not really flagship
manifold server, but the one that I run publicly, where people can sign up and post their own things,
flagship makes it sound a bit too grand, but yeah, but there, and then, there you go,
you found them, and also you have follow recommendations that you can set up at the right
in Fediscovera, it's no preview, so it's not very pretty, but at the moment you will be recommended
to follow me and that's on my personal instance, so again that's a different system,
and these things all fit together, you can get started with it, it's a really nice system,
it feels you're really in control of what information is going where you can choose the search
index or whatever that you want to come use, and then what you'll serve as sense to it is
you're in control of it, it felt nice as a developer, it didn't feel like I was giving everything away,
anyway, you can go to Fediscovera.org to have a look at the details that are linked to the
specification, which is on GitHub, there are lots of PRs open for new capabilities, and I'm sure
they would welcome more, there is a dev chat, talk to Andy about that, and yeah, that's it,
that's me, thank you James, traditionally for short talks, we're going to do one
question if anybody has a question for James, it's all completely clear everybody's going to
implement Fediscovera as soon as possible when I get back to there, I would give it a go, it's
excellent, it's pretty cool Dave, it's going to have a great week, I did a I did a rails
end for it, if that helps, I forgot about that, can I also ask for an extra round of applause for
James who has stepped up to help myself and Evan today, he's been doing the time keeping,
he's a tremendous human being, we are very grateful, I can I can wave a card around for the
best of them, and he has left and lovely manifold stickers on the table as well, as anybody is
welcome to do if you have stickers that you would like to share with the community please, do that,
who's next?