当机器人取代程序员写代码,会发生什么呢?

编者按:在过去的十年时间里,软件开发行业已经发生了非常大的变化。过去,程序员需要在大学或工作中花费好几年时间才能学习掌握一些编程知识,熟悉了解一些昂贵的服务器性能,而现在,只需几周时间就能搞定一项网页开发编程语言了。基于人工智能生成的代码,为整个行业带来了颠覆创新,也让我们处在了下一代范式快速转型中,身处在这个拐点上,我们不得不说,未来网页开发很可能会不复存在,以后甚至都不需要任何编程劳动力了。

“计算机想要在围棋上击败人类,可能还要等100年!”——《纽约时报》,1997年

“围棋大师被谷歌计算机程序击败!”——《纽约时报》,2016年

下面,就让我们来看看当机器人取代程序员写代码,会带来哪些范式转型吧。

转型一:WordPress

WordPress是在 2003 年 5 月 27 日发布的,在它丰富的插件和网站主题内容支持下,很多没有技术背景的创业者无需编写代码,就能推出自己的网站,WordPress 平台也因此很快便在全世界风靡起来。虽然这个平台存在一定的局限性,但是它依然占据了全部互联网网页开发 26.5% 的市场份额,那么剩下的 73.5% 的市场份额会是什么样呢?让我们再进入转型二来做进一步了解。

转型二:开源代码、Node 和框架

Node 一开始曾被广泛认为是一种玩具编程语言,但是它已经快速接管了网页开发,并且培育出了一个异常庞大的开源社区。对于那些还不太熟悉Node 的人,先简单介绍一下:Node.js是一个基于 Chrome JavaScript 运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。Node.js 使用事件驱动, 非阻塞I/O 模型而得以轻量和高效,非常适合在分布式设备上运行数据密集型的实时应用。Node 最厉害的地方,就是让那些只开发客户端代码(前端网页开发)的程序员,可以无需切换编程语言就能编写后端代码。

不仅如此,Node 已经构建了一个令人难以置信的庞大社区,很多人都在为开源做贡献。现在,Node 基础设施和开源软件包都已经非常强大了,允许开发人员不仅仅去解决他们自己的问题,而且能够构建出一套为整个社区解决问题的方法。如今,使用 Node 开发软件产品就像是拼乐高积木,你只需花些时间把每块“积木”连接起来就可以了。

转型三:只需要一个应用程序接口,就能搞定 SaaS、BaaS、以及其他框架

你新开发的照片 App 需要面部识别功能吗?如果你想要解读人们在照片中的表情,又该怎么办?所有这些问题都可以靠一个应用程序接口搞定,事实上,如今你能想到的一切东西,都有一个应用程序接口(出于所有集中性非技术目的,应用程序接口就像是另一种乐高积木)。

那么,这具体意味着什么呢?现在,任何一款软件都能够通过开源工具、或是带有某些特定应用功能的应用程序接口开发出来。如果你给某位网页开发人员两周时间,告诉他们克隆市场上某款主流的消费者产品,他们至少可以使用相关工具,快速制作出一款基本版出来。

当然啦,开发一款应用程序和创立一家公司是两回事儿,但有一件事不可否认的是,现在独立程序员的生产力已经变得十分惊人了!当然,我们并不是说过去的程序员不行,毕竟现在的程序员也是站在巨人的肩膀上,才能做出一些成绩。

我们现在处在哪个阶段?

你需要一个网站?根本无需编写代码;你又需要一款高度定制的网页应用,来为用户提供一些专属功能或服务?Node 程序包提供的“玩具编程语言”就能轻松搞定。你还需要一款移动 App?写一个 JavaScript,然后就能从代码库里获得一款安卓和 iOS 原生移动应用。需要在你的应用里加入先进的机器学习技术?有应用程序接口来帮你搞定。你的公司找不到程序员?给 bootcamp 打个电话,他们有足够的编程达人。这一切是不是听上去都很不错?但实际上,我们能做的也只有这些了。如今程序员所接受的培训内容,其实都是最终能被机器人所取代的,一些强大的自动化工具完全可以智能生成代码。

未来,利用开源软件包、强大的开发工具和混合框架,企业只需招聘一些毕业生,短短 4个月时间就能学会如何编程,这在今天是难以想象的,只要有了商业想法,任何人都能轻松打造出一款高性能、可扩展且可维护的应用程序。

