阅读更多

17顶
0踩

非技术
原文:thecodist
译文:伯乐在线 - Fiona
网址:http://blog.jobbole.com/68875/
我曾经在Hacker News网站上读过一篇帖子的评论,其中一个年轻的程序员说他们不想呆在那些只会让思想陈旧的老程序员离开而不是对他们再次培训的公司里,因为他明白,有一天他们也会这样。

也许这个人的本意是好的,但是他这种说法还是让我恼怒。首先仅仅因为一个程序员年龄较大并不能说明他思想陈旧(就像一个年轻的程序员你不能因为他年纪轻就说他思想新潮)。我认为这个评论中最大的问题是:始终让自己接受教育并跟上时代的发展,这应该是你自己的责任,而不是公司的问题

我做程序员已经32年了,而且我一直努力让自己学习各种技术来保持进步。我知道很多像我这个年纪的人自从拿到计算机学士学位以后就再也没有学习过任何新知识,因此他们最终会被淘汰。我花了6年的时间学习化学,但是一旦当我成为一名程序员,我发现我需要了解在我工作之外发生了些什么,而且我有不断学习的欲望并一直在尝试各种各样的编程。当然在当年那个时候,所有事情都要慢得多,因为所有的学习都要靠阅读,这是一个很大的挑战(当时没有网络,你必须读纸质版的东西!)

在我做程序员的第三年,我预见到微型计算机是未来发展的方向,因此我调整了我的工作重心,并加入了他们那个团队。有一次,在那里我读到一门新的语言(即C语言),并说服我的经理买下它。事实证明,会用C语言意味着我的第一个应用程序就可以用C语言来编写,而不再用Pascal。

后来我又知道了关于面向对象编程,它点醒了我,于是我在C的基础上增加了一些可以取巧的对象以便利用。因此当后来C++出现的时候我已经游刃有余了。

当我在苹果工作了一段时间之后,我认为我需要在网上工作并去了咨询公司使用NeXT WebObjects写了一些被称之为称为Objective-C的晦涩语言。一旦Java J2EE出现,我相信公司会使用它来工作,结果就真的利用J2EE做了第一个项目。巧合的是,当时做那个项目的公司就是现在我老板的母公司,这是他们的第一个完整的Java项目。

当你关注的是整个行业发生了什么,而不是只关注你自己正在做的事情的时候,一切就自然而然的出现了。你没办法知道哪件事会成为下一个大事件,但是你可以做到让自己对所有的事情都有了解,即使你没办法将它们一一尝试。

我记得2000年中期的时候有一个同事,是搞C++的头儿,当时他的IE浏览器出现了一些问题,我建议他试一下firefox。结果他像看一个疯子一样的看着我,因为除了IE之外,他不知道还有别的浏览器。在那之后他也没有兴趣去尝试一下firefox,即使这并不会影响到他的工作。我没办法理解这种态度。你没办法知道下一个大事件会从何而来,拒绝承认这个世界在改变并不会真的让世界停止改变。

我有一些获得本科学位的朋友,当大型机退役之后他们随之失业,当他们发现他们没办法再继续当程序员的时候,他们开始抱怨说早该花点时间学些别的东西。但是当你意识到这些的时候,一切都太晚了。认为你的老板会来培训你无异于痴人说梦。有时候你的老板会连个通知都没有就开了你,你会丢了工作,项目,甚至是整个公司,然后你不得不去找份新的工作。指望老板对你进行培训是不现实的,如果你是一个汽车生产线上的工人这还有可能,但作为一个程序员是完全不可能。

能不能进步取决于你自己,你要自己去尝试新的事物,即使它们并不重要。学习任何东西都是有用的,因为你尝试的编程技术和工具越多,再用其他的工具就会越容易。你所学的东西可能会没什么用,但是学习本身永远不会做无用功。不管是你在写开源代码,或是自愿的编个程,或者仅仅是在家里写一个别人永远看不到的东西,都没有关系。它训练了你的大脑开始接受新事物。即使是仅仅了解了在编程的世界里将要发生什么,也可能是有用的,因为不知道在什么时候,就会有老板问到你关于这方面的问题。

