Will
@willdot.net
480 followers 300 following 700 posts
Software engineer. Mainly Go. Fascinated by distributed systems. Me and yaml indentation are enemies. I only ship to prod on Fridays. https://willdot.net
Posts Media Videos Starter Packs
Pinned
willdot.net
Will @willdot.net · Aug 20
Yesterday I made the jump from a Bluesky mushroom PDS to my own self hosted PDS.

I had been meaning to do it for quite a while and had a whole plan in my head of testing it with an alt account for a while etc first but I thought fuck it, and just did it.

1/n
willdot.net
Amazing, thank you! Totally going to try this out when I get a chance.
willdot.net
@thisismissem.social says that’s a thing so I’m going to give it a go!

bsky.app/profile/this...
thisismissem.social
Yuuup! That's totally a thing! There was a limitation in AT Protocol for a while about redirect URIs but I believe that has been lifted now.

But that's how we envision the developer use-case working for Client ID Metadata Documents.
willdot.net
Yh one of my first thoughts was to use a tunnel service or similar but than that's an extra dependancy to run 😔
willdot.net
Woah! So I could host a small server somewhere that servers the metadata document and in my CLI that spins up a small web server to handle the call back, I can provide the remote servers metadata document but have the callback for the local server? 🤯
willdot.net
Creating my short URL service over the past few evenings was just a bit of fun. I never even thought about the nightmares described in this thread by @gbl08ma.com Some solid advice in here!!! Deffo worth a read!
gbl08ma.com
I ran a URL shortener for over ten years - you can read the third link in my bio to know how that went...

My main word of advice would be: you definitely don't want to operate the redirection service under your own domains and servers. At least, make it so that people MUST use their own domain 1/
willdot.net
To be honest, I didn't create this to actually run a short URL service, it was just a side project to play around with ATProto 🫠

I guess next time I'm in a systems design interview and they ask how I would do it, I would simply tell them I wouldn't 😂
willdot.net
That never even crossed my mind to be honest. I guess the only way to safely run this kinda thing is for yourself, so that then I host it, only I am allowed to create short links.

If you then span one up and hosted, only you could create links for your instance.
willdot.net
All of that is enough for me to NOPE out of hosting it 😂

Was a fun project none the less!
willdot.net
Wow! Thanks for the heads up on that!!! That’s insane, never would have know any of that.
willdot.net
If there is a way around this for creating a CLI tool that uses OAuth. I think I kinda understand why it does it but I can't be sure.

bsky.app/profile/will...
willdot.net
Developing a CLI app that uses ATProto oauth. To achieve this I make use of the local host client ID so that the callback comes back to the users machine.

Problem is that every time the app is run and an oauth request happens a new "app" appears here. Is there a way to do this better?
A screenshot of the PDS account page listing connected apps which contain Tangled an then 3 of the same local apps
willdot.net
I made a thing and I think it works. Introducing the ATProto URL shortener service where you own the data and can even host the service yourself.

It needs a lot of UI work (understatement) but it's been fun hacking this together the last few evenings.

tangled.org/@willdot.net...
@willdot.net/at-shorter-url
A URL shortener service that uses ATProto to allow self hosting and ensuring the user owns their data
tangled.org
willdot.net
There it is. The empty @stream.place lexicon repo trending
Screenshot of Tangled where the trending repos is visible and stream place’s lexicon repo is trending without a single commit.
willdot.net
💯

The small project I’ve been hacking on the last couple days was started using an existing common side project but I created it AT style because of the backfill.
willdot.net
“Worse yet, they might write all of their types manually”

It’s me 😩
stream.place
PROJECT ANNOUNCEMENT: Streamplace is building a unified AT Protocol code generation tool! It eats lexicons and creates code in a variety of languages, as well as documentation.

To lead this project, who better than the creator of @pdsls.dev, @juli.ee!

Read more in the announcement post:
Project Announcement: Untitled Streamplace Lexicon Codegen Tool - How Streamplace Works
It's like the Untitled Goose Game of Lexicon codegen tools
blog.stream.place
willdot.net
I recon the @stream.place lexicon generator repo can be the first to trend on @tangled.org without a single file committed

tangled.org/@stream.plac...
@stream.place/untitled-lexicon-generator
tangled.org
willdot.net
Oh that reminds me actually, I need to update this repo to use the latest OAuth library to version which has a breaking change for the scopes.
willdot.net
I think we should all thank @jcsalterego.bsky.social for his contribution to 60% of this and a further 10% to all the JERRY NO posts.
bsky.app
we hit 2 billion posts today! 🥳
willdot.net
Yh that makes sense. I'm just YOLO'ing it through at the moment but I don't have any users to break 🤪
willdot.net
Cooking up an ATProto app that I’ve wanted to do for a while but never got around to doing.

After seeing a few of my “that would be cool to make” ideas actually be implemented by others in the past week, I’m getting my ass I’m gear and doing it.
willdot.net
Are you using scopes? I was just setting OAuth up for an app I’m building and added some custom scopes and it was cool to see it on the auth page.
willdot.net
It’s the small things in life.

Like the satisfaction watching the coffee puck slide of the aeropress plunger in one piece.
Reposted by Will
ngerakines.me
Check out at://work, a job board built on #ATProtocol. It's not just another platform, it's professional networking where you actually own your data. Sign in with your ATProtocol handle and your profile lives on your PDS. 🧵