Moment For Technology

Programmer inventory: From Unix to Pilot! He lived a glorious life

Posted on Aug. 8, 2022, 4:10 p.m. by Miraan Lad
Category: The code of life Tag: The programmer

The author | Mr. K sorting | Emma

Source | technology leadership (ID: jishulingdaoli)

1983 The Association for Computing Machinery awarded the Turing Award to Ken Thompson and Dennis Ritchie.

The reasons are: "For their development of generic operating systems theory and specifically For the implementation of the UNIX operating System."


"Ken Thompson and Dennis Ritchie Turing award for their contributions to the field of general operating system theory, in particular the development and implementation of the UNIX operating system."

As regular readers will know, Every time He tries to impress someone, he quotes a passage from English, but this time it's not to show off, it's to introduce the subject of this article, Ken Thompson.

Before many readers were born, he won the Turing Award, computing's highest honor.

01, computer genius to remember

Ken Thompson was born in 1943. When he was in primary school, there was a class about binary, and he was immediately attracted by it because he loved logic. Driven by his interest, he did a lot of binary calculations and extended them to various bases with the help of a decimal calculator.

In fact, Old K also had a similar experience when he was young. When I was in junior high school, I was fascinated by physics and began to study it very early. Where did Newton's hair get ironed? I think, my physics teacher, is from that time began to have psychological shadow.

Ken Thompson, a straight-a student with no problems since he was a kid, breezed into a bachelor's degree in electrical engineering at the University of California, Berkeley.

Although, foreign universities are not so relaxed as domestic, freely flying self. But for a man like Ken Thompson, the course is so easy.

So he fell in love with a new gadget: computers.

Every night, when no one else was around, he snuck into the computer room and taught himself how to program, write and play games.

In my senior year, I was still a bit of a "B Tree" in mind. I didn't apply for graduate school because I thought I was too busy playing games and programming and didn't study electronic engineering well.

Just as he was getting ready to pack up and graduate. One of his former teachers, Professor Berlekamp, applied for graduate school for him and passed. What a good professor!

Recall the professor when I graduated from the old K university, I changed my thesis for eight times and barely graduated after defending it twice. They're both professors. How can they be so different? Of course, that's the difference between the same students.

In graduate school, Ken Thompson graduated in just one year, you read that right, with a master's degree in electrical engineering and computer science.

02. Join Bell LABS

After graduate school, Ken Thompson's talent shocked the then famous Bell LABS, and offered him an olive branch. But Ken Thompson didn't like it. He thought I was young and talented and had hair and should have a chance to change the world.

But after repeated invitations from Bell LABS, he reluctantly agreed to visit.

This visit does not matter ah, he found hamming code inventor, information theory inventor, transistor inventor...... These amazing people, they all came out of Bell LABS.

Ken Thompson thought, isn't this where a genius like me should be? So he accepted the Offer from Bell LABS.


Messed up the Multics OPERATING System project

In 1966, Ken Thompson joined Bell LABS to work on a project called The Multics Operating System with Dennis Ritchie (the other Turing award winner at the beginning of this article).

Computer systems of that era were batch processing, running on large, slow, bulky machines that loaded program cards into the device and waited an hour to get results. Not only is it slow, but it's a waste of paper.

So Bell LABS, along with MIT and General Electric, wanted to build Multics operating system that could be used by many people, with multiple tasks and layers.

However, due to the pursuit of perfection, the development cycle is too long, the cost is high, and the output is not seen in the short term. On the importance of agile delivery, unfortunately it was not thought of that way in those days.

In 1969, Bell LABS was fed up and decided to pull out of the project.

For programmers, it is very common to mess up a project, just like K's 10 years of career failed projects, can write "failed series".

But to Ken Thompson's disappointment, he was no longer able to play a game he wrote called "Star Travel" because it was based entirely on Multics. Look at god, playing games is my main job, working is just a part-time job.

04. UNIX was developed to play games

In that case, develop your own operating system so you can continue playing games.

Technology is capricious ah, a word against the development of an operating system. So don't push programmers too hard, they can even do the operating system, what things can not do?

Ken Thompson found a long-abandoned old PDP-7 minicomputer, which in those days was the size of a room even though it was called a minicomputer! It was there that he first rewrote the game, and once it was there, Ken Thompson wanted to develop an entirely new operating system.

At the same time, his wife took the baby home for three weeks, which meant that he had three weeks of undisturbed time.

Therefore, he decided to use this period of time to develop an operating system. Based on his previous experience of screwing up the "Multics System", he completed a kernel system, a file system, an editor, and a compilation system in a short time, and even completed the kernel of the operating system in a month.

This story tells us how important it is for a man to have a wife away from home if he wants to make big things. Mrs. K, did you see that? See? There's a reason WHY OLD K isn't doing anything at his age. Eight times a day, even if you are king, but also glory up, huh?

When the System was finished, Ken Thompson called it UNiplexed Information and Computing System, or UNICS for short. It was renamed UNIX, and after a few changes, the first version of the UNIX operating system was born.

Ken Thompson was 26 that year.

UNIX works better with C

In October 1973, at an IBM symposium on the Principles of operating systems, UNIX greeted the world for the first time. When Ken Thompson and Dennis Ritchie read a paper and showed it off, the room exploded.

