世界を動かす技術を、日本語で。

PRを提出できなかったので、雇われて自分で修正しました

2025年8月2日原文(skeptrune.com)

概要

  • Mintlifyの検索機能に長期間存在した レースコンディション の問題
  • Trieve創業者としても 体験品質 に悩まされた経緯
  • AbortController による根本的なバグ修正の実施
  • オープンソースの利点と 自己解決 の重要性
  • 小さな改善の積み重ねによる 製品価値 向上

Mintlifyの検索バグと修正体験

  • Mintlifyの検索機能に レースコンディション 発生
    • 入力途中で複数のクエリが同時発行される現象
    • 古いクエリの結果が表示され、 検索精度低下 を招く問題
  • Trieve創業者としての 複雑な立場
    • 自社プロダクトが30,000以上のドキュメントサイトで利用
    • ベンダー時代にSlackで問題を指摘するも、 優先度低下 で未解決
    • ユーザー体験の悪化が Trieveの評価 にも影響
  • チーム参加後、 AbortController で根本解決
    • デバウンスされた検索関数にAbortControllerを導入
    • 新しい検索時に前のリクエストを 即時中断
    • 現在の入力内容に 常に一致する検索結果 を保証
  • 問題解決の 達成感
    • 長年の悩みを自分の手で解消する満足感
    • George HotzのTwitterでの短期バグ修正エピソードに共感
    • ハッカー精神 と起業家マインドの両立を志向

オープンソースと自己解決力

  • オープンソースソフトウェアの 自己解決性
    • バグや不満点に遭遇した際、自ら 修正・貢献 できる利点
    • クローズドな環境では、 コードベースへのアクセス不可 で改善困難
    • オープンソースならPull Requestで 即時修正 可能
  • 各企業がクローズドを選ぶ ビジネス上の理由 も理解

小さな改善の積み重ね

  • Mintlifyの検索が より高速・快適 になった背景
    • 長年気になっていたバグを 自分で修正
    • 小さな改善の積み重ねが 伝説的なプロダクト を生む要因
    • 些細な問題ほど、 自ら解決する喜び が大きい

Hackerたちの意見

2022年にジョージ・ホッツがツイッターで過ごした伝説の一週間を思い出すな。彼はユーザーを悩ませていたログインポップアップを直すためだけに参加して、すぐに去っちゃったんだ。著者はこの、えっと、出来事を俺とは違う風に覚えてるみたいだな…ジョージ・ホッツは「ツイッターの検索を、怠け者の開発者より早く直せる」って大胆に主張してたけど、すぐに逃げ出しちゃった。傲慢だよ!去る時に、そのログインポップアップをちょっとした慰めとして取り除いたんだよね。

投稿を更新して、その話をもっと正確に伝えたよ。同時に、クソみたいなバグがあったからブログも削除しちゃったけど、まあ仕方ないね。

それから彼はイーロンに一から書き直す提案をしようとしてたんだ。

うん、何それ?彼はどうやらTwitterに参加して、何もせずに静かに去ったみたい。恥ずかしいし、完全に自業自得だね。

ちょっと時間が経っちゃったけど、GeoHotや特許トロール、そして今はcomma.aiについて調べてた。George HotzのComma.AIはめっちゃ面白そうだね。基本的には、OBD-IIコネクタ付きの$999の「comma 3x」スマホと、$99の配線ハーネスで、過去10年に製造された多くの車にテスラのオートパイロットに相当する機能を追加できるんだ。合計で$1098で、オープンソースでGitHubにもあるし、なんと車にSSHアクセスもできるんだって!オプションのクラウドサブスクリプションは、自分のSIMで月$10、セルラーデータ込みで月$24。残念ながら、テスラのセンチネルモードに相当する機能はまだないみたいだけど、これはちょっと残念だね。テスラのセンチネルモードは250Wの電力を使ってて、80kWhのバッテリーを80%から30%にするのに約7日かかるから(「.5*80kWhを7日で」= 238W)、openpilotはおそらく5W以下で済むから、いい代替手段になったかもしれないのに(「40kWh / 5W」は333日)。

昔のジョークが実際に現実で起こるのを見ると面白いね。すごい!メタな話だけど、サイトに左マージンを追加すること考えてみてくれない?画面の端から読むのがちょっと変な感じがするんだよね。

彼の記事のリンクをクリックしてたら、アップルでも同じことをした人を見つけたよ。彼は財布に追加された期限切れのパスを自動で削除する機能を導入して、すぐに辞めちゃったんだ。あの機能がこうやって生まれたなんて知らなかったけど、これからは飛行機を降りるたびに彼にちょっとした感謝を送ることにするよ。あれは本当にイライラしたから。

OPに雇われて、自分で直しちゃった方がいいんじゃない? ;)

メタ的な話だけど、サイトに左マージンを追加することを考えてみてくれない?画面の端から読むのはちょっと変な感じがする。え、何!?左寄せになってるのが好きなんだけど。それがテキストのあるべき姿だよ!

スクリーンのスペースを無駄にするサイトは好きじゃないな。

デバウンスされた検索機能にAbortControllerを追加したから、新しいクエリが作成されると前のクエリは中断されるようになったよ。これで、検索結果は常にユーザーが現在入力している内容に関連するものになる。アプリケーションが俺が何をするか言い終わる前に勝手に何かを始めるのが一番イライラすることの一つなんだ。設定が終わったって明示的に示さない限り自動で適用されるフィルターとか、入力中に常に再実行される検索とか。俺が止まるのを待ってくれ。

予約サイトでこれが嫌なんだよね。特にフィルターが左のサイドバーにあって、ビューポートに収まらない時。何かを変更するたびにスクロールが上に戻って、読み込みが始まって、フィルターが読み取り専用モードになっちゃう。次のフィルターを追加するためにそれが終わるまで待たなきゃいけないなんて…

Hacker Newsで議論の続きを見る