麻雀再入門

2025/05/24

最近は将棋を勉強して本を読んでいたりしたが、運のない実力世界に限界を感じて減速気味。代わりといってはなんだが麻雀にハマっている。麻雀は運の要素もあり、4人でやるのでランダム性も高く中毒性が高い。

大学の時に何もわからず打っていたが、今やってる麻雀はまったく別のゲームだと感じる。自分の手作りだけでなくその場の状況を読み、押し引きをバランスし、不利な状況と分かっていても震えながら攻めることが必要な場面がある。それを教えてくれたのは麻雀プロの実況で、Mリーグとその前進のRTDリーグのプロの解説を見て学んばせてもらった。いまMリーグの盛り上がりがすごいが、麻雀人口もとても拡大しているのではないかと思う。

「じゃんたま」というアプリでオンラインでやっている。じゃんたまは麻雀サービスの中では後発だがその使いやすさで一気にスタンダードになった。他サービスに比べてアバターに課金する要素も大きく、アニメーションなども綺麗で画面の賑やかで楽しくなっている。段位があがるごとに上のレベルの卓に参加できる仕組みだが、今日雀豪という位に上がることができた。その手前でしばらく足踏みしていたが、これも完全に麻雀プロが自分の思考を喋りながら打つYouTubeチャンネルのおかげだ。勝ち負けではなく内容の出来・不出来を反省できるのはとても楽しい。

プロの解説の中で一番面白かったのが、場面によってはもう他者を無視して突き進むということだ。麻雀にはリーチという役があり、アガれる状態にあることを宣言することで手役があがる。自分はリーチされるとどうしても怖くなって及び腰になっていたが、プロは勝負所では一歩も引かず前に出る。その結果負けることもあるが、通算では勝つ確率が高くなる。一番良くないのは振り込みを恐れるあまりずっと守備的に打ち続けてしまうことらしい。そうなると勝負所のバランス感覚がいつまでたっても養われず上達しない。学ぶためにはリスクを取って前に進むことも必要。それを麻雀は教えてくれる。


Webサービスは壊れやすい

2025/05/23

作ってリリースするまでは良いが、リリースすると次はそのメンテが始まる。初期の頃にユーザーがついてくれるのは本当にありがたいことだが、要望やフィードバックを受けての改善と新機能開発の2つのレーンを進めることになるので忙しくはなる。初期の頃はスピード重視。要望に応え、不具合をすぐ治し、新しい機能をリリースすることでワクワクしてもらう。サービスを気に入ってくれる人が増えればクチコミが広がる。こうして初期のポジティブなサイクルが周りはじめるが、スピードを重視するあまり品質があまりに下がると大ブレーキがかかってしまう。

同じ作業をしていても、リリース後はリリース前よりかなりスピードが落ちる。これは既存ユーザーへの影響を考える必要があるため。リリース前なら自分たちしか使ってないのでデータをいつでもリセットできるが、既存ユーザーに変更を案内する大変さを考えるとこれまで通りで動くように上手い仕様を考えたくなる。こうして考えられた仕様はすこし変化球となるため開発も時間がかかる。リリース前のテストもより入念に行う必要がある。思わぬ影響でサービスが止まってしまってはいけないからだ。

バグが溢れ始めると負のサイクルが始まる。見通しの悪いコードベースではどこになんの処理があるかわからない。目の前の不具合を治すと別の箇所で3つの不具合が出る。しかしそれには気づけずリリースし、ユーザーからのフィードバックで気づいて慌てて直す。ユーザーからの信頼はすり減る。開発チームは徒労感を覚え、またバグをリリースしてしまうのではないかと自分たちのサービスに自信を失くす。組織の持つ大きな目標になかなか近づけず、ただ毎日タスクに追われる日々となってしまう。

こんな事態を防ぐためにも、リリース前、せめてサービスが本格的に成長する前に安心のガードレールを作っておきたい。ソフトウェア開発におけるガードレールとはテストコードのことで、いろいろな角度や粒度でプロダクトを検証することでバグを未然に防ぐことを目的とする。例えばカレンダーの日付のロジック。「日曜24時」というのは日曜なのか月曜なのか間違えやすい。テストコードを書くことで期待する動作がどういうものか、これはどういう意図で実装しているかを後世に残すことができる。人間がチェックするのと同じようにボタンを順番にクリックし、期待する文字列が画面に表示されているかを確認するテストもある(UIテスト)。これはより実際の環境に近いところで確認できるためユーザーと近い目線でバグを見つけやすい。ただし画面からボタンを探してクリックするような処理は複雑で壊れやすく、原因不明でテストが失敗することもあり管理が難しい。AIが更なる進化を遂げ、「画面の更新ボタンを押すとラベルの色が変わること」などと日本語で書いておけばいい感じにテストしてくれるような未来に期待している。安心してリリースでき、楽しい部分である機能実装に集中できる世界がうれしい。


習慣は場所に紐づく

2025/05/22

習慣は場所に紐づく、とは習慣本の名著「複利で伸びる1つの習慣」にある一節。例えば普段寝転んでテレビを観ているソファに座って仕事をするのは難しい。人は場所と習慣を紐づける修正がある。

