プログラミングスクール選びに失敗しないコツをまとめていきます。「フリーランスの独学は無理じゃないのか?どのような勉強法がいいのかんついてもまとめていきます。
多少、有料本や動画教材などを購入した方がよい場合もあるので、そのあたりを迷っている人にもアドバイスしていきます。
目次
- 1 プログラミングスクールの失敗談(SNS編)
- 2 C言語、C#、C++、アプリ開発のプログラミングを独学で学ぶためのロードマップ・手順(参考書、)
- 3 プログラミングスクールの必要性(独学か)
- 4 プログラミング独学の最短コースは?
- 5 プログラミング独学、海外のサイトを使う
- 6 プログラミング独学、日本のサイトを使う
- 7 プログラミング独学のメリットとデメリット
- 8 プログラミング独学するなら最適なパソコンはwindowsそれともmac?
- 9 プログラミング独学の開発環境・ソフトウェア(ツール)・テキストエディタ
- 10 プログラミング独学、学習のコツは時短して効率化すべき
- 11 プログラミング独学にかかる費用
- 12 プログラミング独学のFAQ
- 12.1 プログラミング独学のすごいのか?
- 12.2 swiftのプログラミング独学はあまり需要がない?
- 12.3 プログラミング独学スレは盛り上がっている?
- 12.4 2ch(5ch)や知恵袋のまとめを見る前に「Hello world」を表示
- 12.5 プログラミング独学でモチベーションが保てない人
- 12.6 プログラミング独学は本とサイトはどっち?
- 12.7 プログラミング独学に限界を感じたら…
- 12.8 プログラミング独学が楽しいと思うこそ大事?
- 12.9 プログラミング独学の課題・問題点
- 12.10 プログラミング独学は簡単なのか?
- 12.11 プログラミング独学は目標・目的
- 12.12 プログラミング独学、挫折の理由
- 12.13 プログラミング独学の勉強時間
- 12.14 プログラミング独学はどこまでレベルがあがる?
- 13 【仕事編】プログラミング独学のFAQ
- 14 【学歴編】プログラミング独学
- 15 【職業編】プログラミング独学
- 16 【レベル別】プログラミング独学
- 17 プログラミング独学の有名人・成功者
- 18 プログラミングを独学で学べば、外注化するとぼったくられることもない!
プログラミングスクールの失敗談(SNS編)
次にプログラミングスクールの選び方に失敗してしまったツイートをみていきましょう。
この方のツイートのように入門書は一冊でいいでしょう。あまり同じレベルの本も読んでも意味がありません。ただ、数冊買ってどれがわかりやすいかな、と読み比べるのはありです。立ち読みだけでその判断が正しくできるなら1冊でいいです。
C言語を否定しているわけではないのですが、、🙇♀️
— ひびのあおい🔰未経験からRailsエンジニア (@aoirubygirl) February 14, 2019
c言語から入りました。c言語がかわいそうといわれていますね。。
Web系の人がよくネタにしているみたいですけど、C#のUnityあたりから入れば問題ないでしょう。単純にC言語の方が少し難しいというだけです。
よく言われるネタとしてはWeb系からアプリ系の転職は仕事で苦戦する人が多いのですけど、アセンブラとかバリバリやっている人はWeb系もなんなくこなせますね。逆になんかつまらないんだよねという人はいますけど。
ゲーム開発ではC言語は必須です。高速化のためにC++が選択されることもありますが、みんながついてこれるようにC#を選択する現場もあります。 プランナーがスクリプト言語の代わりにC#をくむこともあるため平易な言語の方がいいのです。C#の方が速度がもっさりした動作になりやすいのがデメリットですが、そのあたりはうまくチューニングしていきます。
転職支援は大学の就活応援みたいなものであり、転職を保証してくれるわけではありません。そのため、転職保証コースの方がよいでしょう。
プログラミングスクール選びに失敗しないコツ オンラインのプログラミングスクールで、フリーランスコースがあるのは、サムライエンジニア塾と、テックエキスパート以外ではありますでしょうか? いきなりフリーランスはおすすめしません。すでに社長や独立している事業主や経営者は少し話が変わってくるかもしれませんが。 大企業なんかで一流エンジニアの仕事をみると、自分が井の中の蛙だったということがあるからです。
IT系のサービスは大手が参入してくるとあっというまにパラダイムをひっくり返されるため、サービス提供事業者は注意が必要です。
また月額の継続課金モデルは儲かると言われますが、反対勢力があらわれます。
継続課金モデルは継続的な手間暇がかかるため、プログラミングには合致したビジネスモデルですが」、
it系の人は無料で提供するのが好きな人も多いようです。
たとえば、デザイン系のソフトウェアの話をしましょう。Adobeは月額課金に移行しましたが、そのすきprocreateなどipad系の買取ソフトウェアやクリスタをwindowsで使う人がが増えました。脱adobe税を掲げ、photoshopなどを使わない人も増えました。
まあ、Adobeはそれでもうまくいっている方だと思います。圧倒的にクオリティが高いからです。
へなちょこサービスを継続課金でリリースするとひっくり返される可能性があるため注意してください。ひっくり返さないために必要なのはプログラミングのスキルになります。
初心者のうちは無料のwebサービスを作って広告収入などはありです。
C言語、C#、C++、アプリ開発のプログラミングを独学で学ぶためのロードマップ・手順(参考書、)
C言語、C#、C++のプログラミングを独学で学ぶためのロードマップは別記事にしました。
プログラミング独学は何から始めるといい?(やることの順番・学習方法・やり方・勉強法)
プログラミング学習の始め方を紹介します。適当にざっくりとしたイメージで書いてみます。
- 言語を選定する(アプリ系かWeb系か)
- 言語に合致した開発環境を構築する
- 入門教材(udemyと本とネット情報のあわせ技おすすめ)を元に学ぶ
- ポインタやクラスの理解を深める(それ専用の書籍などがでています。)
- 自分が好きなサービスをモデリングする(一部でもOK。3DCGのモデリングではなく、心理学用語のモデリング。要は真似する)
- 1週間〜数ヵ月で基礎的なものを理解した上で作りたいサービスの具体的な仕様を決める。どこかしらオリジナリティが大事。
- バージョン管理ツールを導入(このタイミングは前後して大丈夫。ハマったとき息抜きにやりましょう。)
- 地道に作っていく(少し規模が大きい場合は一部、外注化するのはあり)
- わからない問題は質問掲示板やmentaで解決する
- 排他処理、セキュリティ、高速化(もっさりとしたアプリは格好悪い。。)などを意識したコードを書いていく
- ひらすらサービス完成まで積み重ねる。
- 完成したら、ひたすらデバッグ、デバッグ、デバッグ。細かい表示まわりや分岐まわりのバグはもちろん、ハングやメモリリークなどないか?
- リリース。アプリの場合はGoogleやAppleの審査があります。
一部、同時進行などで進めた方がいい場合もあります。最近、デバッグが甘いサービスが多い気がします。。ちょっとイレギュラーな操作をやるとバグが残っていいる場合あり。。デバッグは重要です。バグがはいってままでもよしにするとスキル向上しません。クオリティは細部に宿ります。デバッグすると自分のコードの甘さが露呈するので、おすすめです。自分で作ったものを自分で重箱の隅をつつくと成長するかもしれません。。
時短、もしくは自分ではこのゲームは攻略できないと思ったら、プログラミングスクールを使うのもありです。udemyの教材はアイテムのようなものです。mentaなどは自分のレベルが低いときに一緒にまわってくれる傭兵です。課金することにより、たぶん無双できるソーシャルゲームのようなものです。だから、プログラミングスクールは使っても使わなくても攻略できます。
プログラミング独学でわからないことが聞けるサービス?
オリジナル開発の場合、教科書通り教えてくるところではなく自分が知りたいことに答えてくれる人が必要かもしれません。
mentaやテックアカデミーは課題をこたしたのちオリジナル開発をサポートしてくるようです。教材の範囲外の質問を受け付けていないプログラミングスクールは避けましょう。
どちらかとうと書籍や動画は独学でも理解できる人は少なくないかもしれません。なので、自分が作りたいもののわからないところが聞けるお師匠さんが貴重かもしれません。独立してプロでやっている人でも自分よりできるエンジニアのアドバイスは貴重なはずなので。
教科書のお勉強ぐらい自習できるよ、という人はこのようなサービスがおすすめかも。
プログラミング独学におすすめサイト(html、css、webサイト/ホームページ)
HtmlやCSSあたりならタグindexとcodepenあたりで大丈夫です。簡単ですから。
ただブラウザによって結果が変わることがあるため、面倒です。 サポート状況は確認した方がいいでしょう。また、スマホ、タブレット、pcなどいくつかのデバイスで確認することをおすすめします。時々、タブレットで確認するとひどいレイアウトが崩れてひどいデザインになっているサイトを見かけます。おそらく複数の端末で確認していないのでしょう。
リファレンスはタグindexと実装はcodepenではじめてもいいでしょう。

