コーディングアカデミーがプログラマーになる方法を教える5つの方法

UnsplashのClémentHによる写真

バックグラウンド

私の名前はニッククルタスで、現在はネバダ州リノに住んでいます。プログラマ/開発者が行く限り、ここには非常に小さなコミュニティがあります。私はすぐにこれに気づきました。私はアソシエイツオブアソシエイツの追求で地元のコミュニティカレッジに参加し始め、地元のコンピュータサイエンス/プログラミング大学に進学しました。この時期に、6か月間フルタイムのコンピューターサイエンス/ Web開発アカデミーであるラムダスクールに出会いました。これを詳しく調べるほど興奮し、タイミングは完璧でした。最初は緊張し、怖く、圧倒されました。しかし、最後にCapstoneプロジェクトを含まない70以上のプロジェクトを完了した後、私はプロのプログラマーになる方法について多くの知識を得ました。私は学んだだけではありません。新しいコーディング言語、構文、プロの開発者になるために必要な真のソフトスキルとグリットも学びました。

1.開発者のように考える方法

このヘッダーを書いた後、私は妻に尋ねました—彼女がヘッダーだけを読んだら、彼女はどう思いますか?彼女の答えは、「コンピュータのスマート/学習コードになる方法」でした。これは、これを読むほとんどの人の最初の考えだと思いますが、開発者のように考えることはコードを学ぶだけではありません。開発者/プログラマーとして、あなたは絶えず問題を解決し、新しいプロジェクトを作成する際に回避すべき事柄の指針として以前に解決した問題を使用して、解決策に向かう創造的な方法を考えます。問題を細かく分けて、各セクションを一度に解決し、最終的に全体的な問題の答えに導きます。 Lambda Schoolでこれを非常に早く学びました。特に、なじみのないコードやプロジェクトに飛び込みました。講義や実践から得た情報を使用して、問題を細分化することができました。全体的な答えが明らかになるまで、各作品を個別に検討します。この新しい学習方法と問題へのアプローチにより、その後似たような何かに出くわした場合、その場でそれを修正する方法を知っていました。

開発者のように考えるときに影響を与えるもう1つの大きな部分は、計画です。これがTrelloボードを使用してチェックリストへのすべてのステップを計画しているのか、プロジェクトがどのように機能/機能するかを視覚的に確認するためのワイヤーフレームを使用しているのか、常に次の攻撃計画を計画しています。また、できるだけ早く完了して実装する必要があるかどうか、または後で提供できる機能であるかどうかについて、重要度の尺度で各ステップを評価しています。

2.チームでのプログラミング/作業のペア。

ペアプログラミングの概念に最初にアプローチしたとき、特に強烈で没入型の環境では、本当に緊張しました。ラムダスクールでは、コードの作成に関する予備知識がある人も含め、さまざまなバックグラウンドの人々が集まっています。他の人が私よりも多くのことを知っているかもしれないので、「Unintelligent」とは言いたくありませんでした。また、パートナーに不利益を感じたくありませんでした。パートナーとコミュニケーションを取り、相手が私以上のことを知っているか、私が彼ら以上のことを知っているかを判断することで、プログラムを効果的にペアリングし、チームで効果的に作業する方法を学ぶことができました。このプロセスを通して、質問をしたり、プロジェクトを改善するためのアイデアを提案したりして、できるだけ効率的にコミュニケーションをとる方法を学びました。これは、コードを書いているときの思考プロセスを説明するのにも役立ちました。また、特にナビゲーターであり、パートナーがドライバーである場合、私が別の何かをすることを選択した理由を説明するのに役立ちました。

Lambda Schoolはオンラインプログラムであるため、プログラムの全員がリモートで作業しています。ペアプログラミングを行い、Capstoneプロジェクトで作業している間、私たちは隣にあるデスクに行って質問をすることはできませんでした。主要な通話/画面共有プラットフォームとしてズームに依存していたため、Slackでのメッセージングと同様に、常にコミュニケーションをとっていました。このプロセスにより、パートナーとコミュニケーションをとることの重要性が明確に示されました。

3.永続性、一貫性、およびグリット

