
2025/12/17 6:23
地下鉄でプログラムを書きます
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
Summary
著者は30分間のニューヨーク市地下鉄通勤時間を利用して、m68kアセンブラで動作するカスタムSBC上で低レベルの組み込みプロジェクトをプログラミングしています。電車にはモニターもキーボードも安定したインターネット接続もないため、作業はローカルでコードをコンパイルすることに限定されます。停車時の短時間だけWi‑Fiが利用できるので、小さな更新やドキュメントを取得できます。騒音環境と座席の欠如は集中力を保つのを難しくし、複雑な状態機械はノートにスケッチして忘れないようにしています。
セットアップは中古のThinkPad(eBayで購入)と著者のズボンに装着した分割キーボードで構成されており、ディスプレイとしてメガネ型スクリーンを使用する計画もあります。盗難リスクは低いと考えられており、駅レベルでの侵入と迅速な脱出が必要になるためです。
公共の場でコーディングすると好奇心旺盛な見知らぬ人との会話が生まれることもあり、著者はこの移動時間に systemd サービス、Nix パッケージ、またはハードウェア初期化タスクを構築することがあります。混雑した電車で座席を確保できるかどうかが最大の制限です。
著者は他人にも「地下鉄コーディング」を試してみるよう勧めており、これは通勤以外でも役立つ分散注意力に対するレジリエンスを養う手段だと述べています。
本文
夜中の電車で、カスタムSBC用にm68kアセンブリを書いている――写真はぼやけているのでご容赦ください!
ニューヨーク市へ移って以来、時間がかつてないほど貴重になったと実感しています。仕事・ミートアップ・社交イベントの間に、以前より副業に割く時間が目立って減りました。同時に通勤自体が大きな時間ロスです:片道30分、最初は悪くないように見えますが、実際には毎日1時間を浪費しています。
最近ではその時間をプログラミングに充てるようにしています。量は多くありませんが、それで十分です。電車内では通常のセットアップ(複数モニターや高級キーボード)は使えませんし、インターネット接続もほぼありません(ただし、多くの停留所では無料Wi‑Fiがあります)。この制限を気にする必要はなく、むしろ注意散漫が少ないため集中力が向上します。やるべきことだけに専念できるのです。
本当にインターネット接続が必要なときは、停留所で一時的に接続してパッケージをダウンロードしたりドキュメントを確認した後、列車から降ります。コードを実際に走らせる時間が足りないことも多く、ほとんどの副業は低レベルの組み込みコードで構成されており、自分のハードウェア用シミュレーターを書く余裕はありません。電車内ではコンパイルできるかどうかだけを確認できます。高速な編集/コンパイル/実行サイクルを好むものの、深くコードや動作について考えさせられる環境は有益です。もし毎日一時間ずつでもこれが続けば問題になるかもしれませんが、1時間程度なら大きな課題にはならないと感じています。
理想的ではない環境のため、頭をフルに使うことは難しいです。複雑な状態機械を頭で管理するのは危険で、騒音で瞬時に忘れてしまうリスクがあります。しかし実際にはそれほど問題にならず、複雑プロジェクトでも多くは単調作業(systemdサービス作成、Nixパッケージ記述、組み込みデバイスのハードウェア初期化など)が発生します。何も手が回らないときには、ノートパソコンをバッグに入れ、紙に図を書いて構築すべきものと計画を整理します。このために小さなノートブックを常に携帯しています。
安全だと思えるでしょうか?友人たちは「まだラップトップが盗まれていないのは驚きだ」と冗談を言います。実際には確率は低いと考えています。ラップトップは数年前にeBayで数百ドルで購入した安価なThinkPadです。誰かがそれを盗もうとするなら、即座に降りられる駅で行わなければならず、そこでは多くの人が乗り降りしているためリスクが高いです。心配しすぎる必要はありません。もし盗まれたとしても、新しいThinkPadを購入し、Nix設定から再構築するだけです(ありがとう、Nix)。
友達になることもできます。私は自分の作業内容について尋ねてくる見知らぬ人と良い会話を持った経験があります。少し変わっている方が友達づくりに有利であり、公の場でプログラミングすることで、何か話すもののある他のプログラマーも惹きつけられます。
まず座席(現時点では…?)が必要です。電車は特にラッシュアワーには混雑しており、空席を見つけるのが難しいです。これが現在の最大の制約で、何かやりたいと思っても座席が無いと作業を先延ばしにせざるを得ません。
現在は立ったままプログラミングできるようにパンツにスプリットキーボードを固定するプロジェクトに取り組んでいます。実質的にスクリーンを内蔵した眼鏡のような既存製品がありますが、これをディスプレイとして使用します。こうすればプログラミングの機会は増えますが、見た目はかなり奇抜になります(^:)。
電車でプログラミングするべきです
この記事に共感できる部分があれば、ぜひ電車でプログラミングを試してみてください。最初は変な感じがしたり、フロー状態になるまで練習が必要かもしれませんが、その価値は十分あります。列車内外問わず、注意散漫に強くなるスキルは貴重です。