在马云做黄页的时代,我悄悄地进入了IT,

邢森,现上海电信信息网络部架构师,一位老码农。看完他的IT心路历程,你会深刻感受到他对技术的强烈热爱。正是这份热爱,支撑他克服从初中开始自学HTML、GWBasic、C++、Java等的重重阻碍。他说:“我真的是码农届的一个真正草根啊,但回望过去,很感谢那个一直坚持的自己。”

与之共享。

-01-

从玩到学

我真正对计算机感兴趣的时间是初中。因为成绩不好所以几乎是无所事事,那个时候互联网牛B哄哄,几乎遍地都是网吧,所以去网吧玩游戏几乎是我们这些坏学生的唯一事业。

我要感谢一个网站和二个人,是他们“救”了我。

这个网站是商都信息港,作为一个小白当第一次打开色彩斑斓的网页时我都蒙圈了:好漂亮,他妈的还会动,好牛逼。那一瞬间我对计算机产生了浓厚的兴趣。(当时xxx热线,xxx信息港几乎是整个互联网的脊梁而大家熟知的搜狐、网易过得苦逼的生活;马化腾正在苦逼苦逼的写新版的QQ;马云正在到处招摇撞骗要做企业黄页。)

作为坏学生都是有团伙的。我要感谢我的好朋友——郭浩,他把自己的计算机杂志和书籍借给我看,这些资料是我的起点,正是因为这些资料让我有了从玩到学的转变。郭浩同学是一个不够意思的哥们,当年我们两个几乎都是对计算机疯狂的痴迷,立志要干出一番事业的。时至今日他从写程序变成了写小说混入了娱乐圈,成为了畅销书作家、小说家、编剧、导演,还给成功改名为——郭傲(可在百度百科上找到他),现在是这样的:

▲请不要被他的照片所蒙蔽,真人比这丑

而我是这样的:

感谢的第二个人是“张鸣”,我不知道他是谁。一切源于这个:

这是郭傲同学借给我的一本杂志,这篇文章让我知道了色彩斑斓的网页是由这些天书一样的代码实现的。我偷偷的从杂志上把这篇文章撕下来一直珍藏到现在,从它的破烂程度你可以猜到我有多少个日日夜夜一字一句的读这里面的每句话,去试图弄懂每一行代码。

-02-

从Windows到DOS

我对HTML几乎是神魂颠倒,孜孜不倦的研究,遗憾的是我始终看不懂。神奇的郭浩同学再次出手,他比我坏,在网吧混的时间比我久,所以计算机方面的知识也比我多,在我心目中他就是一只老鸟。

他告诉我这个叫代码,你想看懂得学习编程。在他的科普下我第一次知道《数据结构》、Basic语言、C语言。为了色彩斑斓的网页我豁出去了,从旧书店淘到了一本编程方面的书如获至宝一般的研读起来。(没有人告诉我去买新书,因为我根本不知道编程是什么。仅仅知道这个名词而已。)

这本比我大一岁的书就是我最早的启蒙读物,多年以后我才知道这本书的作者不仅仅是我正式的启蒙老师也是很多IT从业者的启蒙老师——谭浩强。

因为没有人指导,所以在年我没有学习QBasic,而是从最早的GWBasic学起的。GWBasic中的GW是比尔盖茨的缩写(他的正式名字叫:WilliamHenryGatesIII——威廉·亨利·盖茨三世)。它写起来是这样的前面带上编号,没有循环语句只有GOTO,判断语句必须是一行。

没错,我在开始接触到的不是结构化程序设计而是上古神器——非结构化程序设计。

别问为什么一切都是因为——没人指导。

-03-

正式修炼

我们县城当时只有一所高中(所以自然成为了重点高中)。如果初中没有考上这个高中就必须另谋出路,郭浩同学复读了一年考上去了这所高中,而我几乎对色彩斑斓的网页陷入痴迷的状态(没错,我整个初中都没有搞清楚HTML!!!)

