Mac ソフトウェアの配布作業が、私のコルチゾール値を上昇させています。

2026/05/09 23:40

Mac ソフトウェアの配布作業が、私のコルチゾール値を上昇させています。

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

2026-05-09 に、著者は AI コーディングプロファイル(例:Claude Code、DeepSeek、OpenRouter)を管理するための Go ベースのユーティリティ ccode をリリースしました。ccode.kronis.dev および Itch.io で利用でき、Linux、Windows、macOS 用のプリビルドバイナリが提供されており、0 ドルから支払う金額を選択できる方式(pay-what-you-want)で入手可能です。このツールはほとんどのプラットフォームで動作しますが、macOS 上での配布にはポリシー面および技術的な両方の障壁が存在します:Nextcloud を介して共有された場合でもダウンロードが隔離され、ターミナルからのオーバーライドが必要であり、Apple のコード署名義務により有料の Apple Developer プログラムへの登録(年間約 99 ドル)が必要です。著者は、販売ごとの純利益が約 25 ドル程度であることを推定しており、これはその手数料を概ね 3 ヶ月分賄うにとどまる持続可能性に欠けるビジネスモデルであると指摘しています。登録の摩擦はさらに悪化しており、MacBook のウェブカメラの性能が悪く、ID 文書の撮影に失敗し(Apple はネイティブフローにおいて接続された iPhone をカメラとして使用することを許可していない)、一方、SmartID アプリを iPhone に直接インストールして行うと当初は成功しましたが、デスクトップアプリが iPhone ベースでの成功した登録を認識できず、プロセスの再起動が必要となる不具合が存在します。著者は、この状況を SmartID や eParaksts のような効率的で低コストなヨーロッパシステムと比較し、Windows の署名代替手段は高額であるか、EU 個人を制限している(例:Certum は年間約 209 ユーロ、Azure Artifact Signing の基本プランは月額 8.54 ユーロだが、EU 個人による署名をブロック)と指摘し、コード署名環境が単一故障点に類似した Let's Encrypt の TLS 証明書発行以前のような状態であり、競合が極めて乏しい敵対的環境であると結論づけます。

本文

2026年5月9日

私は、Claude Code プロフィール(例えば、DeepSeek や特定の OpenRouter モデルなどと連携させて実行する場合など)の管理をもう少し容易にするための、シンプルな開発者向けユーティリティを作成しています。

追記: いよいよ最初のリリースを行いました。ご興味のある方は ccode.kronis.dev をチェックするか、あるいは Itch.io のページに直接アクセスして、プレビルドバイナリをダウンロード・購入するか、ソースコードを確認してください。これはあくまでシンプルなユーティリティであり、現時点ではまだ初期段階です(まずは無料で入手し、後から有用と感じたら支払うという方針でいます)が、現時点ではコードへの署名は行われていません。

このユーティリティは Go ランゲージで記述されており、Go のツールingk を利用すればさまざまなプラットフォーム向けのビルドを非常に簡単に実行できます。私は静的リンク済みの実行可能ファイルを作成しており、好きな場所に配置して配布することが可能です。リリースする前から、「これを配布するのはどれくらい簡単な作業なのか」を試してみるつもりでした。

このアプローチでは Linux ソフトウェアの配布にも同様に向き合えます(必要に応じて

chmod +x
を実行した後であれば)。 Windows ソフトウェアの配布については多少不便な面はありますが、
.exe
ファイルとして出力でき、SmartScreen が警告を表示する可能性はありますが、ポップアップから「詳細」を選択すれば問題なく起動します。

Mac ソフトウェアの配布について

macOS 向けにはこれほどうまく行きません。MacBook で確認すると以下のようなエラーが表示されます:

これはダウンロードされたソフトウェアに対する Apple のクオランティン(隔離)機能が作動している状態です。たとえ Nextcloud を通じて自分自身とファイルを共有していても、同様の問題が発生します。

技術的にはユーザーに手動でこの制限を解除してもらうことも可能ですが、ターミナルでの操作が必要です:

多くの開発者はそれを理解し、対応してくれるかもしれませんが、ユーザー体験としては決して良くないものであり、困惑する思いを抱く人も少なくありません。

