本気で学び始めてから1年。
足かけで換算すれば、縄跳びと同じ12年もやっている趣味がある。
自分が趣味でやっているのは「プログラミング」。
プログラミングと言っても範囲が広いよね。
主にやっているのはWEB関係。
ホームページのデザインだったり、フォームの作成だったり。
プログラミングに出合ったのは、縄跳びと同じ高校生の時。
自宅に初めてパソコンがやってきた時だ。
縄跳びと出会うきっかけになった【縄跳道場】を見て、
自分でもこんなことがやってみたいって想いが沸いたのかもしれない。
アメリカに来てから、日本に居るころよりも物理的な時間が出来た。
そんな時にこのページを見て自分でもできるって思った。
もう一度プログラミングを本気で勉強しようって。
あれから早1年、
ちょっとだけプログラミングが出来るようになった今だから思うこと。
それは『プログラミング』と『運動指導』ってすごい似てるなぁってこと。
運動指導は「目の前の人」が抱えている問題を見つけて、
解決に向けた仮定を出し、理屈で組み立てていく作業だ。
たとえば、
「2重とびができない」 =>
「原因は何?」 => 「縄が回せていない」
「本質は?」=> 「縄が長すぎる?」「腕が広い?」「ジャンプのリズムが取れんていない?」
「じゃ、解決策は?」 => 「リズムを取る練習で、空中拍手をやってみよう」
みたいな流れ。
もちろん反復練習も必要だ。
でも闇雲に練習を繰り返すだけじゃなく、
どうすれば効率よく問題が解決できるかを常に考える。
だから「指導法」てのは「理論」になる。
しかもこれは自分自身の練習にも言えること。
限られた時間で最大限に競技力を上げるにはどうするか、
コーチがいれば別だけど、自力で練習している選手はこういった思考が必須。
自分の中ではプログラミングも同じで、
こんな結果が出したい、じゃどうやって組み立てる?ってのを考える作業。
たとえば、
「未成年かどうか知りたい」 => 「年齢入力してもらう」
(※) 入力してもらった文字を数字にして、20より小さければ未成年、大きければ成人
ってな感じ。
「もしも」って意味の「if」なんてのをよく使う。
ちょっとこれは単純すぎた…。
「運動指導」と「プログラミング」の根っこの考え方、理論的に組み立てるってのは全く同じ。
もちろん相手が「機械」か「人間」かって違いはあるけどね。
そういやクラウニングも近いところあるなぁ。
「常識」を「あえて選ばない」ためには、断続的に人が考える常識を判断して行動する必要がある。
けどあんまり外れすぎちゃうと引かれる…(師匠のBaltoが綱渡りって表現してたやつ。)
だからクラウニングは「愚か者」を演じる「賢さ」が必要。
「運動指導」に「クラウニング」、そして「プログラミング」。
自分はこれらに共通する【考え方】とか【やり方】みたいのが好きなんだと思う。
そして今回、初めての「プログラミング」を使った仕事をもらうことができた。
ボランティアのお手伝いって感じだけど、
今まで学んできた知識を生かせる、しかも実践を通じてさらに多くの事が学べる。
こんな機会を貰えたことが素直に嬉しかった。
(※)だからブログ更新を放置してプログラミングに没頭してた…。
この機会に、人の役に立てるプログラミング知識を深めたい。