谷歌第 23 号员工是如何编程的

昨天,在推文上面看到一篇关于 Google 的第 23 号员工谈论他是如何编程的文章,讲述的特别有趣,因此,决定给大家分享一下。

没错,就是图片中的这个大胡子,他的名字叫 Paul Buchheit,现如今是 Y Combinator 的工程师和合伙人。在谷歌时,建立了 Gmail 和 Adsense 的第一个原型。后来,离开谷歌加入脸书,并在那里创建了 Friendfeed,这些信息在维基百科里面都有的,大家如果感兴趣的话,可以通过为文末的链接去查看维基百科。

本文我主要把我觉得有意思的几个问题,给各位读者分享一下,希望能够帮助到你。

你是怎么开始编程的?

我记得有次在玩一个幻想 RPG 视频游戏时,才开始真正进入编程。由于我在游戏中无法找到我需要的魔法手铐「好像是这个物品」然后我想,「也许不是在游戏中搜索,我可以破解保存库存的数据文件!」。那时,我便开始编写程序来弄清楚游戏是如何存储的。然后我找到了一种可以在我的物品库存中插入任何东西「包括游戏中甚至不存在的东西」的方法。

也就是那时开始,我意识到,这竟然比实际游戏更有趣。因为游戏是把你困在别人设计好的世界里。但是可以通过编程来改变这一切,做任何你想要做的事情。使游戏的世界变成一个开放的环境,没有任何限制。从那时起,与编程相比,视频游戏似乎变得毫无意义,还浪费时间。

实际上,我可能在一年前就开始编程了,我当时买了一台带有 1M 内存的 386 并开始玩它。我找到了一个关于如何在 BBS 上编程的文本文件,以及一个只能部分工作的 C 编译器。我通过玩这些来学到了一点点。后来在 Hamfest,我发现一个二手的 Turbo C 2.0 编译器只需 11 美元,还附带一本手册。因此,我当时便有了一个正常工作的编译器和一本手册,并且开始花了几年来弄清楚它是如何工作的。其实刚开始我遇到了很多挫折,但我一直都没有放弃过。

你毕业后为什么加入英特尔?

我一直对初创公司和企业感兴趣。我记得大概 10 岁的时候,就开始在家附近进行了挨家挨户的销售,当时每卖一包贺卡就能赚 1 美元!

大学毕业后,我想在一家创业公司工作,但并不知道如何找到这么一家公司?当时,互联网上并没有太多关于创业公司的信息,但我知道它们可能会在硅谷。我选择进入英特尔工作,源于这些创业公司可能在硅谷,这也是找到它们的最佳方式。我当时还天真的想过,也许我会在硅谷的街道上遇到这些创业人士,但是从未真正发生过。

你为什么决定离开英特尔?

我后来离开英特尔,在于这份工作并不能令我感到兴奋,总感觉每天都在消磨时光,所以决定离开。

你是怎么找到谷歌的?

我很喜欢 Linux。实际上在大学之前,我就开始玩 Linux。我可以在部分损坏的硬盘驱动器上分区 60MB 的可用空间,并安装了 Yggdrasil Linux 发行版,它足以适合小型 Linux 安装,但不足以让 Emacs 成为我的编辑器。

我经常会花很多时间在 Slashdot 上阅读,来获取所有最新的 Linux 新闻。我也是在这里找到了谷歌,它当时是一个建立 Linux 机器集群的小创业公司!对我来说,什么可能比 Linux 机器集群更兴奋呢?它们的搜索依赖于 Linux ,所以他们经常会出现在 Slashdot 上。因此,我便申请了一份工作!

有趣的是,我的当时的简历邮件因为他们的邮件服务器配置错误而被退回!但是,我第二天再次发送,然后他们修复了 MX 记录,有人给我留了一个电话。我打了一个电话,然后他们邀请我参加一天的面试。

您是如何在谷歌管理个人职业规划的?

我从来没有真正关心过这个事情。我只是不想隐藏在一个无关紧要的角落里。在大学一年级,我在微软实习。在我实习的最后一天,我小组中最聪明的工程师之一给了我这样一个建议「确保他们不会让你在一个不重要的地方工作」。我一直记得这个好建议。我在谷歌的努力只是为了推出一款很酷的产品。

成为优秀工程师需要哪些技能和知识?

计算机科学几乎不同于任何其他工程学科,因为我们经常需要接触许多不同的抽象层。只能在一个层级上操作的人不算得上优秀,因为任何给定的问题通常都会与上一个问题「处于不同的抽象层次」有联系。优秀的工程师了解计算机的层级、协议及系统。

