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.

Introducing The Fediverse

One of our brightest stars @_elenaElena Rossini ⁂ has created a great Fediverse promotional video. This tour de force is posted across multiple platforms in different languages. It should be obvious promoting the Fediverse is best done by connecting with people not currently on the Fediverse, but some people don't like that it is available on YouTube. Folks, this is misguided. Please like and share the YouTube version so more people learn about the Fediverse:

youtube.com/watch?v=YRJHIJy5Nno

0
0
0
0
0
1
0

The admin says the automatic pause on removals violates a ruling & impedes the president’s authority to enforce laws.

The admin has been locked for weeks in a growing showdown w/the federal amid a barrage of challenges to the Ttump’s efforts to carry out key priorities around immigration & other matters. has grown increasingly frustrated by rulings blocking the his agenda, accusing of improperly impeding the president’s powers.

“President Trump’s executive authority has been undermined since the first hours of his presidency by an endless barrage of injunctions designed to halt his agenda,” [that’s because he has repeatedly broken the ] AG said in a statement Wednesday. “The American people elected President Trump to carry out his policy agenda [no, they elected because they are sexist & racist]: this pattern of judicial overreach undermines the democratic process & cannot be allowed to stand.”🥱

0
0
0
0
0

오픈소스 프로젝트에 여러분의 gemini cli(등등)의 무료 사용량을 기여하세요

오픈소스 소프트웨어라는 소프트웨어 개발 방법은 그동안 대성공을 거두어 오고 있습니다. 여기에는 여러 요인이 있지만, 중요한 요인 중 하나는 이것입니다. 상업 소프트웨어든 오픈소스 소프트웨어든 공평하게 프로그래머의 시간을 들인 만큼 개발된다는 것이지요. 능력 있는 소프트웨어 개발자가 시간을 기여하면 오픈소스 소프트웨어는 상업 소프트웨어만큼이나 빠르게 성장할 수 있었습니다.

하지만 AI 프로그래밍의 시대가 빠르게 다가오고 있습니다. 앞으로 소프트웨어 개발은 프로그래머의 시간만으로 개발되지 않습니다. 상업소프트웨어는 AI 프로그래밍을 적극적으로 사용하여 이전과 다른 생산성으로 개발되기 시작할 것입니다. 상업 소프트웨어와 달리 오픈소스 소프트웨어는 언제나 그럴 수는 없습니다. 프로젝트의 성장과 유지를 위해 훌륭한 프로그래머들의 시간을 들이는 것을 넘어서, 훌륭한 프로그래머들이 시간에 더해 비용까지 들여야 한다면요.

상업 소프트웨어와 오픈소스 소프트웨어 사이의 불균등한 생산성의 시대가 코앞까지 다가오고 있습니다.

새로운 기여자 확보의 문제

문제는 여기서 그치지 않습니다. 오픈소스 프로젝트는 새 기여자를 얻기 더 힘들어져가고 있습니다. 왜냐하면 이제 'good first issue'라는 것은 의미가 없기 때문입니다. 그 정도로 쉬운 일은 새로운 기여자 대신 로봇이 해결할 가능성이 높고, 그 로봇은 새로운 기여자의 로봇일 수도 있습니다. 결국 AI 프로그래밍으로 기여하는 새 기여자는 이 프로젝트에 대해 거의 배우지 못하게 됩니다.

전통적인 오픈소스 생태계에서 'good first issue'는 단순히 쉬운 문제를 해결하는 것이 아니었습니다. 새로운 기여자가 프로젝트의 코드베이스를 이해하고, 개발 프로세스를 익히며, 커뮤니티와 소통하는 법을 배우는 학습 과정이었습니다. 하지만 AI가 이런 단순한 작업들을 대신 처리하게 되면, 새로운 기여자들은 진입 기회를 잃게 됩니다.

AI 프로그래밍의 현재 위치

AI 프로그래밍은 완벽하지 않습니다. 숙련된 전문가가 숙련된 도메인에서 작업하는 것만큼 잘하지는 못합니다. 하지만 비숙련된 프로그래머가 처음 보는 프로젝트에서 작업하는 것보다는 잘할 때가 많습니다.

