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

洪 民憙 (Hong Minhee) :nonbinary:

@hongminhee@hollo.social

1,068 following1,877 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

@kopper@not-brain.d.on-t.work
extremely funny how the DID spec is a whole W3C thing but it's only claim to fame is "the bluesky user id number" like how activitystreams is a whole W3C thing but it's only claim to fame is "the mastodon post export format"
@evanprodromou@socialwebfoundation.org
The call for proposals is open for the COSCUP Fediverse track in Taipei, Taiwan. ActivityPub-related software, including server and client implementations, are great topics for the event. COSCUP ("Conference for Open Source Coders, Users, and Promoters") is the FOSDEM of East Asia. Run by the Open Source community in Taiwan, it brings together people excited about FOSS across the region. For the first time, this year, members of the Korean ActivityPub developer community FediDev KR are […]

The call for proposals is open for the COSCUP Fediverse track in Taipei, Taiwan. ActivityPub-related software, including server and client implementations, are great topics for the event.

COSCUP (“Conference for Open Source Coders, Users, and Promoters”) is the FOSDEM of East Asia. Run by the Open Source community in Taiwan, it brings together people excited about FOSS across the region.

For the first time, this year, members of the Korean ActivityPub developer community FediDev KR are joining up with FediLUG of Japan to program and run a Fediverse track at COSCUP. This has the potential to be a huge step forward for the Fediverse developer community. Although many major projects, like Fedify and Misskey, are created and promoted in East Asia, distance and language barriers make it hard for East Asian devs to participate in European and North American in-person events.

The Fediverse track is open to proposals about ActivityPub implementations, clients for ActivityPub platforms, ancillary services, libraries and toolkits. But also, as at FOSDEM, talks about the human aspects of Fediverse technology, like moderation, policy and governance, are welcome and encouraged. This event looks like it will cover as much interesting conceptual space as its twin at FOSDEM.

Hong Minhee, hongminhee@hollo.social, was one of the main speakers at FOSDEM’s Social Web devroom this year. Their talk about Fedify was important, but even more important was their effort to bridge the gap between Asia’s and Europe’s Fediverse development communities.

I (Evan) hope that COSCUP brings together many Asian developers, but I also hope that North American and European individuals and teams put in proposals as well. Knitting together these two important communities on the Fediverse requires effort from both sides. That’s why I’m applying to speak (about ActivityPub 1.1), and why I hope to see many familiar faces among the new ones in Taiwan.

hollo.social

洪 民憙 (Hong Minhee) :nonbinary:

An intersectionalist, feminist, and socialist living in Seoul (UTC+09:00). @tokolovesme@seoul.earth's spouse. Who's behind @fedify@hollo.social, @hollo@hollo.social, and @botkit@hollo.social. Write some free software in #TypeScript, #Haskell, #Rust, & #Python. They/them. 서울에 사는 交叉女性主義者이자 社會主義者. 金剛兔(@tokolovesme@seoul.earth)의 配偶者. @fedify@hollo.social, @hollo@hollo.social, @botkit@hollo.social 메인테이너. #TypeScript, #Haskell, #Rust, #Python 等으로 自由 소프트웨어 만듦. #國漢文混用體 #한국어 (#朝鮮語) #English #日本語

@cammerman@mstdn.social

Hey. Nations are made up. Citizenship is made up. Naturalization is made up. We have these things because this is the social contract we grew over hundreds of years.

The idea of an immigrant becoming a citizen is no less legitimate than the idea of someone being born a citizen. They are both and equally legal constructs that exist because things were worse without them.

If an immigrant can be denaturalized, then anyone the government wants to be rid of can be denaturalized.

@hongminhee@hollo.social · Reply to jnkrtech

@jnkrtech On CJK hashtags from scratch, I honestly don't know. My suspicion is that hashtags may be the wrong unit in the first place. Some kind of topic grouping might fit better. But once you go there, you're getting uncomfortably close to a recommender, and that's exactly the sort of thing a lot of people came here to get away from.

The ML idea is interesting, but I think it would be a very hard sell even if it were strictly opt-in. On the fediverse, once you put “ML” on the label, half the objections start writing themselves.

I think the bigger issue is that hashtags are partly compensating for weak search. And weak search is not just a bug. In some corners it is very much the point. A lot of fediverse people want discovery to stay limited because it keeps spaces smaller and less searchable by strangers. So this stops being just a technical proposal pretty quickly. It turns into an argument about what the fediverse is for.

@hongminhee@hollo.social · Reply to NiceMicro

@nicemicro Fair point on the particles. I was too narrow there.

On spaces, Chinese and Japanese did not end up without them out of stubbornness. They developed ways of reading that do not depend on spaces the way Latin-script languages often do. Most of the research people cite on spacing and reading speed comes from alphabetic languages, so it does not automatically apply to CJK. Treating that as “stubbornness” just assumes Latin-script conventions are the norm.

The hashtag friction is real regardless.

