实习生解雇_我们解雇了我们的顶尖人才。 我们做出的最佳决定。

实习生解雇

by Jonathan Solórzano-Hamilton

乔纳森·索洛萨诺·汉密尔顿(JonathanSolórzano-Hamilton)

我们解雇了我们的顶尖人才。 我们做出的最佳决定。 (We fired our top talent. Best decision we ever made.)

“You will never be able to understand any of what I’ve created. I am Albert F***ing Einstein and you are all monkeys scrabbling in the dirt.”

“您将永远无法理解任何 我创造的东西 我是 爱因斯坦(Albert F *** ing Einstein)和你们都是猴子在泥泞中挣扎。

And so our resident genius, our Dr. Jekyll, explosively completed his transformation into Mr. Hyde.

因此,我们的常驻天才杰基尔博士爆炸式地完成了他向海德先生的转变。

He declared this in front of the product design team, developers, management, and pre-launch customers. One of our project sponsors had the temerity to ask when the problem crippling our product would be fixed.

他在产品设计团队,开发人员,管理人员和预发布客户面前宣布了这一点。 我们的一位项目发起人曾急切地问,何时会解决困扰我们产品的问题。

Genius is a fickle beast. Sometimes you have the good fortune to work with a mad genius. Other times you are doomed to work with pure madness. There are also times when it is hard to tell the difference.

天才是善变的野兽。 有时,您有幸与一个疯狂的天才一起工作。 其他时候,你注定要疯狂地工作。 在某些情况下,很难分辨出差异。

This story is about the fall from grace of an extremely gifted team member with a deep understanding of our product’s architecture. He had an uncanny ability to forecast future requirements, and a ton of domain-specific knowledge.

这个故事是关于一个对我们的产品架构有深刻理解的极其有才华的团队成员的恩宠。 他具有预测未来需求的超乎寻常的能力,以及大量的特定领域知识。

He was our top contributor. He was killing our flagship project.

他是我们的杰出贡献者。 他正在杀死我们的旗舰项目。

We’ll call this person “Rick.”

我们称这个人为“里克”。

Rick was universally recognized on the team as the top talent. He was the lead developer and architect of our software projects.

里克被公认为车队中的顶尖人才。 他是我们软件项目的首席开发人员和架构师。

Any time anyone had a question about code or needed help with a task, they would go to Rick. Rick had a giant whiteboard installed in his office used only for this purpose. It was always cluttered with the ghosts of past discussions that wouldn’t quite erase.

每当有人对代码有疑问或在任务上需要帮助时,他们都会去Rick。 里克在他的办公室里安装了一块巨大的白板,仅用于此目的。 它总是被过去讨论的鬼魂弄得混乱不堪。

Any time there was a particularly challenging problem, Rick would handle it. Rick had a server with the same specs as our production server installed at his desk. He used this to run the entire application stack independently and troubleshoot every layer at once.

任何时候只要遇到特别具有挑战性的问题,Rick都会解决。 Rick的服务器与安装在办公桌上的生产服务器具有相同的规格。 他使用它来独立运行整个应用程序堆栈,并立即对每个层进行故障排除。

Rick didn’t need anybody else. Rick preferred to work alone in his private work-space.

里克不需要其他人了。 里克更喜欢在自己的私人工作空间中独自工作。

Rick didn’t need anything anybody else built. He built everything he needed from scratch because it was infinitely better than the paltry offerings of mere mortals.

瑞克不需要任何其他人建造的东西。 他从头开始构建了他需要的所有东西,因为它比纯粹的凡人提供的东西要好得多。

Soon, Rick stopped attending meetings. Rick didn’t have time for meetings any more because there was too much to code.

不久,里克停止参加会议。 瑞克再也没有时间开会,因为要编写的代码太多了。

Rick closed his door. His whiteboard lay fallow. Rick no longer had time to train anyone because he had too much to solve on his own.

里克关上了门。 他的白板休憩。 里克不再有时间训练任何人,因为他自己想解决的事情太多了。

A backlog grew behind Rick. Bugs were popping up in old tools he’d built. They sapped his attention from meeting commitments on new product development.

里克(Rick)的背后积压。 他构建的旧工具中出现了错误。 他们使他的注意力没有兑现对新产品开发的承诺。