그러나 많은 오픈소스 소프트웨어는 바로 이런 비숙련 기여가 성장의 한 축을 차지합니다. 처음 프로젝트에 참여하는 개발자들의 작은 기여들이 모여 거대한 프로젝트가 됩니다. 그리고 이런 비숙련 기여의 일부는 손쉽게 AI가 대체할 수 있는 기여입니다.

다행히도 지금은 AI 프로그래밍의 초창기입니다. Gemini CLI가 무료 사용량을 제공하듯이, 앞으로 여러 회사들이 비슷한 기회를 제공할 것입니다. Claude, ChatGPT, Copilot 등 다양한 AI 도구들이 개인 사용자에게 무료 크레딧을 제공하고 있습니다.

이것은 오픈소스 프로젝트에 기여할 새로운 기회로 삼을 수 있을까요?

주의: 이 글은 아무 프로젝트에나 방문해서 AI로 적당한 코드를 생성한 다음 패치를 보내라는 뜻이 아닙니다.

AI 프로그래밍은 (아직은) 마법이 아닙니다. "이 프로젝트를 겁나 멋지게 만들 기능을 추가해주세요"라고 한다고 해서 그런 패치가 나오는 식으로는 동작하지 않습니다.

이상적인 경우: AI 친화적 프로젝트

가장 좋은 방법은 프로젝트가 AI 친화적으로 준비되는 것입니다. 바로 작업할 수 있을 만큼 잘 정의된 이슈들이 있는 프로젝트라면, "nnn 번 이슈에 대해 작업해 주세요"라는 요청만으로도 누구나 기여할 수 있을 것입니다.

하지만 (적어도 아직은) 그런 프로젝트가 많지는 않을 것입니다.

현실적인 접근: AI가 잘하는 일들에 집중

대신 AI는 인간과 비대칭적으로 잘하는 기능이 있습니다.

이를테면 이슈에 minimal reproducible case가 보고되어 있지만 아직 구체적으로 발생하는 원인이 밝혀져 있지 않은 경우를 생각해봅시다. 버그를 고치는 사람이 해야하는 지루한 작업 가운데 하나는, 이 문제를 어떻게 수정할지를 생각하기에 앞서 이 문제가 어디서 발생하는지 찾는 것입니다. 디버거를 써야 할 수도 있고, 코드에 많은 trace log를 남겨야 할 수도 있습니다.

하지만 AI 코딩 에이전트는 테스트가 재현 가능하기만 하다면, 문제를 발생시키는 정확한 줄을 찾아내는 데 탁월합니다. 지치지 않고 정석적인 지루한 방법으로 꾸준히 로그를 추가하고 테스트를 다시 실행하면서 문제를 찾아내거든요.

어쩌면 문제의 원인이 아주 단순해서, 문제를 바로 수정할 수 있을지도 모릅니다! 그렇다면 패치를 제출해도 좋겠지요. 하지만 바로 수정하기까지는 어렵더라도 괜찮습니다. 버그 리포트와 실제 코드의 문제를 매핑하는 것은 그 자체로 지루하고 시간이 걸리는 일입니다. 이것을 대신하는 것으로도 큰 작업을 대신하는 것입니다.

주의: 모든 프로젝트가 AI 기여를 환영할 리는 없습니다. 충분히 유용하게 다듬어지지 못한 유형의 AI 기여는 스팸처럼 느껴질 가능성이 있음을 유의해야 합니다.

미래

사실 누구나 자기 라이브러리를 뚝딱 만들어낼 수 있게 되었다는 점에서 오픈소스 프로젝트에 참여하는 사람들의 동기와 기여 방식 자체가 크게 뒤바뀔 가능성이 높습니다.

AI 프로그래밍을 누구나 거의 무료로 사용할 수 있는 시대가 올까요? 아마 어느 정도의 사용량까지는 그럴 것입니다. 그것이 얼마나 많은 양일지에 따라서 오픈소스 프로젝트의 미래는 크게 바뀌겠지요.