所以选择了另谋出路——中专。中专是坏人的天堂,所有另谋出路的初中生啸聚在这里。我的父亲是非常反对我读中专,想让我复读去读高中,对编程的痴迷+青春期的叛逆让我和父亲死磕到底,要感谢我的三叔他说服了父亲,也要感谢我的父亲——即便一万个不同意也还是花了大价钱给我买了人生中的第一台计算机。

-04-

QBasic、C++、数据结构

中专的这段时间我几乎在毫无压力的状态下可以疯狂的痴迷编程,更重要的是有终于有人指导我了。

学校开设了QBasic课程,(好吧,年的时候QBasic也是醉了)我的授课老师——高红老师,她几乎把所知道的倾囊相授。除了QBasic,她介绍VB给我,鼓励我去学习C,学习C++,学习数据结构。

我第一次正规的接受编程训练,学习结构化程序设计,无论是寻找素数还是打印各种图案几乎都是我的最爱。高一下半学期的时候我接触到C++。

时至今日我依然觉得它是最好的C++教程,没有之一。只有多页非常精简,作者是一对父子。(多年之后我才知道大名鼎鼎的Deitel父子)我第一次知道了面向对象,第一次意识到之前学的叫面向过程,但是没有任何大规模编程经验的我根本不知道面向对象的真实含义。高二我终于参透了那本读了3、4年的——《数据结构》

很多人都知道严蔚敏,估计很少人知道她第一本数据结构书是Pascal描述的而不是C语言。这本书也是我从旧书店淘过来的,很久之前我就知道《数据结构》是所有程序员的内功心法,这本“易筋经”我一直随身带着。遗憾的是我始终看不懂,高红老师只能告诉我一些“技术的名称”没办法给我讲解这些技术。

读懂《数据结构》这本书对我来说是一个非常大的突破。

我的整个技术学习之路都是不懂-不懂-还是不懂-好像懂了-理解错了-不懂。这个过程非常折磨人。

我几乎是0基础,每次碰到不懂的都只能用曲线救国的方式解决,比如学数据结构的时候看到“Σ”符号,我必须先恶补一下数学,麻烦的是我的数学也不好,所以只能死磕。

这种学习方式是非常慢的,但是对我后面的帮助也是很大的。慢慢的,我养成了学习的习惯,也掌握了一套适合自己的自学方法。我还接触到了数据库,这个东西是我从来没听过的。一如我前面曲折的经历这次学习到的也是一个上古神器——FoxBASE+(当时的Oracle8i)

看的是这本书,FoxBASE+。

-05-

进入现代社会

学习数据结构的过程也是我学习Pascal的过程,当我成功迈入*现代社会——学习Windows编程的时候自然就选择了大名鼎鼎的Delphi。

真正的程序员用VC,聪明的程序员用Delphi。这是当年流传非常广泛的一句话。截图里面是Delphi6,里面的数据库访问技术非常强大,尤其是BDE,简直是大杀器一样的存在(当然后来被ADO成功干掉)。

当时的Borland非常牛B,各种吊打微软。遗憾的是这个伟大的公司因为AndersHejlsberg的离开而轰然倒台,AndersHejlsberg被比尔盖茨挖到了微软打造了.net。把Borland送上断头台的正是.net,这段传奇由传奇的书写者划上句号。AndersHejlsberg离开的原因是由于和当时的Borland高层发生了冲突,AndersHejlsberg认为未来是Web时代,而官老爷们认为跨平台才是王道所以力推Kylix。后来的历史印证了AndersHejlsberg的高瞻远瞩,其实Delphi7已经是B/S开发的王者了,无论是indy网络组件还是intraweb几乎都是绝对的耳目一新,即便到现在它们依旧不过时。如果Delphi8能够按照AndersHejlsberg的意思继续下去历史可能会被重写,微软是否还存在可能真会成为一个问题。

高二的时候我从朋友那里看到了一本杂志——《程序员》,这给我打开了一片天。对我来说当时能读到这么专业的杂志真的非常幸运。我接触到了更多的新技术,看到了真正的系统是什么样的。我了解到侯捷的书,李维的书。那时候的《程序员》杂志甚至会有专门讲算法的,一点也不像现在——除了请专家来吹牛B就是请教授来扯淡。

