プログラミングを初めた理由と、3ヶ月で学習したこと。[個人メモ用]
初めに
この記事を書く理由は、この学習を継続するために自分が何を考えて、何をしたかを言語化することで、一番大切なモチベーションを維持するためです。また言語化することでより学習への理解を深めるためです。
学習を始めたきっかけ
私は大学3年の5月から、まわりとは少し早めに就活を始めました。そして色々な会社の面接やインターンに参加しましたが、その過程で今までやってきたことをあたかも人生を懸けて挑んだことのように、面接をし、面接官に気に入られるようなコミュ力を覚えました。そして面接に落ちれば落ちるほど、もっと面接官に気に入られるように努めましたが、ある面接をきっかけにそれは今自分がすべきことではないと感じました。そこから、コミュ力などの目に見えないスキルより、自分に何が出来て出来ないかがはっきりする、技術者に憧れるようになりました。その時真っ先に思いついたのは、ソフトウェアエンジニアでした。実は私は情報系の理系大学に属していますが、大学1年のC言語の講義でプログラミングに挫折し、以降はプログラミングとは関係ない授業を積極的にとっていました。なので学習開始レベルは未経験と同じレベルです(intの意味がわからないレベル)。プログラミングは自分には絶対できないと思っていましたが、そのきっかけから自分が一番できないと思っていたプログラミングをやってみたいと心の底から思いました。
学習したこと
私は3か月間でJavaScriptのフレームワークである、Reactを中心に学習しました
モダンJavaScriptの基礎から始める挫折しないためのReact入門
このUdemyの講義では、プレーンなJavaScriptの基礎からなぜReactが生まれたかを説明してくれるので、Reactへの理解を深めることが出来ました。そしてReactの基礎を応用したTodoアプリを作成する過程でコンポーネントへの理解も深まりました。Todoアプリは3回学び直して、何も見ずに作れるようにしました。
Reactに入門した人のためのもっとReactが楽しくなるステップアップコース
2本目もじゃけぇさんの講義でTypeScriptやグローバルな開発方法を学びました。実践アプリの作成では、axiosを用いたエンドポイント作成を学んだことで、実践的な知識が深まりました。これも3回ほど見直して、何も見ずに実践アプリを作れるようにしました。
電子記事販売WebアプリケーションをNext.jsをフル活用して実践力を身に着けるWeb開発マスター講座
最後にReactのフレームワークであるNext.jsでフルスタック的な開発について学びました。この講義でデータベース、ORM、AppRouter、非同期処理など全く知らないことだらけでしたが、自分なりに調べながらそれぞれの理解を深めることが出来ました。そしてどのような手順でデプロイができるかを学べたのが大きかったです。
以下はこの講義を学んで作ったアプリの記事です。
これからしたいこと
この3ヶ月で、アルゴリズムの理解が足りていないと感じたので、競技プログラミングなどを毎日少しずつやろうと思います(コーディングテスト対策も含めて)。またチームで開発をしてみたいと感じたので、そのような環境に飛び込んだり、友達と開発が出来ればいいなと思います。具体的には、ユーザー同士がオンラインで何かできるようなアプリを作ってみたいです。
Discussion