这篇文章发表于《程序员》2008.03期。

苹果是怎么吃到的?——职业规划,从了解自己开始

克里希拉穆提有一本著作,名为《重新认识你自己》,我每每读起,都汗如雨下。克氏的每一句话,每一个发问都直刺人的内心,其目如炬如电。克氏的作品大多如此:不停地陈述、不停地发问。

引子
=========

……路人甲抬头的时候,看见一棵巨大的苹果树,他想,我如果能吃一个苹果就好了……

面临需求
=========

你感到饥饿了?正如你明天将面对面试官,而现在,你只是在面对一个苹果,亦或者一树苹果。你不能明确你想要哪一个苹果,也或者所有苹果都与你无关——你不曾亲近于他们,他们离你如此之远,你上蹿下跳,却仍然够不到最近的一根枝杈。

你所有的问题只起源于“想吃一个苹果”,然而你面临的,却是够到那根树枝。枝杈与苹果之间有什么关系呢?你与苹果、与吃苹果的需求有什么关系呢?你想吃苹果,是需求吗?或者,回到问题的源头:你感到饥饿了吗?

大多数人面临问题的时候是茫然的,急迫于解决当下的、现实的那个需求——例如够到那个苹果。然而正如你明天要面临面试官一样,你甚至不知道面试的公司是怎样的经营状况,不知道自己究竟可以给面试官展示什么。你不了解那棵苹果树,正如你也不了解自己为什么想吃苹果。

三年前的问题
=========

三年前,当你开始走向这个方向时,你是否了解过这条道上会有这样的一棵树?你是否了解过这棵树的高度?是否了解过他何时结出果子?是否真的确认过你会面临这样的需求?

所有的问题,在你三年前开始行程时你都没有提出过。所以你忘记了准备充足的净水,忽略了道旁的那根长竿。你不知日夜,埋头前行,在大雪纷飞的日子里,你走过了最富庶的平原,而现在你来到了这只有苹果树的山岭。

你从来没有规划过行程,没有准备过面对选择——树对于你的,或你对于树的选择。也或者在你准备明晨起行的这一刻,你并没有想过再过三年后你会面临怎样的境地。

例如明天,你会面临结业,会面临面试,会面临淘汰,会面临打压,会面临流言……

三年前,你可曾为了明天而做过准备?

有苹果吗?是苹果树吗?能吃吗?
=========

你确信你的道路上有苹果?你确信你面前的是苹果树?你确信它能吃?你确信你到达的时候它不是青涩的,或干脆连花骨朵都未谢去?

你调查过这条路吗,例如问问先行者:IT行业是不是你的未来?你学习过辨别他们的方法吗,例如软件开发与程序编写之间究竟有何种不同?你又是否知道这个行业的走向,例如互联网是不是你的前途,或者相比之下,嵌入式开发是否更加容易或更有前途?

你有过选择吗?你给了自己选择的空间吗?三年前,在你填报专业的时候,或在你走进校园的时候,你是否就开始了自我的选择呢?

被选择
=========

当你所有进行选择的主动权都丧失时,你就只能面临被选择。例如伟大的牛顿就被一棵苹果树选择了一次——那个苹果正好掉在了他的头上。

然而当你有这样的想法时,你环顾四周:所有的人都在木然行走,并等待着苹果掉在他们的头上。他们像行动的木乃伊——不需要水,不需要食物,即使一个苹果能让他们重生,他们也没有过这种需要。因为他们并不知道自己想要什么,想去哪里。即使一个苹果很偶然的、幸运地砸在了某个木乃伊的头上,他们要么仆然倒地,要么像范进一样颠狂。

牛顿之所以是被选择者,除了苹果掉落之外,也在于牛顿不是木乃伊。苹果落在头上的概率本来就很低,而你不是木乃伊的概率就更低了。无怪乎整个行业都在感叹人才缺失,无怪乎黎叔总在生气,而装钱的那个包裹却总也到不了手。

黎叔生气的时候,钱就在他的面前。选择无时不在,只不过被选择者茫然无知罢了。

再做一根长竿
=========

亡羊补牢,为时未晚,与其懊恼在行来的路上丢掉了那根长竿,不如现在动手再做一根。然而你问问路旁的老者,他说:你不但要先有锯刨,还得有木料;要有木料,你得先有刀斧;要有刀斧,你得先炼铁煅钢……如此等等,你最终变成了一名矿工,着眼于时下的那个需求:得到一些铁矿。

