不知不觉毕业两年工作三年了,回忆记录一下。
大学。话还得从大学开始说起,高考两次顺利考上了武汉的一个著名专科学校,以极度郁闷的心情开始了我的大学生涯。大一上半年基本上是浑浑噩噩的过来的,印象最深刻的是和几个死党打牌,没有任何精神寄托,下半年开始学习C语言,听说是个很牛B的编程语言,就很想学习,差不多用了1个月的时间把高数课本看完了,以后上高数课我就拿出一本从同学那里借来的C语言看啊看,期末考试高数还考了98分,专科高数考得浅吗!C语言就没有那么好学了,到现在为止还是觉得要是哪天我能成为一名C语言程序员该多好。
只学JAVA。自从开了JAVA这门课程,我就再也没有学习学校的任何课程,小学的一篇课文《我要的是葫芦》深深地引响了我,我就是要成为JAVA程序员啊,学校就是想把我们陪养成JAVA程序员的,JAVA程序员最多又好学,在大二那年我可是很认真的学习JAVA,虽然偶尔也会去打牌。但是要想在一个专科学两年的JAVA,就想成为一个JAVA程序员真是难啊,我们班没有一个人成为JAVA程序员,我觉得作为一名专科生,不参加培训就能成为成为一名程序员,真的很了不起。在大二下半年考完试,我很幸运的被JAVA老师推荐到一家做.NET的软件公司实习,不然毕业了真的很难找到一个程序开发的工作,话说在我快要毕业的时候,公司突然宣布破产了,工作真的很难找,我花了一个月的时间才找到一份跑龙套的工作,这个时候我已经在软件公司混了快一年了。一份跑龙套的编程工作,对于一个刚毕业的专科生来说也不是那么容易找的。
.NET没玩过啊。悲催的实习生活开始了,.net没有玩过,对于程序来说,当时真的是新手中的新手,做过的一个最大的项目就是:用MVC实现了一个基本只有增删改查功能的网上商城,跟淘宝有点类似,都是商城吗!第一个月基本上是在公司学习,自己写点小程序,第二个月就开始干活了,刚开始还没什么人说我,慢慢的就觉得话不对劲了,“你是计算机系的嘛?”,“你连抄都不会?”。经常经理和项目经理站在我的后面指导我,当然语言不是那么纯洁有善,压力真是大啊,慢慢的也学了点东西,多亏了经理和项目经理的用心教导,收获最大的就是写SQL语句了,经常是七八个表关联,数据库在学校我是没有学习的,因为我相信寓言《我要的是葫芦》,我的目标是成为JAVA程序员,不是DBA,一年多没写SQL语句了,正如雄霸所说的:其实我最擅长使用的是剑。这么多年过去了,我想告诉别人:其实我最擅长的是写SQL语句。但是现实是好久没写了太生疏了,现在又开始写SQL语句了。就算是目标这么坚定我还是没有成为一名JAVA程序员,我成为了在学校里最看不起的.NET程序员,因为当时接收到的信息是.NET没有一点技术含量,JAVA才有技术含量,有你妹啊,JAVA就那德性,我估计我这辈子都不会成为JAVA程序员了,慢慢的我喜欢上了C#,吃饭的家伙必须喜欢。彻底的抛弃了我曾经最爱的JAVA。
北京我来了。话说还没毕业公司就破产了,花了一个月的时间找到一份北京的工作,月薪2000,我当时那个高兴啊。可见我找工作的时候是多么的辛苦,是多么的难找,技术是多么的让人瞧不起,当然不得不承认现在我还很菜。公司是包住的,每天过着两点一线的生活,上班加班,回家做饭看电视睡觉。业余时间没看过书,因为到那个时候还没有买书的概念,生活也没有什么追求,工作还能胜任,就是那种一个人搞定一切的工作,到现在为止我都不知道那半年我有没有学到东西。在北京月薪2000的生活,过久了谁都会发疯的。更重要的是发现自己都没怎么进步,你知道的,其实我也是有理想的,虽然我还不知道理想是个神马东西,我怎么能忍受不能进步呢。
带着能学到更多知识的想法我跳了。妈的,我一个人搞定一切,你一个月给我2000,我还不跳槽,难道我是真的疯了吗。换了家公司感觉好多了,最重要的是室友也换了,一个室友是在读研究生,特爱看书学习,跟他住在一起久了,我也喜欢上了看书,一年买了十几本书,专业非专业的都有,另一个是一个硕士,C++程序员,他对我的引响也很大,我是一个C#程序员,很菜的C#程序员,但是他让我不知不觉爱上了C++,导致我到现在为止才买过一本关于C#的书籍CLR Via C# ,其他的都是算法、C++什么的。话说有这本CLR Via C#就够了,有了这本书,把他啃透了,你就能胜任大部分的C#工作,我还没有啃透,但是我觉得从这本书中学到的东西比我在工作中学到的多写,因为他让我对C#的理解更进了一步,当然也跟我做的工作没什么技术含量有关。工作就像打菜一样,没有一点挑战性,业余的时间我看起了C++。
自己的一些理解(板砖来吧,说不定能把我打醒)
在这里我不想讨论该学什么语言,那种语言好。JAVA我已经pass掉了,不会再去学习,我现在是一名C#程序员,C#跟JAVA是一个层面上的,不想横向发展,只会浪费时间,虽然大部分的大公司都有JAVA程序员的职位,很少有大公司有C#的职位,少之又少的大公司的核心产品是用C#写的,虽然我承认C#代码是最优美的,开发速度是最快的,代码也是最好理解的,但也不得不承认也是最廉价的,我一直想进一家大公司,我太想了,但是每每看到大公司的招聘职位,就让人蛋疼,我是C#程序员。甚至有一次在招聘会上,因为我是找C#得工作而被一个菜鸟嘲笑:C#一点技术含量都没有,现在我想想,我不管他是JAVA程序员,还是C++程序员,我都可以很定的说我的算法能力一定比他强,因为我已经认定了这种人就是菜鸟。
想写一辈子的代码。我的爱好不多,我爱程序,不喜欢管理,虽然可能对别人指手画脚比较过瘾,但这又有什么意义呢(一次面试,我的答案不正确,我想说出我的思路,面试官说:你的答案是错的,说思路有什么意义呢,有什么意义呢,的确是一次没有任何意义的面试)。心里总是想着我是要写一辈子程序的,我不能总写别人封装好的代码,如C#,我想知道它的底层实现,我不想我写了N年的代码,然后又一菜鸟鼓励我说:“C#程序员啊...不错啊!”。当然这是次要的原因。
C#程序员有多少能成为大公司、或是有个性的公司的核心开发人员。又有多少很酷的产品是用C#写的,我太想参与很酷的产品的开发了,其他的都是浮云,我觉得C#程序员的瓶颈比JAVA、C/C++程序员来得早。或许你会说C#程序员中很牛B的人也有很多,但是相对C/C++程序员来说真的是太少了,这是不可否认的事实。
当然C/C++程序员也不是我所想的都很牛X,我想对于大牛来说语言就是浮云,语言只是工具。但是没有这个工具连个跑龙套的机会都没有,我没有C/C++的经验,能力半瓢水都没有,谁会要啊。
回到吃饭的家伙C#上来,我现在很喜欢他,写代码的确很爽,感觉写C++代码就是有点别扭,吃饭的家伙必须必须学好,业余时间也会看看C++,希望哪天能突然冒出一句:其实我最强的是C++。参与很酷的产品的开发一直是我的梦想,C/C++就是我认为的工具,当然还有其他的工具。C#入门太容易,C++入门太难,可能是太容易得到的东西往往没有得到应有的珍惜,得不到的才是最好的。也与将来有一天我会掌握多门语言,我可能会是C#、JAVA、C/C++程序员,因为一辈子相对的掌握他们肯定不难。程序之路才开始不久,自己还是个菜鸟,也许一直学习C#,薪水能比现在多点,但是我很淡定。
下面这些书是我业余的时候偶尔翻翻的:
《深入理解计算机系统》好难啃啊,是卡内基-梅隆大学的教材,你说差距怎么就这么大呢!
《Oracle DataBase 10g SQL开发指南》是本入门级的书,很烂。
其他的书都还OK,我喜欢。