阿北今日主讲 Feedsky 技术交流,赶紧前往学习一番。

阿北总结豆瓣开发的三点经验(现场没有记录,凭记忆整理,可能有误,具体表述更不一定准确):

  • KISS。阿北在豆瓣之前任一公司CTO,负责开发企业软件。受惯性思维的影响,在开发豆瓣之初设计的系统架构比较复杂,经过探索之后采用了 UI -< Data Object -< DB的三层结构。事实证明,简单,不仅是 UI 的简洁,也包括系统架构的简单化,是豆瓣开发成功的关键所在。
  • 永远 Beta。快速上线、不断完善的轻型开发模式被视为 Web 2.0 的典型开发模式,豆瓣在核心功能开发成功之后始终处于不断完善之中。这种模式虽然难免把问题暴露在用户直视中,但在用户的直接参与下的修改完善比”闭门修炼”效果更好。
  • 注重用户体验。众口难调,不可能覆盖到全部用户的需求,所以只要照顾到多数用户就好。通过调研及悉心体验获知多数用户需要什么,如果搞错了及时调整。

在具体开发上,阿北遵循的许多做法都值得参考(个人总结,非现场顺序),例如:

  • 选择 Python 开发的原因,是效率、效率、效率。
  • 重点关注、率先实现核心功能,未及实现的逐渐完善。
  • 网站应用结构要扁平,如果系统多人开发时应纵向切割。
  • 程序员不要有惯性思维,如对数据库不熟悉就采取逃避态度。
  • 在用户需求的理解上,程序员易自我中心,从程序实现思路出发。
  • 乐此不疲地热爱 Coding 对于程序人员极其重要(参见豆瓣寻人)。

对于技术人员创业,阿北的经验也许更有启发。他认为一个好的想法很重要,但我从他的话里听出来把好的想法做出来才是最重要的。他说,某人拿商业计划书四处找投资半年未果,如果用两个月时间做出点东西岂不是更有效,毕竟现在维持一个网站投入很小,只要生计不成问题就很容易做到。

我想豆瓣的核心竞争力是算法,阿北当然不会详细介绍。

感谢阿北,他是现场参与人员的偶像。
感谢吕欣欣,特别是他提供家庭式的温馨午餐。