值得程序员一看的 8 个冷门小知识

想要成为一名成功的程序员,我们除了了解不同编程语言的设计思路,也应当了解编程的发展历史,从而判断未来的编程技术将走向何方。接下就为大家普及下计算机发展历程中的8个冷门小知识!

1.第一台电脑为蒸汽驱动

作为公认的编程之父,Charles Babbage发明了世界上首批计算机之一。他将这台新设备称为分析引擎。其体积超过一栋房屋,由六台蒸汽机驱动并使用打孔卡进行编程。分析引擎有四大主要组成部分:1.转盘——相当于现代计算机中的CPU; 2.存储——相当于现代计算机中的内存与存储介质; 3.读取器——相当于输入机制; 4.打印机——用于实现信息输出。

2.电脑病毒的设计初衷并非是造成损害

史上第一款电脑病毒,竟然是由防御技术专家Fred Cohen亲手设计出来的。他创造电脑病毒的目的仅仅是为了证明程序对电脑感染的可行性,从未希望借此对电脑造成任何危害。但这款程序却能够对电脑进行感染,并且能通过软盘等移动介质在不同计算机之间进行传播,因而命名为病毒。后来,他又创造出一种主动式电脑病毒,主要目的是帮助电脑用户找到未受感染可执行文件。

3.第一名程序员是位女性

也许最令人难以置信的是,历史上第一名程序员是位女性。她的名字是Ada Lovelace。在1843年,这位英国数学家Ada Lovelace,翻译了意大利工程师Luigi Menabreaw撰写的分析引擎文章。在翻译过程中,她把自己的理解都批注到每篇文章下,而这举动加快了计算机编程技术的发展。在这之后,她又设计出了第一种能够利用分析引擎计算伯努利数的算法,这也是第一个用电脑编写的算法。

4.第一款数字化电脑游戏从未带来任何利润回报

现在的视频游戏已经成为了最受瞩目的程序开发成果,然而历史上第一款数字计算机游戏则遭遇巨大失败。第一个电脑游戏出现于1962年,由麻省理工学院的计算机程序员Steve Russell与其团队一同编写,这款名为《太空大战》的游戏耗费了他们近200个小时。该游戏允许两名玩家分别控制两艘飞船,目标是击中并摧毁对方飞船,并且玩家还需要躲避屏幕中代表星球的小白点。如果玩家撞上这些星球,则游戏失败。虽然Russell和他的团队从未在这个游戏说的任何收益,但必须承认如果没有这一突破我们可能永远不会拥有如今蓬勃发展的视频游戏产业。

5.图像处理算法中使用最广的一幅图片来自《花花公子》杂志

40年来,这幅被应用为图像处理方案中的泛用性标准测试素材,还被程序员们亲切称为Lena的图片。但大多数人都不知道,它是来自《花花公子》杂志1972年11月刊的插页。

  1. GIT中保证文件完整性的SHA-1值

Linux kernel开创者和Git的开发者——Linus说,Git使用了SHA-1并非是为了安全性,而是为了数据的完整性;它可以保证,在很多年后,你重新checkout某个commit时,一定是它多年前的当时的状态,完全一摸一样,完全值得信任。

7.程序中bug的名称源自“虫子”

在程序中bug一词用于技术错误。这一术语最初由爱迪生在1878年提出的,但当时并没有流行起来。在这的几年之后,美国上将Grace Hopper在她的日志本中,写下了她在Mark II电脑上发现的一项bug。不过实际上,她说的真的是“虫子”问题,因为一只蛾子被困在电脑的继电器中,导致电脑的操作无法正常运行。如图片所见,她写道“这是我在电脑上发现的第一个bug”。

  1. 丰富多彩的计算机编程世界

如果将计算机编程世界看作一个国家,那么其中涉及的语言种类必然冠绝群伦。目前已知的编程语言共有698种,远远超过任何以语言多样性著称的国家。

更重要的是,程序员们应当了解编程技术的发展历程以及各大里程碑式创新成果背后的贡献者。另外,历史文化能够激发人们对于所从事行业的热爱之情,从而更为积极地投身于工作当中。

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

时间: 2024-08-01 14:27:39

值得程序员一看的 8 个冷门小知识的相关文章

成为Java顶尖程序员 ,看这11本书就够了

"学习的最好途径就是看书",这是我自己学习并且小有了一定的积累之后的第一体会.个人认为看书有两点好处: 1.能出版出来的书一定是经过反复的思考.雕琢和审核的,因此从专业性的角度来说,一本好书的价值远超其他资料 2.对着书上的代码自己敲的时候方便 "看完书之后再次提升自我的最好途径是看一些相关的好博文",我个人认为这是学习的第二步,因为一本书往往有好几百页,好的博文是自己看书学习之后的一些总结和提炼,对于梳理学习的内容很有好处,当然这里不是说自己的学习方法,就不再扯下

从程序员跳槽看职业规划

