「Real World HTTP」著者・渋川よしき氏が「最新情報は追わない」と断言する理由

2023年10月30日

フューチャーアーキテクト株式会社 シニアアーキテクト

渋川 よしき

本田技術研究所、DeNAを経て現職。技術書の執筆や翻訳も手がけ、「実用Go言語」「Real World HTTP」「Goならわかるシステムプログラミング」の執筆、エキスパートPythonプログラミングの翻訳などを行う。2023年5月に翻訳書「ソフトウェア設計のトレードオフと誤り」を、7月に「エキスパートPythonプログラミング改定4版」を上梓。

技術や業界など仕事についての情報収集の基盤として多くのエンジニアを支えていたTwitterが、以前とは異なる姿となってゆく今、必要な情報を過不足なく収集しインプットする方法に悩みを持つ人も少なくありません。

「アフターTwitter時代の情報収集」と題したこの連載では、業界をリードする方々に、Twitterの変化によって普段の情報収集の方法がどう変わったか、欲しい情報を効率よく集めるために何をしているのかを取材します。

第1回は、「Real World HTTP」「実用Go言語」「Goならわかるシステムプログラミング」など長きにわたり愛される名著の著者であり、エンジニアとしても活躍するフューチャーアーキテクト社の渋川よしきさん。「最新情報は追っていないから、Twitterがこうなっても困っていない」と言い切る渋川さんに、その理由や普段集めている情報についてお話を聞きました。

やりたいことを実現する方法を想像できれば、最新情報を追いかける必要はない

――Twitterの騒動で、情報収集の方法に変化はありましたか?

渋川:特に変わりはないですね。もともと最新情報を広く追いかけることはほとんどしておらず、必要になったときに一次情報をしっかり読み込むスタイルなので。

――最新情報を追いかけていないのはなぜですか?

渋川:近頃はその必要性を感じなくなったからです。

過去には積極的に新しい情報を追いかけていたこともありました。エンジニアになって間もないころは、自分がやりたいことを実現するために使えそうな新しい技術や手法がないか探したり、それらの使い方のイメージを膨らませたりするために、最新の情報を幅広くインプットしていたんです。

ただ、エンジニアとして働き始めて約20年も経った今は、やりたいことをどう実現するか、なんとなくイメージができるようになっています。何かしらの言語を使ってシステムやフロントエンドをつくるとか、自然言語処理を実装するなどやりたいことがあるとき、新たに情報を得なくても、今まで身につけた知識や経験から「だいたいこうすればできそうだ」と想像できる。つまり、最新情報を集めていた当時、情報収集の目的としていたことが、情報を得ずともできるようになったんです。そのため、新しい情報を広く追いかけることはしなくなり、必要なときにその技術の最新の一次情報をキャッチアップするようになりました。

もちろん、僕が即座にイメージする方法は最新ではないかもしれないし、もっと効率が良い方法もきっとあるとは思います。でも実際に手を動かすときにその技術に関する最新の情報をキャッチアップすれば、そうした「よりよい方法」はおのずと見つかるはずだと思っています。そのため、幅広い最新情報を常に追いかけておくことに、強い必要性を感じていないんです。

――毎日の情報収集のルーティンとしてざっと見る、というようなことも、今はしていないんですか?

渋川:全くしていないわけではないですよ。おもしろそうなものが見つかれば、最新情報を追いかけることもあります。「daily.dev」はホーム画面に設定していて、「フロントエンド開発」「JavaScript」「クラウド」など開発系を主に購読するようにしています。仕事に生かそうとはあまり考えていなくて、勉強というより趣味に近い感覚です。

▲RSSリーダー「daily.dev」。英語情報が集まるRSSリーダーで、日本語版はリリースされていない

バズった情報を掘り下げないと、その技術の正しい評価はできない

――情報収集のために、何かツールやサービスは使っていますか?

渋川:X(旧Twitter)のブックマークは使っていますが、その他には特にツールは使っていません。過去にはRSSリーダーを使っていましたが、いろいろなRSSリーダーのサービスが停止していく中で使わなくなりました。

X(旧Twitter)のブックマークは、執筆活動に関わる情報収集に活用しています。過去に執筆した「実用Go言語」「Real World HTTP」「Goならわかるシステムプログラミング」や、今書いている本に関係があって、後で裏取りをしておこうと思ったツイートをフォルダに分けてブックマークしておくんです。改訂や執筆の作業前にそれらを一通り眺めて、書く内容をリストアップし、そのリストをもとに裏取りや執筆を進めています。

また、特定の分野を集中的にキャッチアップするときは、オライリーPackt Publishingなど、本の読み放題サービスを利用して、特定の対象の本を複数冊まとめて読むこともありますね。フューチャー入社時にReactの開発を初めて行ったときや、社内LT大会の発表ネタとしてゲームエンジンのGodotの使い方を覚えたとき、急遽モバイルアプリケーションを開発することになってFlutterを覚えたりしたときに実践しました。プライベートの時間を削って学習するより、仕事で必要になったタイミングで仕事の時間を使って一気にキャッチアップする方が頭に入りやすく、学習効率が良いですね。

▲イギリスを拠点とする出版社「Packt Publishing」。日本ではあまり見かけないニッチな技術書を多数出版している

――これまでの経験の中で、良い情報を集めるために有効だった方法はありますか?

渋川:1人で情報を集め切ろうとせず、自分以外の人と議論したり一緒に情報収集することです。

