《程式碼英雄》第五季(2):寫程式碼的地方

Red Hat發表於2022-10-05

程式碼英雄講述了開發人員、程式設計師、駭客、極客和開源反叛者如何徹底改變技術前景的真實史詩。

什麼是《程式碼英雄》

程式碼英雄Command Line Heroes是世界領先的企業開源軟體解決方案供應商紅帽(Red Hat)精心製作的原創音訊播客,講述開發人員、程式設計師、駭客、極客和開源反叛者如何徹底改變技術前景的真實史詩。該音訊部落格邀請到了谷歌、NASA 等重量級企業的眾多技術大牛共同講述開源、作業系統、容器、DevOps、混合雲等發展過程中的動人故事。

本文是《程式碼英雄》系列播客《程式碼英雄》第五季(2):程式設計師寫程式碼的地方 的 音訊 指令碼。

導語:家庭辦公室、企業園區、聯合辦公空間、有趣的校園。程式設計師們希望在工作場所方面有所選擇。將普通的工作空間從辦公室轉移到家裡,揭示了在家裡工作的好處,但也突出了它的權衡。

Saron Yitbarek 和 Clive Thompson 透過考慮工作場所繼續他們對編碼職業的討論。Mary Allen Wilkes 分享了她作為第一個在家工作的開發者的經驗。David Heinemeier Hansson 認為遠端工作使他的同事有時間進行深入思考。Dave West 解釋了為什麼他認為面對面的工作仍然能產生最好的結果。Maude Mensah Simpson 權衡了家庭辦公室的自由與失去面對面交流的機會。

00:00:02 - Saron Yitbarek

你們好,歡迎來到《程式碼英雄Command Line Heroes》,一檔紅帽Red Hat的原創播客節目。這是我們有關程式設計師,無論是開發人員到系統管理員,以及架構師、工程師、程式設計師,工作生活的迷你特別季的第 2 集。我是你們的主持人 Saron Yitbarek,和我一起參與到這一季的是 Clive Thompson,他是記者、技術向作家以及《碼農:新部落的建立和世界的重塑Coders: The Making of a New Tribe and the Remaking of the World》一書的作者。你好, Clive。

00:00:30 - Clive Thompson

你好 Saron。很感謝你能再次邀請我來。

00:00:31 - Saron Yitbarek

感謝你加入我們,Clive。在這一集裡,讓我們談談到目前為止,我們當中很多人(不僅僅是技術人員)非常熟悉的一些東西,因為我們大多數人自從 2020 年 3 月以來就不得不這麼做 —— 遠端工作。現在,你可能認為遠端工作在我們的行業裡是相對較新的現象。隨著技術的進步,在家中工作變得更為容易。先再想一下,讓我們來聽聽這位開發人員的故事。

00:01:00 - Mary Allen Wilkes

嗯,我的名字叫 Mary Allen Wilkes。1959 年到 1972 年間,我做了十二三年的計算機程式設計師。

00:01:14 - Saron Yitbarek

Mary Allen 已經 82 歲了。在她青少年時期,她迷上了法律,想當一名律師,但是在 50 年代這對一名女性而言並不是一個明智的職業選擇。她的導師勸阻了她,並告訴她這將會十分困難。偶然的一次機會,她的一位老師為她描繪了另一條路線。

00:01:36 - Mary Allen Wilkes

我在讀八年級時的某天,在上一個地理老師的課時被這位老師指引了那條路線。當時我應該是給他講述了自己對某件事情的論點,而他停了下來並看著我說:“Mary Allen,你長大以後應該成為一名計算機程式設計師。” 好吧,我那時並不知道他在說什麼。多年以後,我很想知道他是否清楚他當時正在說的是什麼。他教授地理和法語,而沒有人教計算機程式設計。但是我永遠都忘不了他的話。而且我認為讓我多年難以忘懷這個目標的一個原因是,這是一個成年人告訴我長大以後可以做一件積極的事情。

00:02:22 - Saron Yitbarek

當 Mary Allen 從大學畢業並且開始求職時,唯一有計算機程式設計師職位的地方是 MIT。沒有人接受過計算機程式設計方面的任何訓練。她的主要資格條件是她在大學裡上過的兩門邏輯學課程,但這已經比她在 MIT 的同事多了。

