30代Webエンジニア転職奮闘記 プログラミングスクール第8週目

こんにちは。Almontaです!

この記事では、Webエンジニアへの転職を決めた、私のプログラミングスクールDIVE INTO CODE入校から卒業までの4ヶ月間(123日)、更には就職までの軌跡を記していきます。

8週目に入りました!

日記ブログとなり、読者に配慮のない記事となっていますが、プログラミングスクールではどのような過程で、どんな内容を学んでいくのか、これからプログラミングスクールを考えている方には参考になるかと思います。

必要に応じて、本日記ブログを整理し、別でまとめ記事を作成しようと思います。

スクールの4ヶ月間の全体スケジュールがこちら

引用:DIVE INTO CODE公式HP

45日目 2021年6月14日(月)

今日やったこと

  • 賃貸物件アプリの作成
  • 自販機プログラム グループワーク

賃貸物件アプリの作成

ひとつのフォーム(form_withメソッド)の中で複数のテーブルの登録をまとめて行うメソッドを使用したアプリの実装を行った。無事完成!なんか出来た!

課題を通して、新しい機能のところだけでなく、繰り返し部分も、見直してみると、なぜこのコードが書かれてる?と疑問におもうところも多く、かなり理解が深まった。

今日の成果

賃貸物件アプリ課題突破

今日の気づき

  • htmlで横線は<hr>で簡単に描けるのに、縦線はCSSで頑張って作らないといけない。
  • 行間、スペースもwordとかみたいに簡単には出来ない。一文書くだけなので簡単といえば簡単だが。

46日目 2021年6月15日(火)

今日やったこと

  • マインドセット
  • Rspec
  • コールバック

マインドセット

I have not failed. I’ve just found 10,000 ways that won’t work.

Thomas Edison

今日は、Thomas Edisonの言葉について。

今日はあまりにも有名な人の言葉で驚いた。コードを買いているとエラーばかりで失敗ばかりのようだが、同じようなエラーが再発したときには対処することができ、日々成長を感じている。ただ、エラーを起こすのは失敗といえるのかな?エラーは経験であり、失敗ではない。エジソンはもっと挑戦をしてきているだろうから、自分もたくさんの挑戦をしていきたい。

Rspec

Rspecとはテストフレームワークのこと

アプリケーションの正常動作を判断する。

コールバック

コールバックとはレコードの検索、保存、更新、削除、検証処理のタイミングで実行されるメソッドのこと。

更新処理が失敗した時に更新前の状態に戻す際に使われる。

今日の成果

次の課題に入れた!

今日の気づき

  • アプリ開発前準備でER図を作成するためにcacooというツールの使用方法を学んだり、markdown記法といった記述の仕方を学んだりと、コーディング以外にも学ぶことがいっぱい。

47日目 2021年6月16日(水)

今日やったこと

  • 課題タスク作成アプリstep1

課題タスク作成アプリstep1

タスク管理アプリを作成するという課題。

まずは、ペーパープロトタイピングによる画面設計、DB設計しER図の作成、テーブルをmarkdown記法で記載などを行った。

CRUD機能を作成し、まずは、タスクとタスク詳細の入力フォーム、表示機能を作成した。

今日の成果

課題の初歩の初歩、CRUD機能作成まで完了

今日の気づき

  • CRUD機能の作成は今回で5回目くらい、これだけやるともうわからないことはほとんどなくなってきた気がする!でもまだ参考を見ずには書けないのでそのレベルにまでなれるようにしたい!

48日目 2021年6月17日(木)

今日やったこと

  • 課題タスク作成アプリstep1
  • Rails ペアプロワーク

課題タスク作成アプリstep1

昨日作成したCRUD機能にテストを追加。

テストは、system specとmodel specの2つのみを実行した。

それぞれの特徴は以下

System spec とは

実際にブラウザを起動して画面上で操作を行うような、全体をテストをするためのもの。RoutingやController、データベース処理や画面での更新結果などのテストに使う。

Model spec とは

特定のリクエストを送った際に適切なレスポンスが返ってくるかを確認する。

Rails ペアプロワーク

夜、ペアプロワークの宿題をペアの方とやった。内容的にはお問い合わせ機能のnewとcreateアクションのみ作成するといった復習的内容だが、やっぱり一緒にやると学びが多くて楽しい!

今日の成果

テストコードができ、step1完了!

今日の気づき

  • ペアプロでコードを書くところを見られていると、普段はあまり意識していないが、効率的に書かないと恥ずかしいという意識が沸いてくる!
    自動インデントしてくれる拡張機能を入れることにした!

49日目 2021年6月18日(金)

今日やったこと

  • 課題タスク作成アプリstep2
  • DIC Day

課題タスク作成アプリstep2

step2では主に以下4項目の新規要件がある。

  • 表記言語の日本語化
  • タイムゾーンを日本にする設定
  • タスク一覧を作成日時順で表示と、system specでテスト
  • GitHubとHerokuの連携

今日は上2 つの実装が完了した。

3つ目のsystem specが難しい。。

DIC Day

月に一回開催されるDIC Dayに参加した。

卒業生の現役エンジニアの方の話が聞けるイベント。

今日の登壇者の方が、パーソナルスタイリストとエンジニアを兼業されている方ということもあり、テーマは「第一印象は大事」という内容だった。

フリーランスとして、新規案件を選択する際に重視されていることは、”新たなことを学べるか”ということだった。自分も学び続ける人生にしたくエンジニアを選んだため、かなり共感した。

今日の成果

日本語化と、タイムゾーンの設定について習得

今日の気づき

  • DIC Dayに参加してよかった。卒業と同時にフリーランスとして働かれ、一方でスタイリストとして起業もされているすごい方で、経営者の思考を感じられた。

50日目 2021年6月19日(土)

今日やったこと

  • 課題タスク作成アプリstep2

課題タスク作成アプリstep2

  • タスク一覧を作成日時順で表示と、system specでテスト
  • GitHubとHerokuの連携

今日はこの2件を実装し、step2を完了させた。

rspecのテストコードが難しい。。それに尽きる。。

今日の成果

ある企業で新入社員教育に使用されている課題step2完了

今日の気づき

また一からアプリを作成すると気付くことがいっぱいあって楽しい。
1人でもくもくとやり、周りと比べないから楽しいんだろうなきっと

51日目 2021年6月20日(日)

今日やったこと

  • 課題タスク作成アプリstep3

課題タスク作成アプリstep3

昨日step2が完了したため、今日からstep3。step5まである。

作成アプリは引き続きタスク管理アプリで、今日やったのは3点

  • 終了期限欄の追加と、ソート機能追加
  • ステータス欄の追加
  • タスク名検索機能追加

項目を追加するごとにカラムを追加し、migrateしないといけないがその作業が漏れており、エラーに悩まされた。

今日の成果

ソート機能と検索機能について習得

今日の気づき

この課題はかなり難しい。ヒントが書かれているが、ヒントもヒントになっていない。

かなり自走力を問われる。

まとめ

約2週間のカリキュラム日程がとられている、長期戦となる課題に入った。出てくる要件全てが、初めての事ばかり。またテストコードのrspecがとにかくわからない。来週一週間でできれば課題達成。rspecの理解を深めるようになりたい。

コメント