首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >多年前端开发程序员论述:这些必然的前端疲劳

多年前端开发程序员论述:这些必然的前端疲劳

原创
作者头像
一墨编程学习
发布于 2018-10-27 11:33:00
发布于 2018-10-27 11:33:00
7230
举报

前端疲劳是非常真实的。 我看到过一些关于JavaScript疲劳的文章,但我认为问题远不止于这种特定的语言。

先澄清一下,这篇文章不是在抱怨前端疲劳如何糟糕,以及技术发展太快—— 我喜欢技术迅速发展。同样的,我可以感受到它是如何的势不可挡,也会时不时地感觉自己要落伍了。

据我所知,这是一把双刃剑。

首先作为一个前端开发者,你认为你的技能树里应当有以下所有的技能:

  • HTML (整洁代码,语义化标签)
  • CSS (模块化,可伸缩)
  • CSS 方法 (BEM, SMACSS, OOCSS)
  • CSS 预处理器 (像LESS, SCSS, PostCSS)
  • 现代 CSS (Flexbox, Grid)
  • JS
  • 现代 JS (ES6, Typescript)
  • JS 框架 (Angular, React, Vue 更多的之后在此插入)
  • JS 方法 (函数式编程, 面向对象)
  • JS 库 (Immutable, Ramda, Lodash)
  • 响应式设计原则
  • 测试 (TDD)
  • 测试框架 (Jasmine, Karma)
  • SVG
  • WebGL
  • 动画技术
  • 可访问性
  • 可用性
  • 性能
  • 构建工具 (Grunt, Gulp, NPM 脚本)
  • 资源打包工具 (WebPack, Browserify)
  • NPM 生态系统
  • 了解不同浏览器的怪癖 *敏捷方法
  • 版本控制 (通常是 Git)
  • 视觉设计基础
  • 软技能,时间管理
  • 对使用的后端语言有基本的了解。

此外,你还要涉足或展望这些技术:

  • Service workers
  • Progressive Web Apps (PWA)
  • Web组件化

其次,你的日常工作可能不会完全覆盖这些技能,或者不会让你有时间去学所有技术,因此怎样才能在你的控制下去保证会所有的技能?

开发人员听见“Progressive Web Apps” 这种术语可能会感到畏惧。新的方法和技巧导致疲劳感 —— 前端疲劳。

现在作为这些技术的消费者,你可能要做的是:

  • 订阅一打不同的开发者周刊简报
  • 添加Twitter订阅
  • 参加每周赶工作的前端团队
  • 在工作之外有轻松的渠道能和一些开发者交流
  • 按照网上的教程 (希望不是过时的)
  • 使用视频课程培训网站
  • 买web开发的书 (希望不是过时的)
  • 参加技术聚会
  • 参加会议
  • 参加培训课程

而作为一个贡献者,你可能要做的是:

  • 写博客/杂志文章
  • 演讲
  • 直播
  • 贡献开源项目
  • 做自己的业余项目

虽然这肯定是极端情况,但我相信其他人也经历过类似的事情。最重要的是,你可能有一份全职工作,家庭,朋友,业余爱好。难怪我们中有那么多人感觉力不从心并且怀疑我们是否做了正确的职业选择。

我的一些前端同事都表示想要打包走人,然后换一个可以在五点结束的工作。但我认为前端工作仍旧吸引着某些的人,而如果放弃这份工作,成为一个房地产经纪人,你仍然想尽你的可能成为最好的房地产经纪人。在你的空闲时间你还是会参加房地产会议和跟踪房价趋势。其实,都是一样的

并不是只有这个领域需要付出巨大的精力,许多职业需要投入大量的精力并且在工作之外学习。也许前端开发的特殊之处在于技术发展得如此迅速,以至于好像有人一直在移动目标岗位。这就像每隔一天我就会收到一封电子邮件,上面写着“XYZ”技术已死。我确定这不是真的,否则我们就没有技术可用了。

