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

SvelteKit의 +page.svelte가 +page.ts를 기다리는 구조가 SSR 시에는 복잡도를 엄청 줄여주는데 (데이터가 다 로딩되어 있어서 <Suspense> 등이 필요 없으니까...) CSR 때는 페이지 렌더링을 늦추는 주범이 되는 것 같아서 고민

지금 아이디어는 load에서 SSR인지 여부에 따라서 T | Promise<T>를 던져서 SSR에서는 바로 데이터 / CSR 에서는 Promise 결과가 스트리밍되게 하고 +page.svelte에서는 항상 :then을 씌워주면 SSR때도 Promise 아닌게 들어오면 :then을 렌더링하니까 어떻게 될 거 같긴 한데 어쨌든 SvelteKit의 간단한 구조는 포기해야 하니까... (어쩔 수 없는거지 싶기도 하고)

1

SvelteKit의 +page.svelte가 +page.ts를 기다리는 구조가 SSR 시에는 복잡도를 엄청 줄여주는데 (데이터가 다 로딩되어 있어서 <Suspense> 등이 필요 없으니까...) CSR 때는 페이지 렌더링을 늦추는 주범이 되는 것 같아서 고민

1

최적화 작업을 위해 프로파일러를 만들었는데 확실히 분석 도구가 있으니까 효율적으로 작업을 할 수 있게 된 것 같다. 이전에는 깜깜히 진행하는 느낌이였는데 본격적으로 활용할 수 있게 되니까 뭘 해야하지 잘 보이는 느낌임

2
1
1

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

도커로 구축한 랩에서 혼자 실습하며 배우는 네트워크 프로토콜 입문 #4

자손킴 @jasonkim@hackers.pub

이 글은 네트워크 계층과 애플리케이션을 연결하는 L4 전송 계층의 핵심 개념을 소개합니다. 포트 번호를 통해 애플리케이션을 식별하고, UDP와 TCP 프로토콜의 특징과 패킷 형식을 설명합니다. UDP는 실시간성을, TCP는 신뢰성을 중시하며, TCP는 3-way handshake로 연결을 설정하고, 흐름 제어, 혼잡 제어, 재전송 제어를 통해 데이터 전송을 관리합니다. 특히 TCP 커넥션의 상태 전이 과정과 4-way handshake를 통한 연결 종료 과정을 상세히 다룹니다. 이 글을 통해 독자는 L4 전송 계층의 작동 방식과 TCP의 신뢰성 있는 데이터 전송 메커니즘에 대한 깊이 있는 이해를 얻을 수 있습니다.

Read more →
3

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

Tootleの話

のえる @noellabo@hackers.pub

この記事では、長らく更新が途絶えているものの、多くのユーザーに愛用されているMastodonクライアントアプリ「Tootle for Mastodon」について解説しています。古いアプリであるため、新しいMastodonの機能に対応していないことや、通知によるアプリのクラッシュ、通知リレーサーバーの不安定さ、課金時の不具合といった問題点が指摘されています。さらに、プライバシーポリシーの未公開やクリップボードへのアクセス警告など、プライバシーに関する懸念も提示されています。アプリがGoogle Analytics for Firebaseを使用し、利用状況に関するテレメトリ情報を収集していることが確認されていますが、現時点では悪意のある設計とは断定できないと結論付けています。Tootleの利用継続については、作者の過去の言動から各自で判断する必要があると述べています。

Read more →
2

https://eatchangmyeong.github.io/2022/04/22/interest-driven-mu-recursive-functions.html 이 글을 재작성하고 싶은데 예시로 뭘 들어야 될지 모르겠다..... μ를 반드시 써야 되고 구현 난이도가 적당한 거였으면 좋겠는데 생각나는 게 너무 어려운 것밖에 없다

2
3

https://developer.mozilla.org/en-US/blog/image-formats-codecs-compression-tools/

모질라 개발자가 작성한 jpeg, avif 비교 기사. 모질라는 mozjpeg으로 이미지 파일 최적화에 기여해왔고 jpeg를 다룬 경험이 많은 곳. 결론은 고화질에서는 큰 이득이 없지만 저-중화질에서는 유리하다고.

개인적 경험으로는, 최신 AOM 코덱 기준 인코딩 시간이 jpeg보다는 느리지만 실사용에 방해될 정도는 아니었고, 내가 쓰는 (상당히 고화질) 기준으로 2MP 정도에서는 30~50% 정도 이득이 있었음. 웹에 올리는 용도로는 가치가 있다.

나는 내부 아카이빙용으로 초고화질 손실 12MP avif를 사용하고 있음. Lossless webp와 비교시 화질 차이는 거의 없으면서 용량이 반으로 준다는 장점이 있다. jpeg과 비교시 artifact가 잘 안 보이는 것도 좋음. Lossless 대비 색 수가 반 정도로 줄지만.

