自动写代码工具要颠覆码农?(转)

摘要 : 人类总是会对自己的未来充满了焦虑,在我们对未来心存怀疑的时候,任何一则“消极”一点的消息都能让我们更加否认自己的未来,这一心理近日在对程序员前景心存质疑的人们身上,非常明显。

人类总是会对自己的未来充满了焦虑,在我们对未来心存怀疑的时候,任何一则“消极”一点的消息都能让我们更加否认自己的未来,这一心理近日在对程序员前景心存质疑的人们身上,非常明显。

日前,据网易科技报道:美国莱斯大学表示,作为五角大楼的疯狂科学部门,美国国防部先进研究计划署(DARPA)对代号为PLINY的自动填写编码项目投资了1100万美元,这一项目的研究人员期望在收集到大量的开源代码编入索引之后,可以预测编码人员将输入的代码。

该项目如果被顺利完成,它或将为那些找不到合格程序员参与研究日益复杂的软件项目的公司带来福音。根据高考期间的报道,计算机专业是我国2014年高考志愿填报最多的专业。由此一来,那些孩子学习计算机专业,有可能走上程序员道路的家长们,以及本身对程序员未来心存质疑的人们看到这一新闻之后更加焦虑,仿佛自动写代码的工具让大量的程序员下岗的事情已经板上钉钉。但事实真是如此吗?

码农是程序员吗?码农与真正程序员的区别

根据百度百科释义,码农是一个依靠写代码为生的群体,表现在:低收入,工作时间长,这种职位只能强化职业者在单方面的技术领域技能。如果按照从业者们将自己自嘲为码农的表现,那么码农的程序员分级中理应只属于初级程序员,是属于依靠复制粘贴将各类代码链接的IT从业者。

这个群体的数量有多少呢?大学计算机相关专业的同学们、大中专软件专业学习者、毕业不久的程序员、广大编程初级爱好者。这一群体庞大的数量,让码农很难在IT世界中拥有不可替代的价值。

按照笔者曾经的java老师的说法,牛逼的程序员能够依靠经验和其逻辑,设计出高效地算法,更好的解决问题。对于真正的程序员(非初级程序员,也即码农)而言,他们不仅是枚资深的码农,还熟悉与客户沟通的技巧,在帮助用户解决问题的时候了解用户的需求,进而迭代产品;他们可以深谙获取用户需求的技巧,也懂得市场分析、技术执行分析、价值分析估算项目的风险;他们能独立完成项目使用文档的能力,甚至都可以独立完成一个项目。他们与纯粹的码农有一个非常显著的差异:码农靠体力为生,真正的程序员不仅体力行,其也靠脑力,靠思维逻辑上的突破、靠团队管理赢得个人魅力。

自动写代码颠覆的是码农 而不是程序员

从区别中,我们不难发现:真正的程序员与码农相比最大的区别就在于:真正的程序员不是完完全全的技术工人,其除却技术高超之外,其思维逻辑上的价值,让其不可替代性比码农强多了。

自动写代码工具,这对于大量的程序员们来说可能是福音,但对于单纯的码农而言,带来的却是毁灭。微软在其发展中,对IT编程领域做出的最大贡献就在于制作了很多便捷的编程开发软件或构建了非常省事省力的开发环境,其中不乏有大名鼎鼎的Visual Studio和SQL server。

以笔者在学习C#之时常用的Visual Studio为例,无论你是选择c/c++还是其他的一些编程语言,在Visual Studio的语言库中已经存在某一编程语言的情况下,我们通过输入代码的前几位英文字母,就能快速地检索出我们想要的代码。因此,其实在目前的编程环境中,大量人性化的编程工具都已经初步实现了主流编程语言语法的检索,无论是美国政府的PLINY,还是微软正在利用去年发布的插件Bing开发助理,他们想要做的事情,各大研究机构或许已经研究多时的。

虽然这样的工具要实现准确预测编码人员将输入的代码,检查语法错误与漏洞存在一定的难度,但这样的工具的确有实现的可能,也会给人们更高效率地编程带来很大的帮助。由此一来,备受冲击的便是码农的。

一旦这样的工具真正成型,这些工具会让原本需要多位码农分功能块而执行的代码,由一个码农也可以完成,在这个过程中,原本可能一家企业能够养活5名码农,最后只会有2名码农幸存。由于目前码农们所做的事情与真正的程序员相比,并无太大的技术含量,其被写代码工具颠覆的可能性非常之大。

但在程序员的发展历程中,大家几乎都是从码农走过来的。自动写代码工具会淘汰大量在码农期间无法加强自己学习能力,加强自己不可替代价值的初级程序员,也就是我们所说的码农。因为自动写工具出行的情况会让初级程序员们感受到市场的残酷性,在激烈的竞争中会淘汰很多困难并不适合并不乐意往程序员更高层次发展的人,也会激励初级程序员不断学习,从而提升程序员整体的质量水平。

