道草道

大崎上島での移住の記録(2016年4月~):子育て・古民家改造・裏山開拓・造船所・たまにプログラミング

大崎上島日記 長男の中学受験

2022年11月末日、叡智学園の1次試験の合格発表の日。

長男の受験番号はなかった。

 

「僕の何が悪かったんやろ?」
「僕に何が足りんかったんかな?」

 

泣くこともできずに、ただ、茫然と呟く長男。

「よくがんばった、落ちることもある」

という言葉は、不合格という圧倒的リアルの前では、何の励ましにもならない。

クラッカーを構え合格を待っていた次男は、すごすごと部屋に戻っていった。

事実は小説よりも奇なり

1次試験に落ちたが、その後には続きがある。

1次試験、不合格だったが、後日、繰上合格の電話がかかってきた。
2次試験、不合格だったが、後日、繰上合格の電話がかかってきた。

どないやねん、最初から合格にせいよ!と、ツッコミを入れたくなったが、もし、誰かが辞退しなければ、合格してなかった、と思うと恐ろしい。

まさかの2度の逆転劇で長男の中学受験は終わった。

 

note.com

大学受験と中学受験は違う

僕自身、中学受験はしていないが、大学受験では大失敗した。受験には落ちることもあるとは分かってたし、分かっているつもりだった。しかし、自分が落ちることと、息子が落ちることは、全く違う体験だった。
「2月の勝者」「勇者たちの中学受験」で、子供の不合格を受け入れられず壊れるお父さんがたくさん出てくる。

 

正直、子供に夢を託しすぎじゃないか?と冷ややかに見ていた。でも、子供が不合格になった時、自分に対するダメージは想像以上だった。

その痛さは自分のものではなくて、息子のものなのだ。そのどうしてあげることもできないつらさは、自分が体験する以上のつらさがあることを知った。

note.com

中学受験に対するスタンス

中学受験に対しては、いろいろな意見がありそうだが、僕自身は賛成でも反対でもない。選ぶのは子供なので、正直、どっちでもいいと思っていた。


うちの場合、連れ合いが、将来、個人塾をやりたいという想いがあるので、その想いに影響されている部分は大きいと思う。長男は勉強が好きなので、それなら中学受験もいいじゃない?くらいの軽い気持ちだった。


正直、落ちたら息子だけでなく家族全体にこんなにもダメージを喰らうとは思っていなかった。そこはかなり甘く考えていた。

受けるからには受かるつもりで全力を尽くさないといけない。軽い気持ちで受けても落ちたら大ダメージを喰らうのだと知った。

note.com

外野の僕にできること

勉強に関してはノータッチだったのが、不合格になってから、ひとつ心残りがあった。


それはお守りを買ってなかったことだ。

 

お守りを買ったところで、何か変わるとは思わない、しかし、落ちてみるとお守りくらい渡しておけばよかったとの後悔の念が強くなった。

それで1次試験に落ちてすぐ、大山祇神社にお参りに行った。

少し外れたところに、生木の御門(いききのごもん)という大楠のトンネルがある。

「どうか悔いの残らない受験になりますように」

大楠に願いを託した。

その願いが通じたのかどうか、数日後に、繰り上げ合格の電話がかかってきた。

中学受験を終え

叡智学園は、中高一貫の全寮制の学校だ。
受験を終え、長男は巣立っていった。
同じ島内にある中高一貫校での寮生活なので、近くに旅立った感じで、自立の第一段階としては、ちょうどよいくらいなんじゃないかと感じている。

 

7年前島に来た時は、こんなに小さかった子供達は、自分の足で歩みはじめた。

legacycode.hatenablog.com

 

島のプログラマー日記 10年越しのリファクタリング

指を怪我して仕事にならないので、昨年一年取り組んだリファクタリングプロジェクトについてロコタビテックブログに書きました。

 

note.com

 

そもそも、リファクタリングに興味を持ったのが約10年前。

このブログを、そもそも書こうと思った理由もレガシーコードのリファクタリングがなかなか上手くいかなかったからなんですよね。

 

legacycode.hatenablog.com

 

10年の間に、

島に移住して、

プログラマーは一旦やめて、

3年くらい造船や養殖業をして、

やっぱり、プログラマーに戻ってと、紆余曲折がありました。

 

まだまだですが、ようやく、ある程度はちゃんとリファクタリングができた気がします。

変化が早いと言われるソフトウェアの世界でも、根本的な部分って10年前の今も変わらないんですね。

 

ソフトウェアがちゃんと作れるようになったと言えるのはいつになるんだろうな〜?

後、10年くらいやったら何かわかってくるのだろうか??

10年後は、54歳なので、まだ、じいちゃんプログラマーではないな。

