洪 民憙 (Hong Minhee) :nonbinary:'s avatar

洪 民憙 (Hong Minhee) :nonbinary:

@hongminhee@hollo.social

1,108 following1,898 followers

An intersectionalist, feminist, and socialist living in Seoul (UTC+09:00). @tokolovesme's spouse. Who's behind @fedify, @hollo, and @botkit. Write some free software in , , , & . They/them.

서울에 사는 交叉女性主義者이자 社會主義者. 金剛兔(@tokolovesme)의 配偶者. @fedify, @hollo, @botkit 메인테이너. , , , 等으로 自由 소프트웨어 만듦.

()

Pinned

@hongminhee@hollo.social

Hello! I'm Hong Minhee (洪 民憙), an open source software engineer in my late 30s, living in Seoul, Korea. I'm bisexual and non-binary (they/them), and an enthusiastic advocate of free/open source software and the fediverse.

I work full-time on @fedify, an ActivityPub server framework in TypeScript, funded by @sovtechfund. I'm also the creator of @hollo, a single-user ActivityPub microblog; @botkit, an ActivityPub bot framework; Hackers' Pub, a fediverse platform for software developers; and LogTape, a logging library for JavaScript and TypeScript.

I have a long interest in East Asian languages (CJK) and Unicode. I post mostly in English here, though occasionally in Japanese or in mixed-script Korean (國漢文混用體), a traditional writing style that interleaves Chinese characters with the native Korean alphabet. Wanting to write in that style was actually one of the reasons I joined the fediverse. Feel free to talk to me in English, Korean, Japanese, or even Literary Chinese!

en.wikipedia.org

Korean mixed script - Wikipedia

Pinned

はじめまして!ソウル在住の30代後半のオープンソースソフトウェアエンジニア、洪 民憙ホン・ミンヒと申します。バイセクシュアル(bisexual)・ノンバイナリー(non-binary)で、自由・オープンソースソフトウェア(F/OSS)とフェディバース(fediverse)の熱烈な支持者です。

STF(@sovtechfund)の支援を受け、TypeScript用ActivityPubサーバーフレームワーク「@fedify」の開発に専念しています。他にも、おひとり様向けのActivityPubマイクロブログ「@hollo」、ActivityPubボットフレームワーク「@botkit」、ソフトウェア開発者向けフェディバースプラットフォームHackers' Pub、JavaScript・TypeScript用ロギングライブラリLogTapeなどの制作者でもあります。

東アジア言語(いわゆるCJK)とUnicodeにも興味があります。このアカウントでは主に英語で投稿していますが、時々日本語や国漢文混用体(漢字ハングル混じり文)の韓国語でも書いています。実はこの文体で書きたくてフェディバースを始めた、という経緯もあります。日本語、英語、韓国語、漢文でも気軽に話しかけてください!

speakerdeck.com

国漢文混用体からHolloまで

本発表では、韓国語の「国漢文混用体」(漢字ハングル混じり文)を自分のフェディバース投稿に実装したいという小さな目標から始まった旅路を共有します。 この目標を達成するために、ActivityPubのJSON-LDの複雑さやHTTP Signatures、WebFingerなどの仕様を理解する必要性に…

Pinned

安寧(안녕)하세요! 저는 서울에 살고 있는 30() 後半(후반)의 오픈 소스 소프트웨어 엔지니어 洪民憙(홍민희)입니다. 兩性愛者(양성애자)(bisexual)이자 논바이너리(non-binary)이며, 自由(자유)·오픈 소스 소프트웨어(F/OSS)와 聯合宇宙(연합우주)(fediverse)의 熱烈(열렬)支持者(지지자)이기도 합니다.

STF(@sovtechfund)의 支援(지원)을 받아 TypeScript() ActivityPub 서버 프레임워크 @fedify 開發(개발)專業(전업)으로 ()하고 있습니다. 그 ()에도 싱글 유저() ActivityPub 마이크로블로그 @hollo, ActivityPub 봇 프레임워크 @botkit, 소프트웨어 開發者(개발자)를 위한 聯合宇宙(연합우주) 플랫폼 Hackers' Pub, JavaScript·TypeScript() 로깅 라이브러리 LogTape ()製作者(제작자)이기도 합니다.

()아시아 言語(언어)(이른바 CJK)와 Unicode에도 關心(관심)이 많습니다. 이 計定(계정)에서는 ()英語(영어)로 포스팅하지만, 때때로 日本語(일본어)國漢文混用體(국한문 혼용체) 韓國語(한국어)로도 씁니다. 聯合宇宙(연합우주)에 오게 된 動機(동기) () 하나가 바로 國漢文混用體(국한문 혼용체)로 글을 쓰고 싶었기 때문이기도 하고요. 韓國語(한국어), 英語(영어), 日本語(일본어), 아니면 漢文(한문)으로도 말을 걸어주세요!

