主要观点:
- 工作中有两种激情,一是创造优美、优雅的代码,二是为真实用户构建快速、实用的解决方案,Flamework 服务于后者且违背前者。
- 早期意识到创建可复用代码和直接为用户解决问题常相互冲突,如在运行 ubuntuusers 网站时,修改后的 phpBB 虽乱但易调整,而自己尝试写的 Pocoo 虽学到很多但未成为产品。
- 介绍 Flamework 及其背后的 Flickr 哲学,如 Cal Henderson 在 DjangoCon 的演讲提到 Django 未解决的问题,Flamework 代码直接迎合分片和集群等,虽看起来混乱但有效。
- 展示 Flamework 的代码会引发工程师的不同反应,它像罗夏墨迹测试,有人欣赏其对规模等关键问题的关注,有人则批判其代码不规范。
- 强调对“糟糕代码”的看法取决于目标,是交付产品还是构建可复用库或框架,两者心态虽都有价值但难以在同一代码基中共存,Flamework 提醒混乱简单的解决方案在解决实际问题时很强大,最终需决定何时从快速修复转向更稳健的基础。
关键信息:
- 作者与工程师讨论“糟糕代码”,分享 Flamework 这一伪框架。
- 介绍两种工作激情及相关经历,如 ubuntuusers 网站和 Pocoo 的例子。
- 阐述 Flamework 的特点、代码示例及背后理念。
- 说明 Flamework 引发的不同反应及对“糟糕代码”看法的讨论。
重要细节:
- 提到 Cal Henderson 在 2008 年 DjangoCon 的演讲内容,如 Django 未解决的问题及将所有会话数据放入 cookies 的可能性。
- 举例说明早期大型商业项目 Plurk 内部也很实用且混乱,以及 Ben Vinegar 分享的 FreshBooks 早期代码故事。
- 提及 Sentry 的发展哲学中“拥抱胶带”,说明成功项目会从快速迭代转向更稳健的基础。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。