昨今良く耳にする「未経験からのプログラミング(エンジニア転職)」。私は社会人になってからプログラミングを始めたのでそれに該当するのだと最近気づきました。そこで誰かの役に立つかと思い、苦労したことや勉強方法などをまとめようと思います。
現在のスキル
主に使用しているプログラミング言語は主にC#、Pythonです。
(一応触ったことがある他言語は、Java、Kotlin、JS)
作ってきたものとしては以下の通り。
- ネイティブアプリ(PC上で単独で動作するアプリ)
- ニューラルネットワークを用いた予測モデル
- AI学習用のデータセット作成アプリ
- Webアプリケーション
PC上で動作するソフト、GUIのあるソフトを作成してきました。サーバで動作するWebアプリは現在勉強中です。
ほぼ触っていない分野としてはマイコン系(C言語)です。ほんの一時期触る機会がありましたがそれ以来全くなので。。。
未経験なのに社会人からプログラミングを始めた理由
とあるメーカに院卒で入社した私ですが、そこの会社はマッチング採用(採用の段階でジャンルごとに細かく分けられている)ではなく、「技術職」という括りで採用されました。
その後の配属は、面談と個々の希望を加味して配属されました(本当に加味されているかは不明)。
当時、プログラミングに興味のなかった私は別の部署を希望しました。
結果、ソフト系の部門に配属されました!
こうしてプログラミングを急に始めることとなりました(要約:配属ガチャ)。
プログラミングを始めたときの環境
新人の私はソフトを扱う部門に配属されました。
会社には新人には教育係が付くシステムがあったので、私にも先輩が一人付きました。
その先輩はソフトウェアに関しては非常にスキルが高く、多くの人に頼られていました。
ただ優秀であるがゆえに忙しすぎて、私にはあまり時間を割いてはもらえませんでした。
「まぁ社会人なので自分で学ぼう。ネットもあるし。」ということで基本独学で、分からなければ先輩に聞く、というスタイルでプログラミング学習を始めました。
とはいえ当時の私はどのように勉強すべきかよく分かりませんでした。
何故なら今までろくに「プログラミング」を学んだことがなかったので。。。
プログラミングを始める人へおススメの学習方法
以下未経験からプログラミングを始めた私の所感とともに学習方法を紹介します。
ネットで調べれば大量の情報が手に入れられる現代ですが、全体像の把握は難しいです。
例えばC#で画像を埋め込む方法を知りたい場合は「C# 画像 埋め込み」で検索すれば欲しい情報が出てくるでしょう。
それをコピペすれば目的は達成できます。
しかしその言語でできること・重要な要素の比重などはネットで調べても把握しづらいです。
(検索すれば情報は出てくるが、把握しづらい)
このようなネット学習上での短所を補うために、私は何か(ここでは新しいプログラミング言語)を学ぶにあたり本を一冊買うようにしています。
学ぶ言語が決まればまず1冊本を買い、それをベースに学習を進めつつ、要所はネット検索と組み合わせる勉強方法をおススメします。
ネットだけでの学習は視野が広がりづらいのでおススメしません。
本を買わずにネット学習だけで済まそうとした言語も最終的に本を買うことになったので、今となっては本を買うことに迷いがなくなってます。
さいごに
プログラミングの学習方法は色々ありますが、初めて学ぶ際は必ず本をベースに学ぶべきだと考えてます。本を買わずに学習できるのは、いくつかの言語を学んだ後です。
なるべく簡単な本を一冊購入し、その1冊を学びきることが正しい第一歩だと思います。
学習方法に迷っている方の参考になれば幸いです。
コメント