祝100万記事
Qiitaの記事数が100万記事を超えたそうです。
私自身、プログラミングで手詰まりになった際、Qiitaの記事で解決出来たことも多々ありますので、日々アウトプットしてくださるQiitaユーザの皆様がいることで、多くのエンジニアの助けになっているものと思います。
一方で、Qiitaの記事はもちろん、読者やカンファレンスに参加して学びを深めているものの、パブリックな場所でのアウトプットに踏み出せていない方々も多くいらっしゃると思います。
今回はそんな方向けに、インプットしたことを直接アウトプットに変換し、自身が学びを深めていることを見える化するツールなどを紹介したいと思います。
そもそもアウトプットは面倒くさいし時間がかかる
学んだことをアウトプットする場合は、自分自身というフィルターを通す必要があります。インプットした学びを自分の言葉に変換する処理は、時間がかかり大変だということは、何らかのドキュメント作成経験がある方は誰しも覚えがあると思います。
GitHubに草を生やすことへの抵抗
学んだことをプログラミングして、GitHubにPushすると、ダッシュボードでコミットの履歴がビジュアライズされるため、自主学習の成果が見えるようになります。
ですが、この手法も学んだことを自分のプログラムに変換する行為を伴います。
エンジニアであればプログラミングという行為にハードルの高さを感じることはないと思いますが、他方で若い世代では最早「私有PC自体持っていない」なんてことも珍しくなくなってきました。
他にも、書籍でテクニックは学んだが、いざプログラミングしようとなると具体的にどのようなプログラムを作れば分からず、最初の一歩を踏み出せないという意見も聞いたことがあります。
資格取得への抵抗
資格も客観的に評価しやすいアウトカムになりますが、勉強していることに対して全てが資格に結びつくことはありません。
具体的には「ヘキサゴナルアーキテクチャを学び理解を深める」学習が例となります(2025年1月現在)。
余談。ドメイン駆動設計(DDD)は、2023年に改定された応用情報技術者試験のシラバスで、ソフトウェア開発手法に追加されました。
QiitaやZenn等に記事投稿することへの抵抗
Qiitaを始めとするSNSやブログでの記事投稿は、プログラミング以上に困難を伴うアウトプットだと個人的には思っています。
自身の脳内に保管されている情報を文章として出力し、なおかつ他人が読みやすくなるように配慮・推敲する必要があるために、書いては消し、編集しを繰り返すことになります。
抵抗を減らすための活動
前述したアウトプットへの抵抗を乗り越えるには、実際にアウトプットを繰り返す以外に手段はないと考えます。
最初の一歩さえ踏み出してしまえば、あとは自然と2歩目、3歩目と続きます。
ただ、いつも問題になるのは「最初の一歩」です。この一歩はゼロベースからのスタートなので、最も大きな抵抗を感じる瞬間です。
インプットを変換せずそのままアウトプットする
アウトプットしないなら、インプットを見える化してしまいましょう。
具体的には、以下のようなツールを使います。
読書メーター
読書に関する情報を管理できるWebアプリです。スマホ用のアプリもあります(重要)。
何月に何ページ読んだか、過去にどのような本を読んだかを記録できる一方、これから読みたい本、買ったけど積んだままの本も記録できます。
読書メーターはSNSなので、自身が何の本を読んだかが公開されます。
例えば、以下は私の記録です。
社内のメンバー同士で読書の記録を見せ合えば、自身がどのような技術に興味を持っていて、どの程度深く学習しているかを互いに理解できるので、会話のレベル感を合わせることもできますし、自身が読書をしている(≒自助努力、学習のための投資をしている)ことのアピールにもなると思います。
また、読書を終えたタイミングでは任意で感想を記録することができます。
あくまで任意なので、必ず書く必要はありませんが、たった一言でも「面白かった」「つまらなかった」など書くと良いでしょう。
その一言がアウトプットの第一歩です。
connpass
「エンジニアをつなぐ勉強会プラットフォーム」を掲げるWebサービスです。
私がよく参加するのはファインディのイベントですが、それ以外にも多数の勉強会が開催されています。
興味のあるワードでイベントを調べて、自身のレベルに合わせた勉強会に参加してみましょう。
参加したイベントは記録され、第三者から見えるようになります。
例えば、以下は私の参加したイベントです。
※要会員登録
こちらは読書メーターとは異なり、コメントなどを記録することはできませんが、自身の学習の足跡がバッチリ残ります。その足跡もいわばアウトプットの半歩です。
可能であれば、勉強会の感想を同僚でも良いので身近な人に話したり、チーム内へフィードバックするのも良いでしょう。これも立派なアウトプットです。
そもそもインプットする時間さえない人へ
実はインプットするための時間的余裕がある人は殆どいないと思います。私を含め、皆やりたいこと、やらなければならないことがあります。
では、積極的にインプットする人と、そうでない人の差は何かと言えば 「インプットする時間を計画している」 か、していないかだと考えます。
私の場合、インプットする時間を確保するためにフレックス制度を活用し、満員電車を回避することで通勤中に読書できる時間を確保しました。1日の読書時間は往復合わせてもせいぜい1時間前後ですが、1週間=5日間出勤すれば5時間になります。
例えば、日曜日に5時間続けて読書することは読書家でなければ難しいと思います。ですが、分散すれば1週間単位で見た時に同じ量のインプットをできたことになります。
正直な話、読書分散の観点は人により合う、合わないが多大にあると思っています。
特に技術書の読書は「読むモード」にダイブ(集中)することで、より理解を深めながら読み進められる人も多いでしょう。
ですので、ご自身のスタイルに合わせたやり方を計画することが重要です。
【重要】本当にインプットできない人もいる
私は一児の父ですので経験がありますが、家族に乳児や未就学児がいる等、家庭に大きく時間を割かなければならないタイミングが人生には必ずあります。
そういった方は無理に時間を作るべきではありません。家族を優先しましょう。家族だけでもありません、あなた自身の健康も優先しましょう。
過酷な状況で無理矢理にでも自身に更なる制約を課すことは、破綻につながります。特に家庭、或いは自身の心に亀裂が入ると、修復にかかるコストは最悪の場合一生涯ついてまわるものになりかねません。
ラーニングピラミッド
私が挙げた作戦はわずか2例ですが、インプットを自動的にアウトプットに変換したら、先にも述べた通り「読書の感想を書く」、「勉強会の内容をチームにフィードバックをする」ことを厚くしていきましょう。
それを続けるうちに、チーム内向けに技術記事を書く、チーム内向けに勉強会を主催する、社内向けに技術記事を書く...といった具合で、アウトプットの輪を自然と拡げていけるようになると思います。
「勉強会の足跡はアウトプットの半歩」と先に述べましたが、この考えは「ラーニングピラミッド」という考えに基づきます。
詳細は上記リンク先を参照していただければと思いますが、学習定着率を「講義を聞いた」は「読書した」の半分なので、そのように表現しました。
そして、学習定着には自身が主体となる行動で学んだことを実践することが必要であることを、ラーニングピラミッドでは示しています。
故に、アウトプットのための第一歩を刻むことはとても重要です。
余計な学びも大事!
私が尊敬している登 大遊さんは、技術とは一見無関係な知識が脳内で複雑な反応をし、高い成果を生み出す可能性を秘めていることを「超正統派」として説いています。
技術のインプットだけでなく、遊び心や好奇心、或いはランダムに選んだジャンルのインプットもしていきましょう。
(似たようなことを「『技術書』の読書術」で言及されていた記憶があります)
まとめ
アウトプットは非常に大事ですが、人はいきなり変わることはできません。少しずつインプットする習慣をつけ、そのインプットは自動的にアウトプットされるようにし、少しずつ自主的にアウトプットできるようになっていきましょう!
最後に、自分自身と、おじさんエンジニアに向けて
先日行われたQiita Advent Calendar 2024 Online Meetupの中で、小島優介さんが「30代後半から発信活動を始めたら劇的に人生が変わった話」をしてくださりました。私自身、Qiitaへの投稿を開始したのは30代後半からなので、大変勇気をもらえました。
"It is never too late to be what you might have been"(志を立てるのに遅すぎるということはない)という言葉もあります。もし今、年齢を理由に踏み出すことをためらっている方は、そのためらいを捨てましょう。
あらゆるアウトプットが、社会の役に立つ可能性を秘めています。
この記事がきっかけになり、アウトプットへの大事な一歩を踏み出す決心をしてくれる方が一人でもいらっしゃれば幸甚です。