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.

1
0
1
1
0
0
5
0
0
1
0
1

The LLM discourse on the Fediverse has really irked me the last few days.

Refusing to read writing made with the use of LLMs and refusing to give time to writers who use, promote or justify the use of LLMs is not purity culture, it's a boycott. It's a political act of withdrawing my time, resources and support for something that I find deeply morally wrong. It's protest. I have a choice and I refuse.

LLMs are exploitative, destructive, biased, mediocre parroting machines. Using them has a negative impact on the climate, the arts, the quality of the internet, the job market, the economy, the accessibility of electronics, even on skill development, creativity and mental health. LLMs are made and trained on the unpaid labour of millions -if not billions- of people who didn't consent. Their generic output litter the path to finding anything by true human creators.

Wherever I can, for as long as I can, I reject LLMs and anything that is related to them. I'm boycotting.

0
50
0
0
0
0
1
0

클럽? 포차?…외로운 청년들, 이제는 '혼술바' 간다는데 www.yna.co.kr/view/AKR2026... 저희 동네도 몇 곳 있더라고요. 혼자 가서 조용히 마시는 바인 줄 알았는데 "혼자 가서 아무하고나 친해져서 같이 마시는" 술집이었음...................................

클럽? 포차?…외로운 청년들, 이제는 '혼술바' 간다는...

0
0
1
0

やったー! ㊗️島
上関町議選、祝島から出た4名全員が当選!
これで上関原発・中間貯蔵施設の推進派は7議席⇨6議席に。(町議会は全10議席)
x.com/touminnokai/status/20255

祝島について。
social.vivaldi.net/@GB0FakeWat
瀬戸内の美しい島が「使用済み核燃料の中間貯蔵施設」(要は核のゴミ捨て場) にされようとしている。

    

0
0
0
0

사람들이 창조적인 발상이 담긴/의도를 잘 반영한 무언가를 그닥 원하지 않는 경우가 어느 정도로 잦은지를 봐야… 'AI는 그런 걸 잘 하지 못한다'는 논증이 커버하는 범위를 알 수 있겠지

0
0
0

I have a Mastodon question.

I post mostly in English, but if I post in French, I try to remember to change the setting to Français.

I see a large number of posts in German, while my language seting is English and French. Is this simply because the poster didn't select the language? Maybe all apps don't allow this?

When I see posts in a language I can't read, I mute or block that poster, but some people post in more than one language.

0
0

Fedify 2.0.0 is here!

This is the biggest release in Fedify's history. Here are the highlights:

  • Modular architecture — The monolithic @fedify/fedify package has been broken up into focused, independent packages: @fedify/vocab, @fedify/vocab-runtime, @fedify/vocab-tools, @fedify/webfinger, and more. Smaller bundles, cleaner imports, and the ability to extend ActivityPub with custom vocabulary types.
  • Real-time debug dashboard — The new @fedify/debugger package gives you a live dashboard at /__debug__/ showing all your federation traffic: traces, activity details, signature verification, and correlated logs. Just wrap your Federation object and you're done.
  • ActivityPub relay support — First-class relay support via @fedify/relay and the fedify relay CLI command. Supports both Mastodon-style and LitePub-style relay protocols (FEP-ae0c).
  • Ordered message delivery — The new orderingKey option solves the “zombie post” problem where a Delete arrives before its Create. Activities sharing the same key are guaranteed to be delivered in FIFO order.
  • Permanent failure handlingsetOutboxPermanentFailureHandler() lets you react when a remote inbox returns 404 or 410, so you can clean up unreachable followers instead of retrying forever.

Other changes include content negotiation at the middleware level, @fedify/lint for shared linting rules, @fedify/create for quick project scaffolding, CLI config files, native Node.js/Bun CLI support, and many bug fixes.

This release includes significant contributions from Korea's OSSCA participants. Huge thanks to everyone involved!

This is a major release with breaking changes—please check the migration guide before upgrading.

Full release notes: https://github.com/fedify-dev/fedify/discussions/580

3
5
0

Fedify 2.0.0 is here!

