译/网易云信
想要阅读更多技术干货文章,欢迎关注网易云信博客
了解网易云信,来自网易核心架构的通信与视频云服务。
我不知道如何成为世界上最好的程序员。但是,我们可以向历史上最伟大的程序员学习。该系列文章将会向大家分享C语言的创造者、Unix操作系统的关键开发者Dennis Ritchie、。Linux内核的发明人Linus Torvalds的经历与建议。
UNIX基本上是一个简单的操作系统,但你必须是一个了解“简单”的天才--Dennis Ritchie
获得计算机编程学位的前几天,Dennis Ritchie获得了在麻省理工学院(麻省理工学院)工作的机会。
计算机实验室不像现在这样挑剔,并且几乎欢迎任何有耐心帮助他们在房间大小的计算机上工作的人。
对于最初是行业局外人的人来说,创建UNIX和C语言 - 计算机历史上最广泛使用的两种技术 - 是一件大事。非常重要的大事。
以下是Dennis Ritchie的一些成就:
1. Dennis Ritchie创建了C语言,并与他的好友Ken Thompson共同创建了UNIX操作系统。
2. 1983年,他获得了计算机协会(ACM)颁发的图灵奖。
3. 1990年,Ritchie和Thompson都获得了电气和电子工程师协会(IEEE)颁发的IEEE Richard W. Hamming奖章。
4. 1997年,他成为计算机历史博物馆的成员
5. 他于1999年获得克林顿总统颁发的国家技术奖章
那么他是获得这些成就的呢?更重要的是,Dennis Ritchie是如何学会编写软件的?
丹尼斯·里奇(Dennis Ritchie) - 被称为“C编程语言之父” - 被认为是一个体贴,善良,谦逊的人 - 而且是一个完全极客!
但他并不是一个极客。
里奇出生于纽约,在新泽西州的花园城市长大。他有一个稳定的童年,并在学业上做得很好。
他在哈佛大学继续他的学业,在那里他学习科学并取得他的物理学学士学位。
那么计算机什么时候进入里奇的生活?

要点1:如果你想成为擅长编写出色软件的人,你需要时刻保持好奇心。

我既不聪明也不特别有天赋。我只是非常非常好奇 - 爱因斯坦
好奇心激发了人们对知识的渴求。知识,统治世界。
在里奇还是一个学生的时候,他不知怎么去听了一个关于UNIVAC的讲座。
该UNIVAC I(通用自动计算机I)是在美国生产的第一款商用计算机。
下面是它的样子:
说真的,什么样的好奇心让一个人坐下来并且真正享受关于UNIVAC如何运作的讲座?
显然,这是一个伟大的程序员。
在那次遭遇之后,Ritchie继续研究计算机是如何工作的。
好奇心杀死了猫。我们都知道,但你不是猫。

要点2:建立更多的项目,了解更多的业务。

我没有专注于特定项目,而是希望能成为拥有丰富经验和想法的人。所以我开始从事各种项目去了解我的职业生涯。“ - 丹尼斯里奇
让建立很多项目成为你好奇心的产物。将好奇心转化为构建不同的项目 - 和Ritchie一样,这将有助于您了解自己的职业。

要点3:和你认为更专业,更有经验的人待在一起。

你之所以应该这么做,最明显的原因是,你的学习速度会快得多,并且对你目前的知识不会太满意。
这是另外一件Dennis Ritchie据说做的很好的事情。
如果你不能亲近那些你认为更好,更有经验的人,那么互联网就是你的朋友。
在您感觉舒适的频道上关注他们。阅读他们的博文。观看他们的YouTube视频。收听他们的播客。
和“他们”待在一起。

第4点:解决问题。

“这不是真正有趣的编程。但这是你可以用最重要的结果来获得的东西。“ - Dennis Ritchie
丹尼斯·里奇(Dennis Ritchie)生活在一个电脑填满房间的时代。但是Ritchie知道小型计算机正在被开发中,并且他们没有易于使用的操作系统,所以他开始来构建一个。
这就是里奇对通用编程的看法,它与可实现的目标相关。操作系统的问题被解决了,并且对后代有深远的影响。
如果问题困扰你,请不要忽视它。如果您认为它被许多人忽视,请解决它。
感到好奇。研究概念。请求帮助。
在解决问题之前,你不应该回头看。
当事情足够重要的时候,即使希望不大,你也会这样做--Elon Musk。

这里有些例子 :

1. Electron JS,让Javascript构建桌面应用程序的技术变得生动起来,因为Github团队想要使用Web技术构建一个可破解的编辑器。
2. Redux是Javascript应用程序的可预测状态容器,由Dan Abramov构建,因为他想创建一个具有最小API但完全可预测行为的状态管理库 - 这就是他所说的方式。
3. Quincy Larson和其他几个人构建了Freecodecamp平台,以解决在开源社区中教授Web技术的问题。
他们看到了一个问题,然后继续解决它。

C语言之父Dennis Ritchie的关键要点

1. 保持好奇,并继续燃烧求知的火焰。我们永远不会无所不知。
2. 了解基本原理。掌握基础知识,才是真正的技能大师。
3. 解决问题。如果您认为某些事情可以采取不同的方式,并且应该被完成,那就去做吧。你将能够更快,更好地生活。
4. 建立许多不同的项目。
5. 和拥有更多专业知识,经验和想法的人待在一起。这是无价之宝,你无法与其他事情交换。

