プログラミング初心者におすすめの勉強法教えます

プログラミング初心者におすすめの勉強法教えます




プログラミング初心者におすすめの勉強法教えます

どうも!きゅんです。

swiftの勉強をはじめて2ヶ月くらいでしょうか。もうこんなアプリ作ったの!?
というわけではないですが、swiftの構造をだいぶ理解できてきました。

javascriptを多少なり触っていたこともあったので、理解はできてきたと思いますがまだXcodeの操作感に慣れずですねー

今回は、これからプログラミング勉強しようと思っている方に少しでも参考になるような内容になるかと思います。
僕も試した方法なのでよかったら読んでいただけると幸いです!

 

そもそもプログラミングは稼げます

見出しで結論が出てしまっていますが、稼げます。
今は個人でもクラウドソーシングで仕事を取ってお金を稼ぐことができる時代です。言ってしまえば、自分の力次第でいくらでも稼ぐことができる時代になってきたと思います。

プログラミング以外にもイラストやライティングだったり、ハンドメイドなど個人のサービスを世の中に提供できる環境が整ってきている状態です。

個人的にはプログラミングはオススメです。

知識と技術を身につけてしまえば、どこにいてもPC一台で仕事が可能なのとこれからの時代に絶対に需要はあるかと思います。書いてて楽しかったりもしますよー

 

やりたいことを決める

まずは「どの言語がいいんだろう?」という考えは捨ててください。
自分のやりたいことをイメージするといいかもしれません。

下記に簡単だけどまとめてみました。

 

Webサイト

サイトの表示や動的なwebサイトに必要

必要言語
html、css、javascript、php、Rubyなど

デスクトップアプリ

ネイティブアプリと呼ばれているもの。パソコンの中に入っているソフトと言った方がわかりやすいでしょうか?

案件単価は比較的高め

必要言語
C言語,JAVAなど

モバイルアプリ

iPhoneアプリやandroidのアプリ作成言語
iPhoneアプリはswiftという言語で作られています。
必要言語
swift Objective-C

人工知能

機械学習などに使われています。家電とかに多いですね

必要言語
Python

 

本当に興味持ったことや好きなことから入ることをオススメします。
稼げるから!という理由ではじめるのも問題ありませんが、興味がないことを勉強するって苦痛だったりするんですよ・・

好きなことで仕事した方が絶対に楽しいと思いますので自分の好きなジャンルを絞って言語をさらに深掘りして調べていくといいです。

きゅん
僕のおすすめは身近なサイト制作をおすすめします。
覚えることは多いと思いますが、難易度としても難しくはないと思います。

何より、コーディング(ソースを書いていく作業)をしていきながら目に見えて制作物が確認できるのでモチベーションは上がりやすいかと思います。簡単な案件でもクラウドソーシングで結構あがっていたりします。

 

稼ぐ金額を決める

ここで自分やりたい言語を決めたと思います。この記事での例はサイト制作としましょう。
サイト制作であれば本当に最初であれば2万円でもいいかもしれません。

低めに設定した理由は2つです。

・割と簡単に達成できる数字
・早めに報酬を得てモチベーションをあげる

最初から高すぎると挫折します。10万円に設定したけど、自分には無理だったのか・・・なんて思ったりしてしまうからです。
勿体無いーーと思います。プログラミング始める前は1円も稼げるスキルはなかったのです。

5000円でもあなたにとって達成感と知識が財産として残ります

 

サービスを作りたいでもよき

お金を稼ぐのも大事だけど、自分でサービスを作りたい!なんて人もいるかもしれません。
自分で立ち上げたいサービスを考えるのもいいと思います。モチベUPに繋がるし、受託案件より稼げる!なんてこともあると思います

 

パソコンを買おう

まずはパソコンを書いましょう。なるべくスペックは高いパソコンをオススメします。
Photoshop(デザインツール)開いたけど、エディタ(プログラミングするアプリ)も同時に開いていたらパソコンが固まった・・・
なんてなってしまうとすごく効率が悪いです。

結構費用してしまうかもしれませんが、ローンなんかでも買うことができます。
apple公式のローンなら金利0%なのでお得です!

