リファクタリングとともに生きるラジオ
Episodes
#104 開放閉鎖原則② リファクタリングの究極の目的 ―開放閉鎖原則とTDD―
08 Dec 2025
Contributed by Lukas
■ トピック OCPとTDDの深い関係性 「開放閉鎖原則は徐々に満たされる」 YAGNI原則との繋がり「どこまで拡張性を...
#103 開放閉鎖原則① SOLIDのO 「拡張に開き、修正に閉じる」って何?
01 Dec 2025
Contributed by Lukas
■ トピック SOLID原則最後のテーマ「O」 なぜ「O」を最後に残したのか? 「拡張に対して開き、修正に対して閉...
#102 【ゲスト:和田卓人さん③】t_wadaさんと考えるAIエージェントとこれからのプログラミング
24 Nov 2025
Contributed by Lukas
■ トピック Agentic Codingと言語・カルチャーの関係 現場のカルチャーがAI活用に与える影響 ドキュメント文化とA...
#101 【ゲスト:和田卓人さん②】令和のリファクタリング、どう学ぶ? LLMと本それぞれの役割
17 Nov 2025
Contributed by Lukas
■ トピック 令和時代のリファクタリングの学び方 AIが学習の主要な入り口になる時代 若手エンジニアのAI活用と...
#100 【ゲスト:和田卓人さん】あなたのリファクタリングはどこから?「三度の飯よりリファクタリング」を語る
10 Nov 2025
Contributed by Lukas
■ トピック ゲスト紹介: 和田卓人さん(t_wadaさん) 和田さんの現在の活動 あなたのリファクタリングはどこか...
#99 コード削除って難しくない? / AIを信頼できるか?
03 Nov 2025
Contributed by Lukas
■ トピック コード削除の難しさについて 削除操作は簡単だが影響範囲の見積もりが困難 「消し残し」はエラー...
#98 おたよりを読む回 AIのためのドキュメント、どうメンテする?
27 Oct 2025
Contributed by Lukas
■ トピック AIエージェント向けのドキュメント、どうメンテする? 人間に見せたいドキュメントとAIに見せたいド...
#97 1つの言語③ 新しい言語を学んで「地図」を広げる
20 Oct 2025
Contributed by Lukas
■ トピック AIの台頭とプログラミング言語との付き合い方 新しいユースケースと言語の細分化 AIがシンタック...
#96 1つの言語② 言語統一は幻想か?
13 Oct 2025
Contributed by Lukas
■ トピック 言語統一は幻想か? プラットフォームによる言語制約の現実(モバイルなど) フルスタックTypeScriptは...
#95 1つの言語① 開発における言語は1つだけにするべきか?
06 Oct 2025
Contributed by Lukas
■ トピック マーティン・ファウラーさんのブログ記事「OneLanguage」 1995年は多くのプログラミング言語が生まれ...
#94 見積もりと経験/足し算のコードと引き算のコード
29 Sep 2025
Contributed by Lukas
■ トピック 新卒研修での見積もりのズレ 「不確実性コーン」 プログラマーが遅延する2つの要因 要件の「登場...
#93 AIとコードスメル② AIはお人形遊びができない
22 Sep 2025
Contributed by Lukas
■ トピック 「長すぎる関数」のリバイバル AIが生成する長い関数とコメント AIにとっても「長すぎる関数」は...
#92 AIとコードスメル① 名前をつけようと思い至るスキル
15 Sep 2025
Contributed by Lukas
■ トピック 過去の「重複コード」回のリバイバル AIコーディングの流行により何か変わったか? AIによる意味...
#91 居酒屋収録の苦労/「エンジニア35歳定年説」
08 Sep 2025
Contributed by Lukas
■ トピック ポッドキャストの居酒屋収録の難しさ 店内BGM問題 日傘を買った ワイヤレスイヤホンの使い分け ...
#90 居酒屋回 おたより・コメントを一気に読む!
01 Sep 2025
Contributed by Lukas
■ トピック 今回はおたより・コメント紹介 Voicyよりちゃぶ台さんのコメント 「1万行のC言語ファイル、1000行の...
#89 恒例の居酒屋ネタ出し&重大告知
25 Aug 2025
Contributed by Lukas
■ トピック 重大告知 リファラジは2025年末でシーズン1終了します 完結に向けて、リスナーへのお便りやネタは...
#88 AIコーディング② Vibe Codingで加速するOSS開発
18 Aug 2025
Contributed by Lukas
■ トピック AIを使った新規開発 新しい技術への対応 AIの「記憶喪失」問題 生前贈与型アプローチ fidxの開発 ...
#87 AIコーディング① AIとリファクタリング コードベースの「地層」
11 Aug 2025
Contributed by Lukas
■ トピック 既存コードベースでAIをどう使う? LLMに任せる作業の種類 README.mdを書かせる コードベースの「地...
#86 「桜井政博のゲーム作るには」イチオシ回を語る
04 Aug 2025
Contributed by Lukas
■ トピック 桜井政博のゲーム作るには 「お客さんに説明できるの?」 ヘルプメッセージへのこだわり 「監修...
#85 コードレビュー② LLMでコードレビューはどう変わる?
28 Jul 2025
Contributed by Lukas
■ トピック コードレビューする側で考えていること、やっていること 自動化できないルールを守らせるのは無...
#84 コードレビュー① コードレビューされるときに考えていること
21 Jul 2025
Contributed by Lukas
■ トピック プルリクエストを出す側の話 誰がレビュアーか念頭に置いてコードを書くか レビュアーのコメント...
#83 コードレビューの教科書『Looks Good To Me』を語りたい!
14 Jul 2025
Contributed by Lukas
■ トピック 秀和システムから発売されたコードレビュー本『Looks Good To Me』の紹介 コードレビュー本ブーム セ...
#82 新しい言語を学ぼう! Moonbit編
07 Jul 2025
Contributed by Lukas
■ トピック vol.77のV言語に続き、新しい言語を学ぼうシリーズ okunoがMoonbitを学んでみた WebAssemblyに特化した言語...
#81 Signalって何? lacolacoのTSkaigi 2025発表を深堀り
30 Jun 2025
Contributed by Lukas
■ トピック lacolaco のTSKaigi 2025登壇からSignalについて掘り下げる Signalとは何か? なぜ今Signalが盛り上がっている...
#80 雑談回 lacolacoがTSKaigiで登壇してきました
23 Jun 2025
Contributed by Lukas
■ トピック TSKaigi 2025で登壇してきた話 lacolacoの登壇内容 TSKaigi会場で出会ったリファラジリスナー 今年のTSKai...
#79 基本的なツール② シェル遊び 自分の道具箱を磨こう
16 Jun 2025
Contributed by Lukas
■ トピック 達人プログラマーの「シェル遊び」 IDEに頼るな 使っているシェル Ghosttyを試してiTerm2に戻った話 ...
#78 基本的なツール① プレーンテキストの威力
09 Jun 2025
Contributed by Lukas
■ トピック 『達人プログラマー』におけるプレーンテキストの威力 プレーンテキストとは何か? Unix哲学とプレ...
#77 V言語やってみた 〜達人プログラマーへの道〜
02 Jun 2025
Contributed by Lukas
■ トピック 達人プログラマーへの道 V言語の概要と出自 あなたがもしGOを知ってるならもうVの8割は知ってます...
#76 リンター/フォーマッター③ オールインワンツール「Biome」を語る
26 May 2025
Contributed by Lukas
■ トピック okunoがBiomeを推す回 Biomeとは? とにかく高速 Biome 2.0でプラグイン対応の予定 ASTをクエリする言語...
#75 リンター/フォーマッター② ASTを触るのはこわくない!
19 May 2025
Contributed by Lukas
■ トピック リンターの設定どうしてる? 05:08 個人開発とチーム開発でのルール設定の違い リンターとCIの遅延...
#74 リンター/フォーマッター① Prettierは脳にインストールされている
12 May 2025
Contributed by Lukas
■ トピック フォーマッターが普及してなかった時代 JavaScriptにおけるフォーマット・リンターの歴史 JSLintから...
#73 銚子ドライブ編③ どうする?新人エンジニア育成
05 May 2025
Contributed by Lukas
■ トピック 新卒・新人エンジニアは何を身につけるべきか トレーニング機会の減少と高度化 「桜井政博のゲー...
#72 銚子ドライブ編② マネジメントもリファクタリング?
28 Apr 2025
Contributed by Lukas
■ トピック マネジメントの話 リファクタリング観点のマネジメント マネージャーとしてのlacolaco 技術顧問と...
#71 銚子ドライブ編① 生成AIは「ガチャ」か?
21 Apr 2025
Contributed by Lukas
■ トピック オープニング 物理的な構造物とリファクタリング 生成AIは「ガチャ」か? AIコーディング支援と音...
#70 Good Code, Bad Code② 「値がない」をどう考える?―想定外の事態をなくす―
14 Apr 2025
Contributed by Lukas
■ トピック Chapter6 想定外の事態をなくす nullの話みんな好き 10年経っても変わらない 「値なし」についてどう...
#69 Good Code, Bad Code① 契約プログラミングってこんなに序盤で教えていいんだ
07 Apr 2025
Contributed by Lukas
■ トピック 『Good Code, Bad Code』の紹介 理論・実践・ユニットテスト 今回は第一部をメインに 『プリンシプル ...
#68 SOLIDのI 実はお世話になっている?インターフェース分離原則
31 Mar 2025
Contributed by Lukas
■ トピック アンクルボブのISP原則 ISPのこと意識してる? 依存性逆転原則とごっちゃになりやすい SQLを例に考...
#67 テストダブル③ フェイクオブジェクトつくる君をつくるパターン
24 Mar 2025
Contributed by Lukas
■ トピック lacolacoとテストダブル フェイクオブジェクトのファクトリ関数を作る テストケースごとに依存する...
#66 テストダブル② 「神」はひとつに保つ
17 Mar 2025
Contributed by Lukas
■ トピック okunoとテストダブル 時間が経つと複雑なテストが増える テストコードとDRY モック作る派 「神」は...
#65 テストダブル① なんでも「モック」と呼びがち
10 Mar 2025
Contributed by Lukas
■ トピック ikuma-tさんからのおたより テストフィクスチャってなんだっけ? フィクスチャはなにかの代替物と...
#64 リファクタリングとビジネスの折り合い 脳内リファクタリングをしよう!
03 Mar 2025
Contributed by Lukas
■ トピック しゅうさんからのおたより リファクタリングとビジネスの折り合い 「リファクタリングをねじこむ...
#63 クラスの使いどころ 選択肢を捨てるのはもったいない
24 Feb 2025
Contributed by Lukas
■ トピックヒホさんからのおたよりクラスを使ったリファクタリングの使いどころについてクラス構文を使って...
#62 SOLIDのL リスコフの置換原則って意識してる?
17 Feb 2025
Contributed by Lukas
■ トピックリスコフの置換原則だけ浮いてる?Javaが生まれる前に生まれた原則リスコフの置換原則としては意識...
#61 令和のJavaがすごい! TypeScript書き2人の嫉妬
10 Feb 2025
Contributed by Lukas
■ トピック Javaの知識が止まっているokunoさんのミリしら回 バージョンアップサイクルの変化 ローカル変数...
#60 更新系API② 更新系のAPIスキーマ 必須 vs オプショナル
03 Feb 2025
Contributed by Lukas
■ トピック 更新系リクエストのスキーマについて REST的な発想 すべて必須フィールドにするか、オプショナ...
#59 更新系API① POST/PUTのレスポンスどうする?
27 Jan 2025
Contributed by Lukas
■ トピック shinshinさんからのおたより 寿司回で気になっていた、POST/PUTのレスポンスについて If one or more re...
#58 新年のネタ出し寿司③ 2025年のやりたいこと 全国魚介Kaigi
20 Jan 2025
Contributed by Lukas
■ トピック 今年の抱負・展望 2024年はじめてやったこと 函館に初めて行ってきたlacolaco 小学生からの質問が...
#57 新年のネタ出し寿司② おたよりを読む コードの削除は人間の仕事?
13 Jan 2025
Contributed by Lukas
■ トピック おたより・コメント紹介 不要コードの削除 人間とAI、安心と安全 削除はコードベースを理解し...
#56 新年のネタ出し寿司① 達人への道
06 Jan 2025
Contributed by Lukas
■ トピック あけましておめでとうございます 前回のネタ出しのふりかえり 更新系のHTTP APIスキーマ POST/PUTの...
#55 リファラジ1周年! 年末ふりかえり回
30 Dec 2024
Contributed by Lukas
■ トピック リファラジ1年間の数字 4万再生 全話聞いている人が多い ブログで紹介されたところで急にリス...
#54 ドメイン名② ドメインを変える難しさとやりたくなさ
23 Dec 2024
Contributed by Lukas
■ トピック ドメインとWebのセキュリティ リダイレクトいつ外せるの問題 印刷されてしまったURL ドメインの...
#53 ドメイン名① ドメイン名にこだわる人たち
16 Dec 2024
Contributed by Lukas
■ トピック ドメインとWebサイトの名前 ドメインもまた名前 ちょっと変わったTLDの経験 夢の okunokenta.ro, la...
#52 知識のインプット③ おすすめ本紹介 okunokentaroを作った本たち
09 Dec 2024
Contributed by Lukas
■ トピック 1冊目『プリンシプル オブ プログラミング』 もともとはブログだった 何ができたらプログラマ...
#51 知識のインプット② lacolacoが伝えたい古典、達人に憧れる気持ちを忘れない
02 Dec 2024
Contributed by Lukas
■ トピック おすすめ本紹介をしたくなった理由 1冊目『プログラマが知るべき97のこと』 何したらプログラ...
#50 知識のインプット① ふだんどうやって情報を仕入れてる?
25 Nov 2024
Contributed by Lukas
■ トピック 祝・第50回 最新情報を追跡するルーチン インプットのプッシュ型とプル型 メールの未読ゼロ ...
#49 いつリファクタリングを始めるか?③ いつでも始められるための備え
18 Nov 2024
Contributed by Lukas
※ お詫び: 収録時のミスでlacolacoの音質が悪いです。 ■ トピック リファクタリングモードに入ってまずやるこ...
#48 いつリファクタリングを始めるか?② 臭ったら、替えるのよ
11 Nov 2024
Contributed by Lukas
※ お詫び: 収録時のミスでlacolacoの音質が悪いです。 ■ トピック 既存コードを触っていてリファクタリングモ...
#47 いつリファクタリングを始めるか?① 書く自分と読む自分
04 Nov 2024
Contributed by Lukas
※ お詫び: 収録時のミスでlacolacoの音質が悪いです。 ■ トピック リファクタリングモード モードの切り替わ...
#46 依存性逆転の原則③ エキスパートが語る依存性の注入とAngular
28 Oct 2024
Contributed by Lukas
■ トピック AngularはなぜDIを備えている? GoogleはDIがやりたくてAngularJSを作った? JavaScriptの世界でOOPのプラク...
#45 依存性逆転の原則② DIはテストのためのもの?
21 Oct 2024
Contributed by Lukas
■ トピック 依存性の注入とは何か? インスタンス作成の詳細を隠蔽したい コンストラクタに依存するイン...
#44 依存性逆転の原則① 「いつまで経っても変更作業が終わりません」
14 Oct 2024
Contributed by Lukas
■ トピック SOLIDのD、依存性逆転の原則 依存性って何?逆転って何? 依存関係とクラス図 インターフェー...
#43 カプセル化② 「何を隠蔽したいのか?」 クラスと関数の使い分け
07 Oct 2024
Contributed by Lukas
■ トピック 引数が変わりやすい関数は秘密を隠蔽できていない シグニチャがころころ変わる関数はリファク...
#42 カプセル化① 「秘密」と「隠蔽」 カプセル化は人形遊びで鍛える
30 Sep 2024
Contributed by Lukas
■ トピック カプセル化との出会い 「カプセル化って何ですか?」 カプセル化とクラスベースオブジェクト指...
#41 雑談回 最近買ったもの 生活の中のリファクタリング
23 Sep 2024
Contributed by Lukas
■ トピック lacolacoが最近キーボードを買った話 キーボードの交換と破壊的変更 新しいマシンを買ってもすぐ...
#40 APIスキーマ③ リファクタリングを支えるバリデーション
16 Sep 2024
Contributed by Lukas
■ トピック バリデーションしてますか? フォームのバリデーションとAPIのバリデーション zod, valibotで変わ...
#39 APIスキーマ② スキーマ中心開発のよもやま話
09 Sep 2024
Contributed by Lukas
■ トピック GraphQLを使い始めたモチベーション スキーマ駆動開発 スキーマ中心の分業はだいぶメジャーにな...
#38 APIスキーマ① APIエンドポイントのバージョニングと破壊的変更
02 Sep 2024
Contributed by Lukas
■ トピック HTTP通信どうしてる? APIエンドポイントのURL設計 APIのバージョニングの是非 APIの破壊的変更を...
#37 DRYとYAGNI② DRYとYAGNIの両立 知識不足と心配性
26 Aug 2024
Contributed by Lukas
■ トピック YAGNIってDRYと対立する原則なのか? YAGNIとどこで出会った? 抽象化を身につけ始めた初心者にYAG...
#36 DRYとYAGNI① DRYとは「知識」と「表現」の原則である
19 Aug 2024
Contributed by Lukas
■ トピック Google Testing Blogの気になる記事 早すぎる抽象化によるDRYの危険性 DRYに対置されるのはYAGNIなのか...
#35 リファクタリング、名前からやるか?構造からやるか?
12 Aug 2024
Contributed by Lukas
■ トピック Publickeyに掲載された記事の紹介 命名的問題と構造的問題 読みやすいと思ったコードのほうが読解...
#34 Diff③ 「Gitの次」ってどうなる?
05 Aug 2024
Contributed by Lukas
■ トピック Diffの将来を妄想する GitHubは完成形なのか? Diffは結局パッチファイル 差分が取れるものはすべ...
#33 Diff② コミットログのデザインとテスト駆動開発
29 Jul 2024
Contributed by Lukas
■ トピック われわれはどのようにDiffを作っているのか? laco: ブランチのDiffをいったんすべて並べてまとめ直...
#32 Diff① 「ついで直し」はボーイスカウトルールではない
22 Jul 2024
Contributed by Lukas
■ トピック Diffのデザインに気をつけている話 GitHubのプルリクエストで見るDiff OSSのチェンジログからみるDi...
#31 ファイル・ディレクトリ② コロケーション これもまたコンウェイの法則
15 Jul 2024
Contributed by Lukas
■ トピック コロケーション(co-location)って何? テストコードのファイルをどこに置くか 同じファイルにテ...
#30 ファイル・ディレクトリ① ファイル名のコントロールは握っていたい
08 Jul 2024
Contributed by Lukas
■ トピック おたよりをいただきました ファイル・ディレクトリ周りで参考にしているルール フレームワー...
#29 居酒屋③ ゲームで学ぶリファクタリング
01 Jul 2024
Contributed by Lukas
■ トピック 引き続き居酒屋からお送りします ここまでのネタ出しのまとめ 公開収録の野望 『御社のリファ...
#28 居酒屋② 「読み方」の学び方・すべてがOになる
24 Jun 2024
Contributed by Lukas
■ トピック 引き続き居酒屋からお送りします コードの読み方のネタ 『プログラマー脳』の話 訂正)『プ...
#27 居酒屋① 飲みながらネタを考える
17 Jun 2024
Contributed by Lukas
■ トピック 都内某所の居酒屋からお送りします 今後に向けてのネタ出し会議 「ともに生きている」話をし...
#26 雑談回 10000再生突破!感謝と近況報告
10 Jun 2024
Contributed by Lukas
■ トピック Spotify 累計10000再生突破! リファラジリスナーの規模 『ルールズ・オブ・プログラミング』回へ...
#25 GoF③ Singletonパターンには2つの価値が混ざっている
03 Jun 2024
Contributed by Lukas
■ トピック okunoの推し Singletonパターン 原義のSingletonパターンと現代のSingletonパターン 名前空間付きのグロ...
#24 GoF② 世界はObserverパターンで動いている
27 May 2024
Contributed by Lukas
■ トピック lacolacoの推し Observerパターン Observerパターンの概要 情報伝達のPull型とPush型 原著を読まずに話...
#23 GoF① GoFデザインパターンは今でも役に立つのか?
20 May 2024
Contributed by Lukas
■ トピック おたより紹介 「GoFデザインパターンは今でも役に立つのか?」 GoFデザインパターンとは? レ...
#22 コメント③ 書くべきコメントよりも残すべきコメントについて考える
13 May 2024
Contributed by Lukas
■ トピック コメントが腐っていく話 どういうコメントが腐りやすい? 差分だけコードレビューするとコメン...
#21 コメント② TODOコメントを本当にTODOするためのテクニック
06 May 2024
Contributed by Lukas
■ トピック TODOコメントはパンの数と同じ 人々はTODOコメントを本当にTODOできているのか? バグチケット管...
#20 コメント① コメントを「ちゃんと書く」って何?
29 Apr 2024
Contributed by Lukas
■ トピック 「コメントをちゃんと書きましょう」 コードの日本語訳のようなコメントは消してほしい 良く...
#19 雑談回 『ルールズ・オブ・プログラミング』を紹介したい!
22 Apr 2024
Contributed by Lukas
■ トピック 『ルールズ・オブ・プログラミング』を勝手に紹介したい 令和に出るにふさわしい本 『ルール...
#18 リファクタリングの規模② 防御的プログラミングで乗り越える大規模リファクタリング
15 Apr 2024
Contributed by Lukas
■ トピック 大規模リファクタリングの経験 他社システム連携のつらい話 システムの問題の原因を突き止める...
#17 リファクタリングの規模① diffが小さいからといって小規模とは限らない
08 Apr 2024
Contributed by Lukas
■ トピック tonakai4さんからのおたより紹介 規模のイメージ 小規模なリファクタリングとは? diffが小さい...
#16 単一責任原則③ 右手にSRP、左手にDRY
01 Apr 2024
Contributed by Lukas
■ トピック 単一責任原則に反したコードのリファクタリング アクターが重なりがちな例 顧客管理システム...
#15 単一責任原則② 改めて考えると共通化って怖くない?
25 Mar 2024
Contributed by Lukas
■ トピック 単一責任原則はコードレビューで指摘する? フロントエンド・バックエンドの言語が共通なとき...
#14 単一責任原則① 責任が単一であるってどういうこと?
18 Mar 2024
Contributed by Lukas
■ トピック SOLID原則のなりたち 「単一責任」ってどういうこと? 単一責任の勘違い 責任って何? もとも...
#13 名前と複数形 "repos" はピンとこない
11 Mar 2024
Contributed by Lukas
■ トピック 複数形になると長い名前 短縮形+sを使う場面 ディレクトリ名の単複問題 内容物を示すディレク...
#12 ユーティリティ② 条件分岐が増えるようなら共通化はやめておく
04 Mar 2024
Contributed by Lukas
■ トピック おたよりの内容振り返り 「ユーティリティ」がゴミ箱になる 意味をなしていない「ユーティリ...
#11 ユーティリティ① 「またユーティリティを作ってしまった...」
26 Feb 2024
Contributed by Lukas
■ トピック おたよりを読む ユーティリティとは何か utils vs utilities shared とか domain とか もともとあるな...
#10 雑談回 第10回なので、これまでのふりかえり
19 Feb 2024
Contributed by Lukas
■ トピック リファクタリングに対する意識の変化 「リファクタリングを背負う」 「これもまたリファクタ...
#9 長すぎる関数③ だまされたと思ってコードを印刷してみてほしい
12 Feb 2024
Contributed by Lukas
■ トピック 長すぎる関数をどう短くするか 「関数の抽出」 段落ごとに関数にする 名前を付けにくかった...
#8 長すぎる関数② 長くなる前にテストを書こう
05 Feb 2024
Contributed by Lukas
■ トピック 長い関数はテストしにくい? テストがない長い関数は理解が難しい 長くなってからではテスト...
#7 長すぎる関数① 長さそのものよりも"段落"の有無を気にしている
29 Jan 2024
Contributed by Lukas
■ トピック 関数が長くて困ること 読めれば長くてもいいのか? 長いコードを読みやすくする現代の工夫 長...
#6 重複コード③ ライブラリを作るようにリファクタリングする
22 Jan 2024
Contributed by Lukas
■ トピック 重複コードの2種類の消え方 関数の抽出 共通化で必ずしもコード量が減るわけではない 抽出さ...
#5 重複コード② コードの重複とは名前の衝突のことかもしれない
15 Jan 2024
Contributed by Lukas
■ トピック 重複コードは何が問題なのか 分解してから共通部分を見つける マジックナンバーと重複コード...