自分1人で調べていると、自分が理解できるところは深く調べられるけれど、そうでないところは深堀りしきれなかったり、理解できなかったりして、知識がどんどん偏っていってしまいます。自分が得意でない分野に詳しい人と話したり、一緒に情報を集めたりすれば、自分が知らない深い理解の上での意見や、自分とは違う目線での意見が聞けます。見識を広げられる貴重な機会ですから、会社でもプライベートでも、こういった機会を設けられるようにしています。

――情報収集は1人でやるものだと思っていました。誰かと、というと、どんな風に進めるんでしょうか?

渋川:会社では、テックブログで「集中連載」という体裁で、仲間を集めて集中してインプットして発信、ということをたまにやっています。複数人で幅広く調査できますし、アウトプット前提で集中して情報収集するので、短期で成果が出ますよ。

プライベートでは、技術的な話題について知人とときどき議論しています。コミュニティ活動で出会った知人や、書籍執筆の縁で出会った専門家の方と、Slack上でああでもないこうでもないと語り合っています。

――どんなテーマが議題に上るんですか?

渋川:ジャンル問わず、その時々で誰かが投げたネタが議題となることが多いですね。直近だと「HTTPSをどう例えると実態が伝わりやすいか」とか、「DynamoDBを適用したら失敗するパターン」とか、「Reactアプリのモダンな構成への切り替え」とか、「クラウドのアーキテクチャで中二病的に選ばれるけど、実際にやっても効果がない構成はこれだ」とか。

この前は「2000年初頭のXMLを駆使した開発は実際どうだったか?」というテーマについて、経験者を交えて話していました。僕は当時学生でしたから、XMLを使った経験はないのですが、自分が経験していないことを経験している人に、直接話を聞けたんです。

こうした機会を定期的に得られるおかげで、今目の前にある技術が生まれた文脈を、別の視点から考え直し、技術をフラットに評価できるようになっていると実感しています。この経験は、書籍で解説文を執筆するときに「歪んだ決めつけ」が入らないようにするのにも一役買ってくれていますね。

――「歪んだ決めつけ」というと?

渋川:技術の表面的な部分だけをなぞって、偏った評価を下すことを、「歪んだ決めつけ」と呼んでいます。

今あるどんな技術も、必要に迫られたからこそ生まれたもので、その技術によって得意不得意があります。そういったことを考慮しないで、特定の技術に対して「これができるから良い」「これができないからダメ」と言い切ってしまうのは、見方が歪んでいるように思います。あとは、自分が経験していなかったものを「なかったものとして扱う」のも歪みだと思いますので、そこは知人や周囲の人に聞いたりして補完するようにしています。

ネット、特にTwitterなどのSNSでは「バズ」、つまりある一つの面からの見方ばかりがクローズアップされた情報ばかりに注目が集まっているように思います。「バズ」での出会いをきっかけに、その技術に興味をもって深く調べるなら、良い情報収集と言えるでしょう。でも、バズった一面の情報を集めることに終始していては、その技術への見方がどんどん偏っていくのではないでしょうか。

情報の質は「一次情報」で担保する

――質の高い情報を得るために工夫していることを教えてください。

渋川:ベタかもしれませんが、一次情報である、その技術の本家のドキュメントを参照することです。Goならgo.dev、TypeScriptの文法ならtypescriptlang.org、インターネットのプロトコルとかならRFCなど、本家のドキュメントを読んでいます。

本家サイトも、専属のドキュメントライターがいてしっかり書かれているものでない場合、使用例などが足りないと感じることもあります。そのように知りたいことが書いていないときは、検索エンジンでサンプルコードを探しています

まだリリースされていないような最新情報を追いかける必要が出てきた場合には、リポジトリのコードを読んだり、issueの仕様に関する議論を読み込んだりもします。

――検索とChatGPTを併用する人もいるようですが、ChatGPTを使ってみたことはありますか?

渋川:ちょっと使ってみたんですが、あまり効率化した実感はないですね。僕が知りたい情報は比較的ニッチなこともあって、そもそも学習素材が少ないからか、あまり有用な情報は得られませんでした。

それに、ChatGPTで得た情報は一次情報ではありませんから、裏取りが必要です。結局検索と大差ない程度に手間がかかり、ChatGPTをあえて使うメリットは感じられませんでした。

――そうだったんですね。一次情報以外は全て裏取りをするんですか?

渋川:そうですね。本家以外の情報は、更新されず古くなっていたり、間違いが含まれていたりすることも多いので、そのまま鵜呑みにせず本家サイトで裏取りしています

本家のドキュメントは、その技術をつくっている人が用意しているものなので、最も新しく、最も信頼に足る情報なのではないかと考えています。本家のドキュメントを軸として、他で得た情報もここに立ち返って裏を取っておけば、質の高い情報を得られるだろうと思います。

たいていの場合そうした本家のドキュメントは英語で、機械翻訳したり原文を読み直したりと、日本語情報を得るときより多少手間はかかります。でも、そうした手間も慣れれば気にならなくなりますし、正しい情報を得るために必要なコストだと思っています。

――改めて、情報収集において大事にしているモットーは何ですか?

渋川:

  • ・目的を持ったうえで、必要な情報を過不足なく得ること
    ・一面的な意見に偏らないよう、色々な人の話を聞くこと
    ・情報の質を担保するために、一次情報で裏を取ること

この3点でしょうか。

様々なツールを駆使して、幅広く色々な分野の最新情報を取りに行くことが必要な時期も、もちろんあると思います。そうして得た情報を確実に生かしていくために、何のためにその情報を求めているのかという目的を持ち、それを果たすために適切な発信源はどこかと考えれば、チェックするべきサイトや使うべきツールは自ずと明確になっていくのではないでしょうか。

取材・構成:光松瞳

関連記事

人気記事

  • コピーしました

RSS
RSS