@benpate@mastodon.social
@benpate@mastodon.social avatar

benpate

@benpate@mastodon.social

Thoughtful comments on at least one irrelevant topic. #writing #software #democracy #pirates.

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

shoq, to random
@shoq@mastodon.social avatar

If I had the money, I could put up a super node that gave everyone who wants one, a manageable community of their own at minimal expense.it would suck up or transcend most of these existing micro communities in a New York Minute.I will bet on it. And searching across those communities would make discovery far simpler than it is now. I will never consider the fediverse truly important until that discovery problem is solved. We agree about the Mastodon hegemony problem

benpate,
@benpate@mastodon.social avatar

YES. I think I’ve been headed down this same path. Tell me of this sounds familiar:

Organizations hosting a trusted set of servers (for individuals, small groups, or even large communities) should be able to share a cache of known actors and AP documents. Individual sites would use the shared cache for search and discovery.

I’d like to add an open API for querying these caches, so that multiple orgs could work together to increase their visibility. It shouldn’t be that hard.

@shoq

benpate,
@benpate@mastodon.social avatar

Awesome. You and I are gonna have a lot to talk about once I get past the “hating on ActivityPub” stage of development. It does end, doesn’t it? @shoq

alcinnz, to random
@alcinnz@floss.social avatar

How large DOM sizes affect interactivity, and what you can do about it - Jeremy Wagner @ Web.Dev: https://web.dev/dom-size-and-interactivity/

While this page does mention CSS selector complexity, as a browser dev I would advise that we're pretty good at optimizing those costs away. HTML/DOM size matters more!

benpate,
@benpate@mastodon.social avatar

TL;DR: Big DOM Bad.

The first year of any technical degree SHOULD be learning about how bigger datasets take longer to process. That doesn’t change just because you’re using a JavaScript VM. This is a good article to remind devs of some basic truths, but it’s sad that we need reminding in the first place.

@alcinnz

pixelfed, to fediverse
@pixelfed@mastodon.social avatar

⚡ ActivityPub development made easy

Our PubKit service now has an official website, and will be launching early next month!

https://pubkit.net

benpate,
@benpate@mastodon.social avatar

OMFG this is amazing, and it fixes what is probably the biggest thing holding back Fediverse development for God-knows-how-long. Thank you. Thank you. Thank you. I’m going to owe you such an enormous debt when this ships. @pixelfed

benpate,
@benpate@mastodon.social avatar

Yup. I’m learning Docker ONLY for testing ActivityPub. It makes me hate Docker almost as much as I hate ActivityPub. We can’t wait any longer for “official” tools.. so I’m extremely grateful for project-led tools like this one. Thank YOU PixelFed devs.

Whenever I’m able to get anything running on ActivityPub acceptably, I’m committing to make SOMETHING similar to this to make it easier for the next dev to follow me.

The Fediverse deserves it.

@HarkMahlberg @pixelfed

MikeEL, to mastodon
@MikeEL@mastodon.social avatar

How to implement an ActivityPub SERVICE?

I did not find any services listed on the link below.

I want to implement an instance-of-one #Mastodon instance. The service receives a request to generate an image from a parameter list.

The service returns an #ActivityPub message. The message contains some text. The rendered image is the primary value.

Do any guidelines exist about how to implement a service?

https://github.com/shleeable/Big-List-of-ActivityPub

benpate,
@benpate@mastodon.social avatar

Interesting idea. Are you planning to trigger this service by accepting an AP message first? I’d probably start by working out the message formats you want to receive and send, then try generating those inputs from another AP server. If you can listen for inputs first, then generating an AP response shouldn’t be much more difficult. @MikeEL

rml, to elixir
@rml@functional.cafe avatar

in terms of industry programming languages that any programmer can hit the ground running with little to no ramp up, #elixir does the best job imo. I never used ruby, but its all so obvious you can just get to work. and for distributed systems that need to scale in a flexible way, the #beam eliminates nearly everything that makes webapp development horrible. it's hard to make a good argument for any other industrial virtual machine. #commonlisp implementations being the exception.

benpate,
@benpate@mastodon.social avatar

Howdy, I’m not an Elixir dev, and I’m not here to tear down anyone’s favorite stack. There are lots of good reasons to choose any different toolset. But, I wouldn’t use developer startup time as a core metric in choosing a technology. A bike can out accelerate a car for the first 20 yards, and I bet the car will out-accelerate an airplane off the starting line. But their initial speed, final speed, and distance traveled are all wildly different. @rml

