始めに
ういっす、まんじです。
今回はエンジニアになるメリットではなくて、プログラミングを勉強するメリットに関して書いていきます。
ぼくはウェブのエンジニアをやっていますが、非エンジニアの人もプログラミングを勉強するメリットはかなりあると思います。
プログラミングを勉強するメリット
メリット1. ITリテラシーが嫌でも上がる
インターネットが登場してから凄まじい速度でITの需要が高まり続けていますが、プログラミングの基本的な部分を学習することでITリテラシーが嫌でも上がります。
基本的にITはプログラムで動いていると言っても過言ではないぐらい、見えない裏側の部分は規則的にプログラムのコードで動いています。
例えば、銀行の送金を例にあげるとします。
銀行の送金の場合、すっごく簡略化すると、自分の銀行口座の残高はデータベースに記録されているだけの数字です。
この数字を以下のような操作をする時にプログラミングで書き換えているだけだったりします。
- 送金する時に自分の口座の残高の数字を減らして相手の口座の残高をその分増やす
- 明細で金額を確認するときはプログラムでデータベースの保存されている数字を取り出して画面に表示する
このように、プログラミングの基本的な部分が分かると、多少なり世の中のシステムの裏側がイメージできるようになります。
他の例としても、ウェブにある入力フォームがあるとします。
というフォームです。
プログラミングを知らないと、このフォームを入力して送信したら、送信されるというのが一般認識です。
しかし実際には、入力している時点で画面上の文字列をサーバーサイド(コンピューター)に送信することができてしまいます。
なので、「適当なフォームに外部にもらしてはいけない情報を記入するのは危険だよね」みたいなこともプログラミングの基本を知っていればわかります。
以上のように、プログラミングの基本的な部分が分かっていれば、日常生活でなんだかんだで役立ちます。
メリット2. 簡単なスクリプトを組んで自動化などができる
プログラミング言語のPythonあたりを使うと、簡単なスクリプトを組んで業務の自動化などが比較的簡単にできます。
例えば、ECサイトをやっている場合について考えてみます。
- CSVシートAからCSVシートBの発送情報を手動で100件毎日ある規則に基づいてコピペしている
こういったケースの場合、プログラミングを使うことで比較的簡単に自動化できます。
最近はChatGPTなどで自然言語(日本語とか)からコードを生成することもできますが、その生成されるコードが読めないと、少し挙動が違くても修正するのが非常に困難です。
こういった業務の自動化にもプログラミングは使えるので、使えないよりは明らかに使えるほうがいいです。
また、こういった簡単な自動化のスクリプトを書くためのプログラミングの習熟度は高くはないので、コスパはかなり良いと思います。
メリット3. ウェブの仕組みがなんとなく分かる
普段使ってるスマホアプリやWebブラウザでの一連のやりとりも、プログラミングの基本を学習することで分かるっちゃ分かります。
「こういうコードがサーバーで動いてて、html, css, javascriptが、ウェブブラウザに表示されるんだ」みたいな知見のことです。
スマホアプリでも基本的に同様で、大体のスマホアプリはサーバーと通信してデータをスマホの画面に表示して動いています。
このように、普段使わない日はないであろうウェブの仕組みが分かるのはセキュリュティのリテラシー向上などでもメリットです。
一時期銀行口座とかを偽装するやつが人気でしたが、そういうとこも知ってれば当たり前に分かります。
メリット4. 物事を論理的に考える脳が少しだけ身に付く
プログラミングをする場合、「もしAならBの処理をする、もしCという条件ならずっとループ」といったような論理的な思考が必要になります。
いわゆる結果に対して原因を追求する思考や、これまでの一連の結果から次の結果を予想する思考などです。
演繹法とか帰納法みたく言ったりもしますが、そういう考え方がナチュラルに身に付きます。
こういった論理的な考え方はおそらく、、、何かのシーンで役立つのではないでしょうか。知らんのだが。
メリット5. ITテクノロジー関連の情報に対しての理解が少し深まる
ITテクノロジー関連の情報に対しての理解も深まります。
ITリテラシーで書いた部分と少し似ていますが、もう少し踏み込んだ知識の部分です。
- そもそも今話題の分散型webのweb3ってどういうこと?
- AIってすごいけど、一体なんでこんなことできるの?
少しプログラミングを学習していれば、そういったトレンドの技術も雰囲気は掴めるようになります。
例えば、web2とweb3であれば、以下のような感じがざっくりと掴めます。
web2: データベースを特定の会社や人物が完全に所有
web3: データベースをみんなで管理
なぜweb3が人気になっているのか?
答え: 特定の誰かに力が集中しない、匿名性の確保、金融や銀行の仕組みをプログラミングで圧倒的に効率化(DeFi)、投機としても魅力的
以上のように、プログラミングを学習していると、そう言った部分も雰囲気がつかみやすいです。
メリット6. 少しだけドヤれる
エンジニアの場合、基本的な部分のコードが分かっていないと人権がないんですが、エンジニア以外の人が少しプログラミングができるとドヤれます。
具体的にはドヤれるというよりも、スキルになります。
- 簡単なCSSの修正ができる
- 簡単なスクリプトがPythonで書ける
以上のようなことをできるだけでも、実は結構使い道もありますし応用も効きます。
例えば、マーケターの人が簡単な自動化スクリプトをスプレッドシート上で動かしたいときにGASが簡単に使えるだけでもかなり役立ちます。
他にも、エクセルの定期業務をPythonにやらせるとかできたりするだけでもかなり良い感じです(場合によっては月30時間の作業時間が30分とかになるなんてのはザラにある)。
まとめ
プログラミングの基本的な部分に関しては、エンジニア以外の人も分かっていると、かなりいろいろと捗ると思います。
ぶっちゃけ年収を上げる要素にもなると思いますし、個人でビジネスをしている場合には凄まじく役立つはずです。
エンジニアなるのは向き不向きがありますが、基本的なプログラミングを扱うスキルは誰しも持っていて損はないです。
むしろ身に付けて損だったナーと思う人は多分ほぼ出会うことが困難だと思います。
それぐらい応用範囲が広いです。