现在的位置: 首页 > 综合 > 正文

一个叫sjjf的程序员的历程

2014年02月12日 ⁄ 综合 ⁄ 共 3330字 ⁄ 字号 评论关闭

99年9月接触计算机,还没有明白什么是计算机的时候,就被老师灌了一通c语言,
找本windows操作系统的使用手册啃了半个月,终于会用windows了。
同时也接触了dos,拿了本计算机组成原理啃,明白了cpu,内存,io是什么东西
还明白了编码的原理。在编程的过程中,还买了一本长城计算机的dos bios中断详解,
希望公司出版的 内存中断和驻留程序一书,半懂不懂的啃着,反正先记下来再说。
c的语法和标准库玩得不亦乐乎。虽然谭浩强的书很浅薄,但不可否认,它带我入门了,
只是同时,它也给我带来了一系列浅薄的认识,让我散失了对一些有趣的方向的研究的机会。
我的c语言老师是一个很好的老师,虽然在以后工作一段时间后回去看看的时候,
我已经超越我的老师很多,但我仍然很感激她鼓励我的认真和执着,并给我正确的引导方向,
且不会嘲笑我关于程序的一些奇怪的想法,
例如程序可不可以自己调整自己,copy命令为什么不能按照字节数来拷贝.....
评价一个老师,我觉得不在于水平如何,我觉的,她如果能够把应该教授给你的知识教给你,
并给你一个向上的欲望,就是一个优秀的好的老师,
我们不可能苛求每一个老师都是一个专业程序员。
同年末还学会了捣鼓一些常用的装机工具,技术非常低,但是能唬人,
在外系人眼里俨然一专家,实际上,啥也不懂。

00年开始接触算法,从此踏上真正意义上的编程,我开始沉迷于这个有趣的东西,
我从来也没有想过,原来排序这么简单的东西背后也有这么复杂的内容。
图论也让我沉醉,最短路径,关键路径,连通路,哈密顿回路,欧拉回路.....
kmp,我试图改造过kmp的,试图把导数的概念引入求解过程,企图用变化率来代替回溯,
但最终还是以失败告终,不适用于通用情况。
树与递归,树的遍历,平衡b树,哈夫曼树.....
这些概念以及运用真的话让我走入了一个宝库,甚至我都用这些东西解析我生活中的东西。
同年还如饥似渴的提前读了数据库原理,操作系统原理,网络原理,软件工程,然后考了个计算机三级。
同年还深入的调试了c的很多标准库函数,没事儿也研究研究系统的加载过程,虽然只限于调用了那些库.
或者挖挖一些优秀的源代码来看看,有一本书叫优秀c源程序集,里面有很多很经典的例子。
在这时候认识softice之类的优秀工具。

01年,自学了编译原理和离散数学,没怎么学好,只学了个大概,
10月份参加软考,不小心过了高级程序员,
同年开始学习windows平台下的编程,主要是看些window核心编程,windows系统编程,
nt undocument之类的书,同时也重温操作系统原理,
我还发现了操作系统课本上的一段并发的pascal的示例代码很隐蔽的bug,
不知道那本书现在修正了没有。
开始学习delphi,后来不爽pascal的语法,转向cpp,cb和vc,并对某些函数的asm实现感兴趣。
这段时间有一本书值得推荐,虽然好像是85年的老古董了,
叫做组合语言艺术。一个台湾前辈写的,绝版,只有电子版。
这段时间,受国内一些垃圾书籍的影响(没办法,我们学校这方面的氛围不高,且消息闭塞不会也不能充分利用互联网),投入了大量时间去捣鼓他们认为的cpp的重点,曾自以为自己那段时间是最了解面向对象的,实际上那段时间是最不了解的。
也玩玩钩子之类的高级玩意儿。
没事儿照着猫画老虎,搞搞所谓的crack。玩了一段时间又去玩了两个月des,
实在没有办法破译des了,就只能作罢(呵呵,当时的想法挺狂的,
学了点算法就不知道天高地厚)。