プロフェッショナルな開発者/プログラマーになるための道のりに向けて努力することは、永続的で一貫性のあるスキルであると同時に、グリットを持つスキルもすべて大きな役割を果たします。あなたは常に手元のタスクに集中する必要があり、常に解決策を見つける方法があることを知っています。コードと一貫性を保つことが重要です。新しい言語、フレームワーク、および更新を常に把握する必要があります。プロジェクトで「完了」することはありません。プロジェクトやアプリを改善するために、いつでも戻って更新できることがあります。グリットを持つことは永続的であることと相まって、解決策を考え出そうとして、キーボードに顔をぶつけたい場合があります。それらの特定の瞬間に、あなたは目の前のタスクに意欲を持ち続け、直面している問題を解決し続ける必要があります。

ラムダスクールでは、これらのことは直接教えられませんでした。これらはあなたが磨き、時間をかけて成長することを学ぶソフトスキルです。開発者/プログラマーとして、あなたは常に慣れていないコードに飛び込んでいるか、まったく新しい技術でまったく新しいプロジェクトをゼロから始めることさえあります。コードがどのように機能するか、そしてこれまでに紹介したことがない言語やフレームワークをどのように使用するかを知るには、粘り強くなければなりません。これには、コードをステップごとに実行して実行内容を確認したり、まったく新しい言語またはフレームワークのドキュメントを読んだりすることが含まれます。問題に直面している場合は、手順の再トレース、コードのconsole.log-ing、問題の調査など、解決策を見つけるために粘り強く取り組む必要があります。また、一貫性を保ち、できるだけ多くのコードを毎日作成し、新しいフレームワーク/言語に対応し続け、必要に応じて既存のプロジェクトを拡張し続ける必要があります。

4.障害を克服する

前述したように、あなたはあなたの問題の解決策がないように思われるイライラする瞬間を持っているでしょう。あなたは、手元のタスクを実行できないように感じて、インポスター症候群の時代に直面するでしょう。新しく見つけたソフトスキルを練習してから、これらの状況に置かれると自分が繁栄することに気付きました。それは私がもっと一生懸命働くように駆り立てるので、これを読んでいる多くの人がそうであると確信しています。

ラムダスクールは、私が思いついたことを私ができることを教えてくれました。 Lambda School内の問題や障害に直面したとき、それがコードの問題であろうと解決するエラーであろうと、私たちは常に指導を受けていましたが、完全に答えを出すことはありませんでした。私たちが自分たちで解決策にたどり着くまで、私たちはそれに取り組み続けなければなりませんでした。これは私ができることを個人的に理解するのに役立ったので、最高のものです。それがより多くの研究、自分自身(または妻)に自分のステップを大声で話す、または私の以前のステップを再トレースすることであるかどうかの答えを見つけることができます。私は答えを見つけたので、頭の中の電球を消して途中でやめるだけで問題を妻(プログラミングについては何も知らない)に何回説明したかわかりません。

障害を克服するときに得られる感覚は、宝くじに当たるようなものです。それはあなたの自信を築くだけでなく、あなたが成し遂げた成長を見ることができるので、学ぶための最良の方法の1つです(私の意見では)。

UnsplashのJoshua Earleによる写真

5.個人的および専門的な成長

私は以前ラムダスクールで個人的な成長に触れましたが、1つの記事に収まらないほど多くのことがあります。新しい成功した特性を開発し、障害を克服し、パートナーと通信/ペアプログラムしました。私もプロとしての大きな成長を遂げました。私はキャリアを始めた21歳であり、それは私に気づかせてくれました。プロの開発者/プログラマーになるだけでなく、人生においても一般的にもそうです。インストラクターとスタッフだけでなく、仲間と素晴らしいつながりを築きました。それで終わりではありません。私はすべての職業のプロの開発者である人々とのつながりを築き、そのつながりを築く方法を学び続けました。

プロジェクトについて専門的な意見を述べる方法と、自分の立場を詳細に説明する方法を学びました。これで、自分の思考プロセスと、パートナーとチームプロジェクトに特定のTech Stackを選択した理由を説明できるようになりました。私はプロジェクトを開始するときに同僚とコミュニケーションを取り、最良の結果を得るための最善のステップを検討することができます。コーディング時の問題解決は巨大であり、パートナーまたはチームと効果的に問題を解決して、最良のソリューションを実現することができます。

これらはすべて、プロのソフトウェア開発者/エンジニアとしての将来の仕事で私が持てるすべてのものです。

これを読むために時間を割いてくれてありがとう!