プログラミングって難しい
そういう人は多いですね。しかしそんなことは有りません。
言語という点で比較すれば、英語やフランス語など第二言語を学ぶ方が難しいと言えます。
プログラミングの需要は年々高まり、今や最高潮とも言える域まで来ています。
なぜそこまで需要が高いのか?
プログラミングは稼げる
仕事はいくらでもある
この2つ大きな理由です。
フリーランスで活躍するのに一番の近道がプログラミングだという人も少なく有りません。
小学生の教育にプログラミングが取り入れられて、皆がプログラミングできる世の中になるのでは無いかと言われていますが、実はそうでは有りません。
実際に仕事ができる、独立できるレベルで身につけるには、しっかりと学習を積む必要があります。
今回は、そんなプログラミングの学習方法について解説していきます。
これを読んで実践・継続すれば、間違いなくあなたもプログラミングで生活できるレベルまで到達できるはずです。
稼ぐ力を身につける
先にも述べたように、プログラミングを学習する大きな目的が稼ぐことにあります。
フリーランスで活躍することはもちろん、求職に困ることも間違いなく少なくなります。
それだけ、需要のあるスキルなのです。
また、プログラミングをおすすめする理由の一つとして、学習費用が挙げられます。
Googleで調べればいくらでも情報やサンプルが出回っており、全く費用をかけずに仕事を受注できるレベルまで押し上げることも可能です。
プログラミングは「難しそう」だというイメージが先行してしまい、実際に取り組んだものの諦めてしまったり、興味はあるにも手をつけない人は山のようにいます。
しかし、それは「実は競合が少ない」ということの証明になります。競合は多いと囁かれていますが、実際に手に職というレベルまで達している人は少ないのです。
それらを踏まえ、プログラミングは「稼げる」というよりも「稼ぎやすい」スキルの一つと言えます。
必要なものはパソコンだけ
さて、具体的な始め方を説明していきましょう。
とはいっても、準備するものはパソコン1台、ただそれだけです。
もう少し丁寧に表現すると「インターネットに繋がったパソコン」が必要です。
前項でプログラミングは稼ぎやすいと説明した理由の一つがこれです。
パソコンさえあれば、プログラミングはできます。だから基本的にどこへいても仕事はできるし、時間に左右されることも少ないのです。
スクールなんて必要ない
パソコンスクールや、今ではプログラミングスクールなども存在します。しかしそれは必要ありません。
これは、意味が無いというわけではなく、行かなくてもできるようになるということです。通信スクールなど、わかりやすく解説してくれているものも多くなってきてはいますが、無料講座があればそれだけで十分と言えるでしょう。
よっぽどモチベーションを保てない人には、スクールを後押ししてくれる要因と利用しても良いかも知れません。
初心者に関しては、スクールだけでなく書籍も不要です。
プログラミングを始めるために、初心者用の書籍を買って挑む人がいますが、これは大きな間違いです。
書籍には確かに初歩から丁寧に記述されています。
しかし、それは実践的な内容からかけ離れた場所がスタートラインとなっており、具体的にどういったものなのか、どういったものが作れるのかがわかりにくい手順です。
書籍が力を発揮してくれるのは、ある程度理解ができるようになってからです。レベルで言えば、初心者から中級者の間ぐらいで、やっと意味のあるものとなります。
ある程度、プログラミングがどういったものか、実際に触り理解をしていなければ、書籍を読むことは大変大きなハードルとなってしまい、挫折の要因となりかねません。
これは、多くのプログラミング学習者がハマってしまっている落とし穴でもあります。
選ぶポイントは”ノート”か”そうでないか”
プログラミングを始めようと考えている人の多くが、「パソコンはどれを買えばいい?」という質問をしてきます。私の少ない友人も、この質問でした。
正直、パソコンは何でもいいです。
どんなパソコンでも、プログラミングをする上で大きな支障は有りません。
とは言っても、超低スペックの化石のようなパソコンも存在しています。それは流石に支障が出てしまいます。
なのでAppleのサイトでMacBookProを参考にするのが良いでしょう。
MacBookProのスペックは大きく分けて3段階程度あります。その一番下のスペックの値を参考に購入すると、良い基準になります。
またMacは比較的高額なので、その金額より安い、似たスペックのパソコンを探すと良いぐらいものが選べます。
もちろん、MacBookを選ぶというのも良いでしょう。この当たりは、あなたの費用面と相談です。
今のあなたにとって、WindowsとMacに差は有りません。なので、あなたが買いたいものを選ぶのが最も良い選択です。
本項最初で述べたとおり、パソコンを選ぶ際、大きな分かれ目はノートであるか、そうでないかだけです。
ノートパソコンの利点は、なんと言っても持ち運びできることです。
自宅では煮詰まってしまったり、誘惑に負けてしまって作業が進まないという人は、ノートパソコンを選択すると良いでしょう。
自室で引きこもってする人は、デスクトップや一体型などの据え置きタイプを選ぶと良いでしょう。こちらの方が、同価格でハイスペックの物が購入できたり、モニターが壊れてもモニターだけを買い換えるだけで済むというメリットがあります。
学ぶべき言語はPHP?
パソコン選びの次に多い質問が「どの言語がいい?」です。
これは、何を作りたいかによるため、すべての人に正確に回答するのは難しいです。
ただ、よくわからない状態で始めるのであれば、私はPHPを推します。
Webエンジニアは学びやすく稼ぎやすい
PHPをおすすめする理由の一つは、Webエンジニアというジャンルが稼ぎやすいからです。
仕事は多く出回っており、需要も高いため、ネット上で出回っている情報量も多いです。また、言語のアップデートも比較的頻繁に実施されています。
PHPを学ぶ上で、ついてまわるのがHTMLとCSSです。他にもJavaScriptがお友達になります。
4言語あると考えれば、とてもハードルは高く感じるでしょうが心配いりません。HTMLとCSSについては、積極的に学ぼうという姿勢を捨て、PHPを重点的に取り組むという姿勢があれば実は簡単に解決するのです。
Webエンジニアを目指そうとする人の多くが、手順に沿ってHTML→CSS→JavaScriptまたはPHPという流れで学んでいきます。
しかし、HTMLもCSSも完璧にマスターしようとすると膨大な量で、それだけで挫折してしまいがちです。
また、HTMLからCSSにステップアップした際に挫折しやすく、さらにCSSからその次の言語にステップアップした際にまた挫折しやすいポイントが来てしまいます。
それだけ、順序よくするということには危険が存在するのです。
PHPを出力する際に、何かしらHTMLは必要になります。なので、PHPを学ぶ中で使うHTMLに触れ、身につけて行く方法がベストです。
そうは言っても、最低限の知識はいるので、PHPを学ぶためにHTMLとCSSを学ぶ時間を1日ずつ確保するぐらいが丁度良いでしょう。
HTML(1日学習)
CSS(1日学習)
→ PHPへの取り組み開始
あなたを助けてくれるのはWordPress
PHPをおすすめする理由の一つとして、WordPressがあります。
WordPressとは、オープンソースのブログソフトウェアです。これだとわかりにくいかも知れませんので、簡単に表現すると「HP作成を手助けしてくれるキット」のようなものです。
WordPressはブログを作る際に候補に上がります。ブログによるアフィリエイト収益に取り組む人が多い今、年々需要は高まってきています。
また自由度が高く、ブログ以外にも大型のHPサイトを作ることも可能です。細かな初期段階の設定をWordPressが賄ってくれるため、外側だけをカスタムするだけでより高度なサイトを短時間で作成することができます。
PHPを覚えていく上で、HTMLやCSS、JavaScriptに何かしら関わりが出てきます。そうやって多言語にふれることで、言語の役割が見えてきます。WordPressを触るようになれば、よりこの4言語とは触れ合う機会は多くなります。
ときには、どっちでもできるということがわかってきます。そうなれば、自分の得意不得意もわかり、より理解度は深まっていくでしょう。
潰しながら覚える
学習する基本は真似をすることからです。しかし、本質的な理解を深めるためには、まず潰すということが大切です。
0から作るより100を潰す
PHPを使ったサンプルは山程あります。フリーでブログに掲載されているものや、配布されているものを実際に動かしてみてください。
※PHPを動かすにはWindowsの場合XAMPP、Macの場合はMAMPを使用すると良いでしょう。準備方法については、割愛します。どちらも準備方法については多く出回っているので、調べながら実践してみてください。(どちらも無料で利用できます)
PHPのサンプルが動いたら、次は実際にコードを削除していきましょう。
1行削除して確認
1行削除して確認
その繰り返しをしていくと、どの部分がなくなると動作しなくなるのかが見えてきます。
どの部分が何に影響しているのかがわかれば、その部分を変えるためにどうすればよいのかが徐々にわかってきます。
位置を移動させてみたり、同じ表記を別の場所に出力させてみたり。
サンプルが完全にもとに戻らなくなってしまった場合を考慮して、ダウンロードしてきたサンプルはコピーして使うようにしましょう。そうすれば、リセットが容易です。
潰すという方法でプログラムに触れるというのは、裏技的な手法とも言えます。
余談ですが、医療の現場でドイツ語が用いられているのは、ドイツの医療が最先端という時代が続いていたからです。最先端でいられた経緯は、ユダヤ人に対する人体実験が国として認められていたからです。
実際に生きているプログラムに触れるということは、それだけ貴重且つ実践的な体験だということです。
ジャンクで作るホームページ
色んなサンプルを潰したら、次はそれをつなぎ合わせていきます。
例えばサンプルのHPにお問い合わせフォームを付けたい場合、サンプルで拾ってきたお問い合わせフォームを、そのページにそのまま貼り付けてしまえば良いのです。
しかし、それだけでは不要な部分が重複してしまったり、アクション先のURLが異なったりしているでしょう。
そこから、不要な部分を取り除いたり、必要な部分だけを取り出したりすることになります。
こうやって、ジャンクページをどんどん作ってみましょう。色んな機能を備えたジャンクページを作ることで、それぞれの言語への実践的知識はどんどん深まっていきます。またページがどのように生成されているのかも動きとして見えてくるでしょう。
また、作ることの最大のメリットは、それが自身の成果となることです。
見た目がそれっぽくなれば、それはポートフォリオに乗せても十分アピールのできる成果となります。
それだけ、作るということはスキルアップと実益を兼ね備えているのです。
短期目標はメール送信
ジャンクパーツで遊び続けるのも悪いことでは有りません。しかし、実際に理解を深めていかなければスキルは身につきづらいものです。
そこで、実際に動きのあるものを1から作ってみるのが良いでしょう。
お問い合わせフォームなんて簡単
そこで、お問い合わせフォームを作って見るのが良いでしょう。
お問い合わせフォームを作る上で、実際にページ移管や変数、配列の知識と使い方が身につきます。メールを送信する際は関数を使用します。
また、バリデーションをする際にはJavaScriptを使用するケースもあります。フォームを構成するにはHTMLは必須です。
このように、小規模でも多くの要素を含んでいるものを作ることで、理解は一気に深まります。
また、PHPのメール送信は方法はもちろん、ライブラリも多く出回っているので、躓いた際は調べながら進め、解決がしやすいと言えます。
需要と汎用性が高さが強み
お問い合わせフォームづくりの良い点として、学び以上にも需要の高さが挙げられます。HP制作の仕事を受注する際に、お問い合わせフォームも作れるという明記がしてあるだけで、格段にハードルは下がります。
例えば、自分の店のHPを持っていないような飲食店にHPの営業をかける際に、「予約受付フォームもつけれますよ」と提案するだけで、意外と食いついてくれるのです。
※これは実際に私が経験したことです
お問い合わせフォームは、作り方によっては予約フォームにもなり、更にアンケートフォームにも様変わりします。
汎用性が高く、それであって需要の高い機能だと言えるため、これを取り組むというだけで大きなメリットがあります。
超実践型上達法
さて、ここからは仕事を獲得するための取り組みになります。
実践的なスキルを身につけることで、プログラミングの腕はどんどん向上します。
サーバーを契約してみる
どれだけプログラミングがかけるようになっても、実際にそれをサーバーへ設置できなければ意味が有りません。
この部分をおろそかにしてしまう人は意外と多いのです。
ローカルでの開発環境が整えられたら、次はネットワーク環境へ置いてみて、動くかどうかを試してみましょう。
そのために、レンタルサーバーを契約する必要があります。
練習用であれば、格安ドメインをとり、比較的安いサーバーを契約しましょう。しかし、格安サーバーの中にはPHPが使えないものや、データベースが使えないものがありますので注意してください。
迷った方は、さくらサーバーやXサーバーが良いでしょう。
格安ドメインであれば、年間100円以下のものもあるので、サーバーと合わせても年間数千円で済むことがあります。
サーバーを契約すれば、どんどんファイルをアップして、実際にネットワーク上で動いているかを見てみましょう。
触っていく上で、サーバーに関する知識も徐々に増えていきます。そうすれば、より実践スキルに近づいていきます。
働くことが一番の学び
実際に働いてみるのが、何よりも効果があります。実務の経験を培っていくのです。
現在、副業としてプログラミングを続けている人は、クラウドワークスやランサーズなどを利用してみると良いでしょう。
格安案件は多いですが、学びながらお金がもらえると考えれば、これほど効率の良いものは有りません。
実際に受注するためには、ポートフォリオ等が必要ですので、練習で作ったものなどをサイトにあげておいて、自分がどの程度できるかを相手に伝えられるようにしておきましょう。
また、現在求職中の人やフリーランスとして活躍しようか悩んでいる人は、一度制作会社へ勤めてみるのも良いでしょう。
実際の現場でどういったスキルが必要とされているのか、どういった技術が使われているのかを知るためには、これ以上に身になるものは有りません。
就職という修行にはメリットが多い
フリーランスで活躍したいと考えている人にとって就職するというのは、遠回りだと思う方もいるでしょう。ですが実はそうでも有りません。
制作会社に務めて、そこから独立した人の多くは、継続して仕事をもらっている方が多いです。また、現場で得た知識は個人で活動していては得にくいものも多くあります。
Web業界の流行りはもちろん、実際にお客さんとのやり取りを身を以て体験することは大切なことです。
業務管理に使用しているソフトや方法など、プログラミングに必要なこと以外でも学べる部分は多いです。
金銭的に余裕は無いが、フリーランスとしてやっていきたいと考えている人は、1度その業界に就職をしてみるということも視野に入れてみてください。
きっと、道は開けてくるはずです。
まとめ
以上、未経験の方へ向けたプログラミングの始め方、学習方法を解説していきました。
すべて読んでもイメージが掴めなかった方は、まずは初めてみると良いでしょう。触れることでわかることは多いです。
独立をしようと考えている人は、是非プログラミングへ挑戦してみてください。
きっと、そんなアクティブなあなたを後押ししてくれるでしょう。
最後にPHPのを最速で実践レベルまで使えるようになるための記事をまとめているので、是非取り組んでみようという姿勢が出来た人は参考にしてみてください。