kinoppyd.dev

blog

products

accounts & contact

kinoppyd dev

kinoppyd blog

今年もRubyKaigiのCFP通らなかったので公開します

2024-02-23 22:03:00 +0900

今年もRubyKaigiのCFP通りませんでした。やっぱり結構へこみますね。送ったプロポーザルの内容を共有しておくので、何かの役に立てばと思います。もしくは誰か添削でもしてください。


Art of metaprogramming

Abstract

Not a Black Magic. Metaprogramming is powerful and useful part of Ruby. This talk describe real world metaprogramming technics with code of famous gems. For example, How RSpec define their DSL, How Rack plugins (e.g. Puma, thin) register itself and how Rack find it, et al. Enjoy white magic metaprogramming world.

For Review Committee

Details

このセッションの目的は、著名Gemで使われるメタプログラミングの妙技を知ることで、聴講者の方々が書くコードの引き出しを増やすことです。そのために、Rubyの強力な武器であるメタプログラミングを、多くのユーザーが利用しているGemのコードを実際に見て挙動を追跡しながら紹介します。多くの人は、メタプログラミングを「メタプログラミングRuby第二版」という名著で学んだと思いますが、Gemを書く人でなければそのテクニックが現実世界でどのように生かされているかを目にする機会はあまり無いと思います。そのため、このセッションではメタプログラミングの力を実例とともに知ることで、聴講者の方々が書くことのできるコードの幅が広がることを期待しています。

まず最も有名な利用例であるDSLは、RSpecとminitestのコードを紹介しようと思います。普段多くのWeb開発者が用いているあの不思議な文法は、どのようにしてメタプログラミングで実現されているのかを紹介します。RSpecはRubyとは思えない構文を実現するためのテクニック、minitestは特定のメソッド名だけをフックする挙動や、autorunの仕組みなどを知ることができます。

次にプラグインの機構を、RackとActiveRecordのコードを見ながら紹介します。Rackのhandlerは、RackのHandlerモジュールを再オープンしてregisterメソッドを呼ぶというワイルドな方法が使われますが、ActiveRecordではActiveSupportの力を借りてロードされたときにフックするというマイルドな方法を使っています。それぞれ、プラグインを本体に登録するときの挙動やそのルックアップ、そして注意すべき点を知ることができます。

最後に、いくつかの光のメタプログラミングをお見せしようと思っています。これはまだProposalを書いている時点ではどのGemのコードを解説するか未定の内容ですが、メタプログラミングを使ってビックリするくらい感心する問題解決を行っているコードをいくつか紹介したいと思っています。例えばですが、ActiveRecordがどのようにカラム名のメソッドを自動生成するかなど、おもわず唸るようなテクニックを探して紹介したいと思っています。現実のメタプログラミングがRubyの便利さをここまで高めてくれるのか、と思えるようなコードを探して共有し、メタプログラミングの素晴らしさを皆で分かち合えたらと思います。

このセッションによって知ったメタプログラミングの奥深さを、実際の業務でも生かせる引き出しとして記憶に残していただけるような内容にしたいと思います。

Pitch

RubyKaigiの参加者層は、コロナによるオンライン期間を経てかなりの入れ替わりがあったと感じています。実際にスポンサー各社が公開しているアンケートや、自分で聞いて回った感覚などから、オフラインのRubyKaigiに初めて参加するという方の数は事実として相当多い様です。新しくRubyKaigiに参加される方々の中には、フィヨルドをはじめとするプログラミングスクールの卒業生であったり、会社の新卒であったり、転職を機にRubyに触れたりなど、しっかりとしたプログラミングの知識と実力を持ちつつもRubyでの実務に携わった時間で見るとまだ若手という方が多く居るように感じました。

