eye
著書54冊!? エンジニアかつ「数学ガール」著者の結城さんが語る、エンジニアのメンタルマネジメントのすゝめ
アンドエンジニア編集部
2020.11.12
この記事でわかること
若手エンジニアは、キャリアを考えるときに「自己認識のずれ」に注意しよう
メンタル不調に陥ったら、自分だけで解決しようとせず他人に相談しよう
技術ブログなどで情報発信するときには《読者のことを考える》を忘れずに

数学を勉強したことのある人なら、一度は目にしたことのある本『数学ガール』。

物語調の文章で、高校から大学レベルの難解な数学をわかりやすく説明してくれる本として、助けられた人も多いはず。

数学ガール(立ち読み版)
結城さんの代表作「数学ガール」。扱う数学は決して簡単ではないが、高校生の「僕」や、高校生のミルカとテトラ、中学生のユーリなど多彩なキャラクターの会話を通じて数学を学ぶことができる。

そんな数学ガールの著者・結城浩さんは、実はプログラミングの本も書いているエンジニアでもあるんです!

今回はそんな多様な側面を持つ結城さんに、若手エンジニアへのアドバイスをお伺いしてきました!

「発信すること」で学びの効率アップ

アンドエンジニア編集部
結城さんといえば『数学ガール』という数学物語が有名ですが、かつてはエンジニアとして働かれていたんですよね。
結城浩
そうですね。
若いときはプログラマとして、またソフトウェアエンジニアとしてばりばり開発していました。
実は私の最初の著書も、『数学ガール』ではなくC言語に関する本でした。
現在は職業エンジニアとして働いてはいませんけれど、ふつうにプログラムは書いています。
結城さんの最初の著書「C言語プログラミングのエッセンス」 amazon.comより
アンドエンジニア編集部
そうだったんですね!
これまでに、全部で何冊くらい本を書かれたんですか?
結城浩
改訂版もカウントするなら、これまでに出版された著書は54冊(※インタビュー時点)ですかね。
最初の本が出たのはいまから27年前になります。
アンドエンジニア編集部
途方もない数字だ…。
ブログですら続かない人が多いなかで、そんなに長く継続して本を書けたコツって何なんでしょう?
結城浩
「コツはこれです」みたいにまとめるのは難しいですが、自分のために情報発信していたからというのは長く継続できた理由の一つになると思います。
アンドエンジニア編集部
自分のため、ですか。
情報発信にどんなメリットがあったんでしょうか?
結城浩
当たり前のことですが、プログラミングにしろ数学にしろ、情報発信しようと思うと、内容を正確に理解し、記述する必要があります。
ですから、情報発信すると、結果として深く学ぶことができ、しかも忘れにくくなるんですよ。
結城浩
軽くさらっただけの勉強だと、結局あとから勉強し直したり、何度も検索して調べ直したりして、かえって時間が掛かることがあります。
自分から情報発信するつもりでちゃんと勉強した方が、トータルでは効率がいい場合は多いですね。
アンドエンジニア編集部
たしかに、人に教えることが一番の勉強法だ、というのはよく言われることですよね。
結城浩
ああ、それから、自分の手間を減らすために、本を書く場合もありましたね。
昔話になりますが、ネットでCGI(Common Gateway Interface)を作っていたときに、メールでたくさん質問がくるので、一つ一つに答えずに済むように本を書きました。
結城さんが書いた、CGIに関する本。CGIはかつて動的Webアプリを実装するための最もメジャーな方法だった。
結城浩
他の継続的に本を書けたモチベーションとしては、読者さんからの反応があります。
『数学ガール』がいい例ですが、『数学ガール』は当初、Webで無料公開していたんです。いまでいうWeb小説でしょうか。当時は私が作ったテキストサイトで公開しました。
アンドエンジニア編集部
数学ガールはWeb小説のはしりだったんですね…!
結城浩
公開した当初から大変評判が良くて、はてなブックマークなんかで話題になって。
読者さんからの反応がうれしくなって、どんどん続編を書くようになりました。
何編かまとまったときに、たまたまプログラミングの書籍の改訂版を何冊か出したタイミングがあり、そこで『数学ガール』の企画を編集部に提案したんですよ。
結城浩
一冊目が出るまでは、売れるかどうか出版社さんも半信半疑だったと思います。
そりゃそうですよね、「数式がたくさん出てくる物語」がそんなに売れるとは思えないでしょう。
でも、おかげさまで予想よりも非常によく売れたので、現在は出版社さんもシリーズを全面的にバックアップしてくださっていますね。
アンドエンジニア編集部
いい意味で期待を裏切られたんですね。
数学ガールは広い年齢層に親しまれている印象なんですが、これまで何冊くらい出ているんですか?
結城浩
そもそも私自身も、まさか続編が出るようになるとは思っていませんでした。でも「数学ガール」シリーズは現在までに6冊刊行され、「数学ガールの秘密ノート」は13冊が出ています。2020年11月には14冊目の『数学ガールの秘密ノート/確率の冒険』も出ますね。
たくさんの続編が出版されている「数学ガール」
アンドエンジニア編集部
もはや長編小説だ…!
結城浩
単純に執筆が継続できただけではなくて、数学ガールの方向性に関しても、読者さんからの強い影響を受けているところがあります。
たとえば、数学ガールの読者さんってどんな人が多いと思います?
アンドエンジニア編集部
僕が初めて読んだのも高校生のときでしたし、中高生や大学生ですかね…?
結城浩
そうですね。確かに中高生や大学生は多いですし、私も当初はそう思っていました。
ところが、その他にも「教える人」にも読まれていることがわかってきたんです。
学校の先生や、塾の先生、自分の子供に教える親御さんですね。
結城さんは学校の教師向けに講演も行ったことがある。結城さんの個人HPより
アンドエンジニア編集部
学校の先生、ですか。
あまり、読み物でわざわざ数学を勉強し直す必要はなさそうですが…。
結城浩
数学の勉強をするためではなくて、教え方の参考にするために読んでくださっている先生が少なくないようなんです。
読者さんの中に、そのような「教える人」がいるということを知り、数学ガールの物語の中に、より「学ぶこと」や「教えること」という要素が強く入ることを意識するようになりました。
アンドエンジニア編集部
自分の書きたいことを書くんじゃなくて、読者に合わせて書く方向が決まるなんて、かなり読者ファーストで書いてらっしゃるんですね。

