プログラミングはエンジニアだけのモノでは無いと思っています。会社全体で使うような基幹システムを作らなくても、少しでもプログラミングを知っていると、会社員でも担当できる業務の幅が広がってくると思います。
今回は、非エンジニアがプログラミングを学ぶことについて解説します。
目次
プログラミングを勉強するだけでも価値がある
勉強するからには、しっかり身に付けて業務に役立てることができる方が良いに決まっています。でも、あまり堅く考えると最初の一歩さえ踏み出せません。不退転の決意でもいいですが、別にそんなに気を張らなくても、気軽に始めれば良いと思います。
別にこっそり勉強を初めて、挫折してしまっても誰も迷惑しません。うまく身につける事ができれば役に立ちますし、失敗してもノーダメージですせいぜい2,000円くらいの本代しか失いません。
しかも、挫折してしまっても挫折するところまでは知識が身につきますし、別にそんなに損ではありません。下で解説するメリットもあります。気軽に始めましょう。
プログラミングを学ぶことのメリット
今回解説するプログラミングを学ぶことのメリットは、非エンジニアがプログラミングを学ぶことそのもののメリットです。仮に途中で挫折しても得られるメリットです。それでは見て行きましょう。
プログラミング的な思考回路が身につく
プログラミング的な思考回路とはどういうことかというと、論理立てて考えると言う事です。○○をこうする、その次にこうする。そうするとこうなるはずだから、次に~する。と言った具合です。少し勉強すると条件分岐や繰り返しと言う文法が出てきます。そうすると、もしこうなったらこうする、とか、この一連の作業自体を繰り返す、とかが考えられるようになってきます。
もしこの段階で挫折してしまっても、人にツールを作成することを依頼したり、システムを外注する時に、依頼したい内容を伝えるのがうまくなる、と言うメリットがあります。条件分岐や繰り返しが存在しないツールなど無いと思います。と言う事は、この2つを理解するだけでも、かなりの影響度があると言うことです。
全く知らない人との差が大きいです。0と1の差は大きいです。しかも条件分岐と繰り返しくらいまでなら、根気強く取り組めばおそらく挫折しません。大丈夫です。
業務の本質を見抜く力が高まる
プログラミング的な思考回路が身につくと、業務の本質を見抜く力が高まります。何をどうやって処理すれば狙った結果が出るか、と言う思考が身についたので、「要するにどうすればいいのか」と考える癖がつくからです。
もともと優秀な人は「で、結局どうやるの?」と自問していると思います。疑問を持たずに、毎日似たような業務を繰り返すのでは無く、どう処理すれば効率が上がるのか、どう処理すればミスが減るのか、と考える姿勢を鍛える事ができるのは大違いですよね。
普段使っているツールがどんな仕組みで動いているのか、ざっくり分かる
例えばVBAで言えば、エクセルのシートやブックの持っている命令を使う事で、シートを追加したり、ブックを閉じたりします。普段、普通に使っている作業もこうなっているのね、と理解出来ます。エクセル自体がVBAで作られているわけでは無いですが、どんな仕組みかざっくりわかる、と言うところが重要です。逆にプログラミングから普通に使う作業を知ることもあるかもしれません。表の縦横変換とか。
これはVBAに限ったことではありませんが、VBAが一番分かりやすいです。Webブラウザ上で動くアプリケーションや携帯アプリに使われている言語は、他のプログラミングが提供している機能を借りてきて使ったりしているので、その言語の冒頭部分の勉強だけでは仕組みがざっくり分かるところまではいけない場合もあります。
RPAがほんの少しだけ組めるようになる
非エンジニアが勉強するプログラミング言語は何でもいいので、なんとか繰り返しと条件分岐までたどり着くようにしましょう。そうすればほんの少しだけRPAが組めるようになります。Workfusion社が出しているRPA Expressはタダなので個人でも使えます。
RPAは繰り返しと条件分岐の概念+変数くらいが分かっていれば、ある程度の自動化が可能です。ブロックを積むようにIfなどの文法の積み木を組み合わせてスクリプトを作成していきます。スクリプトは実行する中身のコードのことです。「RPAはプログラミング不要で構築可能」などの文言で宣伝していますが、コードを書かなくても、繰り返しと条件分岐くらいは分かっていないとできません。
しかし、ココで注意点があって、RPAが本格的に組めるようになるためには、初級者レベルでは難しいです。RPAを組むことを目的にプログラミングの勉強を始めるのは遠回りです。もし自動化などを目指すなら、普通にVBAとかPythonした方が簡単です。
今の小学生が会社勤めを始める頃に備えられる
今の小学生はプログラミング学習が必須です。コードをバリバリ書くわけではありませんが、上で述べたRPAのように、文法の積み木を組み合わせてキャラクターを動かしたりしてプログラミングの勉強します。繰り返しや条件分岐が小学生でも分かっているんですね。義務教育で。この子達が社会人になったときに「え!?この人達繰り返しとか条件分岐すらわかってないの??」なんて先輩としてダサすぎですよね。
小学生でも習得できるような所まではせめて勉強しておきたいものです。
新しい事を学ぶ姿勢が定着する
停滞は衰退に近し、です。新しい技術や知識を身に付けようとしなければ成長はありません。プログラミングは粘り強く取り組めば身についていきます。そしてプログラミングそのものもさることながら、新しい事に挑戦する姿勢が身につくと言う事自体が非常に大切です。
できれば次へ進む
このように学ぶだけでもメリットの多いプログラミングです。せっかくなら生かしましょう。具体的には実際に使える何かを作る事に挑戦してみましょう。そうすれば、今度はそれが自信になります。そして実績になります。一目置かれます。
実績を作るところまで行けるかどうかは、人それぞれだと思いますが、挫折してもメリットがある理由について解説しました。挫折しても怖くないので、新しい一歩を踏み出しましょう。