一生懸命に勉強しているけど、なかなかスキルが身についた実感がありません。
プログラミングで脱初心者になるために何が必要になりますか?
具体的なステップアップの手順があれば教えて欲しいです。
この疑問を本記事で解決します。
- プログラミングを勉強して最短で脱初心者を目指す方法
- 【初心者の心構え】アウトプットは苦悩の連続です
- プログラミングで脱初心者を目指すなら自力を付けよう
- 【事実】プログラミングで脱初心者したら稼げます
こんにちはヒロキです。
2000年からプログラミングを勉強して、2005年にITビジネスで起業しました。
さらに2005年当時は「エンジニアとしてのスキルが十分にある」とは言えない状態でしたが、無謀ながら企業に営業をして多くの案件を請けていました。
スキル未熟 → できないことでも営業で仕事を受注 → 納期に向けて勉強しながら作る
という綱渡り方式での仕事を続けていたので、当然ですが多くのお客様にご迷惑をかけてしまったことも多々あり反省の日々でした。
その反面、スキルがなくても「仕事を受注」しているので責任感とスキルを身に付ける覚悟は相当だったと思います。
そこで本記事では「プログラミング初心者が(脱 初心者)する方法」として
- 徹底的に自分のスキルを使ってアウトプットをする
- フレームワークに頼らずにコードを書く実力を付ける
- 100の勉強よりも1つの仕事を受注する方が短期間で成長する
という内容について、実体験を元に記事を書こうと思います。
「遠回りせずに、プログラミング初心者を抜け出したい」人は、ぜひ最後までご覧くださいませ。
プログラミングを勉強して最短で脱初心者を目指すには成功体験を得よう
プログラミングで脱初心者を目指すなら、成功体験を積み重ねることが重要です。
実際に何をすべきか?というと「アウトプットをする」ということです。
プログラミングの脱初心者に必要なアウトプットとは?
アウトプットとは、学習した知識やスキルを使って、自分の力だけでサービスや成果物を作り上げるということです。
アウトプットの実例
Web系のプログラミングを勉強して、副業で稼ぎたいと思いました。
そこで【副業に最適】テックアカデミーのフロントエンドコースが初心者には最高の理由を読んでテックアカデミーを受講して、フロントエンドのプログラミングスキルを身につけました。
この段階で「アウトプット」は一度もしていません。
ここからが脱初心者に重要なアウトプットで、身についたスキルで稼げるようになるために、クラウドソーシングでコーディングの案件を受注しました。
テックアカデミーの受講では教えてもらっていないJavaScriptの動きが必要になったので、一生懸命にググって情報を集めて、なんとか対応。
その結果、クライアントに納品できる成果物が完成しました。
アウトプットしたことで「自分の力で稼げる」自信にも繋がり、成長を実感しました!
こうした一連の流れこそが、アウトプットの重要性です。
そしてアウトプットを繰り返すほどに脱初心者に最短で近づいていくことができます。
その理由は以下の2つ。
- アウトプットをすることで知識が実際の経験として定着する
- 自分ができること以上を求められるので、対応すれば成長できる
という感じですね。
アウトプットに勇気を出して飛び出せば、今までは「与えられた知識」を単に吸収していたものが、自分の血肉となり活きた知識として「稼ぎに直結」していきます。
つまり、アウトプットを繰り返さない限りは、いくら有能な知識を学んでいても脱初心者はできないということです。
できることは、やりながら徐々に増やせばOKです
勉強する際に注意したいことは「最初から完璧を求めない」ということです。
そもそも、勉強するだけで完璧に知識を理解して、使いこなせる!なんて100%ありません。
学習 → 挑戦 → 失敗 → 知識の見直し → 再挑戦 → 成功 → 知識の定着
この繰り返しでしか成長することはできません。
しかしながら、ほとんどの人は失敗を恐れてしまい、最初の挑戦すら踏み出せません。
プログラミングスクールで学習したのに、勉強しただけで満足してしまい実際の仕事に挑戦できない人は山ほどいます。
大切な視点は「できなくて当たり前」という前提です。失敗しても当たり前です。
過去の私は、そもそもの知識やスキルがないのに「実際の仕事を受注」してしまっていました。
もはや、走り出すしか選択肢が無い状態です。
そして走り出せば、当然ですが失敗します。その失敗の数が莫大に溜まってくると、新しい案件でも恐怖心は無くなります。
大きな失敗の実例
フロントエンドのスキルばかりに視野がいくと、バックエンドを理解できないまま多大な損失が出てしまいます。
color me shopという通販のシステムを使っていたクライアントから
「color me shopのシステムが使いにくいので、自社のECサイトを作りたい」
とオーダーを受注しました。
「素晴らしいECサイトを作ってやる」
その一心で、凝ったデザインでECサイトを作り上げ、クライアントも喜んでくれました。
そして、リニューアル公開日に「このECサイトのリニューアルに向けて大掛かりな企画をやろう!大幅セールのキャンペーンをやりましょう!その案内もメルマガで配信します」
こうして、リニューアル企画が決まり、抱えた10000人以上の顧客にメルマガを配信しました。準備完了です。
そして、サイトをリニューアル公開!
その瞬間、リニューアルしたばかりのECサイトのサーバーが落ちました。
ECサイトが抱えた多数のファンが、リニューアルキャンペーンを目掛けてサイトに殺到したのです。
さらにサーバーが落ちているので、誰もアクセスできません。
キャンペーン企画は大失敗に終わると同時に、クライアントに多大な売上損失の迷惑をかけてしまいました。
フロントエンドのデザインや操作性だけでなく、大量のユーザーが同時アクセスした際に「快適に使ってもらえるサーバー環境」を最初に想定して用意するという認識が皆無でした。
この失敗を機に、サーバーサイドの知識を見直し、スキルを磨きました。
失敗を失敗で終わらせずに、自分が成長するためのきっかけに変えなければクライアントにも失礼です。
これ以降、大型サイトやメディアの案件では、常にサーバーサイドの提案も同時に行い、サーバーダウンといったトラブルを回避することができています。
大切な視点は「最初から完璧にやろうとしない」ことです。失敗を恐れずに、どんどん挑戦していきましょう!
それでしか、成長することはできませんよ。
プログラミングを勉強したいけど何を勉強したら良いのかわからない...
独学で勉強しているけど、よくわからない...
そんな方も多いと思いますが、朗報です!
有名プログラミングスクールのテックアカデミーの講座を
無料で受講することができます!
パソコンさえあれば、自宅で学習をすることができます。
30秒で登録が終わります。
いつまで無料で体験できるかわからないので、
今すぐ無料体験に登録してみてください!
» TechAcademyの無料体験に申し込む
【初心者の心構え】アウトプットは苦悩の連続です
アウトプットは精神的にも辛いものです。
決してラクではありません。
1クリックで完成なんて魔法もありません。
正直に、キツイことの連続です。
先述したECサイトのサーバー落ちの際は、クライアントへの責任問題と自分の実力不足から、精神的に疲弊して、体重は5キロほど落ちました。
- どうやって作れば良いのだろうか?
- そもそも何をやれば良いのかさえ分からない
そんな状態から、解決策を自分で考え出して、手を動かして作業を続けなければいけません。
苦痛は果てしなくありますが、その先に「実際に思い描いていたものが完成した」「クライアントが喜んでくれた」「多くのユーザーが使ってくれた」という達成感が待っています。
最初がキツイですが、これは何度も繰り返して挑戦すれば慣れてきますので頑張りましょう!
プログラミングで脱初心者を目指すならフレームワークに頼らずコードを書こう
本当の意味で、プログラミングで脱初心者を目指すならフレームワークに依存せずに自分の力だけでコードを書く自力を付けましょう。
プログラミングスキルが伸びない人ほど、フレームワークやソフトに頼ってしまいます。
フロントエンドだと、dreamweaverなどの管理ソフトを使ってしまうと、直感的に組み立てることができるので「何となくの知識」しか定着しません。
確かに、フレームワークやアプリは便利ですが、実際の自力は全く身につかないので戦力としては役に立ちません。
フレームワークを使うことができる=プログラミングできる
ではありませんので、ここは厳しく理解しておきましょう!
プログラミングの効率的な学習ステップは「小さな成功体験の積み重ね」のみです
具体的にプログラミングを効率的に学習する手順を解説します。
- 最初から完璧を目指さない
- 小さい成功体験を積み重ねる
- できることを少しづつ増やす
以上です。
いきなり分厚い参考書を買ってきても勉強なんて続けることはできませんよ。
この辺りは子供の勉強と同じですよね。
今、ちょうど夏休みで、子供達が夏休みの宿題の計算ドリルに苦悩していますが、いきなり計算ドリルとか、大人でも苦痛ですよ。
そこで、実際のお金を見せながら
「1000円で1セット200円のポケモンカードを3セット買ったら、お釣りはいくら?」
と質問すると、楽しそうに考えているんですよね。
それで「分かった!400円!」と小さい成功体験を掴むと、そこから計算ドリルも楽しそうに取り組み始めます。
効率的な学習は大人も同じで、初心者の間は
知識を学ぶ < 体験で実感する
という手順で進めましょう。
この辺りはrubyが素晴らしい3つの特徴を解説【プログラミング初心者に最適】もぜひご参考ください。
最短でプログラミングの脱初心者を目指すなら本番環境に飛び込むべき
プログラミングを学習して、アウトプットを繰り返すと確実に成長できます!
しかし、それ以上に最短速度で成長できる方法が、本番環境に飛び込むことです。
半ば強制的にスキルと知識を爆伸びさせることができます。
私自身の失敗談を紹介してきましたが、まさに怪我の功名です。
マジで痛いですが、急成長できます。
大学生であれば、勉強と同時にエンジニアとしてインターンに応募しましょう!
ベンチャー企業に挑戦するのもありです。
とりあえず、現場に出ましょう!
日々、トライアンドエラーの繰り返しなので成長できますよ。
こういった「挑戦」を提案すると、決まって
- 自分には家族がいるから挑戦できない
- お金がないから挑戦できない
といった声が出てきます。
そういう場合は、エンジニアの勉強会などに参加して、繋がりを作ってみるのもありです。
でも、実際にそれで成長できるか?というと「明確にNO」と言えます。
この辺りはエンジニアの勉強会への参加は完全に無駄【信頼を積む3つの方法】に情報をまとめましたので合わせてどうぞ。
副業でも良いので8割のスキルが付いたら自分で稼ぎ始めよう
インターンやベンチャー企業への就職(転職)と同じく、本番環境への飛び込みとしてオススメなのが、フリーランスで仕事を受注してみるということです。
クラウドソーシングを使っても良いし、企業に営業して受注しても良いと思います。
口コミから仕事をもらってもOKですね。
とにかく「実際の仕事を受注」することのメリットは「納品しないといけない責任感」が生まれることです。
当然、金銭が発生するビジネスなので「受注に対しては責任を持って納品」しなければいけません。
そんな時間制限がある環境の中でスキルを磨くので、嫌でも実力は付きますよ。
80%くらいが受注前にイメージできたらGO
受注の目安としては「8割くらいは構築の全体像が見える」と判断できたらOKです。
初心者の段階は、私がサーバーサイドの重要性を理解できずに完全に忘れていたように、頭にないトラブルの種が山ほどあります。
この辺りは、もう挑戦して失敗しながら気づくしかないので、そこは「失敗の想定」として考えながら、自分自身の80%ラインを考えて挑戦してみてください。
仕事の取り方などは参考記事のリンクを貼っておきますので、どうぞ。
プログラミングは儲かります【時給で10万円を稼ぐ人の思考を解説】
仕事を受注できないフリーランスエンジニアが月50万以上を安定して稼ぐ方法
【エンジニアの悩み解決】仕事がないフリーランスエンジニアが月収100万円を達成するメール営業術【効果実証済み】
プログラミングで脱初心者したら稼げます
記事のポイントをまとめます。
- 脱初心者するならアウトプットが重要です
- フレームワークに頼らず自力を付けましょう
- 勉強するよりも成功体験を積み重ねよう
- 本番環境に飛び込めば、すぐに成長できます
以上です。
本文で書きましたが、最初の方はトレーニング後の筋肉痛みたいに苦痛がありますが、それを乗り越えると成長した自分に出会えます。
キツイの初心者の時だけです。
失敗は当たり前ですよ!
その失敗があるからこそ、成長して「自分で稼げる」ようになった未来が待っているわけです。
ということで、本記事が脱初心者から次のレベルへのステップアップにつながれば幸いです。
人気記事プログラミングは儲かります【時給で10万円を稼ぐ人の思考を解説】
人気記事プログラミングで月10万を稼ぐための学習時間【初心者向けに解説】