気づけば、Python学習を始めて100日を超えていました。
最初は、
・毎日30分くらいしか時間が取れない
・ほぼスマホ学習
・プログラミング経験ほぼなし
という状態だったので、
「本当にできるようになるのかな?」
という不安はかなり大きかったです。
特に、プログラミングは「PC必須」というイメージが強かったので、スマホ中心でどこまでいけるのかは自分でも分かりませんでした。
ただ、100日続けてみた今振り返ると、
「少しずつでも積み上げると、意外とここまで来れるんだな」
という感覚があります。
今回は、ここまでやってきたことを整理しながら振り返ってみようと思います。
そもそも、なぜPython学習を始めたのか
自分がPython学習を始めた理由は、
「趣味のデータ分析をやってみたい」
と思ったことがきっかけでした。
もともと競艇を見るのが好きで、
「感覚だけじゃなく、データで分析できないかな?」
と思うようになったのが始まりです。
どうせならAIっぽいこともやってみたい。
そうやって調べていく中で、Pythonという言語を知りました。
もちろん、その時点ではプログラミング経験はほぼありません。
ただ、以前Excelで簡単なマクロを触ったことがあり、
「プログラムを書くこと自体は嫌いじゃない」
という感覚はありました。
一方で、
・仕事
・育児
・家族時間
もある中で、
「本当に続くのか?」
という不安はかなり大きかったです。
これまでにも、
情報収集ばかりして、結局動けなくなることを何度も繰り返していました。
だから今回は、
「とりあえず少しずつでも続ける」
ことだけを意識して始めました。
(内部リンク:35歳・未経験でPython学習を始めた理由)
最初はProgateとSoloLearnから始めた
最初にやっていたのは、
・Progate
・SoloLearn
・Pythonの入門本
といった、かなり基本的な学習です。
変数、if文、for文など、本当に初歩のところからスタートしました。
当時は、コードを見ても何をやっているのかほとんど分かりませんでした。
特に最初は、
「動いているけど意味が分からない」
という状態がかなり多かったと思います。
それでも、とりあえず毎日少しずつ触ることだけは続けていました。
今振り返ると、この時期は「理解する」というより、
「プログラミングというものに慣れる」
期間だった気がします。
Pythonistaを導入して、一気に“作る感覚”が出てきた
大きな転機になったのが、iPhoneでPythonを動かせる「Pythonista」を導入したことでした。
それまでは学習アプリ中心だったのですが、
自分でコードを書いて、実際に動かせるようになったことで、一気に感覚が変わりました。
特に大きかったのは、
「自分で作っている」
という実感が出てきたことです。
最初は簡単なコードしか書けませんでしたが、
・コードを書いて
・実行して
・エラーが出て
・修正する
この流れを繰り返す中で、少しずつ理解できることが増えていきました。
(内部リンク:iPhoneだけでPythonを動かせる環境を作った話)
CSVを扱うようになって、学習が“実験”に変わった
その後、CSVデータを扱うようになってから、学習の感覚がかなり変わりました。
最初は、
「CSVって何?」
というレベルだったのですが、
・データを保存する
・Pythonで読み込む
・並び替える
・ランキング化する
といったことを少しずつ試していく中で、
単なる文法学習ではなく、
「データを使って試す」
感覚が強くなっていきました。
この頃から、
「勉強している」というより、
「実験している」
に近くなっていった気がします。
(内部リンク:CSV分析・ランキング作成系の記事)
分析を始めたら、ロジックを考えるようになった
データを扱えるようになってからは、
「どういう条件で結果が変わるのか?」
を考えるようになりました。
そこから、
・スタート(ST)分析
・コース別分析
・条件分岐
・重み付け
などを試し始めました。
最初は単純に、
「Pythonを覚えたい」
という感覚だったはずなのに、
途中からは、
「構造を理解したい」
という感覚に変わっていったと思います。
特に最近は、
・なぜこの結果になるのか
・どこまでがノイズなのか
・どういう条件なら再現性が出るのか
といったことを考える時間がかなり増えました。
(内部リンク:分析・ロジック構築シリーズ)
プロト版だけど、最初に作りたかったものが形になった
100日続けて、一番嬉しかったのは、
最初に作りたいと思っていた「予想ツール」が、プロト版として形になったことです。
もちろん、まだ完成度は高くありません。
精度も改善点だらけですし、検証もまだまだ必要です。
それでも、
・データを集めて
・整理して
・分析して
・ロジックを作り
・実際に動かす
というところまで、自分で積み上げてこれたのはかなり大きかったと思っています。
最初の頃は、
「スマホで本当にできるのかな?」
と思っていたので、ここまで来れたのは素直に嬉しかったです。
毎日少しずつでも意外と進める
振り返ってみると、特別なことをしていた感覚はあまりありません。
本当に、
・通勤中
・休憩時間
・寝る前
などの細かい時間を使いながら進めてきました。
だからこそ、
「時間がない」
「PCがない」
「難しそう」
と思っている人に対しては、
少しずつでも積み上げれば、意外とここまでは来れるんだな、ということは伝えたいです。
もちろん、まだまだ課題は多いです。
ただ、最初の頃と比べると、
「見えている景色はかなり変わった」
感覚があります。
今後やりたいこと
最近は、
「コードを書く」
よりも、
「どう設計するか」
を考える時間が増えてきました。
・どんなデータを使うのか
・どの条件を除外するのか
・どう検証するのか
このあたりを整理しながら、もう少し再現性を上げていきたいと思っています。
今後は、
・特徴量の追加
・環境要因の整理
・検証データの拡張
なども進めていく予定です。
まだまだ分からないことだらけですが、引き続き少しずつ積み上げていこうと思います。