それほど大した問題ではなさそうではないでしょうか?ただちに Apple Developer Program に登録して、実行ファイルを署名すればよいだけの話ではないのでしょうか?

金を払っても失敗

しかし、彼らが口座開設のために何百ドルも請求してくる姿を見ると話は変わります。

しかも年間サブスクリプションです……。私、キリストの兄弟者として(冗談めかしていますが)、Itch.io で「支払う額由企业自由」というモデルで 7 ドル程度の価格設定でリリースしようとしているのは、おそらくダウンロードされるのは十数人から二十数人がせいぜいという規模のものなのですよ。つまり、ほとんどの人は 0 ドルを選ぶでしょうし(Apple のような態度を取りたくないのであれば)、その状況下ではたとえ売上がそれなりにあっても、VAT と Itch.io の手数料を差し引くと手元に残るのはたかだか約 25 ドルくらいにしかなりません。それが私の生活費に充てられるのは約 3 ヶ月分です。彼らがこんな価格設定にする背景には、当然のことながら利益追求と、愛好家から門外不出にするための意図的な設計、そして「真剣なユーザー」だけを支給するという考え方がありそうですが、少し愚かのようにも思えます。まあいいや。すでに他のフリーランスの仕事で高価な MacBook を購入せざるを得なかったし、Windows や Linux では macOS/iOS アプリをコンパイルすることができないため、彼らは私に顔を殴り、唾を吐きかける行為としか思えません。

ここで得られる教訓は、「アプリ一つが家庭料理のように作れる」といった記事自体は素晴らしいが、公開ソフトをリリースしたいという経済的現実を無視している点です。もし monetization を追加するものの開発でない限り、赤字になります。デスクトップソフトウェアであれば Homebrew が存在しますが、それも「数ドルでも有料で提供したい」場合に対応できません(あるいは Itch.io のダウンロードページに

mac-homebrew-install-instructions.txt
というファイルを追加する必要があり、その場合は「支払う額由企业自由」というアプローチが不自然に感じられてしまいます)。

私が好ましくないのは、ソフトウェアやアプリ開発の経済構造が、パッケージ化されたもの(オープンソースではなくても、ソースコードは公開するものでも、バイナリを配布することを意図している場合)のリリースにはコストがかかる方向へと押し進めてしまっている点です。ただし、この代償として「スパム対策」といった別の問題も生じることは認めざるを得ません。

さて、実際に署名承認のためのプロセスに移ると、ID の確認を求めるのは理解できます。問題は MacBook で ID を撮影する際、MacBook 搭載のウェブカメラが機能しないことです。M1 MacBook Air は確かに年々陳腐化しつつありますが、どんな照明条件を試しても、書類を適切に撮影することはできませんでした。彼らが「iPhone が同じローカルネットワークにつながっているから、それをカメラとして使用しませんか?」のような選択肢を提供してくれていればいいのですが、結局 10 回程度試してみましたが、以下のような結果しか得られませんでした:

やがて内蔵カメラではうまく行かないと悟って、メインのウェブカメラを使ったところようやく成功しました:

なぜ彼らは単に書類のスキャン画像をアップロードするよう許可してくれないのか、私にはさっぱり理解できません。理由はいくつか想像できるかもしれませんが、自分の ID を偽造するよりもまだマシかもしれませんし、小さな食卓の上にこんな撮影セットを並べる必要はないはずです。最も不満を抱えている様子を映した写真です:

それでも不十分だったのは、当然のことながらそのカメラは近接撮影用にオートフォーカス機能を持たないためです。それに、2 回目の失敗あたりから「汎用エラー」が出てしまい、毎回署名申請手続きを最初からやり直す羽目になりました:

幸いにも iPhone へのアプリインストールも成功し、そこでようやく問題が解決しました。iPhone の場合は一度目で完了しましたが、iPhone や高級ウェブカメラを持っていない人にとっては非常に不便であり、さらに資金を投じるしかない状況に追い込まれます。支払いも問題なく通じ、すぐに開発者アカウントの有効化が確認できました。

しかし、もちろんそれはそれで失敗でした。アプリから「メールが届くまでお待ちください」と促されました(実際にはすでに届いていたような気がしますが):

そしてデスクトップ版アプリは完全に無視して、「再度手続きを開始してください」と表示し、私が既に同じアカウントにログインしているにもかかわらず再申請を求めます:

これはおそらく eventual consistency の問題やバックグラウンドプロセスのせいかもしれませんが、非常にイライラしており、一言で言えば「馬鹿だ」としか言いようがありません。

Apple は少し困っている

Apple はハードウェアの品質も高く、M シリーズチップは私にとってほぼ完璧なノートブックを提供してくれたと思っています。高仕様のモデルを使える人もいればいない人もいるでしょうが、素晴らしいメイン開発機としても機能します。私は iPhone SE 2022 も確かに楽しみでしたが、予算シリーズを完全に廃止(e シリーズでは価格が高騰し)、サイドボタンからのサイレントモード切り替えや Touch ID を削除したことを知った時点で幻滅しました。それだけでなく、3.5mmジャックの撤去などもあります。これらを考慮すると、次のスマホは再び Android に戻るべきかもしれないとさえ思っています。

OS の動作を自分の好みにカスタマイズするために AutoRaise や Rectangle といったサードパーティ製ツールを必要とするのは我慢できますし、マルチモニター環境でのウィンドウフォーカスや AutoRaise の過敏さなども許容範囲です。なぜなら少なくとも開発者はユーザー体験を向上させようとしているからです。キーボードショートカットの奇妙さや、Finder における「Cut」機能の欠如も、また問題外ではありません。コントロール/コマンドボタンの配置の奇怪さや、リモートデスクトップソフトで動作しないことも、8GB の RAM を搭載した MacBook を購入して私の開発環境を制限していることさえも、ある程度は割り切ることができます。

しかし、アプリを開発するためにユーザーエコシステムにロックインされ、その代償として高額な手数料を支払ってもソフトウェアを署名し、クオランティン化を回避しようとしても認められず、さらに経済的に困窮している私に対して書類の提出も拒否し、MacBook のウェブカメラが十分な画質を提供しないために iPhone という高価かつ誰もが持っているわけではなくても必要なアプリを強制され、それでも申請完了後に表示されないという状況。

どうやら Apple は、ユーザーをプラットフォームに縛り付け、高額な費用を請求しながらも開発者としての権利を守ろうとしない存在であるように思えます。これは極めて不合理です。Apple、許さんよ、あなたの呪われたエコシステム。これがダメだ。

より健全な世界

エネルギー飲料を買う際に ID を認証するには SmartID を使えば、約 20 秒で完了します。 書類を電子署名するには eParaksts を使えば、PC にカードリーダーをつないで政府発行の ID カードを読み込ませるだけでも、スマホアプリでも可能です。これにより EDOTC コンテナ(ASIC-E)や PDF ファイルに直接 криптограф的な署名を追加できます。

おそらく他の国でも同様のサービスが多数存在しているでしょう。ID 認証・年齢確認、文書の電子署名、その他デジタルサービスの提供などです。すべて完璧ではないことは承知していますが、クレジットカードマフィアによる世界支払いインフラの支配という問題もあるとはいえ、少なくとも私の体験よりもはるかに優れた仕組みを作ることは十分に可能だと思えます。

数億ドルの企業が開発したサービスに比べて、バルト諸国の柔軟なソフトウェアパッケージの方が優秀であるのは愚かなことです。

更新

Apple だけが問題ではありません。Windows のコード署名を扱う Certum を見ても、毎年約 209 ユーロという高価格設定であり、まだ「安価」と称しているにも関わらずです。彼らを特別に批判する意図はありませんが、より低いコストで提供している他社と比較しても、多くの他社の方がさらに不合理であることは明らかです。一体どうなっているのでしょうか?

Azure Artifact Signing を見てみると、基本プランは月額 8.54 ユーロで、少なくとも「課金高騰」に対する挑戦者と見なせるほどに安価ですが、Azure アカウントを設定すると、「EU 居住者は個人ではコード署名ができない」「欧州市の組織のみが対応可能」という条件があり、失望しました。

これは TLS 証明書の取得において Let's Encrypt が登場する以前と同じような問題です。代替手段や競合業者が少ないため、単一の障害点が形成されやすく、また将来的に価格引き上げが行われるとインターネット全体の運用が麻痺するリスクがあります。

