前端的意义是什么?

前端的意义是什么?

计算机的意义当然是计算。

我来说说前端的意义,我的观点可能让很多前端感到悲哀。

2005年之前,中国是没有「前端开发」这个名词的。所以中国前端满打满算也就十年而已。在这之前,类似的岗位叫做「美工」。

在前端出现之前难道就没有页面吗?有的,而且很多,只不过这些页面大多很简单,后端随便几下就写完了。直到 AJAX 出现之后,才出现一批专门以 JS 为业的程序员了,这些人就是前端。

前端发展的主要话题,一开始是「特效」,后来是「用户体验」,然后是「前后端分离」,再后来是「页面性能」,然后到最近的「模块化、工程化」,到现在的「以数据为中心」。

概念越来越复杂,那么这十年来有没有一个贯穿始终的——前端的意义呢?

我就说说我这些年关于「前端的意义」的感受吧。

最开始,他们告诉我,前端是「用户体验」的把关者,没有前端,一个网站的用户体验就不会好。

我信了。

可是后来我发现这只是一个把关者,而不是一个控制者,如果交互设计师和产品经理对需求没把握好,那么我怎么把关也没用啊。

于是他们告诉我,你应该参与到产品决策中,与产品经理沟(hu)通(dǔi)。

我又信了。

于是我去了解交互设计和产品设计相关知识,然后积极与产品经理沟(hu)通(dǔi)。

可是后来我发现,我负责对接的产品不止一两个,而且还经常更替,我根本不是这些产品的主人,而且我对这些产品只能提建议,不没有什么决定权。我还不如做好自己的本职工作。

于是他们告诉我,你应该在做好本职工作的同时把控项目进度,做项目的推动者。

我双信了。

于是我去尝试带领一些人做出一些东西,并说服一些人来使用这些东西,让大家受益。

前端在团队中的位置怎么老是「五号位」,总是在支持、支援和协助,为什么不是一号位呢?因为前端本来就应该在这个位置。

前端除了写好自己的代码之外,基本就是团队的润滑剂。一个小型团队一般就是五个人:产品经理、设计师、前端、后端和测试。前端处于交流的中心。

但是这正是前端的尴尬之处,任何功劳,都算不到你头上。产品成功了,功劳在产品经理。界面好看,功劳在设计师。服务稳定高效,功劳在后端。产品 bug 少,功劳在测试。前端顶多得到的称赞就是「开发效率高,如期上线」。

顶多你再来个页面性能优化,把页面加载速度控制在 1~2 s 以内。但这其实就是把自己之前写得烂得代码优化了一下而已。如果页面加载慢是服务器原因,你怎么优化都是没用的。

再看看现在大公司的前端晋升理由,基本就是有产品意识、推动力强、自创框架大范围提供团队工作效率等。

除了「自创框架」,前端要晋升,就要做很多前端以外的工作。(这也是为什么早年间大公司的前端热衷于造轮子,现在光造轮子不行了,得造服务,也就是公司内部的 SaaS)

现在你也发现了,前端就是团队中最大的一个辅助。要想做好这个辅助,你就得啥都干(包鸡包眼让刀让人头)。

前端的本职工作,是做页面(至于功劳,都是别人的)。

前端的意义,就是帮团队把产品做好。

前端的核心竞争力,就是你的辅助能力比其他前端更快更高更强……

你作为一个前端,有没有心里一酸,想哭。

你错了。

你错就错在用「前端」两个字把自己给限定死了。

首先你是一个人,然后你才是一个程序员,最后你才是一个前端。

我见过厉害的前端,从来都不仅仅会前端技术。所谓大前端,就是这个意思。

现在很多前端名为前端,实际上已经是后端或者产品负责人了。

我就说这么多,其他的,你自己悟。