QCon 2011 后记

关于Qcon 2011

之前年初我参加了新版淘宝首页的开发,做了一些html5的实践,正好这次QCon有学鹍主持的html5专题,小马就推荐我去QCon分享一下这方面的心得,所以对我来说,能参加这次QCon很幸运,也很忐忑。一方面,我在html5方面的确算不得专家,另一方面,淘宝在html5实践之路上也在摸着石头过河,不过,感谢学鹍的鼓励,还有澄净、承玉、圆心和完颜的帮助,让我仔细梳理html5实践原则和一些教训,这才有了这个ppt

说起来,这是我第二次参加QCon,之前QCon关于纯粹Web前端的专题很少,就像小马说的,QCon大会是后端开发工程师和架构师的技术大会,不过这次QCon前端的专题一下子增加到了三个,有点小意外。此外,敏捷开发、Java的回归、关于测试和服务器集群优化的专题演讲依然让人收获颇丰。

关于敏捷

这次QCon“敏捷开发”突然就火了起来,当然不是说之前没有“敏捷”,甚至我们每天都在“敏捷”之中。那么,对于前端工程师来讲,有无必要去关注“敏捷”呢?我认为不但要关注,而且要有意识历练自己成为敏捷教练,也就是说前端工程师做不了PM(项目经理)的职位,不代表不能具备PM的能力,如果由前端工程师来驱动项目(比如Kissy的开发和淘宝首页的开发),能不能做到真正的敏捷高效,如何合理的做需求排期、安排迭代开发?这种基本能力应当是每个工程师——当然包括前端工程师——所必备的技能,我想,这也是前端工程师自身发展的一个必由节点。

关于Java

我在QCon上听到关于前端工程师的言论最多的就是,“怎么看,都感觉前端写的代码比不上后端工程师那么专业功底扎实,写出来的东西也没有后端稳重可靠”。尽管这种言论有失偏颇,但也说明了IT行业对前端开发的普遍看法,没错,前端工程师多是半路出家,毕竟入门前端开发实在太简单了,所以我们在招聘前端工程师的时候都会加上一条:至少熟悉一门后端语言(当然熟悉Java更好,淘宝的后台大部分使用Java),如果前端工程师仅仅将关注点放在html/css/js上面,其成长将迅速到达瓶颈,所以,和传统后台开发语言不同,前端的学习曲线是先缓后陡,越到后来越会发现数据结构、设计模式、编译原理、网络协议的重要性,而这些内容,正是传统后端工程师所擅长的。这里不是说前后端之间不容水火,而是掌握全面的知识结构,对于前端工程师的成长百利而无一害。因此,当今天大家重新将目光聚焦在Java身上,重新审视Java时候,对于前端工程师,也要将目光收回,从箱底翻出那些破旧的计算机专业课本,这些东东才是我们更上一层楼的关键所在。

关于测试

测试的话题一直都备受关注,这次QCon就有诸多专家做了这方面的分享,而我更想了解如何做前端测试,遗憾的是,专家的分享依然侧重于测试平台建设和分层测试理论。不过,不管是平台自动化还是分层理论,大家至少有两个共识,第一,对于MVC来讲,对M做测试最容易,对C做测试难度次之,对V做测试最难;第二,代码质量直接影响到测试效率。而需求变化频繁又影响代码质量,似乎注定测试是一个永恒的难题。不过,对于前端来讲,可以先让M可测,再深入搞定C,最后集中精力攻克V的测试难题,当然在这之前,则要先教会小白们如何写出符合MVC的代码。

关于前端开发

这次QCon上三个前端专题基本描述清楚了前端开发的三个发展方向,第一,面向服务器端的JavaScirpt,第二、手持终端,第三、传统前端从html4到html5的进化。我想这种分工是一种必然,当然不是说现在一定是做分工的最佳时机,而是作为前端工程师来讲,应当具有这种危机意识和一定的前瞻性,而不管哪个方向,我们都能看到这个职位对前端工程师专业素养极高的要求。

其实,这次QCon给我带来的思考不止这些,我也非常高兴能把这些体会分享给大家,当然这次QCon上和html5专题的几位讲师(谢子斌、hax、杜欢)的合作相当愉快,学鹍对这个专题也是信心满满,也非常期待和他们的再次合作:

qcon

posted at