Random Lessons Learned


真的很随机。

一次性投入

其实是个很简单的道理:

如果一次性投入成本太高, 即使日后能大大减少维护成本, 事情也很难执行起来。

所以下一次当你听到这样的说法时:

哦我们只需要<此处省略各种奇怪的东西>, 接下来的事情都会自然很简单。

就要小心了: 这很可能是为了用来说服围观群众, 说服管理层, 也包括说服提议者自己。 谁也不知道什么时候会有更高优先级的事情出现, 然后这件事就会因为“不见短期成果”的理由被搁置一旁。

或者, 如果有权限充分高的人物存在, 可以不顾成本地去做事, 同时又能无视来自各界的 distraction, 那恐怕就没什么好担忧的了。

但对于你来说, 如果时间有限,权限不足, 最好不要轻易 think big。

无视 Cynics

花大把时间把一个 Cynic 转化为用户, 也只是转化了一个用户而已。 而绝大多数情况下都会失败。

更糟糕的是, 如果你在公开场合回应这类人的质疑, 一般围观群众在缺少领域知识的前提下, 再看到这样奇怪的争论, 只能认为你的方案不够好。

Cynic 往往喜欢使用高度抽象的言辞, 使自己立于不败之地。 也许他们不是故意的, 但争论下去很容易沮丧, 更不要轻易指望成功。

所以尽量忽略他们的存在就好。 如果被点名提问, 直接回答说“我完全听不懂你在说什么”就行了。

Have Some Fun

年轻人, 程序员的职业生涯可能会非常苦逼。

给项目起个蕴含典故的名字, 或者在注释里写点不小心想出来的段子, 或者在一次艰难的提交之前写些夸张的提交信息, 并让所有人都看到, 可以大大延长你的职业寿命。

至于变量命名还是不要搞得太非主流的好。

你应该设法用这种态度感染周围的人。 比如让人们觉得在提交注释里应该多写 fuck 来表达情绪。 说不定就会有人闲时写个脚本统计 fuck per week。 虽然在提交注释里按照某个关键字统计信息是个挺傻逼的事儿, 傻逼程度不亚于按照代码行数衡量工作量。 还好我们只是为了休闲。

Late Nights and Weekends

发现 Bootstrap 项目实际的运作方式的时候, 我多少还是有点震惊的。

有什么想法还是自己坚持去做吧, 不要轻易指望能从工作时间里 cut some slack。 别让工作任意蔓延就已经是不错的平衡了。

或者说,应该考虑寻求那种 developer by day, hacker by night 的状态。 你需要至少多一个兴奋的来源, 而且不需要考虑协作者, 不需要在日程上做无畏的讨价还价 (虽然自己设立 deadline 可能还是有必要的)。

是的, 工作只是工作而已。 Big Co., startup, 能有什么区别。

Tell People You Run Arch

Srsly.