1
vicalloy 2012-06-08 13:44:47 +08:00
2,打字快
-----> 其他的没仔细看,但这点不成立。真正敲代码的时间只占到很小的一部分。 |
2
rivsen 2012-06-08 13:50:48 +08:00
我感觉个人的做事的方法正确与否会影响工作效率,即使具有相同的知识储备的两个人,如果他们中有一方做事方法不够科学,很有可能就会影响两个人之间的工作效率差距
|
3
zealot 2012-06-08 13:52:19 +08:00
经验,或者说厚积薄发。
即便是个简单需求,写出好代码的话需要涉及到很多个方面。 对于新手,要么写出一个丑陋但还能凑合用的东西;要么挨个深入研究学习,将每个极小的点做到尽可能的"完美"(这里"完美"指已知的、一致认可的最佳实践,而不是那些虚无缥缈的追求) 例如,根据pid判断进程是否存活。新人需要查阅资料、手册,甚至是参考开源代码,可能还要跟其他人一起探讨。查到资料后,还有收集更多信息来对比孰优孰劣。对比/proc fs、ps aux|grep pid、kill(pid, sig=0)。而根据新人能力不同,可能需要耗费半天甚至几天时间彻底弄透。但是,经历过这个过程的程序员,1分钟就能搞定。1分钟 vs 几天,这就是最常见的生产效率差异。 再比如,记log的方式,需要考虑哪些因素;优雅重启;可运维性;可配置;监控与报警,等等。有经验的程序员充分研究和实践过后,则能厚积薄发。他们1分钟的代码背后可能蕴含着好几天的努力学习,这个过程是新手难以在短时间内复制的。 当然,很多时候新人也能把开发时间缩短到比较接近有经验的程序员,但是没有足够的最佳实践钻研与积累,质量上是有差距的。 生产效率的巨大差异,前提必须是新人也做到跟老鸟同样的"完美"("完美"同前面解释) |
4
xlaok 2012-06-08 13:56:34 +08:00
专注,我就特别不专注,效率有的时候奇高,计划一周的事情一个晚上能做完,大部分时间就是不专注,不知道自己在想什么,刷着网页一天就过去了,比如现在...
|
5
zealot 2012-06-08 13:58:27 +08:00
@zealot 补充一下,新人自然是可以站在前人肩膀上快速成长。
所以这几点比较关键 - 有前人指导 - 踏实肯学,必要时需要系统性学习 - 勇敢的放弃舒适区,去非舒适区寻求更大成长 - 团队内部互相、频繁CodeReview,互相学习,及时发现自身问题 - 最后一点很关键,足够的时间去投入到技术中,大学混四年,毕业后写个两三年代码就嚷嚷着IT码农老了后没饭吃,拼命转管理,这种团队内部技术成长与积累都会有很大问题 |
6
xheruacles OP @vicalloy 关于打字:参看coding horror: http://www.codinghorror.com/blog/2008/11/we-are-typists-first-programmers-second.html
|