Profile img

Hi, I'm who's behind Fedify, Hollo, BotKit, and this website, Hackers' Pub! My main account is at @hongminhee洪 民憙 (Hong Minhee) :nonbinary:.

Fedify, Hollo, BotKit, 그리고 보고 계신 이 사이트 Hackers' Pub을 만들고 있습니다. 제 메인 계정은: @hongminhee洪 民憙 (Hong Minhee) :nonbinary:.

FedifyHolloBotKit、そしてこのサイト、Hackers' Pubを作っています。私のメインアカウントは「@hongminhee洪 民憙 (Hong Minhee) :nonbinary:」に。

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

무겁고 큰 메인 기능 구현 착수하기가 겁나서 가볍고 작은 서브 기능부터 구현하면서 차일피일 미루다가 더이상 서브 기능 남은게 없어서 드디어 메인 기능 구현을 했는데, 소요된 노력이 서브와 유사한 수준이라 뭔가... 알 수 없는 불안감이 느껴지는 이 기분... 아시나요... 중요한걸 미루지 맙시다(?

4
3

[[[[[ 긴급 도움 ]]]]]]

해커스펍 여러분, 연합우주 여러분. 안녕하세요. 슬슬 파이콘 한국 후원사로서 "한국 연합우주 개발자 모임" 스티커 굿즈를 뿌려야 하는데요. 스티커 굿즈를 뿌릴때 두가지 버전으로 뿌릴려고 해요.

*로고만 있는 정방형 스티커 *로고 옆에다가 가로로 fedidev.kr 글씨가 새겨져 있는 스티커 (중요)

fedidev.kr 글씨가 새겨져 있는 스티커는 어떻게 뿌릴지가 고민입니다.... 폰트랑 같이 예시 이미지를 알려주시면 스티커 굿즈 제작에 도움이 될 것 같습니다.

마감기한은 7월 19일이구요. 기프티콘 상한 금액은 5만원 입니다.

관심을 가져주시면 감사하겠습니다.

당연히! 공짜는 없겠죠! "이거다!" 하고 선정되신 분께는 원하시는 걸로 기프티콘을 드리겠습니다...

원본 SVG 파일은 여깄습니다 https://github.com/fedidevkr/logo/blob/main/fedidevkr.svg

5

洪 民憙 (Hong Minhee) shared the below article:

하스켈 편지

박준규 @curry@hackers.pub

이메일 교환을 요약하면, 한국의 취미 프로그래머 박준규 님이 Haskell에 대한 관심을 표현하며 NRAO의 다니엘 님에게 연락을 시작합니다. 다니엘 님은 Haskell 경험과 NRAO에서의 Haskell 프로젝트(antioch)를 공유하며, 박준규 님의 Haskell 학습 경험과 프로젝트에 대한 질문을 던집니다. 박준규 님은 자신이 관리하는 Hackage 패키지와 Protohackers 문제 풀이 경험을 공유하고, 다니엘 님은 이에 대한 격려와 함께 Typeclassopedia와 free monad를 추천합니다. 이 대화는 Haskell에 대한 열정과 지식을 공유하며, 서로에게 영감을 주는 긍정적인 교류를 보여줍니다. 다니엘 님은 박준규 님에게 Haskell 관련 질문을 언제든지 환영하며, 이 대화를 자유롭게 공유해도 좋다고 허락합니다.

Read more →
20

평소에 이펙트 시스템의 필요성을 때가 비동기 코드 테스트할때 인듯. 특히 setTimeout등 실제로 현실 시간만큼 기다리는 코드가 섞여있을때 이펙트 시스템이 없으면 테스트에서도 실제로 그만큼의 시간을 기다려야한다. 그러다보니 안 짜게 되고...

3
1

행정부 웹사이트들은 공동인증서 관련만 아니면(요즘은 간편인증이 많아져서 필수도 아님.) 거의 별도 플러그인 없이 쓸 수도 있고 많이 개선되었는데(물론 이용에 국내 휴대폰 회선을 준필수적으로 요구하는 게 과연 바람직하냐는 문제는 남지만.) 진짜 문제는 사법부에서 관장하는 웹사이트들인듯.

이번 SKT 해킹을 계기로 SKT랑 KT에 나뉘어 있던 가족의 회선이 KT로 모이게 되었다. 그래서 KT 가족결합을 신청을 위해 가족관계증명서가 필요해져 대법원 가족관계제증명 발급사이트에 접속을 했는데, HTML 캔버스 태그와 웹GL 핑거프린트를 이용자추적 및 MITM 공격방지를 위한 방책으로 쓰는지 내 PC의 추적방지 확장기능이 깔려있는 크로뮴 기반 브라우저로 접속하니 부정한 접근이라는 메시지를 띄우고 접속을 거부해버림. 확장기능을 하나씩 제거해보며 시험해봤지만 문제는 캔버스 태그와 웹GL 핑거프린트 랜덤화 확장기능 둘 다였고, 이를 모두 제거한 후에야 겨우 문서발급이 가능했다.