生态系统处于不断变化的状态,我认为这是一件好事。就我个人而言,我喜欢扮演一个可以不断地学习、发展和督促自己的角色,但这并不是说我不会偶尔感到不知所措。

考虑到这一点,我尝试记住这些事情用来阻止我殚精竭虑,同时也有一些避免疲劳的通用建议。

#我们是一样的

我认识的开发者,无论是在工作中还是工作外,都是我认识的最聪明的人。但他们全都会感到不知所措。大多数人都有一些希望学习的技术清单。可能有少数人知道所有技术,而且在所有事情上都处于领先地位,但我们大多数人的处境完全相同。

我们仍然依赖Google等网站来度过我们的一天,打开了超多的选项卡,全部是关于Web相关问题的答案。不止你一个人是这样!

高兴地知道你不是一个糟糕的开发人员,你只是还没有尝试过技术大牛们正在使用的东西。

#是的,即使是“web名人”也有同样的困境…

你会注意到,他们出名的领域恰好是他们所熟知的领域。可能也会有例外,但他们和我们一样也只是个普通人。

只要记住,会变好的。我所做的每一项工作,我都觉得自己不够深入,但最终你会习惯他们的工具和工作流程,你会学习并成为一个更好的开发人员。

不要害怕在工作中学习,掌握新技能的最佳方法是每天使用它们。

#巩固基础

人们很容易被耀眼的新事物分心,但是如果你的基础还不牢固,那么你所建造的东西将经受不住时间的考验。

“专注于基础。你能建立良好的项目和解决问题,这才是最重要的,而你如何解决它们(所使用的工具)已经并将永远改变。”

例如,当react一跃成名,它似乎总是和ES6捆绑在一起,我把重点放在语言的那些改变和新特性上而不是框架本身的细微差别。一旦react不火了,我从最新的JavaScript上学到的知识将继续存在下去。你可以在原生chrome玩很多特性,而不用引入Babel陷入依赖地狱。

#不用学所有的

这真的很关键。我认为正在扼杀我们的不是新框架、库和模块,而是我们自己必须把它们全部学会的信念。

通过学习我发现最好的办法是专注——此刻我正在钻研ES6中的JavaScript函数式编程。

我的清单上还有很多我想学的东西,但我尽量不分心。例如,我喜欢温习我会的知识,钻研一些最新的CSS技术,但是如果我一次开始阅读太多不同的领域,我得不到所有的信息。这些别的东西哪儿也去不了,再次看到的时候就能联想到他们。

#避免在某一主题上匆忙尝试使用一切。 慢慢来,确保你完全理解它。

如果你像我一样,你会有一个不断增长的清单,但不要害怕从中剔除项目。并不是所有的事情都值得投入时间,你应该试着去认识哪些是值得学习的,哪些可能在几年内消失。花时间来学习编程的设计模式和架构技术,相比于投入在当前火的框架,在长远上来看,总是更有益的。脱离成长轨迹,过不了多久你就会迷失在追逐玩流行语的过程中。

#大多数公司没有使用尖端技术

现在有很多新的东西出现,web正在以惊人的速度发展,但通常企业真正在业务中开始采用这些新技术,需要很长的时间。大多数公司会等一段时间待技术成熟,并看到它在领域中被认可。

Angular 是六年前创建的,我刚开始在一家初创公司工作,他认为这是三年前的框架。Reactjs 已经有大约三年的历史了,我现在的公司仅在今年圣诞节前才开始使用它。我确信有很多其他的框架在同一时间出现或者消失。如果所有的我都要去研究,我会发疯的。

在CSS领域,flexbox在2010年就可以用了——六年前!但是浏览器到现在支持仍然有限。我们今年早些时候开始在生产环境中使用它,而且我也不认为它在其他地方被广泛使用。

