CPU的后记,程序员的未来之计

渔家傲
塞下秋来风景异,衡阳雁去无留意。四面边声连角起,千嶂里,长烟落日孤城闭。
浊酒一杯家万里,燕然未勒归无计。羌管悠悠霜满地。人不寐,将军白发征夫泪。
作者:良知犹存
转载授权以及围观:欢迎添加微信公众号:Conscience_Remains
1

周日写了一篇CPU的文章,为了它三天看了一本四百多页的技术书,又看了几篇文章和几个小时的视频资料,然后结合自己掌握的知识浓缩到两千字去变成一篇文章,既是整理自己的知识,也是分享给大家。谈不上多好,就是分享给大家而已。
不过巧的是,通过写这篇文章中对计算机历史发展的梳理,我甚至产生了些感慨,一些思考,通过写这篇文章,我重新认识了计算机的历史,芯片发展,编程方式的发展。通过这些历史的进程,我隐约琢磨了一点,自己对未来硬件和程序发展的一些见解。
2

从这篇写的文章中,从开头介绍三极管,再由三极管组合成的电路抽象到逻辑门,再抽象到简单的累加器、锁存器,再抽象到ALU、内存。一层层的封装,意味技术的发展迭代,而对应的编程方式也由从最开始的穿孔卡,再后来用存储器,从编程人员一点点计算机器码,到更加抽象化的编程语言的流行,汇编开始之后,70年代出现C和Smalltalk;80年代有C++、Objectivs-C和Perl;90年代有Python、Ruby和Java;2000开始出现Swift、C#、Go。
从硬件的摩尔定律开始,芯片的晶体管的管数量都翻倍的变化。硬件发生了倍增,软件开发的语言也开始对应的大幅度的脱离底层开发,每一种新的语言都让开发者傻瓜式的配置现有的硬件,而去用大量的时间去开发我们硬件无法达到的地方。我们都学过一篇文章,就是以前有个人发明了国际象棋,国王要给他赏赐。相传古印度的一位国王因为象棋的发明而赏赐象棋的发明者(一说为西萨,一位古印度宰相),此人要求国王根据数米问题的答案赏赐他粮食。国王起初认为他要求的赏赐过少,但是后来仓库管理员发现这个人要求的粮食比国王国库里的粮食多出上千倍。
软硬件的变化,这其中的本质,我感觉可以用几句话来概括,就是通过空间来换时间,释放计算机的计算能力,把开发人员从繁琐的底层解放出来,让我们更多从事逻辑层面。
我是从底层起来,所以平时对一些内存空间的应用比较苛求。但是经过这些知识对我的洗礼,我开始对未来技术的走向有些预测,未来的CPU和编程语言,大概率就是用空间换时间,用大容量的计算去把精简时间。比如现在很热门的算法,芯片公司直接用设计算法电路到芯片里面,大量的开发人员直接进行配置开发就可以,剩下时间去做更多时间的思维模式更智能开发。
甚至现在出来的GPT-3:
生成式预训练变压器3(GPT-3)是一种自动回归 语言模型,使用深度学习生成类似于人的文本。它是由OpenAI创建的GPT-n系列中的第三代语言预测模型,OpenAI是一家位于旧金山的盈利性人工智能研究实验室。GPT-3的完整版本可容纳1,750亿个机器学习参数。GPT-3于2020年5月推出,并于2020年7月进行Beta测试, 是预训练语言表示形式的自然语言处理(NLP)系统趋势的一部分。在发布GPT-3之前,最大的语言模型是2020年2月推出的 Microsoft的Turing NLG,与GPT-3相比,其容量为170亿个参数或不到10%。
GPT-3生成的文本质量很高,以至于很难与人类所写的文本区分开,因为它既有好处,也有风险。31位OpenAI研究人员和工程师介绍了2020年5月28日介绍GPT-3的原始论文。他们在论文中警告了GPT-3的潜在危险,并呼吁进行研究以减轻风险。34 澳大利亚哲学家大卫·查默斯(David Chalmers)将GPT-3描述为“有史以来最有趣,最重要的人工智能系统之一”。
来自维基百科
GPT-3号称是可以让程序员失业的人工智能,一个普通人直接输入一段文字需要,GPT-3就可以给你编一个APP或者做一个前端出来。当然现在使用它费用都比较昂贵。但是未来在摩尔定律加持下,未来还真有可能普通人都使用上,那么那个时候现在80%的程序员都失业了。也许现在的我们听上去感觉离得遥远,但是技术进阶来说五到十年一个变化真的不是吹出来的,就如同我们觉得诺基亚是上个世纪一样遥远,其实智能手机时代才只有十来年而已。
3