分割ローン

それと整備品なんかも狙い目です。お得な価格で中古ではなく新品と同じ状態で購入ができます。

整備品

きゅん
要は自己投資だと思います。
僕もサラリーマン時代に先輩に言われたことがあって、それでお金を稼ぐなら自己投資のつもりで買った方がいいよと言われたことがあります。

その時Macbook購入に躊躇していましたが、思い切って購入しました。ちなみにクラウドソーシングだけですぐに購入分の元は取れました。

 

アプリ作りたいならMacにしましょう

ここで注意なのは、iPhoneアプリを作りたい!!となったらMacを購入してください。
windowsだとアプリ作成は難しいです・・。Xcodeというエディタを使ってプログラミングをしていきますがwindowsではXcodeがインストールする
こちができないからです。

覚悟を決めてパソコンとやる気の用意ができたらいよいよ勉強法に入ろうと思います。

 

プログラミング初心者の勉強方法は

プログラム初心者の勉強法

ここからプログラミング勉強法を書いていきます。大きく分けて4つのパターンになってくるのかなと思います。
人それぞれ自分に合った勉強方法があると思いますが、メリットデメリットの解説付きで自分にあった勉強方法をみつけていって欲しいです!

 

参考書を読むパターン

勉強したい技術書をみつけて本を読みながら勉強するスタイルです。

メリット
・自分のペースで進められる
・自分の興味がある部分から始められる
デメリット
・モチベーションの維持
・不明点な部分が出たら確認ができない
勉強法
1回読んだだけで100%理解できる人はほとんどいないです。
まず目次にめを通して自分のやりたいことが書いてあるページを読む(この段階で理解しようとしなくていいです)
1回目はパラパラと読んでこんなこと書いてあるんだーくらいでいいです。

2回目は読みながらサンプルソースを書いていきましょう。
この段階でも完全に理解しようとしなくていいです。「こう書いたらこう動くのかー」くらいでいいです。
理解しようとして読み進めると挫折します。わからないなら付箋を貼っておいて読み進めましょう。

3回目からは付箋をはったわからない部分中心で読んでいくことをオススメします。何故不明なのか疑問文形式で付箋に貼っておいてください。
疑問文で書かれたもの調べようとする心理的な動きを利用します。

こんな感じで進めていけばokだと思います。
1冊目は超初心者用の参考書を選び、2冊目でサンプルコード多めのものを選ぶといいです。3冊目は応用書で理解が早まると思います。

1冊だけで理解できる!といったことはまず無理だと思ってください。1冊目はあくまで入門書なので

 

動画学習

最近増えている動画学習です。
昔からあるのがドットインストールが有名だと思います。最近だとUdemyという動画サービスもあると思いますが、こちらのメリットデメリットと
勉強法をお教えします。

メリット
・好きな場所で勉強できる
・動画なので、ソースの動きや記述方が目に見えてわかる
・きになる部分をもう一度見ることができる
デメリット
・講師によって質に振り幅がある

・古いソースのままの動画もある

勉強法
これも一回全ての講座をざっと見ましょう。一回で理解しようとしないでください。動画なので、何回でも再生ができるので大丈夫です。

2回目からは実際に講師と同じようにプログラミングをしていきましょう。わからなくなったら巻き戻して、同じようにソースを書いていきます。
「なんでこうなるの?」と考えていたら、講師は止まってはくれないので、一旦ソースを書いてちゃんと動くか確認しましょう。
動きを確認できたら、何故そう書いたのか?を理解しながら動画を見るようにしましょう。
最後にサンプル課題のプログラミングに挑戦して覚えていきましょう。

 

ネットサービス

これも最近出た(以前からありますが・・)Progateというサービスを利用するのもオススメです。
ゲーム感覚なので、プログラミング苦手・・って人も敷居が低くなっています。

メリット
・ゲーム感覚で覚えやすい
・スライドを見ながら学習ができる
デメリット
デメリット
・サブスクリプションサービスである
・正攻法でない書き方でも正解になってしまう
勉強法
これも今までの勉強法と同じです。ひたすら問題を進めていってください。
最初の段階でわかろうとはしないで、自分のステータスが上がっていく喜びを感じてとなお良しです。
人は過程に変化(物が減ったり、チェックマークをつけられたり)すると心理的にモチベーションがあがります。
難しい問題もありますが、自分で調べながら進めると結構力尽きます!サイヤ人と同じですね!

 

