2024.4.1~2024.4.14【週報】2週分

今週の振り返り

目標と成果

目標 成果 反省・感想
ReactSPAメモアプリ提出 OKもらえた!
バイトの日も1時間以上勉強する × 1日できず…

やったこと

  • ReactSPAメモアプリ提出→OK!
    CSSかなり忘れてて復習しました…!
    4/1に提出し修正を経てOKもらいました!
    主な修正点としては、stateの再検討、LocalStorageへの保存をJSON形式へ変更、submitによるページ全体のリロードをやめて再レンダリングするように修正、などでした。

  • 「React実践の教科書」読了!
    Reactへの苦手意識を減らしたくて買った書籍を読みました!
    「DOMとイベント処理はJavaScriptだけでできるけど、複雑に長くなってしまうので、Reactを使う」という根本を理解できていなかったので、JavaScriptから再度学習できて理解が深まりました。
    レンダリングの適正化やContextに関してもわかりやすかったです。
    また、モジュールバンドラー、トランスパイラ、ホスティングサービスなど、今までふわっとしか分かっていなかった部分も知ることができて良かったです。
    初心者向けで買って正解でした!

  • ReactContext課題提出!
    上記書籍を参考にして提出しました!返ってくるのを待ちます〜

  • リーダブルコード輪読会参加、終了!
    主催していたリーダブルコード輪読会が終わりました!
    積読になってしまっていたこの書籍を読み切れて良かった!
    「読みやすいコードを書く」という内容はもちろん、C++のコードをみんなで相談してなんとか読み解きながら進めていけたのはとても勉強になったし助かりました。
    また色んな方がきてくださったおかげで、普段あまりお話ししたことがなかった方々ともお話しできて楽しかったし色んなお話ができて興味も広がりました!
    参加してくださったみなさん、一緒に主催してくださった共同主催の方、ありがとうございました!

  • 勝手にモブプロ会参加
    VSCodeのショートカットコマンドを色々教えていただいて、以降使うようにしています!
    Dockerの勉強が始まって、全くDockerの知識がなかったので勉強になってます。
    入門 Docker
    Dockerとは、imageについて、Dockerfileについて、をやりました。
    次回も楽しみです!

  • ブルーベリー本輪読会参加
    4/10からブルーベリー本輪読会が始まりました!
    TypeScriptの学習はプラクティスにないので、楽しみにしてます!

  • Omotesando.rb#96に参加
    雑談で、初めてRubyKaigiに参加するので色んな方に過ごし方を教えていただきました!
    いつもありがとうございます。
    私もはやくエンジニアとしてOmotesando.rbに参加したい…!

今週の学習時間

4/1 ~ 4/7

学習時間:17時間30分
学習日数:6日

4/8 ~ 4/14

学習時間:25時間30分
学習日数:7日

今週あった出来事&感情

  • FBCのプロフィールを新しくした
    4/1にプロフィールを書き直しました。
    今までは私個人のことをあまり書いていなかったので、私という人物をもう少し分かるように書いてみたつもりです。
    結果、好評?だったようで嬉しかったです!

来週の目標

  • ReactSWRの課題を提出する

来週の予定

  • FBC企業ドリンクアップ参加

2024.3.25~2024.3.31【週報】

今週の振り返り

目標と成果

目標 成果 反省・感想
「ReactでSPAを作る」課題を提出する × 大枠はできたがCSSが間に合わず…

やったこと

  • ReactSPAメモアプリ
    一覧表示、新規作成、編集、削除の機能はOK!
    あとはCSSと最終確認のみでしたが、CSSを忘れすぎていて提出できませんでした😭

  • リーダブルコード輪読会参加
    テストを読みやすく保守しやすいものにする、最小のテストを書く

今週の学習時間

学習時間:15時間45分
学習日数:3日

今週あった出来事&感情

  • ミートアップ参加
    雑談には参加できませんでしたが、卒業生の方々のお話を聞けて勉強になりました!

  • 家族旅行:名古屋
    旅行自体はとても楽しかったです!たくさん食べました😊
    車での移動はしんどかったです…