20年後の、64歳は、じいちゃんプログラマーか。

その時、プログラマーって職業存在するのだろうか?

先のことは分からないですが。

 

ちなみに、指はブログ書ける程度には回復してきました。

人は生きているだけで、1兆円以上の価値は普通にあると思う

薪割りしていて、指を怪我して、六日目、結構再生してきました。

f:id:legacyCode:20220309092302j:plain

ちなみに、骨には達していないです。

 

人の体って、すごいですね。

40歳になっても普通に再生能力あるんだなと、しみじみと生命の凄さを感じています。

 

人の価値

お金を多く稼ぐ人が価値があって、お金を稼げない人には価値がないみたいなことを聞くことがあるし、自分もそう思ってしまう時もある。

AIに価値があって、人の価値が下がってしまうみたいな風潮も感じる。

 

でもでも、普通に考えて人の体って、めちゃめちゃすごいんですよ。

 

搭載されているセンサー

 

光センサー(目)

嗅覚センサー(鼻)

味覚センサー(口)

温度・湿度センサー(皮膚)

重力センサー(三半規管)

音センサー(耳)

 

これだけではない、病原菌・空腹・酸素濃度・体力の残量・上げればキリがない身体はセンサーの塊。

 

アクチュエーター

センサーだけではなく、アクチュエーターとしての機能もすごい。

 

アクチュエータ - Wikipedia

アクチュエータは電動機エンジンのようにものを動かす駆動装置と、その動作により制御を行う機械、油・空圧、熱、電磁など物理的な装置を指す。利用する作動原理(入力・出力するエネルギー)によりさまざまなものがある。

 

髪の毛レベルの繊細なものから、何十キロもあるものまで、対応可能な強度と精密さ。

しかも、他人と連携することで、何百キロものまで対応可能になる。

 

さらに、普通機械は納品された時が性能がMAXで使っていくごとに普通は性能は劣化してしく。

しかし、身体の場合、使っていくごとに環境に合わせて適応して自動アップデートの機能付きでもある。

 

道具を作る能力と使う能力を持っているので、全身体能力の拡張が可能になる。

しかも、損傷した時に自己再生可能だ。

しかも、海に入っても錆びない。

使い方によっては、陸も海も木登りも対応可能。

 

上げればキリがない、凄まじすぎる。

 

普通に1兆円以上の価値はあるんでは?

 

これ買おうと思うといくらかかるか?

そもそも作れないので、値段はつけられないけど、普通に1兆円以上の価値はあるだろうと思う。

 

しかも、身体の一部として、脳という超高性能コンピュータ付きだ。

もう、値段つけるの無理でしょ、というレベルのハードウェアだと思う。

 

指の再生を眺めながら、

身体すげー、自分すげーと思いつつ、

普通に考えると、生きているだけで結構すごいよねと思う。

 

まあ、この預かりものを、どう生かすは自分次第。

島のプログラマー日記 複雑な変更をして、バグが出るのは、何か根本的に間違っているのではないか?という話

先週、指を結構怪我してしまって、今週は半休業中です。

 

先日、同僚のソースコードの修正をレビューして、大変言いにくかったのですが、そのPRは却下して、意味のある単位に分割して新しくPRを作るようにお願いしました。

 

話し合って、納得はしてもらったのですが、なんか伝えきれなかったなとの、もやもやが自分の中に残ったので。

 

その時思ったことが、

複雑な変更をして、バグが出るのは、何か根本的に間違っているのではないか?

 

複雑な修正や、大規模修正したら不具合がでても仕方ないみたいな雰囲気を感じることがあります。

前職が、絶対ミスをしてはいけない工場のオペレーションなどの仕事をしていて、Web業界に転職したので、余計にそう感じるのかもしれないです。

もちろん、どんなに注意しても人がすることなので不具合は出るんですが、不具合出るのって、不具合出るような仕組みから、不具合出るんじゃないか?と思ったりします。

 

ように見える

却下したPRの修正に関してですが、印象として、コードの修正もまずくないように見える、仕様も外してないように見える

ただ、修正箇所が多くて、本当に正しい修正なのか確信を持てる自信がない。

これは、レビュアーの力量の問題もあると思う。(つまり自分の力量)

1つのPRに40ファイルの修正は、多いといえば多いが、そんなに無茶苦茶というわけでもないかもしれない。

「ように見える」の理由として、リファクタリング、機能追加、機能の修正がごちゃっと一つのPRになっている。

 

それぞれの変更は、それぞれ正しく見える、でも、「ように見える」から、全体として、これは正しいへの確信が持てない。

時間をかければ確認できなくもなさそうだけど、レビューの焦点がブレてしまって、「ように見える」を抜けきれない。

 

