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
3
0
1
0

🎮
Une archive de 390 Téra-octets de jeux vidéos va disparaître en mars. 🙁
Les causes ?
- frais trop élevés (ils parlent de 6000 dollars par mois !)
- des download manager payants contournent le site (pas d'affichage pour les donations, alors que ces managers gagnent de l'argent)
- prix de la RAM, SSD, HDD.
gamingonlinux.com/2026/02/the-

0
3
0
0
0
0
0

In a world where laziness is rewarded, immediate satisfaction drives the economy, and finding time to think is seeing as a weakness, choose the difficult path.

They're trying to convince you that doing the right thing is harder than it is too be.

Being ethical won't make you profitable, following a morale is a privilege you can't afford, not exploiting others is inconvenient.

Fuck that!
Do the right thing, even if it looks harder

0
1
0
0
0

When I first started working with , before existed, it felt like writing web apps in Perl and CGI in the late '90s. Interesting, even exciting—but never comfortable. That era where your business logic and your protocol plumbing were just… the same thing:

print "HTTP/1.1 200 OK"
print "Content-Type: text/html"
print
print "Hello, world!"

Decades of web development have given us layers of abstraction we now take for granted. Nobody hand-parses application/x-www-form-urlencoded query strings anymore. Nobody writes their own JSON codec, or manually constructs HTTP request/response messages. These things just aren't your problem when you're building an app.

ActivityPub development still feels like they are your problem. What do you do when the https://www.w3.org/ns/activitystreams#actor property comes in as a string instead of an array? What about when https://www.w3.org/ns/activitystreams#object is an embedded entity rather than a URI? How exactly do you implement HTTP Signatures? And wait—what's Linked Data Signatures, and do you need that too?

The real issue isn't that ActivityPub is complicated per se. It's that you can't get away with understanding it at a high level. You have to know it the way an implementor knows it—every edge case, every inconsistency in how different servers serialize JSON-LD, every signature scheme that exists in the wild. That's a lot to learn before you can even start thinking about your actual app. And when developers understandably cut corners on the protocol to focus on their product, it quietly becomes an interoperability problem for the whole ecosystem.

What I want ActivityPub development to feel like: you spend a day understanding the big picture, and then you just… build your app. That was the goal when I started Fedify, and honestly, we're not fully there yet. But it's where I want to get.

With Fedify & Claude code it took me just 1 few hours to develop a indiekit plugin to exist on the Fediverse with @rick@rmendes.net I spent more time on creating the AP reader to consume data from the Fediverse than anything else that's for sure! Thanks for your absolutely amazing foundational work with Fedify!
0
0
0

@zkatkat .. because he downplays any risk. What can go wrong?

There are too many people writing software because the incentives are high.. and with llm you can get far without knowing anything. Until it breaks and it kills businesses, endanger lives.

And the customer is surprised... But what could he have done differently?

I don't see any solution.. and I don't think that a title or a licence will make a difference.

0
0
0
2
0
0
2
0

You can use MAP_FIXED to get a range on a specific address. The address you specify that way does get rounded down to a multiple of the page size, but other than that it’s used as is.

A zero value for address has a special meaning, so if you absolutely want to map at address 0 you need to ask for address 1 rounded down. Though some kernels won’t permit that in the default configuration.

You can ask for more memory ahead of time. I am pretty sure the kernel only allocates the physical memory on the first write. However things get a little tricky with respect to over-commitment and such. As I understand it, the kernel will refuse the allocation if there is no way it could ever give you all of that memory. But I think the default is that when there is any doubt the kernel will let the allocation go through and kill the process later if it doesn’t have memory after all. (I am not saying that’s a good default.)

There is also the possibility of allocating a memory range with no permissions and then use mprotect to make parts of the range read and writable later. In that case it would make sense to me if the kernel only updates the count of committed memory once you make it writable, I don’t know if that’s actually what happens, but it should be easy to test.

