对做技术的一些看法
我发现学技术的,在熟悉了某项技术之后,往往会发展出一种技术崇拜,就是对自己所掌握的技术有一种迷恋,包括我自己在内都是如此。我觉得如果我们以更高的视角来看,就会发现所有的技术其实都只是解决某些特定问题的一种工具,它最大的价值在于它能解决特定的实际问题。
比如我们学了C++,然后又学了MFC/COM/ATL,然后又想学更底层的东西,比如驱动开发,汇编语言,在很多人看来,这是学习C++开始就必然要走的一条路。但是我觉得,如果能换个视角,去学习一些本职工作以外的技术,是否更好。比如去学一门脚本语言,Ruby/Python/Lua之类。或者学习一门流行的新语言,比如Java/C#。又甚至,学习一些与语言无关,而能够特别解决某些实际问题的东西,比如现在比较热的hadoop。对于我们的职业发展来讲,很多人宁愿往窄而深的地方发展,即便这些东西可能并不是太有实用价值。大家好像都比较专注与自己的那块领地,不愿意去吸收了解其它的东西,甚至有些人畏惧去学习这些其他领域的知识,我觉得这些观念,也许会对技术人员产生某些不利影响。
我觉得真正的有经验,有实力的技术人员,他并不会把往深处专研当作自己的特定目标而无意义的去专研,而是在实际的工作中需要用到更深领域的知识时,他可以很快的掌握这些东西,并且给出自己的解决方案。
总之我的看法就是,应该是学以致用,一切从实际出发,因为我们并非是在大学里做学究,而是在学习的过程中,去解决生存,利益相关的问题。
不知道我的看法是不是有点肤浅,欢迎大家拍砖。