はじめに
現在、自分はPythonから身を離れてRubyを勉強している。現在のスキルとしては、gemがなんとか書け(これについては、後ほど報告)Railsでアプリケーションも書けるようになったというレベルだ。つまり、Rubyで軽量なアプリケーションならば、自力で作成できるくらいには、なんとか書けるようになった。
よちよち歩きでRubyを歩き始めたという現状として、では実際にRubyはどういう風な挙動をしているのか、というのを理解して、Rubyでのコーディング精度を高めないといけないなーというのは実感しつつある。ただ、同時にこういうときこそ、勉強メモをどんどん書いて勉強していくチャンスだなと思ったりもした。
なぜ学びはじめに文章を残しておいたほうがいいのか
学びはじめは、発見がたくさんある
Rubyをいじっていてもそうだけど、慣れないものというのは、慣れないが故に、学ぶことがたくさんある。「ああ、こういうことになっていたのか!」という驚きであったり、あるいは「うわ、こんなことが解ってなかったのか」みたいな落胆というのがある。
そういう発見というのは、コードを書くことに慣れてくると、なかなか発見が生まれなくなってくる。そうすると、別に書き残しておくことが無くなってしまう。そういう意味では、書き残すことが多いことは「学びはじめ」だということが出来る。
文章にすることで、その「発見」に対してのアプローチが言語化される
そもそも、これは個人的な好みがあるのだれけれど、自分としては、「ああ、こうすればいいんだ!」ということに関して、できるだけ文章に残したほうがいいのかと思ったりもする。文章にすると、そのことについて、「これを言うために必要な検証に穴があるな」といったところや、「どのへんをを掘り下げればよいのか」ということがわかったりする。そうすると、その「発見」に対する体験を深く掘り下げられるように感じる。
人を意識すると、「発見」に対してどう噛み砕くかを意識できる
あともう一つとして、公開することによって、「人がどう読むか」を意識して文書を書くようになると思う。そうすると、「この言い回しだと、本当に伝わっているのか」ということであったり、あるいは「これは自分で解ったように思うけれど、人に説明するときには伝わるのだろうか」といったようなことが意識できると思う。そうすると、その「発見」について、より噛み砕いて考えるように意識できる気がする。
人に検証してもらうと、自分が意識していなかった知見を得ることができる
当然のことながら、文章で公開することによって、いろいろな人の目に触れることになる。人の目に触れることによって、自分が考えていることについて、検証される機会が増える。もちろん、検証している人も多くいるわけではないが、その可能性が全く無いよりは、たぶんマシだと思う。
学びはじめのことこそ、皆がつまずく可能性のことかもしれない
自分もプログラマとしては凡人レベルだと思っている。凡人であるということは、たぶんそこらにいるプログラマと同じレベルか(同じレベルというとそれ以下だ、という落語の名言があったけど)、それ以下だwと思っている。そして、そういう人間がつまずくということは、多くの人もつまずく可能性があるということだ。それをメモしておくのは悪くない気がしている。(そういえば、はてなブログで書く前にやっていたPythonの勉強についても、些細なことをブログにメモしたりしていたが、今でもたまに参照されているようだ)
どうやって文章を残すのか
ブログでは足りないわけ
自分なんかもそうなんだけど、割とこういったブログの文章を書くときには、ある程度、書き残してもよい、自分の中で確証したことを書くように意識することが多い(今回の記事についてもそうだろう)。というのも、やっぱり曖昧な知識を書き残すのは恥ずかしいというのがある。
とはいえ、こうやって文章を書き残すのは、当然のことながらチヤホヤされたい、という承認欲求の部分があることは疑いようの無い事実であることを認めつつ、しかしやはり公開して人々の目に触れないことには、そもそも「それが正しいかどうか」ということを他の人に検証してもらうことも出来ない(事実、どれだけ確証を得たとしても、それは自分の思い込みかもしれない)。
例えばWikiに書いてみる
実は、数論を勉強しはじめのころに数学Wikiで数論の項目をちょこちょこと書いていた。今はちょっと数学の勉強よりも、身の回りのことをちゃんとすることに精一杯だったりするので、あまり更新は出来ていないけれど、それでも運営している人は、僕が「ちゃんと」というのもおこがましいほどの数学徒の人であったので、紙で証明の草稿を書いたあとにWikiにページを作ったりしていた。もう少し落ち着いたら、また何かしらの項目を書いてみようと思う。
Wikiで勉強しながら項目を作るというフローは気に入っていて、それはどうしてかというと、「勉強する→噛み砕く→それを書き起こす」というこの流れは、上で説明した流れを上手くフローとして実感できるからだ。
Qiitaは学びはじめにメモを残す先としてベストかもしれない
あと、プログラミングに限っていうと、Qiita - プログラマの技術情報共有サービスが意外といいかもしれない、と最近思いつつある。それはなぜかというと、自分より詳しい人がコメントをもらえることが多少あるからだ。例えば、最近のRubyのTipsとして、以下のことをメモしたりしていた。
両方とも初歩的な問題で、それこそRubyに詳しい人たちであるならば、一笑して終わるような内容なのは疑いないと思う。だけれど、上の文章を書くことで、さらに詳しい内容をコメントとして残してもらえた。そういう意味では、初歩的な学びはじめのTipsをQiitaで書き残しておいて、コメントを貰ってフィードバックするのは、案外いい方法かもしれない。
終わりに
というわけで、勉強の最中こそ、何らかの形で文章を残しておくチャンスだし、文章として色々残しておくと、いろいろと良い事があるよ、という話でした。