Youtubeでプログラミング独学方法を解説!

実務未経験からスクールなしで自社開発企業に転職した僕が、どのようにプログラミングを独学したのか。

 

この記事を書いた人
avator

けんぞう
エンジニア

プログラミングを独学し、実務未経験からWebサービス自社開発企業へ転職した人。プログラミング独学の方法や、転職活動に関する情報を発信しています。

 

先日、内定を承諾しまして、8月からWebエンジニアとして自社サービスの開発に携われることになりました。この記事では、内定獲得に至るまでの僕のプログラミング学習方法を、ご紹介したいと思います。

Youtubeでも解説しました!

この記事の内容について、Youtube動画でも解説しています。ラジオ感覚で聞ける内容だと思いますので、音声で内容を聞きたい方はこちらからご覧ください。

この記事を書く理由

ネットで「プログラミング勉強方法」に関する記事は沢山ありますが、プログラミングスクールに誘導するアフィリエイト記事ばかりで本質的なアドバイスを得にくく、僕自身も苦労しました。

まだまだ駆け出しではあるものの自社開発企業に転職できた立場として、包括的で実践的な学習方法を提示することがこの記事の目的です。

もちろん全ての人にこの記事の内容がフィットするとは思いませんが、盗める部分はたくさんあると思います。今後の学習方針の羅針盤として、使って頂ければと思います。

なお転職活動に関することは、Qiitaに投稿しましたので以下の記事からご覧ください。

参考 実務未経験から独学で自社開発企業のエンジニアに転職するまでの半年間Qiita

プログラミング独学の全体像

ここではWeb系自社開発企業に転職するところをゴールとして、主にRuby on Railsで成果物を実装するまでの全体像を示します。

  • STEP.1
    HTML/CSS基礎知識の習得

    2週間程度

    Webページの見た目を作るHTML/CSSの学習から始めます。ここの知識は、のちのRails学習でも生かされるものです。

  • STEP.2
    Git / SQLの基礎知識習得

    2週間程度

    殆どの企業がソースコードの管理にGithubを利用しているため、使い方をしっかりと理解しておく必要があります。また、Webサービスを作る際データベースの知識も必要になるので、SQLの勉強もしておきましょう。

  • STEP.3
    Ruby on Railsの基礎知識習得

    2週間程度

    Railsを使ってシンプルなアプリケーションを実装する過程を学習しましょう。この時点で、完全に全て理解できている必要はありません。

  • STEP.4
    実践的なRuby on Railsの知識習得

    1ヶ月以上

    Railsを使ってより複雑なアプリケーションを実装していきましょう。分からないところはリファレンスを見返して、知識を補完していくイメージです。

  • STEP.5
    リファクタリングやWeb技術の基礎知識を習得

    Web系企業でエンジニアとして働く上で必要となるWeb技術についての知識や、リファクタリングの基本的な考え方を学びます。

以下から、各ステップの具体的な教材や目的等を解説していきます。


STEP1: HTML/CSSの勉強

html/cssイメージ画像

Webページの見た目を構成するHTML/CSSの勉強から始めましょう。

なぜHTML/CSSから勉強を始めるのか?

プログラミング独学をHTML/CSSから始めるべき理由は2つあります。

  • 理由①:Webサイトという「馴染み深い」ものを作る言語なので、勉強しやすい
  • 理由②:のちにWebサービスを作る際にも、確実に知識が生かされる

何を参考にしてHTML/CSSの勉強をしたら良いか?

HTML/CSSの勉強について参考になる教材はたくさんあります。

けんぞう

モダンコーディング(電子書籍)」はサルワカの中の人もおすすめされていて、実際すごく分かりやすくて濃い内容の一冊でした。

HMTL/CSSをどれくらい勉強したら良いか?

HTML/CSSは基礎知識として重要ではありますが、深掘りして時間をかけるほどではないと思っています。後々のRailsの学習の方に、時間を割くべきです。

具体的な程度としては「ProgateのHTMLコースを道場コース抜きで2周くらい」がちょうどだと思います。




STEP2: Git / SQLの基礎知識を習得

バージョン管理イメージ画像

続いて、GitとSQLの勉強をしましょう。

なぜGit / SQLをやるのか?

例えば、この後作るRailsアプリケーションをHerokuというサービスを使ってインターネットに公開(デプロイ)するには、Gitを使う必要があります。

Ruby on Railsでアプリケーションを実装する場合、O/Rマッピングを用いることでSQL文を直接書く必要はないですが、それでもデータベース操作の一連のコマンドを知っておいて損はありません。

