평소에 함수형 언어 매니아들이 주장하는만큼 이펙트를 엄격하게 구분하는게 중요하다곤 생각안했는데, local first 앱을 만들다가 네트워크 요청을 포함한 IO와 그렇지 않은 IO를 구분해야하는 이유를 찾았다. 앱의 초기화 로직에 네트워크 요청이 숨어있으면 API 서버 장애시 앱이 아예 안켜지는 문제가 있다. 방금 이거랑 관련된 버그 찾느라 시간을 많이 썼다.

洪 民憙 (Hong Minhee)
@hongminhee@hackers.pub · 605 following · 404 followers
Hi, I'm who's behind Fedify, Hollo, BotKit, and this website, Hackers' Pub!
Fedify, Hollo, BotKit, 그리고 보고 계신 이 사이트 Hackers' Pub을 만들고 있습니다.
Website
- hongminhee.org
GitHub
- @dahlia
Hollo
- @hongminhee@hollo.social
DEV
- @hongminhee
velog
- @hongminhee
Qiita
- @hongminhee
Zenn
- @hongminhee
Matrix
- @hongminhee:matrix.org
X
- @hongminhee
👀 noted: quick look at what Deno are cooking https://dbushell.com/notes/2025-06-07T07:01Z/
적절한 타이밍
We're excited to announce the release of #Fedify 1.6.1, which marks the beginning of the 1.6 series following the retraction of version 1.6.0. This release introduces significant new capabilities that expand Fedify's deployment options and enhance security compatibility across the #fediverse.
🌐 Cloudflare Workers support
Fedify 1.6 introduces first-class support for Cloudflare Workers, enabling #serverless deployment of #ActivityPub applications at the edge.
New components
WorkersKvStore
: A key–value store implementation using Cloudflare's KV API for persistent storage in Workers environmentsWorkersMessageQueue
: A message queue implementation leveraging Cloudflare Queues for reliable message processing
Key features
- Seamless integration with #Cloudflare's serverless runtime
- Automatic handling of queue message processing through Workers'
queue()
method - Support for Node.js compatibility flag required for Fedify's cryptographic operations
- Manual queue processing via
Federation.processQueuedTask()
method
For a complete working example, see the Cloudflare Workers example in the Fedify repository.
🏗️ Federation builder pattern
Fedify 1.6 introduces the FederationBuilder
class and createFederationBuilder()
function to support deferred federation instantiation. This pattern provides several benefits:
- Deferred instantiation: Set up dispatchers and listeners before creating the federation object
- Better code organization: Avoid circular dependencies and improve project structure
- Cloudflare #Workers compatibility: Accommodates binding-based architectures where resources are passed as arguments rather than globals
- Modular setup: Build complex federations piece by piece before instantiation
The builder pattern is particularly useful for large applications and environments like Cloudflare Workers where configuration data is only available at runtime.
🔐 HTTP Message Signatures (RFC 9421)
Fedify 1.6 implements the official HTTP Message Signatures standard (RFC 9421) specification, the final revision of the HTTP Signatures specification.
Double-knocking mechanism
To ensure maximum compatibility across the fediverse, Fedify 1.6 introduces an intelligent double-knocking mechanism:
- Primary attempt: RFC 9421 (HTTP Message Signatures) for modern implementations
- Fallback: Draft cavage version for legacy compatibility
- Adaptive caching: The system remembers which version each server supports to optimize future requests
This approach ensures seamless communication with both modern and legacy ActivityPub implementations while positioning Fedify at the forefront of security standards.
Interoperability testing
The RFC 9421 implementation has been thoroughly tested for interoperability with existing ActivityPub implementations that support RFC 9421 signature verification:
- Mitra 4.4.0: Successfully verified Fedify-generated RFC 9421 signatures
- Mastodon 4.4.0 development version: Tested RFC 9421 signature verification against Fedify's implementation (refer to Mastodon PR #34814, though Mastodon 4.4.0 has not yet been released)
These tests confirm that other ActivityPub implementations can successfully verify RFC 9421 signatures generated by Fedify, ensuring proper federation as the ecosystem gradually adopts the official specification. While these implementations currently support verification of RFC 9421 signatures, they do not yet generate RFC 9421 signatures themselves—making Fedify one of the first ActivityPub implementations to support both generation and verification of the modern standard.
🔍 WebFinger enhancements
Dedicated WebFinger lookup
The new Context.lookupWebFinger()
method provides direct access to WebFinger data, offering developers more granular control over account discovery and resource resolution beyond the higher-level Context.lookupObject()
method.
🛠 Context API improvements
Context data replacement
The new Context.clone()
method enables dynamic context data replacement, providing greater flexibility in request processing and data flow management. This is particularly useful for middleware implementations and complex request routing scenarios.
🚀 Migration considerations
Backward compatibility
Fedify 1.6 maintains full backward compatibility with existing applications. The new HTTP Message Signatures and double-knocking mechanisms work transparently without requiring any code changes.
Node.js version requirement
Important: Fedify 1.6 requires Node.js 22.0.0 or later for Node.js environments. This change does not affect applications using Deno or Bun runtimes. If you're currently using Node.js, please ensure your environment meets this requirement before upgrading.
New deployment options
For new deployments, consider leveraging Cloudflare Workers support for:
- Global edge deployment with low latency
- Serverless scaling and automatic resource management
- Integration with Cloudflare's ecosystem of services
🎯 Looking forward
Fedify 1.6 represents a significant expansion of deployment possibilities while maintaining the framework's commitment to broad compatibility across the fediverse. The addition of Cloudflare Workers support opens new architectural patterns for federated applications, while the RFC 9421 implementation ensures Fedify stays current with emerging ActivityPub security standards.
For detailed migration guides, API documentation, and examples, please visit the Fedify documentation. Join our community on Matrix or Discord for support and discussions.
#fedidev #RFC9421 #HTTPSignatures #HTTPMessageSignatures #CloudflareWorkers
TIL the distinction between
$ cat << EOF
and
$ cat << 'EOF'
and… dang. Shell syntax sure is… something
if you ever have to write shell scripts, please, please run https://www.shellcheck.net over them before running them
Gemini-2.5-pro-preview-06-05
------------------------------
- 정식 출시전에 최신 *Gemini 2.5 Pro* 의 미리보기 버전이 이용 가능해짐
- LMArena, WebDevArena 등 주요 평가에서 기존 모델 대비 *24~35점 Elo 상승*
- *코딩, 과학, 수학, 멀티모달 이해, 장문 컨텍스트 처리 등 주요 벤치마크에서 최상위 성능* 을 기록
- 입력 가격 $1.25, 출력 가격 $10(백만 토큰…
------------------------------
https://news.hada.io/topic?id=21317&utm_source=googlechat&utm_medium=bot&utm_campaign=1834
Did you know? #Fedify provides #documentation optimized for LLMs through the llms.txt standard.
Available endpoints:
- https://fedify.dev/llms.txt — Core documentation overview
- https://fedify.dev/llms-full.txt — Complete documentation dump
Useful for training #AI assistants on #ActivityPub/#fediverse development, building documentation chatbots, or #LLM-powered dev tools.
와, 대박.... 해커스펍 초대링크 구현 엄청 아름답게 되었음...
tauri를 좀 써보니 진짜 약간의 레이어만 있으면 바로 웹서비스로도 만들 수 있을 것 같은데... 그 약간이 문제겠지...
React만 쓰다가 solidjs를 시도 해봤는데, 홍보하고 있는 장점을 전혀 못 느끼고 있다. 물론 solidjs자체의 문제는 아닌 것 같고, 같이 쓰는 라이브러리의 문제인 것 같다. 일단 Router의 Context Provider와 Route 정의 트리의 시작이 분리가 안되어있고, 부분 경로 별로 레이아웃을 가지는 형태로 작성이 어려운 것 같다. 그리고 A 요소도 어째 동작을 안하게 되었는데 무엇이 문제인지 모르겠다. 디자인 작성이 싫어서 SUID - MUI (react material design)의 solidjs포트 - 를 썼는데 어째서인지 안쓰는 모듈까지 잔뜩 로드하느라 첫 렌더가 너무 느리다.
Even with close confirmation I sometimes close my terminal and think "OH FUCK NO." Coming soon to Ghostty, you can undo that. 🥰 (Technical details: we keep the terminal running for a configurable time in the background before terminating for real, similar to email undo send).
(macOS only for now, AppKit APIs provide a nice undo manager implementation that eases this quite a bit. I still have to do research on GTK for Linux.)
Exciting news for the #Hollo project! We're thrilled to announce that Emelia Smith (@thisismissemEmelia 👸🏻) has joined as a co-maintainer alongside Hong Minhee (
@hongminhee洪 民憙 (Hong Minhee)).
Emelia brings extensive experience in the #fediverse ecosystem, having been a long-time contributor to Mastodon and a leading expert in trust & safety tooling for decentralized social networks. She's dedicated years to improving moderation systems and security across #ActivityPub platforms.
Her recent contributions to Hollo have been substantial—implementing the reporting/flagging system and making significant improvements to OAuth and security features. These valuable contributions naturally led to her joining as a co-maintainer.
This collaboration marks an important milestone for Hollo as we continue building better single-user microblogging software for the fediverse. Welcome aboard, Emelia! 🚀
Microsoft really doesn't like RC4 encryption apparently 😆
참고로 파이콘 다른 커뮤니티 후원사는 여기 있습니다.
몰랐는데 해커스팝 파이콘 공식 커뮤니티 후원사 됬구나...??
いつかHolloに独自のフロントエンドを実装したいんだけど、どのフレームワークを使うか迷ってる。SvelteかSolidのどちらかに成りそうだけど…とりあえずReactは使いたくないんだよね。
Looks like Deno DeployEA no longer supports cron and queues. It was a great feature in Deno Deploy—what a shame.
슈티를 페디버스에 연동하기 전에 UI 만드는 중인데 사실상 인스타 클론코딩이라서 좀 현타가 오고있다ㅋㅋ
유려한 애니메이션과 화면 전환을 갖춘 앱을 만들려면 실행중에 요소의 크기를 측정하는 등의 동작이 필수란걸 점점 깨닫고 있다. 또는, 정적으로 레이아웃 정보를 미리 알수있는 방법이 있다면 더 좋겠다만.
시스템과 설계에 대한 짧은 생각들을 정리해 내 행동강령으로 삼기로 했다. https://github.com/notJoon/menifesto
Hackers' Pub and hollo.social are the instances currently serving as testbeds for #Fedify. 😂
Vitest 3.2 is out!
- New Annotations API
- Scoped Fixtures
- Custom Browser Locators API
- Test Signal
- Better V8 Coverage Result
And many more features!
타임라인이 조금 더 중간으로 왔으면 좋겠다. 지금은 전체적으로 레이아웃이 좌편향 왼쪽으로 치우쳐 있는데 이미지 목록은 한가운데에 있고 그래서 조금 어색한 느낌...
m-auto
가 제일 바깥쪽 컨테이너에는 달려있는데 타임라인 안쪽에는 조치가 안 돼 있어서, 탭 메뉴 너비 따라 넓어지는 느낌...
대학생때 친구(컴알못)가 노트북 견적 짜달라고 한적이 있는데, 성능 상관없고 최대한 싸게만 해달라고 했다. 그래서 운영체제 미포함 기기에 우분투 깔아서 30만원으로 맞춰줬다. 우분투를 영업하려는 의도는 전혀 없었고 싸게 해달라는 요구를 최대한 맞춘 결과였다. 걔가 그때 형편이 안 좋아서 한푼이라도 아끼는게 중요했고, 나는 나름 목적을 달성했다는 것에 뿌듯해했다. 리브레 오피스 깔아주면서 한글, 엑셀 대신에 이거 쓰면 된다고 설명했던 기억이 난다.
그리고 이 일을 까맣게 잊고 살다가 1년후 쯤에 그 친구를 다시 만났는데, 보자마자 반응이
https://issue.daum.net/election/2025 이번 대선 통해 처음 알았는데 다음 뉴스 포털 전체에서 Svelte 쓰나 보네...
#Hollo 0.6.0 is coming soon!
We're putting the finishing touches on our biggest security and feature update yet. Here's what's coming:
Enhanced #OAuth #security
- RFC 8414 (OAuth metadata discovery)
- RFC 7636 (#PKCE support)
- Improved authorization flows following RFC 9700 best practices
New features
- Extended character limit (4K → 10K)
- Code syntax highlighting
- Customizable profile themes
- EXIF metadata stripping for privacy
Important notes for update
- Node.js 24+ required
- Updated environment variables for asset storage
- Stronger
SECRET_KEY
requirements (44+ chars)
Special thanks to @thisismissemEmelia 👸🏻 for the extensive OAuth improvements that help keep the #fediverse secure and compatible! 🙏
Full changelog and upgrade guide coming with the release.
さて、自分の言葉で書き直すか。
MastodonやMisskeyは、Githubなどのオンライン上の開発支援システム上にプログラムのソースコードを置いて、
最初に作った開発者や、プロジェクトの権限を与えられたコア開発者を中心に、
みんなで問題点を洗い出して議論し(issue)、プログラムの追加や変更を提案して皆で検証・検討し(pull request)、問題が無くなったら承認を得てプログラムに反映(merge)し、一定の基準を満たしたら、みんなに使って貰うものにタグ付けしてリリースします。
集団での開発は、提起された課題や追加・変更の提案を何でも取り込めばよいというものではなく、
プロジェクトの目指しているものに合致していて必要なものであるかを判断し、それが与える影響を理解し、その追加・変更を引き受けたら継続的にメンテナンスが必要となるため慎重に検討・吟味し、
でもそれってすごく大変なので、コミュニティに参加するみんなが負担できる範囲で受け入れています。
たとえば、ソースコード全体にわたって内容を書き換えるような変更は、よほど有意義なものでなければテストや検証が難しく受け入れるのは困難です。
せっかく体制はオープンでも、みんなの要望に対応しきれなくて閉じてしまうプロジェクトもあります。
そしてそこに、AIがプログラムコードの追加・修正を提案できる時代がやってきました。
これまでも、いろんな補助ツールを使って、自動でテストし、記述のバラツキやミスを修正するツールを使ってはきたのですが、それはそれぞれの開発者が、自分の責任のもとで、内容を理解し、それが与える影響・コミュニティへの負担をわかった上でプロジェクトに提案してきたわけですが、
AIを使った追加・修正の提案が可能になったことをきっかけに、上記の人間が引き受けていた判断やリスペクトを飛び越え、そうした判断力や力量、責任を持たない人が、安易に大量にリクエストするようになってしまっています。
AIによる開発が有用であることは重々承知しているので、多くのプロジェクトで、上手に利用していきたいとは考えているのですが、
この安易な参加者によって、コミュニティ開発を維持していくのが難しい状況が発生しているのです。
そのあたりのことを(あえてAIに)まとめてもらったのが、先の記事です。
https://hackers.pub/@noellabo/2025/ai生成フルリクエストか引き起こす開発コミュニティの課題と対応策 [参照]
AI生成プルリクエストが引き起こす開発コミュニティの課題と対応策
本記事では、AI生成プルリクエスト(PR)がGitHub上の開発コミュニティにもたらす課題と、その対応策について解説します。AIが生成した低品質なPRがスパムのように送信されることで、メンテナンスコストの増大やコミュニティリソースの浪費が発生しています。この問題に対し、GitHubはAI駆動のフィルタリングシステムを導入し、プロジェクト側もPRの自動トリアージツールや自動テストの強化を進めています。また、主要プロジェクトではAI貢献ポリシーを明文化し、GitHubも新規アカウントのPR作成制限やAI-PRクォータ設定機能を提供するなど、企業・プラットフォームレベルでの対応も進んでいます。著作権問題や倫理ガイドラインの策定動向にも触れつつ、今後の技術的課題や次世代ソリューションを提示し、AIの創造性を活用しつつ持続可能な協働エコシステムを維持するための提言を行っています。
hackers.pub · Hackers' Pub
Link author: のえる@noellabo@hackers.pub
さて、自分の言葉で書き直すか。
MastodonやMisskeyは、Githubなどのオンライン上の開発支援システム上にプログラムのソースコードを置いて、
最初に作った開発者や、プロジェクトの権限を与えられたコア開発者を中心に、
みんなで問題点を洗い出して議論し(issue)、プログラムの追加や変更を提案して皆で検証・検討し(pull request)、問題が無くなったら承認を得てプログラムに反映(merge)し、一定の基準を満たしたら、みんなに使って貰うものにタグ付けしてリリースします。
集団での開発は、提起された課題や追加・変更の提案を何でも取り込めばよいというものではなく、
プロジェクトの目指しているものに合致していて必要なものであるかを判断し、それが与える影響を理解し、その追加・変更を引き受けたら継続的にメンテナンスが必要となるため慎重に検討・吟味し、
でもそれってすごく大変なので、コミュニティに参加するみんなが負担できる範囲で受け入れています。
たとえば、ソースコード全体にわたって内容を書き換えるような変更は、よほど有意義なものでなければテストや検証が難しく受け入れるのは困難です。
せっかく体制はオープンでも、みんなの要望に対応しきれなくて閉じてしまうプロジェクトもあります。
Hackers' Pubのアカウントが必要な方は、私が招待できます。気軽にDMでメールアドレスを教えてください。
Hackers' Pubに、perplexity(AI)に社会問題(開発コミュニティの課題)について詳しく調査するよう指示した結果の出力を載せておいたので、AI利用事例のサンプルとしてご覧下さい。 #AIレポート
私がperplexityに指示した問いかけは以下の内容です。
--
GithubにAIが生成したプルリクエストを送る事例が増えていて、開発コミュニティの負担が増大する事例が増えています。AIは独立した人格と責任を持つ自然人ではないため、そのリクエストを行った主体が、リクエストを行う意義と責任を担保し、開発コミュニティの負担(対応に要するコストや変更点に対して持続的にサポートすること)に対する理解を持ち、協力して開発するというモデルが成立しなくなってしまう問題に直面しています。これについて、これまで行われた有意義な議論と、提示されている解決策、あるいは実際に行っている対応について調べてください。
QT: https://hackers.pub/@noellabo/2025/ai生成フルリクエストか引き起こす開発コミュニティの課題と対応策 [参照]
洪 民憙 (Hong Minhee) shared the below article:
AI生成プルリクエストが引き起こす開発コミュニティの課題と対応策
のえる @noellabo@hackers.pub
本記事では、AI生成プルリクエスト(PR)がGitHub上の開発コミュニティにもたらす課題と、その対応策について解説します。AIが生成した低品質なPRがスパムのように送信されることで、メンテナンスコストの増大やコミュニティリソースの浪費が発生しています。この問題に対し、GitHubはAI駆動のフィルタリングシステムを導入し、プロジェクト側もPRの自動トリアージツールや自動テストの強化を進めています。また、主要プロジェクトではAI貢献ポリシーを明文化し、GitHubも新規アカウントのPR作成制限やAI-PRクォータ設定機能を提供するなど、企業・プラットフォームレベルでの対応も進んでいます。著作権問題や倫理ガイドラインの策定動向にも触れつつ、今後の技術的課題や次世代ソリューションを提示し、AIの創造性を活用しつつ持続可能な協働エコシステムを維持するための提言を行っています。
Read more →Progressive JSON
------------------------------
- *점진적 JPEG* 처럼, JSON 데이터도 불완전한 상태로 먼저 전송하여 클라이언트가 점차 내용 전체를 활용할 수 있는 방식 소개
- 기존 *JSON 파싱 방식* 은 전체 데이터가 완전히 수신되기 전까지 아무런 작업이 불가능한 비효율성 문제 있음
- *Breadth-first 방식* 으로 데이터를 여러 청크(부분)로 구분하여…
------------------------------
https://news.hada.io/topic?id=21226&utm_source=googlechat&utm_medium=bot&utm_campaign=1834
High Performance Networking in Google Chrome
https://www.igvita.com/posa/high-performance-networking-in-google-chrome/
읽어보면 좋은 내용이군. 타고타고 여기까지 왔는데, 여기는 오픈소스 프로젝트를 실제로 까보면서 케이스스터디하는 내용이라 재밌는 내용이 많음
갑작스럽지만 @jihyeokJihyeok Seo 님과 저는 오늘 (선거일) 튜링의 사과(
@TuringAppleDev튜링의 사과)에서 모각코를 할 예정입니다. 심심하신 분들은 함께해요!
#Fedify 1.6 is approaching with three major enhancements: RFC 9421 HTTP Message Signatures support with double-knocking for seamless backward compatibility, a new builder pattern for better code organization in large applications, and native #Cloudflare #Workers support for serverless deployments. These additions strengthen Fedify's standards compliance while expanding deployment flexibility across different environments. Stay tuned for the official release! 🚀
#ActivityPub #fedidev #fediverse #RFC9421 #CloudflareWorkers
Flicked through some local facebook groups & there's a bunch of people asking about coding schools because their previous jobs are no longer viable (e.g., work taken by AI, or lack of employment opportunities).
Perhaps the sadder part is that they probably don't realize these tech schools won't really help them land a job because practically no one is hiring junior staff, because of wanting experienced people or because those jobs can be done by AI.
洪 民憙 (Hong Minhee) shared the below article:
Fun with Federation: Lemmy edition

julian @julian@community.nodebb.org
<p>It all started <a href="https://community.nodebb.org/topic/18824/did-4.4.1-break-federation-with-lemmy-groups">with a report about federation breaking between Lemmy and NodeBB</a>. I was subconsciously aware that something was going on, but had chalked it up to network issues.</p> <p>Observed behaviour showed that some remote categories would be receiving content in spurts, with long gaps in between.</p> <p>I spent the next 3-4 days looking into it, but came up empty. Whatever was happening wasn't throwing any obvious errors, and along the way, I found what I <em>thought</em> was related (it was), but I wasn't sure why: against some Lemmy servers, the "follow"/"unfollow" mechanic would simply stop working, and this would often coincide with gaps in content. In some egregious cases, the flow of content stopped completely!</p> <p>Unable to make headway, I had to <a href="https://github.com/LemmyNet/lemmy/issues/5722" rel="nofollow ugc">reach out to the folks at Lemmy</a> to figure out what the issue was. NodeBB occasionally sends non-200 level responses depending on the activity. Specifically, the following scenarios:</p> <ul> <li>A remote user upvoting more than 20 posts in a single day (a spam prevention tactic) causing NodeBB to throw an error, which was caught and returned an <code>HTTP 500 Internal Server Error</code>.</li> <li>A <code>Dislike</code> activity, which is not currently handled by NodeBB. In these cases, NodeBB would send an <code>HTTP 501 Not Implemented</code></li> </ul> <p>When encountering either of these responses, Lemmy would return the activity back to the queue for later delivery and <strong>mark a delivery failure</strong>. If enough of these (~40) happened within 24 hours, Lemmy would give the instance a time-out and <em>pause delivery completely</em>.</p> <p>That was it — a quick pair of code updates later, and we started working through Lemmy's backlog of 4.1M activities.</p> <p>As of 4am this morning, <code>community.nodebb.org</code> is no longer behind <code>lemmy.world</code>.</p> <p><img src="https://community.nodebb.org/assets/uploads/files/1748873636999-d2b3dc1c-01f3-4203-b281-2406e949667d-image.png" alt="d2b3dc1c-01f3-4203-b281-2406e949667d-image.png" /></p> <p>Fun week. Let's not do that again LOL.</p> <p>v4.4.2 of NodeBB contains the updated logic for smoother Lemmy federation.</p>
Read more →예전에 게임 회사에서 상점 시스템(게임 머니로 아이템 구입/선물을 처리하는거)을 개발하는 팀에서 일한적이 있다. 그때도 퇴사하기 직전에 취약점을 발견했었는데, 다행히 외부인은 쓸수없고 직원만 쓸수있는 취약점이긴 했다. 상점 시스템이 게임 머니를 관리하는 시스템과, 실제로 아이템을 인벤토리에 넣는 시스템이 분리가 되있어서 생긴 문제였는데, 가령 잡템을 100원에 구입하는척하며 실제론 인벤토리에 전설의 무기가 들어가게끔 할수 있었다. 그러니까 MSA인데 각 서비스가 서로를 100% 신뢰하고 있어서 생긴 문제? 어떤 직원이 마음먹고 그런 짓을 했다면 본격적으로 abnormarly detection을 하지 않는이상 적발하기가 매우 어려웠을 것이다.
macOS에서 실행되는 RDP서버 구현체 입니다. 왜 이런 것을 만드냐고요? 그러게 말입니다... https://github.com/Perlmint/ARISU
GPL은 외부 릴리즈시 추가로 작성하거나 고친 소스 코드의 동일 조건 공개를 강제하는 특성으로 인해, 초기에 사회주의-공산주의라는 오해를 많이 받기는 했었음. 네가 썼다면, 네가 작성한 코드도 공개하라는 공유주의 라이센스니까.
그러나 그러한 공개 강제는 GPL을 일종의 플랫폼으로 만드는 효과 - GPL을 쓰면 GPL이고 아니면 처음부터 아니어야 함 - 가 있어서, 리눅스가 BSD를 제치고, 윈도와 유닉스를 넘어 인터넷과 세계의 커널이 되는 결정적 요인이 됩니다. 그리고 수많은 기업들이 이를 기반으로 자라나죠.
GPL은 자본주의 사회에서도 매우 훌륭하게 기능하고 있습니다. 이제 와서 GPL이 공산주의라고 하는 사람은 거의 없죠.
잘 모르는데 불안정한 라이브러리를 쓸때의 디버깅은, 코드의 일부를 disable하고 버그가 재현되는지 보고 맞으면 범위를 좁히고 이런식으로 무지성 이진탐색을 수행하는 식으로 하게된다. 전혀 모르는 라이브러리에 대해서도 쓸수있는게 장점이긴한데, 반대로 이런건 하고나서 배우는게 진짜 1도 없다.
Good news! We've officially added #Cloudflare #Workers support to the #Fedify roadmap. We've created a detailed issue to track our implementation plan: https://github.com/fedify-dev/fedify/issues/233.
The effort will be tackled in phases, including compatibility assessment, core adaptations for Workers' environment, KV store and message queue implementations, and finally integration with Cloudflare's ecosystem. This will be a substantial project that we'll break down into several sub-issues.
If you're interested in contributing to any specific aspect of Workers support, please comment on the main issue to coordinate efforts.
🎉 #Cloudflare #Workers support is now complete! After implementing the test infrastructure, core module, examples, and comprehensive documentation, #Fedify can now run on Cloudflare Workers.
What's included:
@fedify/fedify/x/cfworkers
module withWorkersKvStore
andWorkersMessageQueue
- Complete documentation covering Workers-specific patterns and constraints
- Working example deployed to production
- Integration with Cloudflare KV and Queues
Try it now: Available in the development release v1.6.1-dev.876+7b07d213:
- JSR: https://jsr.io/@fedify/fedify@1.6.1-dev.876+7b07d213
- npm: https://www.npmjs.com/package/@fedify/fedify/v/1.6.1-dev.876
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!
洪 民憙 (Hong Minhee) shared the below article:
ap-components
Evan Prodromou @evanprodromou@socialwebfoundation.org
I want to share some information about a repository we just published. ap-components is a set of Web Components for building interfaces for the ActivityPub API. I built it as I was making a sample application for handling the acct: URI scheme. I found myself making more and more components for the UI, and realised that they would probably be useful for other applications, too. The library is available on npm at @socialwebfoundation/ap-components. It currently covers some of the simplest […]
Read more →제가 지난 15년 정도 그렇게 살다가 결국 VS Code에 정착했답니다. 온갖 랭귀지 서버 세팅하는 게 너무나 귀찮은 나머지…
@hongminhee洪 民憙 (Hong Minhee) 저는 에디터 자주 바꿔온 편인데요. 사실 개발에서 코드를 조작하는 시간의 비중은 크지않고, 코드를 조작할때 생산성에 영향을 크게 주는건 에디터 기능이 아닌 인텔리센스라고 생각해서입니다. 즉 lsp 만세?
If you're interested in building your own #ActivityPub server but don't know where to start, I recommend checking out #Fedify's #tutorial Creating your own federated microblog. It provides a comprehensive, step-by-step guide that walks you through building a fully functional federated application. Perfect for developers who want to dive into the #fediverse!
ActivityPubサーバーを構築してみたいけれど、どこから始めればよいかわからない方には、Fedifyのチュートリアル『自分だけのフェディバースのマイクロブログを作ろう!』をおすすめします。包括的でステップバイステップのガイドで、完全に機能する連合型アプリケーションの構築方法を丁寧に解説しています。フェディバースに飛び込みたい開発者にぴったりです!