タグindex以外にもいろいろとありますが、昔お世話になった感謝をこめてこのサイトを紹介させてもらいます。
あと、はてブが多いサイトを参考にしましょう。検索はなるべくソースコードの文字列で含めて検索することをおすすめします。
phpのプログラミング独学
phpの公式マニュアルです。
あとはドットインストール、Codecademyなどで勉強しましょう。ただ、客寄せで無料になっているだけで有料プランはあります。
そのため、udemyなどの有料コンテンツを最初から利用する方法もあります。
WordPressがphpなので、ブロガーとしてwordpressのWebサイトをカスタマイズしたりプラグインをカスタマイズしたり開発したりする方法もあります。
プログラミングスクールの必要性(独学か)
プログラミングスクールは必要ない人
htmlやcss、wordpressでphpのカスタマイズ程度であれば、プログラミングスクールは必要ないかもしれません。なぜなら、このあたりは簡単だからです。 とくにすでにwordpressのブログサイトを運営やit関連のサービスは使い慣れている人はなんとかなるのではないでしょうか。逆にパソコンも使いこなせない人は教えてもらった方がいいかもしれません。。 htmlやcssなら、初心者はcodepenを使って組んでいっても、それなりのレベルにはなるでしょう。 wordpressのサイトも自サイトならクライアントに怒られることはないので、独学でもいいかもしれません。ただ、そこに甘えてしまうと、いつまでもプログラミングのスキルが上達しません。
ただ、エンジニアと名乗るなら、Webなら
アプリならC#やunityは使いこなせるようになりたいです。
excelのvbaなどのマクロや正規表現などは独学でやる人は多いです。書籍やudemyの教材ぐらい購入してもよいでしょう。
htmlやcssはデザイナーの仕事であり、エンジニアの仕事ではないという人もいます。
プログラミングスクールは必要かもしれない人
udemyやmentaなどで学習をすすめ、テックアカデミーの短期コースに入るといいかもしれません。 卒業後、テキストは見れるようですし、メンターの力を借りたい場合、再入会してオリジナルサービスもつくれます。
プログラミングスクールが必要な人は?
逆に完全に転職を考えている人は、プログラミングスクールはおすすめかもしれません。転職保証があるからです。中には転職が成功した場合、授業料が無料になる太っ腹なプログラミングスクールもあります。 情報系の大学の授業料と比較すると、比べ物に安いうえ、転職保証もあります。 大卒の資格がほしい人は通信系の大学でもいいかもしれません。
プログラミングスクールの費用が簡単に捻出できます。 プログラミング 失敗 プログラミング 失敗 英語
プログラミング独学 ゲーム作成やアプリ開発をしたい!
簡単なゲームなら個人でもリリースできます。 ただ、オンラインゲームやソーシャルゲームみたいなのを作りたいなら、企業に就職した方がいいかもしれません。
初期投資で何億、少なくとも数千円万投資してますからWebサイトのようなハードルではありません。 そのぐらいの資金調達が問題なくできる社長さんなら挑戦してもいいかもしれません。
ただ、ソーシャルゲームは当たりハズレが大きく、ハイリスクハイリターンのビジネスデルのため覚悟が必要な世界。 また、AppleとGoogleの手数料が3割と高いこともビジネスの難易度をあげています。アプリ系はWeb系よりさらにハードな難しいかじ取りが求めらえる気がします。
アプリ系で何十億、あるいは何百億ののプロジェクトを動かし、開発費を回収しているプロデューサーやディレクターは本当にすごいですよね。
中には個人でも人脈を駆使して、うまくやっている人がいます。もちろん、お金をかければいいというわけではありません。でも、経歴を聞いてみると、実は大手ゲームメーカーに10年上勤めたベテランみたいな人が多いです。
フロント、サーバー、C++なども得意で何でも屋です。ただのおっさんと思っていたら、神プログラマーのことがわりとよくあるため、人は見た目では判断できません。仕事をするとめちゃ格好いいですね。
個人は小さなゲームからはじめるといいです。経験とソースコードを蓄積していけば、徐々に大きなことができるようになります。
C言語はこちらの記事をみてください。
プログラミング独学の最短コースは?
最短のコースはプログラミングスクールかもしれませんよ。お金を使った方が目的地に早くたどり着けます。
ただし、例外としてプログラミングスクールのメンターに教えてもらうより、あなたがプログラミングができる場合は一人で独学した方が早いでしょう。少数派ですけど、教師よりできる生徒ってたまに見かけますから。。
簡単なサンプルですが、下記に手順を示してみました。
プログラミング独学、海外のサイトを使う
英語はできる人は海外のサイトを使うとより効率的に学習できます。
英語ができない人もソースコードば万国共通のものと考えるなら、海外のサービスを利用する方法もひとつの手として覚えておきましょう。
意外となんとかなったりしますし、難しいことを調べだすとどうしても英語の情報に頼ることにもなるでしょう。。
プログラミングに英語力は必要?
プログラミングに英語力は必要です。 英語圏の情報を取れるか否かはバグの解決、プログラミングを書くのに大きな力になります。つまり作業効率をあげるために必要です。
初心者の頃は日本語の情報だけでも十分に情報があるため必要ないでしょう。ただし、中級者以降は日本語の情報だけでは情報量が少なすぎるために必要になります。
ただ、大した英語力がなくてもなんとかなります。 たとえば、関数名はある程度規則があるため、ある程度経験値を付ければ迷いが少なくなります。

