编者语:IT=挨踢,这是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的时候,同寝室有一哥们是学VB的,因为ASP也是用VBScript做为默认脚本,所以有很多成果请教他,他当是也是给了我不少的讪笑,像“这些复杂的成果都还要问”之类的话我倒是听了不少。但到后我们一起学Delphi的时候,我就已经超过他了。
新人们碰到成果的时候,第一个想法就是想找人解决,当你去帮他解决的时候,他却去做其它事了,似乎这个成果是需要你来解决的,下次出现同样的成果他还得找你。遇到成果最好的方法是先排查成果,然后到互联网上查找成果的原因,这样你才不会遗忘,不要忽略了互联网这个最好的老师。我以前在学ASP的时候,为了一个插入数据的成果,查了一个星期,但这个成果我永远也遗忘不了,再也不会范同样的错误。
高手们普通都比拟忙,虽然我不是高手,但我还是不原意在我写代码正酣的时候,有人打断我的思路。先把成果记上去,趁机会问问高手,不要让他为你解决成果,你要的是一种解决成果的思路。公司常常有新人问我,这个地方出成果了,怎样办?我便问他,你上网查了吗?不是我不愿意帮他,而是授人鱼不如授人以渔,我直接通知他怎样做,那不是在帮他,那是我在害他,我只能是通知他排错的方法,解决成果的思路,否则他永远也不知道这个成果是怎样解决的,没有人会珍惜轻易失掉的东西的。
最初,我想给踏入这行的新人们一个忠告,编程没有捷径可言,如果一定要找出一个捷径,那只有六个字——多看、多问、多写文章由
歌瑞尔整理,收集辛苦,希望能保留出处,谢谢斑竹大哥。