当我第一次听说Ajax的时候(在这个术语出现了几个月之后)我正在写web应用程序,然后我开始使用它;再一次的,我先把这个新东西教给我的同事们。遗憾的是这让公司的架构团队感到恐慌,他们认为我购买了一种未经批准使用的新技术,他们也怀疑这种新技术能否得到支持。他们中间没有人听说过这个东西(其实是他们没有去关注过),当我告诉他们这只是一种Javascript的时候他们才勉强息怒。我在架构团队里,与时俱进的接受新事物是我的职责所在,这也是个很痛苦的过程。

当iphone最初面世的时候,虽然还没有任何已开发的工具包,我仍然觉得它代表着未来。我的Objective-C方面的知识再次派上了用场,这实在很让人吃惊。

现如今要与时俱进是很荒谬的一件事。用JavaScript做 web 应用的人们每周都能搞出新的大事件;即使学的再快,你也没办法在新的框架覆盖之前就学习完所有的东西。那些日子我的工作并不在这个领域(当时我只做ios),但是我仍然坚持学习,你永远不知道未来会朝什么方向发展,也没法知道你会在哪里结束。

在老板给我的少数的几堂培训课里,我基本上没学到什么有意义的东西,因为我那些东西我都已经了解,而且有些新技术我都已经使用过了,即使它们对我的未来没那么重要。不过所有的事情都是这样,你没办法知道哪些东西会在以后帮到你。

在研究生期间学习化学的时候我学到了APL,除了玩,我从没用它干过别的事情,但是最后它成了我第一个产品Trapeze的基础。在1999年之后我把Objective-C忘得干净,但是现在它成了我的主要语言。你没办法知道在未来能帮到你的东西跟现在有什么关联。

有的程序员会忽视掉他们工作方面以外的一切,这种行为深深刺激了我。我曾与一些利用4GL工具生成RPG代码的人一起工作。他们吹嘘说他们使用的工具是世界上最好的,他们无需再了解别的什么东西。我甚至能够想象当他们中的大多数人下岗的时候,他们会开始疑惑,为什么他们没办法再找到一份新的工作。技术很少会消失,但是你的工作会减少,除了可怕的维护工作外你可能什么都做不了,然后你就变得多余,直至被扫地出门。现如今任何人都没办法帮助你重新成为有用的人,除了你自己。如果你还在等待,那么等到一切都已经太迟的时候,你的事业就会遭受到毁灭性的打击。

所以现在不要再拖延了,学点新东西吧,让自己更好的学习新东西吧。睁大你的双眼,你可能就会看到未来正在向你走来。当它展示在你面前的时候你会发现这没什么大不了的。很幸运一直以来我能够保持专注,这让我在三十年之后仍然能够进行编程,能够在一些很现代化的东西上进行工作。