それでも無理ならスクールに通う

上の方法でも難しいならプログラミングスクールに通っちゃいましょう。
オンラインスクールですが、対面で講義を受けるところだったり、質問ができるスクールもあります。費用は高いですが、これも自己投資と考えたら
いいのかなと思います。

メリット
・メンターがいてわからない部分が聞ける
・スクールに通うことでモチベーションがあがる
・同じ志を持った仲間が作れる
デメリット
・初期費用が結構高い
・ほとんどはオンラインなので個人のやる気次第

 

例外でOJT

これは超レアケースですが、未経験でそのプログラミング技術を使っている企業に働いてしまうのもいいかもしれません。
僕の友人が未経験アルバイトで入社してデザイナーとして今では正社員として活躍しているような人もいます。

 

僕の勉強法

僕の勉強法

僕がおこなった勉強法は以下になります。書籍やらwebサービスやら片っ端から試していきましたw

 

読書編

・参考書を初心者用から読み進める
・慣れてきたら中級者用
・きになる部分を目次から見て洗い出す
・理解度を100%にしなきゃ!と思わないで読む

 

動画編

・一通り動画を見る
・講師のモノマネをしながらソースを一緒に書いていく
・わからなかったら文句言いながら書いてく
・書く、書く、書く
・サンプルを書きまくったらソースのお作法が学べた

 

webサービス

・レベルあげるのに必死
・とりあえず書いていく
・隙間時間にできるのでゲーム感覚で進める

以上になります。スクールは通っていないので、ここでは書いていませんー!
動画編の部分今見ると恥ずかしいですね・・w

自分にあった方法は、参考書を見て、サンプルアプリをひたすら作っていくことでした。
手を動かしながら自分で作ったアプリが動いて行くのを実感して行くのがやりがいが感じれるて面白かったです。

 

間違い探しで理解する

サンプルと自分が書いたソースを見比べる。何故そう書いたのかを考えてみる(これは1回目の時はやらないでください)
思い通りに動かない時ってイライラしちゃうんですけど、動かなくてあたりまえ。初心者だもん。と思うことが大事です。

きゅん
焦らないでゆっくりプログラムしていくといいです。3回目くらいになったらこのパターンまたきたな?とプログラムもパターンがあるので考えながら組んでくといいです。

 

サンプル素材のソースを読む

サンプルのソースとか結構転がっていたりするんですよね。
そうしたものを自分なりにカスタマイズしていくと、頭に入りやすいです。

例としてあげるのであればwordpressなんかこの方法で
学習しやすいかなと思います。

無料のテーマが転がっていたりするので、それをカスタマイズします。どこを触ればかわるのか?といったことの気づきにもなりますね。youtubeにも外国のですがレクチャー動画もあったりします。

英語わからん・・と思うかもしれませんが、プログラムは基本英語なのとルールは同じなので、これが以外にも頭に入ってくるんです。

自分にあった方法とありますが、やっぱり一番大事なのはモチベーションとやる気だと思います。

 

クラウドソーシングで稼ぐ

ここからはおまけです。
学習方法とは別にクラウドソーシングで稼ぐ方法を教えちゃいます。結構ヒット率は個人的には高いので参考にはなるかと思います。
プログラミングの技術をみつけたら、仕事を取ることができれば稼ぐことができます。

 

10万以内は簡単に稼げます

フロント案件だったら10万円は稼ぐことが可能になるかと思います。
lancersやクラウドワークスといったクラウドソーシングを使えば案件は結構あります。

1サイト作成依頼であれば10万円~となっていますし、ぺら1のhtmlのコーディングであれば2万円から3万円くらいは行けるかなと思います。

 

クラウドソーシングの必勝法

まずはプロフィールをしっかりと作り込みましょう。自分が仕事を依頼する時、よくわからない謎の人に依頼するって怖いですよね?
なのでしっかりプロフィールを作成して自分をアピールすることをオススメします。

 