02年,学习com原理,看了一本com本质论还有什么window sna(异构平台)的后兴趣高涨,
可惜没有环境和机会来试验com,
也就放下了,之后的生涯中都没有机会和com打交道,渐渐也就淡忘了,
那本书,讲了com和dcom之类的诱人的前景,极具煽动力。
看了本计算理论导引,刚刚理解了状态机之类,图灵机之类的概念后,有一些事情发生了,
一些同学借助vb delphi 等ide之力,做出了一些小程序,并嘲笑俺,
俺郁闷的不得了,幸好俺坚信自己走的路子是正确的,先练内功,再练外功。
但我丢弃了计算理论导引这样书(这是一个不小的错误),转向sql这样的实用型的东西,并和离散数学结合起来,
王珊那本书数据库的书极其垃圾,这么重要的知识都不提及一下怎么玩,搞得俺走了很多弯路。
不过似乎没有书系统地提及这方面的资料。
同年,学会了rose,这是我的软件工程的老师无意将它带入我的世界的,虽然我不亦乐乎的
照着 rose200x从入门到精通的忙乎了半年弄了好多无用的设计出来,
但是却不明白是怎么回事儿。也没有统一于一个个方法论,唯一的收获是和rose混了个脸熟。
我非常感谢我的软件工程的老师,给我带来的新的知识面,虽然当时不求甚解,
但是我的思考的种子确是从那时候发芽的,不知道他的现况怎么样,
这几年的教师节我给他发过电子贺卡,只是没有回音,听说他后来移民去加拿大,
不知道那边能不能上163.com :(

03年,参加工作,并在两周内学习了asp,从零知识开始,学习b/s的运作原理,学习客户端的html,vbs js,dom模型,dhtc,css等,完成技术体系中的表现层的重要一环的填补。
主要学习的资料是一本厚厚的asp服务端编程技术内幕
(也不知道是不是这个名字了,反正是红皮书,很多微软的资深专家写的)以及在csdn的asp板块厮混,
两个月后,俨然成为公司的asp高手,几乎可以凭记忆回答csdn上的asp板块的95%的问题。
开始还颇有兴趣的回答了一些问题,不过有的人是在太懒了,都不懂google一下,后来也就懒得
回复了,即使有回复也是给出概括性的东西或者指引性的东西。
也在同期认识了像永恒地真,木野狐,xxrl几个好友。
偶尔也搞搞网络,用sniffer抓抓包分析分析,想找到iis的关于session id产生的规律,未果,
总结了一些特征,但是不能用来正确推断,倒是tomcat的session id的随机性要好多了。
同年因为技术比较扎实,开始了长达两年之久的小鞋生涯,
所幸,与同事的关系很融洽,而我也足够强悍到不畏惧小鞋。

04年,接触java,捣鼓些com口的设备驱动,其实无他,只是遵照协议往流里面写东西而已。
空闲的时间研究些java的语法,字节码,还有面向对象之类的东西。主要的教材是core java,
还有java虚拟机规范,还有一本面向对象设计。
同年还转去捣鼓atmc(atm的客户端程序),由于本能的对.net的抗拒,(原因莫须有)
把vb.net当vb用,捣鼓了半年的vb.net也没有弄明白什么是.net,反倒是java的底层功力深厚了许多,有空的时候,我常常去挖jdk的源码读读,也找些字节码分析分析,呵呵,那些可爱的cafe baby。
当然也有收获,atmc的开发平台给我带来对平台的思考。
年末转去做web服务,由于asp的基础,对工作基本游刃有余,但也开始困惑于设计,
特别是看到了几个号称傻瓜式的框架。
同年也学习了gof的设计模式。
也读些程序员开发心理学,系统一般化思维之类的书。

05年,受java与模式(阎宏), 建筑的永恒之道。第五项修炼等书的启发,在某一个瞬间悟到了很多东西,感觉就像忽如一夜春风来,千树万树梨花开,理性和感性的通道被打开了,
我开始停止追逐的脚步,
回过头去把学过东西思考一下。果然发现了很多有趣的东西,包括道家思想,包括语言与模式,
包括开发方法论,包括oo的实质,包括生活和工作。
这段时间很少学习新的技术,但是似乎又学到了很多新的东西。
同年开始断断续续的学习抽象代数。
同年也开始结合本身的管理专业,对软件工程的管理的思考,关于协作方式,关于沟通,关于绩效
关于文化等方面。

06年,忙于修补知识体系的根基,忙于工作,在业余时间忙于在csdn上和别人口水仗。思想的碰撞着实是件有趣的事儿。
并在年中,恋恋不舍的跳出it行业。

07年,out of control。

记得起来的也就这么多,其实还有很多忘记了,就像我忘记了我什么时候开始研读的
c++标准语言特别版,cpp design and evolution,编写安全的代码,
服务器端设计模式,功能点分析...
还有很多书,那些书也给我带来不少的思想冲击,不过记不起来那么多了。

抱歉!评论已关闭.