【外刊IT评论网】你真想到了50岁还靠编程来养家糊口吗?

标签: 思想人生 | 发表时间:2012-10-26 00:07 | 作者:Aqee
出处:http://www.aqee.net

你真的愿意到了50岁还要做编程吗?

老实说,我在20岁时可没打算这样。我编程就是为了挣钱。只要编程还能挣钱,我就愿意一直这样挣下去,差不多就是这样。

到了50岁时你觉得你还能做什么?你能找出一个远离编程但符合下列要求的职业吗?:

  • 需要很少或不需要任何的教育程度
  • 报酬高——即使是水平一般的人
  • 无数的岗位需求
  • 不需体力劳动
  • 没有健康安全或违法的风险

编程挣钱很容易。编程这个行业门槛低,但却极难退出。什么行业能替代?

我有3个律师同事——两个后来成为了程序员,一个成为了项目经理。我还没有遇到过有程序员变成律师的。我知道一个工程师——不是程序员——他后来变成了专利律师(据说的原因:“一定程度上,你会非常讨厌那些跟你的孩子年岁相仿的经理”)。你想在你50岁时做一名专利律师吗?

我认识一个经理,他说他更想当一名学校教师,认为这样的工作对社会更有价值。但他干了8个月后就辞职了,在主流报纸采访他的告别会上他说:“有时候我甚至想带一挺机关枪进教室,端起来扫射”。他现在给韩国三星工作,他感觉他的在智能手机摄影技术上的贡献已经充分的长久的使社会受益了。

我的一位同事近来一直在学习大量的知识。他有心理学和一种叫做虚拟剧院(Visual Theater)的学位。他业余时间一直在编程,靠编程来补济他的学费。他的编程工作也成了他的视觉效果工作的一部分(跟电脑声效相关)。他的编程最终也可能会资助他的艺术工作。我不能想象他某一天会退出编程。

我曾看到过很多人的“退出”,有的是学习物理的,有的是学习哲学的,他们最终转向了编程工作。金钱是有吸引力的。当然,除了钱,编程还能让你获得很多其它的满足——这就是为什么我要无偿的开办这个博客网站——但是,大部分的这些满足都是有源动力的——直接或非直接的,大部分的还是和金钱相关的。“开发有用的东西”和“挣钱”是密切相关的。

当然,你也许会有一个不用发愁的财务来源。但如果没有,编程就成了你的B计划。对于物质财富,有一点我要提醒——它是很容易被拿走的。我经过了苏联时代,所以我说的会显得有些夸张——但实际上,财产很容易被没收,钞票一夜间变成废纸,并非在苏联是这样,美国在相似的时期也有过 没收公民黄金的事情。而职业能力是不能没收的。程序员在这个时候仍然能通过自己的努力来保持良好的生计。

有人说职业编程压力太大。同样,要看跟什么相比。跟医生?律师?接听暴跳如雷的客户的电话时还要留神你的回复会被录音用作以后的检视?

什么压力?真正能编程的程序员——比如,能正确的打印出二叉树结构——是非常稀缺的。这种稀缺情况下一个真正的程序员不会任人随意摆布的。你也许能胁迫他们没有报酬的加班,但很快他们就会认识到:这是买方市场,你在虚张声势。你找不到可以替代他们的人。

在这种供不应求的局面下,每个人都能在编程职业里找到自己的空间。相较于金融/投资银行类的工作来说,编程行业竞争并不是那么激烈。 程序员通常还会有“隔离带”来防止客户和高层管理人员的侵扰——这些人永远都是对的,这使得跟这些人的交流索然无味。

工期压力?不错,这是存在的,但每个人身上都会发生。我承认,我们经常会逾期完不成任务,但这不是很有压力的事,除非自己给自己制造压力。如果你被分配了一个不可能完成的任务计划,而你也尽力了,但还是没按时完成,你可以深深自责,或者保持平和心态。事实上,你的肉体绝不会因为贻误工期而受到危险,所以,你的反应完全取决于你自己。

有人说,程序员无法完全的把握事情的进展,无法完全的了解所有的API,技术层面等东西。如果你不能理解自己身处的环境,这就是压力,这可不好玩。说的很好;但是,又有谁能比一个程序员对此了解到更多呢?钻研病人内脏的大夫?翻阅法律文案的律师?监管一二十个程序员的老板?面对所有这些人为造成的复杂情况,我们仍然是境遇最好的。

事实上,超过50岁的程序员并不是很多。这意味着编程不是一个长久的活儿吗?更可能的原因是,这只是发展的结果。30年前——相对于10年前——20多岁的程序员是很少的。因此,如今50多岁的程序员要要比30多岁的程序员少的多。一定程度上编程世界的发展在慢下来,往后20年,事情又会变的不同。

所以,我没打算退出编程,并不是单因为它本身能带来很多乐趣,也是因为它比起其它行业来要理想的多。也许这不是最“热情的”词藻——即使热情耗尽,贪婪永不停息。如果你打算退出编程行业,我怀疑你能找到什么更好的职业。而且,当你数年后再次回到编程领域时,我一点儿都不会惊讶。