目前,已经有公司(比如 codefree.co)开始提供相关服务,允许没有编程背景的人无需写任何代码就能开发出一款个性化的网页应用;还有公司利用机器学习技术帮助企业开发、设计东西。尽管现阶段依然存在一些定制化问题,但相信随着时间的推移,各种问题都会逐步解决。

我们要到什么时候,才能看到人人都会开发程序?

显然,我们并不是说要让每个人都能轻松开发程序,如果说有 1000 个程序员使用开源程序包(乐高模块),总是要有一个人去开发源程序。我们需要教授人们如何构建乐高模块,需要更多工程师,而不是那些“打补丁”的人。所以从这个角度来看,如果你只想招聘一些毕业生,花 4 个月时间是根本无法做到的,别说 4 个月,可能 4 年时间都难以实现。

因此,我们需要鼓励更多程序员提升自己的技能水平,深入学习人工智能、虚拟现实、增强现实、计算机视觉、以及机器学习等技术。这些都是未来程序员所必备的技能,但是今天已经起步了,凡是不关注这些技术的人或企业,几年后可能会就要花更多成本去学习。

网页饱和了,移动也饱和了,你能想到的商业想法,市场上早就已经有三、四款同类产品了。所以,现在摆在我们面前的,是要去尝试解决更难的问题,掌握更强大的技能。

现在我们该怎么做?

教育是唯一的“出路”,相对于快速的市场发展速度,传统教育机构其实已经非常滞后了。如果你是一个企业老板,可能现在得想想如何去培训你手下的技术人员,在这方面,谷歌已经开始这么做了。假设你是一个网页开发人员,如果还是把重心放在 JavaScript、Ruby on Rails、或是 PHP 这些编程语言上,可能现在需要做些调整了。尝试学习机器学习或计算机视觉技术,虽然可能目前不会立即给你带来丰厚的收益,但至少能确保未来你不会被淘汰。