This is the biggest release in Fedify's history. Here are the highlights:

  • Modular architecture — The monolithic @fedify/fedify package has been broken up into focused, independent packages: @fedify/vocab, @fedify/vocab-runtime, @fedify/vocab-tools, @fedify/webfinger, and more. Smaller bundles, cleaner imports, and the ability to extend ActivityPub with custom vocabulary types.
  • Real-time debug dashboard — The new @fedify/debugger package gives you a live dashboard at /__debug__/ showing all your federation traffic: traces, activity details, signature verification, and correlated logs. Just wrap your Federation object and you're done.
  • ActivityPub relay support — First-class relay support via @fedify/relay and the fedify relay CLI command. Supports both Mastodon-style and LitePub-style relay protocols (FEP-ae0c).
  • Ordered message delivery — The new orderingKey option solves the “zombie post” problem where a Delete arrives before its Create. Activities sharing the same key are guaranteed to be delivered in FIFO order.
  • Permanent failure handlingsetOutboxPermanentFailureHandler() lets you react when a remote inbox returns 404 or 410, so you can clean up unreachable followers instead of retrying forever.

Other changes include content negotiation at the middleware level, @fedify/lint for shared linting rules, @fedify/create for quick project scaffolding, CLI config files, native Node.js/Bun CLI support, and many bug fixes.

This release includes significant contributions from Korea's OSSCA participants. Huge thanks to everyone involved!

This is a major release with breaking changes—please check the migration guide before upgrading.

Full release notes: https://github.com/fedify-dev/fedify/discussions/580

0
1
0

"Feed algorithms are widely suspected to influence political attitudes. However, previous evidence from switching off the algorithm on Meta platforms found no political effects1. Here we present results from a 2023 field experiment on Elon Musk’s platform X shedding light on this puzzle. We assigned active US-based users randomly to either an algorithmic or a chronological feed for 7 weeks, measuring political attitudes and online behaviour. Switching from a chronological to an algorithmic feed increased engagement and shifted political opinion towards more conservative positions, particularly regarding policy priorities, perceptions of criminal investigations into Donald Trump and views on the war in Ukraine. In contrast, switching from the algorithmic to the chronological feed had no comparable effects. Neither switching the algorithm on nor switching it off significantly affected affective polarization or self-reported partisanship. To investigate the mechanism, we analysed users’ feed content and behaviour. We found that the algorithm promotes conservative content and demotes posts by traditional media. Exposure to algorithmic content leads users to follow conservative political activist accounts, which they continue to follow even after switching off the algorithm, helping explain the asymmetry in effects. These results suggest that initial exposure to X’s algorithm has persistent effects on users’ current political attitudes and account-following behaviour, even in the absence of a detectable effect on partisanship."

nature.com/articles/s41586-026

0
0
0
1

@julian@fietkau.socialJulian Fietkau @evanEvan Prodromou @julian@activitypub.space @smallcircles🫧 socialcoding.. alternatively add the Reply itself, parallel to likes/shares collections. it depends on whether you think the replies collection should always contain a specific type of object, which i don't think is something you can guarantee because publishers can do anything with it. similar to how some publishers include activities in threads and some include notes.

@julian@fietkau.socialJulian Fietkau @evanEvan Prodromou @julian@activitypub.space @smallcircles🫧 socialcoding.. i think the issue here is that projects are doing things that may or may not get widely adopted, then if the proposals ever change, they have to deal with older software only understanding the old thing they tried. (this is where i would say something about protocol capability negotiation)

0

Also not sure if I should even long post about my intention to move abroad, since I'm on a tech focused server. Don't want to bother yall but it's also such a big theme in my life atm that I don't have much else to post about 😅

@Gina@fosstodon.org ​I know you're on Mastodon, but can I recommend you check out Bonfire? Bonfire has MANY ways of controlling your posts. They call them boundaries. I haven't done too much with them yet, but I'm with you on the feeling of wanting to keep work and my personal life/social network life separate.

0

그러니까 이런 저런 이유로 한 사업체, 더 나아가 산업군에서 특정한 인력을 AI로 교체한다는 것은 이런 한계성을 염두해두지 않은 결정임에 분명해서 그 서비스 질이 현저하게 떨어질 수 밖에 없으리라 생각한다. 어제 말한 이야기의 연장으로 결국 이와 같은 행동은 사람이 한번 더 일하게 만드므로 효율적이지도 않다.

0
0
3

I have a fundamental #GameDev question that has been bugging me for ages.

I've tried developing my own games, but I always felt like I was missing something fundamental about #programming logic and everything I did felt "wrong" and inefficient.

Here goes.

At the most basic level, games run as endless loops, right? Every frame, something happens. The program goes through the same loop over and over again until something causes it to exit.

For example, in a simple Asteroids-like shoot-em-up, the game goes through the list of obstacles every frame and sets their position downward a bit. They therefore appear to be coming towards you over time.