I have used the approach of using mmap to allocate a range with no read or write permissions and then make a small range in the middle read-write with mprotect. My reason for using it has been to have guard pages around certain buffers as a security measure. It provides an extra layer of protection against buffer overflow vulnerabilities.

For some advanced use cases it can make sense to map a range with no privileges and later change the protection of the range from within a SIGSEGV handler when that address is accessed.

0

When I first started working with , before existed, it felt like writing web apps in Perl and CGI in the late '90s. Interesting, even exciting—but never comfortable. That era where your business logic and your protocol plumbing were just… the same thing:

print "HTTP/1.1 200 OK"
print "Content-Type: text/html"
print
print "Hello, world!"

Decades of web development have given us layers of abstraction we now take for granted. Nobody hand-parses application/x-www-form-urlencoded query strings anymore. Nobody writes their own JSON codec, or manually constructs HTTP request/response messages. These things just aren't your problem when you're building an app.

ActivityPub development still feels like they are your problem. What do you do when the https://www.w3.org/ns/activitystreams#actor property comes in as a string instead of an array? What about when https://www.w3.org/ns/activitystreams#object is an embedded entity rather than a URI? How exactly do you implement HTTP Signatures? And wait—what's Linked Data Signatures, and do you need that too?

The real issue isn't that ActivityPub is complicated per se. It's that you can't get away with understanding it at a high level. You have to know it the way an implementor knows it—every edge case, every inconsistency in how different servers serialize JSON-LD, every signature scheme that exists in the wild. That's a lot to learn before you can even start thinking about your actual app. And when developers understandably cut corners on the protocol to focus on their product, it quietly becomes an interoperability problem for the whole ecosystem.

What I want ActivityPub development to feel like: you spend a day understanding the big picture, and then you just… build your app. That was the goal when I started Fedify, and honestly, we're not fully there yet. But it's where I want to get.

0

When I first started working with , before existed, it felt like writing web apps in Perl and CGI in the late '90s. Interesting, even exciting—but never comfortable. That era where your business logic and your protocol plumbing were just… the same thing:

print "HTTP/1.1 200 OK"
print "Content-Type: text/html"
print
print "Hello, world!"

Decades of web development have given us layers of abstraction we now take for granted. Nobody hand-parses application/x-www-form-urlencoded query strings anymore. Nobody writes their own JSON codec, or manually constructs HTTP request/response messages. These things just aren't your problem when you're building an app.

ActivityPub development still feels like they are your problem. What do you do when the https://www.w3.org/ns/activitystreams#actor property comes in as a string instead of an array? What about when https://www.w3.org/ns/activitystreams#object is an embedded entity rather than a URI? How exactly do you implement HTTP Signatures? And wait—what's Linked Data Signatures, and do you need that too?

The real issue isn't that ActivityPub is complicated per se. It's that you can't get away with understanding it at a high level. You have to know it the way an implementor knows it—every edge case, every inconsistency in how different servers serialize JSON-LD, every signature scheme that exists in the wild. That's a lot to learn before you can even start thinking about your actual app. And when developers understandably cut corners on the protocol to focus on their product, it quietly becomes an interoperability problem for the whole ecosystem.

What I want ActivityPub development to feel like: you spend a day understanding the big picture, and then you just… build your app. That was the goal when I started Fedify, and honestly, we're not fully there yet. But it's where I want to get.

1
0
0
0
0
0
0
0
9
0
0

나이 많으니 감형?… 윤석열 판결이 재소환한 '고령 감경' 논란 www.hankookilbo.com/news/article... "최근 개정된 양형 기준에 비춰봐도 이번 판결은 이례적이다. 대법원 양형위원회는 2023년부터 양형 기준을 별도로 정하는 범죄군에 대한 집행유예 판단에 긍정적으로 작용하는 참작 사유 가운데 '피고인이 고령'이라는 문구를 일괄 삭제했다. 이는 "'어떤 범죄에서도 고령을 일률적인 감경 요소로 보지 말라'는 메시지나 다름없다"는 게 양형위원인 김혜경 계명대 경찰행정학과 교수의 얘기다."

