作为程序猿必须知道的十条冷知识

作为程序猿必须知道的十条冷知识

咳咳!

一个优秀的程序猿昂!

不仅仅要对自己专业上的知识轻车熟路,还要对一些冷知识有所了解!

这才是一名合格程序猿的标准!

接下来我来为大家普及一下作为程序猿必须知道的十条冷知识!

一,史上第一位程序员是名贵族小姐

在这里插入图片描述

话说这位贵族小姐,她来头不小。是19世纪英国著名诗人拜伦的女儿,她是一名数学家,也是世界上第一位程序员。她的名字是Ada Lovelace。

(由于名字较长,下面简称阿达)

阿达一生做出的成就不少。她设计了巴贝奇分析机上解伯努利方程的一个程序,证明了计算机狂人巴贝奇的分析其可以用于许多问题的求解。

后来她在1843年发表的论文里提到了一个叫循环和子程序的概念,并且她相信以后创作复杂音乐、制图和科学研究是可以通过机器来创作的,这在当时是大胆的预见,但在今天都逐渐成为了现实。

现在看来,阿达首先为计算机拟定的“算法”,以及写作的那份“程序设计流程图”都是极为难得和珍贵的,也是史上第一件计算机程序。

后来据说国防部花了10年时间,把所需软件的全部功能混合在一种计算机语言里,为的是想让它能成为军方数千种电脑的标准。

于是在1981年,为了纪念这位程序员,这种语言被正式命名为ADA(阿达)语言,艾达·洛夫雷斯也被公认为“世界上第一位软件工程师”。

二,程序中的bug的名称源自于"虫子"

在程序中bug一词用于技术错误。这一术语最初由爱迪生在1878年提出的,但当时并没有流行起来。

在这的几年之后,美国上将Grace Hopper在她的日志本中,写下了她在Mark II电脑上发现的一项bug。

不过实际上,她说的真的是“虫子”问题,因为一只蛾子被困在电脑的继电器中,导致电脑的操作无法正常运行。

如图片所见,她写道“这是我在电脑上发现的第一个bug”。

在这里插入图片描述

三,W3C

在这里插入图片描述

W3C 是什么?

  • W3C 指万维网联盟(World Wide Web Consortium
  • W3C 创建于1994年10月
  • W3C 由 Tim Berners-Lee 创建
  • W3C 是一个会员组织
  • W3C 的工作是对 web 进行标准化
  • W3C 创建并维护 WWW 标准
  • W3C 标准被称为 W3C 推荐(W3C Recommendations)
  • W3C的宗旨是通过促进通用协议的发展并确保其通用型,以激发 web 世界的全部潜能。

四,ECMA

Ecma国际(Ecma International)是一家国际性会员制度的信息和电信标准组织

1994年之前,名为欧洲计算机制造商协会(European Computer Manufacturers Association)。

因为计算机的国际化,组织的标准牵涉到很多其他国家,因此组织决定改名表明其国际性。现名称已不属于首字母缩略字。

组织在1961年的日内瓦建立为了标准化欧洲的计算机系统。在欧洲制造、销售或开发计算机和电信系统的公司都可以申请成为会员。

五,网景

在这里插入图片描述

网景是网景通信公司(Netscape Communications Corporation)的常用简称。

网景通信公司曾经是一家美国的计算机服务公司,以其生产的同名网页浏览器而闻名。

1998年11月,网景被美国在线(AOL)收购。

六,为什么键盘不是按照字母顺序排列的?

大家都知道,现在我们通用的键盘是按照英文字母QWERTY排列的。可是很多人却不知道,这样的字母布局最初并不是为了让打字速度更快,而是为了让打字速度慢下来

这个反智的发明是一个叫Scholes的美国人的创举。早期机械打字机依靠按键驱动后方的字锤进行操作,如果输入过快,前一个字母的字锤还未完全弹起,后面一个字母的字锤就已经落下,相邻键杆就会撞在一起而发生卡壳。

于是,Scholes把常用字母安排在了不顺手的地方,这样就能减慢打字员的速度,击节连杆也就不会卡住了。

有趣的是:据说设计的时候特意把打字机Typewriter的字母全放在顶排,所以销售展示的时候可以用极快的速度打出Typewriter而不卡机。

七,「404」的传说

404错误,想必大家都很熟悉了。是指用户浏览网页时,服务器因某种原因无法正常提供信息或无法回应所返回的页面,即「找不到该页面」,又被称为「互联网的最后一个页面」。

关于404说法的由来众说纷纭,其中有一种说法称,404源于「404房间」

相传互联网的第一架服务器,架设在欧洲核研究组织的404号房。如果要打开网页,就得向404房的Berners-Lee提交申请,如果他没在房间内,就会出现「404 not found」。

八,降维打击

所谓的“降维打击”,源于刘慈欣的《三体》。

曾经在一个杭州科幻研讨会上,主办方发起了一个话题:如何毁灭一个城市?

刘慈欣回答说:可以把三维的杭州二维化,变成一个水墨山水画。然后再一维化,变成一根杭州的丝绸线,然后一抽,这个城市就毁灭了。

那这种“打击”方式怎么运用到实际中呢?下面举个例子:

著名的瑞星、卡巴斯基,这些杀毒软件都是靠收费来维持运营的,收费是这些杀毒公司的重要维度。

但360杀毒来了,360杀毒是免费的,而且质量好,一下子将这个维度降维0,就像三维变成了二维,这还怎么竞争?到最后没得玩了。

商战中最重要的就是:研究对手的核心维度,然后自己通过某种方式去降低或消灭这种维度,同时自身有其他维度维系生产。

九、90%的编程工作来自内部软件

计算机专业的学生,可能有一种印象,觉得大部分程序员,都在编写公开出售的软件或者通用软件。

这种看法是不对的。大部分程序员,实际上编写的是不公开的企业内部软件,比如追踪费用的软件、优化装运成本的软件、帮助记账的软件、设计新部件的软件、计算保单价格的软件、识别恶意订单的软件等等。

各种各样的商业公司,开发内部软件,解决它们自己的问题。市场上对程序员的大部分需求来源于此,只有极少数程序员直接编写面向外部顾客的软件。

内部软件的开发,通常非常乏味,令人厌倦。

因为它们的技术复杂性低、技术决策非常保守、预算很少、缺乏长远考虑。但是,世界上大部分编程工作都是这种。

十、永远不要自称为程序员

很多公司的经理不懂计算机,在他们心目中,程序员就是一群高成本的劳动力,只会在一台复杂的机器上干一些难懂的事情。

如果你自称为"程序员",当公司需要压缩成本的时候,某些经理首先就会想到解雇你,因为你的工资高。

有一家公司叫 Salesforce,口号是"没有软件",意思就是如果经理们购买了他们的服务,就不再需要别的软件管理销售业务了,也就是说,不再需要自己雇佣程序员了。

正确的做法是,你应该把自己描述成与增加收入、降低成本有关系的人,比如"xx产品的开发者"或"改进者"。有一个 Google Adsense 程序员的自我介绍,是这样写的:“Google 公司97%的收入,与我的代码有关。”

猜你喜欢

转载自blog.csdn.net/XVJINHUA954/article/details/110266902