程式設計師的職業素養
The Clean Coder
🎖 專業=負責
對品質、對承諾、對錯誤負責
不確定就說不確定 別用模糊搪塞掩飾
🙅 說不與說是
🎯 什麼情境該想到我
當你被要求「一定要在不可能的時程內做完」,或面對不合理要求卻不敢拒絕時。
⚙️ 怎麼用
- 敢說「不」:專業人對做不到的事會誠實說不——這是保護品質與信任,不是不合作。用「不,但我可以…」提供替代方案。
- 別用模糊語言搪塞:避免「我試試看」「應該可以」這種聽起來像承諾、實則沒承諾的話。
- 答應時用承諾語言:「我會在 X 之前完成 Y」——明確、可被檢驗、你真的打算做到。
- 只承諾你能控制的:無法獨力完成的,承諾「我會採取的行動」而非「保證的結果」。
🧪 我實際套用的紀錄
- 2026-07-15:(待填)
⚠️ 注意
- 說「是」卻做不到,比一開始就說「不」傷害更大——它摧毀信任。
🔗 相關工具
專業人敢對不合理要求說「不」
承諾語言:我會在 X 前完成 Y
📊 估算
🎯 什麼情境該想到我
當你被問「這個功能要做多久?」,卻不知道怎麼給一個誠實又不害到自己的答案時。
⚙️ 怎麼用
- 估算是機率分佈,不是承諾:先講清楚「估算 ≠ 保證」,把不確定性攤開講。
- 三點估算(PERT):給樂觀(O)、最可能(M)、悲觀(P) 三個值,期望值 ≈ (O + 4M + P) / 6,並算出範圍。
- 拆小再估:大任務拆成小塊分別估,加總比整體拍腦袋準。
- 用範圍/信心度溝通:「大約 5–8 天,八成把握」比單一數字誠實。
- 承諾與估算分開:估算是你的最佳判斷;承諾是你願意負責兌現的(見 工具-專業地說不與承諾)。
🧪 我實際套用的紀錄
- 2026-07-15:(待填)
⚠️ 注意
- 被逼給「一個數字」時,別把樂觀估算當承諾——那是延遲與加班的起點。
🔗 相關工具
- 工具-專業地說不與承諾、工具-時間複雜度分析(成本估算的另一面)
估算是機率分佈,不是拍胸脯保證
三點估算:樂觀/正常/悲觀 誠實溝通不確定性
🥋 紀律與練習
TDD:用測試驅動維持品質
持續練習:程式道場 kata
疲累或趕工時,不犧牲品質
⏳ 時間與壓力管理
學會拒絕加班陷阱
避免進入「泥沼」 察覺並及早脫身