本文来自 外刊IT评论网( www.aqee.net),原始地址: 你真想到了50岁还靠编程来养家糊口吗?


相关 [it 编程] 推荐:

Hadoop Streaming 编程

- - 学着站在巨人的肩膀上
Hadoop Streaming是Hadoop提供的一个编程工具,它允许用户使用任何可执行文件或者脚本文件作为Mapper和Reducer,例如:. 采用shell脚本语言中的一些命令作为mapper和reducer(cat作为mapper,wc作为reducer). 本文安排如下,第二节介绍Hadoop Streaming的原理,第三节介绍Hadoop Streaming的使用方法,第四节介绍Hadoop Streaming的程序编写方法,在这一节中,用C++、C、shell脚本 和python实现了WordCount作业,第五节总结了常见的问题.

Shell编程

- - 博客园_首页
本来打算寒假回家好好学习Linux的,为以后学习嵌入式打好基础的. 回家之后的学习效率非常低,之前为了搭建Linux环境,折腾了很长时间,学到现在也就勉强才把Shell编程学完了. 今天就把自己学习的相关知识点总结整理一下. 个人感觉shell程序跟windows下的批处理文件有点像,就是将一些系统命令写进一个可执行文件中,然后执行.

用 AlphaCode 编程

- - 奇客Solidot–传递最新科技情报
至少在部分问题上 AI 程序员能与真正的程序员竞争了. Alphabet 旗下 AI 子公司 DeepMind 宣布了 AI 代码生成系统 AlphaCode(PDF),声称测试显示其水平在编程竞赛中已经具备了竞争力. 计算机科学家 Scott Aaronson 也为 AI 在编程方面的进步 惊叹不已.

编程能力与编程年龄

- - 酷壳 - CoolShell.cn
程序员这个职业究竟可以干多少年,在中国这片神奇的土地上,很多人都说只能干到30岁,然后就需要转型,就像《 程序员技术练级攻略》这篇文章很多人回复到这种玩法会玩死人的一样. 我在很多面试中,问到应聘者未来的规划都能听到好些应聘都说程序员是个青春饭. 因为,大多数程序员都认为,编程这个事只能干到30岁,最多35岁吧.

[译]所有编程皆为Web编程

- - 呦呦鹿鸣
原文作者:Jeff Atwood. Michael Braude对Web编程大受追捧表达了他的不屑:. 大部分人想去做Web编程的原因是,他们不够聪明,因此也做不了别的事. 他们不懂编译器、并发性、3D或类继承. 他们根本不明白我为什么要使用接口或者抽象类. 他们不理解虚函数、指针、引用、垃圾回收、终结器、传引用与传值的区别、C++的虚拟析构函数、或者C#的结构体与类之间的差别.

javascript 编程规范

- 红茶 - 博客园-Ruby's Louvre
为公司起草的javascript编程规范,参考了网上的许多资料,尤其是google的规范. 现在放出来,希望能抛砖引玉,大家多提宝贵意见. 本规范是针对javascript函数式编程风格与公司严重依赖于jQuery进行编码的现实制定出来. 禁止使用eval,with与caller(ecma262 v5 的use strict要求).

Javascript编程风格

- - 阮一峰的网络日志
Douglas Crockford是Javascript权威, Json格式就是他的发明. 去年11月他有一个演讲( Youtube),谈到了好的Javascript编程风格是什么. 我非常推荐这个演讲,它不仅有助于学习Javascript,而且能让你心情舒畅,因为Crockford讲得很幽默,时不时让听众会心一笑.

编程的未来

- - ITeye博客
最近在看一本书,加来道雄(Michio Kaku)的《物理学的未来》,第一、第二章是程序员更加关心的,对于下一个100年计算机和人工智能未来的预测. 想想计算机发展短暂的历史,这些发生了的翻天覆地的变化,似乎都在弹指一挥间. 无论如何,书中对其这样几个猜想令我记忆深刻:. 这是物理学家眼中的世界(另外推荐他的另一本书《平行宇宙》),激动人心;另一方面,我回想起小时候无比痴迷的机器猫,小小四维空间袋,寄托了孩子多少纯真的梦想,有多少神奇的道具已经成为现实…….

MapReduce编程模型

- - CSDN博客云计算推荐文章
MapReduce是一个Google发明的编程模型,也是一个处理和生成超大规模数据集的算法模型的相关实现. 用户首先创建一个Map函数处理一个基于对的数据集合,输出的中间结果基于对的数据集合,然后再创建一个Reduce函数用来合并所有的具有相同中间Key值的中间Value值.

Kafka编程实例

- - CSDN博客云计算推荐文章
    Producer是一个应用程序,它创建消息并发送它们到Kafka broker中. 这些producer在本质上是不同. 比如,前端应用程序,后端服务,代理服务,适配器对于潜在的系统,Hadoop对于的Producer. 这些不同的Producer能够使用不同的语言实现,比如java、C和Python.