What is Hackers' Pub?

Hackers' Pub is a place for software engineers to share their knowledge and experience with each other. It's also an ActivityPub-enabled social network, so you can follow your favorite hackers in the fediverse and get their latest posts in your feed.

0
0
0
0

Fediverse Report – #122

Fediverse Report is now Connected Places! You can read more about this in the announcement post. For this week’s news, Mastodon announces and retracts a new ToS for mastodon.social, Threads continues their streak of implementing ActivityPub in the most confusing way possible, and Wanderer is a new fediverse platform for sharing your hiking and biking trails.

I also run a weekly newsletter, where you get all the articles I published this week directly in your inbox, as well as additional analysis. You can sign up right here, and get the next edition this Friday!

<form action="https://connectedplaces.online/wp-admin/admin-ajax.php?action=tnp&na=s" method="post" style="text-align: center"><input type="hidden" name="nr" value="minimal"><input type="hidden" name="nlang" value=""><input class="tnp-email" type="email" required name="ne" value="" placeholder="Email"><input class="tnp-submit" type="submit" value="Sign up" style=""></form>

The News

Mastodon introduced a new Terms of Service for the mastodon.social and mastodon.online instances, and then retracted the new ToS after criticism from the community about some of the conditions that are in the ToS. Mastodon announced the new ToS with a summary email that explained that the new ToS would “explicitly prohibit the scraping of user data for unauthorized purposes, e.g. archival or large language model (LLM) training. We want to make it clear that training LLMs on the data of Mastodon users on our instances, is not permitted.” It would also set a minimum age of 16 for everyone, and clarified rights regarding content licensing. There were multiple points of criticism with the ToS:

  • It made the IP license grant irrevocable, and not even deleting the post or account would revoke the IP license.
  • It had a binding arbitration waiver, which tech writer Cory Doctorow argued hard against.
  • To whom do these terms actually apply? Federation is complicated, and the legal framework for how federation interacts with user content rights is untested. Two different posts (1, 2) go into some of open questions regarding how the ToS interacts with federation.

Mastodon CEO Eugen Rochko noted in the Mastodon Discord that “the lawyers don’t have experience with federated platforms”, which points to the challenge of writing a ToS for federated platforms. Rochko also said that he has taken up on Doctorow’s offer to have lawyers of the Electronic Frontier Foundation get involved. The first two concerns listed above seem fairly straightforward to handle. However the question of how Terms of Service apply in a federated network seem more complicated to resolve, as it is unclear if there is even a broad agreement on how the ToS should function in a federated context, let alone how to translate that into legalese.

Meta, the company that relentlessly removes friction from their social apps to maximise engagement, has moved fediverse posts on Threads to a separate ‘fediverse’ feed. Posts from fediverse accounts will only appear in this new fediverse feed, and will not appear in the regular timelines on Threads. You can not reply on posts from the fediverse with your Threads account, Threads engineer Peter Cottle says that this feature (lol) is an ‘eventual goal’. The fediverse feed on Threads also shows top-level posts, not replies and reposts. Cottle says that this is to create a ‘cleaner product experience’. You can now also search for fediverse accounts in Threads, before this update users had to wait for a post by a fediverse account showed up in their feed so they could click on the profile and hit follow. David Imel from the MKBHD and Waveform channels asked Cottle about Threads’ plans for account portability, noting that this was an important point made by Threads’ Adam Mosseri. Cottle says that this is “top of mind for us”, but that they do not have a concrete timeline for this. Threads’ fediverse integration is also still not available in the EU, with no clear indication if or when it will launch in the region.

Wanderer is a platform for managing and sharing your hiking, running and biking trails. It is self-hosted and open source, and the latest update for Wanderer has added ActivityPub, making it decentralised and federated as well. There is a demo instance of Wanderer available to try out what the platform actually looks like. Wanderer also has the option to import trails from other platforms like Strava and Komoot. Wanderer does face a familiar challenge that goes for a new type of platforms on the fediverse however: how does it bootstrap itself into becoming a community?

Mastodon shared an update on their strategy for 2025. The organisation said they are still working on new non-profit organisation in Europe that will own the Mastodon assets. When Mastodon announced this in January 2025 they also said that the current CEO Eugen Rochko would step down and work on product strategy. The latest update by Mastodon does not share any news on a potential new CEO. Growth his one of the three key pillars of Mastodon’s strategy for 2025, and they are working on making Mastodon more accessible for general users, as well as some features that other organisations have asked for, such as greater customisation for instances. Regarding financial sustainability Mastodon said that they are working on offering additional commercial service, and that they’ll announce more on that soon.

Related to Mastodon growing into a more mature and sustainable organisation, they also announced this week that Mastodon is registered as a digital public good. This registration is part of the Digital Public Good Alliance, a large multi-stakeholder organisation. In a speech during the United Nations Office for Digital and Emerging Technologies‘s Open Source Week, Mastodon Board of Director member Hannah Aubry explains what it means for Mastodon to meet the DPG Standard: “adhering to privacy best practices, doing no harm, and contributing to the UN’s Sustainable Development Goals. And it aids us in our mission to empower public institutions to speak directly to their citizens and constituents, without the filter of a corporation.”