如何成为一名更优秀的工程师?

秘诀便是一直做。我在高中学习编程是,就是这么做的,幸运的是我当时没有其他事情打扰。编程是我的爱好,因此,我总会有一些想要实现的项目。我认为做很多编程是无可替代的,就算你在短时间内无法获得真正的好处。但花上个好几年就不好说了。

大学有用吗?

我认为大学是一个成长和独立的时期。我简直不敢想直接从高中就进入英特尔工作,那将会是一场怎样的噩梦。

当我上大学时,我已经有了第一份编程的工作。我和我父亲的一位朋友一起工作,他做机器维修,需要编程实现一个工业机器人,可以从料斗中取出金属棒并将它们放入研磨机中。我从中学到了很多东西,之前我真的不认识任何会编程的人;直到进入大学才认识了这么多优秀会编程的人,因此,我便开始向他们学习。

从这几段对话中,我们可以知道他从小开始编程,读大学前特别喜欢 Linux,在网上看到当时的小公司 Google 用 Linux 做集群服务器,很酷,就去应聘了。24 岁便开始在谷歌写邮件服务器,便有了后来的 Gmail。这一切的一切源于兴趣,秘诀便是一直不停的写。

也正如我之前的文章所说的,大学并非无用,因为只有在大学里才能遇到跟你一样真正喜欢编程的人。编程的这条道路,没有捷径可走。我们唯一能做的便是一直写下去。

近日,网传截图显示,一位叫「顿悟法师」的僧人表示要将寺庙与区块链相结合,公然发行新的区块链货币,并以香火钱为噱头。

后来,@新浪财经 致电国家登记的正规寺庙及央行相关部门,证实了该行为已经违反了国家法律了,并且属于明显的破戒行为,要小心是否存在诈骗行为。

原文发布于微信公众号 - Web项目聚集地(web_resource)

原文发表时间:2018-10-30

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏PHP在线

编程能力的 4 种境界

原文出处: 外刊IT评论 人类心理学研究中的一个基础支撑科目就是分析人的潜意识和意识。 弗洛伊德是最早的一位能够清楚的认定和描述我们的心理活动“领域”的人。 在...

36360
来自专栏敏捷开发&项目管理

一些适合青少年编程学习的趣味编程工具

今天总结了一些适合青少年编程学习的趣味编程工具,感兴趣的可以了解了解,教教自家的小朋友。 趣味编程按照学生的年龄,兴趣和知识掌握程度由易到难。 Scratch符...

64680
来自专栏互联网杂技

2018年的用户体验状况

这是由一位美国作者站在美国的视角写的文章,即便抛开个人因素不谈,国内外的发展进度并不完全同步。例如情感化反馈这一块也许国内稍稍落后一点、但是移动支付和AR却要快...

29980
来自专栏华章科技

编程能力的四种境界

网址:http://www.vaikan.com/the-four-stages-of-programming-competence/

9910
来自专栏AI研习社

「全球最大同性交友平台」Github 十岁了,十年大事记一览

AI 研习社按,如果你是程序员,那对 GitHub 一定不会陌生。作为「全球最大同性交友平台」,截至目前,GitHub 已经拥有超过 2700 万开发者。

10530
来自专栏Android 开发者

[译] 利用 Android 构建 TV 的未来

17930
来自专栏SDNLAB

创建新一代数据中心的最佳方式是什么?

编者按:围绕“创建新一代数据中心的最佳方式是什么? ”VMware和Cisco展开辩论,所谓“王婆卖瓜自卖自夸”,一个力推自己子公司产品中的网络虚拟化技术,另一...

28450
来自专栏大数据架构师专家

你只是想学好linux而已

这段时间收到了很多学员关于学习上的疑惑,在这些疑惑当中有80%是关于学习方向的疑惑。比如: 1. 我想学好Linux ,是不是应该先学好英语?...

17630
来自专栏知晓程序

小程序体验师第三期招募!

这次,你要做的,仍是从渣渣小程序堆里,把有趣的、实用的、令人大呼相见恨晚的优质小程序挑出来。

8920
来自专栏云计算D1net

云服务使用成本过高?五款工具帮你顺利缩减云开支

随着将更多工作负载逐步转移到云环境当中,大家可能发现准确并及时地追踪自己的月度云计算账单并不像原本想象中的那么简单。当然,使用云服务供应商的产品肯定要比自行购买...

38070

扫码关注云+社区

领取腾讯云代金券