一時期部屋のレイアウトの都合上仕事部屋のモニターでゲームをしていた。このモニターは仕事中も使う。こうなると仕事中にゲームの電源をつけたくなり、集中が難しくなってしまう。そういった場合の対策も本の中で紹介されている。それは「その行動を面倒くさくする」こと。ゲーム機の場合はコード類を外し、棚の引き出しに入れてしまう。本当にゲームしたければ棚から出せばすぐできるが、仕事中はゲームのことを考えなくてすむ。

家の中だけでなく外にも同じことが言える。例えばパソコンが出来るお気に入りのカフェを持つ。そこは適度に座席間の距離が離れていて、パソコンで長時間作業をしていても店員さんは放っておいてくれる。日常のリズムを崩して仕事に身が入らなくなるとき、そのカフェに行くと良い仕事ができて自然と整うことができる。

最近読書ができておらず、なんとなく気持ちに余裕がない。そんな時は街の本屋さんに行って気になる本を適当に買う。街の本屋さんは大型書店よりも選書が効いていてラインナップに色があるのがよい。今読みたいと思った本は自分の精神状態を反映している。その本を持ってゆっくりお茶を飲みながら本を読む。そうして自分の生活を整えていく。


社会人初期に読んでよかった本

2025/05/21

社会人になりたての頃、右も左も分からず戸惑うことばかりだった。そんな時期に出会ってよかったと思える本がいくつかある。今回はその中から特に印象に残っている3冊を紹介したい。

まずはデール・カーネギーの「人を動かす」。タイトルだけ見るとリーダー論やマネジメントの本のように思えるが、実際は「どんな人間を目指すべきか」という根本的なテーマが語られている。例えば、部下が大きなミスをしたとき、普通なら叱責してしまいそうな場面で、カーネギーは「これだけのミスをしたなら彼はもう間違えない」と続投させる。自分には到底できそうにない胆力だが、人としての魅力や信頼の築き方について深く考えさせられた。

次に「社会人1年目の教科書」。仕事を始めたとき、学生時代とは何もかもが違って戸惑うことが多かった。自分はまず誰かのやり方を真似てみて、そこから自分なりに取捨選択していくタイプ。この本は社会人として気をつけるべきポイントを肩肘張らないやさしい言葉で教えてくれる。なかでも印象に残っているのが「オフィスを移動する際は廊下ではなく机の間を歩け」という章。働いている人たちの雰囲気や空気感を感じ取ることの大切さを説いていて、なぜかずっと心に残っている。会社がフリーアドレスになるまではよく実践していた。

そして「20歳のときに知っておきたかったこと スタンフォード大学集中講義」。常識を疑うことやリスクを恐れすぎないことなど、仕事に対する心構えを教えてくれる一冊。この本がベストセラーになったあたりから「20歳」や「30代までに」など年代のキーワードが入った本が爆増した。ターゲットが明確で、知らないことで損をしたくないという気持ちに刺さる効果があるように思う。この本は学生時代の卒業間際に読んだが、書かれてる内容を実践してみたくなり、社会人初日を楽しみにしていたのをよく覚えている。


AIライティングが面白い

2025/05/20

AIライティングというテーマが少し盛り上がっている。これは自分の過去の文章をAIに分析させ、自分の文体や特徴を真似することで自分専用の執筆アシスタントが作れるという取り組み。自分でも試してみたがかなり面白く可能性を感じている。

まず前準備として、自分がこれまで書いた文章からAIに自分の文体を抽出してもらう。これをファイルに保存しておくのだが、慣習的にはwriting-style.md というファイル名で保存することが多いらしい。例えばこの日記の特徴を出してもらうと、『「自分にとって」という視点を大切にし、一般論を避ける傾向がある』『技術的な事柄も専門用語を極力避け、一般読者にもわかるよう説明する』などが挙げられた。こうして突きつけられるとなんだか恥ずかしいが、言われてみると意識しながら書いているような気もしてくる。

次に、自分が書きたい内容を箇条書き等の適当な形でまとめ、それを自分の文体に合わせて肉付け・文章化を行ってもらう。トピックは網羅しつつも、導入や展開、言葉遣いなどが自分らしい文章となって作られる。あとは少し手直しして完了。普通に書くよりも2-3割エネルギーが節約される感じがした。

AIにすべてを委ねて開発していく「バイブ・コーディング(Vibe Coding)」に対し、これらの手法は「バイブ・ライティング(Vibe Writing)」と呼ぶことができる。ソースコードは実装したあとに運用が必要になるためバグが混入してないか注意を払う必要があるが、記事コンテンツは一度書き上げてしまえば公開して終わりというケースも少なくない。特にドキュメントやビジネス文書、PR文言など、書き上げるゴールが見えている場合はかなり作業を省エネ化できそうだ。

しかし、日記やエッセイといった性質の文章は明確なゴールはなく、それを書くこと自体が目的となっている。こういう「書きながら考える」「書くから考えられる」ものはバイブ・ライティングとは相性が悪いだろう。日記やエッセイのAI活用では、AIに書いてもらうのではなく、日記をすべて読んでもらって自分のコピー像を作る方が有用な気がする。道に迷ったり視野が狭くなったときに過去の自分に相談する。友人よりも経験や文脈に沿ったアドバイスをしてくれるので、ハッとさせられる日が来るかもしれない。いずれにせよ自分についての文章をテキスト化しておいておくと、AI時代には何かと役立つかもしれません。