来週の目標

  • ReactSPAメモアプリ提出

  • バイトの日も1時間以上勉強する
    今週は5日バイトなのでなんとか1時間確保するように頑張ります

来週の予定

  • Omotesando.rb #96 に参加する

2024.3.18~2024.3.24 【週報】

今週の振り返り

目標と成果

目標 成果 反省・感想
「Reactを学ぶ」を終わらせる 嬉しい😭
「ReactでSPAを作る」課題を提出する × 3割程度
日曜の夜に週報を書く 👍

やったこと

  • Reactを学ぶ
    stateの管理、リデューサ、コンテクスト、ref、エフェクト、カスタムフック
    やっと終わりました…
    予定より時間がかかってしまい次のメモアプリが提出まで至らなかったことが反省です

  • ReactSPAメモアプリ
    一覧表示、新規作成、はとりあえず実装できた

  • リーダブルコード輪読会参加
    ラバーダッキング、欠かせない機能の過剰見積もり・実装労力の過小評価、短いコード

  • Rails輪読会参加
    コールバックオブジェクト
    最後まで読み終わり、輪読会終了しました!!🙌
    嬉しい〜!!!
    主催者のお二人、参加者のみなさん、本当にありがとうございました!!✨

今週の学習時間

学習時間:26時間15分
学習日数:7日
短い…
平日の学習時間が短かったことが失敗でした

今週あった出来事&感情

  • フィヨルドの方々と小籠包を食べに行った!
    小籠包も他のお料理も美味しかった👍 学習のこと、就活のこと、仕事のこと、
    いろんなお話ができて楽しかったです😊

  • 新春輪読会EXPOの動画を見た
    自分がオーガナイザーをやったFBCのイベントの動画がアップされたので見ました。
    他者から見た自分がどのようにうつっているのかが分かって勉強になりました👀

  • 人生で初めてビッグマック食べた
    やっぱりダブチが好き

  • 髪切った
    さっぱりした

来週の目標

  • 「ReactでSPAを作る」課題を提出する

来週の予定

  • 家族旅行:名古屋
    3日間学習から離れます…
    旅行自体は楽しんでこようと思います!
    他の4日間で学習を進められるように頑張ります!

2024.3.11~2024.3.17 【週報】

今週の振り返り

目標と成果

目標 成果 反省・感想
Reactの「インタラクティビティの追加」を終わらせる できたけど…😓
Omotesando.rb#95の参加記録記事を投稿する 👍

やったこと

  • Reactを学ぶ
    state難しい…もっと進めたかった

  • Omotesando.rb#95の参加記録記事投稿
    Omotesando.rb#95に参加しました! - motohiLog
    自分もなにかしらを還元できるように、学習をすすめたい…!

  • Rails輪読会参加
    ActiveModel、フォームオブジェクト、プレゼンター、Concern

  • リーダブルコード輪読会
    タスクの分割、やりたいことの言語化・コードの修正

  • 勝手にモブプロ参加
    自販機プログラム続き
    RSpecでテスト書いてメソッド実装して〜の流れにだいぶ慣れてきました!

今週の学習時間

学習時間:34時間30分
学習日数:5日

今週あった出来事&感情

  • とても嬉しいことがあった!!!
    人のことなので詳細伏せるのですが、本当に本当に本当に嬉しかった!!!
    自分の気持ちも一気に上がったし頑張ろうって思いました!🙌

  • バイトで2日とも残業2時間した
    残業するとPCに向かう元気がなくなる…
    1時間でも勉強したいところ

来週の目標

  • 「Reactを学ぶ」を終わらせる

  • 「ReactでSPAを作る」課題を提出する
    ここまでいきたい願望…

  • 日曜の夜に週報を書く
    再度目標に設定

来週の予定

  • 小籠包を食べにいく
    とても楽しみ!!!😊

  • 髪を切る
    やっとだ〜うれしい〜💇‍♀️

Omotesando.rb#95に参加しました!

3月7日にOmotesando.rb#95に参加しました!
【オフライン開催】Omotesando.rb #95 - connpass
参加しての感想・自分で気になって調べたことを記録しています。
間違い等ありましたらコメントいただけたら幸いです。