と、つらつら書いていて、ネット上で情報ないかとググったら、同じように思っている人は結構いた。

 

「巨大プルリク1件vs細かいプルリク100件」問題を考える(翻訳)|TechRacho by BPS株式会社

 

粒度を小さくする

「小さく」というのは、限りなくゼロ行に近づけるということです。たった1行の変更のレビューを嫌がるレビュアーはいないでしょう。プルリクのサイズ(=コードの行数)に上限を設けることで、粒度を下げやすくする効果が著しく向上します。レビュアーが1行ずつ精査しやすくなるのはもちろんのこと、レビュー時間も大きく削減できます。コードを定期的にマージできるようになり、品質にも自信を持てるようになります。

作業のスコープを絞る

コードの行数を削減するための重要なコツは、プルリクのスコープ(=機能のセット)を絞り込み、解決するタスクを1つにする(または密接に関連する少数のタスクに絞り込む)ことです。スコープを絞ることで、レビュアーの認知機能にかけられる負荷を大きく軽減できます。1件のプルリクでいくつもの問題をいっぺんに解決しようと欲張ると、ある問題がどのコードと関連しているのかを整理する作業がつらくなります

「ついでのリファクタリング」はしないこと

開発者は、問題に気づくとその場でリファクタリングすることがよくあります。もちろんリファクタリングはよいことですが、別のプルリクで行うべきです。そうすることでリファクタリングを早めにマージできますし、関係のない機能リリースに修正が押し込められることもなくなります。「ついでの改善」は、元々のプルリクのリリースが遅れれば巻き添えで遅れてしまいますし、最悪まったくリリースされなければそのまま失われてしまうでしょう。

 

複雑なものを複雑なまま扱うことで見えなくる

 

どんなに複雑なものも、分解すれば単純な構造に分解できます。

当たり前なんですが、複雑なものを複雑なまま取り扱うと、複雑です。

複雑な修正をレビューしても、やっぱり複雑なので、見逃してしまう不具合も増えます。

 

複雑なものを分解して、意味のある最小単位に分けるのは確かに手間もかかるし、難しいことも多いです。特に元の設計が悪かったりすると尚更。

 

でも、単純なものはレビューするのも簡単で、当たり前ですが、不具合にも気がつきやすいです。

 

他を壊さない作業の境界を見つけるには、The Mikado Methodがおすすめです。

日本語に訳されていないのが残念ですが、今の時代DeepL様のおかげで余裕で読めます。

The Mikado Method (English Edition)

 

複雑な変更をして、バグが出るのは、何が根本的に間違っているのか?

何が根本的に間違っているのか?

「複雑な変更」という時点でアウトの可能性が高いということだと思います。

 

  • 複雑なものを複雑なまま扱わないで、単純な形に分ける
  • レビューを機能させるには、複雑かどうかの基準はレビュアーのレベルに合わせる必要がある

 

そんなところかな?

大崎上島日記 2022年は「スマホアプリ」と「裏山の猪を捕まえて食べる計画」

2022年始まりました。

今日も朝から穏やかな、いい天気です。

f:id:legacyCode:20220101130732j:plain

2021年は、お別れの多い年でした。

 

10月に連れ合いのお父さん

12月に僕のおばあちゃん

 

が亡くなりました。

 

両方とも急でしたが、義父(連れ合いのお父さん)の死は、夏に帰省したときは元気だったので、本当に想像すらしてませんでした。

 

夏に義父に会ったのが、島に移住して初めてだったので、死に間に合ってよかったというのが素直な感想です。

 

島に移住する際に、義父からは壮絶に反対されて(基本的に両家の両親的に反対だったのですが義父の反対は壮絶だった 苦笑)半ば押し切る感じで島に移住して以来、合わせる顔がなくて、ずっと連れ合いの実家には近寄ってませんでした。

 

島に移住して5年目、それなりに理想としていた生活もできるようになって、たまたまTV撮影の話があって家族の日常を映してもらったので、それをお土産に、去年の夏休み恐る恐る連れ合いの実家によったのですが、

 

「せいいちくん、わしを避けて、帰ってこんかったんやろ?」って、

 

ちくっと言われましたが、島で元気に暮らしている子供達の映像を見て喜んでくれてました。

まさか、それから数ヶ月後に亡き人になるとは想像もしてなかったけど、憎まれ口を叩ける元気なうちに会うことができて、本当によかったなと思います。

 

仕事の面では、ひたすらテスト書いてリファクタリングしてました。

色々あって、社員になって、インフラ関連の引き継ぎなどもあって、インフラのことをしている時期もありましたが、大規模リファクタリングは長年やりたいなと思いながらも、なかなかチャンスが訪れないことだったので、よい経験になりました。

長年蓄積してきた、リファクタリングの知識が使えてよかった。

