专栏首页ThoughtWorksSoftware is Worthless|洞见

Software is Worthless|洞见

于晓强

ThoughtWorks

在一个周六的晚上,同事的一段文字让我思绪万千,沉寂了十几年的写作冲动,就这样被这段文字唤醒了,虽然已经0点过半。

1

不断萦绕在我脑中的一个思考

为什么越是痛苦压抑,越是能够产生富于生命力和创造力的文字;越是写意轻松,产生的却是浮躁且没有灵魂的声音。已经忘记是在哪里看到过这样一篇文字,叫做“历史的终结”,大概的意思就是,当故事走向幸福道路的时候,历史就在此刻终结了,因为幸福的故事已经不需要被表达与陈述。

“每一个幸福的家庭都是相似的,而每一个悲惨的家庭都有各自不同的悲惨”,这给出了一个可能的解答。痛苦是多样化的,而多样化正是生命力与创造力的源泉。在痛苦的挤压下,在那一丝丝的罅隙中奋起抗争,产生的是生命力与创造力;在约束的束缚下,在那一点点的空间中辗转腾挪,浮现出的却是富于生命力与创造力的设计。

2

软件便是这样

它是在问题与约束的罅隙中,纯粹脑力挣扎的产物。然而软件却又不同于文学作品,文学作品的运行时环境是人的大脑,大脑极强的适应性使得文学作品的价值可以世世代代的延续下去;然而软件的运行时环境是机器,其价值在几十年甚至短短几年里便会消耗殆尽,软件是短命的。

一个又一个新的JavaScript框架产生了,主流技术栈变得越来越相似,轮子在不同的语言和框架中一遍又一遍的被重复发明着,软件总是被淘汰与替换着。

自软件诞生起,就以惊人的速度不断降低着自己的构建成本,随着软件开发技术的不断革新,今天大多数的商用软件,本质上都是基于开源软件的二次开发而已,各种PaaS平台的兴起,进一步让软件的构造变的越来越容易。

想想你所写的每一行代码,将会以多快的速度被淘汰、被替换、被遗忘?越来越多的公司纷纷开源了自己的核心软件资产,让软件成为一种吸纳人才的手段,这些公司的核心竞争力越来越不在于软件本身。

软件生来便是短命的,越来越容易构造,就会越来越快的被替换和淘汰,也不会有太多公司以软件作为核心竞争力——Software is Worthless,即使不是现在,也就在不远的将来。作为软件的从业者的我们,整天疲于奔命学习新技术的我们,又应当用什么来衡量自我的价值?

3

这一切的意义何在?

好吧,可能这个问题现在还不重要,在软件变的越来越容易构造、生产成本越来越低的时候,我们的工资却在不断攀升,在这样的一个软件人才供需极度不平衡的市场上,散发着软件要吃掉整个世界的信号,也许幸福的日子还能持续很长一段时间。可惜幸福与工资并没有太大的关联关系,所以历史也并未在此终结。

回顾我自己这些年的技术生涯,所做过的大大小小的项目,几乎都有着各自的悲惨,无论是成功的、失败的,都谈不上令人满意。所做过的技术决策,随着技术的革新,无一例外都是错误,若是以结果来衡量软件开发本身,一定是“人终有一死”。

然而我的感觉却没那么糟,因为我更相信自己能够在新的环境下,更好的认清楚自己要解决问题,更好的搞清楚约束是什么,更好的保持开放心态、同时谨慎前行。除此之外,我却找不到任何一个与技术相关的词汇来描述自己的收获。

软件的本质是知识工作,而软件开发的过程,就是学习与成长的过程,过程的重要性是要远大于结果的。我们在尽力打造更好软件的同时,也打造了更好的自己。

4

思绪渐渐飘到了3年前