所以要睁大你自己的双眼,不要指望别人会帮助你。就像棒球投手Satchel Page所说的那样:“别回头,别人随时有可能赶上你”。在编程方面你需要一直向前看,因为你背后唯一的东西是讨厌的颠覆者。
来自: 伯乐在线
17
0
评论 共 3 条 请登录后发表评论
3 楼 JackMei 2015-12-17 11:15
2 楼 枫叶主人 2015-12-16 16:47
确实,很多技术和框架更新的太快了,如果只是闭眼闷头研究当下的东西,结果可能就是你刚有所突破还来不及大展拳脚的时候它已经优势不大或是出现了更好的解决方案。深入研究是必要的,但是洞悉你所要前行的远方正在发生什么或是预测明天会不会是一个合适的好天气也是必要的甚至更重要的。
1 楼 田梦桦 2015-12-15 11:31
这个必须顶,既然选择了程序员,就要有一颗一直学习的心

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 作为一个程序员,你的进步完全取决于你自己

    我曾经在Hacker News网站上读过一篇帖子的评论,其中一个年轻的程序员说他们不想呆在那些只会让思想陈旧的老程序员离开而不是对他们再次培训的公司里,因为他明白,有一天他们也会这样。 也许这个人的本意是好的,...

  • 【转】作为一个程序员,进步完全取决自己

    我曾经在Hacker News网站上读过一篇帖子的评论,其中一个年轻的程序员说他们不想呆在那些只会让思想陈旧的老程序员离开而不是对他们再次培训的公司里,因为他明白,有一天他们也会这样。 也许这个人的本意是

  • 程序员的进步直接取决于自身行为

    我曾经在Hacker News网站上读过一篇帖子的评论,其中一个年轻的程序员说他们不想呆在那些只会让思想陈旧的老程序员离开而不是对他们再次iOS开发培训​的公司里,因为他明白,有一天他们也会这样。  也许这...

  • 作为一个Java程序员,初学者应该如何开启自己的编程生涯?

    dWeb上描述前端与后端差异的众多迷因之一。 后端。看不见的真相,未透露的故事。在过去,知道PHP足以自称为后端开发者,然后微软引入了ASP.NET。这两个就开始打架,直到Node.js冒出来把东西整理得井然有序。一些事件...

  • 张云龙-一个程序员的成长之路 - 剖析别人,总结自己

    张云龙-全民直播-CTO 张云龙老师于2018年5月19日在「FDCON2018...关于我自己的成长历程,一直都很想找个时间跟前端的开发者们分享一下。通过剖析别人,也可以总结自己。我很害怕把这个主题讲的跟成功学一样,其实...

  • 如何成为一名优秀的程序员

      相信每一个人都有自己的追求和向往,或许成为一名优秀的程序员正是追求之一,成为一名优秀的程序员也是我的追求之一,虽然追求的路途异常曲折但也要勇往直前。 何谓优秀的程序员?   在讨论如何成为一名优秀的...

  • [译]作为程序员你不能成功的 10 个迹象

    原文地址:10 Signs You Will Suck at Programming 原文作者:Jonathan Bluks ...我经常在 Reddit、Quora 上遇到有人问,“怎样才能知道我将来会不会成为一名成功的程序员?”(事实上,这篇文章实际上是我在 Quora ...

  • linux应用程序开发入门,作为一名程序员我不忘初心

    “IT初级人才招聘市场上”除了每年新入行的人,还有几年内、大几年内入行后技术没有进步的人,这些人被辞退、或跳槽找工作,找的也是“IT初级程序员”岗位…… 以互联网巨头阿里的招聘信息来看,首先对于工作经验有...

  • 一个程序员的成长之路

    FDCon2018大会上的演讲整理 主题:主会场 - 一个程序员的成长之路时间:2018年5月19日 10:40地点:中国 上海演讲嘉宾:张云龙-全民直播-CTO大家好,我是云龙,从2016年3月份开始,我参与到全民直播这个创业项目中,...

  • 程序员成长的四个简单技巧,你 get 了吗?

    我们程序员这个行业不像医生、律师等其他行业,那些行业可谓是越老越吃香,但是我们不一样,我们不能享受越老越吃香的待遇,因为互联网发展太快,技术不断的更新,就我工作的这短短几年时间就有不...

  • 怎样尊重一个程序员

     得知一位久违的同学来到了旧金山湾区,然而我见到他时,这人正处于一生中最痛苦的时期。...然而短短一年 后的今天,这位同学已经完全感觉不到公司对自己技能的尊重。Manager让他做一些乱七八糟没技术含量的事情,...

  • java初级程序_初级Java程序员如何快速提升自己的能力(真心求教)?

    初级程序员如何快速成长?...当然,如果你对自己的未来有一个既好又详尽的长期规划,那么肯定会少走许多的弯路。初入职场,大家都是干一些基本的代码工作,而此后的2-3年,是程序员职业生涯中成长最快的几年,这段时...

  • 【java毕业设计】智慧社区教育服务门户.zip

    有java环境就可以运行起来 ,zip里包含源码+论文+PPT, 系统设计与功能: 文档详细描述了系统的后台管理功能,包括系统管理模块、新闻资讯管理模块、公告管理模块、社区影院管理模块、会员上传下载管理模块以及留言管理模块。 系统管理模块:允许管理员重新设置密码,记录登录日志,确保系统安全。 新闻资讯管理模块:实现新闻资讯的添加、删除、修改,确保主页新闻部分始终显示最新的文章。 公告管理模块:类似于新闻资讯管理,但专注于主页公告的后台管理。 社区影院管理模块:管理所有视频的添加、删除、修改,包括影片名、导演、主演、片长等信息。 会员上传下载管理模块:审核与删除会员上传的文件。 留言管理模块:回复与删除所有留言,确保系统内的留言得到及时处理。 环境说明: 开发语言:Java 框架:ssm,mybatis JDK版本:JDK1.8 数据库:mysql 5.7及以上 数据库工具:Navicat11及以上 开发软件:eclipse/idea Maven包:Maven3.3及以上

  • 基于selenium的携程机票爬虫资料齐全+详细文档+高分项目+源码.zip

    【资源说明】 基于selenium的携程机票爬虫资料齐全+详细文档+高分项目+源码.zip 【备注】 1、该项目是个人高分项目源码,已获导师指导认可通过,答辩评审分达到95分 2、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 3、本项目适合计算机相关专业(人工智能、通信工程、自动化、电子信息、物联网等)的在校学生、老师或者企业员工下载使用,也可作为毕业设计、课程设计、作业、项目初期立项演示等,当然也适合小白学习进阶。 4、如果基础还行,可以在此代码基础上进行修改,以实现其他功能,也可直接用于毕设、课设、作业等。 欢迎下载,沟通交流,互相学习,共同进步!

  • 【java毕业设计】智慧社区宠物管理系统(源代码+论文+PPT模板).zip

    zip里包含源码+论文+PPT,有java环境就可以运行起来 ,功能说明: 文档开篇阐述了随着计算机技术、通信技术和网络技术的快速发展,智慧社区门户网站的建设成为了可能,并被视为21世纪信息产业的主要发展方向之一 强调了网络信息管理技术、数字化处理技术和数字式信息资源建设在国际竞争中的重要性。 指出了智慧社区门户网站系统的编程语言为Java,数据库为MYSQL,并实现了新闻资讯、社区共享、在线影院等功能。 系统设计与功能: 文档详细描述了系统的后台管理功能,包括系统管理模块、新闻资讯管理模块、公告管理模块、社区影院管理模块、会员上传下载管理模块以及留言管理模块。 系统管理模块:允许管理员重新设置密码,记录登录日志,确保系统安全。 新闻资讯管理模块:实现新闻资讯的添加、删除、修改,确保主页新闻部分始终显示最新的文章。 公告管理模块:类似于新闻资讯管理,但专注于主页公告的后台管理。 社区影院管理模块:管理所有视频的添加、删除、修改,包括影片名、导演、主演、片长等信息。 会员上传下载管理模块:审核与删除会员上传的文件。 留言管理模块:回复与删除所有留言,确保系统内的留言得到及时处理。

  • 免费下载:Civil War (Stuart Moore)_xVBgd.zip

    免费下载:Civil War (Stuart Moore)_xVBgd.zip

  • JSP基于WEB的图书馆借阅系统的设计与实现(源代码+论文)(2024pw).7z

    1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于计算机科学与技术等相关专业,更为适合;

  • 免费下载:Spider-Man (Stefan Petrucha)_2pBuA.zip

    免费下载:Spider-Man (Stefan Petrucha)_2pBuA.zip

  • jj视频合并程序代码QZQ.txt

    jj视频合并程序代码QZQ

Global site tag (gtag.js) - Google Analytics