【导读】:学习者综合征的主要表现:学而不用,不停学习,却没有真正实际应用知识来做东西。如果过去的一年里,学习的语言或框架超过三个,那可能已经感染学习者综合征了。Web 开发是重灾区咯。

你有学习者综合征吗?

好吧,这本不是什么值得说道的事儿,但我注意到最近出现了一种行为趋势,尤其是在技术和软件开发领域。我不知道它的确切名字,就暂且称之为「学习者综合征」吧。它描述的是一种行为特征:那些“感染者”会不停地学习新知识,却从不真正地去应用它们。

这个综合征的高发区在 Web 开发领域。最近几年我注意到, Web 框架的数量有了显著的增长。下图展示了一个大致的数量。

你看,过去的 5 年内,出现了大量的框架。我还注意到,Web 开发者都希望能了解并掌握一定数量的框架,这看起来是一种荣誉,并能代表他们的成就。那是什么造成了现在这种局面哪?

我本人也饱受学习者综合征的困扰,我必须站出来对抗它。学习一门新的语言或技术,对我来说通常是一个有趣的经历。我发现自己在构建简单的 Web 应用程序时,会用到以下框架:

  • Go

  • TypeScript

  • NodeJS

  • React

  • Angular

  • Spring

  • … x100

这个列表还在不断更新。我创建了许多 todo 应用程序,已经远超我愿意承认的数量。我现在甚至都认为自己很擅长做 todo 应用程序,恩?这点可能要放到我的简历上。

面试官:你有实际做出一些东西?

我:基本上没有,但你可以从我的档案看到,我做了许多 todo mvc web 应用程序,是用 NodeJS 的一个同构 react 服务器创建的。

要成为一名“优秀”的 Web 开发者,你需要了解并掌握许多技术(包括后端),这是众多技术带来的最大问题。但我认为这一点也不公平。几年前,前端和后端的界限十分清楚;而今天,这条界限已经模糊了,甚至不存在了。前端和后端现在已经合并,称之为“全栈(full-stack)”。这听起来更像是一个狡猾的借口/说辞,一名全栈工程师需要同时处理前端和后端两个方面,工作量反而翻倍了。

我自己对后端技术更感兴趣,但随着异构服务器的兴起,我发现自己也经常为前端编写代码。如果你不熟悉同构服务器,下图给你举了个例子。(译注:与异构相对,同构 JavaScript 应用指的是用 JavaScript 编写的应用,能够同时运行于客户端和服务器。这也让在客户端和服务器之间共享代码变成一种更普遍自然的选择。)

我觉得,当我学习了多种框架和技术时,我运用它们来做出有价值东西的能力会降低。这是因为我花在学习上的时间,超过了做东西所用的时间。如果我开始将时间投入做东西,我感觉会错过了学习新技术的时机,甚至担心被别人超过,而跟不上时代的潮流。

我认为解决这一切的办法,是找到一个平衡点。你必须专注于某一项技术,并且围绕它来分配你的时间。当然,你也可以学习新技术,但每天花在上面的时间不能超过一小时。你需要保证它只能是你的兴趣爱好,而不是一个会上瘾的坏习惯。如果在工作中你只使用一种技术,此时学习者综合征似乎更明显,因为我们大部分的业余时间都花在学习新技术上,而不是用于做东西。不过当你在一个能提升学习的地方工作,那在两方面都能做到最好。

我建议你现在退后一步并思考一下,过去的时间里,你学习了多少新语言或新框架?你创建了多少 todo 应用程序?如果超过 3 个,那你可能“学得太多了”。当然,你可以说这是因为你热衷于学习(新知识),但我觉得对于更多人而言,将时间专注于一门技术上能带来更大的收益。

【我有一个前端学习交流QQ群:328058344  如果你在学习前端的过程中遇到什么问题,欢迎来我的QQ群提问,群里每天还会更新一些学习资源。禁止闲聊,非喜勿进。】

