@devnull@crag.social
@devnull@crag.social avatar

devnull

@devnull@crag.social

Co-Founder (https://fosstodon.org/@nodebb) & Instance admin of crag.social | Husband ๐Ÿคทโ€โ™‚๏ธ and Dad ๐Ÿ™‰ to three | Rock Climber ๐Ÿง—โ€โ™‚๏ธ | Foodie ๐Ÿฅ™ | Conductor ๐ŸŽต | Saxophonist ๐ŸŽท

โœ… Small teams craft better code.
๐Ÿ—จ๏ธ Federating NodeBB (in-progress) with funding from #NLNet โ™ฅ๏ธ๐Ÿ‡ช๐Ÿ‡บ

#fedi23 #linux #foss #opensource #webdev #nodejs #music #conducting #rockclimbing #yyz

This profile is from a federated server and may be incomplete. Browse more on the original instance.

devnull, to random
@devnull@crag.social avatar

Ironically it seems the mere act of having to "pick a category" to post something in NodeBB is giving me enough pause to stop me from posting content, occasionally.

Whereas here I can just fire off any old thought, and not look back.

I'm on the fence as to whether this is a good thing or a bad thing ๐Ÿ˜

jdt, to random

I finally figured out why Pleroma signatures wouldn't verify on Enigmatick.

Actor objects in Pleroma have a public key that ends with -----END PUBLIC KEY-----nn. Mastodon (and Enigmatick) have -----END PUBLIC KEY-----n. Apparently that extra newline doesn't play well with the RSA Rust library's rsa::RsaPublicKey. As soon as I remove it, the key is processed with no trouble.

Now to figure out how I'm going to enshrine that finding in my verification code.

devnull,
@devnull@crag.social avatar

@thisismissem @jdt @justin interesting, you wouldn't think it'd matter, but this shows otherwise.

I wonder if something like this is why my signed requests to *key instances are failing with a 401

julian, to random
@julian@community.nodebb.org avatar

Hello everybody!

It's dark and miserable outside, on account of it being rainy โ›ˆ in my little corner of Canada, but in this little corner of the fediverse, there are some definitely exciting things happening!

Wait, what's the fediverse?

Last month I provided an update on the work I've been doing in 2024, which is a long-running project to bring ActivityPub integration into NodeBB. A more thorough overview of ActivityPub can be found in the first announcement announcing the green-light from the NLNet Foundation.

Today marks the day that our community forum connects to the fediverse. We've updated the code and switched over to the activitypub branch, and enabled federation on two categories, the NodeBB Development category (which is read-only for everybody but NodeBB staff), and the Testing Ground, which is meant for content of no consequence.

It also means that henceforth any bugs discovered are public and I'd be on the hook to fix them post-haste ๐Ÿ˜…

We're doing this gradual rollout not only because I'm quite excited to share what I've achieved so far, but also because I'm developing in public and it's important to gather feedback as early on as feasible.

It also means that โ€” barring some crazy regression causing me to roll everything back โ€” I'll be providing development updates on this account instead of my personal (@devnull).


So, what works, and what doesn't?

  • User-specific topic lists and the global topic list
    • If you navigate to /world, you'll be brought to your custom topic list of remote content, of which there won't be any unless you start following some users
  • Bi-directional user follows
    • You are able to follow a remote user from within NodeBB by navigating to their profile. Doing so at this time is rather difficult, see below.
    • Likewise, people outside of NodeBB can follow you from sites like Mastodon, Pixelfed, kbin, etc. simply by searching for your username.
    • Your "handle" is your username followed by @community.nodebb.org.
  • Bi-directional federation of content
    • Topic and replies posted to this category and the testing ground will be automatically propagated out to your followers (if any), and responses to that content from outside of NodeBB will show up here.
  • Propagation of likes to the local NodeBB
    • Likewise, if your post is liked by someone outside of NodeBB, it will be reflected in the topic
  • Announces (aka "Boosts")
    • If your post is "boosted" or shared by someone outside of NodeBB, there will be a notification within the topic.

No update would be complete without a list of what doesn't work, so here goes...

  • Finding remote content and users
    • Discoverability of remote content is currently quite limited. You are not able to search for content outside of the local NodeBB, but this will be worked on in due course.
    • You are currently able to navigate to remote profiles by manipulating the URL (e.g. NodeBB's fosstodon profile: https://community.nodebb.org/user/nodebb@fosstodon.org
  • Emoji
    • If you're reading this from outside of the NodeBB community forum, you won't see the emoji I put in the post... yet ๐Ÿ˜…
  • Mentions
    • @oplik0 is planning to work on integrating mentions, but that is currently at the to-do stage
  • Notifications
    • When a remote user interacts with you (e.g. upvotes, replies, and follows), you currently aren't notified
  • ... plus about a thousand other things.

There's a huge amount of work to do still, but we'll be seeing a more featureful integration in the coming weeks/months.

Also, there is a non-zero probability that when I hit post, this will cause the NodeBB community to crash.

So... here goes... 3... 2... 1...

devnull,
@devnull@crag.social avatar

@news @fediversereport Thought you may be interested.

devnull,
@devnull@crag.social avatar

@AltCode my main concern would be people potentially thinking users on that domain represent the brand. Suppose it depends on a case by case basis!

devnull,
@devnull@crag.social avatar

@alicihan one problem at a time, ok? ๐Ÿ˜†

julian, to random

Hopefully you'll see some markdown.

That'd be great....

devnull,
@devnull@crag.social avatar

@julian That's pretty neat that Mastodon shows some formatting (bold, italics), at least.

wigbert, to goodnews
@wigbert@mastodon.world avatar

deleted_by_moderator

  • Loading...
  • devnull,
    @devnull@crag.social avatar

    @wigbert thanks for sharing this list, just put two on hold at my local library โ™ฅ๏ธ๐Ÿ“š

    devnull, to random
    @devnull@crag.social avatar

    Idle thought... the concept of "the verse" and "sending a wave" in the TV show Firefly fits quite nicely in a universe where fedi is mainstream.

    Man, I should do a Firefly rewatch

    graphite, to random

    umm... is revolt trying to start a war or sth

    devnull,
    @devnull@crag.social avatar

    @graphite once many years ago, a user of my software once asked why we used "old timey" English in our copy.

    ... because we're Canadian and we spelled it "colour" ๐Ÿ˜…

    Ever since then I made it a point to set the default language to "English (United Kingdom)", they can switch to American English if they like ๐Ÿ˜

    box464, to random
    @box464@mastodon.social avatar

    Choosing Discord or Matrix as the official way to get support is frustrating. There's really good information jammed in there, but finding it is next to impossible. The people are nice, so you can't be mad at that.

    Why not use GitHub Issues or Discourse or NodeBB or just about anything else that gives just the tiniest bit of structure and advanced search?!

    We need a NodeBB bot that sweeps up questions and answers in these channels and creates forum threads.

    devnull,
    @devnull@crag.social avatar

    @box464 I saw this before bed so didn't attempt to comment, but thanks for mentioning NodeBB.

    Doing a Discord implementation would be interesting. I've never used their API before but it'd be something we could potentially look into someday.

    devnull, to random
    @devnull@crag.social avatar

    I will now definitively prove that not all algorithms are evil.

    There can exist a search engine whose only algorithm is that it ranks sites higher if the recipe is above the fold and/or is reachable via press of a button.

    Bonus points if it buries the site if it contains blogspam.

    QED.

    polotek, to random
    @polotek@social.polotek.net avatar

    I'm gonna spend the next hour or 2 learning a little more about performance in mastodon. I haven't looked at since this thread earlier in the week.
    https://social.polotek.net/@polotek/111966879667140469

    devnull,
    @devnull@crag.social avatar

    @polotek wild, how is your database so small?

    I'm almost at 100% and it's a single user instance. Might be because I migrated an instance to masto.host

    _steve, to mastodon
    @_steve@mastodon.social avatar

    I know itโ€™s super easy to add a blue tick to the end of your name on here, butโ€ฆ why? ๐Ÿคท๐Ÿปโ€โ™‚๏ธ

    #Mastodon #ActivityPub

    devnull,
    @devnull@crag.social avatar

    @BeAware @_steve I, the instance owner of crag.social, do verify that @devnull is a stand up guy

    bacon, to mastodon

    I would like to find out if there is a way to monitor the incoming information from other instances and create spam rules to block them if they are triggered.

    such as your instance has suddenly started receiving tons of status' s from other instance that are all using the same top level domain. it would then block that domain from your instance.

    #mastoadmin #mastodon #fediverse #activitypub

    devnull,
    @devnull@crag.social avatar

    @BeAware @bacon you're probably thinking of citadel?

    devnull, to random
    @devnull@crag.social avatar

    [At the phone repair shop]

    Me: So when the screen is replaced, I'm assuming the phone isn't waterproof anymore?

    Attendant: 100%

    Me: 100%?

    Attendant: 100%.

    Me: So it's waterproof.

    Attendant: 100% it is not waterproof.

    Me: Clear as mud ๐Ÿ‘Œ

    devnull, to random
    @devnull@crag.social avatar

    Just reconnected my phone to wifi after two weeks, RIP my notification tray.

    swipe swipe clear all ๐Ÿ™‰

    pixel, to random
    @pixel@desu.social avatar

    LMAOOO this note for Bluesky self-hosting

    > Initially to join the network you'll need to join the AT Protocol PDS Admins Discord and register the hostname of your PDS.

    https://github.com/bluesky-social/pds

    devnull,
    @devnull@crag.social avatar

    @mindfuck_inc @pixel what even is dogfooding lol

    devnull, to accessibility
    @devnull@crag.social avatar

    Hey guys and gals, which checkboxes are disabled (via HTML disabled attribute) and which are simply unchecked? ๐Ÿ˜ฌ

    Getting our app looked at by accessibility professionals has really opened our eyes to stuff that we've simply ignored.

    #a11y

    devnull, to random
    @devnull@crag.social avatar

    Lots of excellent responses to my late-night diatribe re: S3 et al. One common rationale stated is the unintentional leakage of IP addresses.

    Valid, but this is a solved problem without needing to maintain S3.

    There is tor (as @hrefna opined), but this places responsibility to end user which is not ideal.

    Implementors can set up a camo proxy. Super simple, super cost effective.

    Original assertion is still that S3 is overkill.

    https://github.com/atmos/camo

    @django @FenTiger @essentialrandom @dt

    devnull,
    @devnull@crag.social avatar

    @Doctacosa thank you for your insights. That hotlinking is the non-default option is surprising to me.

    That's exactly why I started the earlier thread โ€” when did we as an industry decide to abandon something as straightforward as hotlinking (with static asset serving and/or TTL caches) with something as heavyweight as S3?

    Either I'm missing something or Amazon's marketing department is absolutely fantastic at their jobs.

    devnull,
    @devnull@crag.social avatar

    @Doctacosa "if the remote is down" heh, web 1.0 expectations right there.

    If it's down, maybe it's down temporarily (server overload), maybe it's down for a reason (CSAM). Either way it seems we took what was once something big companies with limitless resources did, democratized it (which is great!), but now use it inappropriately.

    devnull, (edited ) to random
    @devnull@crag.social avatar

    On multiple occasions I've listened to instance admins speak about high S3 costs. The sheer amount of data absolutely balloons the more activity your server sees, I get it.

    What I don't get is whether there's some unknown fedi ethical reason everybody insists on setting up an S3 cache (followed immediately by complaining about it).

    Y'all want to know what the rest of the web does? Hosts their own uploaded media, and links out to the rest...

    devnull,
    @devnull@crag.social avatar

    @jenniferplusplus ๐Ÿ’ฏ completely agreed. There's merit in multiple layers of caching (despite having to deal with the the rather unfortunate problem of cache invalidation), so I am entirely on board with caching remote media locally so as to not inundate smaller servers with huge volumes of traffic.

    devnull,
    @devnull@crag.social avatar

    @boris it's worth exploring to see just how often those 2TB of assets are called upon, how often, and how those values change as the assets stale.

    Where exactly is the cutoff point before storing it in S3 becomes financially unsuitable?

    My thinking is that that cutoff point is far sooner than you'd expect. If we saved all encountered media to disk and persisted it only 24h, that'd likely handle 99% of use cases.

    Thank you for sharing!! I wonder how much of your cached media is < 24h old.

    devnull,
    @devnull@crag.social avatar

    @hrefna @kevinriggle Putting a CDN in front and taking the brunt of your local instance's traffic ought to be an expectation if you have the capacity to generate large volumes of traffic.

    The rationale falls apart a fair bit when the amount of traffic most single-user (and low-user) instances generate to other instances is closer to a rounding error.

    So my intention was to learn more (mission accomplished) but also to object to the blanket assumption that S3 is always necessary in all cases.

    devnull,
    @devnull@crag.social avatar

    @olives I don't know about you but I'd rather not be financially ruined because a scraper decided to blow up my instance overnight.

    I don't know when exactly it became normalized to have an always-up site, and to absorb the associated costs of it.

    lowqualityfacts, to random
    @lowqualityfacts@mstdn.social avatar

    Very cool of Amazon to put unnecessary ads in their shows just so they can charge us more money to get rid of the ads that don't need to be there in the first place.

    It's the digital equivalent of the Coca-Cola Company putting rocks into cans of soda and then introducing "New and improved Rock-Free Coke, only one dollar more than the rock-filled original!".

    devnull,
    @devnull@crag.social avatar

    @lowqualityfacts but they did do that... New Coke happened, then backlash, then a reintroduction of Coke Classic

  • All
  • Subscribed
  • Moderated
  • Favorites
  • โ€ข
  • JUstTest
  • ngwrru68w68
  • everett
  • InstantRegret
  • magazineikmin
  • thenastyranch
  • rosin
  • Durango
  • ethstaker
  • Youngstown
  • slotface
  • khanakhh
  • kavyap
  • DreamBathrooms
  • Leos
  • osvaldo12
  • tacticalgear
  • cubers
  • cisconetworking
  • anitta
  • provamag3
  • modclub
  • mdbf
  • GTA5RPClips
  • tester
  • megavids
  • normalnudes
  • lostlight
  • All magazines