タグ

ブックマーク / blog.sushi.money (6)

  • テスト、正常系から書くか異常系から書くか - hitode909の日記

    今週は同僚と毎日長時間ペアプロしていた。 おもしろかったのが、同僚のテストの書き進め方で、一番複雑な正常系のテストをちゃんと書いてから、その複雑なテストをもとに、いろんな条件を削っていって異常系のテストを作っていく、というところ。 僕は逆で、入力が空なら何も起きない、とか、一番簡単な異常系のテストを書いて、そこだけ通るのを確認して、よしよし、と進めていって、メソッド来の動きは最後に確認して終わる。 変な進め方だな〜(主観)と思って眺めていたけど、たしかに正常系のテストが通っていれば、あとはバリデーションまわりのチェックとか、例外となる場合のチェックをすれば終わりで、異常系のテストがすごい速さで書かれていておもしろかった。 …という話をしたら、チームメンバーたちは正常系のテストから書きはじめるという人が多くて、正しくことを確認してから、1個ずつ前提となる条件を外してみて試す、と聞いて、同値

    テスト、正常系から書くか異常系から書くか - hitode909の日記
    natu3kan
    natu3kan 2020/10/23
    正常が固まらないと何が異常が思い浮かばないってケース。逆に異常の類型から固めて行って消去法的に正常を浮き彫りにするケース。
  • チーム開発で活躍するために、自分の庭を作れると良い - hitode909の日記

    チームでどうやって活躍するか、まだイメージがついてない、振られた仕事をやっているだけで、仕事をしている間は忙しいけど、確認待ちになるとすぐ暇になってしまう、というメンバーの悩みを聞いていた。 巨大なチーム、巨大なプロダクトだと、すぐに全容を把握するのは難しい。その中で、この範囲なら触れています、任せてください、という庭を作るとよいのでは、という話をした。 思いつきで話したわりには意外といいことを言ってるなと思ったので掘り下げて書いてみます。 庭とは 現代では、庭のある家に住んでる人は少ないかもしれない。うちは実家が田舎だったので庭があって、ボールを蹴って回ったり、石をめくってアリを観察したり、隣の家の庭との境界もゆるくて、冒険と言って隣の家の庭で遊んだりしていた。 大人になってからの庭というと、池袋で遊んでた人が「池袋は俺の庭」と言ったり、JR新宿駅の東口を出たら椎名林檎の庭があることが知

    チーム開発で活躍するために、自分の庭を作れると良い - hitode909の日記
    natu3kan
    natu3kan 2020/06/27
    この仕事といえばこの人って信頼があると強いけど、ノウハウは都度、共通化していかないと属人化や技術的負債と紙一重な難しさ。
  • いつも「時間がない」あなたに 欠乏の行動経済学 - hitode909の日記

    リソースが足りない状態の人間について研究した。そのリソースは時間だったり資金だったりする。 スラック、つまり余裕があることが大事で、100円のおやつとか買うとき、それによって財産が100円減ることを考慮する人は居ない、毎月使えるスラックから支払われることになる。しかし、当に切羽詰まってると、少しのお金を作るために借金し、次の入金は利子の返済に当てることになる。 人間、気になることがあると、判断に使うためにリソースを奪われていって、能力が下がっていく。貧しい状態の人は生まれ持った能力が低いわけではなく、お金や時間の心配をしていることで能力が下がっていくことが実験によって確かめられている。という。 現代日で考えると、テレビに繋いでるレコーダーが残り1時間とか3時間とかで、毎日、次の番組を録画するために、歌まつりを早送りで見続けたり、古いバラエティ番組を消すかどうかで議論したりして時間を

    いつも「時間がない」あなたに 欠乏の行動経済学 - hitode909の日記
    natu3kan
    natu3kan 2019/01/16
    余裕があると不測の事態でも余裕の分で対応できるから、余裕なくて限界なくてギリギリでやりくりを常時ヤリクリは不利だよな。仕事量だけじゃなくて注意力や判断力も希少な資源と。いつか必ず不測の事態は起こる
  • 自分を退職に追い込む動きをすると良い - hitode909の日記

    去年,いまのチームに来たときは僕がフロントエンドのリファクタリングを進めたり面倒を見たりしていた.JS得意な友達がバイトに来てくれるようになり,今はその人がBabelを入れたりしてくれている.彼がバイトに来てくれなかったら,いまだになんとなく興味があるので見ますみたいな感じで一人で面倒見ていた気もする. よくある話で,属人性を高めないように自分の知識を展開しましょうという話があるけど,具体的にアクションプランを考えてもどれが一番良いのかわからない.抽象的に考えると,自分の仕事をなくして退職に追い込むような動きをすると良い.周りのレベルが上がったり移譲されたりしてその分野で価値を発揮できなくなってれば自分じゃなくてもできるようになっている 自分でなくても実装できるようになって,作戦の相談に乗ったりとかしていると,次はそこの属人性が上がってきて,自分のバリューを再びなくすには,誰でも計画を立て

    自分を退職に追い込む動きをすると良い - hitode909の日記
    natu3kan
    natu3kan 2018/09/12
    属人性がほどよく高い方が給料は上がらないが、解雇されるリスクから遠のくので、他人に教える暇がないとか組織の制度の問題もあるけど、属人性って部分最適化の結果ではあるんだよな。
  • なぜひどいコードを書いてはいけないか - hitode909の日記

    ひどいコードは何やってるか分からない ひどいコードが何やってるか分かっても、なぜそうなってるのか、そこを変えるとどうなるか分からない ひどいコードは新たな変更に耐えられず書き直されることになる ひどいコードを書き直すには、ひどいコードがどうなっているか理解し、どこを変えるとどうなるのか理解する必要がある ひどいコードはたいていひどいテストコードが支えていて、テストコードがあったとしてもひどいコードと同様の問題があり、頼れるものが何もない どんなにひどいコードでも、書いた人を憎んではいけない。たとえ自分の書いたコードだとしても、先輩の書いたコードだとしても、ソフトウェアとしてひどい物にはひどいと言っていくことが大切で、だからと言って人に向かってひどいと言ってるわけではない。 最高の仲間たちが日々変化する難しい問題に対処していいコードを書いたり、ときにはひどいコードを書いている、という😇的な

    なぜひどいコードを書いてはいけないか - hitode909の日記
    natu3kan
    natu3kan 2016/02/08
    ひどいコードは絡まった紐だから、快刀乱麻して周囲ごと消滅させて書き直すか、他の部分に影響ないように解くかだから。独立しててひどいコードだけ取り除けれけば解決じゃないのが面倒
  • 気が狂った設計 - hitode909の日記

    大きめのこととか,自信のないところを触るときは,コード書く前に,こういう作戦考えてみたけどどうですかって聞いてみたり,こういうことやりたいんだけど一緒に考えませんかって,いっしょに話して設計考えたりするとよいと思う. 一緒に考えたすぐあとに気が狂った設計とか言い出したらおかしいので,未然に変な設計のままコード書いてしまうのを防げる. 特に辛い気持ちになるのが、「気が狂った設計」「クソコード」「(こんな実装は)有り得ない」といった言葉だ。 Pull Requestのレビューが辛くて会社をやめたい 単に言葉が強いのはよくないと思う.我が社にはそんな強い言葉でレビュー書く人はいない. 我が社には,普段から強い言葉を発する人もいなくて,みんな物腰柔らかな変な言葉を話している. 言葉使いや文体は,ずっと過ごしてると同僚から移ったりするので,普段からそういう言葉を話していると,全体の雰囲気も悪くなりそ

    気が狂った設計 - hitode909の日記
    natu3kan
    natu3kan 2015/07/04
    幾人かと一緒に共犯で気が狂った設計してたら、自分の設計も狂ってるから気が狂ったとは言われなくなるし、うまくいけば互いに狂った部分に気がつける可能性もあり両得で精神に優しい。皆が狂っている可能性は低いし
  • 1