Code Retreat 是什么
Code Retreat,又叫代碼靜修,代碼精修。
對想要編寫出更好的代碼,和更優雅地編寫代碼的程序員來說,Code Retreat 是最棒的集體學習活動。
它通過結對編程并頻繁輪換搭檔的形式,極大地開闊程序員的眼界和思維。
不同于 Hackthon(黑客馬拉松),Code Retreat 通常為期一天,不以完成題目為目標,每一個小時都會刪除全部代碼,找個新搭檔,針對一個目標進行練習。
為什么我要寫這個
從 2012 年在北京第一次參加 Code Retreat 開始,這幾年,我在深圳和成都組織了 5 次 Code Retreat 活動。每一次都讓我非常震撼,并且參加的人也覺得很有收獲,他們在結束后最常問的問題是:「下一次活動什么時候???」
第一次在深圳組織的時候,我像無頭蒼蠅一樣,到處找場地,找贊助,查資料,宣傳,手忙腳亂。
擔心報名的人不多,擔心活動當天下雨,擔心大家沒學到東西,擔心控制不好現場...
到現在,我已經輕車熟路,可以在一周以內,不費力氣地組織一場 Code Retreat。
我想把我的經驗寫出來,讓更多的人可以開始,在自己公司內部、在社區,組織 Code Retreat 活動。
如何組織
最早,我們參加的是 Global Day of Code Retreat(全球代碼靜修日,簡稱 GDCR),在每年的 11 月,全球多個國家和城市同步舉行,有數千名程序員參加。
2015 年,我們覺得一年一次不過癮,于是在姚若舟的牽頭下,中國區的組織者們一起準備搞一個 Chinese Day of Code Retreat,后來又有其他國家的組織者參與進來,于是變成了 APAC Day of Code Retreat,在 6 月舉行,這樣程序員們就可以每半年參加一次。
上周末,我在成都組織了一場 Code Retreat,既不是 GDCR,也不是 ADCR,就是一場普通的社區活動。
你可以隨時隨地組織一場 Code Retreat,沒有人會阻攔你。
接下來,我從活動的前中后三個階段來描述,在這三個階段分別需要做些什么。
活動前
怎么挑個好日子
首先需要確認活動的日期,你需要查看一下,當天是否是公共節假日,或者是否有其它社區活動。還有別忘了查看一下天氣預報。
如果當天是公共假期,也有其它活動,并且當天天氣并不怎么樣,那么,這就是最適合舉行 Code Retreat 的日子。
只有這樣,你才能找到真正熱愛編程,追求匠藝的程序員一起來玩。
我在深圳組織的時候,就經常和深圳敏捷部落,珠三角技術沙龍,GDG 等社區活動同一天進行,就是要強迫興趣廣泛的程序員們,做出一個拷問內心的選擇。我是不是太邪惡了?
當然,如果你是第一次組織,并且是以推廣軟件匠藝為目的,就最好選一個,普通的周末,沒有其它社區活動,且陽光明媚的日子。
最好再查一下「程序員老黃歷」:
怎么找場地
Code Retreat 并不需要很大的場地,能容納 10 幾個人的會議室就可以。
這些年參與和主辦過很多活動,提供過場地的公司有:騰訊、迅雷、錦會、中興通訊、金斧子、ThoughtWorks 等。
為什么他們要提供場地呢?僅僅是出于支持公益活動嗎?非也。我總結了如下幾點:
- 大企業看重雇主品牌。比如,上周的活動在 ThoughtWorks 舉行,回顧的時候有個參會者就感嘆說:「有個好的工作環境非常重要」。(啊,看這軟廣打的,按慣例 ThoughtWorks 應該給我幾萬的廣告費~)
- 創業公司看重宣傳和招聘。錦會是個聯合辦公空間,當時剛開業,需要更多曝光。金斧子是專注互聯網理財的創業公司,正在飛速發展,對工程師的需求很大。
- 傳統公司看重氛圍。中興通訊更多的是看重,將對代碼精益求精的態度和積極學習的氛圍,帶入到公司內部。
- 企業大學看重形式。迅雷當時在搞迅雷學院,更多的是多了解一種培養人的方式。
再次感謝以上幫助過「軟件匠藝社區」的企業,祝沒上市的早日上市,已上市的基業長青!
也感謝這些企業里給我提供幫助的朋友們:軍少,賀鵬飛,范堃,黃澤武、張曄,王拓,海俠。希望以后還有更多的合作~
所以呢,不要擔心沒有人提供場地,多找社區的朋友問問,實在找不到就在自己公司搞。
差點忘了,場地方還需要確認一下設施:
- 飲水
- 插排
- 投影(VGA,HDMI)
- 白板
- 空調
- 空氣凈化器(深圳除外。媽蛋,好懷念深圳~)
宣傳報名
確認了時間地點,接下來做什么?
首先要做一個報名表單,推薦用金數據:
有了報名表單,接下來就該去宣傳了,你也不想一個人獨守空房是吧~
2013 年第一次在深圳組織的時候,不到一周的時間,我加了各種 QQ 群,對,那時候流行 QQ,Java,C#,Ruby,Python,JavaScript 等。當時最有意思的是,QQ 群里一個人說:「周末還 TM 寫代碼,屌絲注定孤獨一生?!?br>
除了 QQ 群,還可以到開源中國、V2EX、RubyChina 等社區去宣傳。
當然,也可以把活動發布到 「MeetUp.com」,「活動行」等自帶流量的活動平臺,雖然我沒試過。
做了幾年社區,現在也有一點影響力了(臭表臉的說),宣傳報名也簡單多了。這次活動,我在 CodingStyle.cn 上發了個帖,在朋友圈轉了一下,就有 1000 多閱讀,20 多人報名。不信自己去看#活動報名 #成都 2月18日,Code Retreat Day - 代碼靜修日
這次我也忘記了一點,報名后最好加個微信群,方便后續溝通。
題目選擇
GDCR 的題目是 Game of Life,一直沒換過,官方的解釋是:
Code Retreat 的題目既不能太難也不能太簡單,太難的話大家就會一心專注解題,忽略了練習目標,太容易的話大家會覺得無趣。一直沒找到可以替換的題目,所以就一直用這個。
我也嘗試過用 Tennis Kata,確實不如 Game of Life 好。
寫到這里,奮筆疾書了 90 分鐘了,已經快兩千字了。
關于活動當天如何組織,明天再跟大家分享,喜歡請點贊,沒人點贊就不寫了~
如果等不及,可以先看看以往的活動回顧。