私は理系かつ大学も情報学専攻という、数学やプログラミングを学ぶにはベストな環境にいました。しかし、学生時代は数学やプログラミングの素晴らしさがわからず、全く興味がもてませんでした。それどころか、プログラマーはなんとなく陰気なイメージだなとか勝手に決めつけて、苦手なふりをしていたくらいです。
しかし社会人になった今、プログラミングを学んだ経験はお金を稼ぐため、人生を豊かにするために必須のスキルになることを知りました。なぜもっと学生時代に学んでおかなかったのかと後悔の連続です。私のような人を減らすために、プログラミングの何が面白いのか、なぜ学ぶべきなのかをできるだけわかりやすく説明したいと思います。
最適なアルゴリズムを考えるのがパズルゲームの様で面白い
プログラムはコンピュータへの指示書のようなものです。その流れを考えるのがプログラマの仕事です。記述方法は無限にあり、一つのコードを書き換えただけでも処理速度が何百倍違うということもあります。そういった理由でアルゴリズムはプログラミングにとってとても重要な位置づけなのです。アルゴリズムの構築は、コードを記述することで行いますが、実際に仕組みを考えるときは図や表を使いながらパズルゲームを解くような感覚で組み立てていきます。あれこれと試行錯誤しながら、自分の意図する動作がうまくいくと達成感を感じる事ができます。以下の本は、アルゴリズムについて身近な例を取り上げながらわかりやすく解説されています。もしアルゴリズムについて興味があれば読んでみてください。
業務の効率化を図れる
今あなたが抱えている業務で、ルーティンワークかつ手作業で行われているものはあるでしょうか。もしそれがPCで行われているものであるとしたら、プログラミングで一瞬で片付くかもしれません。アプリケーションなどはすべてプログラミングによって構築されているので、自分のしたいことを自動化することは比較的容易なのです。また、手作業で行われている業務は、業務量が多くなったらそれだけ人を増員したり雇ったりと人件費も無駄に浪費する必要があるうえ、もし担当者がやめてしまったら再度後任者に教える必要が発生してしまいます。コードで記述しておけば、そんな心配はなくコピーペーストで何100倍の業務にも対応できますし、例え担当者が抜けてもコードさえあれば簡単に実行することができます。PCに関わる業務は職人技のようなスキルを磨くよりもプログラミングを学んだほうがいいかもしれません。
世界中の最新の技術に触れることができる
プログラミングは万国共通の言語です。世界中のプログラマが毎日新しいコードを作成し、無料で公開しています。そのコードに対して多くの人が、コメントしブラッシュアップされていくのでコードの進歩のスピードは速いです。このコードをコピーペーストしただけで、自分のやりたい自動化ができてしまったといったこともあります。また、AI・Iotなどの技術も無料で公開されており、そのコードを自分のやりたいことに向けてカスタマイズすることもできます。
https://github.com
https://stackoverflow.com/
英語の勉強にもなる
プログラミング言語のリファレンスは日本語の解説があるものがほとんどですが、もしエラーや問題が発生したときwebで調べても日本語の回答がないといったことがあります。私も最初は英語の回答は避けて調べていましたが、やはり英語の解答のほうが詳しく説明されていたり、情報量が全然違うのでこちらを参照したほうが最終的に作業効率はあがります。英語がわからなくても、どうにか解決したいという気持ちがあるので英語の意味を調べたりして英語の読解力のスキルアップにも繋がります。
就職に有利になる
ITエンジニア不足は2030年には80万人になると言われているほど、需要のあるスキルです。今後、技術の進歩とともにさらに需要の高まると考えられるので学んでおいた方が良いです。また、エンジニアだけでなく営業・企画・事務職など多くの職業にとても業務の軽減の観点からみてプログラミングを学んでおいたほうが市場において自分の価値を高めることができると思います。
日常生活の自動化・分析も行うことができ生活が豊かになる
日常生活において様々な電子機器を使っているのではないでしょうか、PCやスマートフォンはもちろん照明器具・掃除機・冷蔵庫・エアコン・スピーカーなど。電子機器は徐々にIot化しつつあり、音声で操作したり、スマホで一元管理したり、各機器より情報を取得できるようになってきました。そういった場面で簡単な作業指示なら基本機能で満たすことができると思いますが、複雑な指示をしようと思うと、やはりプログラミングが必要になってきます。また、webアプリで収支の管理を行っている人も多いのではないでしょうか、そういった場面でも例えば収支の履歴をデータベースにためこんでpythonで分析→どこに無駄があるか把握後、支出改善につなげるなんてことも可能です。
PCさえあればどこでも働くことができる
プログラミングにはPC以外に必要な機材はありません。インターネット環境さえあればどこで働くことが可能です。物理サーバもいまやクラウドに以降しつつあり、データセンターにアクセスすればデータを簡単に取り出すことができるようなりました。まさに、完璧な自由を手に入れることができます。企業やオフィスに縛られず、自宅でも海外のリゾートでもどこでも働ける。そんな環境を目指し私も日々勉強を続けていきます。
コメント