Joy在数年前就断言过我的过失:别人找我要苹果,我却说应该做个梯子去够,然后就从怎样做木匠开始讲。我成了故事中的愚人,因为我不但解决不了需求,还制造了麻烦。

所以从比我更聪明的人的角度来看:我们现在不需要梯子,我们不能为解决一个需求而制造更多的需求。是啊,你居然在讨论“制造需求”,然而你可知道长竿的需求来自何处?它来自于你三年前丢掉了长竿,来自于你三个月前绕了弯路而陡耗了干粮,来自于你三天前扭伤了脚而不能爬树,来自于你三个小时前开始的饥饿,来自于你三分钟前看见了这棵树……

而到你需要帮助的时候,路旁只剩下了这个老头儿,并告诉你从左边的小道过去,就是一家矿山,你可以学到挖矿的本领。在你开始怀疑这是否是陷阱的时候,老者已经开始收拾小板凳要回家了。

天终于要黑了。我想,你是倒霉到家了。

陷阱
=========

是的,所有的疑问与假设都是陷阱——包括那个干巴老头儿都是我拉来串场的(所以他也走得比别人更匆忙)。现在让我们越过所有所有的陷阱,回到最初的两个问题:你饿了;你想吃一个苹果。

《程序员》杂志的欧阳在与我开始讨论之初,只是询问我是否对职业规划有过想法。我当然是有的,我的人生计划在16岁前后定下的。基本上,定了20年——我没说谎话。我的计划向来比较长,像两三天看一本书,一个月看几本这种计划,我没有。所谓常立志不如立志长,我属于后者。

对于程序员的职业发展方向,我在《大道至简》中谈过我的看法:“程序员有两条路可选。一个是深入源码,在技术领域里求精求深,变成良匠大师。一个是看透工具的本质,从技术、语言这些东西中走出来,面向团队、工程,成为管理人员。”对于这样的选择,欧阳感叹说:技术人员面临一大堆技术方向,迷惑得要命。至于前途职业,基本上没法考虑。

的确如此,我想这也是《程序员》做这一期专栏的目的。然而我认为从根本上来说,他们不是“面临一大堆技术方向”而迷惑的,大多数程序员是因为“不知道自己要什么”而迷惑的。所以欧阳正好把问题看反了。而且,我所知的,绝大多数人都会把这个问题看颠倒。

一般人都不知道自己“想要什么”,谈何规划?当一些人把目标直指金钱——例如把“想要什么”这个问题直接变成了“三年挣50万”,那么你说,这样的目标如何规划?

生存与规划
=========

欧阳兄最后问我:那么应该怎么回答“想要什么”这个问题呢?

如果抛开阶段性不谈,“想要什么”其实就是一个社会观、人生观的问题。我无法对任何一个人的社会观、人生观提出指责或建议,因此我不能跨越阶段性的、特指人群的回答这个问题。然而,当我把这个问题局限在“初入社会、需要规划的人”这一个阶段中的群体时,我想是可以有答案的。

这个答案就是“我要独立”。 “我要独立”包括两个方面:独立地思考,独立的生存。注意,我说的是“思考”和“生存”,而是不是“思想”与“生活”。

首先,学会独立思考,学会为自己的思考和选择负责。这就是独立了。接下来说“独立生存”。就是真正失去依赖感,不要认为有谁能帮你,时时得觉得自己活不下去了:房子要自己买、老婆要自己娶、社会关系要自己打点、时时面临失业的危险……诸如此类。这些就是生存了。

这个时候你再来看你的“规划”。你说是“挣100万”现实呢,还是“明天找份工作”更现实?是“等爸爸妈妈介绍份工作”现实,还是“明天接受一份800块钱月薪的工作”更现实?

所以,你的规划的第一条会写着:活下去;第二条会写着:存点小钱,保证半年内找不到工作不会饿死;第三条会写着:做好每一份工作,尊重同事,并获得尊重。

欧阳叹道:难道这些就是规划吗?

我说:怎么规划?这些就是规划。规划书上写着:一年内10万,三年内50万,十年内退休。哦,那种人一辈子也不要指望他成功。

如果不是为生存而规划
=========