benpate,
@benpate@mastodon.social avatar

I did a big survey a few years ago, narrowed it down to and Rust, and ultimately chose Go. The focus on “building at scale” was especially appealing for me, because many aspects of the language encourage high quality code that others can pick up and maintain in the future. It limits new developers who are used to typical OOP environments, but the missing features in Go help prevent newbie mistakes that come back to bite you on the future. @rml

benpate,
@benpate@mastodon.social avatar

All great points 😀 For the front end, I’ve fallen in love with , which lets me use plain old HTML templates as a “SPA” alternative. I’ve used Go to make JSON/REST APIs for Angular but the duplication of work seemed like a giant waste of time So now I let web servers be web servers, and browsers be browsers. Letting go of (most) front-end JS was a huge leap forward in all the important metrics — productivity, scalability, and sanity. @rml

MediaActivist, to linux
benpate,
@benpate@mastodon.social avatar

Here’s the quote that really seals this article’s authority me: “Linux has nearly half of the desktop OS Linux market” — it has real “large Boulder the size of a small Boulder” energy to my ears. @MediaActivist

strypey, (edited ) to fediverse
@strypey@mastodon.nzoss.nz avatar

Every now and then I want to @mention someone I know, who I remember interacting with here at some point, but I can't remember their fediverse address. Every time I try, I remember the existing apps aren't good at helping me distinguishing my friends from the random strangers I've casually chatted with here.

This is why we're nowhere near ready to replace FarceBook. Although I'm hopeful that newer projects like Bonfire might get us closer...

benpate,
@benpate@mastodon.social avatar

For me, the idea came once I stopped blaming Facebook/Twitter users for their hateful/extremist views and instead saw them as the victims of the addictive information hellholes that have trapped them. They are not our enemies just because their community is still on FB. They are our brothers, sisters, parents, and children who have been left behind in a war zone, and it’s our duty to help get them out. @kolya @strypey

benpate, to random
@benpate@mastodon.social avatar

I've been a little quiet about - in between moving and refactoring one of the core libraries, it's honestly been pretty broken for a little bit.

But my desk is set back up and I'm excited at making some progress again. Now, two libraries that power emissary are also nearing completion, so others can build on this work without having to implement the whole server.

benpate,
@benpate@mastodon.social avatar

Hannibal is a composable library built in that works the way I want to work. https://github.com/benpate/hannibal

My favorite part is chaining features into an ActivityStreams client, which turns the whole Internet into a single, local database record. Woot!

benpate,
@benpate@mastodon.social avatar

The second library that makes unique is: https://github.com/benpate/sherlock

Sherlock converts HTML pages into documents using any and all meta-data available: , , , , , (with more coming soon). Any format it can identify gets parsed and normalized into a standard-looking ActivityStreams doc, which gets passed up the toolchain to Hannibal.

I'm so excited to see this stack start to deliver real results soon.

benpate,
@benpate@mastodon.social avatar

All of my work in writting in at the moment. So using the library would require you're working in Go.

But the goal for sherlock and hannibal is to interop with every standards-based app, including . I'm working on that now, but ActivityPub tesing is notoriously difficult.

Right now, I am testing a instance running in a Docker container. Hopefully I'll be able to demonstrate federation with kbin soon. @MikeEL

benpate,
@benpate@mastodon.social avatar

Well, I'm a huge fan of , but there are plenty of php partisans too. The C-like syntax is nice, and you'll love how Go handles garbage collection and concurrency. It's really made to run large web servers, so it's a perfect back-end API for your iOS apps.

As for ActivityPub, prepare yourself. It's a steep learning curve. Are you plugged into the https://socialhub.activitypub.rocks and https://fedidevs.org/ communities? There are lots of smart people there working on these same things.

@MikeEL

benpate,
@benpate@mastodon.social avatar

Cool 😀 If you've already got iOS chops, you might just look at implementing the APIs that are already out there. Building an ActivityPub from scratch is absolutely no fun at all.

I think there's a big need for more ActivityPub C2S implementations. It's a chicken-and-egg problem because no servers want to implement it until there are clients, and vice verse. Someone (someday) is going to jumpstart this with a really cool C2S implementation, then the floodgates will open.

@MikeEL

benpate,
@benpate@mastodon.social avatar

Yup. Things ARE getting better. The developer community is working hard to close the gaps in the official spec with other add-ons. But it’s still hard. Lots of things “just are” but aren’t communicated very widely. Until a more complete test suite is available, the best thing to do is to just test point-to-point communication with as many other apps as you can. @Crell @MikeEL

