blog.8-p.info

Why is building the Ruby environment hard? の、

ソフトウェアは何もしないと壊れる

というのは事実ではあるんだけど、それが良いことかというと、どうなのかなあと思う。ほかにも、我々プログラマはつい「ソフトウェアは完成しない」とかいってしまうし、それは雇用のためには良いことなんだろうけど、でも本当に完成しないんだろうか。

Go の logrus の README には、こんな段落がある。

Logrus is in maintenance-mode. We will not be introducing new features. It’s simply too hard to do in a way that won’t break many people’s projects, which is the last thing you want from your Logging library (again…).

This does not mean Logrus is dead. Logrus will continue to be maintained for security, (backwards compatible) bug fixes, and performance (where we are limited by the interface).

この姿勢、ロギングだけではなく、多くのソフトウェアで歓迎されうると思う。

あるいは、macOS の見た目の変化、昔はストライプが入っていて、次にメタルっぽい見た目になって、最近はフラットで、みたいなもの、だんだん機能というより、買い替え需要のために変化をおこす、ファッションの領域に片足をつっこみつつあるんじゃないか。左上に 1px 白を入れて、右下に 1px 黒を入れて「これは押せますよ」という見た目にすることの、何が悪かったんだろうか?

ここ最近ずっと G-SHOCK のオリジナルに近い四角いモデルをつけていて、こういう、完成した定番品というのが、コンピュータとかソフトウェアの世界にも、もう少しあってもいいんじゃないかと思う。

homelab 1日目

Sep 12, 2022

「仕事はオープンソースでコンテナやってます」というわりに Kubernetes よくわかってないのは困るなあと思う機会が増えたので、自宅に実験用 Kubernetes をたてることにした。

まずは、Beelink の小さいコンピュータを買って、そこに Proxmox を入れてみた。

自宅 Kubernetes というと Raspberry Pi をよく見かけるけれど、Raspberry Pi は世界的に品薄なので、それなりの速さのコンピュータを仮想的に切り分けて使うことにした。仮想化のない環境が必要になったら、余っている Raspberry Pi 3 とか、古い MacBook Air をクラスタに参加させるつもり。

はまったところ

  • Beelink の BIOS メニューに入るとか、起動する OS をえらぶとか、なぜかうまくいかないことが多く、キーボードを疑ったりした。こういうときコンパクトキーボードだとちょっと困るので、家に一台くらいフルキーボードがあったほうがいいのかもしれない。
  • 結局 Windows のトラブルシューティング的なところから「リムーバブルディスクから起動」的なオプションを選んだ、気がする。うろおぼえ。ちゃんと記録をとっておくべき。
  • Proxmox のネットワーク設定は、有線 LAN に固定アドレスをもったホストを足すのが前提になっていて、無線 LAN の SSID 設定とかはない。うちでは DHCP から 192.168.1.10 以降をふることにしているので、このホストには 192.168.1.2 を割り当てた。
  • インストール作業をしている部屋 (ディスプレイなどがあり、仕事をする部屋) には有線 LAN がないので、Beelink はインストール後に有線 LAN のある部屋 (寝室) に持っていった。インストール中はインターネットに接続しなくても良いので、これで大丈夫。

これから

Kubernetes いれるまえに、まだいくつか気に入らないところがある。

  • Proxmox のインストール中にはホスト名をあてるところがあって pve.lab.8-p.info にしたのだけど、当然この名前では引けないので、なんとかしたい。DNS たてるなら、それはこのホストの外にあるべきな気がするけど、早速 Raspberry Pi かなあ。
  • パスワード認証できるかぎりやめる。

最近、妻が子供むけに借りてきた『もうふりまわされない! 怒り・イライラ』を読んだ。結構気に入って、今日も子供に「怒るときには『〜すべき』という期待がある」という話をしたりした。監修の名越康文は有名な人らしいけど、表紙に監修者の名前しかなく、奥付にすら著者がいないのはどうかと思う。

2022年であること、アメリカでデスクワークをしていること、自宅から働いていること、客先にあまり出ないことなどがあいまって、仕事の場で怒るひとをめったに見かけない。内心で怒っている人はいるのかもしれないけど、大声をだすとか、暴力とか、ため息をついてみるとか、そういう「私は怒ってますよ」というのを人に伝える行動をとるひとがいない。

私自身もそういう文化にだいぶ染まったつもりでいるけど、家だと、まだ子供に怒ってしまうことがあって、まだまだ修行が足りないなと思う。怒るのはやめたい。

私が子供の頃は、体罰を武勇伝のように語る教師というのがいたりしたけれど、今考えるとこれはダメだった。同様に、他人を大声で怒ったりするのも徐々にダメになってきて、ふりかえって「あれは乱暴だった」と思うようになるんじゃないか。甘いかなあ。

Container Runtime Meetup #4 の週にオープンソースにしていた SOCI Snapshotter だけど、さらに AWS What’s New というところにも載って、私も Twitter に書いたり、Mats にきた質問に答えたりしていた。

あるいは、Ivan Velichko が、

Is the evolution of @Docker, the software project, documented?

と書いているのをみて「ここら辺にあるよ、色々消えてるから Internet Archive みないといけないけど」と返したら、containerd でもお世話になっている Docker の Sebastiaan が消えていた記事を復活してくれたというのもあった

こういうのを見ると、英語だと届く範囲が広くていいなあと思う。コンテナなら NTT の徳永さん、須田さんとか、Ruby のまつもとさんとか、日本でも業界で鍵となる人々はいるけれど、英語を話せるひとのほうが圧倒的に多い。あと、透明性というところで、英語と日本語が通じるひと相手でも、英語で書いておいたほうが良いところはある。

インターネットにおける私の英語人格は不完全なところがあって、英語でブログを書いて、英語で Twitter をやったりを、はじめたりやめたりしている。これを英語でがんばって、タイムゾーンの近い知り合いや友達、あわよくば転職先候補などを探しておくのは、どうなんだろう。別に日本の友達を増やしてもいいのだけど、でもたまにコーヒー飲めるようなひとが近所にいるのは、とりわけリモート勤務の常態化を目指している (オフィスで雑談しづらくなる) 身としては、よさそうな気がしている。

一回やすみ

Sep 8, 2022

9月に入ってから毎日ここを更新できていたのだけど、昨日は諸事情でお金関係をスプレッドシートにまとめて、仕事で書いていた自動テストを切りがいいあたりまで進めていたら、時間が足りなくなって一回やすみ。

仕事のコードを書くの、ある程度の面白さはあるけれど、一方で易きに流れているところも多分にあるので、ほどほどにしておきたい。お金の勘定とか、子育てとか、皿洗いとか、そういう色々を並べていくと、プログラミングはだいぶ簡単で、かつ得意なので、仕事かどうかにかかわらず、だらだらやってしまう傾向がある。簡単で得意なのは上達の結果でもあるので、別に悪いことではないけれど。

何が悪いかというと、難しくて得意じゃないものを避けていて、そのなかに色々とやったほうがいいことがある、という事実というか感覚があるのだと思う。