But games are obviously complex and interactive, and therefore don't just do the same thing every frame. The game needs different things to happen each iteration of the loop, based on what's going on in the game.

For example, the Asteroids obstacle needs to be removed from the game once it exits the screen, or once it overlaps with the player.

The only way I know to check whether something happened is to add a conditional to the game loop. Every single frame, the game checks for every single obstacle whether its position is outside the boundaries, and if so, removes it.

A computer can't just "keep in mind" to watch for a certain event to make something happen, it needs to explicitly be reminded to check every frame.

Even if something is supposed to happen only every minute, you still need to count a number up every frame until you reach a minute's equivalent amount of frames, and then the counter gets reset to zero and the event happens.

I understand all this works.

But what I don't understand is the following:
This seems extremely wasteful and inefficient, right?

I understand that a computer can calculate and compare a bazillion things a second, and that this is perfectly fine for something as simple as Asteroids.

But what about more complex games?

  • Do Mario jump-and-run games genuinely check whether Mario touches the goal post every single frame of the game?
  • Does GTA V check every single frame whether the player is in a mission, and if so, which one they're in?
  • Do games like #Minecraft check every single frame, for every single animal, whether they're currently on fire?
  • Do games check every single frame whether they're paused, in a menu, or running?

If this is genuinely what's going on, how the hell do complex games even run? When I play Minecraft, does the computer really, 120 times a second, for every single animal in the world, check whether they're currently poisoned? And then also checks whether the game is paused, whether there is mouse input, whether it's raining, whether music is playing, whether a block state has changed, and so on and so on?!

What about something like #BindingOfIsaac? Does it really check every single frame for every one of the thousands of possible items and whether the player has them equipped?

I mean, I'm sure it's abstracted a bit in that the game adds an "event hook" or something whenever you pick up a new item, but underneath all that, surely the game still has to check every frame for every possible hook whether it is active or not?

If I finally understood the answer to this question, I'd understand way more about game development.

0

사실 질문이 디테일 해질수록 대답이 엉뚱해지는건(할루시가 늘어나거나 내용이 혼재되는건, 이번에 BC-250과 바자이트OS세팅하면서 나도 경험한 부분이었다. 전에도 포스트로 썼지만 뭔가를 원하는걸 알고 질문을 던지면 잘 답한다. 대부분 검색으로 가능한 보편적인 질문의 범주라 그럴지도 모른다. 문제는 시스템 개별 환경으로 들어가 질의응답을 하기 시작하면 뭐가 좀 꼬이기는 하더라. 바자이트OS인데 우분투의 게시물을 퍼와서 알려준다던가.

0

felt bored and was curious how long it would take me to implement fizzbuzz in shell. Apparently ~2min. 😆

$ i=0; while [ $((++i)) -le 30 ] ; do case 0 in $((i%15)) ) echo fizzbuzz;; $((i%3)) ) echo fizz;; $((i%5)) ) echo buzz ;; *) echo $i ; esac ; done

0
1
1
0
0
2
0

Fedify 2.0.0 is here!

This is the biggest release in Fedify's history. Here are the highlights:

  • Modular architecture — The monolithic @fedify/fedify package has been broken up into focused, independent packages: @fedify/vocab, @fedify/vocab-runtime, @fedify/vocab-tools, @fedify/webfinger, and more. Smaller bundles, cleaner imports, and the ability to extend ActivityPub with custom vocabulary types.
  • Real-time debug dashboard — The new @fedify/debugger package gives you a live dashboard at /__debug__/ showing all your federation traffic: traces, activity details, signature verification, and correlated logs. Just wrap your Federation object and you're done.
  • ActivityPub relay support — First-class relay support via @fedify/relay and the fedify relay CLI command. Supports both Mastodon-style and LitePub-style relay protocols (FEP-ae0c).
  • Ordered message delivery — The new orderingKey option solves the “zombie post” problem where a Delete arrives before its Create. Activities sharing the same key are guaranteed to be delivered in FIFO order.
  • Permanent failure handlingsetOutboxPermanentFailureHandler() lets you react when a remote inbox returns 404 or 410, so you can clean up unreachable followers instead of retrying forever.

Other changes include content negotiation at the middleware level, @fedify/lint for shared linting rules, @fedify/create for quick project scaffolding, CLI config files, native Node.js/Bun CLI support, and many bug fixes.

This release includes significant contributions from Korea's OSSCA participants. Huge thanks to everyone involved!

This is a major release with breaking changes—please check the migration guide before upgrading.

Full release notes: https://github.com/fedify-dev/fedify/discussions/580

0