会場提供:タイミー様 ShintaniTeppeiさん

Timee:スキマバイトサービス、リリースから約5年、ワーカー700万人

企業・サービスの説明のあとにRailsの話がありました。

「has many throughの落とし穴」
Rails の has many through 経由でモデルを削除すると destroy callback が呼び出されない - カレーの恩返し
Shintaniさんのブログに詳細がありました。
そしてFBC卒業生で今回参加されていたSakiさんの記事がわかりやすいです。
has_many: through で dependent: :destroy を付けないとafter_destroyが走らない - Saki

Shintaniさんからご連絡をいただき、User.find(1).books = [ ]をするとBookingをDelete ALLするとのことでした。
たしかにDeleteALLされ、設定していたafter_destroyコールバックは実行されませんでした。

Userモデルのhas_many :books, through: :bookingsdependent: :destroyを追加します。
User.find(1).books = [ ]を実行するとDELETEがそれぞれ実行されafter_destroyコールバックもそれぞれ実行されました。
dependent: :destroyの有無で挙動が変わることが知れて良かったです。

最初うまく再現できずShintaniさんからもご連絡いただいたのですが、再現できていなかった原因は自分がモデルを書き間違っていたことが原因でした。大変失礼致しました。
助言してくださってありがとうございました!

hamachanさん

LispしてたらRubyが楽しくなったので共有します BUPG編」
ボトムアッププログラミング:BUPG
先日知った言葉だったので、知っている単語というだけでテンション上がりました!
プログラムの下流から組み立てて、全体の設計を煮詰める前に書き始められることが特徴。
小さい関数を書いたらちょっと大きい関数を書く、と言った具合進めていくそうで、
「小さい成功を積み重ねられる開発は楽しい」とおっしゃっていました。
また、エラーを見つけるのも簡単で、理由は最後に作った関数が原因だから、とのこと。
そこまで順調だったわけだから、確かになと思いました。

またLTではSlimuxというものを使っていて初めてみたのでとても面白かったです。

kaibaさん(@kaiba)

「技術書典と私 [2018~]」
前回のLTにも技術書典のお話があってそこで初めて技術書典の概要を知ったのですが、私は技術書典に行ったことがないので興味深く聞かせていただきました!
売れなくても良い、書きたい、という思いから本を書いているそうです!
LT内ではお金の話等も含めてかなり詳細を話してくださっていて、技術書典に興味がわくLTでした!
過去のkaibaさんの本はこちらで買えるそうです↓
kaiba - BOOTH
表紙が独特で目をひきます!👀
Railsで苦戦したElasticsearch気になる…🐟

今年も新刊を出されるそうです!

funaki0415さん(@funakimasano)

STI導入で開発スピードアップ!一元管理で外部連携をスムーズに」


STIがわからなかったので調べました。
STI:単一テーブル継承(SingleTableInheritance)
Active Record の関連付け - Railsガイド
【Rails】単一テーブル継承(STI)について #Rails - Qiita
同じ設計のテーブルを異なるモデルで共有するもの、のようです。
STI自体も初めて知ったので、X上がざわついているのか分からなかったのですが、
以下の記事のアンケートへの返答やコメント欄をみるとなかなか意見が分かれているというか、安易に使うと痛い目をみることもあるものなのかなぁと思ったりしました。
みんなRailsのSTIを誤解してないか!? #Rails - Qiita

今回STIを導入した理由は、多数の外部サービスとの連携が必要になり、チームごとに効率よく実装する必要があったこと、そして複雑な処理などが不要だったことだそうです。
メリットとして、新しい外部連携をするときにフォーマットがあると楽、とおっしゃっていました。
そして、STIはあくまで手段で、設計レビューを通じてSTIが適切な手段かを常に評価している、とのことでした。

業務に関するお話は自分がまだ触れたことのない部分なので、聞いていて興味深かったです!

naoさん(@philosophy_note)

「壁を乗り越えるためにGemを作成したら無知を知った話」


競馬予想が好きからの競馬予想AIアプリ開発からのエンジニア転職はパンチがきいてました🐎
業務の中で取得できない文字がある、という悩みから文字を変換するgem「mojicon」を作られたそうです。
インストールして実際に色々やってみましたが面白かったです!

