プログラミング

【完全未経験OK】プログラミングの始め方 〜学習方法を解説します!〜

CSS HTML JavaScript MAMP PHP XAMPP フリーランス プログラミング 独立 起業
【完全未経験OK】プログラミングの始め方 〜学習方法を解説します!〜

 

プログラミングって難しい

 

そういう人は多いですね。しかしそんなことは有りません。

言語という点で比較すれば、英語やフランス語など第二言語を学ぶ方が難しいと言えます。

 

プログラミングの需要は年々高まり、今や最高潮とも言える域まで来ています。

なぜそこまで需要が高いのか?

 

プログラミングは稼げる

仕事はいくらでもある

 

この2つ大きな理由です。

フリーランスで活躍するのに一番の近道がプログラミングだという人も少なく有りません。

 

小学生の教育にプログラミングが取り入れられて、皆がプログラミングできる世の中になるのでは無いかと言われていますが、実はそうでは有りません。

 

実際に仕事ができる、独立できるレベルで身につけるには、しっかりと学習を積む必要があります。

 

今回は、そんなプログラミングの学習方法について解説していきます。

これを読んで実践・継続すれば、間違いなくあなたもプログラミングで生活できるレベルまで到達できるはずです。

 

 

 

稼ぐ力を身につける

 

先にも述べたように、プログラミングを学習する大きな目的が稼ぐことにあります。

フリーランスで活躍することはもちろん、求職に困ることも間違いなく少なくなります。

それだけ、需要のあるスキルなのです。

 

また、プログラミングをおすすめする理由の一つとして、学習費用が挙げられます。

Googleで調べればいくらでも情報やサンプルが出回っており、全く費用をかけずに仕事を受注できるレベルまで押し上げることも可能です。

 

プログラミングは「難しそう」だというイメージが先行してしまい、実際に取り組んだものの諦めてしまったり、興味はあるにも手をつけない人は山のようにいます。

 

しかし、それは「実は競合が少ない」ということの証明になります。競合は多いと囁かれていますが、実際に手に職というレベルまで達している人は少ないのです。

それらを踏まえ、プログラミングは「稼げる」というよりも「稼ぎやすい」スキルの一つと言えます。

 

 

 

必要なものはパソコンだけ

 

さて、具体的な始め方を説明していきましょう。

とはいっても、準備するものはパソコン1台、ただそれだけです。

もう少し丁寧に表現すると「インターネットに繋がったパソコン」が必要です。

 

前項でプログラミングは稼ぎやすいと説明した理由の一つがこれです。

パソコンさえあれば、プログラミングはできます。だから基本的にどこへいても仕事はできるし、時間に左右されることも少ないのです。

 

 

 

スクールなんて必要ない

 

パソコンスクールや、今ではプログラミングスクールなども存在します。しかしそれは必要ありません。

これは、意味が無いというわけではなく、行かなくてもできるようになるということです。通信スクールなど、わかりやすく解説してくれているものも多くなってきてはいますが、無料講座があればそれだけで十分と言えるでしょう。

よっぽどモチベーションを保てない人には、スクールを後押ししてくれる要因と利用しても良いかも知れません。

 

初心者に関しては、スクールだけでなく書籍も不要です。

プログラミングを始めるために、初心者用の書籍を買って挑む人がいますが、これは大きな間違いです。

 

書籍には確かに初歩から丁寧に記述されています。

しかし、それは実践的な内容からかけ離れた場所がスタートラインとなっており、具体的にどういったものなのか、どういったものが作れるのかがわかりにくい手順です。

 

書籍が力を発揮してくれるのは、ある程度理解ができるようになってからです。レベルで言えば、初心者から中級者の間ぐらいで、やっと意味のあるものとなります。

ある程度、プログラミングがどういったものか、実際に触り理解をしていなければ、書籍を読むことは大変大きなハードルとなってしまい、挫折の要因となりかねません。