C语言之父Dennis Ritchie告诉你:如何成为世界上最好的程序员?的更多相关文章

  1. B语言的发明者 Ken Thomson & C语言的发明者Dennis Ritchie

    C语言的发明者Ken Thomson因为没有参加C语言考试,在Google没有提交代码的权力. 哀悼结束,生活还要继续. 说段趣闻吧.大家都知道,C语言和Unix的发明者.图灵奖得主.最具传奇性的程序 ...

  2. C语言程序员必读的5本书

    本文由 伯乐在线 - programmer_lin 翻译自 fromdev.欢迎加入技术翻译小组.转载请参见文章末尾处的要求. 你正计划着通过看书来学习C语言吗?“书籍是人类最忠诚的朋友“.海明威一定 ...

  3. C 语言程序员必读的 5 本书

    你正通过看书来学习C语言吗?书籍是知识的丰富来源.你可以从书中学到各种知识.书籍可以毫无歧视地向读者传达作者的本意.C语言是由 Dennis Ritchie在1969年到1973年在贝尔实验室研发的. ...

  4. C 语言程序员必读的 5 本书,你读过几本?

    你正通过看书来学习C语言吗?书籍是知识的丰富来源.你可以从书中学到各种知识.书籍可以毫无歧视地向读者传达作者的本意.C语言是由 Dennis Ritchie在1969年到1973年在贝尔实验室研发的. ...

  5. 深入理解c语言_从编译器的角度考虑问题_纪念Dennis Ritchie先生

    开源中国: Dennis Ritchie教授过世了,他发明了C语言,一个影响深远并彻底改变世界的计算机语言.一门经历40多年的到今天还长盛不训的语言,今天很多语言都受到C的影 响,C++,Java,C ...

  6. 让乔布斯立足肩上的C语言之父

    2011年,人们对乔布斯的去世记忆深刻,但这一年还有另一位本应获得同样关注的人物也与世长辞,他就是C语言之父丹尼斯·里奇(Dennis Ritchie). 不过,并非所有人都没能正确认识到里奇所曾作出 ...

  7. Go语言之父谈Go:大道至简

    http://www.csdn.net/article/2012-07-05/2807113-less-is-exponentially-more 摘要:导读:这篇文章是Google首席工程师.Go语 ...

  8. JavaScript之父Brendan Eich,Clojure 创建者Rich Hickey,Python创建者Van Rossum等编程大牛对程序员的职业建议

    软件开发是现时很火的职业.据美国劳动局发布的一项统计数据显示,从2014年至2024年,美国就业市场对开发人员的需求量将增长17%,而这个增长率比起所有职业的平均需求量高出了7%.很多人年轻人会选择编 ...

  9. 十个顶级的C语言资源助你成为优秀的程序员

    译者言:学习C语言,需要一点一滴,沉下心来,找个安静的地方,泡上一杯咖啡,在浓郁的香味中一起品味她.(by Boatman Yang) 人们通常认为计算机编程很烦,但是有些人却从中发现了乐趣.每一个程 ...

随机推荐

  1. PHP关联数组教程

    PHP 数组 关联数组 什么是数组?在使用 PHP 进行开发的过程中,或早或晚,您会需要创建许多相似的变量.无需很多相似的变量,你可以把数据作为元素存储在数组中.数组中的元素都有自己的 ID,因此可以 ...

  2. 整了一天,明白一个道理:线程里post数据,即loop.exec+quit,然而这个quit之后,导致无法在线程里建立新的loop.exec,直接就退出了

    跟踪到exec的代码里,发现: 无奈,把第二个post移到主线程里去执行了. 如果大家发现有好办法,请告知我.

  3. WPF 中的三维文字[转贴]

    原文:WPF 中的三维文字[转贴] 原文: http://msdn.microsoft.com/msdnmag/issues/07/10/Foundations/default.aspx?loc=zh ...

  4. DNS查询工具:host、nslookup、dig

    作者:zhanhailiang 日期:2014-11-01 1. host host提供域名到IP地址的双向解析: host默认通过/etc/resolv.conf读取Name Server来解析,除 ...

  5. nginx 502错 failed (13: Permission denied)

    安装nginx和php-fpm之后出现502错误 找了个理由说php-fpm不启动 ,但在我的实践中,该过程开始 找了半天没找到病因.视图nginx记录后 我发现下面的错误 [crit] 2686#0 ...

  6. 好玩的WPF第四弹:用Viewport2DVisual3D实现3D旋转效果

    原文:好玩的WPF第四弹:用Viewport2DVisual3D实现3D旋转效果 版权声明:转载请联系本人,感谢配合!本站地址:http://blog.csdn.net/nomasp https:// ...

  7. 使用Struts2的iterator标签遍历复杂Map种类

    1.建一个Webproject.加入Struts2支持. 2.创建两个实体类: a). Mother(母亲)的Java类. package struts.map.entity; import java ...

  8. oracle_set运营商

     oracle_set运营商 ①UNION/UNION ALL UNION 运算符返回的结果集,并设置两个查询.对于这两组重复部分的.重复数据删除 例: select id,name from t ...

  9. jquery 调用js成员

    <!DOCTYPE html><html lang="en" xmlns="http://www.w3.org/1999/xhtml"> ...

  10. WPF 自定义验证规则

    <Window x:Class="DataBindingExam.MainWindow"        xmlns="http://schemas.microsof ...