かつて個人ホームーページが大流行し、ブログが登場してそれに取って代わりました。
今はSNS全盛で、ブログは押され気味でしょうか。
しかしブログはまだまだ現役のメディアです。そしてプログラミングと、あるいはプログラマーととても相性のいいメディアです。
知識の共有意識が高いエンジニアがたくさんいて、日々の仕事を通して学んだことをブログで公開しています。中には、初心者用の記事を書いてくれている尊い人達もいます。
そういう情報をありがたく頂戴しつつ、ぜひとも皆さんのほうからも情報発信して、知識共有の輪に参加してみてください。
初心者だし、とためらう必要はありません。初心者だからこそ書ける、「刺さる」記事というものもあるのです。
この記事では、知識の共有という観点から、プログラミング初心者のブログ活用術を掘り下げます。
プログラミングにおけるブログの活用法は
プログラミングに関するブログは、非常にたくさんあります。おそらく、プログラマーの中には書くことが好きな人が多いのでしょう。プログラムもブログも、「書く」、ものであるという点では共通しています。
また、学習内容の定着やモチベーション維持のために、プログラミングに関するブログを書くこともお勧めです。
ここでは、ブログのプログラミング学習への活用法として、「調べる」「読む」「書く」の3つを紹介します。
トラブルシューター
プログラミングをしていると、毎日のように何かしらのブログを見ることになります。それは、エラーが出たときに検索すると、どこかのブログにたどり着くことが多いからです。
なにかのトラブルに遭遇し、それを解決した過程を「備忘録」とか「メモ」という形で丁寧に記録してくれているブログがたくさんあります。学習過程の比較的単純な問題から、実務現場の難しいものまで、様々なレベルのものがあります。
自分が遭遇するようなエラーは、ほとんどすでにどこかで誰かが遭遇し、解決しています。そのうちの何人かが記録しくれることで、あとから来る人々の道しるべとなります。
もし同じような事例が見つからなくても、大概、何らかのヒントになるようなものは見つかります。そういうヒントを複数見つけて、つなぎ合わせて何とか解決にこぎつけることもあります。
このようなブログの利用は、学習段階だけでなく業務としてプログラミングを行うようになってからも、しょっちゅうすることになるでしょう。
ただし、トラブルシューティングにブログ記事を利用するためには、ちょっとしたコツがあります。
まず、日付に注意します。数年前と現在では状況が違っていて、使えない、または使うのに工夫がいるノウハウも多々あります。
そして実行環境にも注意が必要です。MacとWindows、あるいはLinuxとでは、同じようなエラーメッセージに対しても対処法が違うことがあります。また、OSのバージョンによっても違う場合があります。言語の処理系のバージョンが違えば、エラーメッセージそのものが微妙に違うこともあり、その場合は読み替えが必要です。
エンジニアならばこういう事情はちゃんとわかっていて、実行環境を書いていてくれるはずですから、よく確認しましょう。
インプット:学習教材として
学習に役立つブログもたくさんあります。
ある言語を学ぶときにどんな本を読んだか、どのようなオンラインサービスやスクールを利用したか、などが書かれている「学習記録」とか、未経験からエンジニアになるまでの過程を綴った「体験記」などは読み物としておもしろものが多いです。
中には、ある言語の入門記事を網羅的に書いているとてもありがたいブログもあります。
アウトプット:学習記録として
プログラミング学習におけるアウトプットといえば、当然コードを書くことですが、そのほかにブログも書くといいという人は多くいます。書くことこそが、プログラミング学習へのブログ活用の、本命とも言えます。
学校で書く「振り返りシート」のようなものです。その目的の1つは、学習内容を定着させることです。自分が何を学びどれだけ進歩したかを書くことにより、モチベーションを上げ、次の学習につながる効果も期待できます。
毎日体重を記録するだけでダイエット効果が期待できると言われているように、記録することはそれだけで自分をよくする効果があります。
ブログを読む:お役立ちブログ4選
なにか新しいことに興味を持ったとき、とりあえずそれに関連するブログを読む、という人は多いでしょう。自分と同じ興味・関心を持った人がすぐに見つかるのがネットのよいところです。
「プログラミング ブログ」とか「プログラミング日記」というキーワードで検索すると、たくさんのサイトがヒットします。様々な経歴や立場の人が様々な動機でプログラミング学習をしている様子がわかります。自分に近い立場の人のブログを探して読んでみると、いろいろ参考になるでしょう。
また、「Ruby ブログ」とか「Python ブログ」のように、言語名+ブログで検索すると、その言語を使っている人達のブログに行き着きます。自分が現在学習中の、あるいはこれから学習したい言語があるのならば、一度検索してみてはいかがでしょうか。なんとなく、言語の流行り廃りなんかも分かります。
以下では、数あるプログラミングブログの中でも、割とメジャーな、有用性の高いものを選んで紹介します。
学習コンテンツ型ブログ
『ほんっとに初めてのHTM5とCSS3』
HTML&CSSの、初歩の初歩から解説したブログです。
INDEX(目次)の順番に読んでいくと、まっさらな状態からだんだんといろいろなタグを使いこなせるようになっていきます。コード例を真似していくことで、学習を進めるようになっています。
非常に詳しく書かれていて、かなりの情報量です。読み応えがあります。初心者がつまずきそうなところに先回りして助け船を出してくれていて、とても親切です。
索引も充実しており、タグごとに記事へのリンクが張ってあるので調べたいことがすぐに引けます。
HTML&CSSの学習者は、1度は目を通しておきたいブログです。
『Pythonでもっと自由を』
プログラミングの初~中級者を対象にした、Python学習ブログです。
Pythonの基本文法やライブラリに関するコンテンツが中心になっています。
図やサンプルコードがふんだんに使われていて、とても分かりやすく書かれています。
基本文法のところでは、Python特有の概念など、つまずきやすそうなところを、処理手順を図解することによって懇切丁寧に解説しています。ぜひとも手を動かして、サンプルコードを打ち込んで実行しながら学習したい内容です。
体験記型ブログ
『COMBLOG』
現役フリーランスエンジニアの人が運営するブログです。フリーランスエンジニアとして生きるためのノウハウが多数発信されています。
中でも、『プロフィール』のページがめっぽう面白いです。まったく未経験の状態からフリーランスとして成功するまでの体験が、ユーモアを交えて綴られています。その破天荒ぶりが痛快です。こう言ってはナンですが、彼にできるのなら自分にもできるのではないか、と思わせてくれます。
プログラミングの世界に踏み込もうか躊躇している人の背中を、強く押してくれること請け合いです。
『箱のプログラミング日記』
エンジニアが、日々学んだことなどを綴っている日記です
エンジニアが、日々学んだことなどを綴っている日記です。RubyやRailsの話題が中心です。
初心者には難しい内容も多いのですが、実践的な勉強のしかたとか、プログラミング日記の書き方の雰囲気をつかむのにはよいと思います。
コード例が豊富に載っているので、読むと勉強になります。実際に開発現場で起こった問題とその解決策が、リアルに学べます。
ブログを書く
プログラミングを学習しながらブログを書くことには、様々な効用があります。
モチベーションの維持や学習内容の定着といった自分のためになることはもちろん、世のため人のためになるという意義も小さくありません。
初心者だから人の役に立つようなものは書けない、ということはありません。プログラミング未経験者が経験者になっていく過程は、世の中にたくさんいる未経験者の読みたいものでしょう。
特にプログラミングスクールを利用している、などということであれば、他の初心者の皆さんも興味津々でしょう。かなりの潜在的読者が見込まれます。
内容については、特段独自性が高い必要はありません。ブログで「売れよう」というのなら話は別ですが、基本的には自分のために書くもので、結果として人の役に立てればよい、というスタンスで十分でしょう。
ほかの人の書いたブログを読んでためになるとか面白いと思ったならば、ぜひ、それに習ってブログを始めてみましょう。
また、努力したことが伝わる良いブログは、それ自体が立派なポートフォリオになり得ます。就職や案件獲得に向けてのアピールポイントとして使うこともできるのです。
それでは次に、「学習体験記」と「トラブルシューティング」の書き方について考えてみます。これらは共に、自分のため、そしてほかの人のためになりやすいコンテンツです。
学習体験記
『独学大全』というベストセラー本の中に、「ラーニングログ」という章があります。学習を継続するための方法のひとつとして紹介されています。学習内容をこまめに記録し、時折読み直すことによって、やる気が継続する、というわけです。
また、『独学大全』には「ゲートキーパー」という章があって、誰かに「自分はこれをする」と宣言することにより挫折を防ぐ方法が書かれています。
ブログを書くという行為によって、この「ラーニングログ」と「ゲートキーパー」の効果が同時に得られます。
記録をとることで学習の進捗が把握できると同時に、誰かに読まれていると意識することで「今日もやらなきゃ」という気持ちになります。
内容については、きちんと様式を決めて記録をとる形でも、日記風につれづれなるままに心のおもむくところを書き留めるのでもよいでしょう。いずれにせよ、まず最初に「学習目標」を掲げておくと、指針になります。
どんな教材で何を学んだか、ということを書いておくと、読む人の参考になるでしょう。もうすでにプログラミングを学び初めてからしばらくたってしまったから、ブログを始めるとしても、今さらだな、とは思わないでください。
次に何か新しい言語を学び始める、というタイミングでブログを始めるのも大いにアリです。フレッシュな気持ちで学習をスタートできます。
そして、「学習記録ブログだから習得してしまったら終わり」とも考えないでください。プログラミング言語は星の数ほどあるし、新しい技術もどんど生み出されています、学びに終わりはないのです。
【参考文献】『独学大全』読書猿・著、ダイヤモンド社(2020)
トラブルシューティングの記録
プログラミングをやっていると、必ずエラーなどのトラブルに遭遇します。それを解決した過程を自分のブログに記録しておけば、後に自分がまた同じトラブルに遭遇したときの備えにもなるし、何より同じトラブルにハマる他のプログラマーの助けになります。
さすがに全部のトラブルを記録するのは無理なので、大きなもの、印象に残るもの、解決してスカッとしたものなどを記せばよいでしょう。
その際、トラブルが起きたPCのスペック、OSのバージョン、言語の処理系のバージョン等の環境を書いておくと、よりありがたがられるでしょう。
どんなトラブルかという記述と、解決方法については、読んだ人が自力で解決できるようになるべく詳細に書いてください。エラーメッセージはそのまま貼り付けておくと、検索で引っかかりやすくなります。
トラブル解決の際、参考にしたサイトがあればリンクを張っておくのを忘れずに。
全部を自力で解決したのではなく、大半を他のサイトに頼り、それで解決しなかった一部分を自力で解決した、というようなケースでも、十分記録に値します。環境の変化によって、前のやり方では解決できなくなっている可能性があります。それをアップデートする情報は貴重です。
結局、いろいろなブログ記事の中でもこの手のトラブルシューティング系が一番お世話になる気がします。皆さんも、お世話になったら恩返しのつもりで、トラブルシューティング記録を書いてみてはいかがでしょうか。
まとめ
雑多なイメージがあるブログですが、探せばまだまだ宝石は見つかります。そして次の宝石を生み出すのはあなたかもしれません。