PieFed is officially out of beta, and has released the 1.0 version. The Reddit-like platform has grown significantly over recent weeks. Popular Lemmy instance Lemm.ee announced they would be shutting down, and PieFed has been one of the main recipients of users and communities looking for a new place. Lemmy app Voyager is also in the process of adding support for PieFed to the app. The growth of PieFed in recent weeks is instructive for understanding how community growth within the fediverse actually happens. PieFed has been around for over a year, with a compelling feature set (especially regarding moderation, as well as clustering communities in feeds and topics), but had a low adoption rate. It took an exogenous event for people to actually take the effort to give PieFed a serious consideration and migrate away from Lemmy to a different platform.

Framasoft has successfully completed their crowdfunding campaign, raising over 75k EUR. The large majority of the funds are for further development of the PeerTubeapp , such as playing video on background, adding support for live streaming, and managing videos within the app. The final part of the campaign funds is for the support of the Framasoft organisation itself. Framasoft says that most new features will likely be released late this year or next year. Live broadcast is currently already in development and is scheduled to launch “fairly quickly”.

In Other News

Wafrn is a Tumblr-like platform with native support for both ActivityPub and ATProto. The platform developers have released an Android app for Wafrn on F-Droid.

Manyfold is a fediverse platform for hosting and sharing 3D printer files, providing an alternative to platforms like Makerworld and Thingiverse. Manyfold was already available for self-hosting, and the 3dprint.social is the first publicly available instance that is now open for joining as well.

Bonfire is fediverse (micro)blogging platform that is getting close to release, and the developers are hosting online install parties to help people get started setting up their own instance.

FediThreat is a newly announced open source content moderation API for the fediverse by Pixelfed and Loops developer Daniel Supernault. There is not much publicly known yet on how FediThreat actually works. The project is scheduled for July.

The Event Federation project shares what they’ll be working on in the future to make events more accessible within the fediverse.

The Links

connectedplaces.online/reports

detail of a building in Brugge Belgium
0
0
0
0

:

Varios amig@s del y de me han preguntado si hay por aquí algún servicio de pronóstico del , pues bien, si lo hay, esta en  mx.fedimeteo.com/ donde hallarán diversas cuentas que publican estas cuestiones, una vez hallada la entidad federativa correspondiente solo basta seguir la cuenta listada, como por ejemplo @ciudad_de_mexico__cdmxCiudad De Mexico - Cdmx - FediMeteo y el pronóstico climatico para aparecerá día a día en nuestro time line, lo mismo con la cuenta @toluca__estado_de_mexicoToluca - Estado De Mexico - FediMeteo quien nos dará el pronóstico para el

Genial ¿no te parece,

0
0
0
0
0
0
0

Apparently there's a queer zine (anewsession.com/) that's only available over telnet! 404 media did a story about it (404media.co/queer-online-zine-) which is how I found it.

You can access it at `telnet issue3.anewsession.com` (or issue1/issue2), and they also have web links to a telnet emulator if you want to read it in the browser.

Telnet session in a iTerm2:

                                     [INDEX]

1 > [The Plague Book] // Cat Leeches
    ...changes every 1:43, every view
2 > [Once Recalled] // Sarah Clarke
    ...changes every view
3 > [Sanctuary] // Natassja Kistemaker
    ...changes every view, with the weather
4 > [Signature] // Kaia Peacock
    ...changes as you type
5 > [Sorry I Missed Your Call] // eri lucia kapling
    ...changes every day of the week
6 > [The Raffle] // Illimani Ferreira
    ...changes every view
7 > [Picked up a golf ball by the side of the road] // F.M. Cassandra
    ...changes every view
8 > [Moments &.. / Searching For Guarantees] // Purbasha Roy
    ...changes every view
9 > [Q & A / Mountainsong] // R Daniel Brown
    ...changes every view
a > [Unfinished Exit] // Claudia Wysocky
    ...changes every evening and night
(X to quit, ? for help)
0
0
0

Blogged: Working with stacked branches in git (Part 2)

andrewlock.net/working-with-st

In this follow up post looking at stacked branches I describe how to handle scenarios such as merging one of the branches in the stack and handling changes to main

0
0

"When AI is used ethically it can have great benefits in the realm of conservation. By completing time consuming and repetitive tasks, it allows us to focus on more pressing issues that need innovation and problem solving that only humans can do."

develops a tool at the Millenium for : kew.org/read-and-watch/machine
This scientific use is different to what we know as popular "AI".

0

Lee Dogeon shared the below article:

How to pass the invisible

洪 民憙 (Hong Minhee) @hongminhee@hackers.pub

This post explores the enduring challenge in software programming of how to pass invisible contextual information, such as loggers or request contexts, through applications without cumbersome explicit parameter passing. It examines various approaches throughout history, including dynamic scoping, aspect-oriented programming (AOP), context variables, monads, and effect systems. Each method offers a unique solution, from the simplicity of dynamic scoping in early Lisp to the modularity of AOP and the type-safe encoding of effects in modern functional programming. The post highlights the trade-offs of each approach, such as the unpredictability of dynamic scoping or the complexity of monad transformers. It also touches on how context variables are used in modern asynchronous and parallel programming, as well as in UI frameworks like React. The author concludes by noting that the art of passing the invisible is an eternal theme in software programming, and this post provides valuable insights into the evolution and future directions of this critical aspect of software architecture.