プロフィール

ラベル名
・名前
・顔写真
・経歴(詳しく)
・実績の公開(なければ自分の作品で大丈夫です)

フルネームであげることに抵抗がある方もいるかもしれませんが、ランザーズでは下記の回答が発表されました。

ランザーズでは実名公開で検索順位をあげる施策が建てられたようです。

プロフィールのユーザー名を氏名で表示できる設定を追加しました

ニックネームでもいいですが、顔写真も少しわかりやすいものにするといいかもしれません。
あとは、経歴は詳細に書きましょう。ここ結構見ている人がいますよ!個人的にですが、実績も中途半端なものであれば公開する必要はないと思っています。

 

提案

プロフィールが記入できたら提案をしていきます。
提案は最初の頃はたくさん出していっても問題ありません。定型文で登録しておくことをオススメします。

一番大事なのは、お客さんの立場になって提案ができることと、見積もりを細かく出してあげることが望ましいかと思います。

 

フリーランスか正社員か

これですね、よく聞かれます。

「儲かってる?」
「仕事はあるの?」
「どっちのがいい?」

これはあくまで人生の目的次第かなと

お金を稼ぎたい人だったり、やりたいことをしたい人だったり自分の時間を優先する人だったりいろいろいると思います。
やりたいことをするのが生きがいでフリーになった人に「儲かってるの?」な質問は愚問だと思う。
それは、その人にとってお金に執着がなくやりたいことだけを追求する人生であればお金については正直どうでもいいんですよね。

なので、その人のやりたいこと、人生の目的や生きがい次第だと思いますねー。

でもエンジニアとしての答えは僕としては出せるかなと思うので下にまとめてみました。

 

正社員の場合

メリット
・安定した収入が入る
・仕事がある
・同僚や上司といった仕事の仲間がいる
・勉強会などで新しいことを吸収できる
・仕事でわからないところを聞ける
・ボーナスがある
デメリット
・時間を拘束される
・人間関係で疲れる
・社内イベントに参加しなくてはならない
・やりたい仕事ができないときがある
・満 員 電 車

安定した収入と仲間がの存在が大きいと思いますが、裏を返せば自分と合わない人とも仕事をする可能性もあります。
仕事の一番つらいと感じるのって人間関係だったりしますねー悩ましいところです・・。

あと個人的に満員電車はすごくストレスを感じて嫌になったことがありました・・・

フリーランスの場合

メリット
・時間の拘束がない
・どこでも仕事ができる
・自分の能力次第で収入に直結
・人間関係を自分で作れる
・仕事の時間を自分で決められる
・いい意味で自由
デメリット
・孤独を感じやすい
・不明点をその場で聞けない
・収入への不安感
・スケジュール組めないと死ぬ
・悪い意味で自由
・税金や社会の知識が必要

 

新しい技術を吸収していくこと

プログラミング覚えた!もう大丈夫!なんて思っていると痛い目を見てしまいます。
この業界の流行り廃りは凄まじく早いです。去年は流行ったけど今年はもうこの技術じゃないよ。なんてこともあります。なのでしっかりアンテナを張って勉強し続けることをオススメします。

僕が今学習しているswiftですがバージョンが上がるごとにコードの書き方も変わっていくので、古いソースのまま書いていったらエラーになる・・なんてこともあります。

こちらでもswiftだけになっちゃいますが、記事を書いています。

【初心者用】swiftのおすすめ参考書をレビューする

 

オススメのサイト

ここはweb限定に絞らせてもらいます。(webが一番流行の動きが早いんじゃないのかな?)

コリス
https://coliss.com/
デザインやコーディングの情報発信をしています。

webクリエイターボックス
https://www.webcreatorbox.com/
業界で有名なmanaさんが運営しているサイトですね。技術的なことからデザイン書の書評も書いたりしています。

 

情報取集術

これはもうググれ!としかいいようがないのですが、勉強会だったり交流会とか行くと情報や知識を得ることができます。
自分一人だと考えが凝り固まってしまうのでそういったオープンな部分に参加して積極的に知識を入れるのはいいかもしれません。

 

個人的に思うコト