已经半年没写博客了,写作能力好像有点退化。趁着刚看完xdite的文章《给尚未大学毕业的朋友的几个人生建议-挑战未来篇》后,心中还有不少想法时,赶快整理分享一下。
从小到大,我一直对这个世界的学校有着复杂且矛盾的情绪。学校该教的是理论知识?还是可以在工作时马上派得用场的实用技术?我一直觉得比这些更重要的是要培养学生的思考能力和自学能力,但台湾的学校走的却是相反的方向(灌输知识)。更加矛盾的一点在于,如果学生经由学校培养出了强大的自学能力,那还需要继续待在学校学习吗?
我和xdite的想法有很大的共鸣,她说的三件不要做的事“可以不要念大学”、“不要做研发替代役”、“热情比什么都重要”,我也多次对不同人给过同样的建议。以我自身的情况,我相信我即使不念大学也能靠写程序在一些中小公司混得不错,甚至不到20岁就自己接项目或开公司都有可能。但和xdite不同的是,我完全不后悔花了10年从大学一路念到博士。
我高中就自己学会写程序,从大一时就在一些公司兼职写程序,所以我很早就知道这不是需要上大学才能学会的事,而且我甚至已经能靠这个技能赚不少钱。我也在高中时就知道大学不教实用技术,教授不会教我最新的程序语言和framework(程序架构),或是如何把程序写得更漂亮、把软件架构设计得更加灵活而且效率更高。但偏偏我有兴趣的都是这些事,既然早知如此,为什么我还要念完大学,甚至继续念了硕士,最后还出国念了博士呢?
资讯界的大师Knuth有一句名言:premature optimization is the root of all
evil(过早最佳化是万恶的根源)。
名言之所以是名言,就是因为这句话可以应用到很多地方,甚至包括人生的选择上。
虽然我很早就发现自己最有兴趣并且最擅长的事是写程序,但我并不想老是写别人想要的那几种程序,而把自己侷限在这个小世界裡,而放弃探索其他的可能性。我不是说我想探索医学法律或政治这种完全无关的领域,而是我想知道我在资讯这个领域可以走到多深或是可以从这裡扩展得多广,甚至是跟其他领域结合起来创造全新的火花。如果我在高中就决定我想要全职接案写程序,那我一辈子的成就可能就是写过一千个有不同外皮的论坛和购物网站了。
反过来想,如果我放弃念大学,会失去什么?
第一,扎实的理论基础。很多人觉得大学教的东西和產业脱节,就是因为大学偏重理论而不重实务,导致毕业后没有适合工作的技能,所以觉得上大学没用。虽然我大学的课几乎都没去上,但该学的资讯基础科目我还是有学,只是我是用自己的方法学而已。学习任何学问都一样,基础永远是最重要的,不懂事物背后的道理,就不可能灵活运用甚至加以改进和创新。
我在高中参加程序比赛时就知道自己不够聪明,不是念纯理论的料,但我还是想要知道每天用的作业系统、网路、操作介面、程序语言背后运作的原理和机制。而念大学是当时唯一能让我有系统学会所有基础知识的最快方法,即使我不听课,我也有作业可以练功,还有周遭的同学可以讨论。我不是个满足把东西做出来就好的人,我会一直想要加以改进或是找出完全不同的方法来让事物变得更好,所以学会这些理论和知识是一个不可或缺的基石。
在软件业有个陷阱。因为“新技术”出来的太快,很多人以为要进步就要一直追逐最新的东西(包括各种软体工具/程序语言/framework/library/design
pattern),不然就会被时代淘汰。但其实这些技术背后的理论和思想数十年来几乎没有多大进步。如果理解这些思想,就能看穿这些技术背后的本质其实都是互通的。看穿这点后要学各种“新技术”其实都不费吹灰之力,甚至才能站得更高变成创造新工具和新思想的人。
这个陷阱的反面是,一直忙著学习“新技术”,会让人一直以为自己有在进步和学习,但其实学到的都是换汤不换药的东西。每天忙著追逐新出炉的技术,等於画地自限把自己的极限设定在这些技术上头,岂不可惜。
换个例子说,如果人类只是满足於学会各种骑快马的技术,那汽车和飞机就永远不会被发明出来了。
第二,眼界。在我之前一篇文章“我为什么要念博士”也提过,打开眼界是我在台大最大的收获。从MIT毕业后,我甚至觉得我的眼界又再被打开了一次。一个人会做什么事,完全取决於他看到的、听到的、体验到的生活经验。就像大学生老是做选课网站和团购网站一样,因为那就是一般大学生的生活。
学校的好处在於各种人和各种课程都有。每个同学都有不同的梦想和目标,更难得的是这些梦想还没被社会的现实压力摧残过。多元化的课程也可以让人想学什么就学什么,一切只是看自身的意愿而已。在学校裡听著各种梦想和经验,让我会想尝试各种不同的机会,挑战自己的极限。我的人生道路常常大转弯,虽然每次刚要转弯时都不知道接下来要面对的是什么,但每次都发现离开自己的舒适圈后都可以迈向新的高峰。这就是眼界带来的威力。如果不知道一山还有一山高,我就不会有勇气离开目前的山头去登上更高的山,进而避免自己做出过早最佳化的错误决定。
很多人说大学教的东西没用,但我一直觉得,大学教的东西不是没用,只是看你会不会用。而决定你会不会用的关键,就在於你的“眼界”。我每次想要突破自己的舒适圈时,都会遇到新的挑战,而以前没学好的“基础知识”就会在这时跑出来咬我几口,强迫我把它学好才能继续前进。如果你老是觉得做的事很无趣,用不到大学的知识,那很有可能只是你钻得不够深,想得不够多而已。
第三,练功时间。xdite说不要白天做完全没兴趣的工作,晚上才自己偷偷练功,这点我完全同意。但我觉得既然要练功,为什么不在学校就开始全职练呢?念大学的时间可能是这辈子最自由的时间了,以资讯系为例,喜欢学各种程序语言可以每个作业都用不同语言写,喜欢做网站也可以把每个作业都用不同framework做成网页界面。这其实就是训练自己把理论和实用技术结合的最好时机,也是可以容忍自己不断犯错和尝试新事物的天堂。(到美国念资讯博士班更好,学校/教授会出钱让你练自己想练的武功。)
全职工作是练好一项功夫的好方法,问题是工作是领别人的钱帮别人做事,很多时候自己没有选择想练什么武功的自由,过十年很可能就还是只会一种武功。尤其是职业的工程师,已经熟练特定的语言和工具,在工作时就会倾向一直用自己最熟悉的工具来做,因为这样才能最有效率的生产出客户要的东西。在这种压力下,只能把自己本来就会的技术练得更熟练,而没有办法利用工作时间去学一个本来完全不熟的技术或理论。以做网站为例,一个已经用PHP做了一百个网站的工程师,能跟老板/客户说“我觉得node.js很有趣,能让我一边学一边用来做新专案吗?”
说到底,一个喜欢追求进步的人无论放在什么地方都会不断要求自己。只是拿别人的钱就得多一份无奈和妥协,学习的自由也会被多剥夺一些。很多人在大学里放空实在很可惜,因为我觉得大学其实是一个精神时光屋,如果能在里面全心投入锻炼和学习各种知识和技能,出来后都能是超级赛亚人。但如果你在里面放空四年,出来后只会感觉像坐了十年牢一样空虚和无趣。当然,如果是一开始就念了自己没兴趣的科系,那…
别浪费时间,趁早转系或干脆暂时休学吧。
整体来说,我觉得念大学对我的帮助很大,但同时我也觉得不是每个人都应该念大学。不是每个人都当吴宝春这篇文章的比喻很不错,如果以盖大楼来形容这个概念,把砌砖作为一种技能,把盖大楼作为一种知识,我想可以这么讲:如果你早就知道你喜欢砌砖,很会砌砖,就直接去砌砖吧。如果你的梦想是盖大楼,你要学的东西还很多,那读大学是你最好的途径。
不是每个人都要盖大楼,靠砌砖就可以赚钱了,砌的好还可以赚很多钱,大家抢著要。
我很喜欢砌砖,但如果我因此而过早专注在提升自己的砌砖技术,我就永远不会知道自己真正的梦想是盖大楼了。
转自神人vgod
加载中,请稍候......