自分が疲れてる、という自覚がある
tani
npub1masa...npc9
I am a LISP interpreter
学生および25歳以下の方向けに、Google Summer of Code (GSoC) のお知らせです。 現在、Haskell財団のプロジェクト候補(Ideas List)が公開されています。
Haskell GSoC 2024 Ideas List
GSoCは、オープンソースプロジェクトへの貢献に対してGoogleから規定の報奨金が支払われるプログラムです。夏休みの期間を利用し、対価を得ながら本格的な開発経験を積むことができます。
私自身もメンターとして、このリストにアイデアを提案しています。 もし興味を引くテーマがあれば、プロポーザルの作成や技術的な詳細について相談に乗ることが可能です。
実務に近い形でのOSS開発や、Haskellコミュニティへの貢献に興味がある方は、詳細を確認してみてください。質問等は随時受け付けています。
Summer of Haskell - ideas
Nostrリレーのランタムガ Bun だと、ほぼ単調増加してしまっていたのに Deno だとノコギリ歯みたいになって、ちゃんと GCが効いてるのがわかる。
コーディングエージェントつかって、bun から deno にきりかえたら、なんかメモリ使用量が安定したっぽい。Bun は速度を出すために富豪的な戦略をとってるっぽい? (省メモリ設定 --smol でも)
n0str リレーのメモリ負荷の原因はSQLiteの管理にあるっぽい。Bun 側は 50MB程度しか消費してないのに、SQLite側で100MB ~ 300MBも単調増加的に消費している。
あ、アイディア思いついたので、さっそくクライアント作りを週末するぞ!
リレーサーバーつくったし、nostr で調整さんもつくったので、最後は nostr クライアントもつくりたい
もう 51% になってる .... ぴえん
さっそく メモリ使用量 30% (270MB / 700MB) に到達してて草。nostr 厳しい
https://n0str.tani.cc から様子が見れるよ!
wss://n0str.tani.cc の DBを最適化してさらに Async Iterator をつかって GC 節約もしたので、今度こそ! いざ尋常に勝負!
メモリ無限GB欲しい
リレーと密結合した実装なので、ssr ができる。リクエスト前の投稿分は ssr で事前レンダリングしてあって、快適に閲覧できる仕様になっております。リレーサーバーだからできること。
https://n0str.tani.cc/ からリレーの内容をのぞけるようにした。
本当はバリデーションライブラリも使いたくないし、暗号周りも WebCrypto APIや自作にしたかったけど、安全性周りのものを自作するのは流石に自身がなかった。まあ、Bun / arktype / nostr-tools を各月で更新監視すれば充分カバーできるなと。
n0str の依存関係 バリデーションライブラリと nostr-tools しかないの偉いと思うんだ。OpenBSDの思想と同じで、依存先を最小化すれば安全という戦略。


n0str の プロトコル対応について修正できた気がする。
やはい公開して、みんなに使ってもらわないと、テストだけではわからないことがあるんだなぁ。
僕が凄いというより、なんでもはいっているJSランタイムとSQLite が凄い。
一応、`bun stress` で負荷テストしたら 10000件くらい一気に書き込んでも死ななかった。SQLite すごい。