我的意思是,不必急于学习所有的东西,虽然技术可能会很快发展,但你的潜在雇主正在以较慢的速度前进。你不必走在曲线的前面,只是要确保你在观察它的轨迹

#你学的越多,你会发现你不知道的也越来越多,这没关系

这是完全正常的。当你刚开始的时候,你不知道你不知道什么。然后你会学习一些东西并且认为你是一个天才。然后,渐渐地,这种幻觉被打破,你开始理解事实上在这之外你有多少东西不知道。

从本质上说,你得到的经验越多,你进入的空虚就越深。你需要跟这个和平相处,否则它会消耗你。如果有的话,这种感觉会让你相信你正朝着正确的方向前进。在我们选择的职业中,你永远不会舒舒服服地学会所有前端知识。

#不要把你所有的业余时间都花在学习上

你很容易就感觉到你远远落后,需要每分钟都去编码和学习。这是一张通往职业疲倦的单程票。留一些时间来发展你的技能,看看你是否可以与你的老板协商一些时间来保证你的学习时间,然后用剩下的时间来做你爱做的事。

我已经分出一点写代码的时间在健身房。锻炼对你的身心都是极其重要的。尝试每天至少做20到30分钟,可以保持头脑清醒,防止疲劳。

给你的家人和朋友留出时间,尽量不要和他们谈工作!

#现在是开发者的市场

目前不要担心找不到工作。此时我们正处于一个非常幸运的点,等待填充的岗位远比开发者要多。我不知道这将持续多久,但现在好好把握它!

你可以在不知道所有技术的情况下得到一份工作。我发现,在我面试过的人中,99%的人完全是在吹牛。

最坏的情况,记住遗留代码中有黄金。如果你是一个喜欢老方式的开发人员,总是会有一些公司依赖于传统技术,需要开发人员在他们的软件上工作。

#结论

我希望其中的一些点有助于减轻你可能感到的一些挫折。你能做的最糟糕的事就是到达边缘,完全被烧尽,因为一旦你这样,很难恢复你对你所做的事情的热情,以及你这么做的初衷。

这里推荐一下我的前端学习交流群:784783012,里面都是学习前端的,如果你想制作酷炫的网页,想学习编程。自己整理了一份2018最全面前端学习资料,从最基础的HTML+CSS+JS【炫酷特效,游戏,插件封装,设计模式】到移动端HTML5的项目实战的学习资料都有整理,送给每一位前端小伙伴,有想学习web前端的,或是转行,或是大学生,还有工作中想提升自己能力的,正在学习的小伙伴欢迎加入学习。

