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

It seems that py/cryptography's thoughts about OpenSSL (cryptography.io/en/latest/stat) are doing the rounds at the moment.

I've not touched OpenSSL directly in a long time. In fact, it appears that the 10-year anniversary of that (imperialviolet.org/2015/10/17/) passed by a few months ago!

So I've no direct comments on the piece but, a long time ago, I was in the position where I was landing changes in both OpenSSL and NSS (Mozilla's TLS library). OpenSSL was somewhat famous for having bad code. And, indeed, if you looked at it back then the functions were full of single-letter variable names with pointer arithmetic everywhere and context-free, somewhat scary comments. It wasn't outside the norm for 1990s C code, but I understand why people recoiled.

In contrast, if you looked at NSS code, it looked good! Consistent formatting (before clang-format), good naming, good comments.

But NSS had a PKCS#11 abstraction layer and, even after years, I never could understand how the control flow worked there. I would have to single-step in gdb every time to figure out where an operation grounded out into actual code. I was reminded of that when reading py/cryptography's descriptions of OpenSSL 3.0.

I had a pet theory at the time that, because OpenSSL was repulsive on the surface, it inhibited people enough that they couldn't add much deeper complexity. But NSS, with its invitingly clean-looking code, was understandable and then people had enough capacity left over to add deeper complexity.

There might be something to it, although you shouldn't discount the fact that entities who are willing to fund cryptography libraries often have demands that are contrary to clean code. Things like FIPS compliance and compatibility with a zoo of different accelerators and bespoke needs.

So rather it might have been that old OpenSSL was old OpenSSL because it was mostly unfunded. That meant that it looked pretty ragged, but also there weren't so many demands in tension with good design.

NSS was funded by interests that really cared about PKCS#11 compatibility so that you could use a super-expensive, certified-everything HSM with it. When OpenSSL got shocked into switching to a higher-funding model, that brought lots of those same sorts of competing interests, and then the incentives pointed towards adding slow, impenetrable layers of abstraction all over.

0

This style of management is way too common in the tech industry. I call it Star trek management.

We've all seen it. Captain calls down to engineering. "How long to get the warp core back online" and engineering replies "12 hours sir". "You've got 1" comes the response from the captain.

And there's a place for that sort of thing. When you're dead in the water and the Borg might come back to attack at any minute.

But, for it to be routine is just bad management

1/n

mastodon.bsd.cafe/@stefano/115

Stefano Marinelli (@stefano@bsd.cafe)

UPDATE: I just had a talk with two of the owners (whom I've known for years) and one of the young developers who was on yesterday's call. She confirmed that this manager's behavior was unmanageable. High-strung and narcissistic, he had apparently been let go from his previous company due to his inability to work with colleagues and owners alike. It seems he was even trying to boss the owners around. To make a long story short, the entire sysadmin team threatened to quit if I stopped collaborating with the company. As a result, the owners summoned the manager in the late morning, and he resigned. They are reverting to the previous management structure (led by one of the owners). They might drop a few projects, but they said they prefer returning to a more "human" way of running the business - which is what always set them apart in the past. I told them I'll think about it. If things are truly as they say (and I have no reason to doubt them yet), I'll propose a 6-month trial collaboration to see how things actually evolve. I'm aware it's easy to "pass the buck" - was it really just the manager's fault, or are the owners using him as a scapegoat now that things went south? However, given our history, I'm willing to give them the benefit of the doubt for now. UPDATE: One of the company owners (whom I've known for many years and is a good person) has asked to speak with me in about fifteen minutes. I've agreed. I'm curious to see what he has to say. I'll update this post after the call. Original post: Yesterday I lost a client. And I couldn't be happier about it. It's a long-standing client, but the management changed a few months ago. On Monday, they requested an emergency intervention, which I handled immediately. On Tuesday (yesterday, evening), they asked for a non-urgent enhancement to be closed by Wednesday evening. I explained that due to various reasons (including urgent family matters), I wouldn't be able to finish the task before Friday. That's when the lecturing started: they told me they set tight deadlines even for non-emergencies because "that's the proper way to do things", and anyone working with them must respect them without exception. I requested a video call to clarify. I explained that the work requires nearly a full day and that I simply couldn't close it by Wednesday. Even the physical time required to copy the data exceeded their deadline. But the new management believes that by applying pressure, you can overcome anything. Even the laws of physics. Their response was sarcastic: "Our requests take priority, even if you are dying". I smiled and reiterated that I had no other way. "We will therefore have to find a new consultant who respects our timing", they said. My response: "Okay. Our agreement expired on 31st December. I was waiting for a renewal, but it never arrived. Meaning, I have no legal obligations toward you. You have the data, the passwords, everything. Have a great day.". The manager, annoyed and failing to understand the implications, replied: "Fine, we’ll look for someone younger with fewer family ties to manage.". This morning, the phone rang. It was the manager, asking me to reconsider. His tone remained contemptuous, so I told him my decision was final. Two minutes later, I got a call from their biggest client - the one responsible for over 50% of their revenue. They had been notified I was leaving and informed the company they would also leave if I was no longer the one supervising their machines. I called the manager back, friendly, trying to see if they were willing to change their attitude - to move from peremptory orders to requests between human beings. He started talking about "suing for damages" if they lost their main client because of me (to be clear: I am not taking that client for myself). I don’t know how this story will evolve, but right now, I'm just enjoying a breath of fresh air outside my window. #IT #FreelanceLife #WorkLifeBalance #ToxicManagement #TechLife #Consulting #SelfEmployed

