原创

别他妈聊前端了

这是一篇旧文,是我入行1年时写的,水平低,资历浅,吐槽和情绪比较多,没有建设性的意见或方法论,所以我在原文的基础上进行了更新。

2019-04-16 更新

我从不敢认为自己是 Full Stack developer,甚至要叫 JS Stack developer 也是勉强,我清楚自己的水准,也在不断地更清楚。

就程序员这份职业来说,最好的状态是不分职业工种,更不分什么栈,大家都是计算机爱好者,对这么一个神奇细小的领域都有着无穷的兴趣和探究的热枕,然后顺便改变下世界

人类社会的需求、行业兴衰、职业分工一直在变化,一切都在变化; 但总有那么一帮人,无论把他们放在哪个背景下,他们每天考虑的都只是某某行业是否高薪、哪个领域最热、是否可以快速助我登上巅峰; 而不是:我真正的所爱是什么,什么事可以较高地实现我的价值、自我认同,我是否适合它,将要为之付出的是否可以承受; 其实就是漫无目的和看法,人云亦云。

语言始终只是一个工具,不应该是你该围绕的核心。

现在前端变化这么快,我还要学吗?

08年淘宝刚开始的时候,10年我第一次开店的时候,天猫独立的时候,两年前我再开店的时候,直到电商原地爆炸的今天, 问答知乎贴吧论坛啥地方你都能看到类似“现在电商已经走到今天了,淘宝规则又那么严格,天天在变化,开淘宝店还晚吗?”这样类似的问题。

没有区别,当年各种问题各种纠结要不要开淘宝店的人和现在各种嚷嚷着要不要改行写代码或干什么的人没什么区别。

谁都没资格干涉任何人做任何事的动机,更不能说你不喜欢就不要为了其他目的去做什么事,你可以为了钱为了理想为了 Whatever,但最终是要对自己的选择负责,至少不浪费时间、辜负生命,这也是个成年人的基本品质吧。

现在人就是太浮躁、太懒、太急于求成、太功利,甚至眼高手低,看不清自己。

今年前端没那么热了,我感觉压力好大,新人迷惘,该怎么办?

没目标没方向没思考能力的人才迷惘,就写个代码这样简单的事情还需要各种斟酌去选择,挺累的;可见选择职业的时候就不认真。

换句话说,纠结的人不是因为前端火不火而纠结,而是不知道自己要什么而纠结,这样的状态下,选择什么,都不会是正确的。

反正,当你知道了自己的方向,唯一能阻拦你的也只有时间了。没找到方向的时候,就别去做决定。

ES6 已经出来来,还有必要学习 ES5 吗?

很快会有 ES7、ES8、ES9...

Js 在飞速发展、也因为出生那一天有太多的坏毛病,但如果你涉猎足够广泛,便能发现,除了一些 Web 独有的特性,大部分的更新和变动都是借鉴自其他语言优秀的部分。

并且,开始也说了,语言只是一个工具,他可以是一把带你走进一个属于你的未知世界的钥匙,也可以是分分钟都折磨着你的恶魔。

所以它适合热爱学习的人去学习,而不热爱学习的人,不适合学任何东西。

最好是,你做的任何事都是为了追随你自己的内心,你学习的任何东西,你做的任何事。

最好是,你做的任何事都应该只是因为你想做,你学习的东西最好是因为你想学习感兴趣,最好不是只为了不被淘汰,最好不是只为了多拿多少钱; 这样,ES68 也难不倒你,赚钱就真的变成了附带又轻松的事。

我的目标是要成为全栈!

我很反感这个词,我强烈地感觉到,大部分人把这个词误解了,被大家说烂了,就像“成功”这么个词一样,它是个形容词,是对事物当下形态的描述。 成功是形容一个人或一件事达到了目的的状态,或有了不菲的成就(世俗的定义),不是标杆,不是目的,仅仅是对一些已发生的事物形态的形容,仅此而已。

全栈是指一个人的技术在某个/多个领域已经积累到了一定的高度,具有很强的作业能力,可能是学习速度很快,可能是知识足够全面,可能是经验够丰富,可能是人帅?

哪个全栈工程师是本着要当全栈工程师这么个目的最后成为全栈工程师的?

很多成功的企业家就是为了成功才成功的吗?那是骗子,是成功学的鸡汤大师;大部分被羡慕东西的都是别人针对性的努力取得的成就中附带的东西。

而许多人却偏偏本末倒置,毒鸡汤伪鸡汤真是害人不浅。

你要真想树立可以量化的目标,就听从自己内心的声音,就做哪些自己一直想实现的,它可能很老旧,很 low,很没意义,很没成就感,很 whatever,别管别人说什么做什么,你就做你自己想做的!

坚持这份纯粹,它会带你走到属于你的路上。

什么是全栈?

你觉得今天学了点 Java,明天会一点 Swift,后天会一点 Js,都能写个 HelloWorld 就成一统三端的“大神”了?

或者以为自己再会点 PHP 就“前后端通吃”了?

拿编程语言来区分领域绝壁是一件有点无知的事。

“全栈”这个定义,我觉得没意义。

世界上有那么多无人问津的高峰,每个领域的巅峰都是鲜有人问津,也极少有人能一直走在领域巅峰,什么时候开始,我们痴迷于流连不同山腰的景色了?

事实上,很多人所谓的“横向发展”只是不能坚持、不能专注、想拿半桶水的技能多赚些钱...的云云借口,要横向你去横向个 AI 啊神经网络,去搞明白操作系统计算机原理、数据结构算法,把各种软件工程、编码哲学领域的东西掌握扎实。

  • 一个真正优秀的负责开发安卓客户端的工程师,应该对 Linux、Java、Android 有着极其深度的理解,了解Linux、安卓的发展史、原理,对技术有自己的智库,对未来有自己的看法
  • 一个真正优秀的负责开发IOS客户端的工程师,应该对 Unix、IOS、OC、Swift、苹果公司有着极其深度的理解...
  • 一个真正优秀的负责开发Web端的工程师,应该对浏览器原理、Web 发展历史、互联网起源、Js 语言的演变有着深入的理解的看法...
  • 一个真正优秀的负责开发服务端的工程师,应该对网络原理、系统运维、服务端架构至实践均有无微不至的理解和经验...

不是你写个 xxx 语言、框架...的helloworld跑起来就叫全栈工程师。

我自己写的爽,叫我爆栈、low 栈、whatever 栈...你叫啥都行,I don’t care。

一个真正优秀的编程开发人员,应该对计算机科学抱有无限的热枕、无穷的兴趣,为爱而来,为爽而干。

一个真正爱生活的人,应该遵从自己的内心,批判地认为我上面说的可能都是扯淡。

让我们做一个终身学习的 “菜鸟” 吧。

End.

本文于   2017/3/24 上午  发布在  无色庵  分类下,当前已被围观  8572  次

相关标签: Web开发 思考

永久地址: https://surmon.me/article/27

版权声明: 自由转载-署名-非商业性使用   |   Creative Commons BY-NC 3.0 CN