これは、多くのプログラミング学習者がハマってしまっている落とし穴でもあります。

 

 

 

選ぶポイントはノートそうでないか

 

 

プログラミングを始めようと考えている人の多くが、「パソコンはどれを買えばいい?」という質問をしてきます。私の少ない友人も、この質問でした。

 

正直、パソコンは何でもいいです。

どんなパソコンでも、プログラミングをする上で大きな支障は有りません。

 

とは言っても、超低スペックの化石のようなパソコンも存在しています。それは流石に支障が出てしまいます。

なのでAppleのサイトでMacBookProを参考にするのが良いでしょう。

 

MacBookProのスペックは大きく分けて3段階程度あります。その一番下のスペックの値を参考に購入すると、良い基準になります。

またMacは比較的高額なので、その金額より安い、似たスペックのパソコンを探すと良いぐらいものが選べます。

 

もちろん、MacBookを選ぶというのも良いでしょう。この当たりは、あなたの費用面と相談です。

今のあなたにとって、WindowsとMacに差は有りません。なので、あなたが買いたいものを選ぶのが最も良い選択です。

 

本項最初で述べたとおり、パソコンを選ぶ際、大きな分かれ目はノートであるか、そうでないかだけです。

ノートパソコンの利点は、なんと言っても持ち運びできることです。

自宅では煮詰まってしまったり、誘惑に負けてしまって作業が進まないという人は、ノートパソコンを選択すると良いでしょう。

自室で引きこもってする人は、デスクトップや一体型などの据え置きタイプを選ぶと良いでしょう。こちらの方が、同価格でハイスペックの物が購入できたり、モニターが壊れてもモニターだけを買い換えるだけで済むというメリットがあります。

 

 

 

学ぶべき言語はPHP?

 

パソコン選びの次に多い質問が「どの言語がいい?」です。

これは、何を作りたいかによるため、すべての人に正確に回答するのは難しいです。

ただ、よくわからない状態で始めるのであれば、私はPHPを推します

 

 

 

Webエンジニアは学びやすく稼ぎやすい

 

PHPをおすすめする理由の一つは、Webエンジニアというジャンルが稼ぎやすいからです。

仕事は多く出回っており、需要も高いため、ネット上で出回っている情報量も多いです。また、言語のアップデートも比較的頻繁に実施されています。

 

PHPを学ぶ上で、ついてまわるのがHTMLCSSです。他にもJavaScriptがお友達になります。

4言語あると考えれば、とてもハードルは高く感じるでしょうが心配いりません。HTMLCSSについては、積極的に学ぼうという姿勢を捨て、PHPを重点的に取り組むという姿勢があれば実は簡単に解決するのです。

 

Webエンジニアを目指そうとする人の多くが、手順に沿ってHTMLCSSJavaScriptまたはPHPという流れで学んでいきます。

しかし、HTMLCSSも完璧にマスターしようとすると膨大な量で、それだけで挫折してしまいがちです。

また、HTMLからCSSにステップアップした際に挫折しやすく、さらにCSSからその次の言語にステップアップした際にまた挫折しやすいポイントが来てしまいます。

それだけ、順序よくするということには危険が存在するのです。

 

PHPを出力する際に、何かしらHTMLは必要になります。なので、PHPを学ぶ中で使うHTMLに触れ、身につけて行く方法がベストです。

そうは言っても、最低限の知識はいるので、PHPを学ぶためにHTMLとCSSを学ぶ時間を1日ずつ確保するぐらいが丁度良いでしょう。

 

HTML1日学習)

CSS1日学習)

PHPへの取り組み開始

 

 

 

あなたを助けてくれるのはWordPress

 

PHPをおすすめする理由の一つとして、WordPressがあります。

WordPressとは、オープンソースのブログソフトウェアです。これだとわかりにくいかも知れませんので、簡単に表現すると「HP作成を手助けしてくれるキット」のようなものです。

 