你有学习者综合征吗?Web 开发是重灾区的更多相关文章

  1. 为什么做java的web开发我们会使用struts2,springMVC和spring这样的框架?

    今年我一直在思考web开发里的前后端分离的问题,到了现在也颇有点心得了,随着这个问题的深入,再加以现在公司很多web项目的控制层的技术框架由struts2迁移到springMVC,我突然有了一个新的疑 ...

  2. Go web开发初探

    2017年的第一篇博客,也是第一次写博客,写的不好,请各位见谅. 本人之前一直学习java.java web,最近开始学习Go语言,所以也想了解一下Go语言中web的开发方式以及运行机制. 在< ...

  3. 【初码干货】使用阿里云对Web开发中的资源文件进行CDN加速的深入研究和实践

    提示:阅读本文需提前了解的相关知识 1.阿里云(https://www.aliyun.com) 2.阿里云CDN(https://www.aliyun.com/product/cdn) 3.阿里云OS ...

  4. .NET Web开发技术简单整理

    在最初学习一些编程语言.一些编程技术的时候,做的更多的是如何使用该技术,如何更好的使用该技术解决问题,而没有去关注它的相关性.关注它的理论支持,这种学习技术的方式是短平快.其实工作中有时候也是这样,公 ...

  5. web 开发自动化grunt

    现在web开发自动化已很流行,如何进行压缩文件,如何进行测试js是否正确,如何进行 检测html文件是否规范等等都可以通过web自动化技术进行实现,只要打一个命令即可. 本文主要是通过grunt进行实 ...

  6. eclipse SE增加Web开发插件

    最近接触了些java项目,之前安装了eclipse SE版本.没有Web开发插件,调试不了Web代码.点击“Window”--“Preference” 左边菜单栏是找不到“Server”项来配置服务器 ...

  7. Web 开发中很实用的10个效果【附源码下载】

    在工作中,我们可能会用到各种交互效果.而这些效果在平常翻看文章的时候碰到很多,但是一时半会又想不起来在哪,所以养成知识整理的习惯是很有必要的.这篇文章给大家推荐10个在 Web 开发中很有用的效果,记 ...

  8. 12款简化 Web 开发的 JavaScript 开发框架

    前端框架简化了开发过程中,像 Bootstrap 和 Foundation 就是前端框架的佼佼者.在这篇文章了,我们编制了一组新鲜的,实用的,可以帮助您建立高质量的 Web 应用程序的 JavaScr ...

  9. Golang Web开发时前端出现谜之空白换行的坑

    在使用Golang做Web开发时,有时候渲染出来的模板在前台显示时会出现一些奇怪的空白换行,具体特征就是查看css样式表并没有相关定义的空白部分. 分析: 查看出现问题页面的网页源代码,复制空白换行部 ...

随机推荐

  1. jsorder 第三方修改版 修正bug 增加总价

    我主要运用这个jsorder,修正了它的不足//1.0版本bug:刷新页面 无法增加或者删除原来添加的商品//1.1版本:修正了1.0版本  新增bug 能够修改原来的商品 但出现产品数量为0 仍然保 ...

  2. hdu acm 1114 Piggy-Bank 解题报告

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1114 题目意思:给出一个空的猪仔钱ang 的重量E,和一个装满钱的猪仔钱ang 的重量F你,实质上能装 ...

  3. Android的三种主流资源尺寸

    Android三种主流资源屏幕尺寸:QVGA.HVGA.WVGA VGA的分辨率是640x480像素 QVGA(Quarter VGA)就是320x240,即VGA分辨率的1/4 HVGA(Half ...

  4. open调用过程

    1. 首先传到vfs的do_sys_open,在open.c中. long do_sys_open(int dfd, const char __user *filename, int flags, u ...

  5. ETL的考虑

    做数据仓库系统,ETL是关键的一环.说大了,ETL是数据整合解决方案,说小了,就是倒数据的工具.回忆一下工作这么些年来,处理数据迁移.转换的工作倒还真的不少.但是那些工作基本上是一次性工作或者很小数据 ...

  6. VC++读写文件

    目录 第1章读写文件    1 1.1 API    1 1.2 低级IO    1 1.2.1 文件序号    1 1.2.2 文本文件与二进制文件    1 1.3 流IO    2 1.4 Un ...

  7. 使用Ajax选取ListBox的值异步更新视图,并作为表单值提交

    一.控制器返回一个ViewBag MultiSelecList值. public ActionResult Create() { ViewBag.ReviewIndexItems = new Mult ...

  8. 015--python集合和字符串

    一.集合 关系测试 交集: 两个都有   .intersettion() 或用  &  符号 差集: 列表a有,列表b没有  .difference() 或用  -  符号 并集: 两列表合并 ...

  9. iOS开发检测是否开启定位、是否允许消息推送等权限

    1.iOS开发检测是否开启定位: 需要导入: #import <CoreLocation/CoreLocation.h> 代码如下: + (void)openLocationService ...

  10. UVALive 6833【模拟】

    题意: 算从左往右的值,先乘后加的值,数的范围<=9= =,然后根据满足的条件输出字符. 思路: 从左往右就是直接来了,先做乘法就是乘法两边的数字靠向右边那个,且左边那个为0,然后所有值一加就好 ...