少しオーバーリアクションだったのではないかとも思いましたが、Apple の入会プロセスの煩雑さやユーザーへの対応の不備といった問題だけでは済まされないほどの深刻な状況であることを認識しました。むしろ、コード署名市場全体が過大価格設定されているべきでしょう。「反対意見もある」という議論に対し、「TLS 証明書は年間 100 ユーロ必要だがワイルドカード機能が付いていないからだよ」のような同じ手の内を暴かれるだけの話です。

自分の政府発行の ID カードを使ってコードを署名してしまえばよいのに、本当に困ります。

同じ日のほかのニュース

一覧に戻る →

2026/05/09 21:00

スイス・インターネット・アーカイブ

## Japanese Translation: インターネット・アーカイブは、デジタル保存とすべての知識への普遍的アクセスというミッションを設立者ブルースター・カールが 30 年前に定めた、独立した非営利財団としてスイスのセント・ガレンに本部を置く「Internet Archive Switzerland」を立ち上げました。このハブは、カナダやヨーロッパなどを含むグローバルネットワーク内で活動し、セント・ガレンに千年以上の学術的アーカイビングとイノベーションの伝統を持つことを活用して、レジリエントな地域図書館を創出します。初期の取り組みでは、危機にあるグローバルなアーカイブを保存すること、および現在の生成 AI の波に関連するデジタルコンテンツを収集することに注力します。重要なパートナーシップとして、ダミアン・ボース教授を率いるセント・ガレン大学工学部のコンピューターサイエンス学科との連携により、急速に進化する AI モデル向けの基準を確立する専門的な「Gen AI Archive」を設立します。これらの取り組みはさらに発展し、2026 年 11 月にパリで開催予定のユネスコ会議において、危機にあるアーカイブに対する保護方法について議論される予定です。実行責任者であるローマン・グリースフェルダー氏は、セント・ガレンが文化遺産に関して「安定性とイノベーションは両輪」と述べ、ユニークに安定性とイノベーションのバランスを維持していると指摘します。新しい財団は、より広範なグローバル使命に奉仕する地元のデジタル歴史保存にとって強力な先例を設定します。詳細は https://internetarchive.ch/ でアクセス可能です。 ## Text to translate: The Internet Archive has launched Internet Archive Switzerland, a new independent non-profit foundation based in St. Gallen dedicated to digital preservation and universal access to all knowledge—a mission established by founder Brewster Kahle 30 years ago. Operating within a global network that includes Internet Archive Canada and Europe, this hub leverages St. Gallen's thousand-year tradition of scholarly archiving and innovation to create a resilient regional library. Initial work will focus on saving endangered global archives and collecting digital content related to the current generative AI wave. A key partnership with the University of St. Gallen's School of Computer Science, led by Professor Damian Borth, will establish a specialized Gen AI Archive to set standards for rapidly evolving AI models. These efforts will be further explored at a UNESCO conference in November 2026 in Paris regarding protection methods for endangered archives. Executive Director Roman Griesfelder notes that St. Gallen uniquely balances stability with innovation, stating, "stability and innovation go hand in hand" regarding cultural heritage. The new foundation sets a powerful precedent for local digital history preservation serving a broader global mission, accessible at https://internetarchive.ch/.

2026/05/10 2:52

Show HN: Go で作成した、Clojure に似た言語を公開します。起動までの時間はわずか 7 ミリ秒です。

