概述
我不知道怎么成为世界上最好的程序员,但是我们可以向史上最伟大的程序员学习,从这些程序员们汲取一些教训。
从丹尼斯·里奇那里得到的经验教训
UNIX本质上是一个简单的操作系统,但是你必须是一个天才才能理解它的简单性——丹尼斯·里奇
在你上大学并获得计算机学位之前,丹尼斯·里奇正在设法在麻省理工学院找到一份工作。
那时候计算机实验室门槛不像现在这么高,只要你有耐心,愿意和房子差不多大小的计算机一起工作,都会受到欢迎。
虽然如此,但对于一个像丹尼斯·里奇这样非科班的人来说,想创建诸如UNIX和C语言并不是一件简单的事。
下面是丹尼斯·里奇的一些成就:
● 发明了C语言,并和肯·汤普逊共同创建了UNIX操作系统。
● 1983年,获得计算机协会的图灵奖
● 1990年,与肯·汤普逊共同获得了电气和电子工程师协会IEEE Richard W. Hamming奖章
● 1997年,成为计算机历史博物馆研究员
● 1999年,获得克林顿总统颁发的国家技术勋章
那么,丹尼斯·里奇是如何完成开发C语言和UNIX的工作的?他又是如何学习编程的呢?
丹尼斯·里奇被称为“C语言之父”,据说他是一个温和、善良和谦逊的人,而且是一个狂热的极客,但他一开始并不是一个极客。
里奇出生在纽约,在新泽西州的花园城市长大。他有一个安稳的童年,学习成绩也很好。后来他到哈佛大学学习,顺利拿到学士学位,并在那里以肄业生资格学习物理,以研究生资格学习应用数学。
计算机是怎么进入里奇的生活的呢?
▌要点1:如果你想擅于编程,必须保持好奇心
我既不聪明,也没有特别的天赋。我只是非常好奇——爱因斯坦
里奇还是一名学生的时候,曾经听过一场关于univac如何运作的讲座。UNIVAC I(通用自动计算机I)是美国生产的第一台商用计算机。
它长这个样子:
说真的,真的有什么样子的好奇心,能让一个人坐下来,去享受一场关于这个东西的讲座呢?很明显,答案就是那种能成为伟大程序员的人。
在那次讲座后,里奇便开始进一步研究计算机是如何工作的。俗话说:“好奇心害死猫”。这句话我们都知道,但你不是那只猫,所以请保持保持好奇心。
▌要点2:听过不等于做过
我不想专注于某个特定的项目,我只想和有很多经验和想法的人在一起。所以,我开始通过各种各样的项目,来学习我的专业。——丹尼斯·里奇
让很多项目成为你好奇心的产物,把你的好奇心转化成不同的项目——就像里奇一样,这样帮助你走好你的职业道路。
▌要点3:和那些比你好,比你有经验的人在一起
之所以这样做,有一个显而易见的原因,你将以更快的速度学习,而且不会感到难度太大。据说丹尼斯·里奇在这方面也做得很好。
如果你不能接近那些你认为比你好,比你有经验的人,那么你就把互联网作为你的朋友。在你感觉比较不错的平台上,阅读他们的博客文章,观看他们的视频,或者语音。
只要做到“留在”他们身边。
▌要点4:解决问题
真正有趣的,不是编程本身,而是你能让编程去完成你想要做的事情。——丹尼斯·里奇
在里奇生活的那个年代,一台电脑就占满一间房子,所有电脑都是如此,而且它们的操作系统很难使用。里奇知道,小型电脑已经在开发中,所以他打算立项,去研究如何解决这些问题。
这就是里奇对编程的看法。编程可以做什么,可以解决什么问题,以及他会对人们产生什么影响。
如果一个问题让你很烦,不要无视它。如果你认为这个问题被很多人无视了,那么你要解决它。制造一些东西,想做就做。
还有特别注意一点,在你解决问题之前,不应该瞻前顾后。
当一件事情很重要时,即便机会很不好,你也要去做
举几个例子:
☄ Electron JS是一种用JavaScript来构建桌面应用程序的技术,它的出现是因为GitHub团队的一部分人想要用Web技术构建一个编辑器。
☄ Redux,Javascript应用程序的可预测状态容器是由Dan Abramov构建的,因为他想用最少的API创建一个状态管理库,但行为是完全可预测的——这是他的说法。
☄ Quincy Larson和其他一些人构建了Freecodecamp平台,以解决在开放源码社区中教授web技术的问题。
他们发现了一个问题,然后解决了它。
最后,总结一下从C语言之父丹尼斯·里奇那里得到的收获:
● 保持好奇心,并不断的深入学习知识,虽然我们不可能什么都知道。
● 掌握基本原理。掌握原理,才是真正掌握技能。
● 解决问题。如果你认为有些事情可以做得更好,那就去做,你的生活会变得更好。
● 参加很多不同的项目
● 多和比你更厉害的,更有经验和想法的人一起工作、学习。
对于热爱编程的人来说,有一群一起学习的小伙伴很重要!如果你感兴趣或者有需求的话,笔者有一个编程零基础入门学习交流俱乐部,还有学习视频文件,欢迎初学者和正在进阶中的小伙伴们!
最后
以上就是怕黑电灯胆为你收集整理的从 “C语言之父” 那里学到的一些好东西!分享给你~的全部内容,希望文章能够帮你解决从 “C语言之父” 那里学到的一些好东西!分享给你~所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复