前言#
本記事は 2023-03-01
から 2024-03-16
までの 2 週間の生活の記録と考察です。
前回の週報で述べたように、漂流計画を始め、「杭州 -> 上海 -> 湖州 -> 南京 -> 北京」という約 2 週間の旅を終えました。ほとんど江浙にいて、特別な景色はなく、より人や事に関することが多かったです。主財布が盗まれ、その原因がわからなかったため、2 台のメインコンピュータを再インストールし、ちょうど開発環境の設定を整理しました。家の Mac Studio を 24 時間稼働のホームサーバーとして、Home Assistant などの常駐アプリを使ってスマートホームを制御し、試行錯誤しながらも楽しい時間を過ごしました。仕事では、チームが長い間取り組んできた Alpha メインネットがついにローンチされ、久しぶりの興奮を感じました。他にもたくさんの面白いことがありました。
漂流計画#
年明けに始まった漂流計画の第一の目的地は上海で、これまでに何度も訪れたことがあります。1、2 ヶ月のインターンシップで長期滞在したこともあり、時折短期滞在もありましたが、通常は用事があったり、会う人がいたりします。実際に「生活」する機会は少なく、繁華な地域を選ぶこともなく、特別な旅行計画も立てず、友人に近い場所に 1 週間の民宿を予約し、通常の仕事と学習のリズムに戻りました。
時々、周囲の商業エリアに食事を探しに行き、週末には久しぶりに大学のルームメイトと食事をしました。残りの時間はホテルで仕事をし、長い間見たかった「ウエストワールド」を一気に見終えました。偶然にも、同僚が私から 1、2 キロのところに住んでいたため、小さな三人のチームビルディングも実現しました。
その後、湖州に行き、友人のXiaoの家に 1 週間滞在しました。彼との出会いは、1 年前のある日、彼が各地巡遊の際に杭州の友人と会えるというツイートをしたことから始まりました。その時、私は杭州市に戻ったばかりで、未来の生活に多くの未知と期待を抱いていました。勇気を出して夕食を約束し、西湖のそばを散歩しました。初対面で特に共通点はありませんでしたが、誠実さと信頼感がありました。
その後、彼は湖州に引っ越し、8 月に一度会う約束をしましたが、様々な理由で実現できず、少し残念でした。そこで、この漂流の機会を利用して再会しました。莫干山で野道を歩き、安吉の雲上草原の崖を散策し、2 つのデジタルノマドコミュニティを訪れ、そのコミュニティの雰囲気に心を奪われました。今年の私は、久しぶりに生活のリラックス感を見つけたようで、より多くの人に会い、様々な経験をすることに前向きになっています。生活は仕事や学習だけではなく、人と人に関わるすべてが私にとってより魅力的になり、多くの「ネット友達」との深い繋がりができたことで、オンラインとオフラインの関係が徐々に曖昧になっています。
会社の毎週水曜日の「Work Together 1 Hour」のおかげで、同僚が湯山の温泉と莫干山の森林書屋を推薦してくれたので、先輩と南京で会う約束をし、快適な 1 週間を過ごしました。また、週末の行き先を探し始め、生活がより具体的になりました。
財布の盗難とデバイスの再インストール#
最近、自分のノートパソコンと家のデスクトップのシステムを再インストールしました。きっかけは、自分の主財布が不幸にも盗まれたことです。ブロックチェーンの記録によると、年初の昼頃に財布の中のすべての資産(いくつかのオープンソースプロジェクトのエアドロップを含む)が ETH と BNB に変換されて転送されました。財布には自分の ENS といくつかの NFT もありました(ただし、ハッカーはそれに興味がなかったのでそのまま残しています)。全体的な金銭的損失は大きくありませんでしたが、どこで秘密鍵が漏れたのかがわからなかったため、すべてのデバイス環境を再インストールせざるを得ませんでした。これは大きな作業でした。
すべて macOS システムなので、システム設定やソフトウェアの面では慣れたもので、主に私の個人ツールボックスプロジェクト「GitHub - yu-tools」を参考にしましたが、その基盤の上でかなりの減算を行い、必要最低限のものだけを残しました。Rewindをアンインストールした後、MacBook Pro のバッテリー寿命が大幅に回復し、外出時にはほとんど充電器を持っていく必要がなくなりました。
また、ソフトウェアのインストール元、開発環境の管理、コマンドライン設定などを整理する良い機会にもなり、友人の会社が開発した「x-cmd」プロジェクトを試すことができました。
ohmyzsh を使って自分のコマンドライン設定を短い十数行に簡略化し、以降は x env
などのコマンドを使って様々な環境やコマンドラインツールを管理できるようになりました。非常に使いやすいです。
最後に、x env
を使って自分の Go、Node、Python の開発環境を管理し、nvm のインストールや環境変数の設定などの手間を省き、企業レベルの顧客サポート(問題が発生した際に友人に直接連絡して解決してもらうこと 🤣)も体験しました。今後は自分の装置の標準装備となる予定で、現在も深く体験を続けています。
さらに、ssh キー、GPG 署名などを 2 台のデバイス間で統一管理し、Elpass を使ってパスワード管理とサーバーの自動ログインを行い、通勤と自宅でのシームレスな切り替えを実現しました。
ホームサーバーとホームアシスタント#
年齢が上がるにつれて、結局はルーター、充電器、NAS という 3 つの呪縛から逃れられません。ルーターは昨年STRRLさんから手に入れた Asus AC86U を使用しており、新しいバージョンの梅林ファームウェアをインストールしました。十分に使えるので、ソフトルーターの設定には手を出していません。充電器は、透明な充電宝、100W の窒化ガリウム充電器、ハードキャンディ工場の小型電源(今は少し使うのが怖いですが)を試した後、熱が冷めました。
ついに NAS に手を伸ばしました。私たちのチームの信頼できる運用&NAS の深い DIY プレイヤーである Ares としばらく話した結果、家の Mac Studio をホームサーバーとして使用することに決めました。
まずは、家のスマートデバイスをすべて Home Assistant に接続しましたが、Apple M1 チップのため、現成の公式ソリューションがなく、いろいろ試行錯誤した結果、「macOS 上で Debian 12 仮想マシンを使って Home Assistant を実行する」という記事を参考にして、UTM を使って Arm アーキテクチャの Debian の仮想マシンをインストールし、そこにフル機能の Home Assistant を実行しました。そして、frp を使ってインターフェースをパブリックにマッピングしました。現在のところ、iOS アプリやウェブ版を使って直接操作していますが、仮想マシンのネットワークモードの問題で、HomeKit Bridge を通じて Apple のホームアプリに追加することができません。しかし、すべての小米、Yeelight、そして小ペットデバイスを接続することができ、現段階では十分に機能しています。
さらに、ホームサーバーとして 24 時間稼働を維持し、騒音や電力消費はほとんど感じられず、smb ファイル共有、ssh リモートログイン、リモート vnc デスクトップ制御を開始し、内網を通じて外出先でも家のデバイスにアクセスできるようにしました。
安全性と安定性を確保するために、3 つの異なる内網穿透ソリューションを同時に採用しました。
- frp
- Surge Ponte
- Cloudflare Argo Tunnel
最初のソリューションは、近く 2 年間使用しており、「frp を使った内網穿透の薄いクライアント開発ワークフロー」という記事で詳しく紹介しています。パブリックサーバーが必要ですが、設定は簡単で安定しています。現在は ssh と Home Assistant のポートだけを残しています。
2 つ目のソリューションは、Surge ソフトウェアを使って macOS/iOS デバイス間で簡単に内網穿透を実現するもので、「Surge Ponte ガイド」で詳細を確認できます。UDP をサポートするプロキシラインが必要ですが、それ以外はほぼ箱から出してすぐに使えます。これを使って家の Mac Studio のファイルやローカルのサービスにアクセスし、外部から家の内網ルーターの設定を行うこともできます。主に自分用です。
3 つ目のソリューションは、最近「Cloudflare Argo Tunnel(cloudflared)を使ってあなたのウェブサイトを加速し保護する」という記事を見て新たに追加したもので、以前は cloudflared コマンドラインツールを使って手動で設定していましたが、少し面倒だったため実践していませんでした。最近、Cloudflare がこれをZero Trustに統合し、ほぼインターフェース上で様々な操作設定ができるようになりました。これを使って家のサーバーで外部に公開する必要のあるサービスを実行しています。例えば、数日前にollamaを使ってcodellama:70bを実行し、ChatKitを通じて直接アクセスしました。体験は非常に良好でしたが、生成が遅すぎるため、ちょっと試してみただけです。
ちょうど最近、私たちの工場のAlpha メインネットがローンチされ、後で公益ノードの時にホームサーバーを使って自分で運用しようと思っていますが、今はまだ無理です 🤣。
VR 運転学習#
自動運転の需要が出てきたため、再び運転学校に申し込み、学習を始めました。今回の運転学校には VR 練習施設があり、自分が想像していたほど抵抗感はありませんでした。
その他#
他にはあまり面白いことはないようで、忙しさとやりたいことが終わらずに焦る日々が続いていますが、すべては少しずつ良くなっています。
GitHub から Copilot のオープンソース無料ライセンスをもらい、コード補完と Copilot Chat を引き続き利用できるようになりました。Claude 3 Sonnet と「burn.hair」で手に入れた GPT4 トークンを組み合わせることで、すべてのコードや様々なニーズを満たすことができています。
あ、そういえば、私のアイドルプログラマー「Randy」と今月末に北京で会う約束をしました!!!
面白いことと物#
入力#
ほとんどの面白い入力は「Yu's Life」の Telegram チャンネルで自動的に同期されますが、ここでも一部を選んで挙げてみます。ニュースレターのように感じます。
書籍#
コレクション#
- Million Lint is in public beta | Million.js
- Discover Daily by Perplexity
- Ehco Relay
- RSS3 Alpha Mainnet
- Velja — Sindre Sorhus
記事#
- 幸福のポイント – 虹線
- なぜ私はロードトリップが好きなのか | 椒盐豆豉
- ソフトウェアがメディアを食べた
- リスクなし年利 360%?初心者でもわかる Crypto アービトラージ - TARESKY
- NAT トラバーサルの仕組み
- 6 年のオープンソースプロジェクトの崩壊と再生 - DIYgod
- Notion Calendar を使って効率的なデイリークエストシステムを構築する | 椒盐豆豉
- macOS 上で Debian 12 仮想マシンを使って Home Assistant を実行する – Siytek
- Cloudflare Argo Tunnel(cloudflared)を使ってあなたのウェブサイトを加速し保護する | Nova Kwok の素晴らしいブログ
動画#
- 私は悟った、最も良い運を引き寄せる方法は結婚することだ!
- study vlog #48 | 26 歳の新たな始まり|プログラマーの夜の学習日常|いくつかの小さな贈り物を皆さんが気に入ってくれることを願っています
映画#
- 怪物、確かに是枝裕和が描こうとしたテーマに合致していますが、あまりにも多くの比喩が加えられているため、逆に伝わりにくく、ストーリーと感情のリズムの断絶を感じました。
- 周処除三害、台湾の犯罪映画は確かに独特の風味があり、テーマや映像も非常に大胆ですが、視覚的な爽快感が強い作品で、キャラクターの人格の表現や変化が少し急ぎすぎている印象があります。
- ウエストワールド、やはり第一、第二シーズンの楽園パートが好きで、ウィリアムの変化を含め、後の二シーズンはあまりにも壮大な意識の覚醒と自己選択を示そうとしたため、逆に子供の遊びのように感じました。
ドラマ#
- 舞伎家の料理人、現在視聴中です。
音楽#
- Photograph by Ed Sheeran
- 温和表面 by 趙登凱
- Different Lives by Fly By Midnight
- After the Love Has Gone by Earth, Wind & Fire
- IN THIS WORLD - feat. 坂本龍一 Vocal : 満島ひかり by Mondo Grosso