benpate,
@benpate@mastodon.social avatar

Hey Marius, that would have to be another adapter. The default Hannibal http client is just an interface on top of http calls. By “composable”, I think I mean that caching, crawling, and a few other features all work in their own swappable layers. @mariusor

benpate,
@benpate@mastodon.social avatar

I did, and GoActivityPub is very good. I try to point people in your direction when I can because your library actually works. I think I needed something different (like bridging AP, RSS, and MicroFormats) that could bend to some of the weirder ideas in . @mariusor

dansup, to random
@dansup@mastodon.social avatar

It was a productive weekend!

✨ Reblogs in home feed
🚀 https://activitypub.network
🚀 https://dansup.github.io/masto2pixel
🚀 https://firefish.fish

Looking forward to a productive week 😎

benpate,
@benpate@mastodon.social avatar

This is so easy to underestimate. My first steps into the open source world have been very small in comparison, but i still feel naked, like all of history is looking back at me, saying “dude, why are your commit notes so lazy?” So, good for you, working out what you want on your terms, before you publish it to everyone. @dansup @pylapp

mekkaokereke, to random
@mekkaokereke@hachyderm.io avatar

Fantastic accomplishment!♥️👍🏿

https://19thnews.org/2023/07/chanda-prescod-weinstein-physicist-tenure-rare-feat/

And when she tried to join the Fediverse, she was greeted with a barrage of hate, sexism, racism, and anti-semitism that should have never been allowed to happen.

So now no one on Fediverse gets to interact with her directly about her work on here. Our loss. 😢

Which is why we'll make it so that this type of terrible welcome is unlikely to happen again. Allowing it to happen to her was a choice. We will make better ones.

benpate,
@benpate@mastodon.social avatar

How is this list published? It should be as simple as subscribing to any other ActivityPub feed, with updates pushed to followers whenever there’s a change. But I’ve never seen anything more than a CSV file in a GitHub repository. Do you know of anyone working on a way to automate the distribution of this information? @mekkaokereke @marjolica @techghoul

mikemccaffrey, to accessibility
@mikemccaffrey@a11y.social avatar

Crazy how the web initiative provides examples of how someone should code common components, but warns you that their own examples should not be used because they don't have full accessibility support.

benpate,
@benpate@mastodon.social avatar

It makes sense — these are just tutorial examples, and the W3C site is communicating a lot of complicated issues at once. But still, it’s ironic and hilarious — consultants shriek at us that we’re doing accessibility wrong, and that we need to follow the W3C or else. what this says to me is that accessibility is really hard and.. maybe.. the underlying tech of the web platform needs work to become 100% accessible by default? @mikemccaffrey

quadratur, to accessibility German
@quadratur@det.social avatar

is made and used by people who take a screw and force it into a wall with a hammer, permanently asking: 'Why should only nails be used like nails?'
They are screwing things up and create a total mess.

(Explanation for outsiders: HTMX wishes to be an extension to websites by changing the purpose of things that are already thought out well and behave in predictable ways. It's like taking a car and change the trunk into an engine, regardless of .)

benpate,
@benpate@mastodon.social avatar

I’ve reached my “don’t feed the trolls” moment with this nonsense. It’s click-bait, and nothing more, from people who refuse to understand the thing that they’re criticizing, solely for the benefit of collecting imaginary Internet points from other wannabe critics and bystanders. This is not Reddit, Facebook, or Twitter. There’s no algorithm to manipulate that’ll get you more clicks, leads, or followers, so please stop embarrassing yourselves. @simeon @quadratur

aardrian, to accessibility
@aardrian@toot.cafe avatar

I see kids excitedly sharing .

So I looked a sample page:
https://htmx.org/examples/inline-validation/

Image sans alt, error message without programmatic association.

Then another:
https://htmx.org/examples/edit-row/

See attached image for the HTML from the DOM as I tried to edit a field. Never mind the lack of accName or that it replaces the row in the DOM for a different row.

Cool.

benpate,
@benpate@mastodon.social avatar

I think I'm done here. I've tried to engage openly and constructively, and at every turn you've intentionally misconstrued basic facts, and cast shade on people who are doing actual work to improve the web.

At this point, this whole discussion is just click-bait for your consulting business, and there's no point in engaging further with this kind of trolling..

Sorry to waste both of our time on this discussion.

@aardrian @simeon

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