まだRubyの経験が浅い方々にとっては、メタプログラミングの便利さや楽しさを感じるよりも、よく知らない怖い何かというイメージの方が強いかもしれません。そんな方々に対して、メタプロの楽しさを伝え、よりRubyを使いこなすための道具を手に入れて欲しいと思い、Proposalを書きました。より多くの人がRubyの深い機能に注目し使いこなすことで、Rubyの世界がさらに広がっていくことにつながれば良いなと思います。

メタプログラミングは、Rubyの素晴らしい特徴の一つではありますが、ここ数年のRubyKaigiではそこにフォーカスしたセッションはそんなに多く採択されていません。事実、メタプログラミングは素晴らしい機能であるものの、毎年そんなに劇的な変化を見せたり新たな発明があるような類いの機能ではなく、常磐木のような機能です。だからこそ、その強力さを改めて伝えたいと思いました。また、RubyKaigiではTracePointやASTを使って黒魔術的な楽しみ方をする方も多く、自分も黒魔術大好きですし、それはそれでとても良いのですが、たまには光の白魔術も見せたいなぁ! と思ったのが主たるモチベーションです。

Spoken language in your talk

Japanese

Speaker Information

kinoppyd Engineer at SmartHR


さよなら86

2023-12-17 23:59:00 +0900

ちょうど3年前に86という車を買って、今日売却した。

車を買うまで自分がこんなに運転が好きだと知らなかったので、かなりさみしいお別れになってしまった。手放した理由は子供が産まれたからで、2ドアのスポーツカーでは後部座席に取り付けたチャイルドシートに子供を乗せ入れするのが凄く大変だったからだ。そしてそれを自分でやるならまだしも、後部座席で子供の面倒を見る妻の負担が大きかったので、仕方なく乗り換えることになった。次はKINTOで借りた新型プリウスに乗ることになる。


Springは何をしているのか?

2023-12-04 15:38:00 +0900

このエントリは、SmartHR Advent Calendar 2023 のシーズン2の3日目です。なんすかシーズン2って。

Spring、使っていますか? Rails4.1から追加された新しいRailsの起動を早くするやつです。べつに新しくないですね。なんならRails7からは rails new のときにデフォルトで追加されなくなっちゃいました。DHH曰く「最近はコンピュータの性能上がったから別に起動とか大したことないっしょ」らしいですが、本当にそうか? と思います。Springは大量のGemをロードしたりinitializerとかに大量のコードが書かれている大きなアプリケーションを起動する上で未だに一定の効果を発揮してくれる一方で、なんだかよくわからない謎の機能くらいのイメージしか持っていない方も多いと思います。僕もそうでした。なんとなく別プロセスでRails立ち上げて……みたいな仕組みを耳にしたことはありましたが、えぇなんか怖いとかRailsのリロードとかがうまく動かないのってこいつのせいでは……みたいな印象を持っていて、なんかバグったなと感じたらとりあえず bin/spring stop とかあまり意味のないことをしていました。


素Turbo

2023-12-01 00:00:00 +0900

このエントリは、SmartHR Advent Calendar 2023 の1日目です。

Turbo、使っていますか? Rails7から追加された新しいフロント用フレームワークで、思った以上にくすぐったい動きをして僕は結構好きです。今年のKaigi on RailsでもTurboに関するいくつかのセッションが発表され、その注目度が伺えます。しかしその注目度とは裏腹に、あまり周囲に使っている人を見かけません。まあたしかに業務に使うにはちょっと物足りないかなぁという気持ちもわからない事も無いのもありますし、また同時に現代ではReactやVueなどが主流になりすぎて使う気が起きないという理由もわかります。 とはいえ、使ってみないと海の物とも山の物ともつかぬままです。なので、とりあえずTurboを使ってみるのはいかがでしょうか? なんなら、TurboはRailsなしでも動きますし、とりあえず体験してみるのも良いんじゃないでしょうか。