Of course, these bugs were happening because the users had misstated their assumptions. Of course there wasn’t any problem in his work. Of course.

当然,这些错误的发生是因为用户错误地假设了他们。 当然,他的工作没有任何问题。 当然。

On our project dashboard, green flags changed to yellow. Yellow changed to red. Red lights started blinking. One by one, task statuses changed to “Impeded.” Everyone was waiting for Rick.

在我们的项目仪表板上,绿色标志变为黄色。 黄色变为红色。 红灯开始闪烁。 任务状态一一更改为“已提示”。 每个人都在等待里克。

The project manager got a six-month extension from the sponsor. At the end of the six months, production-readiness was estimated to be seven months away. At the end of a year, production-readiness was two years out.

项目经理从赞助商那里得到了六个月的延期。 在六个月结束时,估计已经可以生产七个月了。 到年底,生产就绪时间已经过去了两年。

Rick was churning out code faster than ever. He was working seven-day weeks, twelve hours a day.

瑞克比以往更快地编写代码。 他每周工作7天,每天工作12个小时。

Everyone knew only Rick could pull the team out of this mess. Everyone held their breath and waited for Rick to invent the miracle cure that would mend this crippled project.

每个人都知道,只有瑞克可以使团队摆脱困境。 每个人屏住呼吸,等待里克发明创造奇迹的疗法,以弥补这个残缺的项目。

Every day, Rick grew more belligerent and isolated. The mask was coming off. Jekyll was becoming Hyde.

每天,里克变得更加好战和孤立。 面具掉了。 Jekyll即将成为海德。

I participated in my first meeting with the project team about two years after the original agreed release date. I’d been aware of the project for a while, because it had grown infamous in my organization, but hadn’t been assigned to it.

在最初约定的发布日期之后约两年,我参加了与项目团队的第一次会议。 我已经知道这个项目一段时间了,因为它在我的组织中声名狼藉,但尚未分配给它。

I was sent in to see if we could save it.

我被送去看看我们是否可以保存它。

My first meeting on the project was the aforementioned “Albert Einstein” meeting.

我关于该项目的第一次会议是上述的“爱因斯坦”会议。

Hmm.

I dove into the source code. Rick was right: no-one could possibly understand what Rick had created. Except for Rick. It was a reflection of the workings of his own mind. Some of it was very clever, a lot of it was copy-pasta, it was all very idiosyncratic, and it was not at all documented.

我深入到源代码。 里克是对的:没有人可能理解里克创造的东西。 除了里克。 这反映了他自己的想法。 其中有些非常聪明,很多都是复制粘贴的 ,它们都非常特殊,并且完全没有记录在案 。

I went to our CIO with the verdict. Only Rick would ever be able to maintain this product. Plus, every day that Rick worked on the project moved the delivery date back a week. Rick was destroying our product faster than he was creating it.

我带着裁决去了我们的首席信息官。 只有Rick才能维护此产品。 另外,Rick在该项目上工作的每一天都将交货日期推迟了一周。 Rick销毁我们的产品的速度比其制造产品的速度快。

We sat down with Rick and had a conversation about his role in the project. We reviewed our concerns. We sidestepped his self-comparison to Albert Einstein.

我们与里克(Rick)坐下来,就他在该项目中的角色进行了交谈。 我们审查了我们的担忧。 我们回避了他与爱因斯坦的自我比较。

We explained our new strategy. The team was going to collaborate on building a new product from scratch.

我们解释了我们的新策略。 团队将合作从头开始构建新产品。

This effort would be very limited in scope and would only provide the bare essentials to get us to production. The whole team would contribute and be able to support it. No more bottlenecks.

这项工作的范围非常有限,只会提供使我们投入生产的基本要素。 整个团队将做出贡献并能够提供支持。 没有更多的瓶颈。

How did Rick react to this?

里克对此有何React?

The only way Rick could. Rick exploded.

里克唯一的办法。 里克爆炸了。

Rick wanted no part of this farce. If we couldn’t appreciate his genius, that was our fault, not his. Rick predicted that within months we’d come crawling back to him begging him to save us.

里克不想要这场闹剧。 如果我们不能欣赏他的天才,那是我们的错,而不是他的错。 里克预言,几个月后,我们会爬回他身边,恳求他拯救我们。

