zoukankan      html  css  js  c++  java
  • 编程思想

    我们是程序员, 我们需要紧跟最新的技术,每天都学习新的编程语言,框架,类库,对于最新的工具,我们学得越多越好。

    能够紧跟Angular, React, Vue, Riot, Ember, Knockout这些最新的东西是一件有趣的事情。

    但是,我们在浪费时间!

    时间是我们最宝贵的资源,时间是有限的,不可再生,你也不能购买更多的时间。

    技术界就像时尚界,以“光速”在变化,我们必须跑得飞快才能跟上, 这种竞赛没有赢家,因为竞赛没有尽头。

    The Wolf of Wall Street (2013) by Ma

    我的导师曾经给我“上过一课”:

    导师: “爱德华,你在做什么?”我(很自豪): 我在读一本书,是关于使用GWT构建现代的Java应用程序的。导师:“为了啥?”我:“作为一个Java Developer,我需要紧跟最新的潮流,GWT就是这样的一个东西。”导师:“GWT之前你还读过什么书?”我:“一本关于Apache Tapestry的500页的书。TapeStry当时是流行的东西。”导师:“Tapestry 现在还流行吗?”我:“现在是GWT更厉害了。”导师:“你能复用Tapestry的技能来解决当前的问题吗?”我:“不行,现在没人用它了。”导师:“Tapestry能让你更好地理解GWT吗?”我:“不,不行,但是我看到了一些重复的模式。”导师:“那是设计模式,它们能帮助你解决当前问题吗?”我:“可以。”导师:“新技术来了又走了,但是有很多思想是共通的。 你要设置正确的优先级,把80%的时间投资到基础知识学习上,把剩下的20%留给框架,类库和工具。”我:“嗯...只有20%?”导师:“是的,你可以在实战中再去学习那些细节。 ”我:“谢谢。”导师:“你以后还会感谢我的。”

    这个建议改变了我的生活,我把我书架中关于框架的书都拿掉了,罪恶感从50本书降到了0本,真是个极大的解脱。

    我买了一系列“永葆青春”的书,这些书占据了我80%的学习时间:

    1、《The Pragmatic Programmer》(程序员修炼之道 )

    2、《Clean Code》(代码整洁之道 )

    3、《The Clean Code》(程序员的职业素养)

    4、《Domain-Driven Design》(领域驱动设计和实践)

    5、《Growing Object-Oriented Software, Guided by Tests》(测试驱动的面向对象软件开发 )

    6、《Continuous Delivery》(持续交付)

    我也购买了当前热门技术的书, Lindy效应表明Spring Framework应该是很好的投资:

    技术的未来预期寿命与其当前年龄成正比。每增加一段生存期就意味着更长的剩余寿命。 技术在市场上的时间越长,投资就越安全。

    不要急于学习新技术 - 它很有可能死亡。

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

    从那以后十年过去了。我帮助了50个不同的软件项目。

    感谢导师的建议,我学到的一切都可以在公司,团队和领域之间移植。我的知识今天仍然有用,我没有浪费我的时间。

    所有项目看起来都不同,除非你能看到表面以下:

    编程语言是不同的,但设计思想是相似的。

    框架是不同的,但相同的设计模式闪耀在其中。

    开发人员是不同的,但与人打交道的规则是一致的。

    记住,框架,库和工具来了又走了。时间很宝贵。

    In Time (2011) by Andrew Niccol

    把你的黄金时间投入到那些基础的、不随时间变化的、可移植的技能中当中,这些技能将会永远有价值。

    不要学习微服务框架,学习演进式架构(Evolutionary Architecture)。不要学习新的编程语言,学习代码整洁之道、设计模式、领域驱动设计(DDD)。不要学习 LeSS 和规模化敏捷框架(SAFe),学习精益生产原则(Lean manufacturing principles)。不要学习 Hystrix,学习容错模式(Fault Tolerance Patterns)。不要学习 Docker,学成持续交付。不要学习 Angular、React 和 Vue,学习 Web、HTTP 和 REST。

  • 相关阅读:
    NET(C#)接入Dubbo服务,Zookeeper作为Dubbo服务的注册中心,实现thrift协议访问接口(3)
    zend studio快捷键
    Guid的生成和数据修整(去除空格和小写字符)
    工作中常用Windows快捷键整理(1)-快速关闭网页
    PHP学习笔记(3)-Zend Studio安装和汉化
    PHP学习笔记(2)
    PHP学习笔记(1)
    判断本机ip是电信还是网通
    作业 4/1
    logging 模块
  • 原文地址:https://www.cnblogs.com/bingru/p/10605965.html
Copyright © 2011-2022 走看看