程序员究竟是做什么的?

一千个程序员,一千个面孔.

程序员是写代码的,无论水平高定,都是写代码的. 不需要为某种职业赋予特别的含义,剥离掉自我欣赏的陶醉,故意编排的搞笑段子,刻板固化的印象,外行不着边际的谬传. 程序员就是写代码的,很朴素的工种.

程序员的差异性很大:

有成功的企业家, 也有普通的打工人;

有儒雅随和的, 也有暴躁较真的;

有穿着得体精致的, 也有不修边幅的;

有爱好郊游的, 也有宅在家里的;

有喜欢二次元的, 也有喜欢古典文学的;

有学历高,也有学历低的;

玲珑剔透的,有呆萌呆萌的;

……

程序员的工作,就是将人类的想法,转化为机器可识别的语言,使用编程语言,将机器的操作步骤编排成程序,让机器执行. 所以程序员是代人类和机器沟通的中间人.

写代码是一种技艺,掺杂少量工艺,最终从技艺走向工艺. 技术的门槛会越来越低,过去看似很厉害的技术,逐渐走向下沉技术,越来越多地被更多地人掌握.

写代码是在既定的约束条件下解决问题,这也是技术类问题都有的特点. 这种约束条件很多,比如能耗,存储故障率,擦出次数等等. 改变其中一个条件,产生的效果都是颠覆的,举个小例子,假如没有多级存储体系,用超大容量的SRAM做存储,供电是既绝对可靠又不用担心能耗问题的,CPU和存储器之间Uniform Memory Access, 那么程序员在考虑多核优化的时候,可以简单地写程序,不要话费过多的心思.而这种颠覆只是很小的颠覆, 未来完全可能出现更大的颠覆, 致使程序员这一工种的消失,但是无论如何,程序员可能是技术类工种中,最后消失的工种. 理性看待程序员职业,应该将其看成是历史范畴,而非永恒范畴.

小说诗云中,神级文明用太阳系的所有基本粒子(原文好像是原子)做存储器保存暴力穷举汉语可以写出的所有诗歌, 然后从中检索出超越唐诗的作品. 解决问题最直截了当的思路应该是:

1. 第一步证明了存在性.

2. 第二步构造出其中的几个解法.

3. 第三步给出一个方法,可以构造出所有可行的解法.

4. 第四步,从全体可行解中找出最优解.

如果把1~3看成是穷举,4是检索. 那么我们所有计算是否都可以看成是穷举+检索呢? 这种方法简单,朴素,容易理解,容易解释. 这才是技术的终极形式. 很多复杂的技术,不是体现了技术的高妙,反而表现出技术的发展的不充分.

所有今天的一切在未来都是渣渣. 对技术的记忆都是技术史,思想越初始越好,技术越新越好. 总之,一切知识只是常识的冗余.

原创文章,作者:afeng135,如若转载,请注明出处:https://www.wegosn.com/3316.html

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注