Mi in progress

研究者ではなく、エンジニアになることを決意した人のブログ。

【プライベートでスクラム回してみた】2019/05/12 ~ 2019/06/09 レトロスペクティブ

概要

仕事でスクラムをやっていて、
この手法はプライベートでの勉強にも役立つのでは?
と思い立ち、プライベートでスクラム的な勉強をはじめました。
今回で6回目のレトロスペクティブです。

Sprint Review 成果物

☕ Stream APIの中で例外処理をワンライナーで書く方法を学んだ

Stream APIを使ったら、try-catchがネストすることが判明。
try-catchがネストしたコード
例外処理をワンライナーで書く方法を見つけたので実装してみました。
ワンライナーで書いてみたコード

🐘 jooqのGradle設定で学んだこと ~ 二度と失敗を繰り返さないように

jooqのGradle設定でかなり時間を使ってしまったため、同じ過ちを繰り返さないように振り返る。

事実
  • 60分で終えるはずのGradle設定に400分かかってしまった。
  • 時間超過の原因はjooqの設定
原因1: Error while reading XML configurationのエラーを思い込みで解釈した
  • configurationに書いていた内容がH2への接続であり、「自分の環境はMySQLだからいけないのかな?」と思い込み、DB設定を修正した
  • エラー詳細を確認すると、真の原因はUnable to load class 'javax.xml.bind.ValidationEventHandler'というClassNotFoundExceptionであった
  • 公式ドキュメントによれば、Java9から一部J2EEのクラスがJDKからデフォルトでは参照できなくなったとのこと
原因2: 異なるバージョンのドキュメントを読んでいた
  • 3.11をインストールしたのに、3.8のドキュメントを読んでいた
  • 大差はほぼないが、XSDのURLが異なる
再発防止のためにできること
  • 自分の出した結論を疑う
    • 「それは思い込みではないか?」という疑念を持つようにする
    • 今回でいうと、DBへの接続であれば接続に関するエラーが出るはずなので「エラー文が言っていることと違う」と自分に突っ込めたと思う
  • ClassNotFoundExceptionが出て、Javaのバージョンが新しいのであれば、公式ドキュメントの移行に関する情報を読んでみる
  • 今自分が動かしているバージョンはなにか?を念頭に入れる

見積との相対誤差はどれくらいあったか

  • |707 - 570| / 570 = 0.24
  • 0.12 (前回)
  • 前回よりも見積との誤差が大きいのは「計画しなきゃ」という意識が薄れているからかも...これはBAD
  • 見積 < 実績になってきたのはGOOD

TRYの振り返り

就業時間外に職場で勉強してみる

  • 毎日勉強することができた

シンプルな状態でjooqの設定をGradleに書いてみる

  • やってみた

Gradleというビルドツール理解に時間を投資する

  • 733minのうち、149minを投資した

KEEP

勉強する時間が増えてきた

  • 実績時間の記録更新👏
  • こつこつ毎日続けるのが自分に合っていることを改めて実感

負の部分を自己認識できるようになってきた

  • 思い込みが激しい、プライドが高い、人と関わると心身を消耗する
  • 今でそういう自分と面と向き合えてこれなかったが、「今の自分は思い込みが激しいな」とか「プライドが高いな」と気づくようになった

PROBLEM

優先順位を誤った

  • 今回最も時間をかけたのが、仕様をまとめるというもの
  • やりたかったことはUnit Testのリファクタリングなのに、仕様まとめに時間がかかってリファクタリングするチャンスを逃して悔しかった
  • 本当に仕様をまとめる必要があったのか振り返ると、不要だったと思う

体調が悪くなる要因が増えた

  • 6月は雨の多い季節のため低気圧で気分も滅入りやすい
  • 生理の時期はダブルパンチになり、気持ちがクヨクヨした

TRY

計画や設計 <<< 実装を意識して、実装以外のタスクは必要最低限に
血虚に効く食材を温かい状態で食べる

中医養生について|誠心堂薬局

ヨーグルト・サラダ・果物だけの朝ごはんをやめる