程式設計師的職業素養 讀書筆記 - 第14章 輔導、學徒期與技藝
失敗的學位教育
符合要求的畢業生有個共同點,進入大學之前就已經自學程式設計,並且在大學裡依然保持自學。
學校中所學的內容和在工作中發現的實際需要,這兩者之間通常會有巨大的差異。
輔導
1、精心編寫的幫忙手冊
2、觀察他人工作
3、非常規輔導
4、艱難的錘鍊
學徒期
軟體學徒期
1、大師
2、熟練工
3、學徒/實習生
現實情況
大多數情況下幾乎沒有技術層面的督導,程式設計師的水平是否能夠提升和最終是否能夠得到職位晉升,全視乎程式設計師自己的表現。
提倡理想化的學徒制程式,主要差異在於技術方面的傳授、培訓、督導和檢查。
當前的做法之所以傳承無力,主要是因為其中缺失了資深人士輔導新人向其傳授技藝的環節。
技藝
技藝是工匠所持的精神狀態。技藝的“模因”(meme)中包含著價值觀、原則、技術、態度和正見。
技藝模因經由口口相傳和手手相承而來,需要由資深人士向年輕學徒殷勤傳授,然後再在學徒之間相互傳播。
資深人士會觀察年輕學徒的學習過程,然後不斷反思和改進傳授之道。
只要技藝模因可以被人觀察到,它便具有傳染性。
相關推薦
程式設計師的職業素養 讀書筆記 - 第14章 輔導、學徒期與技藝
失敗的學位教育 符合要求的畢業生有個共同點,進入大學之前就已經自學程式設計,並且在大學裡依然保持自學。 學校中所學的內容和在工作中發現的實際需要,這兩者之間通常會有巨大的差異。 輔導 1、精心編寫的幫忙手冊 2、觀察他人工作 3、非常規輔導 4、艱難的錘鍊 學徒期 軟體學徒期
程式設計師的職業素養 讀書筆記 - 第3章 說“是”
承諾用語 口頭上說。心裡認真。付諸行動。做出承諾,包含三個步驟 1、口頭上說自己將會去做。 2、心裡認真對待做出的承諾。 3、真正付諸執行。 識別“缺乏承諾”的徵兆 在承諾做某
程式設計師的職業素養 讀書筆記 - 第6章 練習
程式設計柔道場 卡塔:程式設計卡塔是一整套敲擊鍵盤和滑鼠的動作,用來模擬程式設計問題的解決過程。 瓦薩:兩個人的卡塔。一個人負責攻,另一個人負責守。 自由練習:很像由兩個參與者解決問題的瓦薩,也可以有多人蔘與。 自身經驗的拓展 職業程式通常會受到一種限制,即所解決問題的各類比較單一。老闆通常只強調一
程式設計師的職業素養 讀書筆記 - 第7章 驗收測試
需求的溝通 開發方與業務方之間最常見的溝通是關於需求的。業務方描述他們認為自己需要的東西,程式設計師按照自己理解的業務方表達的需求來開發。 在現實裡,關於需求的溝通是極其困難的,其中會出現各種問題。 過早精細化 做業務的人和寫程式的人都容易陷入一個陷阱,即過早進行精細化。
程式設計師的職業素養 讀書筆記 - 第13章 團隊與專案
只是簡單混合嗎 有凝聚力的團隊 形成團隊是需要時間的。團隊成員需要首先建立關係。 有凝聚力的團隊通常有大約12名成員。7名程式設計師、2名測試人員、2名分析師和1名專案經理。 1)發酵期
程序員的職業素養 讀書筆記 - 第5章 測試驅動開發
定性 失敗 測試 通過 修改 細節 擁有 驅動 存在 此事已有定論 TDD絕不僅僅是一種用於縮短編碼周期的簡單技巧。 每個開發人員都要適應和掌握TDD。 TDD的三項法則 1、在編好失敗單元測試之前,不要編寫任何產品代碼。 2、只要有一個單兇測試失敗了,就不要再寫
程序員的職業素養 讀書筆記 - 第8章 測試策略
單元測試 一起 graph tro 直接 開發人員 統架構 char cif QA應該找不到任何錯誤 QA也是團隊的一部分 QA和開發人員應該緊密協作,攜手保障系統的質量。 QA在團隊中要扮演的便是需要規約定義者(specifier)和特性描述者(ch
INSPIRED啟示錄 讀書筆記 - 第14章 產品評審團
制定更及時、更可靠的產品決策 制定決策通常是既耗時又費力的,產品公司需要一套機制讓決策者和相關人員及時作出明智的產品決策。成立產品評審團是最好的解決途徑 組織產品評審團的難點在於既要為高管制定產品決策、監督產品流程提供透明的資訊,又要避免高管插手干預產品團隊的具體工作 產品評審團的工作目標 成立產品評
INSPIRED啟示錄 讀書筆記 - 第19章 用戶體驗設計與實現
高保真 設計軟件 開發階段 階段 工作 完成 軟件開發 用戶 一點 先定義用戶體驗再動手開發 在軟件開發過程中,有很多工作可以同時進行。比如,需求調研和產品設計(用戶體驗設計)、開發與測試 盡管如此,用戶體驗設計和軟件開發就不能同時進行,原因有五點 1、與軟件
強化學習(RLAI)讀書筆記第八章表格方法的規劃與學習
第八章:Planning and Learning with Tabular Methods 本章為需要環境的model-based強化學習方法(如DP和啟發式搜尋)和不需要環境的model-free方法(比如MC和TD)提供一個統一的論述框架。基於模型的方法依賴規劃(planning)而無模型
INSPIRED啟示錄 讀書筆記 - 第34章 恐懼、貪婪、慾望
消費者購買產品大多源於情感需求 企業級消費者出於恐懼和貪婪購買產品:如果不買這款產品,競爭對手會超過我,黑客會攻破我的防火牆,客戶將棄我而去;如果買了,會賺得更多,省得更多 大眾消費者購買產品的原因更多樣化:使用這款產品(登入這個網站),就有機會交到朋友(化解孤獨),或者找到約會物件(滿足愛的需求),或者
精益資料分析讀書筆記——第四章-以資料為嚮導與通過資料獲取資訊
這章沒太看懂……以後回頭再看 濫用資料容易導致區域性優化,進而忽視大局,這是極其危險乃至致命的。 人類提供靈感,機器負責驗證 數學在優化已知系統方向可以做的很好,而人類更善於發現新的系統。換言之,漸進式的改變可以達到區域性極限,創新則可能導致全域性洗牌。 #資料
CSAPP讀書筆記第七章:(變數作用域與連結器)
[1]程式經過預處理和編譯之後變成可重定位目標檔案。每一個可重定位目標檔案都有一個表,這個表含有當前檔案定義的變數(函式),引用的函式。 這些變數有幾種型別:(1)當前模組定義的全域性變數(非static)(2)當前模組定義全域性變數(非static)(3
Android群英傳讀書筆記——第七章:Android動畫機制與使用技巧
第七章目錄 7.1 Android View動畫框架 7.1.1 透明度動畫 7.1.2 旋轉動畫 7.1.3 位移動畫 7.1.4 縮放動畫 7.1.5 動畫集合 7.2 Android屬性動畫分析 7.2.1 ObjectAnimato
Android群英傳讀書筆記——第九章:Android系統資訊與安全機制
第九章目錄 9.1 Android系統資訊獲取 9.1.1 android.os.Build 9.1.2 SystemProperty 9.1.3 Android系統資訊例項 9.2 Android Apk應用資訊獲取之PackageManager
讀書筆記--《程式設計師的自我修養》第4章:靜態連結(1)
本章以 如何將a.c檔案與b.c檔案連結成一個可執行檔案 來探討如何進行靜態連結 其中a.c和b.c檔案如下: a.c檔案 extern int shared; int main() { int a = 100; swap(&a,&shared);
讀書筆記--《程式設計師的自我修養》第3章:目標檔案裡有什麼(3)
3.5 連結的介面–符號 在連結中,我們將函式名和變數統稱為符號,函式名和變數名就是符號名。 每一個目標檔案都有一個符號表,裡面記錄了目標檔案中所有用到的符號。 每一個符號都有一個對應的值,叫做符號值。對於變數和函式來說,符號值就是地址。 符號分為5類。 **(1)本目標檔案中定
讀書筆記--《程式設計師的自我修養》第3章:目標檔案裡有什麼(2)
3.4 ELF檔案結構描述 ELF檔案結構如圖所示: ELF目標檔案格式最前面是ELF檔案頭,它包含了描述整個檔案的基本屬性,如ELF檔案版本、目標機器型號、程式入口地址等。接著是ELF檔案各個段。 其中ELF檔案中與段有關的重要結構是段表。該表描述了ELF檔案包含的所有段的資訊
讀書筆記--《程式設計師的自我修養》第3章:目標檔案裡有什麼(1)
3.1、目標檔案的格式 1、目標檔案從結構上講,它是已經編譯後的可執行檔案格式,只是還沒有經過連結的過程,其中可能有些符號或有些地址還沒有調整。其實它本身就是按照可執行檔案格式儲存的。 2、現在PC平臺流行的可執行檔案格式主要是windows下的PE和Linux下的ELF,他們都是C
讀書筆記--《程式設計師的自我修養》第2章:編譯和連結
一、從原始碼到可執行檔案的過程 分為4個步驟:預處理(prepressing)、編譯(compilation)、彙編(assembly)和連結(linking)。如圖所示 1、預編譯 (1)首先,原始碼檔案和相關的標頭檔案,會被預編譯器預編譯為一個.i檔案。 對於C++程式來