也许上面这个规划对你是合适的,也许不合适。你既可以把自己置于生存的绝境,从800块钱的小工做起,也可以通过借贷,并开启第一年挣10万块的规划。问题并不在于规划的形式,也不在于是不是要规划为“做一个程序员”。

问题只在于你是否自知。要首先自知,然后才知道一个规划如何能切实。所以我一直问,“自己想要什么”。因而当我们把问题讨论到更深层面的时候,却发现大多数人是因为不了解自己,而根本“做不了规划”,而不是“做什么”的问题。

现在,你有开始问自己“为什么做不了规划”吗?

如果你信誓旦旦说自己已经会做规划了,那么你怎么会看到现在这篇文章呢?如果你不会,那么为什么你要看到上面这行文字,才想起来问自己“为什么不会”呢?

你可有反观自己?你可有时时省身?你可在三年开始抉择一根长竿的取舍?你可有开始为三年后见到一棵苹果树而做准备?你,是否仍然期待苹果掉在你的头上?而在这伟大的期望的同时,却行走得如同一具木乃伊?!

我们讨论方法时,总是可以非常简单。例如你只是想吃一个苹果,那么最直接的求解就是“得到一个苹果”,方法则是爬上树摘一个,或买一个,或用竿子捅一个下来。又如果你只想明天去应聘,那么你可以去猜应聘试题或贿赂相关人员。但是“吃一个苹果”和“应付一次面试”只是一个短期行为,职业规划却是一个长期行为。如果你三年前就开始想自己要做什么工作并开始规划“如何通过应聘达到这个目的”,那么你的规划中一定会包括“能力补充”、“了解指定公司的情况”等等这些看起来像炼钢、做锯子一类的事情。

我们讨论规划——而不是实施这个规划的方法时,问题就变得异常的复杂。人人都想吃到苹果,然而没有多少人在乎“全民吃到苹果”,所以大多数人从来没有考虑过苹果如何摘下来,以及苹果树在哪里这些问题——他们的想法是:谁想明白就让他自己去搞明白好了。

周爱民为啥开始讲苹果问题了
=========

不管我曾有过多长的规划(例如二十年),但我现在被邀请写这篇文章,是要告诉别人(多数的从业者们)如何“能做一个规划”。

于是,我也茫然了。

最近的一段时间,我接受的一些约稿几乎全是有关于从业的。然而我不太愿意写雷同的东西,因此写到本篇的时候,我想讨论的只是把问题想清楚,而不是解决问题。一直以来,我都有这种“把问题想清楚”的冲动,这与我的职业角色有关:“想清楚”是架构师的第一要务,而把结果做出来则次之。在如此长时间的、与专业程序员们的交流中,我发现大多数情况下,人们是没有把问题想清楚就开始实作了的——例如根本没有想清楚开发的目标是什么,就着手开发;又如没想清楚从业者们“想要什么”,就帮助他们解决“如何规划”的问题。

更进一步地去理解那些期望通过这篇文章来得到一个“令人满意的”规划的朋友们,问题的根源并非他是否有“想清楚问题”的意愿,而在于你是否有这种能力。在我看来,这种能力与他们是否有反观自身的习惯有关,因为这些问题的答案,原本就在他们自己的身上。冷暖自知,我不能超越个体感受与意愿地去为别人设计或提供规划。所以,在大多数情况下,我总是在解说和质问:“你”如何把问题想清楚?

“想清楚”的意愿,如果发生在今天,那么你面临的总是当下的问题;如果发生在昨天,那么你总是有机会为明天作出准备——例如规划。至于在规划与努力的最后,或者当下,你吃到嘴里的那一口苹果是不是有虫,则是你的运气问题了。

转载于:https://www.cnblogs.com/encounter/archive/2008/06/02/2188640.html