지난번 인터넷 등기소와 전자소송 웹사이트 개편후에 벌어졌던 아수라장을 봐도 그렇고 이런 걸 봐도 그렇지만 사법부 관할 서비스용 웹사이트가 행정부보다 훨씬 심하게 그 개발을 수준 떨어지고 능력 후달리는 업체에 예산도 후려쳐서 대충 맡기고 제대로 검수도 안 하는 게 아닌가 하는 느낌.

2

행정부 웹사이트들은 공동인증서 관련만 아니면(요즘은 간편인증이 많아져서 필수도 아님.) 거의 별도 플러그인 없이 쓸 수도 있고 많이 개선되었는데(물론 이용에 국내 휴대폰 회선을 준필수적으로 요구하는 게 과연 바람직하냐는 문제는 남지만.) 진짜 문제는 사법부에서 관장하는 웹사이트들인듯.

이번 SKT 해킹을 계기로 SKT랑 KT에 나뉘어 있던 가족의 회선이 KT로 모이게 되었다. 그래서 KT 가족결합을 신청을 위해 가족관계증명서가 필요해져 대법원 가족관계제증명 발급사이트에 접속을 했는데, HTML 캔버스 태그와 웹GL 핑거프린트를 이용자추적 및 MITM 공격방지를 위한 방책으로 쓰는지 내 PC의 추적방지 확장기능이 깔려있는 크로뮴 기반 브라우저로 접속하니 부정한 접근이라는 메시지를 띄우고 접속을 거부해버림. 확장기능을 하나씩 제거해보며 시험해봤지만 문제는 캔버스 태그와 웹GL 핑거프린트 랜덤화 확장기능 둘 다였고, 이를 모두 제거한 후에야 겨우 문서발급이 가능했다.

1

Fedify에서 Nestjs 지원하는거 얼추 작업은 된 것 같은데, 찝찝함

  1. 일단은 돌아가는 예제를 만들자.
  2. Fedify microblogging 튜토리얼의 스펙에는 맞게 한 바퀴 돌아가는지 점검해보자.
  3. 코드도 정리가 되긴 했지만, 문서는 꼼꼼하게 남겨놓자.
  • nestjs 지식없이 빠이브코딩했던거 문서화로 업보청산을 하자..
6
2
1
4
0
0
2
3
9

끝자락에 나오는 Matt Parsons가 작성한 Junior Code를 장려하는 글은 아마 이거인 것 같다. 가상의 이야기(?) 파트가 웃기다 😂

https://www.parsonsmatt.org/2019/12/26/write_junior_code.html

Boss: You’re going to be allowed to make a new project in whatever language you want. Even Haskell.

Employee: Oh yeah!! Time to write FANCY HASKELL!!

Employee writes a ton of really fancy Haskell, delivers fantastically and in about 1000 lines of code. Everyone is very impressed. The project grows in scope.

Boss: It’s time to hire another Haskeller. What are the job requirements?

Employee: Oh, they’ll need to know type-level programming, lenses, servant, Generics, monad transformers, mtl, and advanced multithreading in order to be productive anytime soon.
4

https://github.com/bglgwyng/deferred-cleanup-resource-map 이런 라이브러리를 만들었다. ref counting 해서 GC 해주는 map인데, 해제를 임의로 늦출수 있다. LRU 캐시같은걸 일반화한 형태라고 보면 된다.

이름이 참 저질인데, 나도 upyo같은 센스있는 이름을 붙이고 싶었지만, 이게 클로드랑 머리맞대서 나온 최선이다;;

7
2
2