点击:加入

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
坦然面对:应对前端疲劳
我最近和一个做后端开发的朋友讨论我在工作之余花了多长的时间去写码和学习写码。他给我看了Uncle Bob的《Clean Code》这本书中的一段话,它将音乐家们为准备音乐会而花费的时间与开发者让代码正确执行所用的练习时间进行了比较。 我喜欢这个类比,但是我不认为我完全认同它;首先这种想法会导致疲劳。我认为如果你想进一步磨练你的技术并扩大你的技能集,那么这是很好的,但是要一天中每个小时都这样做是很难持续的。 前端疲劳是非常真实的。 我看到过一些关于JavaScript疲劳的文章,但我认为问题远不止于这种特定的
前朝楚水
2018/04/04
9230
坦然面对:应对前端疲劳
35,40 甚至 50 岁转行做软件开发晚吗?看这 10 个成功故事
企鹅号小编
2018/01/02
5.4K0
35,40 甚至 50 岁转行做软件开发晚吗?看这 10 个成功故事
如何成为一名Web前端开发人员?入行学习完整指南
经过如此多的试验和测试,而不是说你从头开始创建了所有内容,接着,你在网页上创建了第一个登录表单时,你感觉如何?
用户7705674
2021/09/19
2.8K0
前端开发简介
前端开发已从网页设计进化为构建复杂 Web 应用,用户体验至关重要。需掌握 HTML/CSS/JavaScript,熟悉 React、Angular、Vue 等框架,关注 SPA、PWA 和 Web3 等技术。前端开发需应对技术快速变化、跨平台兼容和性能优化等挑战,需持续学习并关注 AI、Motion UI 等新趋势。
云云众生s
2025/03/19
4380
经验 | 今年的你应该花5个月时间去学习JS,并且...
前端爱好者的知识盛宴 本文翻译自外国文章。 新的一年,很多人都会想要有一个新的开始。在Andrei Neagoie看来,人们应该选择一个非常有前景而且能够从中获得乐趣的职业,他认为这个职业就是学习编程,而且是学习Javascript,为什么他要这样说?又该怎么去学习?他发表在Medium上的一篇文章详细阐述了背后的原因,也给出了相关的学习规划供人参考学习。 如果你是一个初学者,初级开发人员,或者对这个行业很好奇,这篇文章就是为你准备的。如果你是一个成熟的开发者,你可能会在这里找到一些有用的链接,因为我列
用户1097444
2022/06/29
4950
经验 | 今年的你应该花5个月时间去学习JS,并且...
每个优秀程序员必须具备的技术技能
我特别支持软件开发者在他们掌握技术技能的同时去学习“软技能”——事实上,我写了一本关于这方面的书——但是不可否认的是:技术技能很重要。 我的意思是,如果你不能编写代码和开发软件,那么你学习众多软技能有
李海彬
2018/03/23
8400
每个优秀程序员必须具备的技术技能
2017年前端开发工具趋势
你有两年以上的前端开发经验吗?你会用 Sass 和 Autoprefixer 等高级的CSS辅助技能吗?你的 JavaScript 知识是否融汇贯通,你是否喜欢使用 Gulp , npm 和 jQue
前朝楚水
2018/04/04
9060
2017年前端开发工具趋势
程序员编程生涯中会犯的7个错误
因为老九君经常和程序员接触,时间久了,我发现很多程序员总是犯着相同的错误,前仆后继,却毫不自知。 下面就是程序员在他们的软件开发生涯中最常犯的7个错误。 请输入标题 abcdefg 没有明确的目标 心中没有目标,那就只会随波逐流。如果你想在软件开发的职业生涯上获得成功,那么你需要有一个明确的目标。 仅仅只是对遥远的未来有一个模糊的想法是不够的。相反,你应该有坚实的目标——在某个时间段内的首要目的——明确定义的目标。 其实有许多程序员和所谓的专业人士庸庸碌碌地在同一个岗位上干了几十年,是的,你没听
老九君
2018/03/06
7790
程序员编程生涯中会犯的7个错误
2024 年 7 个 Web 前端开发趋势
希腊哲学家赫拉克利特认为,变化是生命中唯一不变的东西。这句话适用于我们的个人生活、行业和职业领域。
深度学习与Python
2024/01/23
7840
2024 年 7 个 Web 前端开发趋势
最新2019前端开发的发展趋势,百万程序员的进阶之梦
前端是个最近几年很火的职业,而且持续火热中,有个词叫水涨船高,来的人多了,竞争多了,标准也就提高了。现在对前端工程师的要求跟当年前已经不能同日而语了。
用户5827212
2019/07/25
7960
现代前端开发路线图:从零开始,一步步成为前端工程师
编者按:很多人都想学编程。但是苦于没有具体的步骤和指导。比如想找份前端开发的工作,却不知道应该先学习什么再学习什么,也不知道该选择什么样的工具。因为经常被人问到类似的问题,全栈开发者Kamran Ahmed索性在github上制订了一份现代前端开发的路线图,并且用一篇文章对前端开发的整个学习过程进行了详细解释。感兴趣的初学者不容错过。
前端教程
2018/07/27
9220
现代前端开发路线图:从零开始,一步步成为前端工程师
前端程序员为什么应该拿高薪
决定产品价格最重要的是供求关系。技术水平重要,但绝没有市场供给关系重要。不能理解的话举个简单例子,空气重要么?重要,人没了空气活不了,但是为什么不值钱?就是因为在市场关系中是供远远大于求的。
哲洛不闹
2018/09/18
5150
前端程序员为什么应该拿高薪
ChatGpt的出现,前端真的已死?
在过去的几个月里,我与许多职业初期的开发者交谈,他们对人工智能越来越感到焦虑。他们看到了像GPT-4这样的工具越来越令人印象深刻的演示,并担心当他们熟练掌握HTML/CSS/JS时,就没有工作机会了。
前端小智@大迁世界
2023/03/31
9520
ChatGpt的出现,前端真的已死?
程序员编程生涯中常会犯的7个错误,你中了吗?
作为软件开发人员生活和职业指导,我需要和很多程序员交流,帮助他们提升职业生涯,加速成长。 时间久了,我发现很多程序员总是犯着相同的错误,前仆后继,却毫不自知。 下面就是程序员在他们的软件开发生涯中最常
CSDN技术头条
2018/02/08
5280
程序员编程生涯中常会犯的7个错误,你中了吗?
2020程序员技能展望:平均年薪5.4万美元,雇主最看重的语言Python名列第二
为了了解 2020 年市场对开发人员技能需求的状况,世界知名招聘平台 HackerRank 对来自 162 个国家/地区的 116,000 多名开发人员和招聘经理进行了每人 15 分钟的在线调查,发布了第三份年度开发人员技能报告。这是该公司有史以来规模最大的调查,要求受访者提供有关编码训练营、薪酬公平等方面的投入,相关结论如下。
CDA数据分析师
2020/02/24
4680
2020程序员技能展望:平均年薪5.4万美元,雇主最看重的语言Python名列第二
2017年前端开发工具趋势
本文来源于全球的5254份前端工具使用的调查报告,期望通过本文能够帮助大家更好的了解最新的前端开发工具趋势。
葡萄城控件
2022/05/09
5580
2017年前端开发工具趋势
web前端程序员需要会那些技能?
  黑马程序员为大家分享web前端学习6大技术知识点,希望可以在今后的学习中帮到找到重点,以及学习的主次之分。