そうです。Turboは、というよりもHotwireはRailsに一切依存しない独立したフレームワークです。Turbo本体とブラウザのJSエンジン以外に依存する物はありません。僕はTurboに結構良い意味でjQuery感を覚えているのですが、そういう意味でも結構似ています。今日は、Railsから取り外され、何にも依存していない素のTurboを触ってみて、どんな動きをするライブライなのかを見極めてみましょう。

なお、扱うトピックはTurboFrameとTurboStreamです。TurboDriveはわりとわかりやすいというか、TurboLinksをよりわかりやすくしただけの物なので割愛します。


ガルパン最終話4話を最速で見てきたけどやっぱりガルパンはいいぞ

2023-10-05 23:57:00 +0900

会場でもらった色紙

ノーネタバレでいきますが、とにかくガルパンはいいぞということを伝えたい。

ガルパンは良い。本当に良い。絶対にこうなる、絶対に誰もがこの展開を見たい、という全てが詰まっていた。3話の終わりで退場したあんこうチームも、決勝で勝ち上がるチームも、全てが「これを待っていた!!!!」となる展開だった。次が公開されるのは何年後かはわからんが、グランドフィナーレを飾るにふさわしい最終話中の最終話となることが期待される。なんなら2時間やってほしいくらいだ。

それはそれとして、最速4話は1話から3話までをぶっ通しで見た後に4話を観るという上映スタイルだった。いややっぱりね、1から3も良いんだわ本当に。何度か観てるけど、連続してもう一回観ると改めて良さに気づく。ガルパンには人生に大切なことが全て詰まっている。

論より突撃。みんな劇場に急げ。


Reject on Rails 2023 に応募するから Kaigi on Rails 2023 でRejectされたCFP置いときます

2023-09-30 17:10:00 +0900

タイトルの通りなんですけど、Kaigi on Rails 2023 のCFPがRejectだったので Reject on Rails 2023 に応募しようと思い、せっかくなんでRejectされたCFPも置いておこう的な奴です。応募するときに楽かなと思ったので。でも応募フォーム開いたら特にどういうCFP送ったか書く場所無かったんで、公開する意味ないやんとか思ったけどもうブログ書いちゃった後だったんで……

CFP

Abstract

Ruby on Rails, Sinatara, Grape, Hanami など、Rubyには多くのWeb Application Framework があります。これらは方法は違えど、全てRackというインターフェイスを満たすフレームワークです。このセッションでは、RubyのWebフレームワーク共通のインターフィスであるRackの仕様を満たす、自分だけののWeb Application Frameworkの作り方を通して、Rackとはなにか、自己流のDSLをどのように作っていくかを学びます。

For Review Committee

Details

Rackのインターフェイスのお話と、主にSinatraで使われているテクニックを解説しながら、独自のDSLで実用的?なWeb Application Frameworkを実装するための知識について話します。

想定する聴講者は、Railsで仕事や趣味の開発はできるけれど、Web Application Frameworkがなんで動いているのかは知らない、という初心者から中級者の間を想定しています。メタプログラミングの話がでてくるので、初学者向けでは無いと思います。

具体的には、最初に「ぼくのかんがえる最強のWAF」のDSLを示し、それを本物のWAFとして実装するためにはどんな知識が必用なのかを順を追って話していく形になると思います。例えば、次のようなDSLが使えるWAFが欲しいです、どうやって作りましょう? みたいなお話になると思います。

require 'oreno_kangaeta_saikyou_no_waf'

# あくまで今考えてる適当な例なので、どんなDSLになるかはわからんですが

get_root do
  'hellow world'
end

post_users do |request|
  user = User.new(name: request['body']['name'])
  user.save ? user.id : raise
end

このDSLを実現するためには、 / や /users にリクエストが来たときに、反応するブロックをどう定めるか? 戻り値はどの様に変換してRackに渡すか? いや、Rackってなに? エラーのハンドリングをどうするか? そもそもどうやって起動するのか? など様々なことを考える必用があります。それらをSinatraやRailsのコードを見ながら、こうやって実装すると動きますと示していく予定です。