4
5
1

후쿠오카 여행 이틀째. 일을 좀 보려고 후쿠오카시 적련와(赤煉瓦) 문화관 건물을 쓰는 엔지니어 카페에 왔다. 굉장히 운치 있는 공간.

9

요즘 AI 수학자/과학자를 만들겠다는 스타트업들이 생기고있는데, 멤버들도 빅테크 출신에 쟁쟁하고 투자도 크게 받는 등 절대 장난같은건 아니다. 그치만 의문이 드는건 피할수가 없는데... 만약에 AI 사업가를 만드는 스타트업을 세워서 VC를 찾아가면, '...그냥 직접 비즈니스를 하시죠?'라고 할게 당연하지 않나. AI 수학자/과학자를 만드는 스타트업도 비슷한 느낌이다. 그냥 연구 결과 낸다음 빅테크 인수될 계획이라고 하면 할말은 없다만.

4
4
5

마스토돈 CEO 자리에서 물러납니다
------------------------------
- *Mastodon 창립자 Eugen Rochko* 가 약 10년 만에 CEO 자리에서 물러나며, *상표권과 자산을 비영리단체에 이양*
- 프로젝트가 개인 중심이 아닌 *커뮤니티 중심 구조* 로 유지되도록 하는 것이 핵심 목표
- 소셜미디어 운영의 *정신적 부담과 대중의 기대* 가 사임 결정의 주요 배경으로 언급
- 지난 10년…
------------------------------
https://news.hada.io/topic?id=24472&utm_source=googlechat&utm_medium=bot&utm_campaign=1834

3
6
2
2
0
2
8