Rick screamed that we lacked the basic mental capacity to appreciate genius when it was staring us in the face.

里克尖叫说,当我们盯着我们的脸时,我们缺乏欣赏天才的基本心理能力。

Sadly, after this, Rick rejected months of overtures by leadership. He refused to take time off or allow any work to be delegated. He rejected repeated attempts to introduce free open source frameworks to replace his hard-to-maintain bespoke tools.

可悲的是,此后,里克拒绝了领导层几个月的提议。 他拒绝请假或允许委派任何工作。 他拒绝反复尝试引入免费的开放源代码框架来替换他难以维护的定制工具。

He reverted code changes — including tested bug fixes — by other developers. He asserted that he wouldn’t be held accountable for supporting other people’s work. He continued publicly belittling his colleagues.

他还原了其他开发人员的代码更改(包括经过测试的错误修复)。 他断言自己不会为支持他人的工作负责。 他继续公开贬低他的同事。

We fired Rick.

我们解雇了瑞克。

It took about a week for the dust to settle. It took time for the shocked team to gather themselves after losing their embattled guru.

尘埃落定大约花了一个星期。 震惊的团队在失去他们四面楚歌的大师后花了很多时间才能康复。

Then I saw them huddled around a whiteboard.

然后我看到他们挤在白板上。

They collaborated. They designed a replacement product. It would be much simpler.

他们合作了。 他们设计了替代产品。 这样会更简单。

It wouldn’t have all the bells and whistles. Nor would it anticipate requirements from five years down the product road map.

它没有所有的花招。 从产品路线图的五年来看,它也不会期望有任何需求。

Rick’s product supported a dynamic workflow with over fifteen thousand permutations. In reality 99% of our use cases followed one of three paths. The team hard-coded the workflow. This removed over 30% of Rick’s work.

Rick的产品支持具有一万五千多种排列的动态工作流程。 实际上,我们99%的用例遵循以下三种路径之一。 团队对工作流程进行了硬编码。 这删除了Rick超过30%的工作。

It wouldn’t have custom hand-coded components for every task. They stripped out every bespoke dependency that they could buy instead of build.

它不会为每个任务都提供自定义的手工编码组件。 他们剔除了可以购买而不是购买的所有定制依赖。

This removed hundreds of hours of Rick’s contribution. But it also removed thousands of hours of technical debt.

这消除了瑞克数百小时的贡献。 但这也消除了数千小时的技术债务 。

We obtained an agreement from the project sponsor to shut off some edge-case functionality.

我们从项目发起人那里获得了一项协议,以关闭某些极端情况下的功能。

This had served only 5% of our pre-launch user group and was responsible for about a quarter of the product’s complexity.

这仅服务于我们发布前的用户组的5%,约占产品复杂性的四分之一。

We re-released the product to this group. It consisted of 10% of Rick’s original code which was pretty stable. It also had a few thousand lines of new code to replace about 150,000 lines of incomprehensible mess.

我们将产品重新发布给该组。 它由Rick原始代码的10%组成,相当稳定。 它还有几千行新代码来替换约15万行难以理解的混乱。

The team had replaced five years of work in about six months. Over the next few months we expanded from pilot to full customer release.

该团队在大约六个月的时间里替换了五年的工作。 在接下来的几个月中,我们从试用版扩展到了完整的客户版本。

Not only had we replaced what Rick had built, we sped past him and fully launched the product — all in under a year. The result was less than a fifth the size and complexity of what Rick had built.

我们不仅更换了里克(Rick)所制造的东西,还超越了他,并在不到一年的时间内就全面推出了该产品。 结果不到Rick制造的产品的大小和复杂性的五分之一。

It was also hundreds of times faster and nearly bug-free despite having been assembled in a fraction of the time and serving ten times as many customers.

尽管组装时间只有一小部分,并且服务的客户数量是原来的十倍,但它的速度也快了数百倍,而且几乎没有错误。

The team went back to Rick’s other products. They threw away his old code there, too.

团队回到了Rick的其他产品。 他们也把他的旧密码丢掉了。

They re-released another product of his after three years in development, with three months of concerted team effort.

经过三个月的团队合作,他们经过三年的开发,重新发布了他的另一款产品。