요즘 웹을 많이 하고 있는데 정말 단순한 기능 하나도 뭐 이리 구현할게 많은지요...

  1. 버튼 하나 누르면 어떠한 상태 변경이 전파 되는 기능임
  2. 버튼을 누르는 유저는 그걸 누를 수 있는 권한이 있는지 체크
  3. 모든 유저가 websocket으로 전파 받을 수 있도록 해야함
  4. 로그에 JWT가 남으면 싫으니까 ticket을 발행해서 연결
  5. 해주는 API를 짜고 ticket에서 user 알아내서 컨텍스트에 붙여주는 미들웨어 구현
  6. 을 하기 위해 이제 redis로 캐시를 붙이고
  7. 백엔드 다 했으면 프론트에서 이제 어떤 component가 websocket에 연결 되어 있을지
  8. 이걸 받아서 또 다른 component한테 어떻게 뿌리지 (event emit으로...
  9. 등등등...
  10. 따라서 일단 야크 털을 깎아야한다 라는
5
2

애플의 수전노적인 앱 업데이트 정책

잘 알려지지 않은 사실이지만, 애플의 앱 스토어는 스토어프론트 UI는 꽤 많이 변했지만 그 안쪽은 그렇게 변하지 않았습니다. 여전히 앱스토어의 결제 관리를 위해 맥에서는 Music 앱을 사용할 필요가 있는 것이 이를 여실히 드러냅니다. 사실 사태는 좀 더 심각해서, 앱을 다운로드 받거나 업데이트하는 것을 '구입'으로 처리하던 WebObject 기반의 iTunes Music Store 시절의 시스템을 수선해 사용하던 초창기 앱 스토어 때와 달라진 게 없습니다. …

purengom.com/2025/07/15/%ec%95

1
3
4
3
3
3
7

Show GN: Upyo: 현대적인 JavaScript/TypeScript용 크로스 런타임 이메일 전송 라이브러리
------------------------------
안녕하세요. 개인적으로 이메일 발송 라이브러리를 만들어서 공유해봅니다.

## 왜 만들게 되었나요?

최근에 여러 프로젝트를 진행하면서 Node.js, Deno, Bun 등 다양한 런타임을 사용하게 되었는데, 이메일 발송 부분에서 매번 다른 라이브러리를 찾거나 설정을 다시 해야 하는 불편함이 있었습니다. 특히 D…
------------------------------
https://news.hada.io/topic?id=21971&utm_source=googlechat&utm_medium=bot&utm_campaign=1834

2
3

LLM을 이용한 코딩에 대한 생각이 최근 몇달간 많이 바뀌었는데, 사실 영향의 40% 정도는 아민 로나커의 트윗들에서 받은 것 같다. 오늘 보니 유튜브 비디오들도 올리는 것 같아서 이번 주에 한번 잘 살펴볼 예정. https://www.youtube.com/watch?v=Y4_YYrIKLac

3
2

평소에 GraphQL 설계를 할 때 권한에 따라서 같은 리소스의 타입을 다르게 (예를 들어 프로필 타입을 MyProfilePublicProfile로 나눈 후 PublicProfile에만 email 등의 필드를 구현한다던가) 하는 설계를 많이 했었는데 Relay에 호환되게 짜려고 하니 node(id) 구조랑 충돌하는 거 같아서 고민이다... id만으로는 그게 Public인지 My인지 알 수도 없고...

2
4
0

초기 스타트업에는 별도의 플랫폼 엔지니어링 팀이 필요하지 않을 수 있다. 작은 규모의 조직에서는 애플리케이션 엔지니어들이 플랫폼 엔지니어링 업무를 겸하곤 한다. 공유 코드의 문제점이 증가해 자발적인 기여로 감당하기 어려울 정도가 되면 플랫폼 엔지니어링 팀을 구성할 때다. 최초의 플랫폼 엔지니어링 팀은 다른 엔지니어링 조직과 강한 연결을 유지해야 하며, 과도한 수준의 플랫폼을 구축하지 않도록 주의해야 한다.

이 문제 자체보다 '지나친 시스템 중심 접근', '과도한 개발 중심 접근' 같은 문제가 팀에 해를 입힌다는 것을 모두가 동일한 수준으로 이해하는게 더 어려운 문제처럼 느껴진다. 원글에 "리더십은 권위에 호소하며 표준을 규정해버리곤 한다." 라는 서술이 있는데, 리더십은 실무와 멀어지면서 정말로 팀에 필요한 관심사와 전혀 다른 문제를 고민하는걸 보아왔다.

개인으로서는 리더를 조금씩 해킹하는 것 이외엔 수단이 안보이는데, 이런 짓을 하다보면 현타가 온다. 성실히 임하면 문제를 해결하기 위한 자원을 기대하지 않는 곳에 사용하거나, 같이 일한 동료들을 인정하는 대신 본인의 노고와 보상을 높게 치면서 다른 동료들이 힘들어하고, 코드베이스와 협업문화에 관찰하기 힘든 레버리지들이 쌓이는게 눈에 보이기 때문이다.

보통은 이런 인식자체를 못할 뿐더러, 이런 주장을 인정하려고도 하지 않는다. 단기적으로 본인에게 득이 되는 것 보다 잃는게 많고 현재에 너무 만족스럽거나 고된 스트레스에 시달리기 때문이다. 이런걸 무시할 수 있는 사람은 싸이코패스 내지는 책임 선긋기의 달인 정도이기 때문에, 나한테 신뢰할 수 있는 리더라는 존재는 유니콘에 좀 더 가깝다.

문제를 해결하는 리더란 존재를 만나보고 싶다.

5
4
2
1

Javascript/Typescript 생태계에는 소스코드 간 의존관계를 유향그래프(Direct Graph)로 시각화하는 CLI 도구가 있다는 사실... 알고 계신가요? madge, 적극적으로 추천합니다.

그냥 JS/TS 프로젝트 뿐만이 아니라, jsx 파일이 들어간 경우도 의존관계를 아름답게 시각화해줍니다. fedify 소스코드 통독하면서 이걸 적극적으로 써볼까 합니다. 마치.... 탐정이 사건 추적하면서 지도에 X 표시하는 감성으로...

fedify 프로젝트를 그래프로 아름답게 시각화한 모습이다.
3

Introducing !

A simple, cross-runtime email library that works seamlessly on , .js, , and edge functions. Zero dependencies, unified API, and excellent testability with built-in mock transport.

Switch between , , without changing your code. Available on & !

https://upyo.org/

0
2
0
3
1
1
3
2
0
0
1