私は社内SE兼プログラマーとしてコーディングをやりつつ、趣味や副業でもプログラミングをしています。
プログラミング歴は5〜7年程度です。
ブログや他のアフィリエイトサイトでもプログラミングに関する情報を発信しています。
今回はプログラミングの基礎勉強を終わった後に何をすべきかという観点から記事を書いて行きます。
スポンサーリンク
無料でプログラミングを学ぼう
本題に入る前に、無料でプログラミングが学べるサービスGraspyの紹介です。
わからないところは無料で、メンターに質問が無料でできます。
プログラミングを教わりたいけど、有料のプログラミングスクールは高すぎる!と感じている方にぜひ、おすすめしたいサービスです。
Graspyの会員登録はこちら→Graspy
目次
プログラミングが初心者を脱する際によくある悩み
「プログラミングの基礎学習が終わったけどその後に、なにを勉強すればいいかわからない」
プログラミング初学者にこんな質問を受けることがあります。
プログラム初心者用の書籍や、ウェブサイト・サービスは充実しています。
なので、プログラミングを学びやすい環境にはなりました。
でも、基礎学習を終えた後にあるのが脱初心者の壁です。
プログラムの基本的な処理はわかっても、いざ、サービスを作るとなると何をすればいいかわからなくなるんですよね。
サービスを作るためにはフレームワークを使ったり、他のソフトとの連携(データベースやバージョン管理など)が必要になってきます。
サーバーやネットワーク、セキュリティー等の知識も必要になってくる場合もあります。
なお、私は基本的にはRubyやPHPを得意としております。
つまりWeb系のエンジニアなので、Web系の言語を中心に記事を書いて行きます。
プログラミングの基礎勉強を終えた後にやるべきこと
プログラミングの基礎勉強を終えた後にやるべきことを箇条書きにするとこんな感じです。
- ①新しい初心者用の書籍を購入して復習する
- ②使っていない媒体を試しながら復習する
- ③簡単なサイトを自分で作ってみる(ローカル環境で)
順番にみていきましょう。
①新しい初心者用の書籍を購入して復習する
書籍でその言語の基礎を学び終えたら、別の書籍を買って、そちらも一読するという感じです。
また、サーバーサイド(PHPやRubyなど)の基礎勉強を終えたなら、クライアントサイド(JavaScript)の勉強をするのも良いと思います。
逆も然りです。
プログラムの基礎は同じなので理解しやすくなりますし、新たな視点も出てくるのでもともと学習していた言語の理解も深まります。
②使っていない媒体を試しながら復習する
書籍で勉強した人は動画を使ってみる。
ウェブサービスで勉強した人は参考書を買ってみる。
というような感じで、違う媒体も試してみましょう。
媒体によって合う合わないはありますし、作り手の教え方が変わるので理解が深まる可能性があります。
ウェブサービスではオブジェクト指向について理解できなかったけど、書籍で勉強したら理解できた気がする。
ということはよくあることです。
③簡単なサイトを自分で作ってみる(ローカル環境で)
「簡単なサイトを作れ」
と言われても難しいかもしれません。
ただ、初学者期間を終えたらなんとなく、自分でできそうなサイト、サービスはなんとなくわかるはずです。
サーバーサイドの理解が不十分な場合はJavascriptを使ったリッチなコンテンツを作ってみるとか、サーバーサイドの理解があるならデータベースと連携させるとか。
簡単なものでいいんです。
ローカル環境でやる分にはセキュリティーとか気にする必要はあまりないので、気軽に取り組んでみてください。
この後の道も険しいです
基礎勉強を終えて簡単なサービスを作ったり、書籍や動画を使って勉強してもなかなか中級者の壁は超えられないです。
ここまで紹介した方法での勉強は誰でもできます。
もし、ここまで紹介した方法でで挫折をする場合はプログラムに向いてないと諦めるのもいいかもしれません。
意見が別れるところですが、プログラミングには向き不向きはあります。
プログラマーの世界では、自分が何時間も悩んでいることを一瞬で解決する天才みたいな人もゴロゴロいます。
そういう人を目の当たりにすると、やる気がなくなってしまいます。
しかもここからは教科書がなくなります。
書籍やウェブサービスでプログラミング学習をしているとわかってきますが、ほとんどの書籍やウェブサービスはプログラミングの入り口しか解説してくれません。
中級者向けの書籍やサービスは減ります。
その理由は、体系化するのが難しいのと、対して売れないからだと個人的には思っています。
ダメ元で面接、仕事受注、アピールするのはあり
さっきも言いましたが、ここまでくると教科書がなくなります。
なので不十分な実力ながらダメ元で面接、仕事受注、アピールするのはありです。
私自身も実力は不十分だと思っていましたが、運よく社内でエンジニアになれました。
そのあたりのことはこちらの記事に書いています。
この記事を簡単にまとめると、社内でプログラムを勉強していることをアピールし、簡単なプログラミングの仕事を受注しました。
ということです。
プログラムを書くけど、本職のエンジニアがやるほどではない仕事はたくさんあります。
あと、就職をねらうのも可能性ありです。
私の会社には、以前の職場でWeb系のプログラマーをやっていた方がいます。
その会社の求人票には開発経験が2年以上などと書かれているにも関わらず、HTMLもかけない奴が入ってきたと行っていました。
この業界は基本的に人手不足なため、条件を満たしていなくても、しっかりアピールできれば就職できる可能性はあります。
ポートフォリオなど、具体的に実力が証明できるものがあれば、さらに受かる可能性も上がるでしょう。
プログラミングスクールもあり
プログラミングスクールには大抵、課題のアプリがあり、それに一工夫加えることでポートフォリオにすることができます。
私はいくつかのプログラミングスクールに通った経験があります。
テックキャンプには仮メンター制度どいうものがありました。
メンターとは簡単にいうと講師のことで、卒業後に一定のテストに合格すればメンターになれる制度です。
なので、卒業と同時に、プログラミングに携わる仕事につけます。
また、侍エンジニア塾は、完全オリジナルカリキュラムなので、ポートフォリオの作成まで手伝ってくれます。
侍エンジニア塾受講初期では、個人でアプリを開発したり、フリーランスで仕事を取ろうと思っていた私ですが、受講期間中に社内SEなることを視野に入れ出したのでネットワーク系の勉強に切り替えました。
今思えば良い選択だったと思います。
プログラミングスクール卒業生で成功している例はたくさんあります。
個人の印象ですと、TECH::CAMP(テックキャンプ)の成功事例が多い気がします。
テックキャンプはプログラミングスクールの老舗なので、成功事例が多いのかもしれません。
成功した方の例を一部掲載します。
- 暗闇ボクシング b-monster(TECH::CAMP(テックキャンプ)
)
- ウェルスナビCEOの柴山さん(TECH::CAMP(テックキャンプ)
)
また、実際にテックキャンプと侍エンジニア塾には通っていますが、その印象だと、テックキャンプは起業を目指す若者、侍エンジニア塾はフリーランスを目指す20代中盤以上に人気といった印象があります。
現状の私は、実際にWebサービスを作れる人が隣の席にいるので、その人から学ぶことができますし、1日8時間はプログラムに携わるわけですので成長の速度は変わります。
実務で必要なことそうでないことの取捨選択もできますので、学習も効率的になります。
なので、仕事をしてしまうのもありです。
というわけで今回の記事は以上です。
基礎勉強を終えたら、さらに学習を進めつつも、更に学べる環境、働ける環境に飛び込むのもありかな、と思っています。