有一天我莫名的觉得,这就是命!
年轻人不会相信这些虚无缥缈的东西,只是当有一天我们经历了那些风风雨雨,回头再看我们的人生,会忍不住的感慨,这造化的神奇。
—— 《折腾》(卷一)青涩 · 卷首语
自从写了我的经历(从律师到包工头,再从包工头到程序猿),就一直有同学在问我:“你当初为什么要转行啊?”“我该不该转行呢?”“学编程/做开发是一种怎么样的体验?”……诸如此类。
之前也零零碎碎地写过一些,但今天突然想到另外一种叙事方式,或许直接把我的编程经历写出来,以作参考,让大家自行品味,会更生动直观一些?
我是1995年,初三毕业之后的暑假,第一次接触编程的。因为考上了重点高中,我爸奖励了我一台学习机,就这个样子的:
我知道很多同学都是“挂羊头卖狗肉”,把她当成游戏机来玩,O(∩_∩)O哈哈~
但我比较奇怪,游戏当然也玩,但是也真的学了,学的很简单:一是五笔打字,另外就是Basic编程。
而且没人教的,就是一本《说明书》,照着敲,敲出来的大概就是这种:
应该很无趣的吧?但当时就是着迷,为什么呢?
我努力的回想当时的状态,大概首先是因为好奇心吧。有一种捣鼓一件玩具的感觉,我输入一些命令,她就会相应地显示出来一些东西,这其实是一件蛮有意义的事?
我看到过一种说法:为什么打游戏(或者嗑瓜子)容易上瘾?因为这种活动会不断的提供反馈,刺激着我们把这种活动一直持续下去。那么,编程,其实和打游戏差不多。无论是顺利实现你的想法,还是中间出了bug,都会刺激着你继续……写程序,真的很容易让人进入一种“忘我”的状态。我有时候在想,无法因为编程而进入一种“忘我”状态的程序员,根本就不应该做程序员。可惜了!
但我也有同学有学习机,他们为什么没学呢?想来想去,一个不要脸的结论:可能是我比较“聪明”一点,~(@^_^@)~。这个“聪明”必须加引号,我只是好奇心强,接受新鲜事物快。小时候的事都记不得了,大人说的不算;初中刚学化学,高中刚学物理,我都是一骑绝尘脱颖而出的那种(当然后面就不行了,慢慢被追上来泯然众人)。所以可能我可以靠一本《学习机说明书》就把编程学起来,而其他小伙伴还不行,所以他们就打游戏去了……
我读的是重点高中,所以学校有机房(进屋都需要脱鞋的那种),高一的时候也有计算机课程,我的DOS什么的,就是那时候学会的。那时候机房的老师还写了个类似于“小蜜蜂”的游戏,把我崇拜得,两眼冒星星。但是高考填志愿的时候,因为我是色盲(准确的说是色弱)受限制,胆子小,又因为少年时代的律师梦,没有填计算机专业。
之后我就一直以为,此生和计算机编程缘分已尽。
岁月悠悠,兜兜转转,谁能想到,我经历了那么多风风雨雨,十年过后,我又要开始学习编程?!
十年,对于编程世界而言,已经是天翻地覆的变化啦。捧着一本《ASP.NET网站开发入门》,我一脸懵逼。编程不就是if...else...么?怎么还有什么“对象”“继承”“多态”……再掰着手指数了一下,还有什么HTML/CSS/SQL Server……整个人都不好啦。
为什么要学?
这时候和兴趣半毛钱关系都没有啦。那时候创业失败公司破产,一勾子的债,老婆挺着个大肚子……急啊!就像赶快学会了,做个家装门户网站出来,绝地反击!
谁知道啊,这一学,就从计划的三个月,变成了六个月,又从六个月变成了一年,再从一年变成了两年,两年变成了五年……又过了十年,我的家装门户网站还是没影儿,而我的“源栈”编程培训班,却红红火火的开了起来。
这一次学编程,我应该是被逼上梁山。但逼上梁山之后呢,我却慢慢地过得有滋有味起来。
这里面当然还是有好奇有兴趣的成分在里面,但我想,这时候,还有更多的东西在吸引着我。
电脑不是人,我做律师做家装,尤其是做家装那两年,和人打交道,真的是身心疲惫!编程复杂不复杂?当然复杂,但和人心相比,那简直是单纯得纤尘不染。
理工男总是被人说“情商低”。当我成为一个程序猿之后,我忽然就明白了:他们根本就不需要情商。
不需要情商的地方真是一个好地方。
很多时候,只要打开Visual Studio,把双手放到键盘上面,代码像水一样的从指间流淌,就仿佛进入了另外一个世界,清晰、严谨、优雅的美丽新世界。在这个世界,你是电你是光你是唯一的神话……
有没有累了,不想写代码的时候?
偶尔还是有。但那多半是还没有开始写的时候,我一般是这样,开头的时候可能会各种磨叽,但只要开了头,就有点刹不住。尤其是有bug搞不定的时候,那就是一定要把它搞定了才罢休!
其实不写代码又干嘛呢?到目前为止,我干过这么多职业,还真没一个像编程这样吸引我。
当然,人和人之间是不一样的。我听到过这么一句话:“天天坐在电脑面前,感觉人都发霉了……”,让我很受启发。所以虽然我做着“源栈”培训的生意,但这两种人,我还是会主动劝退的:
做编程真的是要终身学习的。
但这个终身学习呢,也没你们想象的那么恐怖,嗯,
哈哈,说正经的。因为新技术总是在现有技术的基础上产生的,绝对没有那种凭空出现的新技术,所以老人学新技术总是比新人快的。我是不太理解那种“上了年纪学不动了”那种人究竟是咋回事的——估计就是个心态问题吧?或者年纪大了分心的事太多?老婆孩子啥的?但年轻人就不谈恋爱了么?就一天到晚闲着,就没有一些花时间的活动么?怕是也不至于吧?
“时间就像海绵,只要挤一挤总是有的。”这句话是不是鲁迅说的?^_^,但我觉得还是有道理的。
算了,人艰不拆。每个人都有选择自己生活方式的权力。我只能说,“怕以后没时间/精力/能力学习”的同学,最好是不要学编程——这个行业的技术更迭确实相当相当的快!十年,不,十一年前我在培训班学到的技术,现在还能用的,应该不到……两成,三成,好吧!最多最多不超过五成。
回头看了一下开头的三个问题。都回答得差不多了,可能有些同学还不知道我学编程的体验,以前都写过:从包工头到程序猿。但我想强调的是:编程的学习是一个长期的过程,并不仅局限于你在学校你在培训班的那点日子。在编程这条路上,你能够走多远,取决于你的性情、学习能力,以及决心和毅力。
祝好!
多快好省!前端后端,线上线下,名师精讲
更多了解 加: