跳到主要内容

来自 Linus Torvalds 的五条成功启示

If you don’t know who Linus Torvalds is, I will give you a short introduction: If you’re a software engineer, you should know what Linux is and I’m almost sure that you used Git at least one time. Basically, he is the mind behind these two big projects. If you want to learn more about him, you can search online, I don’t want to give more details in this article but to move on to the wisdom I learned by listening to his speeches.

如果你不知道 Linus Torvalds 是谁,我将给你做一个简短的介绍:如果你是一名软件工程师,你应该知道 Linux 是什么,我几乎可以肯定你至少用过一次 Git。 基本上,他是这两个大项目的幕后主脑。如果你想更多地了解他,你可以上网搜索,我不想在这篇文章中提供更多细节,而是继续我通过听他的演讲学到的智慧。

Before I start, I want to tell you something: I cannot guarantee that you will like these ideas, but I can only tell the truth, the harsh, painful truth.

在开始之前,我想告诉你一件事:我不能保证你会喜欢这些想法,但我只能说出真相,残酷而痛苦的真相。

1. 我们都很平凡

Nobody is Special

In motivational videos and books, there is a common message: You’re not ordinary, you can achieve whatever you want by working correctly and giving all of your energy and then you become someone special. They should be right because take a look at the history, there are lots of people we know their names among billions of them. We know them because they achieved something big and the common message is that we can achieve the same thing if we push the right buttons.

一些励志的视频和书籍会反复强调:你不平凡,你可以通过个人努力来实现自己的理想,然后你就会成为一个特别的人。回顾历史,我们看到许多伟人确实通过自己不懈的努力最终取得了成功,但问题在于,如果换作是我们也可以取得同样的成就吗?

I believed in such ideas a long time ago. But they are complete lies. Nobody is special and one can achieve very less by itself. Generally, the one common thing we don’t generally notice is that successful people achieve things by not working hard but using other people’s work power for what they want to achieve. Humanity has been doing this for a long time. Great commanders used countries for what they wanted to achieve. In recent history, we started doing the same thing by creating companies. These companies discovered that great things can be achieved by paying people and using their power.

很久以前,我确实相信这个说法,但如今却发现这不过是心灵鸡汤。我们都很平凡,没有人是特别的,靠自己的努力取得成功的人非常少。与之相反,我们没有注意到的是,成功人士往往是通过他人的辛勤劳动实现自己的目标,并取得最终的成就。长期以来,人类一直在重复这个历史。所谓一将功成万骨枯。在近代历史中,创业公司也是通过每一位平凡的工程师实现了恢宏的目标。这些公司发现,付钱给员工并用好手中的权利就可以成就伟大的事业。

Big names like Bill Gates, Mark Zuckerberg, Steve Jobs… All of these people have made their fortune by using the same strategy. Even Warren Buffet… Generally, we think that he made his fortune by doing investments with his own money for a long time and because he invested a very long time, he is successful. However, at a point, he noticed that his personal money is not enough and started using other people’s money and he invented new ways to do the same thing.

像比尔·盖茨、马克·扎克伯格、史蒂夫·乔布斯这样的大人物,他们的发家经历也大抵如此,甚至是沃伦·巴菲特……一般来说,我们认为他是通过长期的投资发家的,因为他投资了很长时间,所以他很成功。然而,有一段时间,他发现自己的资金不够用,于是开始利用别人的钱来赚钱,并发明了新的致富方法。

What about Linus Torvalds? He invented a new way to achieve the same thing. He took the risk and decided to open his kernel’s source code to everybody, then he noticed that people contributed good ideas. Later on, he created Git to allow people to implement their ideas which made this process faster, and by doing the same thing for 25 years, he created something special. However, he didn’t do this on his own. Today, if you check the GitHub page of Linux, you can see that this project has more than 13 thousand contributors. More than 13 thousand people worked voluntarily on the project he created. Also, we didn’t even count the people in companies who use Linux to create new business models. Millions worked to bring Linux to its today version.

那么 Linus Torvalds 呢?实际上,他找到了一种新方法来实现同样的目标。他冒着风险,向所有人公开了他的内核源代码,然后他注意到人们提出了很多很好的想法。后来,他又创建了 Git,帮助人们实现自己的想法,从而加快了这个过程,在 25 年间他坚持努力,并最终创造了一些特别的产品——然而,这并不是他一个人的功劳。看看 Linux 的 GitHub 页面,你会发现这个项目有超过13,000 名贡献者。也就是说,13,000 多人自愿在他创建的这个项目上帮忙,我们甚至没有统计使用 Linux 创建新业务模型的科技公司。总的来看,Linux 经过了数以百万计人的努力才发展到了如今的版本。

In brief, nobody is unique. We all are small pieces in a massive system. Like ants and bees, we achieved great things together. The Internet is not created by one person, there were lots of workers who placed cables deep in the ocean to connect people on different continents. Hence, if you want to become successful, collaborate with other people and learn how to use others’ power for your project. If you think you can do much on your own and you’re unique, then you’re just another Buzz Lightyear.

简而言之,没有人是独一无二的。我们都是一个庞大系统中的一个个小碎片。就像蚂蚁和蜜蜂一样,集体的努力成就了伟大的功绩。互联网不是一个人创造的,多少位默默无闻的工人在海洋深处铺设电缆,连接各个大陆的人们。因此,如果你想获得成功,就要学会如何与其他人合作,并借助他人的力量帮助你的项目取得成功。如果你以为自己是独一无二的,仅凭自己的力量就可以取得成功,那么你就是另一个巴斯光年(最终发现自己只是一个玩具而并非地球的拯救者)。

2. 友善并不一定是好事

Being Nice is Not Nice

I’m working as a software engineer like everyone else, and in the company I’m working for, being nice is important because when they evaluate the bonus you will take at the end of the year, one of the biggest metrics is your character. In fact, if human resources fires people, one of the biggest metrics along with the performance is the behavior. We’re forcing people to be nice, otherwise, we eliminate them.

我是一名软件工程师,与其他人一样在我工作的公司里,谦和有礼非常重要,因为在年底的业绩考核中,性格是最大的衡量标准之一。事实上,人力资源在解雇员工时,除了绩效之外,最大的衡量指标之一就是行为。我们强迫每个人都变得和蔼可亲,否则就会被淘汰。

I think we’re doing this because we don’t want to hear harsh truths. We want to hear them like it’s not our fault even if it is. However, I don’t think we’re doing the right thing. Of course in some areas, being nice is required. For instance, if you’re caring for an elder person, being nice should be a requirement. However, I don’t think the same applies to the technology industry.

我认为,我们这样做是因为我们不想听到残酷的事实,即便我们知道是自己的错,也不希望听到苛刻的指责。然而,我认为这种做法不正确。当然,在某些领域,我们必须和蔼友善,例如照顾老人或孩子,友善是最基本的要求,但我认为这不适用于科技行业。

Several researchers tried this theory: They created two control groups of random people. One group was forced to be friendly and kind while the other one is free to defend their ideas more aggressively. The same problem was given to these two groups and the results were evaluated. After lots of repetitions, they found that the aggressive group found better ideas and solutions over and over. Technological improvement focuses on the same thing: finding the best solution to problems. Hence, I think we should be able to defend our ideas against each other until we find the best solution by using mathematical proofs or making experiments.

几位研究人员尝试了这个理论:他们随机挑选了两组人,要求一组人必须表现得和蔼可亲,而另一组人则可以自由捍卫自己的想法。然后他们给这两组人相同的问题,并对结果进行评估。在重复多次试验后,他们发现更加激进的这一组每次都能提出更好的想法和解决方案。技术改进的重点是找到问题的最佳解决方案。因此,我认为我们应该坚定地捍卫自己的想法,直到通过数学证明或实验找到最佳解决方案。

At this point, I want to clarify something: Defending aggressively doesn’t mean defending your idea to death even if you’re wrong. If you’re wrong and there is proof or a logical explanation, you should accept that and let other people improve your wisdom. You should be reasonable while defending your ideas.

在此,我想澄清一件事:积极捍卫自己的想法并不代表即使你错了也要一意孤行。如果你错了,而且对方有理有据,那么你就应该接受,并吸取经验教训。在捍卫自己的想法时,我们应该保持理性。

Torvalds did the same thing in Linux. In the commits, and the media he defended his ideas in a very aggressive way. I don’t support this but he also broke hearts too. However, this was a good strategy to find the best solution. Thanks to this approach, Linux became something different. While macOS is working on specific hardware and Windows is giving lots of blue screens with memory leaks and inefficient implementations, Linux works on all devices by requiring a little professional touch and is optimized in a great way that the call trace of the kernel is far better than Windows.

Torvalds 在构建 Linux 时就表现出了这样的心态。面对媒体时,他非常积极地捍卫自己的想法,有时他也会伤到别人,但这是找到最佳解决方案的一种策略。正因为他的坚持,Linux 才变得与众不同。虽然 macOS 可以在特定硬件上运行,Windows 会出现大量蓝屏、内存泄漏和低效的实现,但 Linux 可以所有设备上正常运行,只需要一些专业的操作,并进行一些优化,就可以远超 Windows。

3. 目标、想法... 都是谎言

Goals, Ideas… are all Lies