文章转载自 开源中国社区 [http://www.oschina.net]

时间: 2024-11-01 05:08:59

当机器人取代程序员写代码,会发生什么呢?的相关文章

程序员写代码时的各种内心戏 ……

01.读大神写的代码的时候:这是什么----我X,太牛X了. 读刚来的程序员写的代码的时候:这是什么----我X,太傻X了. 02.读大神写的代码的时候 当读其他程序员写的代码的时候 03.当别人写的bug,让自己发现的时候: 我操这个大撒比写出这么个烂代码 幸亏有哥这样神一样的存在才发现 哥真是救世主 没有哥这个公司分分钟要倒闭. 当自己写的bug,被自己发现的时候: 卧槽,隐藏的很深啊! 哥就是犀利,自己开发自己测试, 看测试那帮撒逼什么也不会干,这么明显的bug都测不出来, 真是一群废物!

程序员写代码时应该反复问自己的 10 个问题

你想成为一名优秀的程序员吗? 那么,现在是时候放下<24小时学会xxx语言v8.3>超级骗子书,相反,你应当养成每天反问自己以下10个问题的习惯. 你的代码中是否有一种模式存在? 找寻模式中的可行与不可行将发现其中看似无关的想法或基本原则.要对工作达到深入的理解,你必须养成反问自己"是否有一种模式存在?"的习惯. 它不仅仅适用于你的代码.是否有适应各类型商业变化的模式吗?是否有一种适用于技术发展的模式?你有没有看到同类型的错误如雨后春笋般冒出来? 所谓理解就是要理解模式 -

程序员写代码时应该反复问自己的10个问题

问题描述 你想成为一名优秀的程序员吗?那么,现在是时候放下<24小时学会xxx语言>超级骗子书,相反,你应当养成每天反问自己以下10个问题的习惯.你的代码中是否有一种模式存在?找寻模式中的可行与不可行将发现其中看似无关的想法或基本原则.要对工作达到深入的理解,你必须养成反问自己"是否有一种模式存在?"的习惯.它不仅仅适用于你的代码.是否有适应各类型商业变化的模式吗?是否有一种适用于技术发展的模式?你有没有看到同类型的错误如雨后春笋般冒出来?所谓理解就是要理解模式-以赛亚·伯

优秀程序员写代码的七个优秀习惯

伟大的程序员都有三个优点:懒惰.急躁和傲慢.为什么这么说呢?懒惰会促使他们去写一些省事儿的程序来辅助他们或别人更好的工作,这样他们就无需再 去回答一些不想回答的问题.没耐心会激励他们去写一些程序,不等你提出就主动满足你的需求.傲慢会促使他们写出可靠无误的代码,因为他们不想受到批评和指 责.但是,伟大的程序员也并不总是高效的,那些每天都能将自己的工作完成的很好的开发者,比那些偶尔编码到令人眩晕的高度的程序员要更高效.为了提高你的 就业能力,你不需要成为一个伟大的开发者,而是一个高效的开发者.下面的

给优秀程序员写代码的五个建议

成为一个优秀的程序员其实就是和成为其他优秀的专业人员一样,需要尽可能多的去做一些有质量的工作.而有句很流行的话就可以用来总结:做,正确的做事,要立马就做.(Do it. Do it right. Do it right now) 1. 将你一天要做的事情列成一个清单 完成复杂活动(activity)的最好方法就是要将他们拆分成简单的各项活动.而在每天早上,就把你一天要完成的活动进行拆分,然后你要制定一个相应的日程安排表,而这样就能够帮助你: 去更好的理解这个活动. 你每天都会有一个集中的目标.

当一个程序员写不出代码了,该怎么办?

你已经对着电脑n个小时了.不知道该写什么代码,或者一种摔键盘的冲动正在你的胸中酝酿. 咖啡一杯接着一杯.不敢再喝了,因为搞不好要有副作用了,心跳加速,身体不由自主地颤抖,出冷汗,但还是无法产出任何代码. 所有重新发现编程趣味的努力都徒劳无功,因为你的最后一点能量都用来驱逐大脑中正在攻城略地的话: "我写不出代码了!" 编程的本质是棘手 即使是最优秀的程序员也会遭遇无法解决的软件工程问题.碰到这样的问题,并不一定意味着你缺乏技能或知识. 编程不是一项容易的工作,我们可以通过采取非正统的方

Editra v0.6.20发布 适合程序员的代码编辑器

作为一个程序员,选择一款适合自己的代码编辑器,总是能够在提升效率的同时,达到事半功倍的效果.正所谓,工欲善其事,必先利其器是也.我今天介绍的 Editra,就是一款很不错的程序员编辑器.也许你会说,Linux 中已经有很多好用的编辑器了,像 Vim.Emacs.Jed.Geany 等等.但我仍然要推荐你试一试 Editra,毕竟要想知道梨子的味道,你得亲口尝一尝,不是吗? 既然 Editra 是一款专注于代码编辑的软件,那么它自然包含一些特别为写代码而准备的特性,例如: ·语法高亮显示,支持 6

程序员与代码的搞笑日常

消沉的程序员系列   本来是愉快的蹲个坑,却不自觉的陷入编码的思考. -- GHLandy 消沉的程序员 1   很有意思吧,很多看到这样的漫画对话的程序员,应该感觉似曾相识吧.Bug 出现了? 消沉的程序员 2   有点疑惑,有好像有点眉目,好像是感觉到哪里错了,是不是要重构. 消沉的程序员 3   哎,终于发现错误了,感觉有点可笑,自己居然犯这样的错误,原来是那次急于提交代码造成的. 消沉的程序员 4   是啊,在编程里一生戎马,代码编写无数,各种平台.规范等等,到头来也是满身的错误啊.该是

神歌单:听这些程序员敲代码效率飞起来

纯音乐就是作曲初衷就不包含填词的音乐,这种音乐模式完全以纯粹优美的音乐来叙述表达作者的情感,所以一般简称做纯音乐.虽然它没有歌词,但却以自己优美的曲调同样实现了完美.正因为如此,纯音乐的作曲要求十分的高,要作出一曲优秀的纯音乐除了必需的大量灵感来支持作曲外,还需要作者不单在乐理上,更是在生活体验,人格和精神上有很深的水准造诣. 对于工作中的程序员来说,纯音乐既能培养良好的心情,增进我们的创造力,又不会因为歌词为我们带来分心的困扰,下面就是一张全部由纯音乐组成的歌单,一起来听听看吧. 歌曲列表 0