Salta al contenuto principale



What drew you to ActivityPub?


This question was asked by [url=https://flipboard.social/@mike]@mike@flipboard.social[/url] on Dot Social's latest episode about the blogosphere on Fedi. [url=https://mastodon.xyz/@johnonolan]@johnonolan@mastodon.xyz[/url]: "we wanted to connect Ghost bl

This question was asked by mike@flipboard.social on Dot Social's latest episode about the blogosphere on Fedi.

johnonolan@mastodon.xyz: "we wanted to connect Ghost blogs to each other, but then we discovered ActivityPub"

pfefferle@mastodon.social: "we wanted to connect WordPress blogs to each other, and ActivityPub has been the most successful attempt"

[paraphrased for brevity]

Did you catch the subtext? Both those answers, and my own answer with NodeBB contain the same seed idea... that we originally wanted to connect our software with itself only. We went through years of building a company and vying for profitability that it never occurred to us to work towards cross compatibility with anyone besides out own software.

Then ActivityPub came along and quite literally expanded the potential for the entire endeavour a hundred-fold, because not only are you connecting your own software to each other, but every other ActivityPub enabled software in existence. Blogs, microblogs, forums, image boards, etc. all with a built-in user base ready from the get-go.

It's no wonder that after discovering AP, it becomes the protocol to utilise.

in reply to julian

julian:

Then ActivityPub came along and quite literally expanded the potential for the entire endeavour a hundred-fold, because not only are you connecting your own software to each other, but every other ActivityPub enabled software in existence. Blogs, microblogs, forums, image boards, etc. all with a built-in user base ready from the get-go.

It's no wonder that after discovering AP, it becomes the protocol to utilise.


This feels like a misattribution of cause and effect. Particularly, this bit stands out:
julian:

a built-in user base ready from the get-go.


It's not the protocol that brings the value; it's the user base that you gain access to. Unfortunately, the way the protocol gets used currently (not ActivityPub) is not sufficiently defined, and brings with it too many constraints to be able to reach full potential. Access to the existing user base comes at a cost.

---

To share my own story, what drew me to ActivityPub was less ActivityPub itself, but rather that Mastodon claimed to use it.

I had flirted with distributed social networking in the past -- identica, diaspora*, GNU Social -- but ended up mostly active on Twitter, because that's where "my people" were. But of course, Twitter was steadily getting to be uninhabitable, and the value of being on Twitter was eventually outgrown by the cost of being on Twitter:

  • 2008: I join Twitter
  • 2009: I have fun on Twitter and make friends
  • 2010: ads were introduced in the form of "promoted tweets"
  • 2011: trending hashtags became trending phrases
  • 2012: API restrictions, limiting apps to 100,000 users, cutting off competitors
  • 2014: a greater focus on "viral content" instead of talking to friends, which helped propel Gamergate
  • 2015: shadowbans made some people invisible; quote tweets meant i started seeing a lot of toxic garbage due to dunking culture
  • 2016: reverse chronological timeline is no longer the default; Twitter rebrands as a "News" app instead of a "Social Networking" app; entirely too many out-and-avowed Nazis harassing me; added to a transphobe's blocklist which gets imported by Wil Wheaton and prominently advertised in his pinned tweet, leading to my account getting shadowbanned
  • 2017: I stopped using Twitter
  • 2018: CEO Jack Dorsey states during an earnings call that "We are not a social network. We do not benefit from social graphs. People come to us when they're interested in events happening in the world [...] We've been biasing a lot more of the service towards interest and topics."; I deleted Twitter

Luckily, in November 2016, a comrade of mine posted about mastodon.social as basically "Twitter without Nazis". So people moved there in waves; the April 2017 wave was a sort of cambrian explosion that brought a lot of cool people into the same space. In many ways, it was the peak era; this era lasted through 2019 or so.

Being what you might call a "power user", I got involved on the Mastodon issue tracker, reporting bugs, making feature requests, and eventually writing the documentation at the tail end of 2019 (and revamping it in the latter half of 2022). And of course, Mastodon was powered by "ActivityPub". So I looked into it.

There was a dream idea of multiple disparate services interoperating on a commonly shared set of social functionality. It sounded great! "What if you could use your Twitter account to follow a YouTube channel, comment on a YouTube video, and so on?" After the relative success of Mastodon in April 2017, Gargron was toying around with an ActivityPub-powered clone of YouTube called Cobalt. (It didn't go anywhere, but PeerTube filled that niche soon after.) It felt like the App.net dream might actually come true, on a far grander scale. Unfortunately, it didn't quite end up playing out that way.

Maybe part of the disillusionment was that by several indications, Mastodon was going the way of Twitter... in a concerning way. It wasn't as bad as Twitter by any means, since at the very least the quality of the service was still there. The moderation was still worlds better than Twitter. It was still "Twitter without Nazis"... but it felt like Mastodon was slowly repeating Twitter's mistakes. In 2018, Mastodon added a "trending hashtags" feature, which was met warily by early users and eventually led to its removal... although it eventually got added back and expanded on with trending links (although concerns remained) and also trending statuses (although concerns remained).

So, what do you do when one "ActivityPub" project starts going in a direction you don't like? Well, the promise of open decentralized networks is that you should be able to move to something else while still being part of the same network, right? ...right? Unfortunately, the more I learned and the more I saw things (d)evolve, I grew concerned that the fundamentals were unsound. When SocialHub came about, I tried writing some SocialHub threads about some of these problems. When the FEP process came about, I tried writing some FEPs. Meanwhile, I was growing somewhat distraught that progress had frozen, the Social CG had gone inactive, Mastodon was refusing to take responsibility for the de facto protocol it could have stewarded... The reversal of course on many early decisions came slowly at first, then much faster after November 2022 and the Elon Musk stuff. The revival of the Social CG gave me some more hope for a bit, but that has been waning over the past couple of years.

I have had to grapple with bigger questions of general strategy and in developing a theoretical understanding of digital social communication, and I have come to realize that I just do not believe in social media platforms at all anymore. If anything, I was trying to make friends and understand the world. I have only ever been able to feel that kind of environment with early Twitter (2009-2011 mostly, but it was definitely over by Gamergate), and 2017-2019 fedi. By now, most of "my people" have quit fedi or been driven away by a growing sense of cultural shifts and alienation from the spaces we used to inhabit, the spaces we carved out for ourselves.

I think what it comes down to is the promise that because these projects are open source and because the spec describes an open protocol, that anyone can get involved, that anyone can change things for the better. The reality has unfortunately not delivered. There are simply too many missing stairs. The true implicit protocol has ossified and remains widely inconsistent and undescribed. The software that has been built is fundamentally untestable and unverifiable, because it does not fully and formally define correct behavior. And the UX gaps seem nigh unsolvable, because they are caused by protocol issues bubbling up all the way to the UX layer. The best you can hope for is quadratic combinatorial explosion as N devs need to talk to N-1 devs... some of which they might not be aware of. You can never be sure of how other systems will interpret your activities, because the semantics are being overloaded by everyone, and you not only have zero guarantees, but you also have zero signals.

It's the sort of divide that I have called "fedi vs web" in a rambly thoughtpiece I wrote at the end of last year, though I never got around to continuing that series of articles because I wasn't sure anyone would really take them to heart. Perhaps the most effective thing I can do with my time right now is to learn more and research more and develop those writings and theories into concrete models so that I can prove the concepts rather than describing them over and over. And more than anything, I want those models to "scale" in the sense that others can easily adopt those models for themselves, but the models also need to be self-justifying so that they can't be captured, coopted, or compromised.

Ultimately, where I stand today is that connecting to the fediverse is valuable in that it brings access to users... but you have to give up a lot. Mainly, you are bound by the "lowest common denominator" user experience, where you can't even remove a follower in some cases because there is no formally specified way to remove a follower, and the "follow state machine" is horrendously infamously buggy because it depends on both sides keeping track of follow state, instead of only the sending side. You are bound by having to squeeze everything you output into a shape that Mastodon will find acceptable, because without Mastodon, you don't get to access most of those users that are probably the reason you're bothering to connect with the fediverse in the first place... and if it's not Mastodon, it's some other ad-hoc compatibility target like Lemmy. You have to struggle with the vast inconsistency that comes with everyone using the same terms with different meanings, with every implementation having its own quirks and undeclared requirements, some of which conflict with each other. You have to deal with the knowledge that your own desired feature set is immediately compromised by your peers not understanding you, and even if they understand you, it comes at a great loss of fidelity. You have to deal with the paper cuts and bruises and little-deaths that are taken for granted; the ambiguity, the uncertainty, the lack of guarantees; the burden of having to implement an entire web browser from scratch and also implement an entire mail server from scratch, and then still having your application logic to worry about.

The reason I'm still on the fediverse is because I have nowhere else to go. Everywhere else has simply become inhospitable.

---

All of this sounds cynical, and it probably is, but I do think that we can build better software, provided that we share the same goals and principles. I think that "connecting services with other services" is on balance an improvement compared to a world where services aren't connected to anything at all, but I would posit that we need to go further than that. We need to connect people and enable them to communicate more effectively. We need to build better avenues for self-expression. It turns out that you don't need to adhere to the fediverse model to achieve this. Rather than distributing the content, you can federate the identity. You can give people more control over where their posts end up being syndicated. You can build explicitly managed reified spaces that people can intentionally participate within. There's so much we can do, and we should be willing to evolve beyond a model where only services can exist. We should be willing to build a real Social Web, where the entire Web can participate.

(Somewhat ironically, I think that ActivityPub and ActivityStreams are better fit for actual "activity streams" rather than trying to manipulate a network of syndicated Notes. "Activity streams" have their place, but I don't think you can unify all of digital social communications under this one paradigm. Rather, we should recognize that resources can belong to multiple classes at the same time -- that Thing that's an Article might also be a Post, an Asset, a Review, and so on.)

in reply to julian

This is definitely something I’ve seen a lot of over the years. Take curation, for example. WordPress has a discovery portal for blogs and interesting content. So does Ghost. So does Medium. To some extent, so does Blogger.

A lot of these platforms get caught up in self-discovery and promotion amongst their own kind, when they’d all clearly benefit from showcasing a wider part of the Web regardless of underlying platform.

I really love the idea of Ghost’s “Reader View” which highlights articles from publications you’re subscribed to. It would be amazing to see this kind of utility and a social feed in all blogging platforms.



Sunset from last night outside of Bend, OR


Camped near Reynolds Pond and was treated to a glorious sunset last night.
Questa voce è stata modificata (2 mesi fa)



Reuse non-prefix KV Cache and speed up RAG by 3X with LMCache.


In modern LLM applications like RAG and Agents, the model is constantly fed new context. For example, in RAG, we retrieve relevant documents and stuff them into the prompt.

The issue is that this dynamically retrieved context doesn't always appear at the beginning of the input sequence. Traditional KV caching only reuses a "common prefix," so if the new information isn't at the very start, the cache hit rate plummets, and your GPU ends up recomputing the same things over and over.

CacheBlend changes the game by allowing for the reuse of pre-computed KV caches regardless of their position in the input sequence.

This makes it possible to achieve a 100% KV Cache hit rate in applications like RAG. The performance gains are significant:

  • Faster Time-To-First-Token (TTFT): Get your initial response much quicker.
  • More Throughput: Serve significantly more users with the same hardware.
  • Almost lossless Output Quality: All of this is achieved with little degradation in the model's generation quality.

CacheBlend works by intelligently handling the two main challenges of reusing non-prefix caches:

  • Positional Encoding Update: It efficiently updates positional encodings to ensure the model always knows the correct position of each token, even when we're stitching together cached and new data.
  • Selective Attention Recalculation: Instead of recomputing everything, it strategically recalculates only the minimal cross-attention needed between the new and cached chunks to maintain perfect generation quality.

An interactive CacheBlend demo is available at: github.com/LMCache/LMCache-Exa…

Technology reshared this.




In an Attack at Sunset, Israelis Set a Palestinian Village Ablaze


The violence last week in Kafr Malik, in the West Bank, comes amid a surge in assaults by Israeli settlers. It also set off a chain of violence in the area.

By Fatima AbdulKarim
July 1, 2025 Updated 1:56 p.m. ET

"The attackers threw another firebomb into the bedroom where Mr. Afeef’s newborn nephew was being lulled to sleep, scorching furniture and leaving blackened marks on the floor and walls, the family said. The damage was visible when Times reporters visited on Friday.
[...]
Soon after, Israeli forces arrived and opened fired at Palestinians instead of stopping the rioters, according to multiple witnesses.

The soldiers killed three people, according to the Palestinian health ministry. [...]Nine others were injured, some gravely..."

archive.ph/j6Mce

https://www.nytimes.com/2025/07/01/world/middleeast/israel-west-bank-palestinians-attack.html



See any parallel?


One day, Americans will be ashamed of themselves. Like the Germans were.


See any parallel?


One day, Americans will be ashamed of themselves. Like the Germans were.


Laptop Mag is shutting down




In an Attack at Sunset, Israelis Set a Palestinian Village Ablaze


The violence last week in Kafr Malik, in the West Bank, comes amid a surge in assaults by Israeli settlers. It also set off a chain of violence in the area.

By Fatima AbdulKarim
July 1, 2025 Updated 1:56 p.m. ET

"The attackers threw another firebomb into the bedroom where Mr. Afeef’s newborn nephew was being lulled to sleep, scorching furniture and leaving blackened marks on the floor and walls, the family said. The damage was visible when Times reporters visited on Friday.
[...]
Soon after, Israeli forces arrived and opened fired at Palestinians instead of stopping the rioters, according to multiple witnesses.

The soldiers killed three people, according to the Palestinian health ministry. [...]Nine others were injured, some gravely..."

archive.ph/j6Mce

https://www.nytimes.com/2025/07/01/world/middleeast/israel-west-bank-palestinians-attack.html

Questa voce è stata modificata (2 mesi fa)
in reply to Peter Link

A Palestinian friend who lived in my neighborhood in the US is there now, in his family's home. He said it was like 3 nights in a war zone.



Republican Senator tells House not to vote on bill she just voted for


Republican Alaskan Senator Lisa Murkowski said Tuesday that despite voting in favor of the sweeping tax and spending package, she wants the House to return the "One Big Beautiful Bill" to the Senate for further work.

"My hope is that the House is gonna look at this and recognize that we're not there yet," Murkowski told reporters today.

Murkowski's vote was pivotal in the Senate's razor-thin 51–50 passage of the bill. The Alaska senator had been the focus of intense lobbying by GOP leaders, including Senate Majority Leader John Thune, to secure her support amid concerns over Medicaid cuts and food assistance reductions. The bill now heads to the House, where its future remains uncertain.



Reuse non-prefix KV Cache and speed up RAG by 3X with LMCache.


In modern LLM applications like RAG and Agents, the model is constantly fed new context. For example, in RAG, we retrieve relevant documents and stuff them into the prompt.

The issue is that this dynamically retrieved context doesn't always appear at the beginning of the input sequence. Traditional KV caching only reuses a "common prefix," so if the new information isn't at the very start, the cache hit rate plummets, and your GPU ends up recomputing the same things over and over.

CacheBlend changes the game by allowing for the reuse of pre-computed KV caches regardless of their position in the input sequence.

This makes it possible to achieve a 100% KV Cache hit rate in applications like RAG. The performance gains are significant:

  • Faster Time-To-First-Token (TTFT): Get your initial response much quicker.
  • More Throughput: Serve significantly more users with the same hardware.
  • Almost lossless Output Quality: All of this is achieved with little degradation in the model's generation quality.

CacheBlend works by intelligently handling the two main challenges of reusing non-prefix caches:

  • Positional Encoding Update: It efficiently updates positional encodings to ensure the model always knows the correct position of each token, even when we're stitching together cached and new data.
  • Selective Attention Recalculation: Instead of recomputing everything, it strategically recalculates only the minimal cross-attention needed between the new and cached chunks to maintain perfect generation quality.

An interactive CacheBlend demo is available at: github.com/LMCache/LMCache-Exa…





I finally decided to break out of Bambu’s increasingly-closed walled garden.

I’ve had the Bambu X1C for a couple of years already, and it is a really, really great 3D printer. There’s no question whatsoever that Bambu has transformed the 3D printing space for consumers, and has done so while also creating some very high-quality premium hardware.

I’ve been meaning to write about the various mods I’ve made over time, but at this point it’s a bit far down the line to go into each one in detail 😁

  • riser with LED strip, remote controlled via a Raspberry Pi Pico with a simple MicroPython HTTP-to-RF API that can dim the strip
  • IKEA SKADIS mounted on the side with tools
  • boxes to hold desiccant beads in the AMS, and a hygrometer
  • after-market high flow nozzle (obviously)
  • Garolite plate
  • third party nozzle wiper
  • etc etc

The printer has been very reliable, and straightforward to maintain as well.

So why hack it? Well… I own it, I think it can be made better, and… because.

When the X1Plus Expander launched on Crowd Supply I went ahead and backed the project, as I was interested in ways I could potentially add extra sensors and a better camera; as well as finally being able to connect over a LAN socket rather than having to be on wifi (the studio network can be a bit flaky from time to time).

The X1Plus Expander depends on third-party firmware (X1Plus), which requires the printer itself to be jailbroken / rooted.

Long story short, I’ve finally done that.

I was extremely impressed with how smooth and clear the project contributors have made the process. I went through the official process with Bambu to switch my printer into the unsupported third party program, downgraded to a rootable version of the firmware, rooted it, then ran through the remote install process (via wifi from my Framework) to install the firmware. I’d already printed the case for the X1Plus Expander. Then it was simply a case of following the exciting and dramatic installation video.

I now have VNC access to drive the controls on the printer’s touchscreen remotely; SSH access; the ability to network mount storage; etc etc. Lots of options to explore here. I was even able to upgrade the firmware of components like the AMS from within the third party X1Plus firmware.

You’ll also spot the OpenSpool sitting off to the side in the image above. That’s another third-party addon that I’ve barely started to use, but it extends the ability for the printer to recognise RFID-tagged spools from Bambu themselves, to having it recognise “any” spool that I happen to tag and configure.

All of this is background tinkering and admin… apart from the case for the X1Plus Expander, I’ve not been using the printer itself quite so much lately, due to travels.

Open source (and open source hardware!) FTW!

Share this post from your fediverse server
https:// Share

This server does not support sharing. Please visit .

andypiper.co.uk/2025/07/01/ope…

#100DaysToOffload #3dPrinting #Bambu #crowdSupply #electronics #hardware #Linux #openSource #openSourceHardware #openspool #Technology









Hoodoos trail Yoho National Park, BC


Moderate 3.8 mi out and back
1,332 ft elevation gain
Hiked 6/3/25

Beginning at the former Yoho NP campground, this short but steep trail takes you to one of the many great hoodoos found along the Canadian Rockies. As the trail crosses multiple washout areas, the trail degrades in places but remains manageable. A split towards the end takes you to different views which are both pretty cool, but both washed out a lot/steep.

The view up at the hoodoos from the lower trail terminus. Trees grow in the more stable sections of the hill.

An upstream view of Hoodoo creek taken from the walking bridge. Mountains may be seen in the distance.

This section of the lower hoodoos trail was very degraded, with atleast one foothold wedged into the slide.








in reply to chobeat

Can the clickbates stop using "meltdown?" Do we really think these fucking snakes even more then snicker at this investigative reporting? what are these papers threshold for claiming a meltdown?

I like how I can't even read this article with an ad blocker enabled.

Questa voce è stata modificata (2 mesi fa)


in reply to Blaze (he/him)

Barcelona - 9/2

Newell's Old Boys - 7/1

Any Saudi team - 15/2

Bayern Munich - 17/2

PSG - 11/1

Man City - 16/1

Chelsea - 20/1

Arsenal - 22/1

People really think there’s a 1 in 12 chance Messi moves back to PSG?

(Apart from that, him moving back to barca is about the dumbest financial decision the club could make, but given the way they are dealing with finances in the present… wouldn’t be massively suprising if they favoured such a move)

Questa voce è stata modificata (2 mesi fa)


GAZA: Starvation or Gunfire – This is Not a Humanitarian Response





Cursor’s Browser App Lets AI Agents Fix Code From Anywhere


Technology reshared this.




Zohran Mamdani on Affordability, Billionaires, and Fighting Hate | Morning Edition | NPR


I'd not yet seen Mamdani in a sit-down interview. He gives off strong Obama vibes.



Secure Your Gmail Now As Google Warns Of Password Attacks