中专三年是我非常充实的三年,口袋的钱不够我就泡在书店只看不买,每次碰到困难都几乎用尽一切努力去克服,我很享受每次豁然开朗之后带来的快感。

-06-

我的大学

选择中专是我的幸运也是我的悲哀,幸运的是自由的时间+我玩命的追求收获了一次一次的豁然开朗;悲哀的是我从此被打上了中专的烙印和优质的高等教育告别。

我们的教育就是这么奇葩,一旦我被打上烙印无论我后来多么努力都无法让它消失,它就像古代刺配会追随你一辈子。中专只能考大专,而且分数线几乎是离谱。当时总成绩是分,我考了多分,而高中生用、分就可以读。

从中专考到大专的人必须克服啸聚山林的想法,必须有足够的自律精神和绝对的付出。所以从付出上来说他们的付出要比一个高中生多得多。

大学是我对自己知识体系查漏补缺的时代,我按照当时的高级程序员课程列表给自己制定了一个计划。计算机体系结构(包括组成原理和性能度量)、数据结构和常用算法、软件工程、操作系统原理、编译原理、计算机网络、汇编语言、数据库原理。

我不关心学校教什么课,只按照自己的计划来把所有的知识点一个一个的过。再破的大学也有图书馆,学校的图书馆是我最常去的地方,中专的生活让我已经总结了一套自己的学习方法当碰到大量资料可以阅读的时候我几乎如痴如醉。

我第一次读《算法导论》(虽然没读懂),第一次看到《计算机程序设计艺术》,第一读《Windows程序设计》,第一次读《操作系统概念》。慢慢的一些人被我记住了,andrews.tanenbaum、jeffreyd.ullman、w.richardstevens、frederickp.brooks,同时也记住了一个系列——计算机科学丛书。

我很幸运,大学又碰到了一群好老师,他们对我逃课去图书馆的事情几乎都是网开一面,考试的时候也会网开一面。所以我的各科成绩都没有挂科,这增加了我坚决逃课的决心。

中专是我最为苦恼的时代,我的疑问,困难;大学是我最为幸福的时代,豁然开朗的次数越来越多,查漏补缺的过程感觉是在打通我的奇经八脉。时至如今这些知识依旧是我混饭吃的资本,比如:订阅发布模式、Windows的事件循环、事件驱动、Reactive、Stream这些东西我总是能联系在一起,也给我一种不一样的视角。

我觉得这些课程是一个合格的计算机专业本科生应该具备的知识,再次感叹我们高等教育的奇葩。这些课程似乎在高校课程里的比重越来越少,高校居然去热衷教——JavaEE开发、.Net开发之类的扯淡玩意。老实说,这些东西只能算皮毛,是可以短时间内掌握的,真正决定一个人是否能吃这碗饭还得看内功心法。

在通常面试的时候我只问一些Java语法,Web开发基础。当告知对方不行的时候他们往往会很愤怒——你都没有问我Spring、Hibernate啊。我觉得其实可以不用问,你连JSP在服务器端执行还是客户端执行都分不清,Session和Cookie都不知道其实就没有资格做B/S开发的。

一个士兵不了解射击的基础知识,给你一把AK真的就会用吗?自己被后坐力震伤是小误伤他人那就麻烦大了。

-07-

感恩

感谢把我带上不归路的郭浩同学,感谢借给我看书的所有朋友,感谢每个帮助过我的老师,感谢书店和图书馆,感谢中国的教育——至少给了我一条路。

我是一个真正的草根,家里没有任何背景,没有一个拿得出手的文凭。但是功夫不亏人,感谢祖师爷赏饭,我能成功地在这个行业立足。

我不是专家教授,没有名校名企光环,我为自己拼搏。

作者介绍

邢森

上海电信信息网络部架构师,最大的兴趣是哲学。喜欢折腾Linux、各种网络协议;目前主要是做一些SDN相关的开发和研究工作。

个人公号:写程序的康德,欢迎







































白癜风治疗那里好
北京中科医院曝光



转载请注明:http://www.92nongye.com/zyjs/204618830.html