そのあと出てきた「Railsエンジン」を知らなかったので調べました。
Rails エンジン入門 - Railsガイド

エンジン (engine) は、ホストとなるRailsアプリケーションに機能を提供するミニチュア版Railsアプリケーションとみなせます。


Railsはエンジンを一種の「完全なプラグイン」とみなしている点です。

Gem、Railtieプラグイン、Engine(full/mountable)の違いとそれぞれの基礎情報 #Ruby - Qiita

よりRailsアプリケーションの中身に踏み込みたい時、つまり、既存アプリのControllerやModel、Routing等を拡張したい時に利用。

Railsエンジンをgemとして配布できる、とあったので、ほぼ同じようなものと考えてよいのか…?
gemはOSSでエンジンはOSSでなくても良いということ?
なかなか難しく理解が浅いですが、Railsエンジンというものがあることが知れて勉強になりました!

いけむらさん(@fd0)

Ruby on cygwin (2024/3月号)」


CygwinRubyのバージョンを2.6から3.2まであげたというお話でした。
公式のメンテナになるところからのスタートとのことで、まずそこのやりとりから大変だったとおっしゃっていました。
CygwinWindows上で動作するUNIX互換層となるソフトウェアとのことで、WSLが一般化してからそっちを使う人が増えてそうとのこと。
ちなみにご本人はMacの中のWindowsCygwinを入れているとおっしゃっていました!すごい…

メンテナになるにあたりメーリングリストでやりとりをした、というお話で参加者の方々が「MLは大変だ…」と口々におっしゃってたのが個人的には印象的でした。
(自分はMLを使ったことがないので大変さが分かっていません…)

Fohte(ふぉーて)さん (@fohte)

「rubocop-daemon 裏話 OSSの苦悩」


前日のGotanta.rbでのLTの資料


普段私はgemを利用していて、正直OSSオーナーの苦労を考えたこともありませんでした。
LT内でお話されていた苦悩は、英語に関する共感できるものからシェルスクリプトのコマンドがOSで挙動が異なるといったがっつり技術的なものまで様々でした。
(ぜひスライドみていただきたい…👀)
OSSはとても便利で実装も見れる(今は見ても分からないことがほとんどですが…)し、ユーザーとしてはとても良いのですが、
当たり前ですがそれを作った人がいて人が管理しているものだということを忘れてはいけないなとLTを聞いていて反省しました。
OSSオーナーへのリスペクトを」と最後におっしゃっていて、本当にその通りだなと思いました!

雑談

FBC生&卒業生の方々とプラクティスの苦悩や就活の話などできて楽しかったし励まされました!
また、RailsGirlsTokyoでコーチをされていた方が私のことを覚えていてくださったのもとても嬉しかったです!
帰る時にも参加者の方と一緒に駅まで歩いたのですが、
いろんな地域.rbがあるなかでOmotesando.rbはとても和やかだから初心者も参加しやすい会だとおっしゃっていて、そんな会に出会えて私はラッキーだな🙌と思いながら帰りました!

まとめ

今回もLTは難しかったですが、面白かったしとても勉強になりました!
そして少しずつですが他のエンジニアの方々とお話できるようになってきてとても嬉しいしありがたいです!
今後も参加したいと思います!
ありがとうございました〜!

2024.3.4~2024.3.10 【週報】

今週の振り返り

目標と成果


目標 成果 反省・感想
Reactの「UIの記述」の部分を終わらせる ⚪︎ なんとかできた!
週報を日曜日の夜に書く ⚪︎ 習慣にしたい!

