Thursday, November 29, 2018

耐心和效率

每次和distinguished engineer 聊都发现有新的收获.
其实他也没和我说什么,就是他说话特别慢,几乎忘了时间,非常有耐性。但是逻辑表达,却十分清楚,没有一丝一毫的累赘,也试试透露着他在不断地思考,清晰的思考。在各种人催促下,好像和他没有什么关系,老神在在,但是他的贡献确实杠杠的。我们的code 很大部分都是他贡献的。

每次和他编程,一看编了三四个小时,开始有点紧张,后来发现他的debug时间也不多,三四个小时基本就是完成的时间了.
而我自己就不一样了,我没那么有耐性,喜欢走捷径,很多时候虽然做的快,但是debug时间基本比做的时间还长,这样其实不能算有效率.

看来我还是要长点耐性,从memoryless变成partial memory, 从trial and error 变成partial dynamic programming, 不走full走partial, 这样可能有益于整体的效率。

想想以前发paper,就直接把能发的paper想法发出去。一来对研究没有太大的坚持,在走发paper的捷径,有incremental 想法就赶紧弄了发出去。而且大部分时间实在看哪条捷径可以走,时不时换路子,而不是沿着一条路走下去。Vikesh 呢,他是在自己编程的基础上一直扩张,并没有各种换,脑子想的都是怎么样增加新feature,怎么样把现在的东西弄得更好,不停地迭代,这点和liu yang很像。实践力强的人,都很相像。

1. 专一路径
2. 不走捷径,觉得整体怎么对怎么走,不靠hack,不敢时间。
3. 耐心思考,不要太在意时间,不要心浮气躁,贪小便宜。当年liu yang吃饭的时候都在想怎么样构造一个比较好的系统,Vikesh 也是,想不出来,就走走路,继续想。
4. 就算做完,也要继续迭代下去,没有完成的时候。Vikesh 的话就是再和大家讨论过程中,就在构思着下一步做什么。而liu yang, 一个版本完了,就开始构思下一个版本了。
5. 耐心 和liu yang, vikesh 一起编程,发现他们有个共同点,就是可以很专注的在编程上,脑中有非常清晰的架构应该怎么编程,而不是靠debugger。而且及其有耐性,编程过程中不做什么别的东西,就是一直的在编程。不急不徐,缓缓前进。很少的debug,很多的思考,思考和编程并行。
6. 迭代 不一次过吧整个系统开发开来,慢慢迭代前进。

这让我想起老外和中国人的区别。Vikesh就是老外,我就是老中国。走捷径,不代表你走得快。看似捷径其实全局来看是你走了很多累赘的路。

No comments:

Post a Comment