mastodon.bsd.cafe · BSD.cafe Mastodon Portal

0
0
0
0
0

- 캐시태그 • 해시태그처럼 쓰지만 주식과 관련된 이야기를 할때 사용할 수 있습니다. • 게시물에 , 등 원하는 태그를 달아 사용할 수 있습니다. (한정적 지원으로 모든 문자에서 적용가능하진 않음) •캐시태그를 탭하면 다른 사람들의 전문성 없는 분석을 확인할 수 있습니다. (2/2)

RE: https://bsky.app/profile/did:plc:z72i7hdynmk6r22z27h6tvur/post/3mcibiyf7fs2r

0

📢 블루스카이 v1.114 업데이트 - '라이브 중' 베타 기능을 모든 사용자에게 확대 제공 • 이 실험적 기능을 통해 아바타에 임시 '라이브' 배지를 추가할 수 있으며, 이를 통해 다른 사용자들이 현재 Twitch에서 생방송 중임을 알 수 있습니다 그리고 이 배지를 클릭하면 스트림 페이지로 바로 이동 가능합니다. • 베타 기간 동안 '지금 생방송 중'은 현재 Twitch 링크로만 제한됩니다. 베타 운영을 통해 얻은 경험을 바탕으로 다른 스트리밍 플랫폼 지원도 추가될 예정입니다. (1/2)

RE: https://bsky.app/profile/did:plc:z72i7hdynmk6r22z27h6tvur/post/3mcibezwvxk2g

0

:BoostOK: Please share
I need your help: For an investigation into dating app algorithms, I am looking to get in touch with developers and others who work/have worked for such providers and would be willing to talk to me. Anonymous responses are also welcome. Questions include: What mechanisms are used to keep users on the platform? What ideas/constructs of partnership/matching are embedded in the algorithm? Please share widely! Thank you❤️
Anonymous and other contact options: see bio.

0
0
0
1
1
0
0
0
0
1

Do you know any new open source projects that deserve recognition?

Projects that are:
- Solving real world problems and driving technical innovation
- Improving science, research or medicine
- Challenging long standing platforms or paradigms
- Just super nerdy and doing something novel!

If you do, please share them and perhaps we can help them get the attention they deserve. 🧡

0
0
0
0
1
0

Question: when did security analysts start describing leveraged exploit paths as "primitives"? Did this start with the FORCEDENTRY JBIG2 exploit or does this terminology have a longer history, maybe in gadget-based exploitation?

projectzero.google/2026/01/pix

0