やったこと

  • Reactを学ぶ:UIの記述
    少しずつ難しくなってきた…

  • Rails輪読会参加
    サービスオブジェクト、ユースケースのロジック

  • リーダブルコード輪読会参加
    無関係の下位問題、ラッパー関数、デフラグ

  • 勝手にモブプロ参加
    自販機プログラムを作る
    がっつりモブプロで自分もマイクONで参加させていただきました!楽しかった!

  • emorihouseのPR作成
    自己紹介PullRequestを作成し、無事マージされました〜!🙌
    RubyKaigi楽しみです〜!
    emorihouse

  • Omotesando.rb#95に参加
    今回4回目!いつもながらLTは難しい!
    でも初学者でもいられる和やかな雰囲気がありがたいです!
    FBCの方が毎回誰かしらいるので、学習の話を相談できて助かります🙏
    また、少しずつではありますがFBC以外の現役のエンジニアの方々ともお話しするようになってきて嬉しいです!
    こちらもはやく記事にまとめたい…

今週の学習時間

学習時間:14時間15分
学習日数:6日
勉強時間が短い…反省です

今週あった出来事&感情

  • 週4バイトした

来週の目標

  • Reactの「インタラクティビティの追加」を終わらせる

  • Omotesando.rb#95の参加記録記事を投稿する

来週の予定

  • なし!!!勉強する!

2024.2.19~2024.3.3 【週報】 2週分

2.19~2.25の振り返り

目標と成果

目標 成果 反省・感想
はやく元気になる ぼちぼち○ 体は元気になってきたけれど…

やったこと

  • 自作npm提出
    process.exit(1)、ファイルのパスを取得、デフォルト引数など

  • Reactのプラクティス開始

  • リーダブルコード輪読会参加
    変数、スコープ

  • Rails輪読会参加
    Docker

  • 勝手にモブプロ参加
    双方向関連付け、SQLインジェクションRailsの慣用句

今週の学習時間

学習時間:28時間15分
学習日数:6日

今週あった出来事&感情

  • オンライン合同企業説明ドリンクアップ参加
    以前参加したときよりも自分ごととして捉えられるようになってきました👀
    ラクティスが進んできたからだと思います

  • 先週体調不良で休んだバイトの分を取り戻すべく週末から懸命に働いた

  • 週末頃からなんだか気持ちが落ち込む時間が増えた

2.26~3.3の振り返り

目標と成果

目標 成果 反省・感想
勉強時間を増やす × むしろ減ってる
RailsGirlsTokyoでの目標を達成する とても楽しかった!

やったこと

  • 自作npmOK!
    正直アイデアでかなり苦戦しましたが、なんとか形になって良かったです🦷
    自作npm

  • Reactを学ぶ に突入
    ここでだんだんつらくなってきた

  • リーダブルコード輪読会参加
    スコープ、変数の変更、関数型言語

  • Rails輪読会参加
    Dockerと秘匿情報、値オブジェクト、composed_of、サービスオブジェクト

  • 勝手にモブプロ参加
    GraphQL
    難しかった…

今週の学習時間

学習時間:10時間45分
学習日数:5日

今週あった出来事&感情

  • 平日はどんどん気持ちが落ち込んでいった
    Reactへの苦手意識とバイトの忙しさで、気持ちがなかなかあがっていかず落ち込んでいました…
    ですが、それをDiscordでつぶやいたところFBC生が何人もアドバイスをくださいました😭
    とても嬉しかったし、ありがたかったです。

  • 角谷トーク2022を見た
    sadanoraさんのアドバイスで見てみた→角谷トーク2022 ABOVE ALL, MAKE IT FUN! 視聴メモ - sadanora's scrapbox
    自分の「楽しい」、「楽しむ」について考えさせられました〜見て良かった!

  • ミートアップに参加
    以前は関わりのない方が多かったけど、最近は卒業生される方とも関わりがある方が多いから卒業式もとても感慨深い〜✨

  • 第16回RailsGirlsTokyoにスタッフとして参加
    参加させていただいて本当に本当に良かった!
    学習意欲も戻ってきた感じがしました!🔥
    詳細はこちら→第16回 Rails Girls Tokyoに参加しました! - motohiLog

  • 運動を増やすためにFit Boxing2を購入
    ゴリゴリのインストラクターに喝を入れてもらってやっています🥊
    運動を増やして少しでも気晴らしになるように続けていきます

来週の目標

  • Reactの「UIの記述」の部分を終わらせる

  • 週報を日曜日の夜に書く

来週の予定

  • Omotesando.rbに現地参加!
    前回オンライン参加だったので楽しみです!