やったこと
5日間出勤
5日間出勤、フルリモート。
タスクが常に割り込んでる問題。
これはもう諦め。
あと自分の担当箇所以外で信頼性や機能面が把握できなくなってきた問題。
かといって自分がすべて出来るわけでもないので、積まれたタスクをこなしつつ気づいたまずい点を書き出して共有するくらいしかなさそう。
難しいのが、完成している(実は不具合あり/一部未完成)みたいな実装を土台とした新規実装をする場合。
大まかに工数見てから実装するんだけど、土台が崩れてるので実装時にバグに気づいて修正せざるを得なくなるパターン。
直接は関係なくても関連箇所でバグってると問題になるのでついでに修正することになるパターンとか。
軽微な不具合ならまだ分かるんだけど、2,3回違うデータ入れたら動いてないの分かるとかそもそも実装足りてないとかがあるんで難しい。
出来てないことを共有することの難しさとそれがどれだけ重要かを身を以て知っている状態である。
TDDはある程度有効かもしれんけど…そこまで行かなくてもテストを書くことで改善する可能性もありそう。
プログラマーにとってデバッグする能力・論理的に(テスト)パターンを洗い出す能力・仕様/実装の穴を発見する能力はとても大切だなと。
実装とか設計とかよりよほど重要だとは感じるけど、この辺を測ったり鍛えるのはどうすりゃいいんだろうね。
まあ実装とか設計の基礎スキルだとも思うんで難しいね。
考え方・思考の組み立て方を教えることになるのでどうするのがいいんだろうなぁ…。
こうやって思考は吐き出したんで、後はいい対策を考えて実行したいね。
転職
面接と面談を少しだけ。
面接はホワイトボードで簡単なWebサービスの大雑把な設計をする感じ。
その時考えうることは口とボードに出したんだけど、後から考えるとまだ詰めれるとこあったなーとは思う。
あと、使えるクラウドサービスの知識とか速度面の知識が少なくて聞きまくったのでそこがどうなるか。
まあ実際設計する時はあんな感じであることは知ってるけど詳しくは知らない知識に関して他に聞いたり調べたりって流れはよくするので、
あれで知識が足りないとかやり方が合わないとかで駄目なら仕方ないかなと。
やれることはやったはず。
友人の会社の概要を集めつつあるので、落ち着いたらカジュアル面談するかもなー。
こちらは社会人経験1年経ってからにはなりそうだけど。
少なくとも人を誘える程度にはいい職場っぽいしうまいこと噛み合えばありがたい。
その他趣味
プライムデーでいっぱい買った。
・椅子:エルゴヒューマンプロ
・椅子の下に引くやつ
・ディスプレイ:LGのウルトラワイド
・モニタースタンド
Amazonカードの上限に引っかかって焦った。
予備のお支払い方法とかいうのは絶対OFFにしておくべき。
選んだ支払い方法と別のところから払われるのは恐怖でしかなかった。
高いもの買っちゃったのでお仕事がんばらねば。
VTuber。
蒔田つぐみさん。
https://www.youtube.com/channel/UCfzn3OvxW48R7v2yFmKZ9Gw
ASMRでは久々にハマれそう。かわいいのと音が好き。
もかたんの無期限休止が出てた。ますかれーどを見始めたきっかけでもあるしいつの日か復帰してくることを楽しみにしたい。
えるたそも体調崩してるみたいだし、休み休み長く活動を続けてもらえれば嬉しい。
ちおちゃんもお休み中だし、ゆっくり戻ってきて欲しい。
推しを毎日見れるのは嬉しいけど、毎日配信って結構異常だよなと。
最推しは頑張りすぎるタイプなので体と心をいたわる時間を作って欲しいね…。
楽しいこともオーバーペースで続けてるとどこかで糸が切れちゃうのは身を以て(ry。
あとはそういうのとは無関係に会長の卒業がすぐそこまで来てしまった。
今でもその先の光景は想像できないけど、どうなるんだろうか。
関わってる人全員がやりきれない思いはありそうだけど、あと1週間応援して、笑って見送れるといいな。
6月末は他にも卒業があるので、色々憂鬱にはなってきそう。
ゲームはFavoriteの新作とGIKEI、ユキイロサインを進め中。
steamのリモートプレイでsteam外のゲームをストリーミングすることを覚えたので、プレイするハードルがかなり下がった。
GIKEIは1ルートクリアして面白くなってきたので、早めに終わりそう。
技術的なことを殴り書きするコーナー
金券管理のロジック的部分を上手いこと書いてた。
あとSQLとバックエンドロジックを組み合わせた上での効率的なプログラムを組むようになった気がする。
問題はSQLを用いるプログラムが共通化しづらくなってロジックを書くたびにSQLが増える場合があること。
この辺は速度優先か汎用性優先で呼び出し回数の増加を許容するかが難しい気がする。
特にクリーンアーキテクチャで層を明確に分けてる場合はORMを直接叩く感じにはならないので余計に難しい。
私の考え方的にはとりあえず動かす→リファクタリング→効率化の手順だと思ってるんで、速度面は妥協して冗長な呼び出し方を選択することが多い。
n+1みたいな明らかにヤバイやつはもちろん除去するけど、データ量が増えても呼び出し量が変わらんところあんまり気にしなかったり。
フロント側ではatomic designの良さがようやく分かってきた。
とはいえ厳密には従わないけど、原子・分子・テンプレート・ページくらいの4階層で考えるのはかなりあり。
問題はデザイン側で原子や分子に当たるところがちゃんと定義されてなかったり微妙に違うのが乱立していることだけど。
そのあたりがきっちり整理されているなら、Angularの考え方とかなりマッチする方法論だと感じた。
あとは再帰を用いた複数のオブジェクトの表示位置計算とか必要なバッチ作成とか。
上で書いてるatomic designの考え方を元にした冗長になっている部分のコンポーネント分割と共通化も。
実装のついでじゃないと時間取れないんでコツコツとやってる。
今週の調子とか
テンションは普通。
転職関連で課題はあれど面接はなかったので(上のは来週のをこなしちゃったので書いた)、気分は楽。
仕事と課題以外でプログラムやってないけど、ゲームとか配信は見れたしお買い物出来たのでよし。
買い物はねー、所有欲なのか本当に使うのかの見極めが難しい。
両方ではあるんだけど、できれば本当に必要なものを絞りに絞って買っていきたいとは思う。
一時期イラスト系の本とかグッズで欲望に流されすぎたのが教訓として残ってるので、きっちり自制しなきゃね。
動画といえば動画系のゲーム実況(ゆっくりとかボイロ)を全然見れてない件。
そのうちまとめてみると思うけど、ライブ配信は長時間見るのでそれにリソース奪われてる感じ。
コンテンツの楽しみ方としては別なので、時間の問題だけなんだけどそっちも絞りつつ追っていきたいねー。
その他感想とか
そろそろカラオケ行きたい。
歌枠で色々好きな曲ができたので、いっぱい歌いたい。
あとは…、現状に慣れてきているのがいいのか悪いのか。
働いて、課題して、面接して、落ちて、みたいなルーチン。
そろそろ何かしら変化を起こしていきたいよね。
このままじゃダメってほどじゃないけど、物足りない。
現状維持もすごい大事でエネルギーを使うことというのは知ってるけど、変化が欲しくなるのは仕方ないよね。
この状況を維持することに力を注ぎつつ、ほんの少しづつ何かを変えていってみましょうか。
さて今週は「Ascension」。