00:02:41 - Mary Allen Wilkes

我開始在 馬薩諸塞州Massachusetts 列剋星敦市Lexington 的 林肯實驗室Lincoln Laboratory 工作,這是由美國國防部資助的一個大型的 MIT 研究機構。那時候是 1959 年,我第一次知道他們正在使用這些非常巨大的計算機,能佔據整個房間的那種。這是我最初學習程式設計的機器。它們是 IBM 計算機。你用匯編語言逐行編寫好你的程式,然後把這些紙片交給打孔卡操作員,她們會把你的程式打在打孔卡punch card上。然後你將其帶到計算機室,交給計算機操作員。

00:03:29 - Saron Yitbarek

1961 年, Mary Allen 被分配到一個小組,在 Link 計算機上工作,這是一款實驗室儀器式微型計算機。它是第一批真正的互動式計算機之一,與當今的臺式計算機有些相似。

00:03:44 - Mary Allen Wilkes

Link 有一塊螢幕。我們稱之為“視窗the scope”,因為它事實上就是一個實驗室示波器。它有四個可以放在桌面上的盒子,一個裝著這臺示波器的盒子、一個裝有兩個袖珍大小的小型磁帶裝置的盒子。基本上你可以把它想象成你的永久儲存器、硬碟驅動器。那是你儲存和讀入你的程式的地方。另一個盒子被稱為控制檯盒子。你可以用開關來載入某些程式碼(比如某些引導程式碼)到 Link 的記憶體裡。它也有個鍵盤。因此,你擁有你現如今會有的基本互動式配置,鍵盤、螢幕以及某種形式的永久儲存器。然後當然還有所有的電子元器件,它們都被裝載一個大約和一臺冰箱差不多大小的大箱子裡。

00:04:43 - Saron Yitbarek

1964 年, Link 小組做了一個艱難的決定,從 MIT 遷至 密蘇里州Missouri 聖路易斯St. Louis 的華盛頓大學,但是 Mary Allen 不想去。

00:04:54 - Mary Allen Wilkes

我不想立馬就搬到聖路易斯。我一點都沒有想搬去那裡的想法。我想要做的是為 Link 寫一個合適的作業系統,因為到那時為止,我們所擁有的只是我在 1962 和 1963 年所編寫的相當基礎的小彙編程式。我說:“我可以寫它。我可以在家裡寫它。”

00:05:20 - Saron Yitbarek

Link 小組的負責人 Wesley Clark 認為這個想法不錯。

00:05:25 - Mary Allen Wilkes

我對他說:“我想要寫作業系統。”我可能是當時唯一一個能夠寫這個作業系統的人。因此,Wesley 只是說:“好吧,沒問題。為們會給你送來一臺 Link。你可以在家裡使用它。”這就是它的經過。一天,我們實驗室的幾個人開著一輛小貨車來了,並帶來了四個箱子,四個模組和冰箱大小的東西,裝著電子裝置與儲存器等等。他們把這些東西運到了我父母在 巴爾的摩Baltimore 的客廳。除了他們不得不為此拉了一條 20 安培的電路,只需要將其插入牆上的插座即可。

00:06:10 - Saron Yitbarek

你的父母對家裡這個碩大的新入侵者作何看法?

00:06:15 - Mary Allen Wilkes

我的父親是一位 聖公會Episcopal 牧師。他看到每個人都會說:“我敢打賭,你的客廳裡沒有計算機。”這至少可以說是相當新穎的事情,相當的新奇。

00:06:30 - Saron Yitbarek

Mary Allen 的父母整天都不在家,因此她能夠集中注意力。她直接在 Link 上寫作業系統,不需要打孔卡,所以她可以更快地進行除錯。她透過電話或老式的 蝸牛郵件snail mail 和她的團隊交流,並在必要的時候前往聖路易斯。僅僅在不到一年的時間裡,她就完成了這個作業系統並編寫了程式設計手冊。

00:06:55 - Mary Allen Wilkes

