一种理想的前端生态

“前端生态”其实就是说在前端这个领域内的各种周边环境和自己的选择,不单单是分门别类地把“前端技术”(比如:最近流行的一张201x年前端需要掌握的技术…)罗列出来,这样做其实大多数会觉得有太多东西要去学习,并且可能会掌握不了这些“技术”了之间的关系,为什么会想起前端生态这个话题,更多的是说去让自己停下来思考一下现在的状态是不是健康的。

现在是这样的:

有很多同行实际上花了很大比例的时间在编码上,这有很多原因,我觉得一个比较好的办法是自己要去思考有什么事情会比纯粹的“编码”更重要,能够说服你周边的同事,最重要的是能说服自己,说服自己的关键在于验证自己的兴趣是不是靠谱,对更想做的事情有没有比较好的认知。

有个例子:比较不值得考虑的是,你要放下手上的事情去改善你和周边团队的合作流程,而你如果能从技术方面入手实践了也能改善流程的方法就是比较好的方法。

再举个例子,你计划在下一阶段让自己在团队的技术影响力变大,你选择经常在群邮件中分享你的Reader里加星的技术讨论文章,这虽然是好方法,但是效果可能不好;如果这样做会更好:有计划和方法地去扩大知识面,经常能在业务中思考这些知识的运用,偶尔会有出彩的技术方案和实践(实践更重要)让大家信服。

类似这样的“选择”还有很多,我自己也经常迷茫,有很多业界趋势经常要等到几次大的社区讨论之后才能有点明白,事实上一个人想在每种新技术出来都能抓住是比较困难的,而且也没有好处,除非你是纯粹为了做技术研究或者技术布道。

大家在关注的:

今天大家都在说移动互联是未来趋势的时候,很多人自然就会联想到数量庞大的HTML5终端会是一个“契机”,所以现在可以看到很多人已经涌向HTML5了,今年HTML5的讨论会非常多,也很有很不错的效果,就拿我去过的Google开发者大会的HTML5游戏专场看,现场演示的游戏都有不错的体验,但是看多了就有点疲劳,这背后可能是google布的一个很大的局,他们希望更多开发者能聚集到chrome平台上来“发财”,其实我想说的是,目前这些开发chrome应用的“前端”同学可能没有我们看到的那么“风光”,选择了这条路就得去全职研发,但是需要面临市场不够基本生存都难保障的问题。

另外一个布局很大的是Facebook,他们正在做一个类似App Store的“Web Store”,我想很大的好处在于Web技术实现的产品更容易移植和统一,特别是在HTML5平台和基本上是webkit内核天下的环境下,这种事情很多人想做,但是Facebook更适合,为什么,因为他们的开发平台做得很好,而且居然有一家开发公司上市了。

说这两个例子就是说如果一头栽进去在某个小范围的技术里,风险挺大的,事实上要做到“独善其身”专门搞研究是很难的,因为你很可能会在周边的环节上吃很对亏,比如你很熟悉HTML5的Api,写了很多相关的代码,但是你可能很难理解为什么身边的人很多在研究怎么让代码更好维护,怎样模块化;怎么实践更好的开发模式,等等。

Nodejs引申出的好东西:

最近在做Nodejs的一个模块,要去想的东西似乎蛮多的,比如他的最大特性event-driven、non-blocking I/O 究竟是怎么回事;然后CommonJS体系为什么会这么多人在实践;还有似乎它还提供了前端单元测试比较好的实践坏境;越来越多的Nodejs Based模块出现,还有哪些可以在工作中帮助我们。

“永葆青春”:

所以这部分可以归结为一个好的前端生态里需要每个人有很多可以帮助解决问题的技术,并且在不断地积累,这个过程比某个技术本身来得重要,因为你常常要去思考选择什么放弃什么,相关的还有一些可能是边沿的知识(也可能是经验),比如产品设计的一些基础,服务器、数据库方面的基础。

自己要做好得还有内功方面的,比如个人时间的管理,你如果能做得事情安排得井井有条,让别人刮目相看,久而久之,应该没有人会轻易地认为前端就是那些随便给点东西他们就能做成页面的家伙。当然这是一个比较不恰当的例子,因为还有一个例子是同样是做性能优化,普遍人会觉得做后端优化、SQL优化比前端优化来得高端,事实上很多情况下效果是前端做优化会比后端效果好,所以当做出了不起的事情的时候要让人知道它的价值,这样才能良性地让这些事情更好地做下去。这也是这个理想生态要求有一个比较好的外部环境,让前端的价值真正得到认可。

需要更多的影响力:

Google早期建立的时候实际上已经有不少搜索引擎公司了,但是Google后来不但比这些早期的公司做得好,而且慢慢发展成现在的搜索巨头,最早期的因素是在于他们不断地用更好的技术把搜索引擎做得比其他人的都好,这给我们的启示是好的技术很有可能让你在产品上胜过他人,更有一些是技术主导的公司,典型的像Facebook,但是这些话语权应该是建立在你掌握了足以改善现有产品的技术方案,并且知道怎么做。能做到这点的其实很难,最大的障碍大概是公司的文化、人员制度和自身的认知水平,不过其实这种“技术主导”的可能也是一种比较理想的环境。

所以所谓的理想的前端生态,是比较好想清楚的一个问题,但是往往不是一个人做到某种程度就有什么效果,还要关注很多外部的因素。

其实是自嘲:

有人说过吐槽最多的其实就是自己做得不好的,前端做了三年多似乎快要到下一个阶段了,很多事情也是最近才开始思考,看到了一点方向,也希望自己能够少一点只想不做。

Published by

Z.J.T

Product Designer from Wandou Labs