原文地址:https://sizovs.net/2018/12/17/stop-learning-frameworks/。翻译的比较生硬,大家凑合看吧。  

  我们作为程序员,对技术要时刻保持着激情,每天都需要不断地学习编程语言、框架或库,并且会的工具越多越好。很多人都还会觉得学习Angular、React、Vue、Riot、Ember和Knockout等框架是一件有趣而高大上的事情。

但是在这里,我想说我们都是在浪费时间。

一、我与导师之间的一次谈话

1)时间

  时间是最宝贵的资源,既不可再生,也无法购买到,正所谓:“花有重开日,人无再少年”。技术现在就像时尚那样日新月异的变化着,我们必须加快自己学习的速度才能赶上变化的步伐。这是一场没有赢家的比赛,因为没有终点。

图片引自华尔街的狼(2013年)

2)谈话

  我的导师曾经教过我一课:

  导师:“艾德,你在做什么?”

  我(自豪):“我正在读一本关于使用GWT构建现代Java应用程序的书。”

  导师:“为什么?”

  我:“作为Java程序员,我需要跟上趋势。 GWT是一种非常流行的技术。”

  导师:“你在GWT之前读过什么技术书?”

  我:“一本长达500页的Apache Tapestry书。 Tapestry当时也很流行。“

  导师:“那Tapestry现在还流行吗?”

  我:“不流行了。 现在是GWT。“

  导师:“你能复用Tapestry中的技术来解决当前的问题吗?”

  我:“不能,今天已经没有人用它了。”

  导师:“设计模式能帮助你解决当前的问题吗?“

  我:“可以。”

  导师:“虽然技术的更新迭代非常快,但它们也有很多共通之处。因此,你可以将80%的学习时间投入到基础知识中,而只需把剩下的20%用于框架、库和工具。“

  我:“嗯......框架,库和工具只需要20%的学习时间吗?”

  导师:“是的。你将来会在工作中遇到它们,在解决相关问题的同时,你也是在学习它们。“

  我:“谢谢。”

  导师:“你以后会感谢我的。”

二、我的改变

  这个建议改变了我的生活,我把所有框架相关的书从书架上挪了下来,从50本缩减到0本。

  我买了一套常青书。 这些书占我学习时间的80%:

  1、实干的程序员

  2、代码整洁之道

  3、代码整洁之道 程序员的职业素养

  4、领域驱动设计:软件核心复杂性应对之道

  5、测试驱动的面向对象软件开发

  6、持续交付:发布可靠软件的系统方法

1)林迪效应

  我还买了一本关于当前技术的书。林迪效应表明Spring Framework是一个很好的技术投资。

  林迪效应是指,对于一些不会自然消亡的东西,比如一种技术、一个想法,它们的预期寿命和它们目前已经存在的时间成正比。即它每多生存一段时间,它的剩余预期寿命就会增加一点。

  技术在市场上的时间越长,投资就越安全。

  不要急于追求热点(即学习新技术) —— 它很有可能会快速消亡。

  时间将显示哪些技术值得投资,时间是您最好的顾问, 学会等待。

2)十年后

  从那以后已经过去十年了,我帮助了50个不同的软件项目。感谢您的建议,我学到的一切都可以在公司、团队和领域之间迁移。我的知识在今天仍然有用,我没有浪费我的时间。

  所有项目看起来都不同,除非你从表面看:

  1、编程语言是不同的,但语法设计相似的。

  2、框架是不同的,但使用的设计模式是相同的。

  3、开发人员是不同的,但与人交流的规则是一样的。

3)爱日惜力

  记住 —— 时间很宝贵,选择值得学习的框架,库和工具,而不是那些匆匆过客。

  把你的黄金时间投入到可迁移的相关技能中,例如:

1、代码整洁之道,设计模式,DDD

2、工匠精神

3、容错模式

4、持续交付

5、Web, HTTP and REST