WordPressはブログを作る際に候補に上がります。ブログによるアフィリエイト収益に取り組む人が多い今、年々需要は高まってきています。

また自由度が高く、ブログ以外にも大型のHPサイトを作ることも可能です。細かな初期段階の設定をWordPressが賄ってくれるため、外側だけをカスタムするだけでより高度なサイトを短時間で作成することができます。

 

PHPを覚えていく上で、HTMLCSSJavaScriptに何かしら関わりが出てきます。そうやって多言語にふれることで、言語の役割が見えてきます。WordPressを触るようになれば、よりこの4言語とは触れ合う機会は多くなります。

ときには、どっちでもできるということがわかってきます。そうなれば、自分の得意不得意もわかり、より理解度は深まっていくでしょう。

 

 

潰しながら覚える

 

学習する基本は真似をすることからです。しかし、本質的な理解を深めるためには、まず潰すということが大切です。

 

 

 

0から作るより100を潰す

 

PHPを使ったサンプルは山程あります。フリーでブログに掲載されているものや、配布されているものを実際に動かしてみてください。

 

PHPを動かすにはWindowsの場合XAMPPMacの場合はMAMPを使用すると良いでしょう。準備方法については、割愛します。どちらも準備方法については多く出回っているので、調べながら実践してみてください。(どちらも無料で利用できます)

  

PHPのサンプルが動いたら、次は実際にコードを削除していきましょう

1行削除して確認

1行削除して確認

 

その繰り返しをしていくと、どの部分がなくなると動作しなくなるのかが見えてきます。

どの部分が何に影響しているのかがわかれば、その部分を変えるためにどうすればよいのかが徐々にわかってきます。

位置を移動させてみたり、同じ表記を別の場所に出力させてみたり。

サンプルが完全にもとに戻らなくなってしまった場合を考慮して、ダウンロードしてきたサンプルはコピーして使うようにしましょう。そうすれば、リセットが容易です。

 

潰すという方法でプログラムに触れるというのは、裏技的な手法とも言えます。

余談ですが、医療の現場でドイツ語が用いられているのは、ドイツの医療が最先端という時代が続いていたからです。最先端でいられた経緯は、ユダヤ人に対する人体実験が国として認められていたからです。

 

実際に生きているプログラムに触れるということは、それだけ貴重且つ実践的な体験だということです。

 

 

 

ジャンクで作るホームページ

 

色んなサンプルを潰したら、次はそれをつなぎ合わせていきます。

例えばサンプルのHPにお問い合わせフォームを付けたい場合、サンプルで拾ってきたお問い合わせフォームを、そのページにそのまま貼り付けてしまえば良いのです。

しかし、それだけでは不要な部分が重複してしまったり、アクション先のURLが異なったりしているでしょう。

そこから、不要な部分を取り除いたり、必要な部分だけを取り出したりすることになります。

 

こうやって、ジャンクページをどんどん作ってみましょう。色んな機能を備えたジャンクページを作ることで、それぞれの言語への実践的知識はどんどん深まっていきます。またページがどのように生成されているのかも動きとして見えてくるでしょう。

 

また、作ることの最大のメリットは、それが自身の成果となることです。

見た目がそれっぽくなれば、それはポートフォリオに乗せても十分アピールのできる成果となります。

それだけ、作るということはスキルアップと実益を兼ね備えているのです。

 

 

 

短期目標はメール送信

 

 

ジャンクパーツで遊び続けるのも悪いことでは有りません。しかし、実際に理解を深めていかなければスキルは身につきづらいものです。

そこで、実際に動きのあるものを1から作ってみるのが良いでしょう。

 

 

 

お問い合わせフォームなんて簡単

 

そこで、お問い合わせフォームを作って見るのが良いでしょう。

お問い合わせフォームを作る上で、実際にページ移管や変数、配列の知識と使い方が身につきます。メールを送信する際は関数を使用します。

また、バリデーションをする際にはJavaScriptを使用するケースもあります。フォームを構成するにはHTMLは必須です。

 

