前端的黑客精神

  「全棧」這個詞以前炒得很熱,雖然以前我也寫過文章說全棧其實不太靠譜(全棧之難),但細想回來卻很能理解爲何這個詞會呼聲那麼高。前端

  由於,不一樣的技術棧之間的溝通成本實在過高了。node

  產品,設計,終端,前端,後臺,運維,測試……彷佛攢齊了就能召喚神龍了,但實際可能的狀況倒是人員之間相互扯皮的時間遠大於實際作事的時間。爲何不能所有技術都由一我的解決,人力獲得最有效地利用,哪裏有坑就把人填哪?算法

  有意思的是,這樣「什麼都懂點」的技術人員還真的有,就算可能這我的歷來沒接觸過某個領域,但給他一點點時間上手下,彷佛還真能拿出些「還算能夠」的成果出來。而後,衆多 leader 發現,耶?這樣的人用起來真 TM 順手,並且讓人少操不少心,由於不少原本須要別的技術棧介入才能解決的問題他本身能夠吭哧吭哧地先拿個可能比較粗糙的解決方案出來,整個項目就會感受彷佛加了雞血同樣很順利地獲得推動。Facebook 大概就是學到了這個甜頭,因而全公司推行如是策略,發現彷佛還真能玩得轉。mongodb

  多而泛仍是少而精大概大多數技術人員都有着本身的判斷,全棧的問題不討論先,但這樣的技術人員,就以我本身的感觸,我是不太喜歡被人稱爲「全棧」的。比起全棧,我以爲用「黑客」來去定位其實更爲合適。apache

  黑客精神是什麼?vim

黑客到底是什麼樣的人,我也難給出清晰的定位,《黑客與畫家》中有足夠多的討論,但其實也沒給出明確的定位。但至少,黑客有着一些許多其它普通技術人員所作不到的能力,其中我認爲最核心的大概有兩個:服務器

  • 高效解決問題:這個可能挺多團隊都會推崇,但具體實施時卻尤爲困難,仍是得看具體執行人員;
  • 單槍匹馬做戰:這個卻頗有意思,不少團隊實際上是抵觸這樣的員工的,認爲畢竟術業有專攻,並且你作了別人的事老是很差的,並且還很容易鑽牛角尖,讓項目在某個單點上陷入焦油坑。

  因此,黑客大概挺多團隊是不太喜歡的,由於他們特立獨行難以駕馭;但很矛盾的是團隊卻但願能有全棧,能做爲整個團隊的潤滑劑,在人員不足(常態)的狀況下依然能讓項目獲得持續推動。框架

  事實上一個團隊需不須要全棧?不見得須要;由於若是全部問題都能迎刃而解,誰管你是否是全棧呢?我想,這個纔是全棧述求的本質。運維

  前端的黑客工具

不知道其它人是否有同感,我總感受「全棧」這個詞多少都會牽扯到前端。大概由於,從產品層面來看,前端真的處在一個很中樞的地位;而近幾年來,服務器、性能、算法等愈來愈往底層走,在計算愈來愈便宜的狀況下,性能和算法變得愈來愈不值錢,大能夠堆計算解決不少問題,計算搞不定靠存儲和索引嘛,砸錢而已。

  但產品及其體驗卻不同,有了良好的設計有了足夠多的功能與性能,也都未必能造就一個良好的產品體驗,更不用說產品誕生之間各類不斷出現的細節問題,一個好的設計卻實現不了的話,沒有任何意義。這裏就體現出了前端的價值。

  在對設計側時,前端可否實現設計稿,並與設計師良好溝通對接?在對功能側時,前端可否針對實際狀況作出各種的支持,並優化傳輸時的協議與方式?

  這些問題其實自己是可能在設計側或後臺側他們來直接解決的,但現實狀況倒是一般是由前端來進行調整與妥協。畢竟,這種灰色地帶的事總得有人作,而彷佛設計側不懂代碼,而許多後臺側則認爲前端來作更方便或是乾脆以爲這些不關他們事(好比傳輸,CDN,模板,數據處理等等)……

  就更別說,一個產品終於大體完成時,提交測試時,最多問題的大概必定是前端:兼容性與體驗的各種細節無比繁複,不像設計側只須要管效果圖,後臺只須要搞定服務器。

  這時後臺或是設計側想過來嘗試作「全棧」時就會發現,我擦坑那麼多,仍是交給前端吧……而反過來,前端去嘗試設計側與後臺側時,卻會發現,咦?這個世界好單純,並且反正我不是專業的,弄個「夠用」的東西說到底仍是不難的,況且業界有那麼多的素材庫、後臺框架、工具庫等等,彷佛還真能作到一夫當關萬夫莫開。

  逐漸的,這個前端就成了所謂的全棧:

  • 設計資源的問題,不要緊,我直接拿別人的色彩或是素材補一下,很差看?再找設計師咯;
  • 遇到後臺問題,不要緊,我先弄點假數據撐一下,或者隨便弄臺機器 node+mongodb 直接作個可用 DEMO,至於吞吐量,交給後臺人員。
  • 遇到運維問題,哦,看下別人的示例改下 apache 配置,偶爾 vim 改下別的什麼配置再 restart 一下,至於精細的東西就不關我事了

  但只要能作到這種程度,這位前端就已經成爲一名黑客了:對與前端對接的其它領域的問題彷佛他都能略懂而且能用本身的方式先扛着,單槍匹馬哦!

  你真說像這樣的全棧是全棧?因此我沒這個底氣,也不太相信真有人能十字型發展,不只前端牛逼併且後臺/設計/運維等等都老在行,這讓專業人士情何以堪?

  問題在於,若是這些別人領域的能力都是半桶水,又沒獲得足夠的積累,會給旁人什麼感受?大概就是上面所說的,你們就會以爲這貨鑽牛角尖,本身的事都沒作好就老想着作別人的事;而他本身也委曲:大家設計或是接口沒準備好,我這邊作前端也麻煩啊,這真是讓人左右不是人。而後結果固然是整個項目依然陷入焦油坑,各自推諉別人沒作好,本身這邊須要時間,整個團隊變成只有一我的的效率。

  其實,牛逼的人到哪都是牛逼的,黑客就像計算機/互聯網界的企業家,能上的時候要上,不能上的時候創造條件也要上,這大概就是黑客精神,而如今,彷佛這個重任更多的壓在了前端童鞋們的身上。

相關文章
相關標籤/搜索