コードジム

レベル5

どうすれば自分の可能性を発揮できるでしょうか?

レベルアップしましたね! - 1

海兵隊は、身体能力のある男女がいれば、適切な訓練を受ければほぼ全員から優れた兵士を生み出すことができると信じている。プログラミングは、ギターを弾いたり、水泳や自転車に乗ったりするのと同じようなスキルです。人は生まれながらに自転車に乗る人ではありません。

私の2倍働いて収入が4倍少ない友人を見るたびに、私はいつもこう言いたくなります。

「プログラマーになりたくないですか? あなたは本当に賢いのです。もしかしたら、あなたは間違った仕事に就いているだけなのかもしれません。」

なぜプログラミングをするのか?

プログラマーになるための勉強をする前に、プログラミングがキャリアとしてどのようなメリットがあるのか​​を確認しておくとよいでしょう。

1. 簡単で面白い仕事。

プログラミングは簡単で面白い仕事です。創造性の余地が生まれます。それは大好きです。最初は、私がとても好きなことをするために人々が私にお金を払うなんて信じられませんでした。後は慣れました。

2. 給料が良い。

この仕事を5年続けた後に友人が新しい車や家を買うのを見るのが好きです。

3. フレキシブルな時間。

午前9時から午後5時までオフィスで働くのは大変です。渋滞に巻き込まれたり、5分遅刻してペナルティを受けたことのある人なら誰でもそう言うでしょう。午前 11 時に入社して、午後 5 時に退社できるようにするにはどうすればよいですか? それはただの夢だと思いますか?それはほとんどのプログラマーにとって現実です。ただ自分の仕事をすれば、誰も気にしません。多くの企業では、オフィスに来る必要はまったくありません。すべて交渉可能です。

4. 専門的な成長。

ほとんどすべての会社で望ましい地位と給与を得るには努力が必要です。しかし、プログラマーはプログラマーであるだけで十分です。マネージャーになるために再訓練したり、上級職をめぐって争ったりする必要はありません。あなたがしなければならないのは、プロフェッショナルとして成長することだけです。5~10年の実務経験を持つプログラマーは非常に高給をもらっています。

5. 高い国際流動性。

世界で最も高収入の仕事トップ3は弁護士、医師、プログラマーです。弁護士が海外で仕事を見つけるのは本当に大変です。移住先の国の他の法律や判例などを勉強しなければなりません。医師は言語を学び、医療プロトコルを勉強し、その後、現地の免許を取得するための試験に合格する必要があります。プログラマーは何も勉強する必要はありません。同じ言語、同じ規格、さらには同じクライアントであることもよくあります。

なぜ Java なのか?

次の 3 つの要因が、人々を Java プログラマーとして再教育するという私の決定に影響を与えました。

1. Java は最も簡単なプログラミング言語の 1 つです

高校卒業生は、一般知識と学習に費やす準備ができている 1 日あたりの時間数に応じて、3 ~ 6 か月でそれを学ぶことができます。

2. 需要の高いスキル。

未経験でも仕事は見つかります。企業は有望な新人を喜んで採用し、訓練します。

3. 業界最高水準の給与。

それらは最高のものの一つであり、これは初心者にとって特に重要です。

本を読んだだけではプログラマーになれるわけではありません。少なくとも500時間の練習が必要です。それはボクシングのようなものです。すべての試合を見ただけではプロになれるわけではありません。リング上で長時間練習する必要がある。(これが、CodeGym に非常に多くの演習が含まれている理由です)

「10時間でプログラミングを教えてください」というオファーは、「10時間でボクシングを教えてからリングに上げてください」というオファーのようなものです。そんなことしないでください!

初心者がフォーラムに投稿してプログラマーになる方法についてアドバイスを求めると、「自分で演習を考えてそれに取り組んでください」と言われることがあります。これは仕組みではありません。人は自分の知識の範囲外にあるタスクを発明することはできません。何かを知っているか、知らないかのどちらかです。

ある主題に本当に熟達している人だけが、何か新しいことを教え、完了するのに 1 週​​間もかからない一貫した一連のタスクを考案できるのです。これはまさに私がやったことです。

学習への革新的なアプローチ

CodeGym コースは大学のコースとは異なります。これはすぐにわかります。ただし、私たちの方法はより効果的です。

大学では、おそらく長い講義を聞かなければならず、その後に研究室が続きます。このアプローチは広範な知識を提供することを目的としていますが、実際の実践的なスキルにはまだ多くの点が残されています。そして、正直に言うと、このアプローチでは価値のあるスキルは実質的に得られません。

私には別のアプローチがあります。理論的な部分は知識を意味し、何かを知っているということは質問に答えることができることを意味すると思います。だからこそ、私は質問、つまりあなたの現在の知識では完了するのが難しい演習から始めて、それから初めて答え(タスクをはるかに簡単にする理論)を与えます。

新しい資料を 3 つの段階で紹介します。

1)導入(最小限の理論またはいくつかの演習)

2)基礎知識(主題を完全に理解できるようになります)

3)詳細とニュアンス(ギャップを埋める)

したがって、すべての主題を少なくとも 3 回は扱うことになります。さらに、すべてのトピックは相互に関連しており、他のトピックについて少なくとも表面的に議論することなく、1 つのトピックを完全に説明することはできません。

まだ取り組んでいない内容を含む課題にイライラする生徒もいます。このようなタスクは、すでに持っている知識を使ってタスクを完了する方法を考える機会を与えてくれます。1 ~ 2 時間の労力がかかるかもしれませんが、そうすれば斬新な、または満足のいく解決策が得られるでしょう。

さらに、実生活では、仕事で課題を与えられて初めて、必要な情報を探し始めます。これがあなたにとって現実の生活です。慣れるのは早ければ早いほど良いです。

すべてのレベルにアクセスしてスキルを磨きましょう。コードを書かなければプログラマーになることはできません。そして、プログラマーであることは本当に素晴らしいことです。