勤怠Aに取り組む目的とは
これまでにやったことのない機能を実装するためにたくさんの壁とぶつかり、プログラミングの経験値を一気に上げること。
勤怠Aの「取り組み方」によって成長度合いが変わってきます。
成長するための具体的なポイント
●わからないことがある時はまず自分で考えてみる。
- 自分は何がわからないのか?を掘り下げる。自分が理解できていないことを明確にしてからピンポイントで復習したり、必要な情報を集める。
- エラー文の意味がわからない → ググる。翻訳する。
- 参考資料通りやったけど思い通りに動かない → どこかに資料と違っている箇所がないか改めて確認してみる。
- 何がなんだかわからず正直全てがチンプンカンプン。コントローラーって何?モデルって何?ビューって何?な場合 → 潔く「Ruby on Railsで簡単なSNSアプリを作ろう」に戻ってサクッともう一周する。
●勤怠Aの仕様書を初めてみた時は衝撃を受けました。
- 一体どうやって実装したらいいんだろう..と絶望しました。
- 仕様書を見ると一気に実装内容が増えて目が回りそうになりますが、複雑そうな処理も結局は小さな一つひとつのプログラムの集合体です。
- 一つずつコツコツ片付けていけば必ず終わります。
- 難しそうなタスクを分解して細かいタスクに分けていきましょう。
●エラーページ、エラー文をよく読む。
- 英語が読めない時は翻訳する。
- エラー分をコピペしてググる。
- エラー分と向き合いましょう!
●rails sしているターミナルをよく見る。
- ターミナルはたくさんのヒントで溢れています。
- e.g. モーダルが上手く表示されない時
- e.g. 登録や更新がうまくいかない時
- e.g. エラーが出た時(エラーページと一緒にターミナルも確認しましょう)
●デバッグする
- 開発ですごくよく使います。
- e.g. 欲しい数値や情報が取得できているか確認したいとき。
- debuggerを使う(<%= debugger %>でviewでも使用可能)
- debuggerで処理が止まっている間にターミナルに「params」と入力するとどんなパラメーターが飛んできているか確認することができます。
- chromeの検証モードでconsoleを開く(JSが関わっている場合に確認します。例:jQuery, bootstrap 何かがうまくいっていない場合には赤い三角マークが出る)
●人に聞く時には直接的な答えではなくヒントをもらうようにする
- 答えを教えてください△ 解決してください△
- 最終的に問題を解決するのは自分。自分が何を理解していないのか立ち止まって考えることが大事。どうしてもわからない時は聞くしかないのですが、解決への道筋も頭に入れましょう。
- 参考記事を教えてもらう○
- 将来的に自分でググって必要な情報を探せるようになったら怖いもの無し。Railsに関しては情報が非常に多いのでググればなんとかなる。参考記事を共有してもらった時にこの記事はどんな「検索キーワード」で見つけましたか?と聞くのも○
- なんで上手くいかないのかわからないので一緒に見てください△
- まずは自分で努力して原因を探してみる。ターミナルは見ましたか?エラー文は自分でググりましたか?誤字や脱字がないか確認しましたか?自分で調べてもわからない時にはもちろん人に聞いてもOK。
●過去のカリキュラムだけでなくググって情報を探すことに慣れていく
- ポートフォリオ作成以降はググって情報を探す機会がぐんと増えます。
●Railsの公式リファレンスやgemのREADMEなど、公式の情報にも徐々に触れていく
- Qiita記事も大変参考になりますが公式の情報はより確かです(ex. Railsガイド)
●何か調べるときには複数の検索結果(資料)に目を通す
- ググって調べるときには一つや二つの記事でなく、5つ以上目を通しましょう。
- 実装内容が微妙に違ったりする中でどれがもっとも自分の実現したい実装内容に近いか精査してから実装する。
●困った時に上手に自分の状況を伝えられるようになっておくと◯
- チーム開発や実際の現場で困った時に助けてもらいやすいコミュニケーションを知っておきましょう
- ×「〇〇をしようとしたらこの様なエラーが出ました。+エラー文のコピペ」【情報不足】
- ◯「〇〇をしようとしたらこの様なエラーが出ました。自分では△△に原因がありそうだと思ったので××を試しましたがどうやら違うようです。こういった場合はどのあたりを確認すると良いでしょうか?+エラー文のコピペ、関連実装部分のスニペ」【自分の努力と必要な情報を相手に伝える】
勤怠Aはただ終わらせるだけでは意味がありません。
勤怠Aを通して成長することに意味があります。
「自分が理解できていないこと」を知り、一つひとつ克服していきましょう!