今年29了,我想从事JAVA开发。我爱这一行。
我是09年毕业的一名大专,软件专业的。09年的时候搞互连网很火。那时候学的JAVA。。高考填志愿的时候想都没想就选择了软件。那时候不知道什么是软件。学习的第一个程序就是“hello world”,感觉很神奇。有点和想象中的一样。起初半年时间,上课还是很认真,基本都跟着老师学。大家都知道JAVA的初级教程,基本都是教你用方法。半年时间,随着基础的越来越多,涉及的类库也越来越多。每次去看API都要看得头疼,老师讲过的知道是怎么一回事,老师没讲过的,完全看不懂。半年过后开始有了自己的思维1(之所以思维1,算了对软件有最基本的了解),自己的所谓思维1就是,我草,老师讲过的就看得懂,老师没讲过的就看不懂,为什么我自己看不懂,难道是老师没讲?。何况这东西是美帝国的。通过自己的简单推理,感觉学软件不是这么学的。从这时候开始就有点放弃的念头,加上当时,学校就是一个大网吧,大家来学校都是玩游戏的。学习氛围太差了,图书馆里面基本没人。就这样,大学第一年,就在懵懂中结束了。
大学第二年。JAVA的基础还是在第二年继续,印象中比较深的就是学Swing。Swing往往是JAVA基础的最后几章,一看课本,就发现学JAVA要到头了,必须认真听讲,不然什么都不会了。(这其中系主任有一句话,深深的影响了我,“我知道你们不爱学,但是多学点知识,以后聊天的时候都会高级一点”),就奔着这句话,我开始抛弃游戏,认真的学了起来。由于第一年的基础基本放弃,所谓万丈高楼拔地起,没基础什么都别谈。在学Swing的时候,脑袋就瞬间大了。基础的东西不会了,那时候就学会在网上查资料,发现了一本书,JAVA编程思想。网传是学JAVA的圣精。第一遍,直接看不懂,所以把代码都在机器上运行了,才能勉强看懂,当然全都是CTRL+C / V。。看了第一偏JAVA编程思想过后,开始形成了思维2,(思维2就是,虽然看不懂,但是感觉书写得太好,每一章都是引导型的方式去阐述JAVA,书描述的就是一种思想,一种学JAVA最基础的思想。),可以说多少有点因为是这本书,让我有开始有点热爱编程。。。。第一遍看不懂,没关系,再来一遍,通过第二遍的学习,感觉大学一年就这么混过去,还是蛮值得的。就这样第二年结束了,感觉学有所成,但是不是在学校,是在网上。
大学第三年,这一年开始学习JSP,和JAVASCRIPT,JAVASCRIPT对于我来说就是一种CTRL+C / V的东西,在那时,人家国外人玩坏了的东西,就算是现在JAVASCRIPT也是一种CTRL+C / V的东西,不服的可以来辩。由于有了思维2,大三的时候就开始结合自己的思维2,去学习JSP.无论sevlet这里面的东西是放在以前还是现在,都是一种非常厉害的东西,这可以算是学JAVA的人接触的第一个框架。。。但是学的时候老师没能说出sevlet厉害的地方,还是一味的讲方法。。。从这时候开始就开始去研究原码,这东西为什么那么厉害。这一年开始形成了思维3,(思维3就是一定要看懂别人写的什么东西,特别是JAVA类库里面的东西,因为你学的是JAVA,不了解JAVA怎么说得过去,这也算是从被动学习的思维,转生为主动学习思维的一种过程吧。)原码不看还好,一看脑袋彻底的炸了。。native关键字,记得在看动态代理的时候,看到最后一行的时候就是一个native 方法。。。网上去查资料,发现JAVA是C语言写的。这时候,心中一万个为什么。。为什么JAVA是C语言写的,为什么JAVA是跨平台的,难道以后如果要写出牛B的程序,还必须要学习C语言,学习写native方法?难道JAVA就这是一种编程工具,一种没创造力的东西?。什么是JVM?。正是形成思维3过后,又让我有点开始放弃JAVA了。。。。人们常说学无止境,学JAVA感觉就是这样,这期间网上学习过SSH,研究了两个月,,然后又出现一个EXTJS,又尝试型的研究了2个礼拜,还有什么AJAX,jquery,。。这期间就有很多让我想放弃的时候,感觉这东西没玩没了,什么时候才是头,瞬间又让我回到了原点,JAVA是什么,为什么学习JAVA,就算JAVA学好了也没用,还要学SSH,学JAVA里面的各种方法,还要学AJAX,我记得当时学校做项目的时候,有个同学用了AJAX,老师表扬了他,做出的页缅效果的确动态了很多,很酷。。万一以后再出来一个新东西,是不是又要学,那时候看网上的招聘,很多都提到要有学习新技术的能力,英语的能读(我心中的理解就是学习新框架的能力,读原码的能力)。。我感觉这种学习的方式,不是一个软件人的标准,但是又不知道那一种思想才是一个软件人的标准,,那时候听说微软的软件工程师平均智商都是170以上,,仔细分析,人家170以上的智商不可能用在学习新东西上,但是又不知道人家用在什么地方。。这时候我有想退离的想法了,但是我真的很喜欢,很热爱编程。,有时候我做梦都在想,“人家需要你做一个东西,当人家一描述完过后,自己脑袋就形成构思,然后啪啪几下键盘就敲出来了。”这就是我对软件程序员的理解,到现在也是。。但是不知道怎么突破目前这种贫境。虽然我是个专科学生,但是我从来不认为自己是很差,就算到现在,我也没有感觉比别人差多少,,差的可能就是一种系统的学习,一种强化的训练。差的可能是一个好的老师,一个好的能互相学习的伙伴。。。很遗憾,大3的最后半年,才开始学习设计模式,学习数据结构。。感觉又是一套新的东西,,设计模式还好,死劲硬背,感觉就学了十几种。。数据结构完全就蒙逼了。。只要涉及到递归完全蒙蔽,需要几个变量也完全蒙逼。。学校里面学数据结构最远就学到二叉树。就讲了二叉树的3种历遍,什么红黑,平衡没讲过。老师没讲过图,老师说你们不需要掌握。。想起来感觉就象是在侮辱智商。。。。就这样大学3年结束了,毕业后的不懂,想懂,以及天天玩游戏的消沉中结束了。。。
毕业后我还是想去找 JAVA方面的工作,,我所在城市是四川南充,离成都和重庆都很近,但是我不想离开南充。毕业的时候南充没有这方面的工作。。本来我打算自己进化一下自己的思想,多学点JAVA,把在学校不懂的东西,统统都要搞懂。但是家里人不希望我一天都呆在家里,要我去找工作,被逼无奈,我去酒店当了一年的门童,学了B2去开过一年的大货车。然后晃了几年,心中还是惦记着JAVA,,。。
老实说家里没钱,我也不是很喜欢钱,为赚钱而去赚钱,我感觉是坑人。。我喜欢足球和喜欢电影明星梁朝伟 ,在他们身上我能看到一种精神,钱不重要,没本事最可怕。有本事如果还是为了钱也很可怕。。C罗工资那么高?难道他不怕在球场上被踢断腿,天天健身不累?梁朝伟那么厉害,也没成龙和刘德华那么勤快去拍电影,当导演。。。。他们2人都不是聪明的人,但是他们热爱这一行。。。。有时候我在想怎么才能做到月薪1W的程序员。老实说我现在的编程经验是0。。每每去看月薪1W的程序员需要的条件,就感觉压力很大,,就感觉需要各种知识和技术。。每每的去往月薪1W的目标去学习就感觉离自己心中的程序员的距离越来越远。。在我心中月薪1W的程序员,压根就不是程序员。不是软件人。。在我心中软件是一种创造力的东西,解决问题的东西,软件应该是变的,计算机永远只认识0和1。。软件就是怎么把东西变成0和1,,变成0和1需要很多过程,我门应该怎么去把控每一个过程,怎么去设计每一个过程。怎么去获得每一个过程,而且每一个过程都能有单独的作用。。。这感觉就象是学动态规划一样。。动态规划很神奇的地方就是求出最优解的时候,就求出了全部的解。。如果你不想要最优解而想要其他的解,也能一下就拿出来,而不需要重新去设计算法。。。。这有点开始让我开始理解SUN公司的员工那么牛B,为什么不去写一个框架,而是永远去专注底层的东西。专注人们可能更需要的东西。。
我现在真的很想去编程,很需要一个敢留我的公司,那怕月薪就只有2000RMB。。你们的公司敢要我这样的人吗。大伙说我现在的年龄重新去开始晚吗?。。。或者用2年的时间能成为一个怎样的程序员。。。现在才发现我真的很爱这一行,对于我来说,我没有退路了,成为一名程序员是我的目标。。