英語圏の情報もソースコードから読めばOKです。 また、文章を読む場合も、サイトに入った瞬間、ctrl +F ですぐ飛びます。
そのため、その前後の英語を読めばいいだけです。 数行の英語を解読できれば、大抵なんとかなります。英語力が大していらない理由はこれです。 またエンジニアは思考がロジカルな人なので、エンジニアが書く英語もロジカルであり読みやすい場合が多いです。英文の小説を読むのと違って圧倒的に難易度が低いのです。
Hackr.io
Hackr.ioはいろいろな学習サイトの紹介が寄せ集めになったようなサイトです。
Hackr.ioの使い方は簡単です。言語で検索をしたりタグをチェックしたりすればいいだけです。
たとえば、タグにはFree、Paid、Video、Beginner、Unreal Engine 4のようなものがあります。詳細をみると、単にyoutubeやudemyにリンクを貼られている場合もあります。
Web系アプリ系問わず、ほとんどの言語を網羅されています。
Android、iOSはもちろん、C#、C、C++、Unity、Unreal Engine(アンリアルエンジン)などのゲームエンジン。
Angular、React、CakePHP、Django、Flask、Railsなど。
ブロックチェーン、
プログラミングほか、Design、DevOps、New Data Scienceのカテゴリがあります。
たとえば、デザインのカテゴリは、Designをみてみると、
Adobe Photoshop、Adobe After Effects、Adobe Experience Design、Adobe Premier Pro、Adobe Lightroom、Adobe Indesign、IllustratorなどのAdobe系。Digital Painting。
Blender、Autodesk 3ds Max、Autodesk Maya、Autodesk Softimage、Cinema 4D、Daz Studioなどの3Dソフト。
Game Design、Design thinking、Interaction Design、User Interface Design、User Experience Design、Color Theory、Content Strategyなどのマニアックなところまでちゃんと抑えています。
プログラマさんの中にはデザイナーと両刀使いの方を時々見かけます。
また、デザイナーだけどプログラミングまでできるようになってしまったみたいな人もいますから、まとまっていることはいいのではないでしょうか。
Sketch
Information Architecture
Branding
Prototyping
Autodesk Maya
Drawing
Affinity Photo(アフィニティフォト)、Affinity Designer(アフィニティデザイナー)
毎日、グラフィックソフトを使わない人にいいかも。
ベクターとラスターの共存、脱Adobe税で注目、買取型で安い、マクロも一応あります。
プロクリエイトはイラストの下書きとか漫画用にしてて、スタンプみたいなイラストはぺジェ曲線で制作したいからAffinity Designer使ってるよ!
手書き感➡︎プロクリエイト
イラレ感➡︎affinity designer— たいよう (@taiyo5050) 2019年5月27日
Industrial Design(工業デザイン)、Product Design、Typography
UX Research
Figma
Inkscape
Wireframing
UX Pin
InVision
Sketchbook Pro(autodesk販売)
Darktable
Houdini
Principle(アニメーションやインタラクションがつくれるプロトタイピングツール)、
Framer