많은 언어들의 많은 패키지 매니저들이, 패키지에 대한 테스트를 돌릴 방법은 제공하면서(npm test 등) 막상 그 패키지 레포를 클론떴을때 그 패키지를 사용하는 아무 예제나 실행시켜볼 쉽고 통일된 방법은 잘 제공 안하는 거 같다. 가령 examples/*의 코드들을 실행시킬 방법은 npm 패키지들마다 제각각이다. 왓더??

3

많은 언어들의 많은 패키지 매니저들이, 패키지에 대한 테스트를 돌릴 방법은 제공하면서(npm test 등) 막상 그 패키지 레포를 클론떴을때 그 패키지를 사용하는 아무 예제나 실행시켜볼 쉽고 통일된 방법은 잘 제공 안하는 거 같다. 가령 examples/*의 코드들을 실행시킬 방법은 npm 패키지들마다 제각각이다. 왓더??

1
3
0
0
4
4

오늘은 xml parser와 unzip 처리해주는 라이브러리와 Cursor의 도움을 좀 받아 워드, 엑셀, 파워포인트 ooxml 파일을 파싱해서 텍스트와 서식 정보, 이미지, 파워포인트는 발표자 노트, 엑셀은 셀 데이터를 가져오는 파서를 만들었다.

원랜 야크셰이빙할 생각은 별로 없었는데 기존 라이브러리 등이 내가 원하는대로 안 되는게 커서 결국 삽을 펐다. LLM의 도움이 아예 없었으면 오늘 안에 다 못 만들었을 것 같다.

그래도 이게 OOXML 포맷이 압축 파일이고 그 안에 xml로 되어있는 구조라는걸 알고 있었어서 이런 바퀴를 재발명할 생각도 할 수 있었던 것 같다. 저녁까지만 해도 머리에 쥐날 것 같았는데 다 되니까 세상에 이렇게나 뿌듯할수가…

  • 관성적으로 코딩 관련에는 Claude Sonnet 4.5 위주로 사용했는데 요즘 GPT-5/5.1 Codex 써보고 굉장히 놀라는 중. 역시 AI쪽 분야는 관성적인 행동을 버리고 다양하게 계속 찍어먹어봐야 장단점을 알고 필요할 때 요긴하게 쓸 수 있는 것 같다.
샘플 파워포인트 슬라이드직접 만든 파서로 처리한 결과
0

오늘은 xml parser와 unzip 처리해주는 라이브러리와 Cursor의 도움을 좀 받아 워드, 엑셀, 파워포인트 ooxml 파일을 파싱해서 텍스트와 서식 정보, 이미지, 파워포인트는 발표자 노트, 엑셀은 셀 데이터를 가져오는 파서를 만들었다.

원랜 야크셰이빙할 생각은 별로 없었는데 기존 라이브러리 등이 내가 원하는대로 안 되는게 커서 결국 삽을 펐다. LLM의 도움이 아예 없었으면 오늘 안에 다 못 만들었을 것 같다.

그래도 이게 OOXML 포맷이 압축 파일이고 그 안에 xml로 되어있는 구조라는걸 알고 있었어서 이런 바퀴를 재발명할 생각도 할 수 있었던 것 같다. 저녁까지만 해도 머리에 쥐날 것 같았는데 다 되니까 세상에 이렇게나 뿌듯할수가…

  • 관성적으로 코딩 관련에는 Claude Sonnet 4.5 위주로 사용했는데 요즘 GPT-5/5.1 Codex 써보고 굉장히 놀라는 중. 역시 AI쪽 분야는 관성적인 행동을 버리고 다양하게 계속 찍어먹어봐야 장단점을 알고 필요할 때 요긴하게 쓸 수 있는 것 같다.
샘플 파워포인트 슬라이드직접 만든 파서로 처리한 결과
4
5
1
3

@ailrunAilrun (UTC-5/-4) @hongminhee洪 民憙 (Hong Minhee) 사실 예전에 말씀하신 연구 주제를 처음 들었을때, 쓸모가 확 와닿지 않았어요. 메타프로그래밍을 그냥 CPP 매크로 정도로 생각해서, 그걸 굳이 타입안전하게 해야하나?라고 속으로 생각했는데요. 점차 메타프로그래밍이 생각보다 훨씬 흔한 패턴이란걸 알게됐단 말이죠. 두 프로그램의 상호작용을 기술하거나, Nix에서 쉘스크립트를 다루거나 할때요. 그러면서 그 연구 주제의 중요성을 점점 느끼고 있는 중이에요.

청중이 정확히 어떤 그룹인지는 모르겠지만, 어쩌면 그분들이 저와 비슷한 첫 인상을 가질수 있단 생각이 드네요. 그래서 그런 오해를 피할수 있도록 연구의 응용처를 소개하는데 충분한 시간을 할당하시는게 좋지 않을까 생각이 듭니다.

3

If you're a software developer and need to create a presentation with a lot of code, I highly recommend you consider Slidev (by @antfu.meAnthony Fu). Especially if you need to include TypeScript code!

Slidev is web-based presentation software made for software developers. It offers a wide variety of ways to present code in your slides, like highlighting specific code in sequence, displaying TypeScript type information in tooltips through Twoslash integration, a “magic move” feature that compares the before and after of your code with a cool animation, the ability to embed the Monaco editor, and more.

This was my first time using Slidev, but I was captivated by its rich feature set. You should give it a try too!

2

그나저나 Slidev는 소프트웨어 프로그래머를 ()한 정말 잘 만든 發表(발표) 슬라이드 作成(작성) 소프트웨어 같다. ()히, 슬라이드에 TypeScript 코드를 꽤 包含(포함)해야 하는 發表(발표) 資料(자료)를 만든다면 Slidev를 使用(사용)해 볼 것을 ()한다. Twoslash가 支援(지원)된다…!

꼭 TypeScript 코드가 아니더라도 特定(특정) 줄들을 順序(순서)대로 強調(강조)하는 것도 되고, 라이브로 코드를 고칠 수도 있다. 비포 애프터로 두 코드를 比較(비교)할 때도 매직 무브로 괜찮은 演出(연출)可能(가능)하다.

아무튼 Slidev 最高(최고)…!

4
2
1

이번 겨울에 연대에서 발표를 하나 할 것 같다. 이를 위한 발표자료를 준비 중인데… 완전 대중도 아니고 전문가도 아닌 청중에게 무엇을 어느정도까지 어떻게 설명해야할지… 고민이 많다. 😵‍💫

0

Dang it, PostgreSQL is so good.

I did a data export thing. The options I needed were there. Then I needed more options, and then they were also there. They worked the way I guessed. It was fast. It was reliable. Then I thought “oh, what about sequences?!?”, but they already had that covered. My seemingly easy task turned out to be…easy.

1

Dang it, PostgreSQL is so good.

I did a data export thing. The options I needed were there. Then I needed more options, and then they were also there. They worked the way I guessed. It was fast. It was reliable. Then I thought “oh, what about sequences?!?”, but they already had that covered. My seemingly easy task turned out to be…easy.

2
0
0

돌이켜보니 내가 처음으로 소프트웨어의 '품질'을 경험한게 스타1이랑 디아2였다. 게임이 재밌는거랑 별개로, 그때 기준으로 저 두 게임은 소프트웨어로써 품질이 훌륭했다. 그당시 다른 게임들은 느리고, 심각한 버그가 있고, UI가 덜컹 거리기 일쑤였다. 스타1, 디아2는 게임을 켤때부터 끌때까지 매끄러운 경험을 줬다.

7
0
4
1

좋은 소식 공유하자면...

사실 요 며칠간 외국계 회사에서 work trial을 했는데요. 수습도 통과했고, 지금까지 받아왔던 것에 비해 훨씬 좋은 처우환경에서 일할 수 있게 되었습니다..

파이썬 기반의 환경에서 개발하는 중이고, 제가 마침 빠삭한 도메인에서 일하게 되었다고 하네요

17
2