만일 정말로 AI 프로그래밍을 누구나 무제한적으로 사용할 수 있다면, 대규모가 아닌 대부분의 오픈소스 프로젝트에는 더이상 협력이 필요하지 않을 것입니다. 진정으로 '어떻게'보다 '무엇을'이 더 중요한 시대가 온다면, 프로젝트의 목표를 확고하게 가진 사람이 극한의 완성도까지 프로젝트를 밀어붙이는 편이 훨씬 좋은 결과를 만들겠지요.

그런 시대가 올지 오지 않을지 모르겠습니다. 하지만 그 전까지는, AI 프로그래밍이 누구에게나 주어지는 기회이지만 프로젝트를 단숨에 완성할만큼 주어지지는 않는 시대가 유지되는 동안에는, 다음 세대의 오픈소스 기여의 방법은 AI 프로그래밍 사용량을 기여하는 것이 하나의 큰 축이 될 것입니다.

15
0
0

Always represent the forefront of modern software engineering practices and tooling.

Always represent the values and direction of an advanced, collaborative open-source culture.

Always represent the fundamental needs and interests of a diverse and growing global user base.

:nixos: 🤓

0
0

해외에서 K-POP 은 청소년, 퀴어, 마이너리티쪽 지지가 굉장히 크고, 현실에서 지친 마음을 "치유"하는데 도움이 되었다는 경험담이 많은데... 그런 의미에서도 KDH는 메세지를 잘 잡은 느낌. 관리 잘 받은 인형같은 존재가 아니라, 또래 아이들 느낌도 강하게 연출되었고.

0
0
0

Had a very surprising ChatGPT experience: asked it to generate a quick summary of the WannaCry ransomware, and instead of referencing the person who stopped it by name, it simply put "(you)". When I asked it how it was able to identify that it was me, it citied its own message as something I'd said.

After pointing out I didn't say that, it did, ChatGPT replied that it was able to infer it by my account username and what it'd learned from my skillset across various chats. Not 100% sure if that's how it actually did it. Either way, pretty cool, but also a little bit scary.

It's pretty widely known that many tech companies, especially advertising ones build comprehensive profiles on their users, but it's rare that you get to talk to said profile and figure out what it knows about you.

0
0
0
0

Toronto weather: yesterday, too hot for me to want to go out, this morning, cool enough to make me kind of want a windbreaker on the bike commute to the office. Or at least a long-sleeved jersey.