Do you know what survivorship bias is? During the second world war, researchers from the Center for Naval Analyses conducted a study on the damage done to returned aircraft after missions. They then recommended adding armor to the areas that showed the most damage to minimize bomber losses to enemy fire. However, Abraham Wald suggested differently. Wald was a Hungarian mathematician and a member of the Statistical Research Group where he applied his statistical skills to various wartime problems. He noticed a very simple thing: The planes they were analyzing were the ones returned. This means that these planes managed to return even if they got hit in those places, which means if they got hit in other places, they couldn’t achieve the same thing.

你知道什么是幸存者偏差吗?第二次世界大战期间,美国海军分析中心的研究人员针对执行任务后返回飞机的损坏程度进行了调查。然后,他们建议加强受损最严重区域的防护,以减少敌方炮火对轰炸机造成的伤害。

然而,Abraham Wald 却提出了不同的建议——他是一位匈牙利数学家,也是此次研究小组的成员,他的任务是通过统计技术分析各种战时问题。他注意到了一件非常简单的事情:他们分析的飞机都是从任务中成功返回的飞机。这意味着,即使这些飞机的这些部位受到了攻击,依然成功返回了;换一种说法,如果其他部位被击中,这些飞机有可能就回不来了。

In my opinion, goals, ideas, and visions are products of the same mentality, a product of survivorship bias. Lots of people only studied successful people and they decided that all of them has a vision, a goal. However, I don’t think it’s the difference. Consider university entry exams. Do you think the person which is in the 1 millionth place aimed for this? Most probably, this person aimed higher but didn’t do other things correctly. If goals and visions are common for both successful and unsuccessful people, then they are not the distinction between them.

在我看来,目标、想法和愿景是同一种心态的产物,即幸存者偏差的产物。很多人只研究成功人士,并认为成功人士的一个共同特征是:有远见和目标。但是,我认为这并不能说明什么。例如每年的高考,无论有没有考上大学,所有考生的目标都一样,对不对?只不过有些人好好学习了,而有些人则没有下功夫,或者还有其他因素等等。很多时候,成功者和失败者有着相同的目标和愿景,所以说这并不是决定性的因素。

During the TED Talk interview, Linus Torvalds admitted that he doesn’t have a vision or a 5-year plan. Basically, he solves problems whenever faced with one, and on the other hand, he tries to find better solutions for the ones he solved already. He has a system, a system of problem-solving and seeking betters. Applying this system for 25 years… It’s the success mentality behind Linux.

在 TED 演讲采访中,Linus Torvalds 承认他没有愿景或 5 年计划。他的想法很简单,遇到问题就解决问题,同时努力为已解决的问题寻找更好的解决方案。他有一个系统——一个解决问题和寻求更好的解决方案的系统。这个系统坚持工作了 25 年,而这就是 Linux 背后的成功心态。

4. 没有完美的设计

There is No Intelligent Design

I was one of the people who think too long that they cannot start the thing they want to. I would research to find the best way before starting the actual work. In the end, I would never get started since I was already lost in the pursuit of finding the best way and learning the required things to achieve that.

有些人是思想上的巨人,行动的矮子,我个人就是其中之一。在开始动手之前,我会研究各种解决方案。最终的结果便是永远没有机会开始,因为我已经迷失在寻找最佳方案和学习如何实现最佳方案的过程中。

Later on, I noticed something. Humanity learned everything by doing mistakes. We discovered lots of things by trying, experimenting, and making mistakes. I want to give you an example: If you know the geological location of Japan, you may know that there are lots of earthquakes happening in there regularly. In their history, their homes were not too long and generally wide since if they build something long, it will be destroyed in an earthquake. They solved this problem today but how? They created a small model of the earth and implemented their different ideas, and then tested this model by creating artificial quakes. By testing ideas, finding new problems, and solving each one of them one by one, they created a great design for the foundation of their buildings. Now, Japan is one of the countries which own very durable buildings.

后来,我意识到失败乃成功之母,人类往往是在尝试、试验和犯错的过程中学会一切。举个例子,如果你知道日本的地理位置,就可能知道那里经常发生地震。历史经验告诉他们,房子不能建得太高太长,但要建得宽一些,否则就有可能在地震中被摧毁。如今这个问题得到了解决,但他们是如何解决的?他们创建了一个小型的地球模型,并实现了各种想法,然后通过制造人工地震来测试这个模型。测试想法,发现新问题,然后逐一解决每个问题,就这样他们设计出了伟大的建筑地基。如今,日本是拥有非常耐用建筑的国家之一。