あくまで決め打ちのコードのエッセンスを伝える感じにするので、ライブコーディングなどは予定していません。もしかしたら、最後にちょっと動かす程度はあるかも知れませんが。

Pitch

30分で伝えられる量には限りはあると思いますが、RailsでWebアプリを作ることは出来るけど、それ以上のことはできないという方々の好奇心に刺激を与えます。普段使っているツールの動作原理を知ることで、より高い解像度でツールを使えたり、新しい何かを作ったりすることの手助けができれば良いなと思います。


ジョンウィックチャプター4マジ絶対観に行ったほうがいいよ

2023-09-24 20:08:00 +0900

タイトルが全てなんだけど、ジョンウィックチャプター4はマジで絶対観た方が良い。劇場で観た方が良い。これまでのシリーズを見たこと無いなら、今すぐNetflixかAmazon prime videoに契約して観てから劇場に飛んでいった方が良い。俺たち大好きな泥臭いアクション映画の完成形がそこにある。

公式サイトと予告編を見ればわかる程度のネタバレを含めて書くけれど、そもそもジョンウィックシリーズにネタバレも何も無いと思うからあんまり気にしなくていい。ストーリーそのものは「なんだその便利制度」がチャプター2からバンバン出てくるし、チャプター4でも「なんだその便利なやつ」が遺憾なく発揮されるが、今更感があるので気にしてはダメだ。ジョンウィックに文学性や美しさをを求めてはいけない。「なんでだよ」って突っ込みはむしろ褒め言葉に近い。だからもしネタバレが混ざってても許して欲しいが、なるべくネタバレはしないように頑張る。

チャプター4のすげえなってところは、とにかくキアヌがキレてる。怒ってるとかじゃなくて、動きがキレてる。チャプター3までは、あの長回しで良い意味で下品なアクションシーンになにかちょっとモタつきというか、凄いんだけどキアヌの動きがキレてないなと感じるシーンが少なからずあった。でもチャプター4はマジでキレッキレだった。めっちゃ練習したんだと思う、凄い。キアヌが出てきて殺すが完成されている。のそっとかのしっともそっとか、そういう擬音が聞こえてきそうなシーンがマジで無い。これ以上無いくらい敵をボコボコにする褒めてる意味で下品なアクションシーンが心から堪能できる。

トンチキジャパン要素も外せない。チャプター3から既にトンチキジャパニーズは出てきたけど、なんか知らんが日本人の設定なのに日本語下手とかいう意味わからないことはなく、今回はちゃんとハリウッドにありがちな謎に強い真田広之が存分に暴れる様子が楽しめる。おヤクザさんがなぜか厨房でメシ食ってるシュールなシーンからの冷蔵庫開けたら抜き身の刀という流れも超面白くて好き。ジョンウィックシリーズにありがちな、ローカルっぽい建物の中になぜかLEDとガラスと鏡でバッキバキにキマった謎モダン空間が出てくるのも安心する。なぜか面頬風の鎧アーマーを着た敵がポコポコ沸いてきてボコボコにされていくのもいつものって感じで良い。

あと、チャプター4では車に轢かせるアクションがエグかった。過去三作でもとりあえず車に轢かれることに定評があるキアヌだけど、今回はさらにそれがパワーアップしてキアヌが車に轢かれたら敵がその五倍くらい車に轢かれる。とにかくどいつもこいつも車に轢かれる。轢けば何でも解決すると思ってそうだけど、実際は何も解決しないのがジョンウィック、すごい。今回は轢いたり轢かれたりのアクションというより、敵を車に轢かせるというアクションがかなり多くて、極まってんなぁどうやって撮ってんだこれって感じになる。もちろんキアヌも轢かれるしキアヌも轢くが、それ以上にキアヌが敵を車に轢かせる。言ってる意味がわからなければとりあえず劇場に観に行って欲しい。あとホントこいつら車に轢かれた程度ではビクともしなくて、車で轢くことに何の意味があるのだろうかと哲学的な気持ちにもなる。意味がわからん。あとバイクで車も轢いてた。

