「プログラミングをやってみたい」「やってみよう」と思ったらその気持ちが大事です。
理由は人それぞれですが
・モノ作り、サービス作りがしたい
・プログラマーになりたい、転職したい
・今の仕事に活かしたい
こういった気持ちはそのまま目標になり行動力になりますので。
この記事では初心者のプログラミング入門に向けて準備しといたほうがよいモノ、コトについて整理します。また学習を進める上で役に立つサイトとアプリも紹介します。
プログラミング入門者のための5つのステップ
ステップ1.目標設定
プログラミングは、楽しみながら学ぶことが上達の秘訣です。
そのため、最初のステップは、何を作りたいのかを決める所から始めましょう。ただ漠然と「プログラミングをしたい」「プログラマーになりたい」だけでは、モチベーションを高く維持することが難しいですし、途中で挫折しやすいものです。
例えば「スマホでアプリを開発して収入を得たい」という目標でも良いですし、「アプリを作って世界に貢献したい」という壮大な目標でも良いでしょう。
私の場合は
①「子供と大人が一緒に行って問題ない飲食店を探せるWEBサービス」を作りたいと思ったし。
②「2歳児むけのさわって遊ぶだけのスマホアプリ」を作りたいと思ったんですね。
具体的にどんなものを作りたいのかを頭の中でイメージすることによって、どんな言語をどんな風に学ぶのが理想的なのかが見えてきます。
ステップ2.言語を選ぶ
定めた目標に向かって、具体的にどんな言語を学べばよいのかを決めていきます。
プログラミング言語は、初心者にはハードルが高すぎる難易度のものがある一方で、初心者にも学びやすいものまで幅広く多種多様です。
何を作りたいのかによってどんな言語が必要になるのかが異なるので、作りたいものに合わせて言語選びをするのが上策ですね。
さっきの例ですと①はRubyで作りましたし、②はiOS用のSwiftとXCodeで学習しました。
初心者に人気で学びやすい言語としては、スマホアプリ開発に使えるSwiftやKotlin、WEB開発に使えるJavaScript、PHP、RubyやPythonなどがあります。
Java言語やC言語は業務系システム開発で使われる事が多くちょっと難易度高め。それよりは書いたコードを目の前で動かしてすぐ結果が見えるアプリやWEB系の方が初心者にはお勧めと思いますね。
ステップ3. 学習する教材を選ぶ
いよいよプログラミング言語を学習することになります。
まったく知識がないゼロの状態から独学だけで学ぶのは大変なので、まずは本屋に行って本を買ってみましょう。(むしろAmazonで最新のを買った方が良いですが)
今時「本?」なんて思うかもしれませんが、本は体系的に作られてますし、何人ものチェックが入って製品になってますので、平均スコア以上の品質はあると思います。
どうしても1人では分からないとか、時間を短縮したいという事であれば、プログラミングスクールに通うのが理想的です。時間的・コスト的に難しいという人は、無料で利用できるプログラミング学習サイトなどを利用するのもおすすめです。
ある程度の基本的な部分がつかめたら、後は独学でもなんとか前進できるでしょう。
ステップ4. 環境構築
いよいよプログラミングを始めるための環境づくりが必要です。ココがかなりの確率で挫折する部分でもあります。
教材(書籍やWEB)に環境構築について書かれていることを望みます。書かれてない教材もあるので、そういうものを選ばないように気を付けて。
勉強しようと決めた言語で開発(学習)を進めるするためには、パソコンにどんな環境が必要なのかをリサーチし、環境構築をしましょう。
ソフトウェアが必要な場合にはダウンロード&インストールをして。そのソフトを使えるようになる必要もあるかもしれません。
選んだ言語によって環境構築の方法は様々です。また時代が進歩すれば流行ってる環境やソフトも異なります。その時安定して使える環境を構築しましょう。
ステップ5.学習する
さて環境構築ができたら教材に従って学習をすすめましょう。概ねほとんどの言語では「Hello World」を画面に表示させる所からスタートします。
画面の表示を見てワクワクしながら進めていきましょう!
プログラミング入門者におすすめサイト5つ
独学でプログラミングを学習する場合には、無料で利用できるサイトを利用する方法がおすすめです。覚えやすくまとめられているサイトなら、効率的な勉強ができるでしょう。お役立ちサイトを5つご紹介しますね。
- Progate
学習サイトの中でも、マイペースで学習したい人におすすめです。イラストが中心なので初心者や飽きっぽい人でも分かりやすく楽しく学べますし、直観的にプログラミングを理解できるカリキュラム構成が魅力です。Progateは簡単すぎる‥という方は次のドットインストールへ進みましょう。 - ドットインストール
それぞれのレッスンが3分とコンパクトにまとめられているサイトで、パソコンからでもスマホからでも閲覧できるのが特徴です。テンポよく動画を見られ、同時に手を動かせるので私好みでした。初心者向けの動画はほぼすべてが無料なので便利ですよ。 - Schoo
分かりやすくまとめられた動画サイトですが、リアルタイムな生放送という点が特徴です。分からない部分はその場で講師に質問できるので、分からない部分を放置することなく前進できるサイトです。 - Qiita
ユーザー同士がプログラミングに関する意見交換をするためのQ&Aサイトです。学習サイトでしっかり学んだ後に分からない部分について意見交換したり、言語の特定の部分についての情報を検索したりもできますよ。かなり雑記レベルで記述されてるので行間を読み解くのが難しい場合が多いですが。 - Stack Overflow
ある程度の基本がわかっている人のためのQ&Aサイトです。独学でプログラミングをしている人に限らず、プログラミングをしていると予期せぬところで躓いてしまったり、分からないところやエラーなどが出てくるものです。Q&Aサイトを利用すれば、他のユーザーからサッと知りたい部分をピンポイントで教えてもらうことができます。
プログラミング入門におすすめなアプリ5つ
外出中に携帯しているスマホは、ちょっとした隙間時間や休憩時間、移動時間に利用すれば便利なガジェットですよね。そんなアプリを使っても、プログラミングを独学で学習できます。便利なアプリを4つご紹介しますね。
- アルゴリズム図鑑
特定の言語を学ぶというよりは、プログラミングのアルゴリズムについての知識について理解したい人におすすめのサイトです。基本のソートアルゴリズムから少しプログラミングよりな配列、スタック、キュー、ハッシュなども図解しているので分かりやすいですよ。理工系の大学では先にアルゴリズムを座学して、それをプログラミングで実現するという順番でやりました。なのでここから取り組んでもいいかもしれませんね。 - プログラミングゼミ(低学年から使えるプログラミングアプリ)
小学校の子供から楽しく学べる学習アプリです。ゲームがたくさん取り入れられていたり、基本的な部分から学べるので、プログラミングに対してハードルを感じている人に一押しの学習アプリです。 - Progate
前述のサイトがアプリになりました。アプリ上でゲーム感覚で学習が出来るので入門者におすすめです。簡単ですよ。 - Udemy Online Course
特定のプログラミング言語だけが学べるというわけではなく、6万以上という豊富な学習コースの中にプログラミングやウェブなどのコースもある学習アプリです。基本的な部分は無料ですが、レベルがアップすると有料になるのが特徴です。 - CodeBelle
iPhone向けのアプリ開発をするなら、Swiftを勉強するのが最短です。このアプリでは、Swiftに特化して学習できます。1つのレッスンは3分なので、隙間時間を利用できる点が魅力のアプリです。
プログラミング入門者が挫折しそうなときの乗り越え方6つ
独学でプログラミングを学習する場合には、あらゆるところで壁にぶつかることが予想されます。壁にぶつかることは珍しくありませんが、乗り越え方を知っていれば、挫折せずに学習を続けやすくなりますし、モチベーションが下がってしまうことも予防できるでしょう。壁を乗り越える6つの方法をご紹介しますね。
- 写経という名のコードコピペ
1つ目の方法は、コードがかけない時にはマネをするということです。プログラミングのコーディングでは、わずかな誤表記でもエラーが出たりします。分からなければまずはマネをして、それをカスタマイズしながらエラーが出るかどうかをチェックしたり、数値を変えてどんなふうに変わるのかという点をチェックしましょう。 - 薄く理解して次へ進む
2つ目は、最初のうちは細部まで完璧に理解できなくても、ザックリ理解できていればOKとするという方法です。ザックリ理解できているだけでも、勉強していくうちに理解できなかった部分が分かるようになりますよ。 - コードを書いてすぐ動かしてみる
3つ目は、自分で積極的にプロトタイプを作ってみることでモチベーションを維持するという方法です。ただプログラミングだけを学んでいても、楽しくありませんよね。そんな時には部分的に小さなプログラムでも良いので、何かを作ってみてください。きっと一気にやる気スイッチが入るでしょう。 - 仲間をみつける
よくTwitterではプログラミング初学者がツイートしてたりします。彼らをフォローして繋がってみると自分と同じように頑張ってる人がいるんだな、というのがわかります。もくもく会とかプログラマーのコミュニティを探してに行ってみるのもアリでしょう。 - Q&Aサイトの活用
5つ目の方法は、多種多様な媒体を使うという方法です。ネットの学習サイトだけというよりは、Q&Aサイトや書籍、Youtubeなどを使うのも悪くありませんよ。また、特定の言語についての掲示板などを利用して、分からない部分を他のユーザーに質問するという方法も良いでしょう。大切なのは、分からないことは放置せずにできるだけ早く解決するということです。 - スクールを検討する
6つ目は、どうしても独学に行き詰まったらプログラミングスクールに通うという方法があります。スクールでは、完全な初心者でも理解できるように体系立てて効率的に教えてくれるので、独学で挫折してしまった人でも理解できるので、軌道修正できるはずです。