There were no Ricks left on the team. We didn’t have any mad geniuses building everything from scratch. But our productivity was never higher.

团队中没有剩下Ricks。 我们没有任何疯狂的天才从头开始构建所有东西。 但是我们的生产力从未如此高。

Rick was a very talented developer. Rick could solve complex business logic problems and create sophisticated architectures to support his lofty designs. Rick could not solve the problem of how to work effectively on a team.

里克是一个非常有才华的开发人员。 Rick可以解决复杂的业务逻辑问题并创建复杂的体系结构以支持他的崇高设计。 里克无法解决如何在团队中有效工作的问题。

Rick’s presence was destructive in several ways.

里克(Rick)的到来在几个方面都具有破坏性。

First, he created a cult of dependence. Any problem eventually became a Rick problem, a myth he encouraged. Developers learned to stop trying and just wait for Rick.

首先,他创建了一种依赖性崇拜。 任何问题最终都变成了里克问题,这是他鼓励的神话。 开发人员学会了停止尝试,只等Rick。

Second, he didn’t write maintainable code. He never documented or tested anything, and so failed in spite of his own intelligence. His belief in his personal infallibility trumped common sense.

其次,他没有编写可维护的代码。 他从未记录或测试任何东西,因此尽管他有自己的智慧,但还是失败了。 他对个人无误的信念胜过常识。

Third, he was personally destructive. Team members didn’t want to speak up and offer their own ideas because he always berated them for it. Rick only respected Rick and went out of his way to make everyone else feel small.

第三,他个人具有破坏性。 团队成员不想大声说出自己的想法,因为他总是为此而指责他们。 里克只尊敬里克,并竭尽全力让其他人感到渺小。

Fourth, he lacked all personal accountability. No failure was his fault. He sincerely believed this, and it prevented him from learning from his own mistakes.

第四,他缺乏个人责任感。 没有失败是他的错。 他真诚地相信这一点,这使他无法从自己的错误中吸取教训。

I don’t believe Rick started out this way. I saw him at his worst. This was after years of working escalating overtime and facing increasing criticism from customers and colleagues.

我不相信里克是这样开始的。 我看到他处于最糟糕的状态。 这是经过多年加班工作以及面对客户和同事越来越多的批评之后的结果。

It’s sad that Rick descended this far. His manager shares in this responsibility. In fact, the original management team was held accountable: they were let go first.

可悲的是里克走了这么远。 他的经理分担这项责任。 实际上,最初的管理团队要承担责任:他们首先被放开了。

Unfortunately Rick was so far gone that he couldn’t, or wouldn’t, be brought back. No amount of coaching, feedback, time off, or assignment to other projects changed his toxic behavior.

不幸的是,里克已经走了很远,以至于他无法,也不会被带回来。 没有多少教练,反馈,休假或分配给其他项目改变了他的有毒行为。

By this point the whole team knew he was destructive. But the cult of dependence was so strong that everyone believed he was the only option.

至此,整个团队都知道他具有破坏性。 但是依赖的崇拜是如此强烈,以至于每个人都认为他是唯一的选择。

There is always another option.

总有另一种选择。

Your team’s strength is not a function of the talent of individual members. It’s a function of their collaboration, tenacity, and mutual respect.

您团队的实力与单个成员的才能无关。 这是他们的协作,坚韧和相互尊重的功能。

Focus on building teams that value each other and try to bring the best out of one another.

专注于建立彼此珍视的团队,并努力将彼此之间的优势融合在一起。

Together, they’ll be able to tackle greater challenges than Rick could ever fathom.

在一起,他们将能够解决比Rick难以想象的更大的挑战。

The events described in this essay took place many years ago and do not reflect the opinions or experience of my current employer.

本文中描述的事件发生在很多年前,并不反映我当前雇主的观点或经验。

I have published a follow-up story with our lessons learned if you are interested in reading more! You may also be interested in reading about my first job at a startup, which happened to be imploding around me.

如果您有兴趣内容,我已经发布了后续故事以及我们的经验教训 ! 您可能也有兴趣阅读有关我在一家初创公司的第一份工作,而这恰好在我周围崩溃 。

You can follow me here or on Twitter @jhsolor for more updates.

您可以在这里或在Twitter @jhsolor上关注我以获取更多更新。