今作は防弾スーツがかなり強くなっていて、キアヌも敵もタフネスさが高すぎてなかなか死なないのがちょっと気になりポイントかもしれない。過去作ではわりとキアヌも死にそうになってるけど、防弾スーツの性能が高すぎて通しでかなり元気だ。あと、敵も同じテクノロジーで戦っているっぽくて、ビシッとキメてるのに防弾性能がクソ高い。謎の防弾テクノロジーの出所は主席なのかなんなのかわからんが、とにかく敵と味方で同じテクノロジーを使って戦うという仮面ライダーみたいなことになっている。面白い。今作で唯一気になったのは、本当に敵もキアヌもタフすぎて、アクションシーンが疲れてしまう点だった。気分を晴らすためにバカアクション映画を観ているのに、疲れてしまってはいかんのではと劇場をあとにしながら考えていた。それくらいマジで疲れる。まだ出てくんのかよはいいとして、まだ死なねえのかよって奴が多すぎる。あとお前強いんかーい、がめっちゃ出てくる。どうみても噛ませっぽい奴がクソ強い。敵の強さがインフレしまくっていて、それに合わせてキアヌも強くなっているからもう本当に疲れる。

今作は謎に凝った視点での長回しアクションもあり、本当に飽きずに楽しめる。他にも、上から落ちたり階段を転げ落ちたりするスタントの質がとにかく凄い。特に上から落ちる奴は、観ながらヒェって思わず声が出るくらいすごいスタントだった。さすがにダミー人形かなんかで撮ってると思いたいけど、多分人間なんだろうなぁ……と思うと凄い。階段のシーンも、そんなにやる必要ある? と思うくらい盛大にやってて、その後のストーリーの展開も含め多分キアヌには時間を遅くする能力があるとしか思えない。

そんなこんなで、ジョンウィックチャプター4マジ良かった。明日にでも劇場に観に行って欲しい。過去作の円盤も買うと良いと思う。

最後に、グランドシネマサンシャインのIMAXシアターでグランドクラスの席を買って観たのだけど、グランドシネマサンシャインの仕組みそのものが悪すぎてグランドシネマサンシャインのファンを辞めたくなった。IMAXでグランドクラスのシートは6000円くらいするのだけど、1200円分のミールクーポンがついている。だから映画の前に売店でジュースとかポテトを買うインセンティブが発生するのだけど、上映開始時間の20分前に劇場に着き、列に並んで最終的に着席できたのは上映開始時間の15分後というのはどういうことなんだろうか。売店が混みすぎていて全く人を裁けてないのに、ミールクーポンを持っているから並ばざるを得ない。そしてエレベーターが12階のIMAXシアター直通のはずなのに、途中のカフェとか最上階のアミューズメントとかと混線してるおかげで全然エレベーターが来ない。単に自分が余計に高い席を買っているからさらに腹が立っているだけだと思うけど、普通の値段でチケットを買っててもイラつくと思う。ジョンウィックの冒頭の5分くらいを見逃してしまったことで、本当にグランドシネマサンシャインが好きではなくなってしまった。


Twitterと長いお別れ

2023-08-26 17:59:00 +0900

Twitterのことは未だに好きだし、ここ10年くらいの人生で結構大きな割合を占めていたと思っている。正確には、ここ10年で人生を大きく変えた物ははたくさんあるけど、そのたくさんのもののそばには常にTwitterがあったという表現の方が正しいかもしれない。Twitterそのものが自分の人生を変えたわけでは無く、自分の人生を変えた出来事の記録がたくさんTwitterに残っている。当初Twitterが流行り始めた頃の表現は「マイクロブログ」だったけど、自分は未だにその表現がTwitterを表すのに最も適していると思っている。ミニでもショートでもなく、マイクロなブログ。これがTwitterの本当に素晴らしいポイントだったと思っている。

