及时沟通的重要性_沟通与代码同样重要
及時溝通的重要性
by Andrea Goulet
通過安德烈·古萊特(Andrea Goulet)
溝通與代碼同樣重要 (Communication Is Just As Important As Code)
This past weekend, I had the pleasure of being the closing keynote at Ruby Nation. I expanded on one of the core values at Corgibytes: Communication Is Just As Important As Code.
在過去的這個周末,我很高興成為Ruby Nation的閉幕主題演講。 我擴展了Corgibytes的核心價值之一 :通信與代碼一樣重要。
Below is pretty much a transcript of my talk. I got great feedback and am looking forward to presenting on this topic more. If you organize a conference and want to chat about me speaking, please get in touch.
以下是我演講的筆錄。 我得到了很好的反饋,并期待著更多地介紹這個話題。 如果您組織會議并想聊我的演講,請保持聯(lián)系 。
Ruby Nation is near and dear to my heart because this was the first software conference I ever attended. I saw yesterday during one of the raffle questions that a few people in the audience today who are new to coding. Your first tech conference can be intimidating. I know how you feel because that was me six years ago.
Ruby Nation貼近我的心,因為這是我參加過的第一次軟件會議。 昨天我在抽獎問題之一中看到,今天的聽眾中有一些剛接觸編碼的人。 您的第一次技術(shù)會議可能令人生畏。 我知道你的心情,因為那是六年前的我。
A few months before my first Ruby Nation conference, I connected with a good friend, Scott, from high school at our ten-year reunion. He was the stereotypical computer programmer. When folks asked what he did, and he said he programmed computers, most people replied “Yep. Saw that coming.”
在我第一次舉行Ruby Nation會議的幾個月前,我與我們十年重逢的高中時的一個好朋友Scott有了聯(lián)系。 他是定型計算機程序員。 當(dāng)人們問他做了什么時,他說他對計算機進行了編程,大多數(shù)人回答“是的。 看到了?!?
I was not your stereotypical programmer. While I grew up with technology from an early age, as a woman, my generation was actively discouraged from believing we could participate in that industry. When I was nine, I didn’t have Hello Ruby or Goldiblox. I had Teen Talk Barbie, who told me that math was hard, and shopping was fun.
我不是你的定型程序員。 當(dāng)我從小就開始使用技術(shù)成長時,作為一個女人,我這一代人一直很沮喪,因為他們認(rèn)為我們可以參與該行業(yè)。 當(dāng)我九歲的時候,我沒有Hello Ruby或Goldiblox。 我有Teen Talk芭比娃娃 ,他告訴我數(shù)學(xué)很難,而且購物很有趣。
So, I went in the direction that was culturally appropriate for me, and I became your stereotypical marketer.
因此,我朝著文化上適合我的方向發(fā)展,并成為了您的定型營銷商。
Anyway, at the reunion, Scott approached me and said he had a business. He had built a software product, but hadn’t made any sales in eighteen months. He had a marketing problem. And suddenly, my skills weren’t annoying. They were valuable.
無論如何,在聚會時,斯科特走近我,說他有生意。 他開發(fā)了一種軟件產(chǎn)品,但在18個月內(nèi)沒有任何銷售。 他有行銷問題。 突然之間,我的技能并沒有令人討厭。 他們很有價值。
He wanted to know if I would join him as his CEO to help him achieve his dream. He’d be Woz, and I’d be Jobs. I knew a lot about building businesses, but I didn’t know about software but figured I could learn. So we started Corgibytes together and a few months later headed off to Ruby Nation.
他想知道我是否愿意和他一起擔(dān)任首席執(zhí)行官,以幫助他實現(xiàn)自己的夢想。 他將成為沃茲,而我將成為喬布斯。 我對建立業(yè)務(wù)非常了解,但對軟件卻不了解,但認(rèn)為自己可以學(xué)習(xí)。 因此,我們一起啟動了Corgibytes,幾個月后前往Ruby Nation。
In 2010, things were a little different. At my first technology conference, I was one of just two or three women in the room. Most of the room looked like Scott. But there was some diversity. Some of the men had different color hair and glasses, and there were even some who didn’t have beards.
在2010年,情況有所不同。 在我的第一次技術(shù)會議上,我只是會議室中的兩三個女人之一。 大部分房間看起來像斯科特。 但是有一些多樣性。 有些男人的頭發(fā)和眼鏡顏色不同,甚至有些沒有胡須。
I didn’t understand most of the talks. Right before lunch, I felt like an outsider who didn’t belong. I thought about leaving.
我聽不懂大部分的談話。 午飯前,我感覺自己像一個不屬于自己的局外人。 我想離開。
Then, at lunch, I met Dave Bock. Then later, Jim Gay. They both made me feel like I did belong, even though I didn’t look like everyone else and was new to programming.
然后,在午餐時間,我遇到了戴夫·博克 。 然后, 吉姆·蓋伊 ( Jim Gay) 。 他們都讓我覺得自己確實屬于我,盡管我看上去并不像其他人一樣,而且對編程還是陌生的。
As I kept learning, the Ruby community was incredibly welcoming. You told me:
在我不斷學(xué)習(xí)的過程中,Ruby社區(qū)非常受歡迎。 你告訴過我:
- You belong here. 你屬于這里
- How can we make it better? 我們?nèi)绾尾拍苁蛊涓?#xff1f;
- I believe in you. 我相信你。
One of the folks I met at my first conference was Jeff Casimir, who now runs the Turing School. He gave a talk about being a polyglot developer, which is someone who codes in several languages. I felt so welcome and encouraged by my new friends that I worked up the gumption to give a lightning talk.
我在第一次會議上遇到的一位人是杰夫卡西米爾 ( Jeff Casimir) ,他現(xiàn)在經(jīng)營圖靈學(xué)校 。 他發(fā)表了關(guān)于成為一名多語言開發(fā)人員的演講,該開發(fā)人員使用多種語言進行編碼。 我受到新朋友的歡迎和鼓勵,以至于我冒犯了閃電。
I stood up on stage, brand new to coding, and suggested there was another language folks could add to their tech stack… English!
我站在舞臺上,是編碼的新手,并建議人們可以在他們的技術(shù)堆棧中增加另一種語言……英語!
We are quickly approaching a world where communication skills are no longer optional. You can’t choose between being technical or non-technical. You have to be both.
我們正在Swift接近一個溝通技巧已不再是可選的世界。 您不能選擇技術(shù)性還是非技術(shù)性。 你們兩個都要。
So I’d like to teach you what I know about communication, just like you taught me how to code.
因此,我想教您關(guān)于溝通的知識,就像您教我如何編碼一樣。
In twenty minutes, I’m going to give you the most salient points of what I’ve learned about communicating in the past fifteen years. Now, this was tough to distill down. I could probably write an entire book on this topic, but I think it starts by asking the question: what is communication?
在二十分鐘內(nèi),我將為您提供我在過去十五年中所學(xué)到的最重要的交流知識。 現(xiàn)在,很難將其提煉出來。 我可能會寫一本關(guān)于該主題的整本書,但我認(rèn)為這首先要問一個問題:什么是交流?
We can look at events. Some events have to happen at the same time. They’re synchronous. Others don’t have to happen at the same time. They’re asynchronous.
我們可以看一下事件。 有些事件必須同時發(fā)生。 它們是同步的。 其他人不必同時發(fā)生。 它們是異步的。
There are some obvious synchronous examples here: phone calls, meetings, Screenhero. And Twitter, text messages, email — those are asynchronous.
這里有一些明顯的同步示例:電話,會議,Screenhero。 而Twitter,短信,電子郵件-是異步的。
Then there are some non-obvious forms of communication.
然后有一些非顯而易見的交流形式。
On the synchronous side, things like eye contact, body language, and whether or not you show up to an event on time.
在同步方面,諸如眼神交流,肢體語言以及是否按時參加某個事件之類的事情。
Those happen at the same time, but because they’re non-verbal, we don’t often think of them as communication.
這些是同時發(fā)生的,但是因為它們不是語言,所以我們并不經(jīng)常將它們視為交流。
There’s also idle chit-chat. If you’re talking about work in a non-work context, that’s still communication. When you’re in the buffet line at your cousin’s wedding, and someone asks what you do, you are having an impact on the sales of your company, whether you know it or not.
還有閑聊。 如果您是在非工作環(huán)境中談?wù)摴ぷ?#xff0c;那仍然是交流。 當(dāng)您在表哥的婚禮上參加自助餐時,并且有人問您做什么時,無論您是否知道,這都會對公司的銷售產(chǎn)生影響。
On the asynchronous side, we have things like commit messages, which we believe will always be the best form of documentation. Think of the times you’ve run git blame and then had the code in question’s author come up as yourself. Explaining the rationale of your commits is super helpful to others. It’s even helpful to your future self.
在異步方面,我們擁有諸如提交消息之類的東西,我們相信它們永遠是文檔的最佳形式。 考慮一下您運行git blame的時間 ,然后讓有問題的代碼的作者自己提出。 解釋您提交內(nèi)容的理由對其他人超級有幫助。 它甚至對您未來的自我有幫助。
We also have names: variables, methods, classes. Writing scenarios in Cucumber and examples in RSpec. Are you naming things in a way that makes sense to other people? Or are foo and bar your best friends? If you want to know more about naming, I suggest reading Arlo Belshee’s series on How Naming is a Process, Not a Single Step.
我們也有名稱:變量,方法,類。 在Cucumber中編寫腳本,在RSpec中編寫示例。 您是否以對其他人有意義的方式命名事物? 還是foo和bar是您最好的朋友? 如果您想了解有關(guān)命名的更多信息,建議閱讀Arlo Belshee的有關(guān)命名是如何處理而不是一步的系列。
Okay. Back to the grid.
好的。 回到網(wǎng)格。
Many of us are consultants and have to fill out timesheets. Do you fill out the comments? That’s a form of communication.
我們許多人都是顧問,必須填寫時間表。 您是否填寫評論? 那是一種溝通方式。
We do code reviews on pull requests. Those comments that you leave? Yep. You guessed it. Communication.
我們對請求請求進行代碼審查。 您留下的那些評論? 是的 你猜到了。 通訊。
And finally, my biggest pet peeve: error messages. How many of you have ever come across a completely useless error message when you’re working? It’s so frustrating! I sometimes feel like my mission in life is to rid the world of bad error messages by teaching developers how to communicate well.
最后,我最大的煩惱:錯誤消息。 在您工作時,有多少人遇到過完全無用的錯誤消息? 太令人沮喪了! 有時,我的人生使命是通過教開發(fā)人員如何進行良好的溝通來消除錯誤的錯誤消息。
So here’s how I define communication: It’s just the artifacts of your ideas. That’s it. Communication isn’t all that different than code, and it’s just as important.
因此,這就是我定義交流的方式:這只是您的想法的產(chǎn)物。 而已。 溝通與代碼并沒有什么不同,它同樣重要。
So at Corgibytes, all we do is legacy code. We do a lot of upgrading from Rails 2 or 3 apps, adding automated test suites, paying down tech debt. I sometimes say we’re the janitors of the internet.
因此,在Corgibytes,我們要做的就是遺留代碼。 我們從Rails 2或3應(yīng)用程序進行了大量升級,添加了自動測試套件,還清了技術(shù)債務(wù)。 有時我會說我們是互聯(lián)網(wǎng)的看門人。
But we’re the happiest damn janitors you’re ever likely to meet. We really like what we do. And a lot of is because we emphasize communication.
但是,我們是您可能遇到的最幸福的管理員。 我們真的很喜歡我們的工作。 這主要是因為我們強調(diào)交流。
Most people hate working on legacy code. A big part of the reason for this is that legacy code is notoriously void of communication.
大多數(shù)人不喜歡使用遺留代碼。 造成這種情況的很大一部分原因是,眾所周知,遺留代碼沒有通信。
Michael Feathers defines legacy code as “code without tests,” but I’d like to expand upon that. It’s code without communication artifacts, of which tests are just a small part. Without communication, working on a codebase you didn’t write is difficult.
Michael Feathers 將遺留代碼定義為“沒有測試的代碼”,但是我想對此進行擴展。 它是沒有通信工件的代碼,其中的測試只是一小部分。 沒有溝通,在您未編寫的代碼庫上工作將很困難。
Okay. So why does this matter?
好的。 那么為什么這很重要呢?
Three reasons.
三個原因。
First, getting better at your communication is the best way to level up your career.
首先, 更好地溝通是提升職業(yè)水平的最佳方法 。
If you want to be a Lead Developer, a CTO, or own your own business, communicating effectively with people who don’t code every day is a big part of your job.
如果您想成為首席開發(fā)人員,CTO或擁有自己的業(yè)務(wù),那么每天與不使用代碼的人進行有效的溝通是您工作的重要部分。
If you want people to contribute to your open source project, communication is what makes them feel welcome and keeps them around.
如果您希望人們?yōu)槟拈_放源代碼項目做出貢獻,那么交流就是讓他們感到受歡迎并與他們保持聯(lián)系的原因。
And if you want other people to use your ideas, you need to learn how to blog, speak, and maybe even write books. All of that is communication.
而且,如果您希望其他人使用您的想法,則需要學(xué)習(xí)如何寫博客,說話甚至寫書。 所有這些都是溝通。
The next reason is that communication builds trust.
下一個原因是溝通建立了信任 。
In her book, Daring Greatly, Brené Brown describes trust as a marble jar. Her daughter’s teacher would drop a marble in a jar when the class behaved, and when they got to the top, they got a pizza party. Trust works the same way. It’s built over time by a series of very small interactions.
布蘭妮·布朗(BrenéBrown)在她的《 大膽的冒險》一書中將信任描述為一個大理石罐。 上課的時候,她女兒的老師會把大理石放到罐子里,當(dāng)他們登上頂峰時,他們會參加披薩派對。 信任的工作方式相同。 它是由一系列很小的交互作用隨時間而建立的。
Those small interactions are communication. Every artifact is a marble in the jar. Every time you leave an artifact of your ideas, you are communicating, and building trust.
那些小的互動就是交流。 每個神器都是罐子里的大理石。 每次您留下想法時,您都在交流并建立信任。
And finally, good communication is the best way to ensure that you don’t run around and fight fires all the time.
最后, 良好的溝通是確保您始終不會到處亂跑和滅火的最好方法 。
At Corgibytes, one of our core values is Calm the Chaos. We believe the best solutions to problems don’t happen when you’re stressed out and pumped full of adrenaline. They come when you’re calm, rational, and using your prefrontal cortex. That can only happen when your culture is soaked in good communication.
在Corgibytes,我們的核心價值觀之一是“平靜混沌”。 我們相信,當(dāng)您承受著壓力并充滿腎上腺素時,就不會出現(xiàn)解決問題的最佳方案。 當(dāng)您保持冷靜,理性并使用額葉前皮質(zhì)時,它們就會來。 只有當(dāng)您的文化與良好的溝通交流融為一體時,才會發(fā)生這種情況。
The good news is that there are several patterns and frameworks we can lean on to improve our communication. I’m going to go over my three favorites.
好消息是,我們可以依靠幾種模式和框架來改善溝通。 我將介紹我的三個收藏夾。
But first, let’s note how these aren’t static. In his book Refactoring to Patterns, Joshua Kerievsky talks about how you can move toward patterns— or away from them — through all of the small choices you make. Improving your communication works the same way. It takes awareness, and happens when you make the conscious choice refactor your habits.
但是首先,讓我們注意一下這些不是靜態(tài)的。 約書亞·科列夫斯基(Joshua Kerievsky)在他的《 重構(gòu)為模式》一書中,談到了如何通過做出的所有小選擇而朝著(或遠離)模式前進。 改善溝通的方式是相同的。 它需要意識,并且在您做出有意識的選擇來重構(gòu)您的習(xí)慣時會發(fā)生。
The first concept we’ll touch on is about context switching. There is a real cost associated with this. You know it. But how do you communicate this fact with your teammates who don’t code?
我們將涉及的第一個概念是上下文切換。 有一個與此相關(guān)的實際成本。 你知道的。 但是,您如何與不編寫代碼的隊友交流這一事實呢?
I’ve written a detailed blog post on this, but in short, here’s how I learned to do this.
我已經(jīng)寫了一篇詳細的博客文章 ,但是總之,這是我學(xué)會的方法。
For years, when I needed to get Scott’s attention, I’d ask, “Hey, Scott — you got a sec?” I thought it was polite. I wanted to honor his time and not bother him if he was busy. At the same time, I was usually blocked.
多年以來,當(dāng)我需要引起Scott的注意時,我會問:“嘿,Scott-你有幾秒鐘?” 我認(rèn)為這很客氣。 我想尊重他的時間,如果他很忙,就不要打擾他。 同時,我通常被封鎖。
I tried not to disturb him needlessly. The answer could have well been “no,” and my response would have been, “No worries. Get back to me when you can.” But it never happened that way. Instead, I got complete and utter frustration.
我盡力不要不必要地打擾他。 答案很可能是“否”,而我的回答將是“不用擔(dān)心。 如果可以,請盡快與我聯(lián)系?!?但是從來沒有那樣。 相反,我感到完全沮喪。
One day, after Scott got frustrated, he responded, “I was at level Nine.”
有一天,斯科特感到沮喪后,他回答說:“我當(dāng)時是9級?!?
“Level Nine?”
“九級?”
“Yeah. Like in the movie Inception.”
“是的。 就像電影《盜夢空間》一樣?!?
In the movie Inception, there’s the idea of a “dream within a dream.” This happens in engineering too: a mental model within a mental model. The more models you have to keep in your mind at one time, the more time it takes to build up to that state. If you come out of it too quickly, you almost get the mental equivalent of decompression sickness.
在電影《盜夢空間》中,有一個“夢中有夢”的想法。 這也在工程中發(fā)生:心智模型中的心智模型。 您一次要記住的模型越多,建立該狀態(tài)所需的時間就越多。 如果您過快地擺脫它,您將在精神上相當(dāng)于減壓病。
So we developed a framework to help us communicate whether we’re interruptable.
因此,我們開發(fā)了一個框架來幫助我們交流是否可中斷。
If all he has to do is label where he is, he can communicate whether he’s interruptible without switching context. Anything above two, and he comes back to me when he’s safely back on the surface.
如果他要做的只是標(biāo)記他在哪里,他可以在不切換上下文的情況下傳達他是否可打擾。 任何高于2的東西,當(dāng)他安全地回到地面時,他都會回到我身邊。
Next is what I call the Shattering Glass pattern.
接下來就是所謂的“碎玻璃”圖案。
You want to be less like Ted and more like Tina.
您希望不像特德,而更像蒂娜。
In the show How I Met Your Mother, Ted starts to notice how often he says the words, “Well, actually.” And every time he does. Glass shatters above his brain as he realizes how much he does this.
泰德(Ted)在節(jié)目《我如何與母親見面》中開始注意到他說“好吧,實際上”的頻率。 而且每次他這樣做。 當(dāng)他意識到自己做了多少事情時,玻璃在他的大腦上方粉碎了。
This language is divisive. His friends don’t like it. And your marketing friends like this about as much as you like it when they say, “Do you have a sec?”
這種語言是分裂性的。 他的朋友們不喜歡它。 當(dāng)您的營銷朋友說“您有時間嗎?”時,您會喜歡它,就像您喜歡它一樣。
A better way to do this is to replace your well actually with “Yes, and…”
更好的方法是用“是的,然后…”代替您的油井。
This comes from Tina Fey’s book Bossypants, where she describes how she learned improv. “Yes, and…” is language that unites.
這來自蒂娜·菲(Tina Fey)的書《 Bossypants》,其中描述了她如何學(xué)習(xí)即興創(chuàng)作。 “是,并且……”是統(tǒng)一的語言。
For example, let’s say a client comes to you with a requested scope change. That never happens, right?
例如,假設(shè)某個客戶向您提出請求的范圍更改。 那永遠不會發(fā)生,對吧?
“Well actually, that’s not in the contract….” promotes hostility and defensiveness. So here’s a different way you can say the same thing that promotes collaboration.
“實際上,這不在合同中……” 促進敵對和防御。 因此,您可以通過不同的方式說出促進協(xié)作的觀點。
“Yes. I see how that’s important to you. And we’ve already started a sprint. Let’s have a conversation about how that change will impact things and find a way that works for both of us.”
“是。 我知道那對您很重要。 而且我們已經(jīng)開始沖刺了。 讓我們討論一下這種變化將如何影響事物并找到一種對我們倆都有效的方式?!?
So the last pattern is how to avoid sounding like a jerk.
因此,最后一個模式是如何避免聽起來像個混蛋。
This is Kim Scott’s Radical Candor framework.
這是Kim Scott的Radical Candor框架。
There are two axes. The way Kim Scott describes them is the vertical one labeled “Caring Personally” is what she calls the “give a damn axis.” The other, labeled “Challenge Directly” she says is the “willing to piss people off” axis.
有兩個軸。 金·斯科特( Kim Scott) 形容他們的方式是垂直的標(biāo)簽為“關(guān)懷個人”,她稱之為“給該死的軸”。 她說,另一個標(biāo)簽是“直接挑戰(zhàn)”,是“愿意讓人們生氣”的軸心。
When you give feedback, you want to be both. And she gives the acronym of HHIPP to remember how to speak with Radical Candor:
當(dāng)您提供反饋意見時,您希望兩者兼得。 她使用HHIPP的首字母縮寫來記住如何與Radical Candor對話:
“Radical candor is humble, it’s helpful, it’s immediate, it’s in person — in private if it’s criticism and in public if it’s praise — and it doesn’t personalize.” That last P makes a key distinction: “My boss didn’t say, ‘You’re stupid.’ She said, ‘You sounded stupid when you said um.’ There’s a big difference between the two.” -Kim Scott“激進的坦率是謙虛的,有用的,直接的,親自面對的-如果是批評則是私下的,如果是贊揚則是公開的-并且不個性化。” 最后一個P有一個關(guān)鍵的區(qū)別:“我的老板沒有說,'你很愚蠢。' 她說:“當(dāng)你說嗯時,你聽起來很蠢。” 兩者之間有很大差異?!?-金·斯科特If you get nothing out of this talk, remember: communication is a skill. You can learn it. If you can learn how to code, you can learn how to communicate.
如果您從這次談話中沒有得到任何幫助,請記住:溝通是一種技巧。 您可以學(xué)習(xí)它。 如果您可以學(xué)習(xí)編碼,則可以學(xué)習(xí)交流。
And know that I believe in you. Just like you believed in me and told me I could learn how to code when I didn’t believe in myself, let me offer you my full support.
并且知道我相信你。 就像您相信我并告訴我,如果我不相信自己,我可以學(xué)習(xí)編碼,讓我為您提供全力支持。
Here are some resources to help you get started.
這里有一些資源可以幫助您入門。
My challenge to you is to think back to Elle’s first talk that opened this conference. Adopt a growth mindset. Believe you can learn and find a book or a class to get you started.
我面臨的挑戰(zhàn)是回想起Elle在本次會議上的第一次演講。 采取成長心態(tài)。 相信您可以學(xué)習(xí)并找到書籍或課程來入門。
Dive in and get curious about communication the same way you learned how to code.
與學(xué)習(xí)編碼的方式一樣,潛入并好奇于交流。
And I’m happy to help you. Here’s my contact information. I hope you reach out to me on Twitter and tell me about what you’re up to.
很高興為您提供幫助。 這是我的聯(lián)系方式。 希望您能在Twitter上與我聯(lián)系,并告訴我您的打算。
If you happen to like legacy code, I hope you join our community over at LegacyCode.Rocks. There’s a slack channel where you can hang out with other folks who love remodeling software.
如果您碰巧喜歡舊代碼,希望您加入LegacyCode.Rocks加入我們的社區(qū)。 有一個閑散的頻道,您可以在這里與喜歡重塑軟件的其他人一起出去玩。
And I blog over at Empathy Driven Development, so if there’s anything you want to contribute, please get in touch.
我在Empathy Driven Development上寫博客,因此,如果您想貢獻什么,請聯(lián)系。
And here’s a link to my calendar so we can schedule a synchronous event and get to know each other better. I really hope to hear from you.
這是指向我的日歷的鏈接,因此我們可以安排同步事件并更好地了解彼此。 我真的希望收到您的來信。
And yes, I have stickers.
是的, 我有貼紙 。
Thank you.
謝謝。
This post originally appeared on Corgibytes.com
該帖子最初出現(xiàn)在Corgibytes.com上
翻譯自: https://www.freecodecamp.org/news/communication-is-just-as-important-as-code-c92c709329ab/
及時溝通的重要性
總結(jié)
以上是生活随笔為你收集整理的及时沟通的重要性_沟通与代码同样重要的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 女人梦到女人是什么意思
- 下一篇: github 建立_建立在线社区:Git
