見出し画像

プログラミング学習を継続するための秘訣と身に付けた方が良い能力や知識について解説します。

プログラミング学習を挫折した方や学習を継続できない方がいたら、僕が実践しているプログラミング学習方法をお教えします。それに加えて、学習する過程で出てくる専門用語の解説、身に付けた方が良い能力も合わせて公開するので、本記事を見た後には楽しく、スムーズに学習が継続できるようにします。

結論:継続の秘訣は”サイト模倣→ネットで公開”の繰り返し

プログラミング学習を始めた頃は習得した技術をブログ等でアウトプットをして自慢したいなぁーと思い、ブログを始めました。当初はただの自慢で”俺、プログラミング勉強してるぜ、どやー”みたいな気持ちでしたが、ブログを書きつ続けると思わぬ結果が得られました。

メリットとなったのは

  1. ブログ更新という強迫観念に駆られて、継続して勉強するようになった。

  2. インプットしたことを自分の言葉で説明するので、面倒だが学習の理解が桁違いに深まる。

  3. 自分の技術力を発信できるので転職する際にアピールができる。

  4. 作成したコードは自分の資産となる。

逆にデメリットは

  1. 嘘は書けないので、エラーの解決ができなければ記事の掲載ができない。

  2. ブログを書く時間を捻出するのが大変。

  3. ネタを見つけるために勉強内容を考えるのが大変。

  4. マメではない人がブログ更新するのは大変。


”ネットで公開”の方法は?

ネットで公開する方法を少しご紹介します。

  • Quitaと言う投稿サイトはご存じだろうか? https://qiita.com/

ネットで公開のする方法は自分のブログだけではなく、プログラマーの無料サイトで情報は発信ができます。

  • 他にはレンタルサーバーを借りて自分で投稿する。https://lsv.jp/ ←おすすめ

リトルサーバーという会社は月額料金が安いので少額で始めたい方におすすめ。WordPressの知識も付くので、無料サイトよりも自分の知識を深めたい人やSEOの知識を身に着けたい方へ。

  • Note.comという無料ブログに投稿する。 https://note.com/

こちらの無料ブログはSEO対策、Googleサーチにもかかりやすいので、執筆だけに集中できます。

  • SNSを併用して使う。Twitter、Instagram、FaceBook、Line、TikTok

ブログを更新しながら、SNSでブログ紹介と自分のサイト紹介を行うことで多くの人に自分のブログを見てもらうことができます。もしく、Git Hub PagesをSNSで公開する。

ブログで公開することについては最初の頃、”何をやってんだろう”、”面倒そうだな”、”そんなことするよりも勉強しろよ”という元同僚の声もあり、モチベーションは上がらなかったが、自分でアウトプットすると学習の理解が進み様々な問題解決のスピードが速くなりました。自分の経験から言えることマジでアウトプットは良いです。


”サイト模倣”の方法は?

Google先生に聞いて(サイト 模倣 おすすめ)みれば、様々な学習教材が見つかります。その中で少しピックアップしてみました。

  • ウェブサイトのHTMLとCSSを模写しながら学習したい人

基礎の基礎、HTML、CSSから学びたい人はCodestepという模写サイトは結構わかりやすいです。
https://code-step.com/coding-recommend/


  • とりあえず、ウェブアプリを作ってみたい人

Ruby、Pythonなどの言語を学びたい人はTechipitという教材サイトは実践的にウェブアプリを作りながら質問もできます。
https://www.techpit.jp/


  • 動画を見ながらウェブアプリを作りたい人

動画で学びたい人はYouTubeという無料動画サイトがおすすめです。”Ruby on Rails ウェブアプリ”で検索すれば、無料でウェブアプリの製作ができます。Progateとかドットインストールよりもハードルは高いですが、かなり実践的に学べます。
https://www.youtube.com/


  • ネットを見ながらCloud9の開発環境を構築したい人 ←結構重要!!

Ruby などの言語を使用する際の開発環境構築はGoogleで”Cloud9 環境構築 Ruby”で検索すれば出てきます。(検索力を身に着けてください。もしくは僕に質問してください。)https://qiita.com/ooooouchi/items/2ba6b74c570000511c48

