「習作」というのは、主に芸術の分野で使われている言葉で、練習のために小作品を作ることを指します。
プログラミングにおいても習作はいいぞ、という話をします。
学生の皆さんは普段、授業などで身に付けた技術を応用して何かを制作しているでしょうか?
あるいは逆に、何かを実現するために技術を応用しているでしょうか?
創作の経験の少ない人が何か壮大なものを作りたいと思い浮かべたとしても、すぐに実現するのは難しいことだと思います。
技術の習得とその応用には乖離があるのです。技術力と創造性のマッチングが必要で、いずれかが不足していても達成できません。
そこで、普段からそのギャップを埋めるための練習をしておくことが求められます。
ブログのネタを例に考えればわかりやすいと思います。
最近習得した技術についてブログの記事を何か書くことになったとして、他の人が作ったチュートリアルを手順通りに実施してそれについて書く・・・というのでは物足りないですよね。
例えば、自分なりの視点でどういう場合に役に立ちそうかを考えながら技術検証し、自分の興味の延長にあるサンプルを作るという方法が考えられます。これが習作です。
いろいろな人のブログ記事を見れば、このタイプがかなりあることに気づくでしょう。ブログのネタとしてなんとなく「ちょうどええ」範囲があると思います。
習作の結果として前例に重複することもあるとは思いますが、それはかまいません。
自分で考え出したものを自分で解決して作ってみることが成長につながります。
初めて使う技術の検証と軽い創作を同時に実施するという点で一石二鳥であると考えています。
一見それほどでもないアイデアのものでも、実装してみると知らなかった機能に出会えたり、あるいは、考えていたことが実現不可能であることがわかったりします。
その結果から技術を深掘りしていくこともあれば、アイデアを別の作品に昇華させていくこともできるでしょう。
習作では、技術力と創造性の向上の両面があることがポイントです。
技術検証や創作の練習を通して、今後の引き出しを増やし、何ができるかわかるようになります。
英語の表現を新しく覚えたら自分が日常生活で使いそうな文にアレンジしてみたり、
微積分を覚えたら乗り物の速度・加速度や目的地までの距離を概算してみたり、
身に付けたことを普段から社会に応用しているか、そのための視点を持っているかが大切になるのです。