freeCodeCamp
freeCodeCampです。
プログラミング学習サイトです。

udacity
youtubeでも展開されています。監がいい方はお気づきように字幕が表示できますから多少リスニング力に自信がなくてもなんとかなるかもしれません。

MIT Open Course
MITの授業無料公開です。MITとはもちろんアメリカのマサチューセッツ工科大学のことです。

プログラミング独学でudemyのおすすめ教材
プログラミング独学、日本のサイトを使う
プログラミング独学ならドットインストール
ドットインストールはよい教材かもしれません。 わかりやすさは多少有料のものの方がよいでしょうが、初心者向きの技術はネット上に全部転がっているでしょう。
paiza.io
参考:https://paiza.jp/
練習問題も超初級から超上級まで用意されています。
参考:https://paiza.io/ja
ブラウザ上でコードがかけます。
対応言語はJava、C、C++、C#、Ruby、PHP、Python、Perl、JavaScriptと言ったメジャーな言語からGo言語やScala、Haskellなど24言語以上に対応しています。
progate
アプリ系言語がありません。
Schooは動画学習です。学習だけでなく、エンジニアの話などためになる情報も多い。
Pocket Programming
Ruby、クイズ形式。
Udemyは動画学習です。セールのタイミングで買うとめちゃ安いため、おすすめです。
プログラミング独学のメリットとデメリット
プログラミング独学のメリット
メリットはプログラミングスクールより安くすむことです。逆にいえば、そのぐらいしかありません。
プログラミング独学のデメリット
プログラミング独学するなら最適なパソコンはwindowsそれともmac?
パソコンはWindowsでもMacでもどちらでもokです。最近はmacからwindowsへの出戻りも多いです。ただ、パソコンを一台も持っていなくてこれから購入する場合はmacがいいかもしれません。 なぜなら、macは仮想環境のソフトを使ってwindowsを入れることができるからです。両方の環境があると問題の切り分けにも助けになります。
また、グラフィックと違って必ずしもハイスペックでなくてもいいです。ただ常に使うものなので、そこそこ快適なパソコンを買いましょう。 一応、開発環境を整える際にソフトウェアの推奨環境は確認してください。
ノマドワークやノマド学習できるようにコンパクトなpcがおすすめかも。
ゲーム開発の場合はwindowsの方がよいとよく言われます。 ただ、unityの場合はmacでもokです。マルチプラットフォームのためiosも使えた方が便利です。 ただ、メインはwindowsを入れてwindowsで開発しましょう。iosに関連する作業だけmacに切り替えましょう。
もしくはメインのpcをwindowsにしてサブのpcとしてmacを用意しましょう。プログラマさんはpcオタクも少なくないため、数台持っている人はいますよね。 個人的には長年使っていたmacbook proをサブpcにする流れです。windowsを新規で購入します。
2台使った方が仮想環境の切り替えなどが必要なくなり作業が効率化できるかもしれません。 windowsの方がハイスペックのpcを安価で揃えられるかもしれません。
プログラミング 独学 必要なもの 素人が忘れるものは?
必要なものはPCぐらいでしょう。
加えてネット回線ぐらいです。ノマドでやるならwifi環境が必要になります。
初心者が忘れがちなのは、テスト環境です。
作ったものをテストする環境が必要です。作っているうちはエミュレーターで対応してもいいですが、最終的に実機テストは必要です。そして、実機テストはなるべく早くやるべきでしょう。
iphoneとandroidなどのスマホ、タブレットです。開発者のみなさんは、スマホの買い替え時期に、古い端末を売らずにテスト環境として残す人が多いです。
これお金がかかる場合があります。お金がなかったら、ヤフオクなどで安価にゲットしてもいいでしょう。
あとは学習に応じてプログラミング教材を揃えてください。
プログラミング独学はスマホでも学習できる
スマホでも学習できますが、できればwindowsタブレットとキーボードぐらい用意しましょう。もしくはmacbook air、macbookの12インチあたりがおすすめです。小型サイズの方がノマド学習しやすいからです。
ipadやandroidは特定のテキストエディタが使えなかったり、cromeの拡張が使えなかったりするためです。
プログラミングの開発環境は失敗したらなおすべき?
ちょっと難しいところですが、なおせればなおした方がいいです。
開発環境は毎日の作業の効率にかかわってくるため、常に最適解の状態にしておくことが望ましいです。面倒なのはわかるのですけど。
バージョンはあげることによるトラブルもあるため、Twitterなどで最新の情報収集をした上で決めましょう。最適解が古いバージョンのこともあるため、しばらく様子見もありです。
実際、バージョンをあげることによる明確な恩恵がわからない場合、バグなどでトラブル方がリスクが高いと感じてそのままにすることもあります。
プログラミング独学の開発環境・ソフトウェア(ツール)・テキストエディタ
アプリ系開発環境:unity、xcode、android studio
バージョン管理ツール:
テキストエディタ:Sublime Textや秀丸等。
初心者がプログラミングで遊ぶ程度ならバージョン管理ツールはすぐに用意する必要がありません。バージョン管理ツールは後から導入してもよいです。プログラミングは必ずハマるときがあるため、気分転換にバージョン管理ツールしています。
Sublimeなどが話題になっていますが、まだまだ秀丸が強いようです。

