程序员的灯下黑:能认识自己吗?
还是一个Simon的故事。
有一次,Simon和一个程序员G谈为什么要离开上一个公司。
G说,“我原来在一个小组做struts;后来项目做完了,公司调我到另一个组去。那个组用国内某公司开发的集成开发系统,用工具拖拖拽拽就做完了。我觉得学不到东西,所以就走了。”
Simon问:“为什么学不到东西?”
他说:“拖拖拽拽不是把程序员变成傻瓜了吗?”
Simon问:“Visual C++开发工具也可以用拖拖拽拽完成很多工作,很久以前都得手写的;为什么没有人觉得那是把程序员变成傻瓜呢?”
他想了想说,那很多Java代码都在组件内,看不到。没有办法学到底层。
Simon问:“是吗?你觉得你struts掌握得怎么样?”
他说很熟。
Simon又问:“那你看过struts的源码吗?”
他愣住了,说没有。
于是Simon问G,那你用struts和用那个集成开发工具生成的库有什么不一样?
G没有办法回答Simon的问题。
抱着G一样的认识的程序员是很多的。这是个认识自己的问题。我们从各种信息渠道,不知道积累了多少先入为主的谬论而不自知。
认识自己是最困难的。造物主创造人类的时候,所给予的感知器官:眼、鼻、耳、肤,全部都是一致对外的。这是一个适合认识世界,但不适合认识自己的机制。萦绕在大脑中的,始终是自己的“一厢情愿”。我也和那位G一样,经常随时会自己或被别人发现思想中的自相矛盾,有时羞愧得想要蜷成一团。
要认识自己,所需要的是勇气和智慧。随着年龄的增长,最大的益处就是能够开始有勇气反省自己,有时用一点自嘲,让自己变得轻松一点。
希望和大家共勉:慎独而三省其身。
我最擅长从零开始创造世界,所以从来不怕失败,它最多也就让我一无所有。