看到一段文字,不得不单独拎出来。

然后再借用一下g9老大的《银弹和我们的职业》中的话:

银弹和我们的职业发展有什么相干?很简单:我们得把时间用于学习解决本质困难。新技术给高手带来方便。菜鸟们却不用指望被新技术拯救。
沿用以前的比喻, 一流的摄影师不会因为相机的更新换代而丢掉饭碗,反而可能借助先进技术留下传世佳作。因为摄影的本质困难,还是摄影师的艺术感觉。
热门技术也就等于相机。 不停追新,学习这个框架,那个软件,好比成天钻研不同相机的说明书。而热门技术后的来龙去脉,才好比摄影技术。为什么推出这个框架?
它解决了什么其它框架 不能解决的问题?它在哪里适用?它在哪里不适用?它用了什么新的设计?它改进了哪些旧的设计?Why is forever.
和 朋友聊天时提到Steve McConnell的《Professional Software Development》里面引了一个调查,说软件开发技术的半衰期20年。
也就是说20年后我们现在知识里一半的东西过时。相当不坏。朋友打趣道:“应 该说20年后IT界一半的技术过时,我们学的过时技术远远超过这个比例。
具体到某人,很可能5年他就废了”。话虽悲观,但可见选择学习内容的重要性。学习 本质技艺(技术迟早过时,技艺却常用长新)还有一好处,
就是不用看着自己心爱的技术受到挑战的时候干嚎。C/C++过时就过时了呗,只要有其它的系统编程 语言。Java倒了就倒了呗,未必我不能用.NET?
Ruby昙花一现又如何。如果用得不爽,换到其它动态语言就是了。J2EE被废了又怎样?未必我们就 做不出分布系统了?这里还举了更多的例子。 一句话,只有人是真正的银弹。职业发展的目标,就是把自己变成银弹。那时候,你就不再是人,而是人弹。

再来一篇

http://blog.csdn.net/g9yuayon/article/details/757434

不得不再掉一下书袋。看看Steve McConnel的Professional Software Development那本书。技术的半衰期好歹也有20年。核心技术基本不变。如果你自己学技术疲于奔命,还是找找自己的原因好。入行20年,牢牢掌握基础,新技术真那么难学么?你知道lamdba,知道meta-object protocol,知道动态类型,Ruby还难学么?C#3.0里的新功能还难学么?你知道分布计算的原理,知道应用中的常见问题,知道组件开发,学J2EE真的很难么?精通数据建模,精通SQL(甚至关系代数),从一个DBMS转向另外一个DBMS很难么?精通底层开发,从一个OS转到另一个OS很难么?精通数理统计,要学习贝叶斯网络,将其应用到机器学习里很难么?精通yacc,转到ANTLR很难么?精通Python,学习JavaScript里的新功能很难么??精通并发计算和函数编程,从Java转到Erlang很难么?精通Java的类库,转到.NET很难么?精通ACE,转到Twisted很难么?这些例子都是工作常见的情况,不是什么个例。Damien Katz一边学C++一边重写了Lotus Notes的公式引擎,凭的什么?难道是无休止的加班?鲍岳桥他们从汇编直接跳到Win32,写出联众,靠的什么?Pragmatic Programmer的作者写了那么多职业发展的文章,Ruby社区的Chad Fowler写了一本书讨论程序员的职业发展,Google的Stevey Yegge谈了那么多关于程序员成长的常识Joel Spolsky谈了那么多关于程序员修养的要诀。干嘛不去读一读,想一想,做一做呢?成天怨天尤人,跟着别人后面叫嚣“30岁以上不编程”, 何苦呢?何必呢?

有这三篇,有时间再看一下:

http://blog.csdn.net/g9yuayon/article/details/481869

http://blog.csdn.net/g9yuayon/article/details/280601

http://blog.csdn.net/g9yuayon/article/details/282256

05-27 13:01