Hi, I'm who's behind Fedify, Hollo, BotKit, and this website, Hackers' Pub!

Fedify, Hollo, BotKit, 그리고 보고 계신 이 사이트 Hackers' Pub을 만들고 있습니다.

FedifyHolloBotKit、そしてこのサイト、Hackers' Pubを作っています。

嗨,我是 FedifyHolloBotKit 以及這個網站 Hackers' Pub 的開發者!

Website
hongminhee.org
GitHub
@dahlia
Hollo
@hongminhee@hollo.social
DEV
@hongminhee
velog
@hongminhee
Qiita
@hongminhee
Zenn
@hongminhee
Matrix
@hongminhee:matrix.org
X
@hongminhee

ActivityPub 확장으로 Mastodon이 제안한 팔로워 컬렉션 동기화 매커니즘(FEP-8fcf)이 있는데, Fedify도 물론 이걸 구현하고 있다. 그런데 Ghost[1] 쪽에서 이거 때문에 글 한 번 올리고 나면 팔로워가 800명씩 언팔하는 것 같다는 거다. 음… 그게 사실이라면 Fedify의 버그가 맞는데, 그래서 어제부터 줄곧 살펴보고 있지만 도저히 문제를 못 찾겠는 상황. 메틸페니데이트 약발도 슬슬 다 떨어진 것 같아서, 오늘도 어쩐지 원인을 못 찾을 것 같다. 근데, 이거 Fedify 버그 맞긴 할까? 😭


  1. Ghost는 ActivityPub 구현에 Fedify를 활용하고 있다. ↩︎

