加藤潤一(かとじゅん) Profile Banner
加藤潤一(かとじゅん) Profile
加藤潤一(かとじゅん)

@j5ik2o

Followers
8,400
Following
2,346
Media
892
Statuses
54,614

INTP-A/kubell社勤務/ZOZO, Leverages 技術顧問/DDD/CQRS/Event Sourcing/Event Storming/Rust,Go,Scala,Java/Tesla/ 依頼は→

荒川区、台東区
Joined January 2008
Don't wanna be here? Send us removal request.
Explore trending content on Musk Viewer
@j5ik2o
加藤潤一(かとじゅん)
2 years
iPhoneが登場したとき、某研究所の技術者たちは「その要素技術はすべて日本が持っている」と語ったらしい…。まぁそらそうでしょ。小さいPCなんだから。破壊的イノベーションは高度な技術があれば実現できる、と思い込んでるところあるよね。
5
186
833
@j5ik2o
加藤潤一(かとじゅん)
2 years
「C言語なら所有権なんて考えなくてよかったのに、Rustだと考えることが増えた」みたいな話を耳にしたとき「えっこの人 自分でメモリやリソースの管理できないままCでコード書いてたのか…」とドン引きした覚えがある
6
117
505
@j5ik2o
加藤潤一(かとじゅん)
5 years
エンジニアの採用は企業からみたらレッドオーシャンなんであの手この手なんですが、本当の課題は入社した後のエンゲージメントなんだよね…。そしてエンゲージメントはチームに宿るんだという論文を学んでいる。だから簡単にチームを解体するのはもったいないね。
1
127
463
@j5ik2o
加藤潤一(かとじゅん)
5 years
最近、Userというモデル名を例に説明すること自体やめた方がよいと思ってるんです。ユーザーはシステム外。アカウントや住所や氏名や職位や部署。一見Userに含まれそうだけど同じモジュールに閉じ込める必要あるかな。UserAccount, UserProfile, Employeeとか目的ごとに分けないと神モデル行き。
4
131
455
@j5ik2o
加藤潤一(かとじゅん)
5 years
実装コードがクソコードとかウンコードとかいうのはいいのですが、散々リファクタリングして時間掛けて苦しんで、最後に「実装というより仕様が複雑でした」というオチになるのが一番最悪なのでリファクタリングする前にその仕様で大丈夫か確認しましょう…。
0
135
422
@j5ik2o
加藤潤一(かとじゅん)
3 years
クリーン・アーキテクチャという形式的なアーキテクチャパターンがあるわけではなくクリーンなアーキテクチャを実現する原則や観点をまとめたものが「クリーン・アーキテクチャ」。ボブおじさんが例示したHowを無根拠になぞることがクリーン・アーキテクチャではない、という理解でいいと思う
1
85
331
@j5ik2o
加藤潤一(かとじゅん)
3 years
queueのスペルを思い出すときは、「きゅーうえうえ」っていつも頭の中でつぶやいている
2
88
319
@j5ik2o
加藤潤一(かとじゅん)
2 years
”Web系はDB偏重すぎでは”というのはDBが悪いのではなくHTTPが原因なんですよ…本当は…。
1
56
277
@j5ik2o
加藤潤一(かとじゅん)
5 years
これな。大量退職を経験した過去の経験からいうと。中間管理職の人たちが情報の省略・歪曲・一般化を誤って行うことが原因かなと思う。良かれと思うとか関係なく…。なので必要な情報は公開されていて各自の頭で考えて行動できるかに尽きる。当たり前のように聞こえるけどなかなかむずい
@kawasima
kawasima@99卒
5 years
話に聞く限り、 事業を拡大する→エンジニアが一気に増える→マネージャも増やす→特定のマネージャとエンジニアが衝突する→エンジニア大量流出 のパターン多すぎなので、早いことマネージャに人類以外をアサインするソリューションが求められる。
0
202
477
0
141
275
@j5ik2o
加藤潤一(かとじゅん)
3 years
Rustで作ったコンテナが4秒でスケールアウトして、消費メモリもKB単位だとか。これ実質Lambdaでは?えっほんとに動いてんの?というツッコミが社内チャットに流れてる。ワロタ
1
32
248
@j5ik2o
加藤潤一(かとじゅん)
5 years
クソコードを晒して知見を得る姿勢がある人たち尊敬します。純粋にね。いろいろ背景あったわけで、えーってこともいろいろある。でもクソコード晒さないで、マウンティングする人たちは尊敬できないね。やっぱり行動を起こすってすごいコトですよ
0
32
210
@j5ik2o
加藤潤一(かとじゅん)
5 years
技術負債が溜まったクソコード?はまさに考古学の研究者のような姿勢が必要でまず背景も知らずに批評するのではなくなぜそうなったかコードやドキュメントを探索。まぁだいたいそういうのは不明なので関係者を取材したりする。当然、コード書いた本人がもう退職している場合もある。またコードを見る…
1
62
199
@j5ik2o
加藤潤一(かとじゅん)
4 years
#Zenn で何か書いてみようということで、Scalaの薄い入門本を書いてみた。 良かったらどうぞ。 「楽しいScala 気軽にはじめてみよう」
2
43
192
@j5ik2o
加藤潤一(かとじゅん)
2 years
「悪いコード」というのはコードだけみると悪いかもしれないが、他の目的を達成しているのではないかという見方が必要。一介のエンジニアの範囲を超えるかもしれないが実際の仕事ではそういうメタ思考をしないと目の前のコードを批判できないこともある。そういう観点をみんなに持ってほしいと思ってる
1
22
178
@j5ik2o
加藤潤一(かとじゅん)
4 years
たぶん、Userモデルなんてないよって言い出したのは、僕ですが、わかりやすくまとまっている!がーさす!みんな読むべき資料ですね!そして祝出版! / 2件のコメント “クソコード動画「Userクラス」で考える技術的負債解消の観点 - Speaker Deck”
1
47
174
@j5ik2o
加藤潤一(かとじゅん)
2 years
この論文(2021年)が面白い。マイクロサービスの分割単位についての論文。 No Free Lunch: Microservice Practices Reconsidered in Industry 51のプロジェクト中4プロジェクトがDDDの指針に沿ったが、大半のプロジェクトはエキスパートの経験に基づいて分割した、と。
2
22
171
@j5ik2o
加藤潤一(かとじゅん)
2 years
Kotlinのサーバサイドは微妙というのはだいぶ前につぶやいたことあるけど。エコシステムが完全にJavaだし、Java開発者がターゲット。で、Javaの進化がかなり進んでるので長期的にみたら別にJavaでいいんじゃねになりやすい。
1
34
162
@j5ik2o
加藤潤一(かとじゅん)
3 months
仮説として、採用はどこもよその畑で育ったエンジニアを引っこ抜いてる感じで、基本的に育てないという構造的な問題があるように思う。以前は若手なら育てるという傾向があったが、業界の高齢化が進み若手も減少してきた。その結果、中堅エンジニアを今さら育てる必要があるのか、という疑問も生じてい
0
44
162
@j5ik2o
加藤潤一(かとじゅん)
5 years
勉強しないやつは死ねばいいと昔はよく言ってましたが、ほとんど言わなくなりました。自分の課題と他人の課題を分離できていないから筋が悪い。もちろん手助けはしますが結局やるやらは相手の問題なので。職場では勉強云々より期待値コントロールとコスト負担がクリアできればよいかなと思ってる
0
22
151
@j5ik2o
加藤潤一(かとじゅん)
5 years
”やる気が出ない人の65%はタスクを1つに絞れてない”そうなんです。モチベーションが上がらないなと思ったらタスクを絞り込めてるかを気にするようにしている。
0
34
148
@j5ik2o
加藤潤一(かとじゅん)
5 years
ダイちゃんとの思い出がありすぎてここに書ききれない…。薬剤師からエンジニアへ背中を押した一人として誇りに思う。地豆プロジェクトも、一緒に会社をやったことも大変だったけど、僕のエンジニアとしての基盤になってる。ゆっくり休んでくれ。本当にありがとう。
1
22
146
@j5ik2o
加藤潤一(かとじゅん)
5 years
勉強会とかで「質問ある人〜」って聞いて手を上げないのはその人が悪いのではなく、その人たちがアウトプットしてないから疑問なんか生じないって話。疑問や質問を作って学びたいなら勉強した話を聞くのではなく、その場でアウトプットするようなワークショップが適切
1
38
143
@j5ik2o
加藤潤一(かとじゅん)
2 years
持続的なイノベーションで使われる技術は高度なものが多いが破壊的ではない。その背後には顧客の要望がある。一方で破壊的イノベーションは技術的には簡単なものが多いし、発明が必須というわけではない。というか、技術自体の高度さに捕らわれないほうがいい。まぁ誤解している人多い感じはする。
1
35
137
@j5ik2o
加藤潤一(かとじゅん)
5 years
PHPやJavaだと開発者人口が多いので採用が楽だはほんとかな。例えば堅牢なソフトウェアを設計できる能力が求められるならプログラミング能力以外に設計力も必要。そういう人を探すとなると どうしても少なくなる印象。コーダがいればいいという仕事なら別だけど、スタートアップではオススメできない…
3
34
138
@j5ik2o
加藤潤一(かとじゅん)
2 years
SIer時代、炎上プロジェクトで早く帰る方法として、鞄を置いたまま帰るという手法を使ったいたが、残業ゼロにも効果的。
4
19
138
@j5ik2o
加藤潤一(かとじゅん)
6 years
人と話してると「すぐそんなにアイデアがすらすらとでますね?」って言われる。そう言う人は大分勘違いしている。答えは簡単で「日頃から考えているアイデアをその場の状況に合わせて話しているだけ」です。思いつきで話すのもいいけど、準備して望んでる人の差は大きいですよ。やっぱり。
0
23
135
@j5ik2o
加藤潤一(かとじゅん)
2 years
以下の設計に従った実装がみたいという要望がたまにくるので、Rustで雑に作る予定。乞うご期待。
1
19
130
@j5ik2o
加藤潤一(かとじゅん)
2 years
設計本を読むとほぼ二項対立になっている。A vs BはAがよいとか。理由を読んで自分の頭で考えよう。Bは本当にダメなのか。前提が変わってもAが正しい選択と言えるのか考えよう。前提が変わっても設計として変わらないものはなんだろうか。このようなAかBかの線引きの難しさを学ぶのが設計本の醍醐味。
0
24
130
@j5ik2o
加藤潤一(かとじゅん)
5 years
批評するより改善する方が価値が高い。最近凄いなと思ったのは はてなさんのこのプロジェクト。わざわざNDA締結して裏事情を聞いた。地道に積み上げて改善する戦術も大切だけど、やっぱりマイグレーション戦略が重要だと思った。
0
32
132
@j5ik2o
加藤潤一(かとじゅん)
5 years
メンタル壊れやすい人は、無用に他人やコミュニティの課題を自分の課題と誤認していることが多いので、ちゃんと分離しないとメンタル壊れるし、戦争の原因になると思うよ。
0
24
122
@j5ik2o
加藤潤一(かとじゅん)
2 years
コードは仕様書?誤解では?コードにはWhyは書けないので、現状の説明なら可能ですが。そういえば昔同じようなことスライドに書いたな。コードから仕様は読み取れないという話を。
1
17
126
@j5ik2o
加藤潤一(かとじゅん)
5 years
昨日の「Mix Leap Study 特別編 - レガシーをぶっつぶせ。現場でDDD! コラボカンファレンス」で話したスライド資料です<(_ _)> 「過去の失敗例から再考するモデル駆動設計 」 #mixleap #genbadeddd
0
34
122
@j5ik2o
加藤潤一(かとじゅん)
2 years
このことは、フォードの「もし私が何が欲しいかと聞いていたとしたら、人々は『もっと速い馬』と答えただろう」の言葉にも繋がる。破壊的なイノベーションのときは、顧客の要望をヒアリングしてなんとかするじゃなく、顧客の期待の先に行かないといけないわけだ。全然考え方が違うし凄く重い意味がある
1
38
121
@j5ik2o
加藤潤一(かとじゅん)
5 years
映画料金を算出するドメインモデルを考えている。できるかぎり、実行時表明を使わずに型レベルの表明でドメインモデルを作りたい。頭の体操。さぁみんなもやってみよう。
1
45
121
@j5ik2o
加藤潤一(かとじゅん)
5 years
Railsでドメイン駆動設計に基づく実装をするにはどうしたらよい?って相談受けることあるのですが、無理があるので辞めましょうって話してる。hanami を使うならまだしも…
1
39
120
@j5ik2o
加藤潤一(かとじゅん)
2 years
日本は賃金が安いだから海外に出稼ぎしようとなるのは分かるが、そもそも理想は日本にいながらリモートでドル払いの仕事をすること。つまりドルで得て使うときは円で使うほうがコスパがよいのではと思う。もちろん渡航して語学力を上げるならこの限りではないが稼ぐだけならこのパターンがいいなと。
1
8
108
@j5ik2o
加藤潤一(かとじゅん)
6 years
クエリのN+1問題回避のためにもCQRSは採用すべきで、集約をまたがるクエリ要件はドメインから外したほうがよい。リポジトリでなんでもかんでも頑張り過ぎないほうがよいんだよなー。これは結構強い動機付けにつながる気がしてます。
0
39
107
@j5ik2o
加藤潤一(かとじゅん)
5 years
ここ最近ずっと言ってるんですが、DDDを理解できるようになりたければ、「エンジニアの知的生産術」の「第1章 新しいことを学ぶには」だけでも読んで欲しいんですよね。モデリングのエッセンスが凝縮されてます。
1
13
107
@j5ik2o
加藤潤一(かとじゅん)
7 months
@otofutesla こういうことがあるので、ロックアダプター使ってます。
2
5
106
@j5ik2o
加藤潤一(かとじゅん)
4 years
CRUDしか要件がなくて…という話はよくある。よく聞くとシステムからCSVエクスポート→エクセルのセル内で何か計算して仕事に役立ててる。"えっそれがビジネスロジックの一つでは?なんでシステムの外側でやってるんでしょうか?"こういう指摘がそもそもできないと貧血症を避けられないというのはある
2
12
105
@j5ik2o
加藤潤一(かとじゅん)
3 years
ときどきEvansの"声に出してモデリングする"を笑う人いるんですが、そういう人ほど人間の言語処理能力を過小評価してて、クラス図を書いたらモデリングした気になってるパターン多くて…。モデリングに必要なのは国語力だと思ってる。
0
21
105
@j5ik2o
加藤潤一(かとじゅん)
5 years
アプリケーションサービスはドメインロジックを配置する場所ではない、それはドメインオブジェクトの役割。アプリケーションサービスは進行役。ここを間違うから簡単にドメインモデル貧血症になってしまうんだと思います。
1
30
105
@j5ik2o
加藤潤一(かとじゅん)
4 years
年末年始にRustの学習をやってた。普通に仕事で使えるそうな程度まで学べたと思われる。 Rustを実践的に学ぶには|かとじゅん #zenn
1
21
104
@j5ik2o
加藤潤一(かとじゅん)
3 years
副業でZOZOさんにアドバイスさせてもらっているのですが、Akka以外でのCQRS/ESの方法を一緒に設計しました。かなり参考になると思います。
1
16
103
@j5ik2o
加藤潤一(かとじゅん)
2 years
クリステンセン曰く「顧客の意見に耳を傾けることがまちがっている場合、性能が低く、収益率の低い製品の開発に投資することが正しい場合、主流市場ではなく小規模な市場を積極的に開拓することが正しい場合がある」顧客の声を聞いていては破壊的なイノベーションは生まれない可能性があるってこと。
1
26
99
@j5ik2o
加藤潤一(かとじゅん)
5 years
レイヤ化アーキテクチャに対応するパッケージを切る。データはエンティティとロジックはサービス、永続化はレポジトリを実装。これがDDDだと思っている人多い。トランザクションスクリプトですよ。
5
21
101
@j5ik2o
加藤潤一(かとじゅん)
11 months
DBのテストデータを手でINSERTするのはもうやってない。ドメインモデル+プロパティベースドテスティングのジェネレータモナドとリポジトリを使い、DBに事前データを作らせている。そういうも記事したほうがいいかもな。
1
7
99
@j5ik2o
加藤潤一(かとじゅん)
7 months
情報収集して自分の中でロジックを作るところで終わらず、手を動かてみるなどの実践・検証がないから自分のものにならないだけやで。他人の知識はそうらしいという情報であって、使える自分の知識するには筋肉を使わないと無理。
@hpeo_it
ホペオ
7 months
自己啓発
Tweet media one
23
652
5K
1
20
98
@j5ik2o
加藤潤一(かとじゅん)
5 years
DDD について語るとき、かとじゅんさんや増田さんから何を言われるか怖くて…という話聞いたけど、あなたが思い通りにやりましょうと言ってきた。議論を広げるという意味で価値値のある行動だし、ぼくらが唯一正しい選択をしているわけではないので…。議論は積み上げるものですよね。
0
17
98
@j5ik2o
加藤潤一(かとじゅん)
5 years
某ゆーちゅーばーさん、心理的安全性を誤用されていますね。これ読んだほうがよいです。全く逆の意味で誤用されていると思われる Latest topics > 誤用の心理的安全性 - outsider reflex
0
31
93
@j5ik2o
加藤潤一(かとじゅん)
2 years
サーバーサイドKotlin触ってみて思ったのは別にJavaでいんじゃね?ってこと。いや確かにモダンな書き方できるし自分はKotlinもよいと思うし今ならKotlinで書くけど、Javaもものすごい勢いで改善するだろうから差異は埋まっていく可能性があるんだわ……長い目で見るとJavaでよくね?と言う人多そう
2
14
95
@j5ik2o
加藤潤一(かとじゅん)
5 years
非同期・ノンブロッキング、背圧制御とか考え出すと関数型のモデルが必要。1リクエスト1スレッドとかデカすぎるし。細粒度タスクでスケジューリングできないとつらい。JavaでもServletじゃなくてSpring WebFluxの方向に向かうのは自然の流れ。
2
18
90
@j5ik2o
加藤潤一(かとじゅん)
6 years
明日の Scala関西Summit2018 で話す資料です。 Scalaでのドメインモデリングのやりかた
0
27
88
@j5ik2o
加藤潤一(かとじゅん)
10 months
Scalaはとてもよい言語だと思う。がランタイムがLambda用途だけでなく、Docker/Kubernetesなどのクラウドネイティブ時代に合わないという話なんですよね…。システムが分散化されると、どこかでインスタンス入れ替えが発生する頻度が高い。そのたびに起動に時間がかかるとか、JITの暖機運転が必要とか
0
13
89
@j5ik2o
加藤潤一(かとじゅん)
5 years
みんなドメインサービスに永続化責務を持たせてもいいと勘違いしているなー。ドメインサービスは別名”ドメイン関数オブジェクト”なんだよ。人工物なんだけどE,VOと同じドメインオブジェクトなんだ。これらは永続化責務は持たないのだから内部でRepositoryを使わないでほしい。というのが僕の考えです。
3
15
89
@j5ik2o
加藤潤一(かとじゅん)
7 months
1
0
86
@j5ik2o
加藤潤一(かとじゅん)
3 years
わかるofわかる。ドメインモデルはWhat偏重で、インフラストラクチャ層はHow偏重なコード表現が一番バランスがいい。Scala, Rustは前者に、Goは後者に向いていると思う。 / “Go を2年くらい書いた感想: 意図をエンコードしきれない感じは消えず - ”
1
34
86
@j5ik2o
加藤潤一(かとじゅん)
2 years
久しぶりにブログ書いた。昨日ぐらいから書き始めたが、あまり役に立つ結論はでなかったが…。まぁヒントになれば幸いです。 ドメイン固有型(値オブジェクト含む)を再考する - かとじゅんの技術日誌
1
24
85
@j5ik2o
加藤潤一(かとじゅん)
7 years
Scala怖いとかゆとりかよ。ほんと何言ってんだ。おまえらジャバハウスの怖さ知らねーな。
1
70
83
@j5ik2o
加藤潤一(かとじゅん)
6 months
知りすぎの弊害。勉強会や本などで大量にインプットしたらよいってものではない。知識だけ大量に仕入れると、自分の環境下でどう使うかの知恵を得る機会がどんどん少なくなって行くのだと思う。つまるところ咀嚼してないから自分の言葉で語れないという話。
1
15
84
@j5ik2o
加藤潤一(かとじゅん)
5 years
今日の資料です! #totsugekita
0
25
83
@j5ik2o
加藤潤一(かとじゅん)
6 years
KotlinとかScalaとか言語は学んでればいずれ使えるようになると思う。言語機能は使い方が決まってるからね。それより正解が無数にあるなかでどう設計を選択するか、その正しさとは何か?を説明できる能力の方が価値が高いと思うけどねー。
0
19
83
@j5ik2o
加藤潤一(かとじゅん)
2 years
①トランザクションスクリプトパターンが悪で②ドメインモデルパターンが善という読み方したらあかんよ。方法論はコンテキスト依存なので。Twitterのような非機能優先で機能的にはそこまで複雑でない場合ハイトラフィックな要件だと②が難しくて①が選択肢になることがあるんです。
1
17
82
@j5ik2o
加藤潤一(かとじゅん)
5 years
他の方の実装コード集まってきた。いやー様々な考え方があって面白いです。人によって正解が分かれるので設計を合意する大切さを知れる。#チケット料金モデリング
0
20
79
@j5ik2o
加藤潤一(かとじゅん)
4 years
英語では兄と弟を特別に区別しないが日本では兄は弟とは違った権利を与えられ違った役割を期待されるという意味づけがなされている。つまりモノから言語が発生するのではなく区別する価値があるからそれに対応する言語が発生するわけだ。ユビキタス言語をつくるときもこれらを念頭におくべきだね。
1
17
78
@j5ik2o
加藤潤一(かとじゅん)
2 years
所有権という言葉���明示的にあつかわれないとしても、その意味としては誰がメモリやリソースを解放するか、という命題なので、それをC言語であったとしても、考えないというのはないのではないか、という感じです。
0
13
75
@j5ik2o
加藤潤一(かとじゅん)
5 years
ウチのScalaチームのマネージャはちゃんと要求分析もできるし、コードもかける。さらにドメインに振る舞いを持たせることにこだわる人。こういう人のもとで働きたいと思いませんか(求人トーク
0
16
76
@j5ik2o
加藤潤一(かとじゅん)
5 years
BPStudy #145 〜進化する要件定義(RDRA meets DDD) で話したスライド資料です!【DDDとRDRAを組み合わせて使うには】 #bpstudy #ドメイン駆動設計
0
33
76
@j5ik2o
加藤潤一(かとじゅん)
8 years
社内勉強会でDDDの基礎講座しました。その際の資料を公開します。ビジネスサイドもエンジニアサイドにもユビキタス言語が重要だと理解してもらえる資料です。 "ドメイン駆動設計基礎講座〜戦略編〜"
0
28
76
@j5ik2o
加藤潤一(かとじゅん)
6 years
先週からGoでコード書いてるが、Haskell, Scalaは最高な言語だなと痛感する
1
12
76
@j5ik2o
加藤潤一(かとじゅん)
4 years
リアクティブアーキテクチャ基礎講座。資料が書けた。
0
18
75
@j5ik2o
加藤潤一(かとじゅん)
3 years
エンジニアコミュニティで勉強会して飲み会するということを、親とか兄弟に説明すると、「意味が分からない。仕事でも友達でもないのに集まってわいわいするの?」って言われることがあるので、説明がダルいなーと思うことがある笑
1
13
73
@j5ik2o
加藤潤一(かとじゅん)
2 years
「顧客の要望をヒアリングしてそれに忠実に」は持続的なイノベーションでは適切だろうけど、そうじゃないときもある。
1
25
71
@j5ik2o
加藤潤一(かとじゅん)
5 years
嫌いな人の悪口ばかり人に言っていたらなんか、その発言した人の印象が悪く聞こえてくるのですが、これを「自発的特徴変換」という。要は嫌いな人の特徴が自分に乗る。逆説的に自分の自慢するより尊敬する人の話をしたほうが、自発的特徴変換が作用してよさそうな人に聞こえる。うまく使おうw
0
15
70
@j5ik2o
加藤潤一(かとじゅん)
4 years
TDDで何が良いかというと、作り手と使い手を交互に体験することで、インターフェイスと実装を分離したモジュールを設計できる、というところだよね。
0
10
71
@j5ik2o
加藤潤一(かとじゅん)
3 years
関数型ってそんな難しいものじゃないんですよって記事を書いた。 関数型はプログラミングスタイル|j5ik2o #zenn
1
16
70
@j5ik2o
加藤潤一(かとじゅん)
4 years
ヘンリーフォード「もし顧客に、彼らの望むものを聞いていたら、彼らは「もっと速い馬が欲しい」と答えていただろう。」につながる話。利害関係者にヒアリングして分かった気になってはいけない。「多くの場合、人は形にして見せて貰うまで自分は何が欲しいのかわからないものだ」ジョブズの言う通り
@98lerr
98lerr
4 years
要求モデル作るときの、要望、要求、要件って?の疑問に答えてくれた philomagi さんの例がツボった。 要望:あんなこといいな、できたらいいな 要求:空を自由に飛びたいな 要件:ハイ、タケコプター! →タケコプターを作ろう! #ModelingKai
0
139
322
3
27
70
@j5ik2o
加藤潤一(かとじゅん)
3 years
純粋関数型言語を使ってないけど、ドメインモジュールだけは純粋関数的に設計するようにしている。効能はこの記事に書いたとおり。
1
10
69
@j5ik2o
加藤潤一(かとじゅん)
2 years
記事を開いたら、内容よりまずいつ書かれた記事なのか日時をみるんだけど、その日時がなかったりわかりにくいところにあると、すごいイライラすることがある。せめてURLに日付がないかとか。この現象に名前をつけたい…。
0
18
69
@j5ik2o
加藤潤一(かとじゅん)
3 years
SQLはWhatとHowをうまく分離してる。SQLを書くときほとんどの人がデータベースの内部構造を気にしない。これはよいインターフェイス設計。一方で日頃のメソッド設計で実装を全部読むことはWhat,Howの分離がうまくできてないか、そもそも分離する必要がないか。ともかく、RDBの設計から学べることは多い
0
14
69
@j5ik2o
加藤潤一(かとじゅん)
3 years
頭がよい人が雑に書いたテストコードはだいたいアサーションルーレットになってて、テスト対象のメソッドも複数の責務を持ってる。だからリファクタリングも難しい。こういうのを防ぐためにTDDはやはり必要なガイドだと思える
0
7
66
@j5ik2o
加藤潤一(かとじゅん)
5 years
このレベルのループに至るとだいたい自分が一番詳しくなるのでクソコードがっ!と言ったところで誰も傷付かないが言わないようにしてる。当時はこれが最善の選択だったじゃないのか。外野からの批難はフェアじゃないので僕はそう考えるようにしてる。あとそうした方が人として尊敬される
1
16
66