During one of his interviews, Torvalds tells that there is no intelligent design in Linux. Basically, he’s trying his ideas and by making errors and solving problems, he’s discovering them. At this point, you can say that “No intelligent design exists and there are lots of books about them.” and that’s correct. One of my favorites among these books is “Clean Code” written by Robert Martin. He’s giving great design fundamentals in his book. However, if you read it, you can easily understand that he came up with all of these principles by learning from his mistakes, not only from his own mistakes but also from other engineers’ and bankrupt companies’ mistakes.

Torvalds 在一次采访中说,Linux 没有灵机一动的设计。他的做法是,尝试每一个想法,然后通过不断的犯错和解决问题,最终找到最佳解决方案。所以,我们可以说:“这个世界上不存在奇思妙想,但我们有很多这方面的书籍。”例如,我最喜欢 Robert Martin 的著作《代码整洁之道》,这本书中给出了很好的设计基础。然而,阅读这本书,你就会发现他提出的这些原则也是从错误中吸取的经验教训,当然不仅包括他自己的错误,还有其他工程师以及一些破产公司的惨痛经历。

To sum up, the idea is learning by making mistakes. However, don’t repeat mistakes already made. Try new things, and by solving every problem you faced, learn new things. Stop trying to figure out what is the best way to do it, and just start doing it with mistakes.

总而言之,你可以通过犯错误来学习。但是,切记不要重复已经犯过的错误。尝试新事物,解决你遇到的每一个问题,从而积累经验。不要尝试找出最佳解决方案,首先要从犯错开始。

5. 专注才能取得成功

Distractions Are Potential Killers

Silicon Valley culture… It is based on software engineers who change their jobs very frequently. What is the purpose of this? I think there are two: By doing this, technological ideas and improvements are scattered between companies. Secondly, it started a competition to hire the most experienced engineers, which has made compensations to hire such people higher and higher. In the fancy YouTube videos of software engineers (I also enjoy watching several of them), we can see amazing offices with free offered food, and high compensation numbers. With all of these shiny objects, lots of people want to be a part of them.

硅谷的文化建立于一个基础之上:软件工程师经常换工作。这样做的目的是什么?我认为有两个,第一,在各个公司之间传播技术思想,并提升工程师的技术水平;其次,每家公司都希望招募到最有经验的工程师,于是这些人的薪酬越来越高。

Like everything else, this comes up with a cost we generally don’t notice. Every company has its own system, own implementation style with different techniques. Before we learn every detail in one of them and work on a project long enough, we are leaving companies. Today, in most of the big companies, the average staying time of engineers is lower than 2 years.

这种文化会带来潜在的成本。每个公司都有各自的系统、实现风格以及技术。软件工程师还没有掌握每一处细节,或深度参与某个项目,就已经离职了。如今,在硅谷的大多数大公司,软件工程师的平均就职时间不到 2 年。

What is bad about it? I want to show you a different perspective. Linus Torvalds started working in one of the Silicon Valley companies (Transmeta) and instead of moving around the companies, he stayed at this company for almost 7 years until laying the foundations of the Linux Foundation. Why did he do that? Why didn’t he move between companies like others? Concerning what he said in his TED Talk interview, he’s very stubborn and didn’t let go of the projects. In fact, he’s so stubborn that he’s been working on the same project for more than 25 years.

这有什么坏处?Linus Torvalds 的第一份工作是在硅谷的一家公司(Transmeta)工作,他在这家公司工作了将近 7 年,直到 Linux 基金会成立。为什么他没有像其他人一样反复跳槽?他曾在一次采访中说,他非常固执,不愿意放弃自己参与的项目。事实上,他已经在同一个项目上坚守 25 年了。

Warren Buffet applied the same mentality in the investment industry and applied the same simple but effective strategy for a long time and made it perfect, eventually, he became the richest man. The point here is that success is coming to the people who are focusing on something but not the ones who are moving from project to project.

沃伦·巴菲特在投资时也有着相同的心态,长期坚持一个简单但有效的策略。重点在于,长期专注于某件事才能取得成功,在多个项目之间反复横跳最后只能落得一事无成。

This advice is not for everybody because some of us do software engineering only for money and there is nothing wrong with it. However, there are lots of people who want to create great things, and unfortunately, the only way to do this is to focus. Because lots of people are working to achieve different things simultaneously, if you want to be successful, to create something other people and you want to use, then you really need to focus on the problems and the projects you want and stick with that.

当然,这条建议并不适合所有人,因为我们中的一些人只是为了钱而工作。然而,如果想创造伟大的事物,那么唯一的方法就是专注。因为同一时间里也许有很多人都在朝着不同的目标努力,如果你想成功,创造其他人希望使用的产品,就必须专注于你想要解决的问题和项目,并坚持下去。


原文链接:5 Harsh Truths for Success from Linus Torvalds,作者:Ugur Yagmur,发布于 Nov 20, 2022