我從未感到被孤立,也從未感到過沮喪。我感到充滿了挑戰。我認為程式設計基本上是一項適合內向的人、與世隔絕工作的人、獨立工作的人、不需要大量支援或是與他人互動的人的工作。

00:07:15 - Saron Yitbarek

多年以來,Mary Allen 從事過其他需要在辦公室的工作。但是她更喜歡的是在家工作。

00:07:23 - Mary Allen Wilkes

自從我在 2001 年辭去最後一份全日制工作以來,我如今已經在家裡工作了好幾年。因此,我是一個家庭工作者。而且事實上,在我離職那天,我對自己說,我會繼續工作,但我不想去辦公室,也不想坐在辦公桌前。但是到了那會,我們已經有了膝上型電腦,所以我能夠坐在舒服的椅子上工作。

00:07:53 - Saron Yitbarek

因此,Clive,Mary Allen 的故事如此精彩,你該為《碼農》一書去採訪她。她不僅僅是計算機程式設計的先驅,而且還是遠端工作的先驅,對吧?

00:08:03 - Clive Thompson

是的。我的意思是,據我所知,她是第一個有一臺能讓她在家工作的個人計算機的人。網上有一張她的令人驚歎的照片,照片上她正坐在她父母的樓梯腳下。他們把所有這些部件放在頂層的樓下,這是她放一張小桌子坐著工作的地方。而且這是對未來的一瞥,對嗎?我是說,那時候她正在做的事情要花費 30、40 年時間才能夠整體實現,因為她完全領先於自己所處的時代。

00:08:36 - Saron Yitbarek

程式設計是一項很理想的遠端工作。甚至我自己的自我封閉經歷也使我意識到,我已經這樣做很多年了。因此當你和程式設計師們交談的時候,有多少人喜歡這種工作方式?它變得有多流行?

00:08:52 - Clive Thompson

好吧,這很流行,而這是因為程式設計師們喜歡在家工作。絕大多數的程式設計師如果能夠選擇的話,他們會說,是的,我會一直在家工作。之所以會這樣,是因為這提供了他們一個安靜而又能夠專注的地方,而且不會因為在隔間裡有人拍他們的肩膀而被打擾。如果你要對他們說:“嘿,夥計們,各位,你們更願意在哪裡工作?”他們全都會更傾向於在家裡工作。

00:09:26 - Saron Yitbarek

Basecamp 是一家大力提倡遠端工作的技術公司。他們已經有 20 年曆史了,而他們從最初就進行遠端工作,甚至在遠端工作流行之前。他們的員工在世界各地的家中工作。讓我們來聽聽 David Heinemeier Hansson 怎麼說。他和 Jason Fried 共同創立了 Basecamp。他也是 Ruby on Rails 的創造者。

00:09:49 - David Heinemeier Hansson

事實上,在我開始和 Jason 共事的前六個月,我們只是透過電子郵件和 IM 進行聯絡。我們甚至都沒有打過電話。因此我想是過了六個月時間我們才通了第一次電話,並且花了一年多時間我們才見面。所以很長的一段時間裡,這都不是傳統觀點。我們接觸到了龐大的人才庫,這些人意識到自己不想住在 舊金山San Francisco。他們不想去紐約生活,他們也不想去西雅圖生活。他們不想在這些大型技術中心裡的任何一個地方生活,然而他們確實是精通而且合格的人才。因此,Basecamp 允許他們這麼遠端工作,對於我們的招聘策略和維繫策略都至關重要。

00:10:31

2012 年,我與其他企業家進行了一系列對話,向他們詢問他們的工作實踐,我們談到了遠端工作。而對於為什麼遠端工作行不通,他們只給了我這些老套的辯駁,“哦,你們沒法合作。魔法只會發生在白板周圍。”而我想,什麼,人們還是這樣想的?這怎麼可能?白板在 Basecamp 基本上不存在。我們擁有的第一工具是寫作。它是非同步的,你自己書寫併發布,然後等著就行。當富有創造力的人們有時間和空間去進行深度思考,並且將深度思考編輯成深度寫作時,就會產生良好的協作。深度寫作的並不是一行行的聊天組成的,而是完整的句子,形成段落,進而形成完整的論點。

00:11:29

