@玉伯也叫射雕:前端的歸宿與價值
強烈推薦拔赤的這篇博客: 十日談
不光推薦這文,還推薦寫這文的人。極其認可大部分文字,但部分細節(jié),還值得商榷。下面就“歸宿”說說我的觀點。
拔赤原文:
- ***,還有一個不得不說的問題,即歸屬問題,前端開發(fā)應當歸屬于UED還是技術部門?應當說,當前Web前端技術的價值體現(xiàn)在“用戶體驗“上。是用戶體驗這塊陣地***一道坎。也就是說,前端工程師應當重點考慮我所作的頁面的感官體驗。這是需要一些靈感和感性的,應當看到帥氣優(yōu)雅的界面會心有所動、或者實現(xiàn)一款精巧的小組件時萌生一陣快意。這種所見即所得的美妙編程體驗正是其他后端工程師無法體驗到的。因此,這種精確到像素級的精工雕琢雖然不直接決定產(chǎn)品生死,但卻是提升產(chǎn)品品味和時尚感的要素。物質越來越豐富的今天,大眾的更高訴求不就是品味和時尚嗎?
- 如果將前端歸到技術部門,一方面和“設計“離的更遠,代碼寫的規(guī)規(guī)矩矩但漸缺少了靈性,另一方面作為工程師又缺少計算機專業(yè)課的功底,才真正喪失了優(yōu)勢所在,如果有一天,前端工程師的平均水平足夠高,清一色的計算機科班出身,似乎更合適歸入到技術部門。所以,Web前端工程師是“工程師“,需要科學嚴謹?shù)木幊棠芰Γ硖嶶ED所應當具備的美感和靈性是萬不可被剝奪去的。
- 還有一點,Web前端工程師作為UED之中***實踐精神和邏輯思維的工種,是能夠將技術對設計的影響發(fā)揮到***,可以催生出大量的創(chuàng)造和革新的,這一點也是傳統(tǒng)后端工程師所不具備的。
很同意前端工程師要保留一份對設計的感覺以及靈性,但這不成為前端要留在設計部門的理由。原因有以下幾點:
1.在技術部,這份美感和靈感依舊可以留存。一個文字好的人,不會因為學了理科,就會喪失對文字的感覺。這有如學車,不會因為學會了開車,就會喪失騎自行車的技能。支付寶的前端是一個典型的案例,脫離設計部有好些日子了,但無論是老人還是新人,對設計有感覺的,依舊充滿了感覺,沒有感覺的,則依舊沒有感覺。一定程度上這跟環(huán)境沒什么關系,甚至是先天的,后天想培養(yǎng)這份靈性都挺難挺難的,要喪失掉也挺難。
2.拔赤也承認如果前端工程師水平足夠高,很多科班出身的,則更適合歸入技術部。這就挺有意思了。實際情況,隨著前端的越來越普及,從 2010 年以來的社招生情況來看,已經(jīng)有很多科班出身的前端程序員,他們的計算機基礎技能挺好,勢頭很猛,潛力十足。他們選擇了做前端,而不是 Java 等后端程序員,很大一個原因正是因為他們對界面交互層有一份美感,有一份靈性。很多前端工程師,爭辯起字體的優(yōu)劣來,比視覺還激動得多。在界面設計上也擁有自己的“口味”。這種科班出身的程序員,正是做前端的極好的料。程序員的美感和靈性,跟 UED 真的沒啥關系。無論從未來看,還是從現(xiàn)狀看,放到技術部不會傷害這份美感靈性。技術部下的各個團隊風格本身就是多樣的,比如選擇做測試的,往往都具備一些共性。選擇做 Java 開發(fā)的,和選擇做運維的,也會有不同的特質。前端,在技術部下,就是一個對界面具有美感和靈性的技術團隊。
3.我覺得前端應該歸屬技術部,是因為前端程序員歸根結底是程序員,而不是設計師。 作為程序員,作為工程師,我們的專業(yè)性,我們的工程化,更貼近傳統(tǒng)的理性的程序員,而不是感性的設計師。技術部可以讓我們更專業(yè)。
4.放在 UED 有助于培養(yǎng)我們的美感與靈性嗎?表面看好像會的,但實際上我沒遇到過類似的案例。有沒有哪位前端,是到了設計部,才培養(yǎng)出了美感和靈性?創(chuàng)新也類似,不會因為你在 UED,才催生了創(chuàng)新。而是我們自身的美感和靈性,與我們技術的結合有可能會催生創(chuàng)新。這跟 UED 沒什么關系。
5.還有一個很核心的問題,前端技術的價值是什么?是用戶體驗嗎?我表示相當懷疑。用戶體驗是個用爛了詞,含義太混淆。如果是指交互好,那主要是交互和 PD 的功勞。如果是指界面優(yōu)雅,那是視覺的功勞。如果是指產(chǎn)品功能好用,那是好多人的功勞。前端的價值在我看來有兩點:
1.對界面設計的系分以及精準實現(xiàn)。這里的系分是廣義的,包括可行性分析、設計反饋、界面相關的業(yè)務分析等等。
2.代碼本身的穩(wěn)定可靠、性能優(yōu)異。
這兩點,其實跟后端開發(fā)沒什么區(qū)別。后端開發(fā)的價值也是這兩點,只是***點中的“界面設計”要換成“業(yè)務需求”。并且把這兩點做好了,無論前端還是后端,對“用戶體驗”的貢獻都蠻大。
一不小心寫了這么多,好晚了,睡覺先。歡迎各位參與討論。
原文鏈接:https://github.com/lifesinger/lifesinger.github.com/issues/101