スマート駄目リーマンの忘備録

旅行記、キャリア論、世相分析など思ったことを書き連ねます

プログラミング初心者が、プログラマーとして食べて行けるようになるには?

初心者が陥る罠

 パソコン教室や職業訓練校で、htmlやcssを勉強して、ホームページのデザインを構築出来るようになった。よっし、これでプログラマーとして食べて行けるのかな?という淡い期待を胸に抱きます。

 

htmlやcssの知識だけでは食べていけない

 残念ながら2020年代では、html、cssの知識のみで、食べて行くことは非常に難しいです。(アルバイトの仕事はあるかもしれませんが・・・)

 受託開発のクラウドワークスの単価も低いです。インターネット黎明期の1990年代後半から2000年代前半ならば、可能だったかもしれませんが、今はそうした技能はコモディティ化しています。

 また、専用ソフトやwordpressなどを用いれば、html、cssの知識が無くてもホームページを構築することは可能です。

 

最低でもjavascriptもしくはphpなどで動的サイトを構築出来る必要がある

 phpでホームページでお問い合わせフォームを作成して、自動返信メールが送れるようになる。さらにフォームに入力したデータをSQLサーバーに保存する。もしくはjavascriptでホームページ上のイラストが遷移する。ここら辺まで出来ないと、現在webプログラマーとして食べて行くのは難しいかと思います。

 ここが、プログラミング初心者が陥る大きな落とし穴です。htmlやcssphpjavascriptは技術的ギャップが非常に大きいのです。また、巷で販売されているプログラミング言語の考え方の本を読んでみても、それが実際のプログラムとどのように結びつくのか理解に苦しむでしょう。

 

webプログラミングを入り口すると早々と限界が来る

 htmlやcssではプログラミングにおいて本当に大切な要素が含まれていません。具体的にはプログラミングの基盤である、変数の定義、繰り返し、条件分岐、参照、配列、クラスといった概念が含まれていないのです。

 しかも、phpjavascriptの参考書は学生時代にC言語VBなどの言語を学んだ事を前提に書かれていることが多いです。よって、多くの初心者(特に文系)はphpjavascriptの技術ギャップに付いて行けずに挫折します。

 プログラミング教室としては、htmlやcssを教えて、手っ取り早く目に見える成果物を受講生に提示できることは願ったり叶ったりです。正直、変数の定義などから順を追って解説して行くと、早々と多くの受講生が脱落していくので、商業ベースで教室を運営して行くことは非常に厳しくなります。

 

プログラミング言語とは計算を効率よく行う為に生まれた

 そもコンピューターとは計算機であり、プログラミング言語とは計算機に人間が意図した計算を効率よく正確に行わせるために生まれたものです。特に同じ計算を何度も行う必要があるといった繰り返し作業にコンピューターは大きな力を発揮します。よって、プログラミングを行って、実際に複雑な計算をこなしてみることが、プログラミング理解の近道なのではないかと考えます。

 

エクセルを入り口にするのが、最も近道

 意外かもしれませんが、いきなりプログラミングの学習に入る前にエクセル関数を使いこなすことを目標にするのが良いと思います。特に絶対参照、相対参照を利用して、同じ計算作業をコピーする作業は、プログラミングの参照と繰り返しの概念を理解するための基礎になります。

 

エクセルVBA(マクロ)にステップアップ

 エクセルの関数を使いこなせたら、次はエクセルVBA(マクロ)にステップアップしましょう。実はエクセルVBA(マクロ)には、変数定義、繰り返し、条件分岐といったプログラミングに必要なエッセンスが、ほぼ含まれており、これを完璧にすれば、プログラミングの基礎は完成したと言っても過言ではないと思います。初心者は自動請求書作成システムなどを実際に作ってみることをお勧めします。

 通常のプログラミング言語を学ぶ際、初心者にとって最もハードルになるのが、開発環境の設定ですが、エクセルVBA(マクロ)はエクセルさえ起動できれば、簡単に動作が可能であり、初心者がプログラミングの基礎を学ぶには非常に適しています。

 本当にエクセルVBA(マクロ)を極めれば、会社での事務作業は殆ど自動化可能であり、これだけでプログラマーとして仕事が出来るくらいのレベルになります。(メールの自動送信や伝票作成までボタン一つで可能です。)実際にエクセルマクロの計算をパッケージ化して、ソフトとして販売されていたりもします。

yasuyan.net

 

 

 

 

エクセルVBA(マクロ)を習得した上でphpやjavascritに移行しよう

 エクセルVBAを使いこなせた上でphpやjavascritに移行するとそうではない場合とすんなりと理解が出来るようになると思います。表記が違うだけで、プログラミングで実行していること自体はそんなに大きく変わらないと思えるのではないでしょうか?

 実際にphpやjavascritを使いこなせるようになれば、webプログラマーとして、立派に食べて行くことも出来るでしょう。

 

まとめ

 プログラミング初心者は、一見遠回りに見えますが、エクセルを使いこなすことを入り口にすると良いです。エクセルの概念自体が、分かりにくいプログラムを視覚化して、分かりやすくする設計思想で作られたソフトなので、エクセルを使いこなすことでプログラミング的な考え方が自然と習得できます。

 エクセル関連についてwebでも本でも参考資料が豊富に存在しますので、それらを参考にしながら、勉強を乗り越えていただけたら嬉しいです。