然後,你可以利用時間的優勢和平靜來考慮這些觀點。90% 時間拿來寫作,然後 5% 拿來聊天,最後 5%,可能是隨便什麼,是用 Zoom 還是 Tubal 或者一些其他的影片連線螢幕共享之類的協作。

00:11:49 - Saron Yitbarek

Clive,David 在這裡提出了一些非常有趣的觀點。有些我從來都沒想過。還有程式設計師正在使用的能使遠端工作成功的其他工作方式嗎?

00:12:00 - Clive Thompson

是的,當然有了。在他們知道需要和人進行聯絡,甚至可能是面對面接觸時,他們會做一些時間安排。因此,確實有一些我交談過的公司會說:“好吧,我們知道我們的開發人員不在這兒的時候能把他們的工作做到最好,但是我們希望他們有時能夠在這裡,我們想開一些面對面的會議。”他們仍然相信這一點。因此,他們會有比如像是這樣的日程安排:好吧,在週二和週四的下午 1 點到 5 點,我們需要所有人都在辦公室裡,以便我們能夠有時間進行交談。剩下的時間,你可以去你想去的任何地方。如果你想的話,你可以在辦公室裡工作,你可以在任何你喜歡的地方工作。可以是在星巴克,也可以是在家裡。因此,這種有趣的新安排是一件行之有效的事情。

00:12:44

我認為另外一件相當有效的事情是,弄清楚所有人都最喜歡的聊天或者交流模式是什麼樣的。就 David 而言,他喜歡的,以及他的團隊所喜歡的,是長長的電子郵件會話。我肯定已經和喜歡這種交流模式的人交談過了,但是其他人,他們實際上真的很喜歡 Slack,或者他們特別喜歡老式的 IRC,對吧?就是在黑色背景的綠色文字那種。但是他們弄清楚了它們的共存形式是什麼,因為有過這樣的現象,被談論線上交流的心理學家們描述為 環境感知ambient awareness,這是一種當你沒有和他們在一起時,知道其他人正在思考什麼或是做些什麼的能力。有很多技術可以使我們做到這一點。而最好的遠端團隊仔細考慮了他們的環境感知方法是什麼,然後鎖定並使用它。

00:13:39 - Saron Yitbarek

在我自己的遠端工作經歷中,有一件我發現確實很有用的事情是,透過 Hangout 或 Zoom 會話來進行協同工作,讓流媒體執行著,並一直保持著連線。這確實是一種減少孤獨感的絕妙方式,一定意義上有了相互陪伴的感覺,像在一個公司裡面,除了每個人仍然還在做著自己的事情,但是這提供了可以拍拍某人肩膀的機會,因為我可以說:“嘿,我被這個功能難住了。你介意我耽擱你接下來的 5 到 10 分鐘嗎?和我結對幫助我擺脫困境嗎?”因此,這成了一種著實很有用的方式,能讓你獲得某種形式的社互動動,並在需要的時候有機會得到幫助。

00:14:21 - Clive Thompson

這完全有道理。我是說,我認為很多人都試圖找到某種方法來與有經驗的人這麼做,或者甚至坦率地講,甚至和同齡人這麼做,因為你能夠得到很多,即使某人並不比你資深,但他們也有與你不同的大腦。

00:14:37 - Saron Yitbarek

是啊,當然了。我認為這是一種不同的交流形式,而不是一種低質量交流。

00:14:44 - Clive Thompson

一點也不。這就像是心理學家所謂的 元認知metacognition,有關思考的思考。確實,當前的任務是:今天我想要嘗試的是哪一種思維方式?是和某人面對面交流還是與他們線上聊天更有助於思考呢?

00:15:01 - Saron Yitbarek

因此,既然我們所有人都被迫在家工作,各家公司都意識到他們仍然能夠完成工作。人們的態度已經傾向於遠端工作將成為主流了嗎?

00:15:12 - Clive Thompson

這是真的是一個大問題,而我認為我們目前並沒有答案。我認為即將要發生的事情是,有很大一部分工人,包括從未在家或者被允許在家工作的開發人員,我估計超過 50 %,他們將會要求將遠端工作成為半永久性的。他們將發現自己的工作效率要高得多,並且希望更頻繁地這樣做,而且有一些會議中是不必要的,打斷了他們在工作區中的工作流程。