Note: Some details (such as names) have been changed. I’ve never actually worked with anyone named Rick.

注意:某些详细信息(例如名称)已更改。 我从未真正与任何叫里克的人一起工作。

Jonathan leads enterprise software development and architecture teams.

Jonathan领导企业软件开发和体系结构团队。

He earned a Physics degree from Stanford University and has since spent over 10 years working in information systems architecture, data-driven business process improvement, and organizational leadership.

他获得了斯坦福大学的物理学学位,并且在信息系统体系结构,数据驱动的业务流程改进和组织领导方面工作了10多年。

翻译自: https://www.freecodecamp.org/news/we-fired-our-top-talent-best-decision-we-ever-made-4c0a99728fde/

实习生解雇

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/395380.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微信企业号第三方应用开发[二]——创建应用

在应用套件里添加应用 当你创建完应用套件后,需要在套件配置应用,应用的信息填写如下。 基本信息: 信息项要求及说明应用Logo应用的Logo,小于2M,640*640,在授权页会被用于展示。应用名称应用的名称&#xf…

es6新增的html标签,javascript – 如何导入已在html中的标签中定义的es6模块?

我可以在我的html文件me.html中定义一个模块:import Atom from ./atom.js;console.log("definition of getAtom")export default function getAtom(){return new Atom(atom);}console.log("exported getAtom")另见>是否可以将该“匿名”模块…

jQ效果:简单的手风琴效果

实现效果如图所示&#xff1a; html结构&#xff1a; <div class"item_box box10"><div class"item_box_wp"><div class"voice_2"><ul><li class"li1" id"li1"><div class"fold"…

golang 日志分析_容器日志采集利器:Filebeat深度剖析与实践

在云原生时代和容器化浪潮中&#xff0c;容器的日志采集是一个看起来不起眼却又无法忽视的重要议题。对于容器日志采集我们常用的工具有filebeat和fluentd&#xff0c;两者对比各有优劣&#xff0c;相比基于ruby的fluentd&#xff0c;考虑到可定制性&#xff0c;我们一般默认选…

机器学习做自动聊天机器人_建立聊天机器人需要什么? 让我们找出答案。

机器学习做自动聊天机器人by Vanco Stojkov通过Vanco Stojkov 建立聊天机器人需要什么&#xff1f; 让我们找出答案。 (What does it take to build a chatbot? Let’s find out.) Without any delay, the image below shows what we are building:没有任何延迟&#xff0c;下…

UVA 11582 Colossal Fibonacci Numbers!【数学】

大一刚开始接触ACM就买了《算法竞赛入门经典》这本书&#xff0c;当时只能看懂前几章&#xff0c;而且题目也没做&#xff0c;粗鄙地以为这本书不适合自己。等到现在快大三了再回过头来看&#xff0c;发现刘老师还是很棒的&#xff01; 扯远了。。。 题意&#xff1a;问f[a^b]%…

Codeforces 919D Substring (拓扑图DP)

手动博客搬家: 本文发表于20180716 10:53:12, 原地址https://blog.csdn.net/suncongbo/article/details/81061500 给定一个\(n\)个点\(m\)条边的有向图&#xff08;不一定无环&#xff09;&#xff0c;每个点上有一个小写字母。要找一条路径&#xff0c;使得路径上出现次数最多…

layui自定义查询条件html页面,Layui的数据表格+springmvc实现搜索功能的例子_飛雲_前端开发者...

如下所示&#xff1a;主要在前端页面加&#xff1a;搜索ID&#xff1a;useridcontent搜索在reload:function () {var keyWord$("#keyWord").val();var keyType$("#key_type option:selected").val();table.reload(contenttable,{method:post,where:{keyWor…

mysql+keepalived 双主热备高可用

理论介绍&#xff1a;我们通常说的双机热备是指两台机器都在运行&#xff0c;但并不是两台机器都同时在提供服务。当提供服务的一台出现故障的时候&#xff0c;另外一台会马上自动接管并且提供服务&#xff0c;而且切换的时间非常短。MySQL双主复制&#xff0c;即互为Master-Sl…

java ldap userpassword 解密_Spring Boot中使用LDAP来统一管理用户信息