2000年代後半、しょこたんがアホみたいな勢いでブログを更新しているのを、アホだなと大して気に留めずに見ていた。たいした中身が無いし、くっだらねー戯言みたいなものを見ても面白くなかったからだ。ブログの記事一覧を見ても、意味不明なタイトルが並ぶだけで、わざわざ一個一個クリックして中身を読もうと思わなかった。けどあれは、かなり先駆的なTwitter的表現だったんだなとだいぶ後になって気づいた。Twitterが画期的だなと最も感じるところは、タイトルが必要ないところだ。しょこたんのブログのタイトル一覧ページを眺めてうんざりした体験が、Twitterには無い。Twitterを開けば、フォローしている人の最新のブログが常に目に入ってくる。このワンクリックの違いの体験が、Twitterの起こした変化の中で一番自分が好きだったものだ。

そもそも、人間はタイトルを考えるのが苦手だ。Matzも言っている。「名前大事」。そんな大事な物を、毎日何十個もポイポイ生み出せるはずが無い。だから一部のそんなこと気にしない人を除いて、自分の今をブログにショートポストしようなんて奴は多くなかった。そのコストを取り除いて、今自分が感じたことをそのままブログにポストして良いんだよ、ってやってくれたのがTwitterだった。あるいは、Twitterは本文なしのタイトルだけを投げるブログと言えるかもしれない。使い始めた最初の頃はそのことに気づいていなかったけど、あるとき自分の過去の行動をTwitterを使って思い出そうとしたときに、そのことに気づいた。タイトルなしで気軽に投稿できる公開日記なんだということに。

そのことに気づいてからは、自分のTwitterを使うときのメンタルモデルは、わりと自分用公開記録っぽくなっていった気がする。あとからTwitterを使って自分の行動を思い出したり、Twitterにメモっておいてまとめたりということはよくやった。惜しむらくは、パブリックアカウントでは何でもかんでも全てを公開できるわけではないので、心に思ったけど公開できないような気持ちや、あまりに私的で個人情報を特定可能な事柄に関しては全て抜け落ちてしまっているというのがままある点だ。鍵垢と本垢を使い分けるような器用なことができる性分ではないので、これだけは記録という意味では片手落ちだなと思った。

他には、TwitterはRSSがついに到達できなかった大規模なフィードという幻想を現実にしてくれた。Twitterが世を制し、全ての情報がTwitterに集まってくれば、Twitterでキーパーソンをウォッチしておけば勝手に情報が入ってきてくれる。そんなわりと理想に近い世界を、Twitterは作ってくれた。Twitterで情報を発信すると人が集まるので、さらに情報を発信しようとする人が集まる、という良い意味でのバイラルループも達成していた。おかげさまで多くのRSSリーダーが死に、それはそれで困ったが、そのときは深く気にしていなかった。Twitterが死ぬとは思ってなかったからだ。

Twitterは、現在進行形で破滅に向かって進んでいる。残念だけど、これはおそらくもう元に戻ることはできない。これからTwitterは、Xとかいうスーパーアプリの一部になると宣言されている。そして、実際なるんだと思う。まずそれだけでも眉をひそめるに値するが、最近は過去の資産へのアクセスや、現在進行形のWebへのアクセスにすら介入を行っている。ちょっと前にも、Twitterでの発言の自由さは偏っているとか、運営はWokeに肩入れしすぎだとか言われてたけど、そういうレベルではなくユーザーの歴史であったり、Webというつながりの自由そのものに手を出してきている。プラットフォームそのものの健全性に見いだす価値は、仮に自分とはソリが合わなくても私企業だから好きにしろと思う。けれど、ユーザーの歴史やWeb対する冒涜は、プラットフォーム以上にコミュニティに対する軽視だと思っている。今はまだXに対して苦々しい顔をするだけで済んでいるが、いずれはXを直視できなくなる日が来るだろう。それがTwitterとのお別れの日だ。