00:15:47 - Saron Yitbarek

因此,如果遠端工作是提高生產效率的好方法,隨著時間的推移,它變得越來越流行,尤其是對於碼農們來說,這是一種很好的完成工作的方式,它可以更方便,而我們這種工作形式確實意味著在家裡工作,那麼為什麼這些大型科技公司要繼續建造如此大的工場供其員工工作呢?

00:16:06 - Clive Thompson

有一部分是基於他們的想法或者擔憂,即人們只有在面對面,並且彼此有著意想不到的聯絡的時候,才會有創造性思維產生。而這有一些實際上是基於科學的。我的意思是,有大量研究表明,當公司中的可能互相根本不認識的人們相遇時,會產生某種特定型別的交流和鬆散的協作與念頭。我是說,這是典型的 飲水機效應water cooler effect。 3M 是一家大型的紙業公司,以發明了 便利貼Post-it Notes 而聞名,這是一項價值數十億美元的發明,只是因為發明了這種粘性物質的一個人遇到了另一個正在找尋一種能把紙張固定在適當位置的方法的一個人。而正是因為這個遇見彼此的機會,他們創造了該公司最具標誌性的產品之一。

00:17:05

史蒂夫·賈伯斯Steve Jobs 打造了蘋果公司總部,不僅僅最大程度地提升了人們在一起工作的機會,而且讓他們在一些地方聚集,以迸發出創意的火花。

00:17:20 - Saron Yitbarek

我進行遠端工作已經很多年了,不過只是我自己一個人工作。然後當我有了一個團隊後,就和幾個人一起工作,但是我在遠端工作方面的經歷裡最多是和四個人共事。而且他們來自各個地方。我們中有人在洛杉磯,有人在布魯克林,也有人在芝加哥,但是我想知道的是 —— 遠端工作真的只有對於像這樣的小型團隊以及像 Basecamp 那樣的小型公司才能取得成功嗎?

00:17:44 - Clive Thompson

這是個很棒的問題。我看到的最成功的情況是,在開發團隊很小的時候,在初創階段,有 5 到 6 個人,而且事實上,他們之所以能夠獲得所需的人才,是因為他們說:“好的,你在俄羅斯,我在多倫多,我們其他人在田納西,而我們將一起工作。”因此,你在某種型別的創業公司中經常看到這種情況,他們擁有他們所需的特定技能,並且需要得到他們認為最好的人才,但他們不會要求這些人搬家。這是都是小型團隊。

00:18:22

我覺得管理通訊要更加容易一些,因為你基本上可以將這視為一組節點之間的通訊,並且隨著節點的整張,需要通訊的人數急劇增長。因此,只有 4 個或 5 個人的時候團隊運轉良好,到了比如 50 個人,這變得著實很困難,再到 150 個人,哦,我的天哪。對於一家有著 10000 個人的公司而言,弄清楚他們將如何做到這一點變得更為困難。

00:18:47 - Saron Yitbarek

讓我們來聽聽有關遠端工作的另一種觀點。Dave West 是 scrum.org 的執行長。這家公司工作的基礎是《敏捷宣言Agile Manifesto》的第一條規則:個人和交流高於流程與工具。有請 Dave。

00:19:05 - Dave West

我認為現實是,如果你真的想要以極快的速度構建一個專案,以一種真正有效的方式協同工作,面對面可能仍然是最好的形式。這並不意味著它是唯一的方法,也不意味著你以其他的形式交流和分配就不能像從前那樣行之有效。但是,最好和最容易的形式是面對面交流。時至今日,我仍然相信我曾經從事過的最令人愉快的軟體專案,以及我曾經參與過的開發專案和團隊都位於同一地點,位於同一個辦公室裡。而這是有許多原因的。這是因為週五晚上出去喝點兒啤酒,能夠在發生可能影響他們工作的問題時,比如他們的狗死了或類似的事情,能夠真正得到額外的理解。

00:20:04