自分が見ている「自分」が全てじゃないからこそ、若手エンジニアはキャリアを柔軟に考えるべき

結城浩
私は自分のやることをあまり固定的に決めすぎず、相手や状況に合わせて柔軟に変える姿勢って、20代後半から30代エンジニアのキャリアにも通じるところがあると思っています。
結城浩
20代後半から30代って、難しいお年頃だと思うんです。
まったくの初心者というわけじゃないけれど、それほど立派なキャリアがあるわけでもない。
経験を積んできて、少しずつ成長していて、それから多くの可能性が見え始めてくるころ。
アンドエンジニア編集部
ちょうどゴリゴリのエンジニアから、PMみたいなマネジメント職になる人もでてくるくらいの年齢ですよね。
結城浩
そうですね。
そんな年代のエンジニアですが、自分なりの経験があるので、ややもすると技術にフォーカスし過ぎるきらいがあるんですよ。
自分は技術で生きていくぞ、プログラミングに特化していくぞ、みたいに。
結城浩
たとえば、自分はエンジニアなんだから、マネージメントはしなくていいやとか、コミュニケーションはどうでもよくて、そんなことより技術をもっと磨けばいいんだみたいな考え方に陥ってしまう人は少なくないと思います。
アンドエンジニア編集部
そう言ってた人の顔がいくつか浮かびました(笑)。
結城浩
そんなふうに、自分はこうだから、自分のやるべきことはこれだけだ。みたいに固定して考えるのは、やっぱり楽なんですよ。それだけやってればいいので。
でも、それだと、自分の可能性を狭めてしまう危険性がある。もっと自分の可能性が広がるかもしれない時期に、自分から視野を狭くしてしまう。
アンドエンジニア編集部
でも、将来使わなさそうなスキルって確かにありません?
そういうスキルを身につけるために努力するの、億劫に感じてしまうんですよね…。
結城浩
いやいや、そもそも20代後半から30代くらいに考える「自分」なんて、自分の本当の能力をまったくとらえきれてないと思いますよ。
結城浩
自分はこんなスキルは使わない、なんて簡単に切り捨てられません。「自分はこういう人間だ」という自己認識は誰しも持っていますけれど、その自己認識がそもそもズレている可能性だってありますし。
アンドエンジニア編集部
自己認識がズレているって発想はなかったです…!