一度成立した巨大なコミュニティがすぐさま破滅することはあり得ないので、この先ゆっくりと時間を掛けて消滅していくと思う。それこそ、Yahoo! GeoCitiesとか、2ちゃんねる(まだ終わってないけど、終わったみたいなもんだと思う)とかと同じで、活発に参加する人はいなくなるけど細々と続いて、そして誰からも忘れられるような存在になっていくと思う。今はまだ、自分もTwitterにお別れを言うことは無いけれど、徐々に疎遠になっていって、そしていつの間にかお別れを言うこともなくさよならをしている気がする。さみしいけれど、永遠に続く物は無い。そしてこればかりは、個人の努力でどうこうなる物でも無い。相手はただの私企業だから、その所有者にはXを好きにする権利がある。自分にはどうすることもできない。

Twitterとの長いお別れをしながら、Twitterから離れた後どうやって自分の記憶をインターネットに残していくかを考えなくてはいけない。BlueSkyやMastodonなどの分散型SNSも移住先の候補ではあるけれど、イマイチ心情的にピンときていない。今後も色々出てくると思うので、特に急ぐことも無くゆっくりと静観していたい。ひとまず当面は、個人ブログに回帰することになると思う。ここ数ヶ月は、Twitterがいついなくなってもいいように、個人ブログを書きやすいように整備してきた。いままで技術ネタ以外をブログにあまり書かなかったが、それ以外のこともきちんと書いていこうと思って、育児の記事を書いたりもした。しばらくはこのブログを良い感じに公開日記にしていく方向で良いだろうと思っている。そのためには、もっと短いポストをポンポン投げられるようなメンタルにならないといけない。ここで改めて、ポストにタイトルを付けたくないなと感じる。

最後に、Twitterとすごした一四年間は楽しかったし、これからもまだしばらくは続くと思うので、言えるうちにありあとうと言っておきたい。


「アニメ背景美術に描かれた都市」展に行ってきた

2023-08-06 15:18:00 +0900

少し前に、どうしても気になる展示があり金沢に弾丸で飛んでいって帰ってきた。

アニメ背景美術に描かれた都市

「アニメ背景美術に描かれた都市」という展示で、金沢の谷口吉郎・吉生記念 金沢建築館という美術館で実施されている。


半年くらい子育てしてみた感想

2023-07-22 00:50:00 +0900

2022年の年末に子供が生まれて、おおよそ半年くらい子育てをしたので、感想を書いておく。特に時系列は意識していないが、だいたい生まれたときから記憶を遡りつらつらと書いているので、おおよそ時系列になっていると思う。

真面目な感想の前に全くしょうもないことを最初に言うと、実際に自分の子供を育ててみてものすごく思ったのは、人間の赤ちゃんは生物として弱すぎるのではないかということ。Wikipediaによると、ヒト属とチンパンジーの分岐が200万から1000万年前、ホモサピエンスとホモエレクトロスの分岐が20万から180万年前。ジャレド・ダイアモンド曰く人類が大躍進と呼ばれる変化をしたのが約5万年前。ってことは、5万年前の時点ではもうだいぶホモサピは自然界でだいぶ強い奴だった事はわかる。が、人類がだいぶ強くなったそのあたりから新生児が多少弱くても大丈夫な様になったとしても、5万年程度でこんっっっなに弱い新生児が生まれる様に進化したのか? と考えるといくら何でも弱くなりすぎだと思う。生後半年経っても自分で動けもしない。すぐに泣くし、泣き止まない。食べられるものの制限も大きい。睡眠時間が不規則。などなど。いくら人類が火を使えて、社会性を持っていて、他の生物からの侵略に対して強かったとは言え、あまりにもこの乳幼児は弱すぎないか? なんでこれで人類滅ばなかったんだ? というのがここ半年の率直な感想です。ここからは真面目な感想を書きます。