从程序员跳槽看职业规划 老帅 http://blog.csdn.net/shuaihj 大学毕业后,走上程序猿的职业道路,可能的职业道路有: 程序员->高级程序员->项目经理->研发经理->研发总监->研发副总->-- 程序员->高级程序员->系统架构师->技术经理->技术总监->研发副总->-- 程序员->高级程序员->停滞->-- 程序员->程序员->程序员->停滞->-- 幸运的程序员,

周鸿祎:很多程序员一看就知道不会创业

程序员创业的特别之处 关于程序员创业,我之所以愿意谈我的观点,是因为我是程序员出身,也是从小公司做起来的,我自认为对待很多程序员个人包括共享软件作者和一些小网站还是很好的.我希望分享一些经验和体会. 首先,我想说的是聪明人不一定能成功,很多程序员很聪明,但我一看就知道他们不会成功. 因为我看到了一些问题,而且现在太多程序员存在很多误解.因此,我希望把我的观点告诉程序员.或许有一些程序员能够清醒,某个人可能因为我的某一句话有了感觉,对他以后的成长产生了帮助,这就足够了. 要知道,程序员总是以为自己

成为Java顶尖程序员 ,看这10本书就够了

  岁末年初,想储备一些优质书籍的看这里.近期发现并收藏了这几本书,一方面作为自己的书单,另一方面也想推荐给大家. "学习的最好途径就是看书",这是我自己学习并且小有了一定的积累之后的第一体会.个人认为看书有两点好处:   1.能出版出来的书一定是经过反复的思考.雕琢和审核的,因此从专业性的角度来说,一本好书的价值远超其他资料   2.对着书上的代码自己敲的时候方便   "看完书之后再次提升自我的最好途径是看一些相关的好博文",我个人认为这是学习的第二步,因为一本书

Java程序员必看电影:Java 4-ever

如果你是Java程序员或者说你有意往Java方面发展,这么这部由JavaZone制作的恶搞微软.net的小电影一定值得你去看一看. 影片通过叛逆小伙的成长历程描述了在微软帝国下Java所给人们带来的新思维和新方向,拍摄的非常具备专业水准,强烈推荐观看. 如果你是Java程序员或者说你有意往Java方面发展,这么这部由JavaZone制作的恶搞微软.net的小电影一定值得你去看一看. 影片通过叛逆小伙的成长历程描述了在微软帝国下Java所给人们带来的新思维和新方向,拍摄的非常具备专业水准,强烈推荐

程序员必看 c++笔试题汇总

本文通过对程序员笔试过程的总结,对程序员c++笔试题进行了汇总.希望能与大家共同分享.下面是一些常见题型: 1.求下面函数的返回值(微软) {   int countx = 0;   while(x)   {   countx ++;   x = x&(x-1);   }   return countx;   }  假定x = 9999. 答案:8 思路:将x转化为2进制,看含有的1的个数. 2. 什么是"引用"?申明和使用"引用"要注意哪些问题? 答:引用

不想早死的程序员们看过来!

5种原因加速你的衰老 小序: 早就听人说,"三十岁前你找病,三十岁后病找你".虽然大多数时候我都认为那是心理暗示的积累作用,但的确感觉在熬夜方面干不过比我年轻几岁的兄弟们了--其实也好解释,人越大越懒:p 刚才宅男在网上闲逛,发现一篇文章,文中提到五种生活方式会加速人的衰老,一开始以为是写给那些抽烟喝酒的人看的,结果看完之后感觉背上凉嗖嗖的--五种我都占全了,不,应该说是大多数程序员都占全了.赶紧转帖过来,提醒大家注意身体. 兄弟们,钱再多.地位再高,死了,都没了!我们的身体是花了数十

深圳的.NET程序员这边看

问题描述 我公司有个商城(珠宝行业)的项目,想程序外包(前台后台整合,以及后台开发).1.外包价格6000人民币:2.最好在深圳的,因为需要面谈沟通3.类似ECSHOP的网上独立商店后台那样.有意者请加QQ:415467753或者发邮件:415467753@qq.com(加QQ时请注明.net程序员,谢谢)加QQ后,再进一步面谈.由于时间紧迫,请有能力,有时间,有意者快快行动. 解决方案 解决方案二:好便宜解决方案三:引用1楼xhan2000的回复: 好便宜 解决方案四:引用1楼xhan2000

熬夜并不值得程序员炫耀

放弃睡眠就像是高利贷借款.没错,看上去你是得到了额外的时间,但你想得太乐观了,你知道代价是什么吗?放高利贷的会回来讨债,到时如果你不能支付的话,他就会夺走你的创造力和你的士气. 现在我们偶尔会借用睡眠时间做一些事情,如果你完全了解其后果,并且不让它成为一种习惯的话就没关系.几天前我熬夜了.我们发布更新到 Basecamp的单点登录系统,这让我一直工作到了凌晨1:30.如果不是因为我接下来没有好好休息,早上5点就醒来帮助解决出现的问题的话,事情也不 会变得这样糟糕.第二天我所要付出的代价既典型又高