IT行当,也叫“挨踢”,不少老人在这里“打转”,他们也见了许多新加入者。一路走过,经历过数不尽的面试和选拔,手中也不乏些许发言权。
关于书本的启示
新人们常常夸耀自己读了多少书,看了哪位大师的作品,仿佛只要翻过几页就能掌握所有知识。技术并非纸上谈兵。面试时滔滔不绝,但实际操作时却捉襟见肘,这往往是因为缺乏实践经验。经验在技术领域中至关重要,因为有些问题,即使是最博学的书本也无法提供答案,只有在实践中才能真正领悟。
掌握书本知识只是开始,如同学会削木头并不意味着能制作出精美的柜子。记得达·芬奇画蛋的故事吗?重复固然重要,但更重要的是尝试实践,如制作个人主页、留言本或通信地址本等。在这些实践中实现你的创意和所学,将书本知识内化为自己的技能。
书本是引导你入门的钥匙,而非万能宝典。我虽然买了很多技术书籍,但最常翻阅的往往是那些关于Delphi、Sql Server、Photoshop等实际用到的工具。对于VB.Net这样的技术,虽然书籍众多,但我却并不擅长。
我并非反对买书读书,只是希望你能保持平和的心态。记住,书本只是一个引导你前行的工具。
基础的重要性
现在很多新入行者心浮气躁,不愿从基础做起,而难度稍大的任务又无法完成。技术人员需掌握的知识繁多,以Web程序员为例,HTML、Javascript、CSS等都是基础中的基础。但很多人认为这些太基础而忽视之,甚至有些老手也不擅长。然而在Web开发中,这些基础技能都至关重要。
虽然有像ASP.Net这样的优秀开发环境让你即使不懂HTML也能开发出网站,但这种做限制你的灵感和思维。我更倾向于使用传统的Table而不是使用ASP.Net内置的GridView,因为这样我能更好地控制。
新人们常常追求新兴技术如AJAX,但若连其原理及多线程都不了解,又怎能真正理解AJAX呢?有些使用了一年多ASP.Net的人还不了解.Net Framework的本质和ASP.Net的实现原理。
语言选择的智慧
语言之争是各大公司营销的结果。选择合适的技术用于合适的地方是关键。在一般项目中,各种语言的优劣往往难以明显区分。对于小公司网站项目,究竟是Java和.Net优越,还是Asp和PHP更适合,很多时候是难分高下的。
技术达到一定水平后,语言只是锦上添花。掌握技术的深层次理解比掌握语言本身更为重要。无论是在Java阵营还是.Net阵营,本质始终未变。换一种语言就像换一辆车,只需一个熟悉的过程和一个磨合期。
对于新手,我建议选择在实质工作中需要的语言,踏实学好,不要中途变节。.Net或Java,都只是一种工具而已。
学习过程中的态度
在学习过程中遇到问题是很正常的。古人云:礼下于人必有所求。当我们求助于人时,应保持谦逊的态度。学习过程中难免会遇到挫折和委屈。
在学习技术时尤其需要吃苦耐劳的精神。我以前在学习ASP时曾受到同寝室学VB的室友的嘲笑但我不气馁反而虚心请教他们从中学到不少东西。
当新人遇到问题时最好的办法是先自行排查然后利用互联网查找原因这样记忆更深刻。不要轻易打断别人的思路而是要学会解决问题的思路。
公司里常有新人问我具体的问题时我会建议他们先上网查资料然后再寻求帮助。因为直接告诉他们怎么做反而会害了他们我只教他们如何排查问题解决问题的思路。
最后我想给初入行的新人一个建议:编程没有捷径可走只有六个字——多看、多问、多写这才是真正的学习之道。
X-Force 插叙:
回想过去确实有不少人来信咨询我如何快速学好编程同时书店里也有很多诸如《XX天精通XXX》的书籍颇受欢迎可见大多数人还是急躁的。