As UNIX became more popular, Ken Thompson and Dennis Ritchie decided to rewrite UNIX further so that it could be ported to a variety of hardware systems.

Because many of the UNIX source code is completed with assembly, do not have good portability, just Dennis Ricci in 1973 on the basis of B language developed C language. C is flexible, more efficient, hardware-independent and concise, which is what UNIX ports need.

The old UNIX and THE C language were perfectly combined to produce a new portable UNIX system. With the widespread use of UNIX, C became the most popular programming language of the time and continues to this day.

KISS, the classic UNIX design philosophy, was invented around that time -- Keep It Simple, Stupid.

06. Hackers and "Back Doors"

Ken Thompson also made a controversial move to build a back door into UNIX. Yeah, this guy poisoned the code.

In the beginning, UNIX was freely available at Bell LABS. Someone noticed that Ken Thompson had access to everyone's accounts, so a colleague analyzed UNIX code and recompiled the system.

Surprisingly, Ken Thompson still had access to their accounts, and the scientists at Bell LABS were unable to do anything about it.

It was not until Ken Thompson, in his Turing Award acceptance speech in 1983, revealed that the secret to hacking into his colleagues' accounts was not in the UNIX code but in the C compiler that compiled the UNIX code, and Ken Thompson was the developer of the compiler. This operation 666, you think you see through the god, but you just can't play him.

Richard Stallman, the famous hacker who invented free software with more hair and a beard as long as he did, once defined hacking as having three things: fun, intelligence, and a spirit of exploration, all at once.

Hackers are not after practical skills or money. Lao K as a technical practitioner, after years of efforts, I have met one of the spirit of hackers: fun. Mostly by other people, of course.

Richard Stallman, the father of free software

Perhaps it's easier to understand Ken Thompson's behavior from this point of view. He didn't violate the code of ethics. To him, it was hilarious. It is not difficult to find that the hacker's values are quite compatible with deyun Society.

07. Joined Google and participated in Golang language development

Ken Thompson retired from Bell LABS in 2000 at age 57. Yeah, this guy spent his entire career at Bell LABS, including a few years teaching UNIX systems at the university.

In retirement, however, the don was restless.

Ken Thompson joined Google in 2006. See, who says programmers can't get a job after 35? The key is technology, don't do more than 10 years of technology or write CRUD. If you're a tech player, you either have to go to the bottom, or you have to build it. Don't stand still.

After joining Google, Ken Thompson did another big thing.

Along with other brilliant scientists, he developed the Go language, or Golang. The main developers are: Ken. Ken Thompson and Rob Thompson. Rob Pike and Robert. Robert Griesemer. The other two are also gods, and have a chance to write more carefully.

Go = C + Python, indicating that Go has both the speed of C static language programs, and can achieve the rapid development of Python dynamic language.

Many Chinese tech companies are supporters of Go. For example, Xu Shiwei, CEO of Seven Niuyun, is one of the early Go users in China. He also published a book called Go Language Programming.

Write the most SAO code, drive the coolest plane

Ken Thompson didn't follow in the footsteps of many tech gurus who pursued bigger business dreams.

He worked at Bell LABS, at Google, doing what he loved to do.

In addition to writing programs, Ken Thompson was an avid flier and earned a pilot's license.

In his spare time, he and his colleagues would take a road trip. You don't have to envy god's life, you can have it, but first you have to have a plane.

Don't be upset if you don't have a plane. Maybe one day, you'll be able to call him.

You think god's done with his private jet? Ken Thompson takes his hobbies to the extreme.

In 1992 he went to Moscow to fly a Mig 229. A pilot who doesn't want to fly a fighter is a bad rider. Have money, leisure, courage, so capricious, do you have a way?

09, endnotes

Ken Thompson's contribution to the development of computer software is enormous. In addition to being the inventor of the UNIX system, during his career he developed the B programming language (a precursor to C), the UTF-8 code, the Ed text editor, and co-developed the Go programming language.

In addition to receiving the Turing Award, he has received several other highest honors:

In 1994, he received the IEEE(Institute of Electrical and Electronics Engineers) Computing Society Pioneer Award.

In 1998, he was awarded the U.S. National Medal of Science and Technology.

In 1997, he was selected to the Who's Who of the Computer History Museum.


Finally, I would like to share with you a famous quote from writer Luo LAN: "The meaning of success should be the harvest joy of a worthy heart after playing their strengths and doing their best, rather than for vanity or money."

The best time to plant a tree was ten years ago. The second best time is now. ** For those of you who are learning to program or are working, if you want to improve your programming skills, help you improve! ** I may be able to help you here ~

C language C++ programming learning exchange circle, **QQ group: [****951258402] ** wechat public number: C language programming learning base

Share (source code, project actual combat video, project notes, basic introduction tutorial)

Welcome to change careers and learn programming partners, use more information to learn and grow faster than their own thinking oh!

Programming learning video sharing:

About (Moment For Technology) is a global community with thousands techies from across the global hang out!Passionate technologists, be it gadget freaks, tech enthusiasts, coders, technopreneurs, or CIOs, you would find them all here.