在我对自己的技术生涯感到迷茫的时候,一位在硅谷干了二十多年,在公司干了一圈管理又回到技术岗位的同事对我说:“写程序之于我,就好像是空气和水一样不可或缺,我觉得你应该和我是一样的”,面对这句话的时候,当时的我无法回应。然而在脱离技术岗位1年多,又重新开始做技术的今天,我却想回到那个时间点,回答说“是的,我也是一样。”

除了意识到自己对编程如此热爱之外,还体会到这个比喻中蕴含的更深刻的含义。我们应当如何去衡量水的价值?我们又如何去衡量空气的价值?我们如何去衡量软件的价值?衡量知识的价值?衡量自我的价值?

今天,软件就如同空气和水,覆盖着我们生活的方方面面,变成了我们无法缺少的东西。当这个世界上,水需要去买,也许在某种程度上说,空气也需要去买的时候,难道不能引起你的反思,反思这个世界是哪里出了问题?这一切,都让我想起了互联网、黑客、开源精神,还有 Aaron Swartz……

在我们打造更好软件的同时,打造更好自己的同时,也许还有一个更远的远方在召唤着我们。


本文分享自微信公众号 - 思特沃克(ThoughtWorks),作者:于晓强

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2016-11-15

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 开源软件那么多,我们该如何选择?|洞见

    当我们说起开源软件的时候,想必大家都有丰富的使用经历,小到Node.js的一个组件库,大到一套办公软件如LibreOffice,再如Linux操作系统,可以说无...

    ThoughtWorks
  • TW洞见 |建设DevOps能力到底有多重要?典型问题+对症方法

    当软件行业进入互联网时代,市场对软件产品和服务的交付提出了更高的要求:不仅要快速实现需求,而且要快速发布上线,并且必须保证业务可靠、高效运行。为了满足这些要求...

    ThoughtWorks
  • 技术行业的宏观趋势|TW洞见

    于舟(译) ThoughtWorks 我们每半年发布一次技术雷达:它是所有我们认为横跨业界当下和将来的相关重要技术的快照。我们从世界各地召集了约20位最有资历的...

    ThoughtWorks
  • 软件开发商何时介入生产过程?一起跟随程序员看看软件开发全阶段

    大家都知道每一个软件在正式生产运行之前是需要有一定时间的测试的。这个测试的时间阶段是非常关键的,因为经过大量的测试,往往会暴露在开发过程当中的许多软件bug问...

    刘金玉编程
  • 软件危机:定义、起因、历史、机遇

    软件危机(英语:Software Crisis)是早期计算机科学的一个术语,是指在软件开发及维护的过程中所遇到的一系列严重问题,这些问题皆可能导致软件产品的寿命...

    飞奔去旅行
  • 别光盯着SaaS了,咱们还是来聊聊软件吧

    2015年那会儿,资本市场开始有人站出吹“中国SaaS行业的春天来了”。结果5年过去了,发现吹了个寂寞,隆冬都不知道有没有来临,更别提春天在哪里。

    CloudBest
  • 软件正吃掉世界:2016~2020软件开支CAGR为6.9%| 报告

    报告前瞻: 在不同时代下不同的软件交付模式,全球软件行业收益在不断增长。 从2009年起,云计算或软件概念股成功上市的在2014年达到最高点,总值达28.17...

    人称T客
  • 软件将统治机器人世界?

    “首先我们拿下了曼哈顿,下一个目标是柏林。” —Leonard Cohen 在计算机产业发展的早期,硬件占据着绝对的统治地位。 我的哥哥那个现在还放在车库里...

    机器人网
  • 和西安创业型软件公司侃侃机遇与出路的问题

    在西安软件互联网圈子内,你会发现存在着很多创业型软件公司在苦苦地经营着,有的不断壮大有的也在不断衰弱。但是随着中小型企业对软件及信息技术重视程度的提高,西安创业...

    西安弈聪软件公司
  • 一个完整的软件项目开发流程

    软件开发流程步骤:需求分析、概要设计、详细设计、编码、测试、软件交付、验收、维护。 -- 来源于百度百科

    浩Coding

扫码关注云+社区

领取腾讯云代金券