你會得到那種額外的東西,而這是很難從一個分散式團隊中得到的。但是另一方面,我認為不是所有最出色的軟體工程師都居住在矽谷。所以我感到很矛盾,我覺得位於同一地點的團隊有著巨大的價值,但是我也認為,由分散在不同地點,不同能力的人們所帶來的好處,也是巨大的。因此,你必須找尋到一個平衡點,而這相當相當困難。我所知道的是如果你打算分散你的團隊,那麼你必須特別注意促進,並使得環境儘可能實際複製位於同一地點的團隊所處的環境。這意味著經常讓他們見面。因此,你們要進行大量的螢幕共享,並且花時間在一起,可能需要發起一個谷歌 Hangout,並使之持續執行並進行共享。這些事情變得非常非常重要。

00:21:10 - Saron Yitbarek

因此,Clive,開源專案是建立在協作和團隊合作之上的,那麼,遠端工作會阻礙這一點嗎?遠端工作對真正的協作能有多大幫助?

00:21:22 - Clive Thompson

好吧,這個問題有關開源的的第一部分很容易回答,我認為實際上開源領域的大部分巨大成就都是在極端遠端的情況下取得的,因為從定義上說,開源專案的魔法是一個開發者說:“嘿,我有一個我正在開發的程式碼庫。有人有什麼主意嗎?”與其只是詢問你公司裡的 50 個人,你可以在網上詢問數以百萬計的人。因為實際上只有 1% 的 1% 的 1% 的 1% 的人會給你提供一個好主意。在你擁有 50 個人的組織裡,可能沒有人會在意你正在構建的奇怪的小庫,而在整個星球的範圍內,你就能找到 9 個人以令人難以置信的熱情和興趣幫助你開發這個東西。因此,從某種意義來講,開源從定義上說透過遠端協作大力促進了遠端工作。

00:22:18

不過,它也受到了挑戰,因為剛才 Dave 所談及的所有這類事情都是真實的 —— 沒有面對面接觸的話,所有能夠幫助組織運轉的社會紐帶真的很容易分崩離析。而你會在開源專案中看到這一點。它們真的能夠轉變成網路上反社會行為的噩夢,因為人們並不擅長去閱讀彼此的語氣。他們會認為自己只是直截了當,而其他人則會認為他們是在進行令人難以置信的羞辱。在面對面社互動動的情況下能在可能是短短 30 秒的時間內就能夠化解的誤會,能夠撕裂開源社群,並已經撕裂了網路上的一些開源社群。

00:23:07 - Saron Yitbarek

Maude Mensah Simpson 是一名前端開發人員,她在居家工作的同時還是兩個年幼孩子的母親。她解釋了在有了她第二個孩子以後,在遠端工作方面所遇到的早期挑戰之一。

00:23:18 - Maude Mensah Simpson

在我有了第二個孩子的時候,我只做了一年的開發人員。因此,當其他所有人都在辦公室而就你不在的時候,你會錯過太多太多東西。其中之一是人們對一般工作的小範圍談話。比我資深的開發人員會在我寫程式碼的時候從我身後走過,然後他會看到我正在做的東西,並且會說:“哦,是的,我喜歡你的做法。”或者,“你在做什麼呢?”他只是經過我工作區,這讓他有機會和我談論有關寫程式碼以及如何正確地做事情。遠端工作可能只依賴於你的個人自信,因為當你不在辦公室裡工作時,你會錯過一些教學與指導。

00:24:10 - Saron Yitbarek

Clive,我想知道一名經驗豐富的程式設計師和一名處於生涯起步階段的程式設計師相比,遠端工作的經驗是不是會有所不同,因為我能夠想象一個經驗豐富的程式設計師,已經習慣於在辦公室環境中工作,然後不得不轉到遠端工作。這變化可能並不是太糟糕,也並不是太具有挑戰性。但是對一個處於職業生涯初期的程式設計師而言,我能看到他們真正受益於身邊的導師,這些人擁有更多地經驗,能夠拍拍他們的肩膀然後問他們問題。因此,處於生涯初期的程式設計師會因為不在其他程式設計師身邊而有所損失嗎?

00:24:43 - Clive Thompson