用户4104697
2018/12/04
9840
web前端程序员需要会那些技能?
成为一名专业的前端开发人员,需要学习什么?
你有没有看过你非常喜欢的网站,是否研究过它的布局方式,有没有想过我自己能不能也能实现一个,甚至比你看的网站更好!
用户8983410
2021/09/19
1.6K0
为什么我不想成为Web前端程序员
为什么我不想成为Web前端程序员 职位名称并不代表技能集 作为一个前端开发人员,你是不是认为自己不需要懂很多技能?然而事实可能并非如此。 我在一个热门的工作论坛就前端开发工作做了一个快速搜索,发现有一个主题经常反复出现,那就是成为中级/高级前端开发者需要什么技能: (X)HTML(5)、CSS、SASS / SCSS,LESS。 Backbone、Angular、Knockout。 响应式网页设计(例如Bootstrap知识、Foundation等)。 Adobe Photoshop、Magento
用户1289394
2018/02/26
9000
为什么我不想成为Web前端程序员
超过三十岁就不适合写代码了?看看国外程序员怎么说
随着时间的推移,我注意到的一点是,我不再像刚开始工作时那样朝气蓬勃、意气风发和精力充沛。随着年龄的增长,对我的工作要求越来越高,每天都需要学习新的东西,随着时间的推移,我的大脑开始变得不如从前,但最重要的是,我比以往任何时候都需要更多的睡眠。作为开发人员工作变得更加困难。虽然我还可以解决这个问题,但对我的职业前景还是有些怀疑。
三分恶
2020/09/22
5540
推荐阅读
相关推荐
坦然面对:应对前端疲劳
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档