@ailrunAilrun (UTC-5/-4) 웰컴투 코리아!
洪 民憙 (Hong Minhee)
@hongminhee@hackers.pub · 980 following · 684 followers
Hi, I'm who's behind Fedify, Hollo, BotKit, and this website, Hackers' Pub! My main account is at
@hongminhee洪 民憙 (Hong Minhee)
.
Fedify, Hollo, BotKit, 그리고 보고 계신 이 사이트 Hackers' Pub을 만들고 있습니다. 제 메인 계정은:
@hongminhee洪 民憙 (Hong Minhee)
.
Fedify、Hollo、BotKit、そしてこのサイト、Hackers' Pubを作っています。私のメインアカウントは「
@hongminhee洪 民憙 (Hong Minhee)
」に。
Website
- hongminhee.org
GitHub
- @dahlia
Hollo
- @hongminhee@hollo.social
DEV
- @hongminhee
velog
- @hongminhee
Qiita
- @hongminhee
Zenn
- @hongminhee
Matrix
- @hongminhee:matrix.org
X
- @hongminhee
(최근에 직장을 옮겨 풀타임 근무를 시작함)
새 동료들과 이야기하다 함수형 언어 이야기가 나왔는데, 밈에 불과한 이야기만 나와서(함수형 언어 사용자들의 컬트스러움 등) 좀 아쉬웠다. 답답하거나 짜증난다기 보단, 빨리 그부분을 스킵하고 진짜 재밌는 이야기로 넘어갔으면 하는 생각이 들었다. 다행히 동료들이니 앞으로 이야기할 기회가 아주 많을 것이다.
불변성, 사이드이펙트 없음, 아름다움(?) 추구 등의 이야기가 나왔는데, 물론 다 함수형 언어와 관계있지만 본질적인건 아니다. 내게 함수형 언어는 코드를 조합하는 방법을 연구하고, 조합이 잘되는 코드를 짜는걸 실천하는 것이다. 이를 통해 많은 것을 공짜로 안전하게 얻는 것이 목표이다. 그래서 '함수형'의 칭호를 부여받지 못한 방법론들은(ex: 상속), 그냥 해보니까 조합성에 한계가 있어서, 설계를 구성하는 근본적인 요소로 포함시키기에 부적절하다고 결론이 내려졌을 뿐이다. 그럼... 그냥 좋은 방법들을 엄선해놓은게 함수형인가? 그럴지도? 다함께 좋은거 합시다.
洪 民憙 (Hong Minhee) shared the below article:
DLL을 JS 처럼 import 단계에서 네트워크로 동적 로딩하기
고남현 @gnh1201@hackers.pub
이 글은 .NET 기반 Windows 앱 개발 시 발생하는 "DLL Hell" 문제를 해결하기 위한 새로운 접근 방식을 소개합니다. 기존의 어셈블리 병합 방식 대신, 네트워크에서 동적으로 어셈블리를 로드하는 방법을 제안합니다. C#의 `using` 키워드 해결 과정에 개입하여 CDN(Azure Blob Storage)을 통해 어셈블리를 로드하고, 코드 서명 검증을 통해 보안을 강화합니다. .NET IL뿐만 아니라 네이티브 어셈블리 로딩도 지원하며, 실제 코드 예시를 통해 구현 방법을 설명합니다. 이 방법은 배포 시 추가 어셈블리 누락으로 인한 오류를 방지하는 데 도움을 주지만, 여전히 추가 어셈블리를 함께 배포하는 것을 권장합니다. 이 글을 통해 개발자는 어셈블리 관리의 유연성을 높이고 잠재적인 배포 문제를 해결하는 데 도움이 되는 유용한 정보를 얻을 수 있습니다.
Read more →LLM들한테 JSON 출력을 시킬때마다 이스케이핑하느라 얼마나 머리아플까 걱정되고 안쓰럽다.
'이것 조금만 하면 끝날 것 같으니 먼저 끝내자' ← 절대 안끝남
planet.moe 순위 높다 !!
코스모슬라이드 (인스턴스)에 기가 막힌(너무 허접해서) BM을 하나 생각해냈다 하지만 해커즈펍 키캡부터 만들어야 한다..
Vite처럼 HMR을 지원하는 환경에서 개발을 한다면, 거기다 상태 관리에 싱글톤 인스턴스가 쓰인다면 다음 코드가 언젠가는 도움이 될지도.
if (import.meta.hot) {
import.meta.hot.accept(() => {
import.meta.hot?.invalidate();
});
}
I think I have identified a fairly significant flaw in how the #Fediverse currently operates. Hear me out.
The Fediverse currently consists of all sorts of different systems - #Mastodon, #Friendica , #Pixelfed , #PeerTube, #BookWyrm , and so forth. And while they are all connected via the #ActivityPub protocol, they all have different functionalities and different ways of presenting themselves. Which is as it should be, because Diversity Is Our Strength(TM).
However, it is here that the ActivityPub-based interactivity hits its limits - for usually, you can either experience the relevant system as it was intended, or you can interact with it, but not both - _unless_ you have an account on the same system (though not necessarily on the same instance).
Let's say that you are a Mastodon user who looks at another person's BookWyrm page. You scroll through their books, posts, and comments. Then you see some comment you want to comment on yourself, but can you do so?
Not directly. You need to figure out the URL of their comment, and then copy and paste that comment into the search bar of your Mastodon instance. Then it will show up in the same format as a Mastodon post, and you can interact with it - boost it, like it, comment on it.
Sure, it works, but it's a whole lot of tedious effort.
Or you can search for the user account in Mastodon and scroll through all their posts and comments as if they were a Mastodon user - and thus, you will miss out on all the unique user interface features of BookWyrm.
So what is missing?
Well, Mastodon already has an "Open original page" feature when looking at someone's post. What we need is an "Open original page AND AUTHENTICATE" feature. This way, the target instance (whatever software they are using) could acknowledge the viewer as an external user who could nevertheless fully interact with the local user interface, including the ability to boost, like, and make comments.
This is something that should be theoretically possible to implement, right? #FediHelp
쿠버네티스에 올린 pg에 기존 디비에서 논리적 복제를 거는데 성공했다! 아마 며칠 걸리겠지만 다운타임이 없으니까 괜찮아~
We are currently fighting against a DDoS attack against our service and our status page. We are analyzing network traffic with the help of our ISP at the moment and let you know once we have updates to share.
어떻게 쓰는지도 모르겠었던 투명성보고서 써보니까 Claude Skills가 왜 좋은지 좀 실감한다... 문서 작업하는거 자동화하는거 관련해서는 사실상 python-docx, openpyxl, xlsxwriter, python-pptx, reportlab, PyMuPDF, pdfplumber 스크립팅하는거 wrapper 였을 뿐이었고...
존 지아난드레아, Apple에서 은퇴
오늘 Apple은 Apple 머신 러닝 및 인공지능(AI) 전략 부문 수석 부사장 존 지아난드레아(John Giannandrea)가 자리에서 물러나 고문으로 활동하다가 2026년 봄에 은퇴한다는 소식을 밝혔다. Apple은 또한 저명한 AI 연구자인 아마르 수브라마냐(Amar Subramanya)가 크레이그 페더리기(Craig Federighi) 직속 AI 부사장으로 Apple에 합류한다는 소식도 전했다. https://www.apple.com/kr/newsroom/2025/12/john-giannandrea-to-retire-from-apple/
닷넷은 8.0이후로 Microsoft만이 아니라, Canonical, RedHat 등 각 리눅스 배포판 관리자들이 Microsoft를 대신하여 본인들의 배포판 OS에서 잘 작동할 수 있도록 검증 과정을 거쳐 독자적으로 빌드하여 패키징을 하고 있습니다.
그 덕분에 매우 유의미한 발전이 하나 있었는데, IBM 메인프레임 (s390x)과 IBM PowerPC (ppc64el)에서도 우분투 리눅스를 사용하면 이제 닷넷 10을 아주 손쉽게 apt install dotnet-sdk-10.0 명령어 하나로 바로 설치해서 쓸 수 있게 됩니다.
https://forum.dotnetdev.kr/t/ibm-s390x-ibm-powerpc-ppc64el-10/14096
We've got some updates on TypeScript 7! The new native port
- can type-check any project
- supports --build and --incremental
- has rich editor features implemented
- is still 10x faster
and is ready for you to try today!
https://devblogs.microsoft.com/typescript/progress-on-typescript-7-december-2025/
회사에서 디스코드로 하는 일 모음
- 이슈트래커에 내 일감 등록되었는지 멘션 알림
- 서비스 중 업타임 (업다운) 알림
- 젠킨스 배포 시작,종료 (성공실패) 알림
- Gitlab CI Docker 빌드, 컨테이너 레지스트리 정상 업로드 알림
- ArgoCD 상태알림 (정상 싱크, 배포)
- 봇으로 사내 음악 공유 (봇 대기열에 노래 추가해서 같이듣기)
6번이 제일 유용합니..
(다른 거 더 추천 받습니다..)
블로그에 글을 작성했습니다.
마스토돈을 쿠버네티스로 옮기고 드디어 프로덕션 전환을 했다... (개인적인 축하파티) 이제 pg 레디스 es 옮기는거만 남았다... 이 쫄깃한 프로덕션 작업의 맛...
Coderabbit에는 감동이 있다.... AGENTS.md 를 적당히 잘 적어두니까, 막연하게나마 남겨놨던 컨벤션에 기반한 리뷰까지 해준다........
이번 주 토요일 오후 2시, 부산시 부산진구 동성로87번길 30 라운지J에서 닷넷데브 (.NET Dev)와 부산IT모각코가 연합하여 .NET Universe: Busan Edition 2512가 처음 열립니다.
최신 IT 기술에 대한 정보가 격차 없이 전달될 수 있도록 하기 위한 노력으로, 이번달을 시작으로 격월 (2개월) 간격으로 정기 출장 세미나를 앞으로 진행할 예정입니다.
이번 세미나는 .NET 10에 새롭게 추가된 파일 기반 앱을 주제로 완전히 새롭고 섹시하게 바뀐 C#의 멋을 보여드리는 알찬 세션으로 구성했습니다. 부산 지역 개발자 분들과 많이 만날 수 있는 계기가 되면 좋겠습니다. :-D
행사 상세 정보 보기: https://dotnetuniverse.net/2025/busan2512
고맙습니다!
X나 Threads의 인앱 브라우저에서 구글 OAuth를 쓰려고 하면, 구글 정책 위배로 사용자 경험이 좋지 않은데, 딱히 방법이 없는 걸까요? 인앱 브라우저를 피할 수가 없네요.
최적화 작업을 진행하고 있는데 수치가 바로바로 보여서 아주 재밌게 하고 있는 중
[미래의 나를 위한 메모지만 미래의 내가 이걸 볼 일이 없었으면 싶은 노트] 0xc000007b 오류를 검색해보면 온갖 글이 나오는데, 대체로 이런 글들이 사용자 입장에서 적힌 글이라서 개발자 입장에선 64bit 환경에서 32bit 바이너리를 혼재해서 사용할 때 생기는 문제라는 것 말고는 아무런 힌트도 못 얻었는데...
빌드와 관련된 설정에서 32bit/64bit 관련 무언가가 혼재되지 않았는지 체크하면 대체로 문제를 해결할 수 있다. 특히 외부 라이브러리. 환경변수, 특히 PATH에서 관련된 라이브러리 폴더 속 아키텍처가 혼재되지 않았는지 체크해보면 큰 도움이 된다. 나의 경우 Qt 애플리케이션이었는데 환경변수에 C:/Qt/Qt5.13.1/5.13.1/msvc2015_64라고 넣어야 할 것을 C:/Qt/Qt5.13.1/5.13.1/msvc2015라고 넣은게 원인이었다.
윈도우 + 인텔 CPU 구성이 필요한 프로젝트를 컴파일하고 있는데 아무리 msbuild에서 -m:16 옵션을 줘도 항상 코어가 2개씩 놀고 있다. 255H의 코어 구성이 성능 코어 6개, 효율 코어 8개, 저전력 효율 코어 2개라서 대충 저전력 효율 코어에 배분이 안 되는구나 예상은 했는데... 생각해보니 인텔의 저전력 효율 코어(LP E-core)는 성능 코어 / 효율 코어와는 다르게 컴퓨팅 타일에 존재하는게 아니라 SoC 타일에 있어서 컴파일처럼 컴퓨팅 성능이 필요할 때는 아예 허수아비가 되는 것 같다.
사진은 인텔의 Meteor Lake의 소개 자료, Meteor Lake부터 LP E-core가 도입되었다.
반도체의 제한된 다이 사이즈나 x86_64 아키텍처에서의 전력 효율 문제로 인텔도 AMD도 여러 시도를 하는 것 같지만, 인텔의 LP-E core 전략이 얼마나 좋을진 모르겠다. AMD Zen은 컴팩트 코어에 캐시 등에서 차이는 있어도 일단 "모든 명령어셋"이 호환되니 이론적으로 생각해보면 훨 낫지 않나 싶다. 그리고 인텔도 비슷한 문제를 인식했는지 곧 나올 Panther Lake는 LP E-core도 같은 컴퓨팅 타일에 배치한다고.
결국 #해커즈펍송년회 에 커스텀 키캡을 배포해야 할 것 같다...
洪 民憙 (Hong Minhee) shared the below article:
일본 서버를 한국과 거의 비슷한 속도로 원격 접속하기
고남현 @gnh1201@hackers.pub
이 글에서는 한국에서 일본 서버를 사용할 때 발생하는 네트워크 지연 문제를 다루고, 해저 케이블망을 활용하여 이를 개선하는 방법을 소개합니다. 저렴한 일본 서버를 선택했지만, 실제 한국에서의 통신 속도가 예상보다 훨씬 느린 250ms에 달해 미국 시애틀보다도 못한 상황을 겪었습니다. 하지만 Microsoft Azure의 한국 리전을 중간 서버로 활용하여 데이터 센터 간 통신을 시도한 결과, 핑 시간을 30ms대로 크게 단축시키는 데 성공했습니다. 이는 86%의 속도 향상으로, RDP를 통해 원격 데스크탑을 사용하는 환경에서 체감 속도를 극적으로 개선했습니다. 이 글은 해외 서버를 사용할 때 네트워크 지연을 줄이는 실질적인 해결책을 제시하며, 독자에게 더 빠르고 효율적인 원격 작업 환경을 구축하는 데 도움을 줄 수 있습니다.
Read more →vimrc2025 스티커 왕창 뿌렸고, 그럼에도 남아돌아서 해커스펍 송년회에서도 왕창 뿌릴예정
그래 제발 나를 후원해주시오
피드가 무슨 바이브코딩 기록지 같은게 되고 있기는한데 어제 테스트해서 잘된 클로드코드 프랙티스 공유.
- 이전부터 사용하고 있었던 방법인데 플랜 모드에서 복잡한 태스크 시킬때 각 태스크 분할해서 순차적으로 할 계획 세운후 각 단계를 md로 각각 뽑고 그 md에 맞춰서 작업하라고 하면 긴 태스크도 컨텍스트 크기 제약 없이 상대적으로 잘할 수 있었음. (e.g. step1.md 실행해)
- 병렬로 더 빨리 작업할 수 있는 방법 없을까 고민하다가, 이전에 지인이 여러개 띄울때 todo.md 같은걸로 클로드 코드끼리 통신(?)하도록 하게 한다는게 생각남.
- 복잡한 태스크를 최대한 병렬로 가능한 식으로 쪼개도록 유도. step_a, step_b는 병렬로 실행가능하고 순차적이여야하면 step_a_1 처럼 네이밍하게 함.
- 생긴 md 수만큼 클로드 코드 세션 열어서 일시킴.
토큰은 무서울정도로 빨리 쓰긴하는데, 엄청 잘하는것 같음. commands로 만들어서 활용하면 좋을듯?
드디어 힘든 싸움 끝에 마스토돈을 쿠버네티스에 띄워서 접속하는데 성공은 했지만... 지금은 기존 DB를 tailnet으로 접속하고 있는데 디비왔다갔다 레디스왔다갔다 하다 보니 페이지 뜨는데 5초가 넘게 걸려서 이걸 실제로 적용했다간 파멸이 분명하다... hosts로 먼저 테스트해보길 잘 했다...
A while back I mentioned the idea of “Fedify Studio”—a web-based toolkit for #ActivityPub debugging and development. I've been quietly working on shaping that idea into something more concrete.
Nothing to announce yet, but it's looking like this might become a team effort rather than a solo project, which would be nice. We'll see how it goes.
토스 웹 프레임워크 팀을 소개합니다. 제가 백엔드 개발자에서 학교로, 학교에서 프론트엔드 플랫폼 엔지니어로 커리어를 전환한 이야기를 인터뷰했어요. https://toss.im/career/article/web_framework_2511
몸 담고 있는 커뮤니티가 해커스펍(해커즈퍼브) 포함 딱 3개인데, 이들 커뮤니티를 후원할 수 있는 회사로 크는 거창한 목표를 가지고 있습니다...만 지금 1인 법인입니다.
이게 금방 매진이 되려고 하네......
디버그 정보가 있어도 모든 것이 optimized out 으로만 보이는 덤프에서 어셈이랑 레지스터가지고 즐겁게 원인 추정하기
아무래도 來年에는 海外 컨퍼런스에 많이 參加하게 될 것 같다. 一旦 只今 생각나는 것만으로도 네 個나 있음:
- FOSDEM 2026 (브뤼셀)
- FediCon 2026 (밴쿠버)
- COSCUP 2026 (臺北)
- TSKaigi 2026 (東京)
I'd love to go to
@fosdem 2026, but Brussels is just too far from Seoul… and the plane tickets are so expensive. 😭
Update: I just submitted a talk proposal to the Social Web Devroom at
@fosdem 2026—Fedify: Type-safe ActivityPub for TypeScript. Guess I'm flying to Brussels after all. 😅
@zhappy114김동호 안녕하세요! 반갑습니다!
@kodingwarriorJaeyeol Lee 반갑습니다! 초대링크 감사합니다 :)
오늘 코딩(유의어: 클로드 갈구기)는 여기서 포기 사유:
hello world
해커즈펍이 잘 안되는 건가...? 자꾸 단문 등록이 안 되네?
라고 해커즈펍에 쓰는 중...
아 맞다 행사신청
물론 소프트웨어 장인 정신에 가까운 것도 잃어버린지 오래되어 흔히 얘기하는 해커는 아니게 되었습니다. 그렇지만 AI로 바이브코딩이 가능해지고, 소프트웨어 엔지니어가 더 잘 사용할 수 있는 환경까지 마련되면서 소프트웨어 개발에 본질에 더 가까워질 수 있지 않나?라는 생각도 듭니다.
제가 생각하기엔 AI와 함께 인간 지능은 해결해야하는 문제와 이를 뒷받침하는 소프트웨어 구조에 더 잘 집중할 수 있다고 느꼈습니다. 그리고 이것들을 빠르게 반복하면서 개선할 수 있는 생산성까지 얻게된 셈이니까요. 적어도 몇년전부터 그리고 앞으로도 코딩에만 집중하지 못할 저에게는 그러한 부분이 더 크게 다가왔던것 같네요.
최근 바이브코딩에 너무 익숙해지며 생기는 반대 급부 문제도 있습니다만(모든 코드를 다 쉽게 accept한다던지 ㅋㅋㅋ), 발전된 기술을 사용하면서 오는 사이드 이펙트 정도로 생각하고 좋은 해결 방법을 계속 고민하면 되는 문제 정도라고 판단하고 있습니다.
세상은 너무 빠르게 바뀌고 있기 때문에 내년 여름쯤에는 또 다른 생각을 하고 있을수도 있겠습니다.
코드에디터 만들고싶다..
오라클 네이티브 Ingress의 수많은 버그를 밟고 결국 사용을 포기하고 LoadBalancer Service (L4) -> nginx (L7, 여기서 web/streaming 분리) 방식으로 일단 땜빵을 했는데 솔직히 클라우드 갈아타고 싶은데 비용땜에 어떻게든 부여잡고있음
그래서 AWS 갈까요 GCP 갈까요 Azure 갈까요 어디가 더 쌀까요...
@robin 헤츠너로 직접 운영하기... 농담입니다.
AWS >> GCP >> Azure 순으로 복잡성이 높아지고 가격이 올라가고 기능이 다양하니까, 사용 사례에 따라 나눠질 수 있겠네요.
@robin 3개 다 사용해봤는데 비슷한 수준에서는 AWS가 가장 덜 나오긴했습니다. 하지만 ALB가 꽤 비싼편이라서 LB 많이 쓰신다면 GCP 고려해보셔도 될것같슴다!
Git 3.0에서는 기본 브랜치로 main을 사용합니다
------------------------------
- *Git 3.0* 부터 새 저장소 생성 시 기본 브랜치가 자동으로 *main* 으로 설정됨
- 이번 변경은 *Git 2.52 패치 노트* 에 명시된 내용으로, Git 3.0부터 git init 명령이 ‘master’ 대신 ‘main’을 사용함
- Software Freedom Conservancy 가 2020년 6월 기본 브랜치명 변경 계획을 발표했고, *GitHu…
------------------------------
https://news.hada.io/topic?id=24651&utm_source=googlechat&utm_medium=bot&utm_campaign=1834
