我覺得他們會的。是的。我認為這是一個很合理的擔憂,而且我確實從那些透過面對面合作成長起來的老開發者那裡聽到過,他們知道,透過和一名更資深的程式設計師進行一次 30 秒的面對面交談,他們可以學到很多東西,並覺得茅塞頓開。Jeff Dean 是谷歌的一名資深工程經理。我從許多和他共事過的人那裡聽說,他就是一個非常有用的資深資源,因為人們會帶著問題去找他,而他能夠透過字面上直接看到解決方向,並且在 20 秒內說,“哦 …… ”雖然他不會直接給出答案,但是他會指出他所認為的問題所在,從而使他們茅塞頓開地回去,並變得令人難以置信得富有生產力。

00:25:36

因此,新人們能夠從像那樣的互動當中受益匪淺。我不是說你永遠不能從遠端得到這種互動,只是會更難。然後還有程式碼審查。因此,在一家管理良好的優秀公司裡,你將會需要程式碼審查,你的同事,最好是有一定經驗的資深人士會檢視你的程式碼,坐下來討論它,並問你是如何實現,以及為什麼要這麼做。而這個往復的過程會涉及到許多你可能作出的模糊決定,並使其清晰化,這對學習而言相當有價值。能夠理解你為什麼要做自己所做的事情,將其具象化給其他人,是十分有價值的。

00:26:20 - Saron Yitbarek

我所聽說過的有關遠端工作的問題之一是這種混合的想法,當你開始工作,然後到了 6 點鐘,是時候停止工作了,但是你在工作過程中感到舒適,你會再額外地工作一兩個小時,最終會因為遠端工作而過度勞累。是這樣嗎?然後與之相反的是,你會在遠端工作的時候摸魚嗎?

00:26:43 - Clive Thompson

你可能會摸魚,但是在我對開發人員及其經理的所有訪談中,從來都沒有聽說過這種情況。事實上恰恰相反。我更多聽到的是經理們擔心人們永遠不休息,永遠都不離開工作。我也從開發人員那裡聽說過,難以擺脫工作。對於開發人員而言,總是很難停止去思考問題。當你居家工作的時候,你會花費 8 個小時的沉浸式時間,然後你會完成許多工作,但是由於你實際上並沒有去其他地方,你的身體沒法幫著欺騙你的思維,進入關閉狀態。就像你離開了辦公室,坐上了汽車、公交車、踏板車或是步行回家,你實際上就從一個地方到了另一個地方,而這種物理訊號會幫助你的大腦自我復位。

00:27:35 - Clive Thompson

這裡涉及到了很多很多的科學依據。我是說,從字面上看,實際上從一個地方去到另一個地方能夠幫助你的大腦進行自我復位。當你沒有能力這麼做時,當你居家工作,編碼問題的天然象棋式的心理空間就很難告訴你的大腦停止工作。因此,諸多原因導致了居家工作的人們繼續以自己明知道不健康的方式去工作,卻難以停下來。

00:28:03 - Saron Yitbarek

David Heinemeier Hansson,請。

00:28:05 - David Heinemeier Hansson

隨著時間的推移,我們對於 Basecamp 的人們如何處理這一問題有過一些有趣的軼事。我們過去有一位資料分析師,他有兩雙拖鞋。他會在走進辦公室的時候穿上他的工作拖鞋,而換下他的居家拖鞋。它們只是一雙拖鞋而已,只不過是將工作與家庭分隔開來。而我認為這一分隔尤為重要。我覺得對許多使用他們的家來工作的人而言,能夠分出家裡的一個房間用於工作,然後當你離開那間屋子時,你就不再工作了,這也不失為一種健康的行為。

00:28:41 - Saron Yitbarek

我喜歡這個拖鞋的點子,就像 Rogers 先生那樣。接下來還是 Maude。經過在家和孩子一起工作了幾年後,她想出了自己的方式,使得居家工作行得通。

00:28:53 - Maude Mensah Simpson