このように、小規模でも多くの要素を含んでいるものを作ることで、理解は一気に深まります。

また、PHPのメール送信は方法はもちろん、ライブラリも多く出回っているので、躓いた際は調べながら進め、解決がしやすいと言えます。

 

 

 

需要と汎用性が高さが強み

 

お問い合わせフォームづくりの良い点として、学び以上にも需要の高さが挙げられます。HP制作の仕事を受注する際に、お問い合わせフォームも作れるという明記がしてあるだけで、格段にハードルは下がります。

 

例えば、自分の店のHPを持っていないような飲食店にHPの営業をかける際に、「予約受付フォームもつけれますよ」と提案するだけで、意外と食いついてくれるのです。

※これは実際に私が経験したことです

 

お問い合わせフォームは、作り方によっては予約フォームにもなり、更にアンケートフォームにも様変わりします。

汎用性が高く、それであって需要の高い機能だと言えるため、これを取り組むというだけで大きなメリットがあります。

 

 

 

超実践型上達法

 

さて、ここからは仕事を獲得するための取り組みになります。

実践的なスキルを身につけることで、プログラミングの腕はどんどん向上します。

 

 

 

サーバーを契約してみる

 

どれだけプログラミングがかけるようになっても、実際にそれをサーバーへ設置できなければ意味が有りません。

この部分をおろそかにしてしまう人は意外と多いのです。

 

ローカルでの開発環境が整えられたら、次はネットワーク環境へ置いてみて、動くかどうかを試してみましょう。

そのために、レンタルサーバーを契約する必要があります。

 

練習用であれば、格安ドメインをとり、比較的安いサーバーを契約しましょう。しかし、格安サーバーの中にはPHPが使えないものや、データベースが使えないものがありますので注意してください

 

迷った方は、さくらサーバーやXサーバーが良いでしょう。

格安ドメインであれば、年間100円以下のものもあるので、サーバーと合わせても年間数千円で済むことがあります。

 

サーバーを契約すれば、どんどんファイルをアップして、実際にネットワーク上で動いているかを見てみましょう。

触っていく上で、サーバーに関する知識も徐々に増えていきます。そうすれば、より実践スキルに近づいていきます。

 

 

 

働くことが一番の学び

 

実際に働いてみるのが、何よりも効果があります。実務の経験を培っていくのです。

現在、副業としてプログラミングを続けている人は、クラウドワークスやランサーズなどを利用してみると良いでしょう。

格安案件は多いですが、学びながらお金がもらえると考えれば、これほど効率の良いものは有りません。

実際に受注するためには、ポートフォリオ等が必要ですので、練習で作ったものなどをサイトにあげておいて、自分がどの程度できるかを相手に伝えられるようにしておきましょう。

 

また、現在求職中の人やフリーランスとして活躍しようか悩んでいる人は、一度制作会社へ勤めてみるのも良いでしょう。

実際の現場でどういったスキルが必要とされているのか、どういった技術が使われているのかを知るためには、これ以上に身になるものは有りません。

 

 

 

就職という修行にはメリットが多い

 

フリーランスで活躍したいと考えている人にとって就職するというのは、遠回りだと思う方もいるでしょう。ですが実はそうでも有りません。

制作会社に務めて、そこから独立した人の多くは、継続して仕事をもらっている方が多いです。また、現場で得た知識は個人で活動していては得にくいものも多くあります。

 

Web業界の流行りはもちろん、実際にお客さんとのやり取りを身を以て体験することは大切なことです。

業務管理に使用しているソフトや方法など、プログラミングに必要なこと以外でも学べる部分は多いです。

 

金銭的に余裕は無いが、フリーランスとしてやっていきたいと考えている人は、1度その業界に就職をしてみるということも視野に入れてみてください。

きっと、道は開けてくるはずです。

  

 

まとめ

 

以上、未経験の方へ向けたプログラミングの始め方、学習方法を解説していきました。

