编者语:进入IT行业有四五年了,也算得上是一个“老人”了吧,对这个行业多多少少感悟。在此写给进入IT行业的新人们,以共勉。

        关于基础

  现在很多新人们都是好高骛远,目空一切,基础的东西不想做,难一点的东西又做不了,真的很令人头疼。其实技术人员,尤其是中国技术人员,你要懂的东西太多太多了。我们拿Web程序员举例吧,HTML、Javascript、CSS、Photoshop切图,这些都是很基础的东西,但很多人就是不愿意去学,认为这些东西太低级,甚至有些老程序员也不擅长这些。但我要告诉你,在Web开发中,这些都很重要,尤其是CSS和HTML、Javascript,如果你不是做一个OA之类办公的Web系统的话,这些在网站用得太多太多了,是一些Web应用的基础。

  虽然我们现在涌现一大批如ASP.Net的优秀开发环境,可以让你完全不懂HTML也能开发出一套“网站”来,但正如其它程序化的东西一些,它会限制你的灵感与思维,它们都很霸道,所以才会有开源的兴起。我以前甚至不愿意用ASP.Net内置的GridView,我宁愿自己去构造Table,这觉得这样我更便于控制。

  很多新人们喜欢拿新兴的技术说事,比如说AJAX,但实质他根本就不懂AJAX实现的原理,连多线程的原理都不懂,怎么能明白AJAX呢?有些做了一年多ASP.Net的人,居然还不知道.Net Framework框架的本质是什么,不知道ASP.Net是如何实现的,也不知道客户端和服务器端是如何交互的。

  在这里,我建议做Web开发的新人们,HTML、Javascript,CSS是实现一些Web功能的基础,一定要打好基础,当你会你记事本编辑这些代码的时候,恭喜你,你过关了。

  关于语言的选择

  语言之争都是大公司战斗的结果,套用一句管理上的话来说,把合适的的技术用在合适的地方。我们没有必要跟风去不停地换新的语言,每种语言都有它的优劣,但在一般的项目中,很难看得出来。如果我们做一个只需要新闻发布功能的小公司网站,你说是Java和.Net好,还是Asp和PHP好呢?在很多时候,Java与.Net、Asp与PHP是难分高下的,他们之间的差异或许是你一辈子也不需要用到,我们范得着把自己拉入某一些阵营吗?

  当技术达到一定的水平之后,语言只不过是锦上添花了,武侠小说常无招胜有招就是这个道理。你现在让我换成Java或者是PHP,我很快就可以做项目,因为我掌握的不是语言,而是对技术深层次的理解,现在Java阵营也好,.Net阵营也好,不管你说它们之间有多少差别,但他们的本质始终没有变,掌握这些本质,换一种语言就好比换一辆车,只需要一个熟悉的过程和一个磨合期而已。

  最后,我建议新手们选择一种在你实质工作中需要的语言,坦坦实实地学好,不要中途“变节”,这样的成本太高了。.Net也好,Java也罢,只是一辆车而已,学好开本田就会驾丰田。

  关于学习态度

  学习嘛,在学习的过程中自然会遇到一些问题,遇到问题自然会想到求助。古人有云:礼下于人,必有所求,言下之意是有求于人,必要礼下于人。可是现在有些人不仅不礼下于人,反而还趾高气扬,仿佛谁欠着他似的。我们老家有句俗话叫拜师学艺要吃二十四碗鼻涕,可见在学习过程中要受到多少的委屈。

   新人们碰到问题的时候,第一个想法就是想找人解决,当你去帮他解决的时候,他却去做其它事了,好像这个问题是需要你来解决的,下次出现同样的问题他还得找你。遇到问题最好的办法是先排查问题,然后到互联网上查找问题的原因,这样你才不会忘记,不要忽略了互联网这个最好的老师。我以前在学ASP的时候,为了一个插入数据的问题,查了一个星期,但这个问题我永远也忘记不了,再也不会犯同样的错误。

  高手们一般都比较忙,虽然我不是高手,但我还是不原意在我写代码正酣的时候,有人打断我的思路。先把问题记下来,趁机会问问高手,不要让他为你解决问题,你要的是一种解决问题的思路。公司常常有新人问我,这个地方出问题了,怎么办?我便问他,你上网查了吗?不是我不愿意帮他,而是授人鱼不如授人以渔,我直接告诉他怎么做,那不是在帮他,那是我在害他,我只能是告诉他排错的方法,解决问题的思路,否则他永远也不知道这个问题是怎么解决的,没有人会珍惜轻易得到的东西的。

  最后,我想告诉IT行业的新人们,编程没有捷径可言,不要妄想一步登天。只有多看、多问、多写,不断琢磨和思考,才能沿着自己的目标一步步走下去,最后达到光辉的顶点。