プログラミング「超」初心者がPythonを学んで初心者になったよ
無職の間にやりたいことのひとつ、「何か一つプログラミング言語を学ぶ」を実行しました。
- なぜプログラミング言語を学ぼうと思ったのか
- 今までに触れたことがある言語の棚おろし
- どの言語がいいの?
- Pythonに決めた
- 『プログラミング超初心者が初心者になるためのPython入門』
- プログラミングを学んでよかったなと思うこと
なぜプログラミング言語を学ぼうと思ったのか
プログラマーやシステムエンジニアになりたいわけではありません。前職で必要に迫られてVBAを使うことがあり、今後どんな業種で働くにもプログラミングの知識はあった方がいいと改めて感じたからです。自分で書くことはできなくても、何ができて何ができないかを理解することは役に立ちます。あと、知識が古いままで止まっているので、新しい言語に興味がありました。
今までに触れたことがある言語の棚おろし
あくまで遊び程度でしかさわったことがありませんが、せっかくの機会なので振り返ってみました。
AppleScript
英語に似ているので簡単。動作が遅いのが難点。Safariで開いているURLからアンカータグを作るスクリプトを作り重宝していた。今だったらはてブのブックマークレットの方が便利だからなあ。大抵のことはAutomatorで代用できるので使わなくなった。
RealBasic
オブジェクト指向を採用した独自のBASIC言語。学生時代の暇つぶし。簡単にGUIが作れるので、メモ帳とか動画再生ソフトとかを作って遊んだ。現在のXojo。
Cocoa
macOS用の開発環境。C言語の素養がないのですぐ挫折。当時は日本語の資料が少なかったので、強制的に英文を読む習慣ができたのはよかった。
VBA
仕事上で必要なところだけを勉強、というかコピペと写経で乗り切った。RealBasicと似ているというかRealBasicが似ているので何となく分かる。
どの言語がいいの?
パッと思い浮かんだ候補は以下の4種類です。
- 自然言語処理に強いPearl
- Webアプリケーション開発でメジャーなJavaScript
- 同上のRuby
- 汎用性が高いJava
学んで一番役に立ちそうなのはJavaなのですが、難易度も高いんだ。
Pythonに決めた
自然言語処理に強い言語がよかったので、Pearlが第一候補でした。しかし調べているときにPythonを見つけ、心変わりしました。Pythonは自然言語処理にも強く、人工知能(A/I)や機械言語の開発にも使われています。しかも文法が分かりやすそうなので、Pythonを学ぶことにしました。
『プログラミング超初心者が初心者になるためのPython入門』
入門書を探して、『プログラミング超初心者が初心者になるためのPython入門』がKindle Unlimitedにあったので参考にしました(2020年7月23日時点)。
開発環境の整え方からくわしく説明されているので、戸惑うことがありません。Windows、Macどちらにも対応しています。プログラミング言語の学習ではおなじみ、"Hello World"を表示させるところからスタート。私、これ何回目だ。5回目か。
本当に「超」初心者向けなので、この本一冊ですぐに実用的なプログラムが作れるわけではありません。でも、どんな言語であるかは掴めたので目的は達成できました。
プログラミングを学んでよかったなと思うこと
今までもプログラミングは全て独学で、才能もないので大したレベルにはなれませんでした。でも遊びとしては楽しかったです
そしてPCは何が得意で、何が苦手かを理解できたことは役に立っています。これは自動化できるなっていうのがすぐに分かるので。前の職場ではこの区別ができていない人が多かったです。だからエクセルの画面を見ながら電卓を叩く人がいるんですよねー。あれは何のおまじないだったんだろう?
そしてRealBasicをさわっていたからマクロやVBAに抵抗がなくて、仕事の時間を大幅に短縮できました。そう考えると人生に無駄なことなんてないんだなあと思います。