Hackers' Pubは現在、韓国語中心のコミュニティが形成されていますが、日本語のコミュニティも拡大することを希望しています。Hackers' Pubは、まるでQiitaやZennの様なソフトウェア開発者の為のブログプラットフォームであると同時に、MisskeyやMastodonの様なマイクロブログプラットフォームでもあり、何よりもActivityPubをサポートしているので、Mastodonや Misskey等とも交流が出来ます。(このアカウントもHackers' Pubのアカウントです!)

Hackers' Pubに興味の有る方は、私にDMでメールアドレスをお知らせいただければ、招待状を送らせていただきます。 是非、ご参加をお待ちしております。宜しくお願いします。

Hackers' Pub에 아주 황당한 버그가 있었습니다. 팔로워가 아닌 사람에게 DM[1]이 안 가는 문제가 있었어요. 사실 다른 버그를 살펴보다 찾게 된 버그인데… 아무튼 이 버그는 고쳤습니다. 이제 원래 찾던 버그 디버그하러 갑니다… 悤悤.


  1. “언급된 사용자만”을 고르고 멘션을 하면 멘션된 사람에게 DM이 갑니다. ↩︎

며칠 전 Fedify에 팬아웃을 두 단계로 나누는 변경을 통해 Hackers' Pub에서 단문 작성시 오래 걸리는 문제를 해결했었는데 (그래봤자 팔로워가 100명이 넘는 나한테나 느낄 수 있는 문제였을 것 같지만), 이렇게 하니까 큐에서 팬아웃 태스크 자체가 오랫동안 안 빠지는 체증이 존재해서 큐에 여러 메시지를 넣는 연산 자체를 새로 추가하고 있다. 정확히는 PostgreSQL을 큐로 사용하고 있는데, 메시지 하나 넣고 NOTIFY하고, 다음 메시지 넣고 또 NOTIFY하고… 하는 게 비효율적이라 메시지를 일단 다 넣은 다음 NOTIFY를 한 번만 하도록 고치고 있다.

Hackers' Pub에 행동 강령이 있다는 사실, 아셨나요?

우리 커뮤니티는 단순한 기술 토론을 넘어 모든 구성원이 진정으로 환영받는 포용적인 공간을 만들기 위해 상세한 행동 강령을 마련했습니다.

특히 주목할 만한 점은:

  1. 구조적 차별에 대한 명확한 입장: “모든 사람을 동등하게 대우한다”는 명목 하에 현실의 구조적 불평등을 무시하지 않으며, 이를 극복하기 위한 적극적인 노력을 중요시합니다.

  2. 기술적 엘리트주의 지양: “이것도 모르세요?”와 같은 조롱, 특정 기술 스택이나 도구에 대한 비하, 초보자의 질문을 무시하는 행위를 명확히 금지합니다.

  3. 모든 언어의 동등한 존중: 전 세계의 모든 언어를 동등하게 존중하며, 어떤 언어로도 자유롭게 소통할 수 있습니다.

자세한 내용은 행동 강령 페이지에서 확인하실 수 있습니다.

0
0

Hackers' Pub에 드디어 인용 기능이 구현되었습니다. 인용할 글의 링크를 복사한 뒤 단문 작성창에 붙여넣으시면 해당 글을 인용할지 묻는 창이 뜹니다. 확인을 선택하시면 해당 글이 인용되게 됩니다.

참고로 인용할 글은 꼭 Hackers' Pub의 글이 아니어도 ActivityPub을 지원하는 사이트의 아무 글이나 다 가능합니다. 예를 들어 Mastodon 인스턴스에서 글 링크를 복사해서 붙여도 동작합니다.

내가 쓴 글에 누가 어떻게 인용을 했나 궁금하실 경우, 글 아래에 있는 공유 아이콘 오른쪽에 위치한 반응 아이콘을 누르시면 확인할 수 있습니다. (원래는 공유한 사람 탭만 있었는데 인용 탭이 새로 생겼습니다.)

기술적으로는 FEP-e232 오브젝트 링크 스펙과 Misskey의 인용 확장 스펙, Pleroma의 인용 확장 스펙, 그리고 Fedibird의 인용 확장 스펙을 모두 구현하기 때문에, 인용 기능을 지원하는 현존하는 모든 ActivityPub 서비스와 호환됩니다.



RE: https://hackers.pub/@hongminhee/0195c73c-24f5-74c0-883d-1a0a0db14b6d

Hackers' Pub의 단문 작성창에 인용할 다른 글의 링크를 복사하여 붙여넣는 모습. 붙이고 나면 해당 글을 인용할지 묻는 창이 뜨고, 확인을 선택하면 해당 글이 인용된다.
0
0

ActivityPub 구현들에서 인용을 하면 content 값에 자동으로 “RE: 인용된 글 링크” 또는 “QT: 인용된 글 링크 [参照]” 같은 식으로 덧붙이는 동작들을 하는데, 다행히 Akkoma나 Fedibird 등에서는 이를 .quote-inline이나 .reference-link-inline 같은 클래스로 묶어줘서 CSS로 그것들을 가리는 게 가능하다. 그런데, 오직 Misskey만 그런 처리를 안 해줘서 CSS만으로 가릴 방법이 없다…

2025년에 누가 Vim/Neovim 입문한다고 하면 도시락 싸들고 다니며 말리고 싶은 마음. 나야 이미 너무 익숙해져서 벗어나기 힘들게 됐지만… 그만큼 벗어나기 힘든 습관을 가지면서까지 얻는 이득이 요즘 시대엔 크지 않다고 느낀다.

📢 Hackers' Pub 초대 시스템 오픈!

Hackers' Pub에 초대 시스템이 적용되었습니다. 이제 설정초대 페이지에서 지인들을 초대할 수 있습니다.

주요 내용:

  • 초대장 3장 지급: 기존 회원분들께 3장의 초대장이 지급되었습니다.
  • 초대 방법: 설정 → 초대 페이지에서 초대 링크를 생성하여 공유하거나, 이메일 주소를 입력하여 초대할 수 있습니다.
  • 추가 초대: 초대장은 향후 비정기적으로 추가될 예정입니다.
  • 자동 팔로: 초대자와 피초대자는 자동으로 상호 팔로됩니다. (언팔로 가능.)

Hackers' Pub의 퀄리티를 유지하고, 더욱 풍성한 기술 논의를 위해 신중한 초대를 부탁드립니다.

궁금한 점이나 건의사항은 답글로 남겨주세요.

Hackers' Pub 커뮤니티 성장에 많은 참여 부탁드립니다!

Hackers' Pub 웹사이트의 설정 메뉴에서 “초대 (3)”이 선택된 화면입니다. 페이지 제목은 “Hackers' Pub에 친구를 초대하세요. 현재 3장의 초대장이 남아 있습니다”로 표시되어 있습니다. 아래에는 이메일 주소를 입력하는 필드와 “이메일 주소는 초대장을 받을 때 뿐만 아니라, 계정에 로그인 할 때도 사용됩니다”라는 안내 문구가 있습니다. 그 아래에는 “추가 메시지”라는 제목의 텍스트 영역과 “초대장을 받는 친구가 볼 수 있는 메시지입니다”라는 설명이 있습니다. 하단에는 “초대장 보내기” 버튼과 “초대한 사람” 목록이 표시되어 있으며, “洪 民意 (Hong Minhee) (@hongminhee@hackers.pub)”라는 이름과 아이디가 적혀 있습니다.
0
0

Hackers' Pub의 숨겨진 기능 중 하나. Markdown에서 TeX 수식을 쓸 수 있습니다. 다음과 같이 $ 사이에 TeX 수식을 넣으면 됩니다.

수식 테스트: $V_{sphere} = \frac{4}{3}\pi r^3$

아래처럼 표시됩니다.

수식 테스트: Vsphere=43πr3V_{sphere} = \frac{4}{3}\pi r^3

Mastodon이나 Misskey 등에서 민감한 내용으로 지정한 단문의 내용이나 첨부 이미지는 이제 Hackers' Pub에서 뿌옇게 보이게 됩니다. 마우스 커서를 가져다 대면 또렷하게 보이게 됩니다. 다만, Hackers' Pub에서 쓰는 단문을 민감한 내용으로 지정하는 기능은 없습니다. (아마도 앞으로도 없을 것 같습니다.)

Hackers' Pub 타임라인에 뜬 민감한 내용으로 지정된 단문. 내용이 뿌옇게 나와서 보이지 않는다.Hackers' Pub 타임라인에 뜬 민감한 내용으로 지정된 단문. 마우스 커서를 가져다 대면 뿌옇던 내용이 또렷하게 보인다.

오랜만에 소프트웨어 프로그래머로 일하고 있는 고등학교 동창을 만나서 몇 시간 즐겁게 수다도 떨고 자극도 받고 왔다. 취미로 분산 데이터베이스를 만드는 등 자기 계발을 아주 열심히 하고 있어서 본받아야겠다고 생각했다.

이제 프로필의 링크에 인증 여부가 보이게 됩니다. 링크를 인증하기 위해서는, 링크된 페이지 측에서도 Hackers' Pub 프로필을 rel="me" 속성과 함께 링크해야 합니다. Mastodon이나 GitHub 같은 경우 프로필에 링크를 추가하면 rel="me" 속성이 추가되게 되어 있으니, Mastodon이나 GitHub 프로필 링크를 추가하면 인증은 자동으로 될 겁니다. 개인 웹사이트가 있으신 분들은 Hackers' Pub 프로필을 rel="me" 속성과 함께 링크하면 인증이 됩니다.

참고로 인증은 프로필 설정을 저장할 때 이뤄집니다. 이미 Mastodon이나 GitHub 프로필을 링크해 두신 분들은 인증 표시가 안 뜰 수도 있는데, 그럼 프로필 설정에 들어가셔서 저장 버튼을 한 번 눌러주시면 인증 버튼이 붙을 겁니다.

Hackers' Pub 프로필 페이지의 링크 목록. 개인 웹사이트, GitHub, Hollo 링크에 인증 아이콘이 붙어 있다.

Hackers' Pub의 숨은 기능 하나. 어떤 페이지에서든 URL의 쿼리 문자열에 lang=ko처럼 ISO 639-1 언어 코드를 지정하면 그 페이지가 해당 언어로 표시됩니다. 이렇게 지정된 언어는 계정의 언어 설정이나 브라우저의 언어 설정보다 우선합니다. 제가 개발할 때 번역 잘 적용되나 확인하려고 만든 기능이랍니다.

Claude Code, 소프트웨어 번역에도 아주 편리하다. 번역 항목을 추가하게 되면 내가 잘 모르는 언어의 번역 파일을 어떻게 해야 하나 언제나 고민이었는데 (여태까지는 자동 번역기를 쥐어짜서 어떻게든 채워 넣었다), 이제는 내가 아는 언어의 번역 파일에만 항목을 추가한 다음에 Claude Code에게 내가 모르는 언어의 번역 파일에도 누락된 항목을 채워달라고 부탁만 하면 된다. 단, 이게 잘 동작하려면 번역 파일에 용어 사전(glossary)가 어느 정도 구축되어 있고 기존 번역에서도 용어가 일관성 있게 쓰여 있어야 한다.

Hackers' Pub에서도 중국어 번역을 그런 식으로 채워서 커밋해 보았다.

Hackers' Pub에 rel=me 속성으로 본인 링크인지 확인하는 로직은 처음부터 만들어 놨는데, UI에서만 표시가 안 되고 있는 중… 안 그래도 지금 프로필의 링크 목록이 조금만 많아져도 난잡해 보이는데, 좀 정리도 할 겸 인증 마크도 추가해야겠다.