10
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

球技とプログラミングは似ている件

Last updated at Posted at 2021-12-11

まずは球技の話をしよう

私は球技が苦手だ。
球技に限らず、反射神経や運動神経を要する運動が苦手だ。
だから、学生時代は運動部からはひたすら逃げ、大学に入っても体育があることに絶望したほどだ。

球技の苦手さについては自覚があったものの、
大学時代のインターンシップ先にて1ヶ月、終業後にテニスをすることになった。
「ほんとに球技できないんで…ご迷惑おかけしちゃいますが本当にいいんですか…?」という私の言葉に
「いいよいいよ、インターンシップ生たちとテニスが一緒にできるだけで嬉しい」と言ってくれ、
自分のテニスはそっちのけでひたすらテニスボールを手で投げて、練習に付き合ってくれたのだった。
私ともうひとりのインターンシップ生は全く球を打ち返すことができなかったものの、インターンシップ期間の1ヶ月が過ぎるころにはテニスボールがラケットに当たるようになった。
(まずこの時点で、いかに私が球技が苦手かがお分かりいただけただろう)
(あまりにも申し訳なさすぎて、先輩のお子様のために、プラナリア採集キットの作り方を教え、近くの川にプラナリア採集に行くなどしたほどだ。)

プラナリアとは:
自らの体を分裂して増える扁形動物で、人為的に切断されても元の形に再生することができる。つまり、真っ2つに切ると、2匹のプラナリアになれる、そんな生き物。大きさは約0.5-2cmほど。綺麗な河川の石の裏にいる。私はここの研究室でイモリの脳の再生の研究をしていた。
詳細は こちら を参照されたし

せっかく当たるようになったので、社会人になってからもテニスは続けてみることにした。
案の定、__「michikoのラケットには本当にガットが張ってあるのか?(笑)」__と未だにネタにされるほど、99%の確率でテニスボールがラケットにあたらないところからのスタートである。

「テニスボールの回転を見て、落ちる先を予測して動くといいよ」と言われても、ボールの回転なんか見えない。動体視力?私にはそんな特殊能力はありません。

そんな私への先輩の言葉は
「考えなくていい!!ボールを見て、タイミングをつかめ!」だった。
数々のエラーを繰り返しつつ、
1年ほどすると、コーチ格の先輩とであればラリーが数回続くようになり、
2年ほどすると、ダブルスに(一応)入れるくらいにはなった。
おかげで、テニス人生は5年目となり、今はラリーも多少は続くようになった。(決してできるほうではない)
そして、確かにこれは繰り返して感覚を掴むしかない案件である、と認識した。

こんなにテニスができない人間に、どうして教え続けてくれたのか謎であるが、
学生時代に部活としてやっていたら絶対に辞めていたか、万年球拾いだったように思う。
「人よりも早く強くなること」を目指さない相手にもひたすら練習に付き合ってくれるとは…社会人になってからの運動は楽しい。
できなくとも続けることが許され、ゆっくりながらもできるようになっていく嬉しさ。これが、大人になってから新しいことをやってみる楽しみなのかもしれない。

考えるより慣れろ、との再会

さて、この__「全くラケットにボールが当たらないけど、大人たちがなぜか辛抱強く付き合ってくれる経験」__を私はGsアカデミーで体験することになる。
(やっとプログラミングの話題登場)

かねてから、エンジニアってめちゃくちゃ格好いいし、私もそうなりたい・・・!
と思っていたものの、ケアレスミスが異常に多い自分はプログラミングに向いていないと思い、学習をしていなかった。

そんな中、ある日、某ベンチャー企業のエンジニアの方にシステム修正を依頼する中で
「michikoはプログラミングが向いていると思う」と言ってもらったことがあった。
「え!私が?!」と思いつつもめちゃくちゃ嬉しかったせいで
__さらさらとPCでプロトを作り、おもしろいものを作れる人になる__ことを目指し、
「世界を変えるギークになろう」を標榜するGsアカデミーに足を踏み入れることになった。
(ちょろい)

最初の壁は、Javascriptだった。
「関数」「変数」、そして__「=」__…理系の私には馴染みに馴染んだこの用語や記号たち。
微妙に数学と意味が違う。
微妙に違うから、激しく混乱する。
「=」が代入って……えっ、「=」って、左と右が一緒ってことじゃないの?!?!
授業を受けているときは、先生の分かりやすい例えにより分かった気分になっているものの、
馴染みに馴染んだ記号たちは、VScord上で私の脳で間違った方向に信号を送ってしまう。

今までの経験上…これは初期でつまずくとやばいやつだ、ついていけなくなる、と感じつつ、コーディングしようと画面を見ると睡魔に襲われる毎日。
師曰く、「できるようになるコツ」は

「理解するより、まずは慣れること」
「毎日まずは5分、2〜5倍倍速で動画をみること」

と。

え、なにそれ。テニスボールがラケットに当たるようになるまでと一緒じゃん…
…これはもしかして苦手なやつかもしれない…
まさかの数年ぶりに、しかもパソコンの前でテニスと同じ体験をすることとなった。

授業は非常にわかりやすいため「わかった!」と頭では理解したつもりになり、
とりあえず書き始めるものの、自分で書こうとすると本当にわからない。
何を聞けばいいかもわからない。
わからないから、間違っている箇所の仮説も立てられず、切り分けもできない。
わからないから写経してみるものの、理解していないから工夫ができない。

そんな時に、登場するのは同期の方々。Discordにはいつも誰かしらいたのだった(特に夜)。
「コード見ますよ」という同期の声に甘え、とりあえず見てもらい、直してもらうことを繰り返した。
「とりあえずここを修正してみて」と言われ、確かに動くと、「すごい!」と思うものの
分からないとなんだか気持ち悪く、どうしても「なぜそこを直そうと思ったのか」と説明を求めてしまう。
(教えてもらっている立場なのに申し訳ないと思いつつめちゃくちゃ聞かせてもらった。)

そして、自分がどうしても慣れない概念については、先生にも身近な言葉で例えてもらい、その例えをメモし、コードを読むときに言い換えてみる、などした。

こんな「分かりそうで分からない」という経験が非常に面白く、
今までの土日の時間を吸収していたゼルダの伝説は、コーディングにとって変わられることとなった。

そうこうしているうちに課題の切り分けも多少はできるようになり、
プログラミングの動画を見て寝落ちするまでの時間が長くなり、
最終的には一人で検索してある程度(ラズパイで使うpythonについては)できるようになった。

新しい概念を学ぶときは、分からないときにそこで止まるのではなく、まずはやってみて慣れること、なれてきたら理解することが大切なのだなぁと感じた数年間であった。
運動が得意な人は、きっとプログラミングも得意だと思う。

そして、最後に、私の周りには優秀で、辛抱強い方が集まっているなぁ、と本当に感謝しかない。
引き続き、みなさまよろしくお願いいたします!

私のように、物分かりがよろしくない皆様へおすすめの本

1冊だけ、これが私が求めていたものだ、という本があったので最後にご紹介したい。
PHP7+MariaDB/MySQLマスターブック(永田 順伸 著, マイナビ出版 )

コードの一文一文に、「何を意味しているのか」という説明がついていて最高でした…!何度読み直したことか。

余談

こんなシステムをサラッと作れる人になりたいと思っていた例

開会式みている間にさらっと作れるとかすごくないか!!!!さすがすぎる!!!

あとはこちらも…
ご都合いかがでしょうかメーカー

※随時増やしていく予定

10
2
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?