(I have nice long sleeved bike jerseys that are perfect for this weather but I didn't trust it would stay this weather, so I wore a lightweight short sleeved one.)

0
0
0
0
0
0
0

새롭게 다시 태어난, 또 만들어버린 boilerplate. 이제는 진짜 monolithic 하고 Pocket Galaxy라는 이름에 걸맞는 boilerplate입니다.

Django + Vue(Vuetify) 조합이구요, nginx가 이것저것을 다 처리합니다.

백엔드는 /api에서 서빙하고, 기타 기본적인 static 캐싱이나 로깅 등 전부 기초적인건 제공합니다.

간단한 웹사이트 하나 만들겠다는게 어쩌다 여기까지 왔는지.... 암튼 이제는 진짜 최소한의 웹사이트 만들때 뚝딱 하면 만들수 있을것 같습니다 제발...

내부용 툴 만들때 애용해보세요.

https://github.com/theeluwin/pocket-galaxy

2

I was talking to some coworkers today about getting Anubis set up on the website I manage, and I had to explain to them (all middle-aged cishet men) what the heck an "anime catgirl" is :blobcatsweat:

0
0
0
0
0
0

Stecke Handy in die Hosentasche, bemerke plötzlich, dass die Finger meiner rechten Hand rot verschmiert sind. Blute ich?!

Nein: Es war das Whiteboard-Abwischen, bevor ich hastig aus dem Büro floh.
Frage mich nun, wie viele Kollegen ich beim Abschieds-Händedruck angemalt haben könnte.. :blobcatthink:

0
0
0
0

Seeing people complain about generative AI online would make one think it’s a controversial technology.

Charts like this are a reality check that businesses find AI tools valuable enough to pay for and business adoption is pretty much mainstream at this point.

0
0
0
0
0
0
0
0
0
0
1

In case anyone was wondering, yes my project Wordforge is effectively abandoned. I graduated and got a job last year and haven't had the time to work on it. It's a shame really since I really wanted to see something like this on the fediverse, but such is life.

If anyone wants to take over, feel free.

https://codeberg.org/grafcube/wordforge

0

I'm pondering an interesting challenge with #ActivityPub. Most servers send Activity messages using actor as the originator and Note objects with attributedTo as the creator. Some use actor on Notes and some use attributedTo on Activities.

I configured deserialization aliases on my structs in #Rust to accommodate that. But now I see that a few servers (well, one so far) set both properties on Activities, which breaks the deserializer (since the unused one gets renamed to what I need and then I have a duplicate). So now I'm weighing whether to add both separately, to try writing a custom deserialization implementation, or to just write off federation with this server.

I'll probably try writing a custom implementation first.

0
1

김민석 ‘동성애 혐오’는 묻지 않은 청문회···차별금지법 ‘모르쇠’ 여야 한마음 www.khan.co.kr/article/2025... "민주당이 지난해 9월 안창호 국가인권위원장 청문회에서 ‘동성애와 차별금지법은 공산주의 혁명의 수단’이라는 취지의 안 위원장 발언을 집중적으로 지적한 모습과 다르다. 김 후보자 청문위원인 전용기 의원은 당시 안 위원장 청문회에서 “차별금지법은 인권위에서 제대로 챙겨야 한다”고 주장한 바 있다."

김민석 ‘동성애 혐오’는 묻지 않은 청문회···차별금지...

0

这他妈也太傻逼了吧,完完全全是仿 Twitter 仿到脑子抽风做出来这四不像的。

Mastodon 的个性正在被它自己消耗。还真不如用 Misskey 系呢,起码真有自己的一套思路,还有个果子好劲道足口味正的合成天下游戏

Mastodon 牢玩家千万别点开

Mastodon 的新版界面,原先的图标们有两项(首页、通知)顺着搜索和新嘟文放在了下面,其他选项则藏在这个右下角的这个破逼菜单上
0
0
0
0

Yes, that would be nice. But I don’t think anyone is holding their breath waiting for C2S to be realistically usable.

For years, we’ve all just filled the gap in C2S with the Mastodon API, which isn’t great.

For the foreseeable future, we’re probably going to have a patchwork of overlapping solutions that all combine into a semi-coherent system. FEP-3b86 is one more patch in the tapestry.

@rakoo @tchambersTim Chambers

0

@benpateBen Pate 🤘🏻

I do believe that it's part of ActivityPub, because that's exactly the usecase: there's an object you're currently seeing and you want to interact with it.

I'm no AP dev, I have no experience at all, only armchair ideas so my goal isn't to say what you're doing is bad; quite the contrary, you're building stuff so you'ro certainly more relevant ! I'm just commenting on the sidelines.

The thing I like about the idea of AP is that it is about manipulation and exchange of data structures, whereas the APIs are about RPCs. I like that because it makes my data more portable, less dependent on an implementation or an instance.

What I would love to see is the AP concept more widespread for interacting:
- when I see content I want to interact with, my user agent can pick the object url in the http headers and/or in a <link> tag if it's presented in an html document
- my user-agent allows me to send AP activities, optionally linking to object urls

This obviously requires changes in the browser (which is where Mozilla should put its brain but that's another discussion), but can be first done in an extension. Bonus: it works for *all* AP implementations
@tchambersTim Chambers

Yes, if browsers understood ActivityPub then the whole world would change. I’d love that.

We’d need everyone on board, but Ms, Apple, and Google might follow if Mozilla and Vivaldi proved it would work.

That would require a working C2S API.

And all of that is years away 😩

I think we get there with incremental, evolutionary steps that prove the Fediverse is viable, and attract more *non techies* to the community.

@rakoo @tchambersTim Chambers

0
0