エンジニアは「自分の実力」を誤認しがち

アンドエンジニア編集部
結城さんは、著書の他にも、いろんな内容をTwitterや個人ブログ、noteなどで発信されていますよね。
これまででバズったコンテンツの中で、エンジニアへオススメしたいものはありますか?
結城浩
「プログラマの心の健康」ですかね。
これは、まだ私がエンジニアとして働いていたころ、つらかった自分を励ますために書いたものです。
SNSもない20世紀の末に書いた文章ですが、未だに読んで拡散してくれている人がいます。
Twitterで「プログラマの心の健康」と検索すると、共感の声が多々発見できる。
アンドエンジニア編集部
20年たった今でも拡散されるってすごいな…。
でも、この20年で、エンジニアを取り巻く環境もだいぶ変わっていますよね。
アンドエンジニア編集部
エンジニアはホワイトだってよく言われるようになったし、情報系の学部の社会的地位も上昇してるじゃないですか。
それでも20年前の結城さんのアドバイスが通用するワケってなんですか?
結城浩
エンジニアはその仕事の性質上、メンタルが不安定になりがちな職業なんです。
いつの時代でも、これは変わりません。
アンドエンジニア編集部
メンタルが不安定になりがち…?
確かに優秀な同僚と自分を比較して落ち込んでいるエンジニアはたくさん見ますが…。
結城浩
まさにそこです!
エンジニアは他の職種に比べて、特に優秀な同期と比較して落ち込んでしまう状態に陥りやすい理由があるんです。
エンジニアってどうしても「自分の実力」がわかりにくいんですよ。
アンドエンジニア編集部
自分の実力がわかりにくい…?
もう少し詳しく聞かせていただけますか?
結城浩
エンジニアって、コンピュータのおかげで、自分が行う仕事量に対してすごく大きな成果を生むことができるじゃないですか。
結城浩
少しのプログラミングで、これまで毎日何時間も掛かっていた仕事が数分で終えることができるようになる、なんてよくある話です。
これっていわば、レバレッジがかかった状態なんです。
アンドエンジニア編集部
なるほど。
結城浩
どうしても、そのようにレバレッジが掛かった成果物を比べてしまうことになるので、実際の能力以上に差を感じることが多いでしょうね。
もちろん、各人の能力差はあるでしょう。でも、他の業種に比べたらその能力差が極端に拡大されて見えてしまうということです。
結城浩
自分自身の成果物についてもそうです。うまくいってるときは「オレってばスゲー!」という万能感で満たされるのに対し、うまくいかないときは逆に落ち込んでしまうんです。
エンジニアは成果にレバレッジがかかっている状態で他人と自分を比べることが多い。
アンドエンジニア編集部
確かに、できる人は「瞬時に解決」するけど、できないときは「何年かかってもできなそう」という印象があります。
「完全に理解した」と「何もわからん」を繰り返すエンジニアもいますね。
結城浩
まあ「完全に理解した」はジョークの一種ですけれどね…。
あとは、技術の変化があまりにも高速で、いつも追い立てられている状態になっていることもメンタルが弱る原因の一つになるでしょう。
結城浩
先週はこのライブラリでこうするのが最先端だったけど、今週はそんなやり方はもう古い……そんなケースだってありますから、そこから受けるストレスは非常に大きいです。
アンドエンジニア編集部
真逆の仕事をやることすらありますしね…。
エンジニアは仕事の性質からすでにメンタルが不安定になりやすかったんですね。

若者が陥りがちな罠は、「成長による解決」