意外と検索すれば無料で学習する方法が世の中に出回っています。必要なものはエンジニアの必須能力です。僕は29歳に退職の決断をして、30歳からプログラミングスクールに入校しました。未経験から新しい分野に参加することは大変ですが、不可能ではありません。


プログラミング学習する上で身に付けるべき能力

僕がプログラミングスクールで学んだ必須能力は”実行力”と”検索力”と”自走力”です。現在、自分で自己学習を進めている僕はこの3つの能力の大切さに気が付きました。
自分なりの言葉で説明すると、

何かを作ると決めたら最後までやりきる「実行力」。ウェブサイトを絶対に作るという目的がプログラミングの知識を深めます。

by sattaku1538

ウェブサイトを作るための手段、方法、知識を調べるための「検索力」。そのためには専門用語や状況を調べ、理解して、何がわかっていないのか把握する。

by sattaku1538

プログラミング学習を自分で進める「自走力」。プログラミング学習を継続せずに妥協すると進化が速いIT業界に取り残されてしまう。

by sattaku1538


自分のなりの言葉で説明しましたが、端的に言うと”自分で問題を見つけて、調べて、勉強しろ”ということ。簡単に見えますが、一番難しいです。社会人になってから自分で時間を見つけて勉強するのは大変です。ダラダラしたくなる気持ちはわかりますが、自分の周りは変えられないが、自分の環境は変えられます。


プログラミング学習で必要な知識(知っておいた方が良い単語)

専門用語編

  • ディレクトリ

  • ファイル

  • デバック

  • パス

  • バグ

  • ネットワーク

  • GUI

  • CUI

  • サーバー

  • データベース

  • SQL

  • フレームワーク

  • コマンドプロンプト

  • ソースコード

  • コーディング

  • ブラウザ

  • URL

  • ドメイン

  • HTTP、HTTPS

  • HDD

  • SSD

  • メモリ

  • CPU

  • クラウド

  • オンプレミス

  • 開発環境

  • SSL

  • デプロイ

  • ビルド

  • ターミナル

  • ウェブアプリ

  • メンター

ソフトウェア編

  • Git Bash

  • Power Shell

  • Git Hub

  • AWS(Amazon)

  • Cloud9(Amazon)

  • EC(Amazon)

  • インスタンス(Amazon)

  • VS Code

  • Slack

  • Ruby on Rails(フレームワーク)

あえて、単語の説明文は入れていれませんが、なんとなくでわかるようになっておけば、デバックする際にエンジニアサイトを見ても苦労しません。意外とこういう単語を知らないとサイトを読んでいるだだけで苦痛になるので面倒です。

ウェブアプリがどのように公開されているかどうかを理解するだけでも学習の理解度が変わりますので、併せてこちらも勉強するの良いと思います。
https://www.kagoya.jp/howto/it-glossary/web/webapplication/


まとめ

プログラミング学習の秘訣は秘訣は”サイト模倣→ネットで公開”の繰り返しが一番理解できる。ネットで公開方法はSNS、無料ブログ、レンタルサーバーでブログで公開する方法がある。
プログラミング学習で必要な能力は”自分で問題を見つけて、調べて、勉強する”自分で時間を捻出して勉強するしかありません。方法はいくらでもあります。
プログラミング学習で必要な知識は専門用語をなんとなく理解することです。少しだけ検索してどんなものかを理解すると検索しやすくなります。

もし、プログラミング学習に不安があるようであれば、迷わずプログラミングスクールに通うことをおすすめします。


Code CampのRubyマスターコースは基礎である画像投稿サイトを開発できます。また、質問の対応時間が7時〜23時40分と長いです。最初の内はわからないことは質問しまくれば、実力はついていくので、おすすめです。
開発環境はAWSを使用するので、今後のキャリアでも活かせると思います。一度、無料カウンセリングを受けてから、判断をしてみてはいかがでしょうか。
自分で検索力という話をしていますが、最初の内は他人に質問をしても問題ありません。これも一種の検索力とも言えます。ある程度の力を身に付けるためにプログラミングスクールに通うのは全然有りです。

本記事に関するご意見、質問がございましたら、Googleフォームでご連絡ください。
https://forms.gle/ejYADRsEzR7NseQS8



いいなと思ったら応援しよう!