logtape.org

LogTape

Unobtrusive logging library with zero dependencies—library-first design for Deno, Node.js, Bun, browsers, and edge functions

@hongminhee@hackers.pub

LogTape is a zero-dependency logging library for JavaScript and TypeScript that works across all runtimes.

We're excited to announce the release of LogTape 0.11.0, which introduces significant enhancements to structured logging capabilities and adds a new JSON Lines formatter for better log processing.

New features and enhancements

Enhanced structured logging

LogTape 0.11.0 brings major improvements to structured logging, making it easier and more flexible to work with structured data in your logs.

Direct object logging

You can now log structured data directly by passing an object as the first argument to any log method:

logger.info({
  userId: 123456,
  username: "johndoe",
  loginTime: new Date(),
});

This creates a log entry with the object properties as structured fields, making your logs more machine-readable and searchable.

Universal property interpolation with {*}

A new special placeholder {*} allows you to interpolate all properties from your structured data at once:

logger.info("User logged in with properties {*}", {
  userId: 123456,
  username: "johndoe",
  loginTime: new Date(),
});

This is particularly useful when you want to include all available context without explicitly naming each property in your message template.

Streamlined logging methods

All logging methods (debug, info, warn, error, fatal) now support the new object-first syntax as a convenient shorthand for structured logging with the {*} placeholder.

JSON Lines formatter

LogTape now includes built-in support for JSON Lines (also known as JSONL or NDJSON) format, a popular choice for structured logging in modern applications:

import { jsonLinesFormatter } from "@logtape/logtape";
import { getFileSink } from "@logtape/file";

await configure({
  sinks: {
    jsonl: getFileSink("app.jsonl", {
      formatter: jsonLinesFormatter
    }),
  },
  // ... rest of configuration
});

The JSON Lines formatter outputs each log record as a JSON object on a separate line, making it ideal for log aggregation systems and analysis tools.

Customizable JSON Lines options

The new getJsonLinesFormatter() function provides several customization options:

  • Category separator: Control how hierarchical categories are joined
  • Message format: Choose between raw templates or rendered messages
  • Properties handling: Flatten properties, nest them, or prepend with custom prefixes

Backward compatibility

All existing logging patterns continue to work exactly as before. The new features are additive and don't break any existing code.

Why this matters

These enhancements make LogTape even more powerful for modern application logging:

  • Better observability: Structured data makes logs more searchable and analyzable
  • Improved developer experience: Less boilerplate when logging complex objects
  • Industry standard formats: JSON Lines support for better integration with log management systems
  • Flexible formatting: Customize output to match your infrastructure needs

Installation

LogTape 0.11.0 is available on both JSR and npm:

deno add jsr:@logtape/logtape@0.11.0
npm  add     @logtape/logtape@0.11.0
pnpm add     @logtape/logtape@0.11.0
yarn add     @logtape/logtape@0.11.0
bun  add     @logtape/logtape@0.11.0

Learn more

We hope these new features enhance your logging experience. As always, LogTape remains zero-dependency and works across all JavaScript runtimes.

Happy logging!

logtape.org

LogTape changelog | LogTape

Simple logging library with zero dependencies for Deno, Node.js, Bun, browsers, and edge functions

@hongminhee@hollo.social

가끔 【此日彼日(차일피일)】을 【치일피일】 ()으로 잘못 쓰는 境遇(경우)가 있습니다만, 【此日彼日(차일피일)】은 漢文(한문)으로 「이 날 저 날」이라는 뜻이고, 【於此彼(어차피)】와 같은 漢字(한자)를 쓴다는 것을 記憶(기억)하시면 헷갈릴 일이 없을 것입니다.

@hongminhee@hollo.social

It's been a while since we released a new minor version of . I'm currently considering the timing for releasing Hollo 0.6.0. There are still a few changes left to implement, but once those are wrapped up, we should be able to release Hollo 0.6.0 soon!

@fedilug@msky.ospn.jp

のご参加ありがとうございました。
:fedilug: のブースや本、ステッカー、セミナーなどは楽しんでいただけましたでしょうか?次のFediLUGイベントは6月22日の第9回勉強会です!!ご興味がある方はぜひご参加ください。
また、OSC名古屋及び技術書典18リアル会場で頒布した『自分だけのフェディバースのマイクロブログを作ろう!』と『Thinking Penguin Magazine Vol.0』は技術書典18のオンライン通販で全国から購入可能です!この際にぜひご検討ください。

同人誌販売:
https://techbookfest.org/organization/7JepZT0g3C6qbddiLmkAwp
第9回勉強会:
https://fedilug.connpass.com/event/357642/

If you're on the fence about which driver to choose for 's message queue, here's a benchmark that just came out. In addition to no queue, we compare 5 drivers, for a total of 11 setups:

Curious to see the results? Check out the GitHub repository!

https://github.com/dahlia/fedify-queue-benchmarks

https://fosstodon.org/@hongminhee/113247723368865290

@hongminhee@fosstodon.org · Reply to 洪 民憙 (Hong Minhee)

@thisismissem Here's the benchmark, and while it contains some questionable results, the overall conclusion is as following:

• Response times are much faster with queues than without.
• Overall throughput is better without queues.
• However, some queue setups can achieve throughput close to that of no queue.

This benchmark assumes communication within a single node, so the effect of queues may be greater in real-world networks.

github.com/dahlia/fedify-queue

@Yohei_Zuho@mstdn.y-zu.org

@hongminhee お疲れ様です。OSC名古屋と技術書典でのFedify本の売上状況をお知らせします。
OSC名古屋 : 物理6冊
技術書典 : 物理20冊、電子版28冊
になります。電子版は0円でPDFにしたものを配布しています。

@pkgupdt@hl.pkgu.net

GPL은 외부 릴리즈시 추가로 작성하거나 고친 소스 코드의 동일 조건 공개를 강제하는 특성으로 인해, 초기에 사회주의-공산주의라는 오해를 많이 받기는 했었음. 네가 썼다면, 네가 작성한 코드도 공개하라는 공유주의 라이센스니까.

그러나 그러한 공개 강제는 GPL을 일종의 플랫폼으로 만드는 효과 - GPL을 쓰면 GPL이고 아니면 처음부터 아니어야 함 - 가 있어서, 리눅스가 BSD를 제치고, 윈도와 유닉스를 넘어 인터넷과 세계의 커널이 되는 결정적 요인이 됩니다. 그리고 수많은 기업들이 이를 기반으로 자라나죠.

GPL은 자본주의 사회에서도 매우 훌륭하게 기능하고 있습니다. 이제 와서 GPL이 공산주의라고 하는 사람은 거의 없죠.

@ak@hackers.pub

설난영-유시민 논란(?)에 대한 생각.

  1. 유명 정치인의 배우자 A가 지원 유세 과정에서 혐오발언을 함
  2. 유명 지식인 B가 A의 발언을 비판하는 맥락에서 또다른 혐오발언을 함
  3. 지켜보던 사람 C가 B의 혐오발언을 비판함

C는 B의 혐오발언을 비판함으로써 자동으로…

  • A의 혐오발언을 옹호한건가? 아니오.
  • B라는 인간 자체를 비판한건가? 아니오.
  • B가 지지하는 정치인을 비판한건가? 아니오.

C를 굳이 비판하고 싶다면? C가 유사한 상황에서 꾸준히 편향되게 특정 사람(또는 집단)만 비판해왔는지를 먼저 살펴야 하지 않을까.

그런데, C의 언행이 꾸준히 편향되었음을 알아냈다 하더라도 그 자체를 비판할 수는 없다. 사람은 누구나 편향되어 있고 '편향 없음(소위 중립)'이라는 건 아주 특별한 상황이 아닌 이상 지향할만한 좋은 가치도 아니기 때문이다. 스스로가 어떤 편향을 얼마나 가지고 있는지 자각하고 있는지 여부, 그러한 편향을 공연히 인정하는지 여부에만 차이가 있을 뿐이다.

따라서 C에 대한 그나마 가능한 비판의 범주는 "편향이 있는데 없는 척을 한다(즉, 거짓말쟁이다)" 또는 "편향이 있는데 자각을 못한다(즉, 어리석다)"는 정도가 아닐까.

🎉 support is now complete! After implementing the test infrastructure, core module, examples, and comprehensive documentation, can now run on Cloudflare Workers.

What's included:

Try it now: Available in the development release v1.6.1-dev.876+7b07d213:

This will be included in the upcoming Fedify 1.6 stable release. Thank you to everyone who requested this feature and provided feedback throughout the implementation!

npmjs.com

@fedify/fedify

An ActivityPub server framework. Latest version: 1.5.3, last published: 16 days ago. Start using @fedify/fedify in your project by running `npm i @fedify/fedify`. There are 3 other projects in the npm registry using @fedify/fedify.

@aoetk.bsky.social@bsky.brid.gy

遂にWindowsのメモ帳がMarkdownスタイルのフォーマットに対応なのか! まさか今更になってメモ帳の強化に力を入れ出すとは思わんかったよ。後はgrep対応や矩形編集あたりにも対応するようになったらサクラエディタあたりは駆逐されるかも。 blogs.windows.com/windows-i...

Text Formatting in Notepad beg...

blogs.windows.com

Text Formatting in Notepad begin rolling out to Windows Insiders

Hello Windows Insiders, today we are beginning to roll out an update to Notepad to Windows Insiders in the Canary and Dev Channels on Windows 11. Notepad (version 11.2504.50.0) [caption id=