## Japanese Translation: Let-go は、Clojure に類似する言語のために設計されたバイトコードコンパイラおよび仮想マシンであり、同ファミリー内で最小で最も起動が速い選択肢を目指しています。コードを外部インフラストラクチャなしで動作するスタンドアロンのバイナリまたは WebAssembly アプリケーションに直接コンパイルします。主要なパフォーマンス指標には、約 10MB のバイナリサイズ、約 6-7ms のコールドスタート、低いアイドルメモリ使用量(約 14MB)が含まれ、これにより Babashka、GraalVM native、Joker、標準的な JVM 環境と比較して著しく小さく高速化しています。 このツールは、`core`、`core.async`、HTTP、JSON などのほぼすべてのコア Clojure ライブラリ(マクロ、プロトコル、トランスデューサー、永続データ構造など)をサポートし、標準的な `clojure-test-suite` の 95.4% を通過する強力な互換性を提供します。`core.async` チャンネル、HTTP サーバー、JSON/Transit、IO、およびバイナリプロトコル経由の Babashka pod の読み込み(データベース、AWS、Docker など)を含む「ボックスセット」機能をサポートしています。高度な機能としては、Go との相互運用性があり、Go アプリケーションへの埋め込みをサポートし、機能マッピングと双方向の呼び出しを可能にします。 展開オプションは柔軟です:ユーザーは Homebrew または Go モジュールを使用して自己完結型のバイナリを作成したり、ターミナルエミュレーションを含むブラウザ実行のための WebAssembly にコンパイルしたり、Emacs、VS Code、Neovim などのリッチなエディタサポートのための nREPL サーバーを利用できます。非常に効率的ですが、標準的な Clojure/Java ランタイムに見られる特定の機能(Refs/STM は atoms+channels で置き換えられ、Spec、`deftype`、読み込みタグ付きリテラル `#inst` など)は除外されています。 ## Text to translate: ## Summary: Let-go is a bytecode compiler and virtual machine for a language resembling Clojure, designed to be the smallest and fastest-starting option in the family. It compiles code directly into standalone binaries or WebAssembly applications that require no external infrastructure to run. Key performance metrics include a ~10MB binary with approximately 6-7ms cold starts and low idle memory usage (~14MB), making it significantly smaller and faster than alternatives like Babashka, GraalVM native, Joker, and standard JVM environments. The tool offers robust compatibility by supporting nearly all core Clojure libraries (including `core`, `core.async`, HTTP, JSON) and features like macros, protocols, transducers, and persistent data structures, passing 95.4% of the standard `clojure-test-suite`. It enables "batteries included" functionality with support for `core.async` channels, HTTP servers, JSON/Transit, IO, and Babashka pod loading (e.g., databases, AWS, Docker) over a binary protocol. Advanced features include Go interop, allowing embedding in Go apps with feature mapping and bidirectional calls. Deployment options are flexible: users can create self-contained binaries via Homebrew or Go modules, compile to WebAssembly for browser execution with terminal emulation, and utilize an nREPL server for rich editor support (Emacs, VS Code, Neovim). While highly efficient, it excludes certain features found in standard Clojure/Java runtimes, such as Refs/STM (replaced by atoms+channels), Spec, `deftype`, and reader tagged literals like `#inst`.

2026/05/10 6:46

リスト風の Rust

## Japanese Translation: RLisp は、Rust のパフォーマンスと安全性を享受しつつ、LISP の S 式構文の可読性をもたらすための独自のソリューションを提供します。`rustc` を介して直接ネイティブバイナリにコンパイルされるため、ランタイム環境やガーベジコレクターの使用は不要となり、所有権、借用、ライフタイム、ジェネリック、トレイト、パターンマッチングなど、Rust のコア機能を完全にサポートしています。インストールは簡単で、GitHub リポジトリをクローン(`git clone https://github.com/ThatXliner/rlisp.git`)し、`cargo install --path .` を実行するだけです。このツールには、LISP ファイルを変数化するためのコマンドラインユーティリティ(`rlisp compile`)、ビルド(`rlisp build`)、実行(`rlisp run`)が組み込まれています。開発者は非対応の機能のために生の Rust コードをそのまま使用するために `(rust "...")` フォームを採用でき、マクロは Runt のプロシージャルマクロに依存せず、`(quasiquote)`、`(unquote)`、`(unquote-splicing)` などの慣れ親しんだ LISP 構造体を利用してコンパイル時の変換を実行できます。`&rest` でキャプチャされた可変引数は `unquote-splicing` を使用してマクロ出力に平坦化できます。言語は `(while ...)`、`(loop ...)`、`(for ...)` などを含む標準制御構造と解像度付きイテレータをサポートし、型注釈を受け取る typed クロージャ(例:`((x i32) (y i32)) -> i32`)および引数を明示的に移動するための `move` キーワードを提供します。可視性修飾子は Rust の慣習に従います(`pub`、`pub(crate)`、`pub(super)`)。このプロジェクトは MIT ライセンスでリリースされており、マクロ開発を簡素化し、バランスの取れた括弧の構造的編集を可能にし、Rust セマンティクスを低い構文障壁で提供することを目的としています。