SublimeはMacでもWindowsでも使えます。秀丸はWindowsでしか使えませんが、高速処理がすごいです。またマクロなどが揃うと離れたくありません。Windows用のソフトですが、仮想環境にして使う選択肢はもちろんあります。
Sublime Text 3と秀丸を併用しているユーザーです!Sublimeもマクロ使えるけど、秀丸ほど強力じゃないんだよね
秀丸を使っています。理由はマクロとgrapの速度です。
マクロなど蓄積が多いベテランエンジニアさんほど離れ難いのかもしれません。同じ環境が他のテキストエディタで作れるのか、と考えてしまうのかもしれません。秀丸に不満がないため、長らく乗り換える理由が見当たりませんでした。
またメモ帳としても重宝します。
リリースは1995年ですが、今だ開発が続行中。時代はサブスクリプションモデルに移行されていますが、1回だけ4000円程度払っただけです。
adobeとは違います。
秀丸はカスタマイズすると最強という人がいます。なんと結構共感できます。
サクラ・秀丸と、Atom・VSCode・SublimeTextを同じカテゴリで比較するのはどうなんだ‥‥。ターゲットにしてる用途が異なる気がする
比較してもいいと思いますが、少し種類が異なるという意見でしょうか。Bracketsなどもあります。
エディタはエンジニアさんによって結構意見が別れるところです。
一部の会社ではマクロなどの効率化の観点からエディタまで統一されることがありますが、それぞれ好きなエディタを使っている会社も少なくありません。
unity(c#)のエディタおすすめ
何を作るかによってもエディタが変わる場合があります。
Atomとかコードエディタみたいのいろいろ触ってはいるけど、UnityおすすめのMonoかVSかでいったら確実にVSだよなってかんじ
— 坂本昌一郎@RPG制作中 (@Jun_A_sakamoto) 2019年5月10日
ありがとうございます☺️
他の人からも現場で秀丸使ってたりとか声掛けてもらいました。
どうしてもよく見かけたり、検索にヒットするエディタが良いものと偏見を持ってました( ゚д゚)— 筋肉マチオ (@Machio_Kinniku) 2019年4月16日
PHP、HTML、CSSを書いている時間が素人なりに日々長いのですが…。
Bracketsが無いとどうにもならないくらい重宝してます。
秀丸もつかってますが、ほぼメモ帳代わり程度になりました…。
Adobeなのにオープンソースで無料です。https://t.co/XwD35mhL4f— さとぴあ (@satopian) 2018年7月25日
エディタを新しいのにしたい!ということでまずAtomを入れる。名前がいい。黒色背景にカラー文字ってかっこいい。けど起動遅くない?次VSCode。マイクロソフト!😀結構起動が早い。がビルドの設定とかなんか難しいな。結局軽くて慣れてる秀丸に戻ってしまう。進歩しないねー😅#プログラミング
— エルミン (@elmine789) 2019年2月13日
【プログラミング独学の期間】年数何時間かかるの?半年や一年の効果は?挫折率はどのぐらい?
このようなことを考えるのは無意味かもしれません。キャパやさける時間によるからです。
とはいえ、目安を多少なりとも知りたい人がいるかもしれません。
強いていえばプログラミングスクールが3ヵ月程度なので、3ヵ月ぐらいで働けるレベルまでもってけるということでしょう。時間数は計算すればいいだけです。
大事なのはさっさとはじめることです。
はじめてのプログラミング独学
初めてのプログラミング独学の初心者入門書籍・おすすめ本
人によって意見がわかれるかもしれませんが、優しい…シリーズがおすすめです。
ただ、電子書籍化されていません。電子書籍化されているものなら絵本シリーズもあります。初心者向きの本は1冊あれば十分です。
あと開発環境の本はあってもいいかもしれませんん。
たとえばアプリならC#の本とunityの本ですね。
次に買うべき本は、ポインタやクラスなど理解しにくい箇所を深掘りした本です。
プログラミング独学、学習のコツは時短して効率化すべき
プログラミングの学習は淡々と一つずつ積み重なっていけばいいだけです。
ただ、往々にして煮詰まることがあります。バグの原因がわからない。ハングするなどです。
煮詰まっているなら、教材やプログラミングスクールに通いながらバイトをする方が目的地まで早く辿り着けるるかもしれません。
煮詰まっておらず、自分の力で楽々できるならお金をかける必要はありません。ただ、自分が必ずしも最短の道で山を登っているとか限らないため、情報収集だけはしっかりとやった方がよいでしょう。
プログラミング独学にかかる費用
0円でもいけますが、効率化するなら数万ぐらいかけてもよいでしょう。お金は時短するものです。独学と言えるかわかりませんが、mentaなどを使うともう少しかかるかもしれません。
- udemyの教材
- 初心者用の本
- クラスの本
- ポインタの本
- 他に興味あるもの
- mentaなど有料質問サービス
udemyも電子書籍もセールを使うとお買い得です。
プログラミング独学のFAQ
プログラミング独学のすごいのか?
すごくないと思います。プロになっても常に独学が求められます。
淡々と地道にやるだけです。地道が1番です。
swiftのプログラミング独学はあまり需要がない?
下記のgithubの情報をみてください。あまり需要がないかもしれません。
appleの端末に依存してしまいます。
ビジネス的にはマルチプラットフォームの展開を考えた方がいいため、端末依存の言語はあまりおすすめしません。他の端末に移植する場合に移植のコストがかかるからです。unityはマルチプラットフォームのため、ゲーム系はunity一択です。
プログラミング独学スレは盛り上がっている?
あまり盛り上がっていないようです。。
2ch(5ch)や知恵袋のまとめを見る前に「Hello world」を表示
5ちゃんねる(旧2ちゃんねる)や知恵袋の情報を探しているのは時間の無駄です。多少見ましたが、あまり大したことは書いてありません。。
今すぐコードを書き始めましょう。
言語を選ぶ → 開発環境の構築 → 「Hello world」という文字列を画面に表示してみましょう。
プログラミング独学でモチベーションが保てない人
モチベーションが保てない人はプログラミングスクールの方がいいかもしれません。
独学でやるなら、ある種、気狂いじみた情念を持ってやる必要があります。ぬるくはなく、覚悟が必要です。
プログラミング独学は本とサイトはどっち?
どちらでもOKです。むしろ迷っている時間が無駄なのでさっさとはじめましょう。
初心者向けの情報はネットも充実していますが、本も1冊ぐらい買ってもいいのではないでしょうか。
そんなに高いものじゃないですし、時間が効率化できるなら買いです。個人的には本を買う目安は30分効率化できるなら2000円ぐらいの本は買いです。逆に買わないのは、ネットの情報より内容がなく、1分も効率化できない本です。
本を読むよりググった方が早かったということは現実としてよくあります。しごく当然かもしれません。googleは全エンジニアの叡智が検索できますが、プログラムの本は1人ですから。。
でも、やりてのエンジニアが書いてある本はもっていて損はないですよ。それほど高いものではないですから。
プログラミング独学に限界を感じたら…
誰かに頼りましょう。
プログラミングスクールでもいいですし、mentaでお師匠を見つけてもいいでしょう。
プログラミング独学が楽しいと思うこそ大事?
そうですね、何でもそうですが、楽しいと思うこそ大事です。楽しいと思うと脳がよい働きをします。
プログラミング独学の課題・問題点
プログラミング独学には問題点があります。
本来、必要な部分とずれた部分を学習してしまうことです。
そのため、いろいろな人と情報交換する必要があります。そのひとつが先輩エンジニアです。
プログラミングスクールでメンターをつけたり、Mentaを利用した方がいいのは、そういった理由です。
プログラミング独学は簡単なのか?
初歩的な部分なら簡単かもしれません。独学するのも悪いことではなく、むしろいいことです。
しかし、プログラミングが奥が深いものなので、できるエンジニアさんをみるたびに自分の未熟さや至らなさを感じるでしょう。
プログラミングの独学が危険なのは、できるエンジニアさんの仕事をみることがないことです。たとえば、Googleのエンジニアや有名オンラインゲームを運営しているゲームプログラマー、銀行などミスが許されないカチッとしたシステムを作っているエンジニアと自分が何が違うのかがわからないのです。
自分はプログラミングが組めるようになったと思ったらダンジョンの入口であり、まだまだ先があったなんてこともあるかもしれません。クリアは地下100だったということがあります。
とはいえ、地道にひとつづず積み上げていくしかありません。
積み上がるコツのひとつとしては、同じような仕事ばかりやらないことですね。
自分のキャパより少し難しいと感じる仕事をやるといいかもしれません。
プログラミング独学は目標・目的
プログラミングの独学では目的・目標を決めることが大事です。
あまり大きな目的は達成できないので、小さな目的にしましょう。
たとえば、wordpressのサイトを運営していたら、ここはプラグインを使わずfunctions.phpにコードを追記して乗り切る程度のものでもOKです。
ただ、独立を視野にいれるなら、大きな目的としては自分のサービスで食べていけるようになるのが理想です。
受注仕事より自分のサービスの方が、自由なライフスタイルがおくれます。安定的な収益がある場合、儲からないけど(もしくはマネタイズまでに時間がかかるけど)楽しそうみたいなことにもチャレンジできます。
プログラミング独学、挫折の理由
環境構築や言語の選択等では、挫折はあまりないでしょう。
C言語は難しいやつまらないと言われますが、unityで遊んでいると楽しくなるでしょう。C#のため、難易度がさがります。
挫折の理由はバグとの闘いという気がします。
- 何日経ってもバグが取れない。
- 自分では絶対にあっていると思っているコードが動かない(間違っているのですけど。。凡ミスから疑いましょう。。)。10回見直したけどわからない。
- メモリリークの原因がさっぱりわからない。
プログラミングはハマるとまったく進まなくなるため挫折します。
一度、頭をひやすか、わかっている人に聞くかしましょう。
番外編としては、作りたいものが壮大な構想すぎる場合と作りたいものがまったくない場合も挫折する場合があります。
プログラミング独学の勉強時間
寝るとき以外全部プログラミングの勉強ですね。。
何かを学ぶとき、そういう時期も必要です。
半年ぐらいやれば結構力がつくのではないでしょうか。
ただ、30分ハマったら、他のことをやるといいでしょう。
ハマり続けると半日やっても解決できない場合があるからです。。。
たとえば、気分転換にバージョン管理ツールを入れたり、使うテキストエディタを決めたり、他のパーツを作ったり(人により向き不向きはありますけど、マルチタスクで3つぐらい同時進行してもいいかもしれません。たまにシングルタスクじゃないきゃダメという人もいるんですけど。。。)。
そして、問題となっている箇所は常に頭の片隅に置いておき解決策を考えましょう。
夕食の買い出しにいっているとき、パッと解決方法が思いつき、あっというまに解決できる場合があります(プログラミングに夢中になって、夕食を食べ忘れてしまう場合もあります)。
(注)受注仕事でタイトな締め切りが切られている場合、息抜きする余裕がないとこの方法が使えない場合があります。仕事を受ける時は余裕をもちましょう。
プログラミング独学はどこまでレベルがあがる?
プログラミング独学はどこまででもできるでしょう。
ただし、人にょりますし、効率が悪くなったと思ったら誰かに頼った方がいいでしょう。
メンターを見つけたりプログラミングスクールに通ったりすることです。
初中級者レベルを答えた人はメンターを見つけるとよいでしょう。もしくは自分よりできるエンジニアがいる企業に就職することです。
【仕事編】プログラミング独学のFAQ
プログラミング独学で就職は可能か? 求人はあるの?
ポートフォリオやサービスリリースの実績などがあれば十分可能です。普通に求人を探して募集すればOKです。 ただし、プログラミングスクールはコネみたいなものある気はします。より就職活動を有利に進めたければプログラミングスクールという選択肢も視野にいれましょう。
スキルが高い人はプログラミングスクールなんてなくても余裕で転職できるはずです…。
プログラミング独学で在宅フリーランスでいきなり独立は危険!?どれくらいで独立するといいの?卒業後にバイトした方がいい?
いきなりフリーランスになるのはやや危険な匂いがします。
htmlやcssの便利屋として食べていけるかもしれませんが、未経験エンジニアは雑用係で終わってしまいます(よほどプログラミングスキルがある人は別)。
少し厳しい人だとWeb業務代行やカスタマイズ程度はエンジニアの仕事とは言えないと指摘する人もいるでしょう。
井の中の蛙大海を知らずになりがちです。狭い世界に閉じこもって、広い世界のあることを知らない。という意味です。
自分が凡人だと思うなら、ベンチャーや大企業などで5年〜10年と経験を積んだのちに独立することをおすすめします。独立意欲が高い人も3年ぐらいは働いた方がいいかもしれません。すべてはプログラミングスキルによるため、一概には言えないかもしれません。
どうしても最初から独立したい人は、そばにベテランエンジニアからアドバイスをもらえる環境、自分が限りなくスキルアップできる環境を作りましょう。それでもよほどうまくやらなければ、いい企業の環境で働くより手に入る情報は少ないかもしれません。少なくとも英語圏などからの情報収集はできるようになりましょう。
またメンターと契約した場合、その都度アドバイス料がかかりますが、大企業ではお給料をもらいながら先輩エンジニアからアドバイスがもらえます。
ただ、情報がオープンになる昨今、昔より独立しやすい環境になっているとは言えるでしょう。独立する人は、自分のスキルを冷静にみた上で判断することが求められます。少なくとも独立する人は自分で決められないといけませんから。
プログラミング独学で稼ぐことは可能?
プログラミングで独学で稼ぐことは可能ですが、「井の中の蛙大海を知らず」という状態になりやすいです。プログラミングほどスキル差がでやすい職業も珍しくありません。
できたら評判がよい企業でバイトぐらいはした方がいいでしょう。大事なのは一流企業が給与がいいという話ではありません。一流のエンジニアのソースコードをみるとぜんぜん違うはず!?スキルを磨けることが最も価値あることなのです。
エンジニアは今はノマドワークで働く人も少なくありません。ただ、エンジニア経験数年のうちは、最低でもメンターなどお師匠さんをつけるといいかもしれません。
ブロガーさんやWebデザイナーさんはプログラミング独学は副業になるん?
ブロガーさんやWebデザイナーさんは、副業でプログラミングを考える人がいるかもしれません。
これらの職業の人は、プログラミングスキルがあるとWordpressのカスタマイズをしたりCSSでアニメーションで格好よくしたり、何かと便利だからです。
また、ブロガーさんはGoogleのアルゴリズム変動や水モノの広告収入に振り回される可能性も高いため、リスク分散的にプログラミングを学びたい人もいるでしょう。プログラミングでも事業も展開したい人もいるでしょう。
事業の種類としては以下のようなものがあります。副業だけではなく、自分の事業を加速するためにも使えます。
- ランサーズやクラウドワークスの受注
- Webサイトの受注
- プログラミングの講師・メンターの仕事
- Wprdpressのカスタマイズ、プラグインの開発
- excelのvbaなどマクロやWeb系のツールやWindowsやMACのソフトウェア開発
- Webサイトのアプリ版を開発(集客経路が増える)
- アプリやゲーム開発を副業で行う
それぞれ大変なことがあるでしょうが、難易度はアプリの方が高いかもしれません。理由は言語がC言語になるのと、AppleやGoogleの手数料が3割と高額だからです。売上の3割を納税しなきゃいけないのは大きいですよ。ビジネスとしてやるなら初期費用も高額になりやすくビジネスモデル的な難易度もあがります。
プログラミング独学でクラウドワークスやランサーズで仕事を取る方法は?
独立してすぐにランサーズやクラウドワークスで仕事をとる方法はおすすめしません。
なぜなら、HtmlやCSSなどの簡単な仕事ばかりふられる、ただのお手伝いさんになってしまうからです。
エンジニアって神プログラマーと新人さんは恐ろしいほどスキル差があります。そのぐらい奥深いです。 おとなしくバイトして経験をつみましょう。
ランサーズやクラウドワークスでちょっと難しいことをふると完成させらなれない人もいます(実体験談。昔、外注先として使ったことがある。)。。
他の一般企業と比較すると、まだまだ微妙レベルのかもしれません。中にはランサーズやクラウドワークスには外注化しない方がいいきるエンジニアもいます。
フリーランスはプログラミングの独学を加速させるぐらいの位置づけにしましょう。 フリーランスで働きたないのなら、1番難しいと言われるテックアカデミーあたりがおすすめです。この程度にクリアできないとフリーランスとしてやっていけません。。 それ以外の人は企業で働きましょう。独立するつもりなら雇用形態もこだわる必要はないでしょう。バイトでも派遣でも何でもいいです。企業側もバイトや派遣なら比較的雇ってくれやすいです。 スキルに自信がついたら、独立すればいいです。独立して自作サービスが安定軌道にのったり、定期的にお仕事できる企業ができたりすると、ノマドワークで思ったどおりの生活ができるかもしれません もしかしたらもう代表取締役をしているから、さすがにサラリーマンには戻りにくい人もいるでしょう。すでに社長や独立している事業主の方で圧倒的な行動力がある方は、自力でもなんとかなるかもしれません。その場合もメンターなどをつけるといいかもしれません。 自力では実装が難しいことのみが外注化してしまって、コードの管理は自分で行うなどの方法があります。 ただ、外注化したプログラマーが納品したコードをみて、 この人はちゃんと排他処理などがしっかりとしているし、コメントもわかりやすい。
この人のコードは一応動くけど、手抜きだな。。 など、わかるようになるといいです。リーダーがプログラミングを学ぶメリットです。ITに疎い社長さんがかなりぼったくれれいる可能性があります。。 先日、カフェの隣の人が数百万で外注化した、とITに疎そうな人が話していましたが、個人的には数十万、もしくはランチ食べながら片手間でも終わる内容だな、という気がしました。そのような作業は簡単なので外注化するまでもなく、肩慣らしに実装すればいいと気付くでしょう。
プログラミング独学 収入・年収
収入年収は人によります。ぜんぜん違うため、人と比べても意味がありません。
ランサーズで受注仕事をしている人と世界で何億人も利用するサービスを作る人ではまったく違います。
大事なポイントは、その他大勢のエンジニアと差別化するためにスキルをあげることです。得意分野を決めることです。
そのためには一度就職することがおすすめです。自分よりできる人のコードをみて学ぶのが早いからです。
htmlとcss、ちょっとしたカスタマイズ程度しかできないとただの便利屋さんになってしまいます。
そのためwebエンジニアなら、phpやjava、Python(パイソン)などの言語を学習するとよいでしょう。もちろん初歩の初歩としてhtmlとcssの勉強してできるようになることはいいことです。
ただ、htmlとcssだけ勉強してランサーズで仕事を取ろうなんていうプログラミングスクールは疑問です(ランサーズは別に悪いところではありませんし、仕事を取りやすいみたいないいところもあるでしょう。ポイントはhtmlとcss”だけ”ではきついんじゃないのかな〜という助言です。たとえば、デッサンがバリバリとできるデザインが本業の方ならありかもしれません、)htmlとcssは肩慣らしや余暇にちょっと遊んでみる程度のものかもしれません。
一般的には他の職業の平均年収いいとはよく言われます。できるエンジニアなら弁護士や医者以上みたいなこともよく言われます。
受注仕事ではなくサービスを作ることができるか否かが大きな分かれ目でしょうか。もちろん、サービスは英語対応もした方がよいです。カスタマーサポートなどを考えると、多少の英語力は求められることになります。
独学プログラミングが続かないタイプは?
誰かがいないとダメなタイプはいます…。