基本的にコードを書くより、コードを削る方が好きだなと改めて思いました。

 

私生活では、念願の仕事部屋完成。

 

legacycode.hatenablog.com

 

とりあえず1ヶ月、火を焚き続けてます。

薪を集めるのが大変で、家にあった、部屋を解体した時の廃材や、裏山の木を伐採した時に集めていた木は、全て燃やし尽くしてしまいました。

これから薪集めが大変。

 

2022年の大きなイベント、

  • 本業以外でスマホアプリの開発に関わる予定。
  • 「裏山の猪を捕まえて食べる計画」を実行に移したい。まず、年明け罠免許をとってみようかと思っています。
  • 長男が今年6年生なので中学受験

  • 引き続き家の修繕。台所周り、みかん蔵の屋根が壊れてきたので治す
  • 来年の冬に向けて、裏山の育ちすぎた木を切って薪を作る
  • 土間のオシャレ化計画もできれば着手したい

仕事

 

島生活5年目、次男の小学校卒業まで2年とちょっと、多分次男の小学校卒業のタイミンで大きおな変化が訪れると思っています。

それは、島への移住のような物理的な変化を伴う変化なのか、物理的な変化を伴わない内面的な変化なのかは、自分の変化なのか、連れ合いの変化なのか、現段階では分からないけど、予感的に大きな変化が訪れるのは間違いない気がしてます。

 

それに向けて、これから2年は、終わらせるものは終わらせて、色々な種をまいて、変化に備える感じになるかと思ってます。

 

それでは、今年1年間よい一年にしましょう。

大崎上島日記 火のある暮らし始まりました

先週末、ロケットストーブ付き仕事部屋が完成して1週間、ロケットストーブ生活してみました。

リモートワークで一日中デスクワークなので、一日中、この部屋で火の番しながら仕事してます。

f:id:legacyCode:20211205194125j:plain

全然、薪の準備をしていなかったので、すぐに薪を使い果たしました。

それで、裏山に入って薪木拾い、倒木は結構転がっています。

30分も集めれば結構集まります。

f:id:legacyCode:20211205194428j:plain

1週間分くらいは溜まったかな?

f:id:legacyCode:20211205194608j:plain

 

ロケットストーブの実際

自家製ロケットストーブですが、やっぱり市販品ではないので、かなり、癖があります。

 

まず、燃え始めが難しい。

ヒートベンチを早く暖めようと、いきなり大きい木を燃やすと、火が消えてしまって、家中煙だらけになります。

(排気ファンとかつければ、最初から燃える気もしますが、そこは電気を使わないことにこだわりたい。)

 

ヒートベンチも含めてストーブという感じなので、ヒートベンチが温まるまで、あまり大きな薪は燃やせません。

 

朝から燃やし始めて、2時間くらいで、調子が出始めて、子供たちが帰ってくる夕方ごろ絶好調で、夜はめっちゃいい感じで燃えます。

 

こんなサイズはもちろん燃える。

youtu.be

これくらい大きな薪でも大丈夫。

youtu.be

ここまで大きくても、ストーブが十分暖まっていれば燃える。

youtu.be

 

一日中がんがん火を焚いても、山から拾ってきたか、家から出た廃材なので、全然、お金がかかってないので、気兼ねなく、がんがん燃やせるのは嬉しいですね。

何より、家の中で焚き木できるのが楽しい。

大崎上島日記 ついにあったか〜い仕事部屋ができたど

大崎上島に移住して5年目。

冬はあったかぽかぽか、夏は涼しい仕事部屋が完成しました!

f:id:legacyCode:20211127171223j:plain

あったかぽかぽかロケットストーブ、ヒートベンチ付きです。

ちゃんと燃えるます。

youtu.be

ヒートベンチもあったかポカポカになります。

 

欲しいサイズの机が売ってなかったので、机も作りました。

ちょうどいいサイズ。

f:id:legacyCode:20211127171149j:plain

 

ここまで長かった。

最初に描いたイメージ図、本当に出来てしまうとは。

f:id:legacyCode:20211127174813j:plain

ここまでの道のりは、過去の記事で。

legacycode.hatenablog.com

 

こだわりポイント

ヒートベンチ

隣に住んでいる左官屋さんの「どろんこうさぎ」さんに色々教えてもらいながら、ツルツル仕上げに。やっぱりプロの技と知識はすごいです。

f:id:legacyCode:20211127172340j:plain

 

鉄の足

以前お世話になっていた島の鉄工所の若き職人さんに作ってもらいました。

シンプルで無骨なデザインがかっこいい。

f:id:legacyCode:20211127173146j:plain

 

めっちゃ、あったかで、心も体もぬくぬくに、この年末を迎えられそうです。