結城浩
メンタルが不調になったときに注意してほしいことがひとつあります。
私は医者ではないので、あくまで私の個人的な経験則ですけれど。
アンドエンジニア編集部
どんなことでしょう?
結城浩
それは、すべてを自分の力で解決しようとしないということです。
もっと具体的にいえば、○○という発想を自分が身につけさえすれば、現在のメンタルの不調に対処できる……のように考えないということです。対処方法のすべてを自分で見つけ出そうと思わないこと。
アンドエンジニア編集部
え、どこがダメなんでしょうか…?
自分でやるって、すごく前向きで推奨されるマインドセットだと思うのですが。
結城浩
逆説的ですが、この自分で解決しなくちゃという思考はけっこう危険なんです。
自分のメンタルがつらいから自分で原因を見つけて自分でどうにかしよう……という根底には、「自分のすべてを自分でどうにかできる」という考えがありますよね。「自分のすべてを自分でどうにかできる」と思っているのに、現実にはできない。だから、苦しくなるんです。
結城浩
そもそも、自分が考える「原因」が本当の原因なのか、怪しいことはよくあります。調子が悪い自分が考えることをどこまであてにしていいのか…。
アンドエンジニア編集部
原因を認識している自分を疑え、ということですね。なんだか哲学的な話だ…。
そうなると、現実にメンタル不調があったとき、どうすればいいんですか?
結城浩
私は「他者の存在」が大事だと思っています。
つらいときって「誰かにそばにいてほしい」や「誰かに話を聞いてほしい」と思いますよね。これは、他者の存在が大事だということを、みんな心のどこかではわかっているんだと思います。
結城浩
心が苦しいときには、仕事とは無関係に自分を受け入れてくれる「誰か」と話すのがいいと思います。
仕事の場ではエンジニアという役割として見られています。
そういう役割としてではなくて、いち個人として見てくれて、受け入れてくれる相手と話すのが大切ですね。「他者の存在」です。
アンドエンジニア編集部
プライベートの会話で仕事を思い出してしまい、気が休まらないやつですね…。

エンジニアが情報発信する際に大事なのは《読者のことを考える》

アンドエンジニア編集部
最近QiitaやZennなどが有名になり、技術ブログなどエンジニアが情報発信する場面も多くなってきています。
最後に、情報発信のプロとして、結城さんからなにかアドバイスはありますか?
結城浩
情報発信をするときの原則をお伝えします。
その原則とは《読者のことを考える》です。
《読者のことを考える》ができると、せっかく書いた文章がまったく読まれない、読まれたとしても伝わらないということが起きにくくなります。
アンドエンジニア編集部
それってどういう理由なんでしょう…?
内容をちゃんと書こう、ということならわかるのですが。
結城浩
もちろん内容をちゃんと書くのは大事です。
でも、文章を書く目的というのは、その内容を読者に伝えることですよね。
自分が誰に伝えようとしているのかを意識せずに、内容をちゃんと書くのは不可能なんです。
結城浩
たとえば文章を書くときには、ある用語をどのくらい詳しく説明する必要があるか、全体の長さをどのくらいにするか……そんなことを悩みますよね。文章を書く人は判断をする必要があります。
アンドエンジニア編集部
おっしゃるとおり、文章を書いているときに、書きたいこと以外にもたくさん悩みます…。
結城浩
判断をするときには《読者のことを考える》のが一番です。
自分は誰に向かって書いているのかを考えるんです。読者を深く意識することで、どのくらい詳しく説明する必要があるか、どれだけの長さが適切なのか、それに対する答えが見つかるんです。
結城浩
逆を考えればもっとわかりやすいです。もしも読者を意識せずに、書きたいことを書きたいように書いたなら、難しすぎたり、易しすぎたり、長すぎたり、短すぎたり……と読者にとって読み難く伝わりにくい文章になるでしょうね。
アンドエンジニア編集部
文章を書いているときに、自分の好きなように書いてしまうの、あるあるですよね…。
当たり前ですが、やはり《読者のことを考える》のが重要なんですね。
結城浩
そうです。
自分向けに書く簡単なメモであっても、《未来の自分》という読者のことを考えて書くのがいいですね。
どうせ読むのは自分だからなんて適当に書いたメモは、読み返したときにわけがわからなかったりします。
アンドエンジニア編集部
分かります!
技術ブログでもメモでも、適当に書いてしまって後から見返すと何を書いてるかわからない…みたいな経験はエンジニアなら誰しもありそう…。
結城浩
文章を書くときの《読者のことを考える》という原則は、本当に重要です。
私はこの原則を伝えるために「数学文章作法」という本を書いたくらいです!
書籍『数学文章作法』基礎編・推敲編
アンドエンジニア編集部
本当に色々な本を書かれているんですね…!
本日は貴重なお話をありがとうございました。
アンドエンジニアでも、《読者のことを考える》を改めて徹底していきます!
アンドエンジニア編集部
「エンジニアのこと、エンジニアから。」エンジニア向けの情報をエンジニアの視点から届ける、エンジニアのエンジニアによるエンジニアのためのWebメディアです。
アンドエンジニア編集部の記事一覧を見る
この記事をシェア