(在家工作)很容易對時間失去控制。你可能會坐在那裡好幾個小時,卻並不知道自己已經在家寫了多久程式碼,因為你在家裡。我的解決方法是,我有一個 Pomodoro 計時器,我會確保大概每小時都會有專門的休息時間。然後就是能夠將家和工作分隔開來。我在家裡有一個辦公室,我不會允許我的家庭生活進入到這間辦公室裡,以保證將其二者分隔。因此,每當我走出去時,我可以是媽媽或是我不工作時候的任何身份,但是當我走進了辦公室以後,這是上班時間,而這使得進入工作流程更為容易。我每天都會進行一次快速的狀態更新。早上,我會讓他們知道這是我今天要做的工作,然後到了夜晚,我會讓他們知道我做到了什麼程度。我認為在進行遠端工作的時候不存在類似於過度溝通之類的事情。所以是的,只是溝通,溝通。

00:30:02 - Saron Yitbarek

因此,Clive,有沒有其他建議或是竅門來遠端管理員工,或者甚至是成為一名遠端工作者?

00:30:08 - Clive Thompson

當然,如果一家公司想要擁有一種嚴肅的遠端文化,那麼重要的一點是,高層管理者也應當遠端工作,這樣就不會有產生一種遠端工作是一種次級狀態、重大決定是由重要的人面對面作出的,而遠端工作人員並不參與其中的感覺。我在為我的書籍做研究時所遇到的一個問題是,當我與 Postlight 的一些工程師交談時遇到的,那是紐約市一家很了不起的公司。他們主要為媒體行業開發應用程式。工程負責人進行著遠端工作,他在 納什維爾Nashville 南部的樹林裡工作。當我和他交談時,他說:“這確實是非常重要的一件事情,因為我們有許多遠端工作的工程師,他們樂於知道在領導工程師團隊的我也是遠端工作的。”這意味著公司裡的每一個人都非常用心地思考著如何遠端工作,因為在這部分中主持工作的人本身就是遠端。

00:31:09 - Saron Yitbarek

自從 2020 年 3 月以來,我們大多數人都不得不徹底改變工作方式 —— 居家工作,無論我們過去是否以及是這麼做的。而當我們居家工作時,這就取決於我們個人的工作風格,並且確保無論我們從事的是什麼專案,無論工作於什麼公司,無論在管理什麼人或是被什麼人管理,我們的個人喜好能夠得到尊重,我們可以靈活地以我們擅長的方式工作。以人為本不僅僅是《敏捷宣言》的第一條規則,也是開源的方式,而且它是能夠產生最好結果的方式。請訪問 redhat.com/commandlineheroes 以獲取這一集的更多研究結果。下一次,在我們有關職業生涯的這一迷你季的最後一集中,Clive 將會回來和我們一起解決“你會成為什麼樣的程式設計師”這一問題。非常感謝你加入我們, Clive。

00:32:07 - Clive Thompson

謝謝,Saron。

00:32:08 - Saron Yitbarek

你正在收聽的是《程式碼英雄Command Line Heroes》,一檔紅帽Red Hat的原創播客節目。我是 Saron Yitbarek。

00:32:15 - Clive Thompson

我是 Clive Thompson。

00:32:16 - Saron Yitbarek

好的。然後呢?

00:32:18 - Clive Thompson

哦我的天哪。我們能最後一次說“堅持程式設計”嗎?

00:32:23 - Saron Yitbarek

堅持程式設計。

00:32:25 - Clive Thompson

堅持程式設計。

什麼是 LCTT SIG 和 LCTT LCRH SIG

LCTT SIG 是 LCTT 特別興趣小組Special Interest Group,LCTT SIG 是針對特定領域、特定內容的翻譯小組,翻譯組成員將遵循 LCTT 流程和規範,參與翻譯,並獲得相應的獎勵。LCRH SIG 是 LCTT 聯合紅帽(Red Hat)發起的 SIG,當前專注任務是《程式碼英雄》系列播客的指令碼漢化,已有數十位貢獻者加入。

歡迎加入 LCRH SIG 一同參與貢獻,並領取紅帽(Red Hat)和我們聯合頒發的專屬貢獻者證書。


via: https://www.redhat.com/en/command-line-heroes/season-5/where-coders-code

作者:Red Hat 選題:bestony 譯者:JonnieWayy 校對:windgeekDaniel4078wxy

本文由 LCRH 原創編譯,Linux中國 榮譽推出

相關文章