旧文重发:苹果是怎么吃到的?相关推荐

  1. 旧文重发:IP 库的那些事儿之 2013 - 2014 流水帐版~

    重发前言:这篇文章是我在开始做 IP 库后的第一篇相关的文章,是我到现在为止,阅读量最大的文章,也是让这个事情直接上了一个台阶的文章,在这个文章发布之后的一个月内,我们增加了 60 多个客户.其实拿现 ...

  2. 旧文重发:剑走偏锋:非主流的程序员

    这篇文章发表于<程序员>2007.06期. 剑走偏锋:非主流的程序员 引子 在冷兵器时代,大概刀剑算是主流的武器,在军营中,则以长枪.弓箭为主.然而我前两天看了一篇文章,说短棍成为现代实战 ...

  3. 旧文重发 | 爬虫工程师必须知道的几个法律案例

    专业干货!超长文,想看结论直接看文末!!! 爬虫究竟是合法还是违法的? 随着大数据的火热,数据相关行业竞争不仅"蒸蒸日上",爬虫之间的战争也越发地激烈.一篇<你的爬虫会送老板 ...

  4. 旧文重发:做人、做事,做架构师——架构师能力模型解析

    这篇文章发表于<程序员>2008.04期.其中有关模型图参见: http://blog.csdn.net/aimingoo/archive/2007/06/26/1667508.aspx ...

  5. 旧文重发:程序员的七种武器

    这篇文章发表在<程序员>杂志2007.03期的专辑"程序员的武器大家谈"中. <程序员>:请谈谈您所定位的优秀程序员应该有哪些技能?您是怎样理解程序员七种武 ...

  6. soar系统搭建_【旧文重发】Soar简介

    不飞则已,一飞冲天,这是我对学习Soar时的最初宣言.事实证明我还没到冲天的地步,只是向上稍微跳了一下.下面把我起跳的心得体会记录下来,顺便总结一下Soar的基本思路. Soar是一种通用的认知架构, ...

  7. [转帖]苹果是怎么吃到的?——职业规划,从了解自己开始

    [原文出处]http://vipnews.csdn.net/newscontent.aspx?pointid=2008_05_15_165044640 苹果是怎么吃到的?--职业规划,从了解自己开始 ...

  8. 转载--苹果是怎么吃到的?——职业规划,从了解自己开始

    文 / 周爱民(2008年3月刊) 克里希拉穆提有一本著作,名为<重新认识你自己>,我每每读起,都汗如雨下.克氏的每一句话,每一个发问都直刺人的内心,其目如炬如电.克氏的作品大多如此:不停 ...

  9. [转]萧萧秋风·中国摇滚回顾(旧文)

    [转]萧萧秋风·中国摇滚回顾(旧文) 萧萧秋风 潇潇烟雨江南 秋风古道南山 2006-09-26 11:20 中国摇滚回顾 (一) 自崔健1986年第一次唱出<一无所有>到今天,中国的摇滚 ...

最新文章

  1. npm i和npm_让您的NPM套件包含Jest和Codecov☂️
  2. [c#基础]关于try...catch最常见的笔试题
  3. boost::mpl模块实现replace_if相关的测试程序
  4. Java程序编译的几个方法(编辑器Notepad++)
  5. Android官方开发文档Training系列课程中文版:OpenGL绘图之添加动态效果
  6. Python批量替换目录下文件后缀脚本实例
  7. Windows 查看端口被哪些程序占用
  8. python3 https_python3安装,支持openssl,支持采集https
  9. python字符的大小比较_python中字符串怎么比较大小
  10. 干净虚拟机(centos 6.4)上从头到尾安装并调试Mdrill(二)
  11. [转载]MySQL数据库增长用户权限GRANT/INSERT INTO user VALUES/FLUSH
  12. python制作网页挂机_python使用ip代理抓取网页
  13. 深入浅出数据分析(美 完整中文版)米尔顿
  14. Python 批量修改文件后缀
  15. java 切面 不执行,Spring AOP 切面没有执行
  16. SQL Server 2008数据备份与还原
  17. 如何更电计算机共享名称,电脑网络共享设置
  18. OpenWrt路由器设置万能中继及如何永久修改MAC地址
  19. Dynamic Memory Tensor Networks笔记
  20. vlookup+left函数嵌套如何运用

热门文章

  1. LeetCode 1561. 你可以获得的最大硬币数目
  2. LeetCode 1063. 有效子数组的数目(单调栈)
  3. LeetCode MySQL 1083. 销售分析 II
  4. LeetCode 53. 最大子序和(动态规划)
  5. 超级签名源码_企业签名和超级签名有哪些区别?
  6. 无向图的深度优先遍历非递归_【数据结构图(一)】什么是图
  7. Flink的异步I/O及Future和CompletableFuture
  8. 在Linux中查看ftp状态,linux中ftp常见操作启动ftp状态,终止ftp会话
  9. 修改mysql数据库字符集_修改及查看mysql数据库的字符集
  10. 层次分析法AHP - 代码注释多 - ( 数据建模 Python代码)