「 基础设施 」 技术选型之路

这篇文章是个吐槽文,小伙伴们看着玩儿吧,更希望你们能跟我分享你的观点。

引子

之前有个四年换了五份工作的技术leader,过来给我们技术分享,实际也没讲什么技术,因为主要是内部后台管理系统,主要分享了下团队管理。

他说我的团队成员很幸福,我们不用antd,不好用,我自研了ui框架,小弟们只需要搭积木一样搭起来就可以了。我招的人都学会了这个框架,每次我换工作都带着他们一起换。

因为是自研框架,自己很清楚哪里有问题,很easy就改了。

之前上一个前端团队说,这个实现不了,那个也实现不了,我们每次都能保质保量的完成,让大家都很满意。

老板问我工期,我说四周,老板说四周能行吗?给你六周吧。(下面的人说,你们老大一定不懂前端哈哈哈)

实际上我们一周就完成了,剩下的时间想干啥就干啥,这就是自己造的轮子的好处。

(时间比较久了,可能记得没那么清楚了,如果这位兄弟出来辟谣,请以他说的为准)

那我们就假设有这么个人吧,反正肯定有这样的人。

听完真的很刷新我的三观,可能这就是这位兄弟的目的,总是这么语出惊人。虽然带了调侃的语气,但是还是有些不能接受。

分析

一可能是我也工作快三年了,还觉得自己是个小白,有好多知识需要学习,总是带着谦卑的心去跟任何人学习,依然是一线码农(倒也并不是排斥这个身份),身边的同事们也都是这样啊,没什么好狂的,可能是有些羡慕?

二是真心觉得这样和包工头带着工程队有啥区别呢?看看这个leader四年换五份工作,轻轻松松走上人生巅峰,那自研框架的文档完善吗?代码质量值得信赖吗?测试都跑通了吗?你觉得你的框架写的好,又没有开源接受大家的检验。接手者为了扩展新需求还要去学习你写的代码,而且更惨的是他们写了好多系统,如果是不同的人来维护接手,都需要来搞懂他们的代码。

三是这对他的小弟和未来的接手者都不是好事,搞懂他的代码有啥用呢?有这时间还不如去研究vue,react的源码。小弟们天天搭积木有啥进步呢?换下一家公司之后之前的工作经验都化为灰烬,你再知道那个自研框架哪里有坑都等于0,还不如和别的前端小伙伴津津乐道下当前最流行的框架有什么坑呢!如果小弟们带着这个自研框架去别的公司那就更可怕了,又去祸害别人?

四是虽然之前觉得狗东的二五原则有点扯,但是有些东西你不深入dive in 进去研究几年,总是浮在最表层,只是自己的简历上增加几个无意义的项目而已。超哥老是吐槽我,你怎么还在写登录页啊,我只能说嗯,我以后就有十年写登录页的经验了,花式写登录页。

跟着这样的老大可能工作很愉快,天天有段子听,有时间学习,但是并不是每个人都能保持学习的,有时候很多人的学习也就是只在工作中学习,而且他说招的都是应届生,这对应届生的发展更是非常不利。

反正我们真的应该警惕这样的老大。

期望

我的第一份工作虽然不是什么大厂,但是很庆幸一开始就遇到拎得清的老大,实名感谢。他虽然是个后端架构师,但是一开始就主张不要使用内部框架而是领先使用Angular,有什么坑他来扛。

虽然他也跟我说这有点面向简历编程,但是这对你们来说是好事,虽然大部分人的工作其实都是搬砖,内部框架你玩得再6,一换工作,你所有的积累都化为0,如果一直使用的是有影响力的开源框架,至少下一份工作你能说你最起码用过某个主流框架。

最开始就听leader说赶进度三个人一天写了三百个页面还觉得很震惊。其实即使不使用任何框架,大牛们写好基础组件,搭积木一样,天天ctrl +C+V,完全是正常的。

超哥也跟我说,一般人工作到一定的阶段都会感觉到没开始那么难,因为你对代码越来越熟悉,你知道哪里有坑,不可能一直都是搬砖状态。想想也是,上文中如果直接使用antd,只不过需要写些扩展组件,小弟们后来也一样能六周变一周,有时间读源码,再安排些真正的技术分享,简直是一个应届生最大的幸运。

小伙伴吐槽来了个领导是阿里的,之前用weex,所以现在他们也开始招weex开发,好歹weex也是开源的,(他说其实阿里自己都快不用weex了?不了解,待考)。技术选型用啥其实我们作为小白的时候也做不了主,但是可以用来做找工作的重要考核,而且希望看到这篇文章的你们以后当了leader之后在技术选型上也能慎重。

再就是我虽然建议选主流框架,但并不是说原生js的实践能力不重要,作为一个前端,这是最最重要的基本功。

只是有的时候你会发现自己写的框架自己看了都恶心,最重要的是还特别大,实际上你清醒一点,vue只有39kb,jquery只有36kb,比你自己写的东一榔头西一锤子要好。当然啦,你可以写着玩儿,但是公司雇你来不是让你玩儿的哈哈哈。为了提高技术我们真的应该自己研究下框架是咋实现的,但是要对自己的实现负责,不要强迫别人来研究你写的框架,使用了框架自己整理util,mixin还是必不可少的。

总结

有人说,你们前端的kpi就是隔几年就换个框架全部重构一遍来完成的,哟呵,这都被你发现了。

其实也不是我们的问题,只是JS不像其他语言那样有自己的核心库,需要依赖一些外部框架,二是前端发展确实太快了,总有新框架新方案解决新问题,但是每年重构换框架,哪有那么容易。

为了不被别人鄙视,真的应该好好读读源码。

今天吐槽先到这里吧,最后的结论是啥呢。

老是有小伙伴说没有机会去实践主流框架,内部管理系统是干啥的?

总之记住一条原则:不要拿外部有影响力的项目来练手,在内部系统中使用新技术做一些有趣的尝试,积累经验踩过坑之后再用在外部系统中。

每日写文吐槽:

吐槽文写的就是畅快,很easy就写完了。其实很喜欢现在的工作状态,有时间全面了解知识并实践,和刚开始写不出来文章相比,已经积累了很多选题,就是需要时间完善整理。

我知道我的排版丑,如果有思维导图就更好,也知道哪里去找好看不侵权的图,用什么工具来画图,作为一个前端还想做自己的主题(答应超哥2年了也没写),还准备要咨询专业写公众号的毛毛来学习排版。

先弱弱地找个借口,现在还没走上正轨,但我一向是一个守诺的人,周末了,能有个时间来缓冲,希望大家监督

Eva wechat
关注Eva的意如小馆,更方便的与我交流