@HaTetsu@mastodon.com.pl · Reply to 洪 民憙 (Hong Minhee) :nonbinary:

@hongminhee It's really a problem in any language with word inflection… And even when writing in English, I think more people on the Fediverse have been switching to mostly putting hastags at the end in order to not break the flow of posts so much (screen readers have been used as an argument for that, too, not without reason)

@hongminhee@hollo.social

The hashtag problem in CJK languages

I keep thinking about how fediverse hashtag advice assumes English.

In English, you can drop #coffee into a sentence and it still reads fine. The spacing already does most of the work.

In Korean, Japanese, or Chinese, that feels much less natural. Chinese and Japanese have no spaces between words. Korean does, but particles and endings stick to the word, so putting a hashtag mid-sentence often just looks awkward or breaks the flow.

So people tend to dump hashtags at the end, or skip them.

That changes the usual “follow hashtags to find your community” advice. If people tag less, there's just less there to find. And the fediverse's discovery is already shaky enough without that.

Not sure whether it's a UI problem or just hashtags fitting space-delimited languages better. But it seems like one of those small frictions that makes the fediverse harder to get into for CJK users.

@hongminhee@hollo.social · Reply to Lutin Discret

@lutindiscret That's a good point, and honestly something I hadn't thought of!

Though hashtags seem to be used much less in the Korean fediverse. Part of it might be linguistic: Korean word boundaries don't align neatly with spaces the way they do in English, so weaving hashtags into running text feels awkward. They tend to get appended at the end, if used at all, which probably means fewer people are tagging in the first place.

@hongminhee@hollo.social · Reply to Raika

@raika_amaris Thank you! From what I know, she's into amusing anecdotes, socio-political discourse, animal content, and crafts; the last one especially, since it's her profession. I'll pass along your recommendations.

Though I suspect part of the problem is that the Korean fediverse is just so small. Even if she finds great accounts to follow in English, she'd still be navigating a space that doesn't quite feel like hers.

@kodingwarrior@hackers.pub
@hongminhee@hollo.social

My spouse still uses X heavily. They don't like Elon Musk either, but they check in on the fediverse occasionally and always come back saying the same thing: it feels like a space only for software engineers.

They're right, and I don't have a good answer for it.

You can say it's network effects, and that's part of it. But that still doesn't explain why the place feels closed off even when people do try it. X has an algorithm that surfaces content from people you don't follow, so even if you open it at random, there's always some shared background chatter: memes, game reactions, celebrity nonsense, whatever people are mad about that day. The fediverse has none of that. You see what the people you've deliberately followed have posted. So when non-technical people do show up, they often land in silence. And a lot of what they do see is fediverse talk, Linux talk, ActivityPub talk. Which is fine for me—I spend most of my waking hours thinking about ActivityPub—but I can see why it would feel alienating to someone who just wants to talk about films or cooking or K-dramas.

Then I look at Japan and think maybe this isn't impossible after all. Misskey and its forks developed a culture that pulled in illustrators, anime fans, people who had no interest in self-hosting or federation protocols. The reactions help. Some instances feel playful instead of dutiful. That seems to matter. I'm not sure exactly what made that work, or whether anyone could build that on purpose.

This feels especially hard in Korean. The pool is smaller, and communities like K-pop fandoms or webtoon readers have so much gravity on X that there's no obvious reason for them to leave. And even if some of them did, discovery is broken enough that they might not find each other in time—enough people that the place stops feeling empty.

When my spouse says the fediverse feels like it's for software engineers, I mostly just sit there, because I don't know how to tell them they're wrong.

@hongminhee@hollo.social · Reply to Alberto de Murga
@hongminhee@hollo.social

About ten years ago I helped build a few Python packages at work, and we released them as open source. They ended up getting real users.

Most of us eventually left. The company changed hands a few times, then got folded into a Java-heavy engineering org. The GitHub org and PyPI packages were basically orphaned. Nobody I worked with there is still around.

Those repos still get PRs. I can review them, but I lost merge access years ago. I've moved on from Python too, so I'm not looking to take them back.

It's bittersweet to watch something we built still attract contributions when nobody left can merge them.

@fasterthanlime@hachyderm.io

I hold many controversial opinions. For example, I think that a process segfaulting inside of a VM should not be able to take down the host.

Unfortunately, I use macOS. Where it can. And does. To my chagrin.

@halcy@icosahedron.website · Reply to halcy​ :icosahedron:

Mastodon.py version 2.2.0 is now out! 🦣🐍

There's a quite a few bug fixes (thank you to everyone who reported and/or fixed something), and support for 4.5 functionality: Quotes as well as async refreshing! Also quite a bit of additional testing, coverage is now above 90%.

As usual, please report any bugs you see, I should have the time to do quick fixes and maintenance release in the near future hopefully.

* Changelog: github.com/halcy/Mastodon.py/r
* Docs: mastodonpy.readthedocs.io/en/v
* PyPi: pypi.org/project/Mastodon.py/

pypi.org

Client Challenge