すべて読んでもイメージが掴めなかった方は、まずは初めてみると良いでしょう。触れることでわかることは多いです。

 

独立をしようと考えている人は、是非プログラミングへ挑戦してみてください。

きっと、そんなアクティブなあなたを後押ししてくれるでしょう。

 

最後にPHPのを最速で実践レベルまで使えるようになるための記事をまとめているので、是非取り組んでみようという姿勢が出来た人は参考にしてみてください。

【変数とは】初心者が最短でPHPを使えるようになるための実践的な学び方 【変数とは】初心者が最短でPHPを使えるようになるための実践的な学び方

  ※PHP初心者へ向けた内容となりますので、ある程度HTMLの知識がある方を対象とした内容になります。予めご了承ください。    Webプログラミングを学ぶ方はHTML、そしてCSSを学び、そしてJavascriptやPHPという順に学んでいくひとが多いでしょう。 私も実際に、似たような手順で学んでいきました。   ...

【配列とは】初心者が最短でPHPを使えるようになるための実践的な学び方 【配列とは】初心者が最短でPHPを使えるようになるための実践的な学び方

  初心者の方、今からプログラミングを始める方、HTMLとCSSの領域から抜け出せない人たちを対象にした、PHPをできるだけ使えるようになるための方法を紹介するコーナー。 栄えある第二回は【配列編】です。   第一回を飛ばしてこのページへに来てしまい「変数って何?」というレベルの人は、第一回の【変数編...

注目の記事

【脱初心者向けプログラミング学習】処理を追え!「今、変数には何が入ってる?」
プログラミング
HTML,PHP,プログラミング学習
【脱初心者向けプログラミング学習】処理を追え!「今、変数には何が入ってる?」

  初心者から中々抜け出せない 1から処理をかけない   そんな悩みを抱えたプログラミング学習者に向けて、「脱初心者のためのプログラミング学習」についてPHPを例にまとめました。 やり方自体は同じですので、他の言語をメインとしている人は自分の環境に置き換えながら学習して、初心者から抜け出しましょ...

個人の時代で成功するための起業への3ステップ 〜新時代を生き抜くために〜
フリーランス
ビジネス,独立,起業
個人の時代で成功するための起業への3ステップ 〜新時代を生き抜くために〜

  起業ってどのタイミングですればいいかわからない・・・   令和時代での起業の考え方は、昭和や平成とは大きく変わっています。個人の時代と呼ばれる現代では、今までのようにリスクを背負って起業することは失敗の確率はより高く、オススメできません。   今回は、起業を志している人たちへ向けて私...

「諦めが上手い人」ほど成功する!正しい目標の立て方とは
雑記
PHP
「諦めが上手い人」ほど成功する!正しい目標の立て方とは

  「諦めたらそこで試合終了ですよ」   漫画の中でも有名なセリフですが、これからあなたは何を読み取りますか? 何か目標を達成するために努力が必要とされますが、その方法がわからずに試行錯誤したり、そもそも挑戦すらできずに終えてしまう人は多いのです。 努力をした人は、ほとんどがそれは結果的...

get_template_partで引数を渡す方法(WordPress5.5以降)
プログラミング
PHP,WordPress
get_template_partで引数を渡す方法(WordPress5.5以降)

WordPress5.5へのバージョンアップで、大きく機能が追加されました。中には変更に戸惑っている人もいるかも知れませんが、個人的にはエンジニアの要望を大きく取り入れて自由度がアップした印象があります。 今回はその中でも、多くの方が待ち望んでいた「get_template_part」の変更点についてご紹介します。 ge...

わざマシン編 習得 PHPポケモン105
プログラミング
PHP,PHPポケモン,ポケモン
わざマシン編 習得 PHPポケモン105