Read more →
11
1
0
0

Have you ever seen a post or thread that you want to look at again after a certain amount of time?

There is a Fediverse reminder bot which you can use to remind you about a particular thread after a specified time period (it can be minutes, hours, days, weeks, months or years later).

To use the bot, reply to the post or thread you want reminding about, mentioning the bot's account with the amount of time you want. More info and instructions in the guide:

➡️ fedi.tips/is-there-a-reminder-

0
0
0
0

Miss Tumblr after leaving big social? Well, Fediverse has its own Tumblr, and it's called Wafrn. It still seems small and unknown, so spread the word to those fedifriends of yours who long for Tumblr.

https://app.wafrn.net/dashboard/exploreLocal

0
1
0
0
0
0

洪 民憙 (Hong Minhee) shared the below article:

How to pass the invisible

洪 民憙 (Hong Minhee) @hongminhee@hackers.pub

This post explores the enduring challenge in software programming of how to pass invisible contextual information, such as loggers or request contexts, through applications without cumbersome explicit parameter passing. It examines various approaches throughout history, including dynamic scoping, aspect-oriented programming (AOP), context variables, monads, and effect systems. Each method offers a unique solution, from the simplicity of dynamic scoping in early Lisp to the modularity of AOP and the type-safe encoding of effects in modern functional programming. The post highlights the trade-offs of each approach, such as the unpredictability of dynamic scoping or the complexity of monad transformers. It also touches on how context variables are used in modern asynchronous and parallel programming, as well as in UI frameworks like React. The author concludes by noting that the art of passing the invisible is an eternal theme in software programming, and this post provides valuable insights into the evolution and future directions of this critical aspect of software architecture.

Read more →
11
1
0

my old TEAC cd player broke the other day. it was the hottest day of the year. the voltage rails were all fine. but no clock on any of the digital board components. power/standby worked but nothing would come to life. it was a nice CD player though. so i bought an identical model. it arrived today. the weather is a lot cooler now, way less warm than it was last week. i switch on the old broken CD player one last time. works fine. no issues. what the hell do i do with two identical CD players

0
0
0
0

I have zero sympathy for people who lost their homes due to cliff erosion or are about to soon. You knew perfectly well what you were risking when you bought a house teetering on the edge of a cliff. You have only yourself and your stupid decision-making "skills" to blame.

0
0
0

How to pass the invisible

洪 民憙 (Hong Minhee) @hongminhee@hackers.pub

This post explores the enduring challenge in software programming of how to pass invisible contextual information, such as loggers or request contexts, through applications without cumbersome explicit parameter passing. It examines various approaches throughout history, including dynamic scoping, aspect-oriented programming (AOP), context variables, monads, and effect systems. Each method offers a unique solution, from the simplicity of dynamic scoping in early Lisp to the modularity of AOP and the type-safe encoding of effects in modern functional programming. The post highlights the trade-offs of each approach, such as the unpredictability of dynamic scoping or the complexity of monad transformers. It also touches on how context variables are used in modern asynchronous and parallel programming, as well as in UI frameworks like React. The author concludes by noting that the art of passing the invisible is an eternal theme in software programming, and this post provides valuable insights into the evolution and future directions of this critical aspect of software architecture.

Read more →
11
1
0

Is there a way to remove "Trending now" from the settings so that the column I get in this is not something to be scrolled? It looks terrible on deck mode @vmstanMichael Stanclift with half scrollable, half stuck there (the trending hashtags).

vmst.io/deck/getting-started

@GargronEugen Rochko

0
0
0
0
0
0

Unpaid open source maintainers should not have to keep up maintaining decades old shit used by billion dollar companies just because a large billion dollar company doesn't want to change compiler flags, actually

0
0

Well, this post certainly seems to have hit a nerve here, for starters! It has rapidly come right on the heels of my woolliest* toot yet (on another instance) 😂

The stickers really do look nice. If you want to buy some yourself, go over to fediverseforfreedom.org and give @andypiper's work some love (while stocks last).

PS: also the first King Charles III postage I have spotted in the wild, here in Helvetistan.

indieweb.social/@skk/114737516

Two more of those "I am part of the rebel alliance" #FediverseForFreedom stickers (one small, one large) over the envelope they came in.
The envelope carries a postage stamp with King Charles III portrait on it, the first I saw.
0

It couldn't happen to a nicer guy ...

"Protesters in Venice are claiming an "enormous victory" after US tech billionaire Jeff Bezos and his wedding guests were forced to "run away" from the city centre, moving their main celebration to another location."

bbc.com/news/articles/cd0vjr07

0
0
0
0
0
0
0
0
0
0

this is incredibly thoughtful, and while that it's about religion might turn some off (It makes it a bit hard for me, to be honest), the broader picture about where you put effort when you're trying to accomplish things, the humility of being introspective rather than blaming... it's good imho

0