LDAP简介LDAP(轻量级目录访问协议&#xff0c;Lightweight Directory Access Protocol)是实现提供被称为目录服务的信息服务。目录服务是一种特殊的数据库系统&#xff0c;其专门针对读取&#xff0c;浏览和搜索操作进行了特定的优化。目录一般用来包含描述性的&#xff0c;基于…

第三章之枚举、注解

2019-01-22内容&#xff1a;枚举、注解一、自定义一个枚举类1 public class TestSeason {2 3 public static void main(String[] args) {4 Season spring Season.Spring;5 System.out.println(spring);6 }7 }8 public class Season {9 //将属性定…

html打开后默认浏览器页面,使用VBA打开默认浏览器中的html页面?

您可以使用Windows API函数ShellExecute来执行此操作&#xff1a;Option ExplicitPrivate Declare Function ShellExecute _Lib "shell32.dll" Alias "ShellExecuteA" ( _ByVal hWnd As Long, _ByVal Operation As String, _ByVal Filename As String, _Op…

数据科学r语言_您应该为数据科学学习哪些语言?

数据科学r语言Data science is an exciting field to work in, combining advanced statistical and quantitative skills with real-world programming ability. There are many potential programming languages that the aspiring data scientist might consider specializi…

Linux平台不同解压缩命令的使用方法

作者&#xff1a;郭孝星 微博&#xff1a;郭孝星的新浪微博 邮箱&#xff1a;allenwells163.com 博客&#xff1a;http://blog.csdn.net/allenwells github&#xff1a;https://github.com/AllenWell 一 .tar 解包 tar xvf FileName.tar 打包 tar cvf FileName.tar DirName 注意…

unity中怎么做河流_【干货】工作中怎么做工业设计的?(一)

最近在找工作&#xff0c;一直在看招聘信息。看到工业设计工资还是蛮高的。应届毕业生一般是4-6K&#xff0c;1-3年工作经验是6-8K&#xff0c;3年以后的差不多是8K以上了。我没有嫉妒羡慕恨&#xff0c;发誓&#xff0c;真的没有。工业设计已经被重视&#xff0c;未来的道路会…

[易学易懂系列|golang语言|零基础|快速入门|(一)]

golang编程语言&#xff0c;是google推出的一门语言。 主要应用在系统编程和高性能服务器编程&#xff0c;有广大的市场前景&#xff0c;目前整个生态也越来越强大&#xff0c;未来可能在企业应用和人工智能等领域占有越来越重要的地位。 本文章是【易学易懂系列|编程语言入门】…

APUE学习之三个特殊位 设置用户ID(set-user-ID),设置组ID(set-group-ID),sticky...

设置用户ID&#xff08;set-user-ID&#xff09;&#xff0c;设置组ID&#xff08;set-group-ID&#xff09;&#xff0c;stickyset-user-ID: SUID当文件的该位有设置时&#xff0c;表示当该文件被执行时&#xff0c;程序具有文件所有者的权限而不是执行者的权限。这样说有点绕…

微信调用html退后方法,微信浏览器后退关闭页面

不需要引用 微信jssdk 关闭浏览器WeixinJSBridge.invoke(closeWindow, {}, function (res) { });参考&#xff1a;https://mp.weixin.qq.com/wiki/12/7dd29a53f4b55a8ddc6177ab60e5ee2c.html监听微信、支付宝等移动app及浏览器的返回、后退、上一页按钮的事件方法参考&#xff…

在gitlab 中使用webhook 实现php 自动部署git 代码

在技术团队讨论中&#xff0c;我们决定从svn 迁移到 git ,于是使用了gitlab&#xff0c;代码自动部署使用了webhook在服务器上 1.开启PHP需要的环境支持 服务器环境必须先安装git 环境&#xff0c;webhook 依赖php运行环境&#xff0c;同时需要使用shell_exec 和 exec 等函数。…

spi收发时的寄存器sr不变_「正点原子Linux连载」第二十七章SPI实验(二)

1)实验平台&#xff1a;正点原子Linux开发板2)摘自《正点原子I.MX6U嵌入式Linux驱动开发指南》关注官方微信号公众号&#xff0c;获取更多资料&#xff1a;正点原子文件bsp_spi.c中有两个函数&#xff1a;spi_init和spich0_readwrite_byte&#xff0c;函数spi_init是SPI初始化函…