因此,在自动写代码工具颠覆、淘汰掉一批初级程序员之后,其也会为提升程序员整体的质量做出巨大贡献,对程序员未来的发展有推动作用。学习能力强是高级的程序员或者优秀的人才都具备的因素,而对于用户需求、市场的分析能力;对项目代码的逻辑思维掌握;能够舍弃个人英雄主义,以团队以项目为主;敢于创新敢于思考敢于学习也都是高级程序员们不可替代的一些地方。

科技的发展,往往是能有工具替代人类的体力活,而关于思维思想的工作,暂时或许并未在这些神奇工具颠覆的范畴内。在自动写代码工具面前,无论是码农还是真正的程序员,其实更多地应该是勉励自己不断学习,不断进步,而不应该在末日还没有来临就对自己的未来堪忧。人类是世界上最高级的动物,大脑所具备的思维能力就是其能够成为最高级的关键,在编程领域,或许只要人类肯学习,愿意提升自己的思维能力,形成自己不可替代的价值还是有机会的。自动写代码颠覆的是码农而不是真正的程序员!(这里指学习能力不够强、思维能力不够强的初级程序员)

时间: 2024-10-29 19:09:47

自动写代码工具要颠覆码农?(转)的相关文章

带你开发一款给Apk中自动注入代码工具icodetools(开凿篇)

一.前言 从这篇开始咋们开始一个全新的静态方式逆向工具icodetools的实现过程,这个也是我自己第一次写的个人觉得比较有用的小工具,特别是在静态方式逆向apk找关键点的时候,后续会分为三篇来详细介绍这个工具实现: 第一篇:开凿篇,简单介绍实现原理以及简单的初次方案实现简单的apk注入代码功能 第二篇:填坑篇,这一篇是在前一篇的基础上对工具的优化,可以应对市面上大部分的apk代码注入功能实现 第三篇:生产篇,这一篇是在前两篇的基础上利用这个工具来实际操刀如何进行快速定位应用的关键方法功能 还记

代码注释的艺术--码农必会

1. Comment each level(每个级别的注释有统一的风格) 注释每一个代码块,并且在各个级别的代码块上,要使用统一的注释方法.例如: 对于类,应包含简单的描述.作者以及最近的更改日期 对于方法,应包含目的的描述.功能.参数以及返回值 使用统一的注释规则对于一个团队是非常重要的.当然,更加推荐使用注释的约定和工具(例如,C#的XML或Java的Javadoc),它们会是注释变得更加容易. 2. Use paragraph comments(对段落注释) 将代码块分成若干完成独立功能的

带你开发一款给Apk中自动注入代码工具icodetools(完善篇)

一.前言 在前面已经介绍完了 自动给apk中注入日志代码工具icodetools原理了,在那里我们曾经说过其实离真正的可使用价值有点距离,本篇就对这个工具进行一些优化,让其真正意义上开始能工作量产.当时在前面一篇文章中说到遗留的三个主要问题: 第一个问题:对每个类中都添加一个静态打印方法堆栈信息的方法,这样会导致有些应用的dex过大,方法数超了问题 第二个问题:在从输入一个apk到给每个类中的每个方法添加日志代码然后在签名输出最终的apk,这个过程其实很多步,但是我们之前都是手动的去进行操作,非

android黑科技系列——自动注入代码工具icodetools

一.前言 在前面已经介绍完了 自动给apk中注入日志代码工具icodetools原理了,在那里我们曾经说过其实离真正的可使用价值有点距离,本篇就对这个工具进行一些优化,让其真正意义上开始能工作量产.当时在前面一篇文章中说到遗留的三个主要问题: 第一个问题:对每个类中都添加一个静态打印方法堆栈信息的方法,这样会导致有些应用的dex过大,方法数超了问题 第二个问题:在从输入一个apk到给每个类中的每个方法添加日志代码然后在签名输出最终的apk,这个过程其实很多步,但是我们之前都是手动的去进行操作,非

SpringBoot与Mybatis整合(包含generate自动生成代码工具,数据库表一对一,一对多,关联关系中间表的查询)

链接:https://blog.csdn.net/YonJarLuo/article/details/81187239 自动生成工具只是生成很单纯的表,复杂的一对多,多对多要自己在xml中写! 添加mybatis的generator插件: 链接:https://blog.csdn.net/readyyy/article/details/85935365 原文地址:https://www.cnblogs.com/wskb/p/11582711.html

C/C++字节特征码转换自动格式化文本工具算法源码

#define _CRT_SECURE_NO_WARNINGS #include <Windows.h> #include <stdio.h> //BYTE m_code[] = { 0x8B,0x14,0x8D,0xC8,0xF1,0x69,0x00,0x52 }; //12 34 56 78 int main() { SetConsoleTitleA("CheatEngine / Ollydbg 字节数组转换添加0xXX工具 Made By Xiaodi")

mybatis-generator自动生成代码工具

1.在项目的配置文件中放入配置文件mybatis-generator-config.xml   根据情况修改下配置 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://myb

开发写代码工具Zend Studio

有期限限制.可以删文件,保持一直一个月. ZendStudio-12.0.0-win32.win32.x86.msi

自动生成代码工具

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"> <