自主制作期間の足跡【第1週_3月26~4月1日】
こんにちは、横溝弘志です。
経験2.5年のエンジニアで、今年1月末に退職し、現在求職中。
福岡を中心に、働き方や自分の進むべき方向性を検討しながら過ごす期間にしようと決め、もぞもぞと行動を始めた28歳です。
『定期的なアウトプットや継続したコミット』を形だけでも真似してみようと思いつつも、どこから手をつけたらいいかが分からず、このエントリを書いています。
自戒と記録を兼ねて、『最大3ヶ月程度で、自分の納得のいく制作物を作る』という漠然としたモチベーションを立てた最初の一週間を、振り返っていきたいと思います。
目次
3月26日
3月27日
3月28-29日
3月30日
3月31日
4月1日
総括
3月26日
自主制作を開始した日。
開発するお題を考える。自身のADHD特性による困りごとに根差したものにすれば、自ずとコンセプトが明瞭になりモチベーションが湧くと考え思案した結果『料理カーナビ』というアイディアに行き着く。
料理自体は不得意ではないのだが、一直線での調理が主。複数レシピを並行して調理する、つまり『品Aの煮込み待ち時間に品Bのカットを行う』といった乗り入れを行いながら手を動かす事が苦手な事により、ワンパンレシピばかり作っている自分に役立つものとしたい。
コンセプトとしては以下のようなもの。(後日別記事としてまとめたい)
・調理の手順をカーナビのようにガイドしてくれるアプリケーションを目指す。
・単純なレシピの記述通りの順番ではなく、その手順で前提となる準備や、煮込みによる放置時間なども考慮した順位づけを行った上で効率的な案内を行う。レシピや手順についてはサービス内のフォーマットに則った入力を事前に行っておく必要がある(後述)。
・ユーザーは「着手」「完了」などを1タップ/1スワイプなどの片手での簡便な動作でフィードバックできるようにする。また、それらフィードバックのステータスに応じて優先順位を再計算する。
・最優先の手順が大きく、2,3位の候補は見出しのみ表示されるなど、キッチンで見やすいUIを設計する。
・調理するレシピを選択した上で「調理開始」を押す事でガイドがスタートする。複数品目にも対応し、待ち時間や「ながら調理」可能な手順による優先順位を適切に評価できる仕組みを作る。
・中断やスリープで進捗が飛ばないよう、ネイティブ環境での動作を目指す。
これらのコンセプトを立てた上で、付随して以下のような構想も立ち上がった。
・レシピの入力のUI/UXをかなり工夫しないと、料理の前に必要なコストが高すぎる。そのため、入力したレシピは公開可能とし、また実際にそのレシピを選択・調理した人のタイムスタンプを集計する事で、実際にかかった時間などの平均値を取る事ができるようになり、献立選択の際の判断材料にできる。
・各手順のフィードバックに絡め、煮込み時間や放置時間のタイマーを内包させる。そうした煮込み系タスクを開始した場合、ガイドと別のキューに最小化して表示することで、次の手順のガイドも行える画面構想。
この日、以下の作業を行った。
・GitHubにリポジトリを開設
・ごく基本的なts環境を用意
・生成AIに答えではなく考え方やキーワードを聞く形で、コンセプトを煮詰めるべく、JSONで用意したレシピを依存関係基準でソートするコードの作成。単一のレシピについて、トポロジカルソートのみを行う。
実働:6時間。うちコーディング作業は4時間程度。
夜は、翌日作るあんぱんのために小豆を2時間煮詰めて、あんこを作る。
ちなみに小豆250gから800gほどあんこが出来る。
3月27日
前々職の花見会にお誘い頂いており、定例となっていたパンの差し入れをすべくあんぱんを作る。過去最大の24個の製造。9時に調理を始め、14時開始には遅刻したものの、あんこぎっしりで美味しく調理できたので満足。お花見会も歓迎してもらえて非常に晴れやかな気持ちで一日を終える。この日の作業はなし。
3月28-29日
友人らと徹夜でのボードゲーム会。
3月30日
スカウトいただいた企業様とカジュアル面談を行う。企業風土などだけではなく、実際の中途採用の空気感などの聞き取りができた。尚、この日も作業ができなかった。
3月31日
3日間で散らかり倒した家の片付けなどに奔走。内省に没頭したり、花見のための散歩に出たり、自分の乱高下の操縦という意味では大きく大事な一日を過ごせたが、作業としては沈黙。
4月1日
前日の時点で、やはり一人での環境だとどうやっても集中しない、手が動かない。と危機感を抱き、昼前より天神の赤煉瓦倉庫「エンジニアカフェ福岡」に出頭。
登録こそしていたもののほぼ初めての訪問だったので、様子を伺いながら自主制作の作業にあたる。この日のコミットは以下。
・依存関係によるトポロジカルソートに加え、放置可能な(待ち時間のある)タスクを優先する形でのソート
・複数レシピの手順を乗り入れさせる形でのソート
昼飯を持ち込まなかった事で、限界を迎え17時過ぎに撤退。コーヒーブレイクを除けば4時間+程度の稼働。
総括
稼働可能な日は多くあったものの『着手ができない』という課題が浮き彫りになった一週間であった。
前職でのフルテレワーク環境での課題をそのまま引き継いだ結果となっており、これからの過ごし方の大きな指針としたい一週間でした。