成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

編程一萬小時的反思

開發 前端
Matt Rickard 是在谷歌從事 Kubernetes 開源工作的開發者,主要負責構建和維護 Kubernetes 開發者工具,例如 minikube 和 skaffold。此外他還作為 Kubeflow 項目的維護者負責機器學習管道方面的工作。

Matt Rickard 是在谷歌從事 Kubernetes 開源工作的開發者,主要負責構建和維護 Kubernetes 開發者工具,例如 minikube 和 skaffold。此外他還作為 Kubeflow 項目的維護者負責機器學習管道方面的工作。

根據 Matt 的介紹,他已刻意投入了一萬小時用于訓練編程技能。Matt 擁有大約 15 年的編程經歷,目前在谷歌 Kubernetes 和私募股權公司 Blackstone 擔任專業軟件工程師。在此之前,Matt 在大學的大部分時間都在圖書館為自己的項目編寫程序。而在更早之前,他嘗試過各種各樣的事——在 RuneScape 上運行一個僵尸網絡、為 iPhone 編寫一個拉丁語翻譯應用、編寫自己的配置語言、創建一個網絡剪輯器,或者深度定制自己的桌面環境。

在這一萬小時的編程訓練中,Matt 最近的工作與分布式系統相關,但他曾經編寫過許多技術棧的代碼。編程語言方面使用過 PHP, JavaScript, Go, Ruby, Python, C#, Java, Swift,技術領域曾涉獵過前端、后端、移動端、內核、云、運維等。他還曾參與過像 Kubernetes 這樣的大型開源項目,并維護過子項目。

對于編程一萬小時的反思,Matt 強調這次的總結是純粹的關于編程的思考,不會討論技術管理、職業發展相關的話題。

以下就是 Matt 編程一萬小時后的 31 條反思:

  • 閱讀源代碼常常會比在 Stack Overflow 上更快找到答案
  • 大多數情況下,如果你正在做的事情無法在互聯網上找到答案,那么這通常意味著這個問題很難或者很重要,或者兩者都是
  • 盡可能多地刪除代碼
  • 語法糖通常是不好的
  • 簡單往往是最難的
  • 擁有各種各樣的工具,并知道該用哪些工具來完成工作
  • 了解最常用的工具的內部結構,如 git 和 bash
  • 為重復的工作流程構建自己專用的工具
  • 從最好的資料中進行學習(這里 Matt 舉例稱他在學習 Go 時閱讀了標準庫)
  • 如果代碼看起來很丑,那很可能是一個嚴重的錯誤
  • 如果必須編寫不是文檔字符串 (docstring) 的注釋,則應該考慮對這段代碼進行重構
  • 如果不了解所編寫的程序是如何在生產環境中運行的,那就說明不了解程序本身。優秀的工程師知道他們的程序在各種環境中是如何運行的
  • 上面這條經驗對于構建管道也適用
  • 謹慎使用他人的代碼
  • 互聯網上找到的代碼大多數都很糟糕,有時候自己寫一個更好的版本會更容易
  • 永遠不要直接依賴自己可以輕松重寫的小型庫,或本應很小的大型庫
  • 知道什么時候該打破規則。對于“不要重復自己”這種規則,有時候重復比使用依賴要好
  • 將代碼組織成模塊、包和函數很重要。了解 API 的邊界位置是一門藝術
  • 大多數情況下應選擇最有效的工具,但也要選擇自己所知道的。Arch Linux 是現代開發者最高效的操作系統嗎?對我來說,是的,但對大多數人來說,可能不是
  • 避免圈復雜度 (Cyclomatic complexity)
  • 避免多層嵌套條件
  • 正確命名變量,這也是一門藝術
  • 雖然很少見,但有時報錯可能確實是編譯器的問題
  • 謹慎使用深奧的語言特性,但在應該使用的時候還是要使用
  • 技術的傳播并不均衡對等。例如,前端開發者可以從負責底層技術的工程師那里學到許多東西,云工程師可從 JavaScript 開發者身上學到用戶體驗和可用性方面的知識。但反過來卻未必成立
  • 因此,不同類型的工程師看待世界的方式是不同的
  • 部分程序員的效率是其他程序員的 10 倍
  • 成為 10 倍程序員與 10 倍員工這兩者之間沒有相關性(或許是負相關)
  • 好的 API 易于使用且難以誤用
  • 配置七邊形(Matt 自創的術語)從硬編碼值開始,到環境變量、CLI Flag、配置文件、模板化配置文件、DSL、通用 bash 腳本,再到硬編碼值。開發者應了解這個七邊形中的各個位置。

  • 所有抽象層都是可改變的。如果遇到了根本性的問題,有時答案就是往下再抽象一層,不要局限于表面

本文轉自OSCHINA

本文標題:編程一萬小時的反思

本文地址:https://www.oschina.net/news/154219/reflections-on-10000-hours-of-programming

資訊來源:https://matt-rickard.com/reflections-on-10-000-hours-of-programming/

責任編輯:未麗燕 來源: 開源中國
相關推薦

2016-10-28 11:55:10

2011-08-04 09:50:11

編程

2021-12-21 10:26:39

交付項目Jira開發

2020-02-26 11:11:50

運維微盟系統故障

2015-12-03 09:02:22

掌握新事物100小時

2012-06-05 00:26:58

程序員

2016-01-18 10:06:05

編程

2012-05-16 09:53:56

2019-09-24 08:16:14

Reactor響應式編程

2012-08-03 09:51:55

程序員編程

2015-03-30 11:21:27

編程編程反思

2015-05-11 10:38:50

程序員編程問題

2019-05-09 14:42:41

安吉智能倉庫

2018-12-20 09:13:39

Linux服務器高并發

2020-03-02 11:14:32

技術周刊

2014-03-14 10:07:09

極限編程敏捷開發

2012-07-06 13:54:59

JavaScript

2022-06-22 15:11:05

開發

2012-03-22 15:15:58

微軟

2012-02-07 11:20:50

360App Store
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品一区二区在线播放 | 男女下面一进一出网站 | a级片在线 | 99热这里都是精品 | 视频一区二区中文字幕 | 在线视频第一页 | 国产精品18hdxxxⅹ在线 | 国产传媒视频在线观看 | 国产乱码精品一区二区三区五月婷 | 日韩欧美亚洲 | 久久成人午夜 | 国产精品美女久久久免费 | 国产91视频免费 | 久久一级免费视频 | 天堂一区二区三区 | 免费观看的av毛片的网站 | 亚洲精品影院 | www.久草| 久久久久久国产精品久久 | 天天摸天天干 | 成人h免费观看视频 | 精品国产欧美一区二区三区不卡 | 亚洲精品一区在线观看 | 日韩国产在线 | 岛国av免费观看 | 一区二区三区视频在线观看 | 日韩在线观看中文字幕 | 亚洲一区中文字幕在线观看 | 天天操天天怕 | 激情五月婷婷综合 | 91精品国模一区二区三区 | 国产精品久久久久久久久久三级 | 古装三级在线播放 | 国产精品久久久久久婷婷天堂 | 一区二区三区欧美在线观看 | 亚洲精品福利在线 | 免费在线观看av片 | 国产精品久久久久久吹潮 | 欧美亚洲高清 | 久久久久久久久久久91 | 91亚洲一区|