【翻译】停止学习框架(Stop Learning Frameworks)的更多相关文章

  1. 停止学习框架(Stop Learning Frameworks)

    https://www.cnblogs.com/strick/p/10161733.html

  2. deep learning framework(不同的深度学习框架)

    常用的deep learning frameworks 基本转自:http://www.codeceo.com/article/10-open-source-framework.html 1. Caf ...

  3. Caffe——清晰高效的深度学习(Deep Learning)框架

    Caffe(http://caffe.berkeleyvision.org/)是一个清晰而高效的深度学习框架,其作者是博士毕业于UC Berkeley的贾扬清(http://daggerfs.com/ ...

  4. 28款GitHub最流行的开源机器学习项目,推荐GitHub上10 个开源深度学习框架

    20 个顶尖的 Python 机器学习开源项目 机器学习 2015-06-08 22:44:30 发布 您的评价: 0.0 收藏 1收藏 我们在Github上的贡献者和提交者之中检查了用Python语 ...

  5. [深度学习大讲堂]从NNVM看2016年深度学习框架发展趋势

    本文为微信公众号[深度学习大讲堂]特约稿,转载请注明出处 虚拟框架杀入 从发现问题到解决问题 半年前的这时候,暑假,我在SIAT MMLAB实习. 看着同事一会儿跑Torch,一会儿跑MXNet,一会 ...

  6. 迁移学习( Transfer Learning )

    在传统的机器学习的框架下,学习的任务就是在给定充分训练数据的基础上来学习一个分类模型:然后利用这个学习到的模型来对测试文档进行分类与预测.然而,我们看到机器学习算法在当前的Web挖掘研究中存在着一个关 ...

  7. 迁移学习(Transfer Learning)(转载)

    原文地址:http://blog.csdn.net/miscclp/article/details/6339456 在传统的机器学习的框架下,学习的任务就是在给定充分训练数据的基础上来学习一个分类模型 ...

  8. 学习笔记︱Nvidia DIGITS网页版深度学习框架——深度学习版SPSS

    DIGITS: Deep Learning GPU Training System1,是由英伟达(NVIDIA)公司开发的第一个交互式深度学习GPU训练系统.目的在于整合现有的Deep Learnin ...

  9. Cs231n课堂内容记录-Lecture 8 深度学习框架

    Lecture 8  Deep Learning Software 课堂笔记参见:https://blog.csdn.net/u012554092/article/details/78159316 今 ...

随机推荐

  1. vnc 搭建 转

    这里要注意,关闭selinux setenforce 0 原文地址: http://www.linuxidc.com/Linux/2015-04/116725.htm 这是一个关于怎样在你的 Cent ...

  2. 1.2 eigen中矩阵和向量的运算

    1.2 矩阵和向量的运算 1.介绍 eigen给矩阵和向量的算术运算提供重载的c++算术运算符例如+,-,*或这一些点乘dot(),叉乘cross()等等.对于矩阵类(矩阵和向量,之后统称为矩阵 类) ...

  3. [C#]GetFloat提示"指定的转换无效"

    数据库中没有double型,float就表示double值.sql server数据库字段类型与.net的数据类型的对应关系: real(数据库)<--> float(.NET)float ...

  4. xbeePRO900HP的几个关键参数

    xbee PRO 900HP又叫xbee PRO S3B,在模块的正面有S3B的字样: 因为用到这个模块的,多用的是digimesh组网固件,所以以下参数修改只针对digimesh的修改:市面上的xb ...

  5. springboot 初始化 web 项目 启动报错。。。一直解决不了

    1. 一个简单的SpringBoot项目,启动时报错信息: ERROR 18688 --- [cat-startStop-1] org.apache.catalina.core.ContainerBa ...

  6. flask 学习

    标题 操作 09-2-sqlalchemy数据库查询 (2019-01-18 23:30) 编辑 09-1-数据库扩展包flask-sqlalchemy (2019-01-18 17:53) 编辑 0 ...

  7. Html5与Css3知识点拾遗(八)

    css5新增的元素与属性 表单内元素的属性 1. form属性 之前必须书写在表单内部.而在Html5中,可以放在任何位置,为元素指定一个form属性,属性值为该表单的id,就可以声明该元素属于指定表 ...

  8. Makefile入门

    相信大家对makefile都不陌生,在Linux下编写程序基本都离不开makefile的编写,我们都知道多个.c文件经过编译器编译后得到多个.o文件,这些文件是互相独立的,但最终我们要得到一个可正常运 ...

  9. windows10环境下安装Tensorflow

    1.什么是tensorflow TensorFlow是谷歌基于DistBelief进行研发的第二代人工智能学习系统,其命名来源于本身的运行原理.Tensor(张量)意味着N维数组,Flow(流)意味着 ...

  10. 利用ADO打开Access数据(64位系统)

    64位的access一定要用64的程序才能正确打开,仍然用"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Test.accdb;Persist ...