总之一个比较深刻的感觉,计算机的发展历程中,包括现在的大数据,好多都是用空间换时间,释放计算机的计算能力,把开发人员从中抽象出来,去做更多的事情。而这个更多的事情是什么,需要大家一起来考虑考虑哈。
其实这些变化可以推广到个人的发展体系中,一样的抽象自己,当自己可以做现在一个本职工作的时候,OK这时候我们还有进阶的部分,当我们可以熟练并且轻松的掌握工作的时候,我们就需要进行傻瓜式的传导,裂变自己,尝试去把自己已经做过的事情去授予其他人,自己再抽象出来,去选择更高阶的事情。
现在已经不是一门技能活一辈子或者传几十代,尤其在程序员类似学习积累成本很小的这些行业,自己学的能够自己用都很困难了,初级还得去抽象自己,去做一些琢磨未来的思考,去做一些考虑未来的事情,拥抱变化,体验这人生吧。
未来可期吗?不敢,但敢想,敢去试试,已经很好了。碎文一篇,还望诸位海涵。
CPU的后记,程序员的未来之计的更多相关文章
- 给各位PHP程序员十点未来的建议
PHP 从诞生到现在已经有20多年历史,从Web时代兴起到移动互联网退潮,互联网领域各种编程语言和技术层出不穷, Node.js . GO . Python 不断地在挑战 PHP 的地位.这些技术的推 ...
- 程序员需要了解的硬核知识之CPU
大家都是程序员,大家都是和计算机打交道的程序员,大家都是和计算机中软件硬件打交道的程序员,大家都是和CPU打交道的程序员,所以,不管你是玩儿硬件的还是做软件的,你的世界都少不了计算机最核心的 - CP ...
- PHP程序员的技术成长规划
按照了解的很多PHP/LNMP程序员的发展轨迹,结合个人经验体会,抽象出很多程序员对未来的迷漫,特别对技术学习的盲目和慌乱,简单梳理了这个每个阶段PHP程序员的技术要求,来帮助很多PHP程序做对照设定 ...
- PHP 程序员的技术成长规划
[导读] 按照了解的很多PHP LNMP程序员的发展轨迹,结合个人经验体会,抽象出很多程序员对未来的迷漫,特别对技术学习的盲目和慌乱,简单梳理了这个每个阶段PHP程序员的技术要求,来帮助很多PHP程序 ...
- 【转载】PHP程序员的技术成长规划
按照了解的很多PHP/LNMP程序员的发展轨迹,结合个人经验体会,抽象出很多程序员对未来的迷漫,特别对技术学习的盲目和慌乱,简单梳理了这个每个阶段PHP程序员的技术要求,来帮助很多PHP程序做对照设定 ...
- PHP程序员的技术成长规划(送给迷茫的你)
按照了解的很多PHP/LNMP程序员的发展轨迹,结合个人经验体会,抽象出很多程序员对未来的迷漫,特别对技术学习的盲目和慌乱,简单梳理了这个每个阶段PHP程序员的技术要求,来帮助很多PHP程序做对照设定 ...
- 【转】PHP程序员的技术成长规划
按照了解的很多PHP/LNMP程序员的发展轨迹,结合个人经验体会,抽象出很多程序员对未来的迷漫,特别对技术学习的盲目和慌乱,简单梳理了这个每个阶段PHP程序员的技术要求,来帮助很多PHP程序做对照设定 ...
- PHP程序员的技术成长规划(转)
按照了解的很多PHP/LNMP程序员的发展轨迹,结合个人经验体会,抽象出很多程序员对未来的迷漫,特别对技术学习的盲目和慌乱,简单梳理了这个每个阶段PHP程序员的技术要求,来帮助很多PHP程序做对照设定 ...
- 2017PHP程序员的进阶之路
2017PHP程序员的进阶之路 又是一年毕业季,可能会有好多毕业生即将进入开发这个圈子,踏上码农这个不归路.根据这些年在开发圈子总结的LNMP程序猿发展轨迹,结合个人经验体会,总结出很多程序员对未来的 ...
随机推荐
- 杭电OJ:1089----1096(c++)(ACM入门第一步:所有的输入输出格式)
1089:输入输出练习的A + B(I) 问题描述 您的任务是计算a + b. 太容易了?!当然!我专门为ACM初学者设计了这个问题. 您一定已经发现某些问题与此标题具有相同的名称,是的,所有这些问题 ...
- Spring Cloud Gateway 跨域 CORS 配置方式实现
网上找了一堆文章全是说这样写无效 globalcors: cors-configurations: '[/**]': allowCredentials: true allowedOriginPatte ...
- LeetCode109 将有序链表转为二叉搜索树
给定一个单链表,其中的元素按升序排序,将其转换为高度平衡的二叉搜索树. 本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1. 示例: 给定的有序链表: [-10 ...
- 剑指offer-查找数组中重复的数字
找出数组中重复的数字. 在一个长度为 n 的数组 nums 里的所有数字都在 0-n-1 的范围内.数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次.请找出数组中任意一个重 ...
- Linux监控工具vmstat命令
当linux服务器的发生告警,我们要查看当前系统的状态值,包括CPU使用率,内存使用情况,虚拟内存交换情况,IO读写情况等. top与vmstat这两个监控工具都满足要求,当然top还可以看到各个进程 ...
- 改进你的c#代码的5个技巧(四)
像每一篇文章一样,我会重复几行.我在我的Core i3 CPU.4GB主内存和Windows 7平台上测试了以下代码.如果你在不同的硬件配置或使用不同的平台,那么你的输出可能会随着我的输出屏幕而变化, ...
- 【MySql】[ERROR] Can't read from messagefile '/usr/share/mysql/english/errmsg.sys'
[root@zhang bin]# ./mysql_install_db --datadir=/usr/local/mysql/mydata/data/ 2018-08-18 03:09:14 [WA ...
- 1.5V升3V芯片和电路图,DC-DC升压IC
1.5V升3V的升压芯片,3V给LED供电,或者单片机模块供电等. PW5200A工作频率为1.4MHZ.轻载时自动PWM/PFM模式切换,提高效率. PW5200A能够提供2.5V和5V之间的可调输 ...
- 好你个C语言,原来还有这么多副面孔!
C语言可以这样比喻,是一门非常强大的内功心法,学会它可以做到一法通万法.这也是它至今不衰的原因.说了这么多C语言的优点,现在来说说它的缺点.C语言最大的优点也是它最大的缺点,拥有强大的力量时应时刻保持 ...
- 解决安装mysql动态库libstdc++.so.6、libc.so.6版本过低问题
初始化mysql报错: ./bin/mysqld: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by ...