(参考:Railsガイド

何を参考にしてGit / SQLの勉強をすれば良いか?

Git / SQLの勉強には、以下の教材がおすすめです。

Git / SQLをどれくらい勉強したら良いか?

以下の理解度くらいで、一旦大丈夫です。

  • Gitadd commit push をおこなってGithubにソースコードを公開することができるレベル
  • SQL:データの保存、削除、閲覧、更新に関するSQL文をとりあえず理解したレベル

STEP3: Ruby on Railsの基礎知識習得

Ruby on Rails開発イメージ画像

Railsでシンプルなアプリケーションを実装する全体像を理解しましょう。

なぜRuby on Railsを勉強するのか?

Ruby on Railsを個人的におすすめしている理由は以下の3点です。

  • 理由①:モダンな開発をしているWeb系企業で使用されている
  • 理由②:日本語ドキュメント・解説記事が充実していて学習コストが低い
  • 理由③:僕含め「未経験から転職に成功した事例」の多くが、Ruby on Railsでポートフォリオを作っており、ライバルの具体的レベル感が分かりやすい

特に理由③が個人的には大事な要素だと思います。「未経験からエンジニア転職」はある程度、テンプレ化されています。僕も含めて多くの人がRailsを学習して未経験からWebエンジニアになっているというのが、現状です。

 

何を参考にしてRuby on Railsの勉強をしたら良いか?

Railsチュートリアルの方がより信頼性が高い情報が手に入りますが、勉強のしやすさでいうと、Progateの方が個人的にはおすすめです。

学習のコツ

Progate通りにローカルで開発する」というスタイルで学習するのが、おすすめです。Progateのスライドで学習を進めながら、手元でエディタ・ターミナルを開いて、同じコマンドを叩き、同じコードを記述しながら勉強するということです。

Progate効率的勉強法イメージ画像

Ruby on Railsをどれくらい勉強したら良いか?

Progate」を1周完了させたくらいで、次の実践に進みましょう。Railsチュートリアルは結構長いのでどこまでと言いづらいですが、僕が学習初期に作ったアプリケーションくらいのものが作れるようになったら、次に進んで大丈夫かと思います。




STEP4: 実践的なRuby on Railsの知識習得

Ruby on Rails開発イメージ画像

AWSを使ったり、テストを書いたりとより実践的なサービス開発に取り組みます。

何を参考にして、実践的なRuby on Railsの勉強をすれば良いか?

学習のコツ

現場で使える Ruby on Rails 5速習実践ガイド」は電子書籍で購入して「kindle for mac (windows)」などを使い画面を左右で分割して学習すると捗ります。

kindle for macイメージ画像

☝️kindle for macを使うとプログラミング学習が捗る

どれくらい勉強すれば良いか?

ここに一番時間をかけるべきなので、上記の書籍での学習に加えて「自分で設計から考えて、サービスを作ってみる」というところまでやり切ってみましょう。

「何を作ろうか?」と迷う方は、まずは「Twitterと同様の機能のSNSサービスを作ってみる」のがおすすめです。

 

  • 機能①:コンテンツの投稿、閲覧、編集、削除機能
  • 機能②:ユーザーログイン機能
  • 機能③:投稿に対してのコメント機能
  • 機能④:ユーザー同士のフォロー機能

 

具体的には上記の機能を実装するイメージです。ログインやコメント機能が最初は難しい場合、まずはコンテンツの投稿関連機能(①)を作り、その後ユーザー周りの機能(②)を実装して、投稿とユーザーを関連づける流れで実装しましょう。

ちなみに僕が作ったものを載せておきますので、よかったら参考にして見てください。

 

 


STEP5: リファクタリングやWeb技術の基礎知識を学習

リファクタリングイメージ

より良いコードを書く技術や、インターネットの構造などを理解しましょう。正直この辺の勉強は内定を承諾してからや、転職してからでも良いと思いますが、結局必要になる知識なので、早めにやっておいて損をすることはありません。

何を参考にして勉強すべきか?

 

最後に採用イメージ画像

 

エンジニアとして未経験から独学して転職したい方は、ぜひ上記の手順を実行してみてください。

もちろん僕もまだまだなので、プログラミングの勉強はずっと継続していきます。お互い頑張りましょう。

けんぞう

Twitterではプログラミングの独学テクニックや、転職活動の情報などを呟いてます。ぜひフォローしてみてください!

けんぞうのTwitter

動画:東京フリーランスで喋りました

独学の話などをインタビューしてもらいました。興味がある方は、どうぞ。