Diesen Hinweis könnte die Bahn eigentlich gleich bei jeder meiner Buchungen dazu schreiben. Ganz im Ernst. Das ist sooo frustrierend. (Ich habe so lange überlegt, ob ich *noch* früher los soll, um meinen Termin zu schaffen - aber der Zug war pünktlich, es gab genug Puffer und irgendwie dachte ich naiverweisw, dass ich ja auch EINMAL Glück haben könnte.

DB Navigator
„Aufgrund von aktuellen Ereignissen ist die Verbindung nicht mehr fahrbar. Bitte suchen Sie sich eine neue Verbindung für Ihre Reise.“

Heute ist es so richtig schief gegangen mit der Bahn. Selbst für meine Verhältnisse. Ich hatte eine Verbindung mit gut Umsteigezeit und Puffer. Die oft auch funktioniert: Sprinter Berlin- Nürnberg, Intercity bis Aalen (und dann RE nach Oberkochen zu einem Termin). Ich hab drei Anschlüsse verpasst und musste am Ende vom vorletzten Bahnhof abgeholt werden, um nur zwei Stunden zu spät zu sein.
Ich frage mich, wie Leute unter diesen Bedingungen überhaupt irgendwo ankommen.

0
0
1
0
0
0

It seems that py/cryptography's thoughts about OpenSSL (cryptography.io/en/latest/stat) are doing the rounds at the moment.

I've not touched OpenSSL directly in a long time. In fact, it appears that the 10-year anniversary of that (imperialviolet.org/2015/10/17/) passed by a few months ago!

So I've no direct comments on the piece but, a long time ago, I was in the position where I was landing changes in both OpenSSL and NSS (Mozilla's TLS library). OpenSSL was somewhat famous for having bad code. And, indeed, if you looked at it back then the functions were full of single-letter variable names with pointer arithmetic everywhere and context-free, somewhat scary comments. It wasn't outside the norm for 1990s C code, but I understand why people recoiled.

In contrast, if you looked at NSS code, it looked good! Consistent formatting (before clang-format), good naming, good comments.

But NSS had a PKCS#11 abstraction layer and, even after years, I never could understand how the control flow worked there. I would have to single-step in gdb every time to figure out where an operation grounded out into actual code. I was reminded of that when reading py/cryptography's descriptions of OpenSSL 3.0.

I had a pet theory at the time that, because OpenSSL was repulsive on the surface, it inhibited people enough that they couldn't add much deeper complexity. But NSS, with its invitingly clean-looking code, was understandable and then people had enough capacity left over to add deeper complexity.

There might be something to it, although you shouldn't discount the fact that entities who are willing to fund cryptography libraries often have demands that are contrary to clean code. Things like FIPS compliance and compatibility with a zoo of different accelerators and bespoke needs.

So rather it might have been that old OpenSSL was old OpenSSL because it was mostly unfunded. That meant that it looked pretty ragged, but also there weren't so many demands in tension with good design.

NSS was funded by interests that really cared about PKCS#11 compatibility so that you could use a super-expensive, certified-everything HSM with it. When OpenSSL got shocked into switching to a higher-funding model, that brought lots of those same sorts of competing interests, and then the incentives pointed towards adding slow, impenetrable layers of abstraction all over.

0
0
1
1
0
1
0
0
1
0
0
0

Jeff Bezos is saying the quiet part out loud. They want to kill local computing.

You will own nothing and be happy. You will rent your computing power from the cloud. You pay a subscription for the privilege of using a computer.

AI demand is artificially spiking DRAM prices and Big Tech is pushing "AI PCs," the squeeze is on to force us into a rental model.

Reject this future. :NoAI:

Keep your hardware local.

Run . :tux:

Own your data.

The "cloud" is just a landlord for your data.

windowscentral.com/artificial-

0
0
2
0
1
0
0

New music!

"Just Walk Away" is now live — that's me (@hisham_hmHisham) and my friend Chico, we share lead vocals and performed all instruments. (Detailed credits on the Bandcamp page!)

We're especially looking forward to getting some feedback. To your ears, what does it sound like?

Here's some links:

Bandcamp: signifierproject.bandcamp.com/

Deezer: link.deezer.com/s/32agiT6WpybS

Spotify: open.spotify.com/album/7IAI6i1

...and everywhere and anywhere you can find "Signifier - Just Walk Away"!

Single cover for "Just Walk Away", by Signifier. A first-person view of a car driver, going down an open road in southern Brazil.
0
1
0
0
0
0
0

News release: Privacy Commissioner of Canada expands investigation into social media platform X following reports of AI-generated sexualized deepfake images - Office of the Privacy Commissioner of Canada priv.gc.ca/en/opc-news/news-an

0
0
0
0
0
0
0
0