この記事でも書きましたが, Attractor, Inc.さんのスカラシップを受けてベトナムに行ってきました
Agile Vietnam Conferenceの今年のテーマは"//Learn, Un-Learn, Re-Learn"でした
今回はそれに関する話を書いてみたいと思います
learnは聞いたり,使ったりしますが,Un-learnやRe-learnは聞き覚えがありません
しかし,do/Un-do/Re-doは聞き覚えがあります
do/Un-do/Re-doに対応して,learn/Un-learn/Re-learnを考えるとこんな感じかな?というのを図にしました
(おまけで機械学習でよく見る確率的勾配降下法みたいなのも併せて考えてみた)
こまどブログさんでは最近から少し前の資料と共にUn-learnについて触れられていました
概観すると自分の考えるUn-learnとRe-learnがひとまとめにUn-learnとされている印象を受けました
以下では自分の考えをまとめるために,勝手"learn/unlearn/relearn"を定義します.
その後,最近の"learn/unlearn/relearn"について記していきます.
まず,Learnについて.
Learnは意識的/無意識的に何かを学び取ることだと定義します.
Un-doに対応付けると,学習しなかったことにする
ということになりそうです.
しかし,学び,経験したことをなかったことにはできないと考えます.
Un-learnは無意識的に新しくLearnできる状態になっていくことと定義します.
Re-learnはUn-learnな状態から,再びLearnすることと定義します.
今年もPBLに参加しています.
PBLはチームで開発に取り組む,大学の課外授業です.
PBLあるいはSPAへの参加は修士の卒業要件で,PBL受講者は学部生とのチームが義務付けられています.
これはもしかしたら,チームのメンバーを不快にさせていたのではという話です.
--
今年は修士1人(自分)と学部3年生4人と学部1年生1人という,やや偏ったチームでした.
僕以外は全員開発経験がないような感じです.僕も去年はそうでした.
ただ,思っていた以上にプログラムを書く能力や専門知識がなく
- コンストラクタってなんですか(Javaは2年生前期と後期でやる)
- POST?GET?(2年生後期の必須科目でやっているはず)
- というかJavaなにもわからない,課題は友達のをコピペした
という状況でした.マジか.
知らないものは知らないので,まぁ教えればいいか.ということで前期多くの時間を費やすことになります.
しかし,どうでしょう.どんどん皆さんの雲行きが怪しくなっていきます.
ここまでプログラミングに触れてこなかった人に学んでもらうのは,かなり骨が折れる話です.
彼らはわからないから,僕は中々進まないからか,だんだん険悪なムードが流れます.
彼らからしたら,ググってもわからない言葉が出てくるし,そもそもそれほど勉強してこなかったので勉強の仕方もわからない状況です.
--
ここで少し違う話です.
僕は運転中などに看板を読むのが好きです.へぇ,こんな店あるんだとか思いながら運転していたり,乗せてもらったりします.
「うどん」とか「宝介」とか口に出しながら運転していたりします.
ベトナムに着くとどうでしょう.
アルファベットに記号がついて,なんとなく読めそうなものの,意味がわからない.
レストランでメニューを見ても意味がわからない.
これが非常にストレスでした.
「え,わからないってめっちゃストレスじゃない??」
--
っていう気づきは,Re-learnだったと思います.
自分もほんの少し前まで,プログラミング何もわからなくて,今も同じようにわからないことで苦しんでいます.
しかし中々気づけなくて,どうしてちゃんと勉強してこないんだろうとか思っていましたが,何もわからない環境に身を置くのはかなりのストレスです.
このストレスを和らげる方法はまだわかっていません……
モブプログラミングしながら,こういうのわからない時はこう調べるんだよーと体験を共有することで現在は解決をはかっています.
Learn / Un-learn / Re-learnを勝手に定義して,体験を書きました.
なんか全然違うことをするとRe-learnできることもあるかもね!っていう話でした.