わざマシンによる技習得 前回、わざマシンのアイテムクラスを作成したので、今回は実際に使用するまでの処理を作成していきます。 まずは、アイテムクラスに使用時の処理(effectsメソッド)を増設しましょう。   わざマシン01(/Classes/Item/ItemTM01.php) <?php require_once(root_path('Classes').'...

本当に価値のある宣伝方法 〜多くの人が実践している【間違った努力】とは〜
マーケティング
Facebook,note,Twitter,YouTube,集客
本当に価値のある宣伝方法 〜多くの人が実践している【間違った努力】とは〜

  YouTubeやTwitter、Facebookやnoteなど、いろんなサービスを使った集客方法があります。集客という視点ではなく、それ自体に人を集めたいという人も多いでしょう。   フォロワーやチャンネル登録者数を増やすために、多くの人が様々な取り組みをしていますが、その中でもひときわ意味のないことをただ繰り返して...

システムエンジニアとプログラマーの違いって?仕事内容や必要スキルについてわかりやすく解説します【SE・PG】
プログラミング
システムエンジニアとプログラマーの違いって?仕事内容や必要スキルについてわかりやすく解説します【SE・PG】

  システムエンジニアってどんな仕事? プログラマーとどう違うの?   プログラミング教育が必修化になり、SEやPGの職業が注目された今、この違いについてわからない、教えて欲しいという質問が後を絶ちません。 今回はそういった人たちのために、システムエンジニア(SE)とプログラマー(PG)という職業に...

フレンドリィショップ編 アイテムの販売 PHPポケモン 76
プログラミング
PHP,PHPポケモン,ポケモン
フレンドリィショップ編 アイテムの販売 PHPポケモン 76

リュックの作成 前回はフレンドリィショップへ商品を並べ、計算機を作成するところまで作成しました。ですが、商品が購入できたとしても、それを保管しておくためのスペースがなければ意味がありません。 なので、プレイヤー情報に対してアイテムを格納できるように機能拡張をしましょう。   プレイヤークラス(/C...

カテゴリ

SEO対策 イベント デザイン ネットワーク ビジネスモデル フリーランス プログラミング マーケティング ライティング 動画編集 雑記

タグ

5G Adobe AfterEffects AI ajax amazon Animate api artisan atom Automator AWS Bluetooth CSS CVR description EC-CUBE4 ECショップ ESLint Facebook feedly foreach function Google Google AdSense Honeycode htaccess HTML IEEE 802.11ax Illustrator Instagram IoT JavaScript jQuery jQuery UI keyword LAN Laravel Linux MacBook MAMP meta MLM MySQL NoCode note OS OSI参照モデル Paypal Photoshop PHP phpMyAdmin PHPポケモン PremierePro rss SEO SEO対策 Sequel Pro Skype SNS SSH Symfony TCP/IP title Toastr Trait Twig Twitter UCC V系 WAN WebSub Wi-Fi wiki Windows WordPress XAMPP xml Xserver YouTube YouTuber Zoom アーティスト アウトプット アクセス層 アニメーション アフィリエイト イーブイ インターネット インプット エンジニア オブジェクト指向 お金配り クリック単価 クリック数 コミュニケーション能力 コロナ コンサルティング サムネイル システムエンジニア スタートアップ スタイルシート スパム データベース ディープフェイク デザイナー デザイン テレワーク ナンパ ニュース ネットワークモデル ノマドワーク バナー ピカチュウ ビジネス フィード フリーランス ブロガー ブログ プログラマー プログラミング プログラミング学習 プログラミング教育 プロトコル ホームページ制作 ポケモン マークアップ マーケティング メール リモートワーク レンダリング 三井住友 三宮 仕事依頼 児童デイ 児童デイサービス 児童発達支援 公開鍵 初心者 助成金 勉強法 営業 広告 広告収入 必勝マニュアル 放課後等デイサービス 朝活 楽天 深層学習 無線LAN 独立 神戸 福祉 秘密鍵 翻訳 自己啓発 英語 見積書 計算機 読書 起業 迷惑メール 配列 銀の弾丸 集客 雑学力