나이 많으니 감형?… 윤석열 판결이 재소환한 '고령 감...

0

@zkatkat hmm.. I think the title/licence will not change this. I am a software developer, not an engineer .. but we might share some "requirements".
The root cause of this trend is an increasing demand for someone who can build stuff. As an unqualified customer you cannot distinguish between well engineered software and somehow working crap. So it's easy to get the feeling that you're paying too much.
And this customer needs this software for his business. He does not need well engineered software.

0
0
0
0

@zkatkat I have been a dev since the 1980s, and I completely agree that calling it "engineering" is a real stretch.

Engineering requires, in many cases, legal guarantees. There's *none* of that in software. EULAs are the opposite of the legal requirements of for example civil engineering projects.

There's a checkbox right there on the Engineering Board application, they're welcome to check it and apply...

sblpes.state.nm.us/

0
0

Jeffrey Epstein was a white supremacist who donated thousands of dollars to white supremacist influencers during the Ferguson protests.

Epstein had multiple conversations expressing concern over race riots/wars with former Israeli Prime Minister Ehud Barak.

Epstein was also influential in resurrecting /pol—a 4chan forum that became of the most influential far-right hubs, spreading conspiracies and white supremacist ideals.

Steve Bannon, crypto, ... what the fuck.

podcasts.apple.com/us/podcast/

0
0
1
0

@zkatkat I have a computer eng degree, and I *still* remember the freshman engineering seminar about failures like the tacoma narrows bridge decades later.

Software is so scary because it can range from harmless apps that can't do much harm to medical equipment that can kill someone, but it's often thought of as the same sort of bucket of skills/approaches/etc. to work on. It's like thinking building a toy bridge out of popsicle sticks and an actual bridge human beings will travel over require the same skills/rigor/etc.

0
0
1
0
0
0
0

🎮
Une archive de 390 Téra-octets de jeux vidéos va disparaître en mars. 🙁
Les causes ?
- frais trop élevés (ils parlent de 6000 dollars par mois !)
- des download manager payants contournent le site (pas d'affichage pour les donations, alors que ces managers gagnent de l'argent)
- prix de la RAM, SSD, HDD.
gamingonlinux.com/2026/02/the-

0
3
0

I enjoy when using tech tools on my extremely femme-gendered hobby projects makes them feel out-of-genre important

What an interesting way to trigger some stereotype incongruence and realize how much "tech weight" we give things just by all these relatively shallow signifiers

**The Sewing Domain Model**: The app has two "stash" resources (Patterns, Fabric) and one planning resource (Projects). Projects link to both stashes via `ProjectPattern` and `ProjectFabric` join models that carry extra data (selected size, yardage used). Measurements and Adjustments are separate concerns used in the Fit Compare tool.
0

Jeffrey Epstein was a white supremacist who donated thousands of dollars to white supremacist influencers during the Ferguson protests.

Epstein had multiple conversations expressing concern over race riots/wars with former Israeli Prime Minister Ehud Barak.

Epstein was also influential in resurrecting /pol—a 4chan forum that became of the most influential far-right hubs, spreading conspiracies and white supremacist ideals.

Steve Bannon, crypto, ... what the fuck.

podcasts.apple.com/us/podcast/

0
1
0
2
0

People used to tell me the problem with Medicare For All or a similar socialized healthcare system was that the government would control what care you could and could not receive.

And I responded with: "They already do that. Your private health insurance and doctors aren't safe. There's nothing stopping the government from revoking or banning your medical care. If they can ban abortion, they can ban anything."

And they said: "Pshaw, as if."

And obviously, here we are.

0
3
0

My daughter had a little cup of corn with her dinner tonight but didn't want to eat it. I told her if she ate one kernel at a time they would be uni-corn.

I hear a strange noise from across the table. For the first time ever my wife was laughing about my stupid pun. Then my daughter ate the corn one kernel at a time. Is this what success looks like?

0
0