アルゴリズム建築コース4日目
こんにちは^^
前田紀貞建築塾【アルゴリズム建築コース】の講師兼TAの殿村勇貴です。
この日はいつもと時間割を変えて、このコースとは別の『設計演習コース』の第一課題発表会が行われました。アルゴリズム建築コースの塾生たちは、この発表会にオーディエンスとして参加し、建築のあたらしいつくり方や、自分の作品を分かりやすく、魅力的に相手に伝える方法を学びます。
経験が浅いうちは、自分が発表者の側に立つとどうしても相手(聴いてくれる人)の視点がおろそかになりがちですから、こういう場でプレゼンテーションを「聴く側」になってみることは大事な経験ですよね。また、設計演習コース塾生のプレゼンに対する塾長やアトリエスタッフの熱いコメントや発表者とのやりとりに触れることで、この「前田紀貞建築塾」で建築に臨む姿勢を改めて感じることができるんです。
* * *
それでは早速第4回目の授業の様子をご紹介します!
【『設計演習コース』第一課題発表会】
14:30〜18:00
冒頭に書いたとおり、この日はいつもの「アルゴリズム建築講義」に代わって『設計演習コース』の第一課題発表会が開催されました。アルゴリズムコースの塾生たちは、設計演習コースの塾生たちによる熱いプレゼンテーションを見学します。作品の完成度やプレゼンの技量は人それぞれでしたが、コースは違えど同じ立場である『設計演習コース』塾生たちのプレゼンと、それに対する塾長やアトリエスタッフの講評に直に触れ、アルゴリズム建築コースの塾生たちもいろいろと得るものが多かったはずです。
『設計演習コース』第一課題発表会の様子については前田紀貞建築塾のブログに詳しくまとめていますので、ぜひご覧下さい!
【プログラミング演習】13:00〜14:30
この日は上記の課題発表会が開催されたため、発表会前に開始時間を確保してプログラミング演習を行いました。こんなふうに臨機応変に(もちろん塾生たちの都合や要望を聞きながらですが)時間や内容を調整して授業ができるのも、少人数制・徹底指導が売り(の一つ)の前田紀貞建築塾ならでは、です。ちょっと自画自賛…(^_^;)?
さて、この日のプログラミング演習では、過去3回分の講義内をしっかり理解できているかを確認するためのProcessingミニテストを行いました。テキストに示されたコードを自分のPCでトレース(模写)しているときは何となく理解している気になっても、いざ別の形で理解度を問われると勝手が違うようで、塾生たちは既に習った内容でも意外に苦戦していました(^_^;)。
たとえば、出題されたのは次のような問題です(Processingを知らないひとにはチンプンカンプン(*_*)かも知れませんが、お許し下さいm(_ _)m)。
それでは第一問!
つづいて第二問!
いかがでしょうか?Processingを知らない方のために補足すると、これらの問題はプログラミングの基本となる「デバッギング(エラー箇所の特定と修正)」と「コードの中での数式(算術記号)の意味」にどれだけ頭が馴染んでいるかを測るための問題になっています。
他にも色々な問題が出されましたが、このミニテストの大きな狙いは、受講生のProcessingの理解度を測ることはもちろん、それ以上にProcessing習得の大きな“落とし穴”に気付いてもらうことにあるのです。
その“落とし穴”とは、Processingの講義を聞きながらコードをトレースしていると、“意外と簡単で分かった気になってしまう”ことです。授業(受け身)では理解したつもりでも、いざ能動的に「コードの間違いを探しなさい」とか「ある絵が出力されるコードを書きなさい」と言われると、とたんに手が止まってしまう人がたくさんいます。どんな学習でもそうですが、教科書を読んだり授業を聞いたりしているその場では理解できた気がしていても、後になってみると自分で答えを導くのは難しい、ということはよくありますよね。つまり本当の理解と「理解した感じ」とは別物なんです。
Processing学習の場合で言えば、ただ無頓着に例題のコードを写していたり、意味も分からずコピー&ペーストをしていると、(それでもコード自体は動いてくれるので)このように理解した「つもり」になってしまいがちです。特にProcessingのようなオープンソース言語の場合は、初学者ではすぐに書けない・読めないような複雑・長大なコードもネットに無料公開されているので、それをコピー&ペーストして実行すると、それなりに複雑で迫力のある結果が得られてしまうのです。そうすると「俺って意外と理解できてるな!だってこんな複雑な結果が得られたんだから」と勘違いしてしまったりするのです。(そんなことないだろ!と思うかもしれませんが、本当によくある話なんです。かく言う僕も昔は…(^_^;))
ではどうすれば本当に「理解」できるのか。そこで大切なのは、ひとつひとつのコードが何を表していて、どういう結果が得られるのか、丁寧に解析することです。コードひとつひとつで何が起こっているのか説明できるようになれば、ほかにも応用できるし、間違い探しなど朝飯前になります!外国語で「旅先で使えるフレーズ」(コンテキストが限定された応用の利かない言葉)だけを覚えるのと、単語や文法の意味や用法を丁寧に学ぶのとでは、学習の「深さ」が違いますが、それと同じようなことがプログラミングの学習についても言えるのです。
この演習を通して、塾生たちには各自の現時点での理解度を確認してもらえたと同時に、この“落とし穴”にも気付いてもらえたようです。こうやって「できないこと」にハッキリと気づくことが、次のレベルに進むモチベーションになるんですよね。
それでは皆さん、気を改めて引き締めて頑張っていきましょう!^^
* * *
いかがだったでしょうか?次回のプログラミング演習では、Processing第2の難関「配列(Array)」を扱います。最初のころは「以外に簡単じゃん」という顔をしていた塾生たちも、段々と表情に余裕がなくなってきたような…(^_^;)。お楽しみに!
また、この前田紀貞建築塾アルゴリズム建築コースが気になってきた方、もう少し詳しく知りたいな、という方がいらっしゃいましたら、ぜひ前田紀貞建築塾ウェブサイトでこのコースの詳細をご覧下さい↓↓
前田紀貞建築塾【アルゴリズム建築コース】
http://www5a.biglobe.ne.jp/~norisada/SCHOOL/course/index.html - 4
前田紀貞アトリエ 殿村勇貴