文系東大生がプログラミングを始めて3か月経ったので振り返ってみる
初めまして!サニーです
今日から、学習過程や考え方のポートフォリオとしてブログを始めようと思います
今回は、プログラミングを始めて3か月時点での学習の進捗、ぶつかった壁などを書いていきます
プログラミング始めたての方や、これからプログラミングを学びたい方、文系の方などの参考になれば幸いです
- 本格的に始めるまで
- TechAcademyに登録&挫折(2018/2)
- ProgateでRubyを始める(2018/3)
- Progate卒業・共同開発者探し(2018/4)
- 現状とこれから(2018/5)
- 自分がもし今プログラミングを始めるなら
本格的に始めるまで
僕は小中高とサッカー人間でした。サッカーはすごく楽しかったのですが、監督に言われたメニューや指示をひたすらこなしていく受動的なものでした。また、大学も周りが受けているから、という曖昧な理由で決めました。
大学でも当初体育会サッカー部に入部しようとしていたのですが、そうすると4年間(通算14年!)サッカー漬けの生活になるという事に気づき、漠然とした危機感を持ち断念しました。
そして、何か面白いことないかなと思っていた時に出会ったのがプログラミングでした。1回生の夏でした。
自分はコードを一行も書いたことがなかった上に理系科目に苦手意識を持つ典型的な文系だった為抵抗感がかなりあった覚えがあります。
アプリを作れたらカッコいいんじゃね!?という安易な理由で使用言語はJavaに決め、書籍で勉強し始めました。一番最初に'Hello World'を出力した時にものすごく感動したのが印象に残っています。
しかし、当時手伝っていた学生団体の仕事が忙しくなったのと、オブジェクト指向が理解できなかったのとで10日ほどでやめてしまいました。
TechAcademyに登録&挫折(2018/2)
再開したのは 半年後、期末試験が終わり冬休みに入った時でした。
当時僕は学生団体をやめたばかりでなにも長続きがしない自分に嫌気がさし、何か一つ腰を据えて取り組もうと思いました。
そこで半年前のあの感動を思いだしてプログラミングに決め、退路を断つために父親に直談判して12万円出資してもらい、大手プログラミングスクールのTechAcademyに登録しました。
TechAcademyは、用意された教材を独学しわからないところをメンターにチャットで質問するというシステムでした。しかし、教材がある程度の知識があることを前提に作られているのとJava自体がかなり難解な言語なのもあり、わからないところがわからない状態になってメンターにも質問できないという悪循環に陥ってしまいました。
そんな時、Progateというサイトを知り、そちらで基礎を学んでからTechAcademyの教材に移ろうと考えました。
しかし、初心者向けに整えられた環境、UXの素晴らしさ、レベルを上げる楽しさ等に魅了されいつの間にかTechAcademyそっちのけでProgateばかりやるようになっていました。この辺りの詳しい話は下の記事で書いています。
結局TechAcademyは途中で辞めることになりました。退路を断ってくれたという点で感謝はしていますが、手痛い出費でした。当然親に対する借金として残っています。
これはTechAcademyが悪いという話ではありません。お金をかければいいというものではなく、自分の進度に応じて適切なサービスを選ぶべきだということです。自分の場合、Progateである程度基礎を学んでからTechAcademyに移行していればもっとスムーズに学習が進められたと思います。僕は気づかなかったのですが、大抵のサービスは無料体験ができるので一度体験しておくことを強くお勧めします。
ProgateでRubyを始める(2018/3)
TechAcademyで挫折したのはJavaが難解だったのと、アプリを作るというところに実際そこまでモチベーションがなかったところが大きかったと思い、言語をRubyに変更しました。
今振り返るとこれは良い決断でした。Rubyは直感的でわかりやすかったし、Twitterで沢山の人がRailsを使って面白いサービスを作っていたので自分もやってみたいというモチベーションになりました。
レッスン完了をツイートするとたくさんいいねがつくのもすごく嬉しかったです。
Ruby 学習コース Ⅳを修了しました! https://t.co/eWf6mnc7SZ #Progate
— サニー@5ヶ月Railsアプリチャレンジ (@bokusunny) 2018年3月12日
個人的に、プログラミング初学者はProgateでフロント言語(HTML & CSS)かRubyから始めるのがベストだと思います。とっつきやすさやモチベーション的な観点から見て。ちなみに有料会員になっても月額1000円しないのでコスパも最強です。
Progate卒業・共同開発者探し(2018/4)
Progateは順調に進み、一か月でHTML,CSS,JS,Ruby,Railsを終わらせることができました。この頃にはすっかりプログラミングの魅力にとりつかれていました。
とりあえず実践コースと同じものをAtomで一から作り終え公開!↓https://t.co/rj4yG40yUv
— サニー@5ヶ月Railsアプリチャレンジ (@bokusunny) 2018年4月27日
これでとあえずProgateはいったん卒業して、本格的にRails Tutorial進める。
マジでお世話になりました!@prog_8 pic.twitter.com/nayestc4gl
そこで、本格的にアプリ開発に着手するため、Progateを卒業してRails Tutorialに移行しました。しかし、ここで二回目の挫折を味わいました。エラーが出てもググり方がわからないし、ググっても出てきた情報が古かったりして解決に時間がかかる、Windowsでは環境構築が難しいなどの問題が続出し、ものすごい時間と気力を投資してやっと一番最初の画面にたどり着きました。
そこで悟りました。自分がいままでどれほどProgateに守られていたのか。プログラミングの世界がどれだけ残酷であるかを...
出典:進撃の巨人
モチベーションの維持やわからない所を聞くという意味でもメンター・共同開発者の必要性を痛感しました。しかし、文系学生だと周りにプログラミングをやっている人すらほとんどいない。
そこで、丁度学校が始まりWebサービスを一から作る授業があったので参加し、周りの人に積極的に声をかけることにしました。その結果、何人か面白い人を見つけることができました。
現状とこれから(2018/5)
そこで、その内の二人を誘って一緒に開発をすることになりました。
正式に東大生三人でチーム組むことになりました!決起集会アツかった!
— サニー@5ヶ月Railsアプリチャレンジ (@bokusunny) 2018年5月8日
制作期間2ヶ月で面白いWEBサービス作ります🔥 pic.twitter.com/0bUeYPI00M
二人ともとても優秀なのでお荷物にならないよう頑張ろうというモチベーションが湧く、わからないところがあったらすぐ聞ける、チーム名決めたりロゴ作るのが楽しいなど今のところは共同開発にしてとても良かったと感じています。
まだまだこれからですが、開発期間を二か月に設定し7月にWebアプリをリリースする予定なので、その時は是非一度使ってみてください。'能力の掛け算'をテーマに、Webサービスを作りたいデザイナーとエンジニア同士など異なるスキルを持つ人のマッチングサービスを作るつもりです。文系だと共同開発者が欲しいのに探す場所が限られているという自分の体験が元となっています。ここで出会った人がバンバン良質なサービスを出してくれるようになると嬉しいな~
その後はPythonで機械学習とかやってみたいと漠然と考えていますが、今はRailsの開発に専念しようと思います。
自分がもし今プログラミングを始めるなら
今自分がプログラミング未経験の時に戻るなら、以下の事に留意すると思います。
(※個人差が大きい所なので参考程度に考え、他の方法も検討した上で自分に合ったものをピックアップするのがお勧めです。)
・最初はProgateでRubyかHTML & CSSを学ぶ
→環境構築など初心者が躓きやすいところが極限まで切り落とされているので挫折する確率が下がります。
・Twitterをやる
→他の人のサービスを見たり、自分の成果をアウトプットしていいねなどでフィードバックを貰ったりすることでモチベーションの維持に寄与します。
・メンターや共同開発者を見つける
→Progateを離れるとエラーとのお付き合いが始まるのでほぼ必須。独力だと、本当にプログラミングが好きか優秀かでないと挫折します。学校のプログラミングの授業や、学外で開かれる勉強会やオフ会で見つけると良いかも。(Progateオフ会は敷居が低くおススメ)。友達で見つけられなかったらココナラやTechAcademyなどの有料サービスを使うのも一つの手です。
ココナラ - みんなの得意を売り買い スキルのフリーマーケット
TechAcademy [テックアカデミー] | オンラインのプログラミングスクール
Progateオフ会/勉強会 (東京都, 日本) | Meetup
振り返るともう少し効率的に学べたな、とかここでの挫折は回避できたな、とか色々思うところはあります。
しかし、自分も先人の記事を参考にしたおかげで大分順調にここまで来れました。
なので、これから学ぶ人にとってこの記事が少しでも参考になり役立ったと思ってもらえれば嬉しいです。
それでは。