天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

如何成為“10倍效率”開發者

  Brad Feld 的一篇文章 The Rise of Developeronomics 中提到了“10倍效率的開發者(10x developer)”的概念(偉大的開發者的效率往往比一般的開發者高很多,而不只是一點點),Adam Loving 在讀了之后受到啟發,并向多位大牛(Ben Sharpe、Collin Watson 和 Jonathan Locke)詢問如何成為“10倍效率的開發者”,最后得到了以下的答案。

  1. 只做需要做的工作 Only do the work that needs to be done

  • 使用敏捷方法;
  • 全心全意做 UX 設計;
  • 溝通第一;
  • 編碼也許不是解決問題的辦法;
  • 過早的優化是一切罪惡的根源;
  • 選擇最簡單的解決方案。

  2. 站在巨人的肩膀上 Build on the shoulders of giants

  • 使用開源框架;
  • 使用簡潔語言(如 HAML、Jade、Coffeescript);
  • 不要做重復的事情(不要重新發明輪子);
  • 利用包管理器來進行公共和私有代碼分配;
  • 不要任憑巨頭(如微軟)的擺布而修復庫中的一個 Bug;
  • 不要讓你的雇主逼你學習;
  • 自主學習并為自己設定新的目標。

  3. 了解數據結構和算法 Know your data structures and algorithm

  如果你不知道什么時候應該使用快速排序、不懂辨認O(n2)程序、不會寫遞歸函數,你將無法成為 10 倍效率的開發者。使用多種語言你才能清楚不同的框架是如何解決相同問題的。盡可能去了解底層命令(plumbing),以便能夠作出明智的決定(Web 框架是怎么存儲 session 狀態的?Cookie 到底是什么?)。

  4. 不要怕買工具,它可以節省你的時間 Don’t be afraid of buying tools that save you time

  Ben 說:“昨天我花 50 美元買了一個位圖字體工具,它幫我節省的時間成本絕對超過 200 元。”

  5. 集中注意力 Find focus

  不要整天開著你的電子郵件、Twitter、Facebook 等,在工作時將它們最小化或關掉它們,戴上耳機。Tiny hack 說:“即使不聽音樂我也戴著耳機工作,這樣便不會有人打擾到我。”

  6. 盡早并且經常性地進行代碼重構 Refactor early and often

  有時,你不得不放棄漂亮的代碼轉而去尋找真正對項目有用的代碼,但沒關系,如果你的現有項目中有這樣的代碼,最好的方式便是不要看它,并重構。

  7. 只管去做  Just do it

  將你的業余項目分享到 Startup Weekend 中。在我開始轉到 Unix 和 Ruby on Rails 上之前,我買了一臺 Mac,使用 Windows 虛擬機花了一年時間做 .NET 項目。

  8. 挑選一個編輯器,并掌握它 Pick an editor and PWN it

  高效開發者喜歡用文本編輯器勝過 IDE 編輯器,因為這樣可以學到更多東西。無論什么情況,盡量使用鍵盤快捷鍵,因為熟練使用一件工具的前提是熟悉它。

  在選擇編輯器時,認真考慮并挑選最好的(Emacs 或 Vim),因為它們是通用的。其次,挑選你的首選平臺最支持的。使用宏,不斷地寫代碼;使用 Mac 上的 TextExpander 為整個段落創建快捷方式;使用 Visual Studio 或 SublimeText 的自動補齊功能;使用支持按行/列分割窗口的編輯器,這樣你便能同時看到單元測試和代碼(或模型、視圖)。

  一定要想清楚后再寫代碼。Adam 說,“我有朋友在一個大項目組里工作,他們組里最高效的程序員是一個高位截癱用嘴叼著棍子敲代碼的人,他總是在寫代碼之前想得很仔細且很少出錯。”

  9. 整潔的代碼勝過巧妙的代碼 Clearness beats Cleverness

  要想讓其他人能夠讀懂你的代碼,盡量使用最少的代碼來完成任務。遵循 DRY(Don't repeat yourself)的原則,使用明確定義的對象和庫,將任務分解成小而簡單的代碼段。

  10. 潛意識是強大的工具  Your sub-conscience is a powerful tool

  離開 10 分鐘往往就可以解決一個問題。控制編程時間,給自己一個多姿多彩的生活,勞逸結合能讓你在工作時更高效、更愉悅。當然,即便是上了年紀的程序員也知道,以最少的時間完成最高效的工作是成為 10 倍效率開發者的必要條件。

  作為一個程序員,我覺得在職業生涯中最好的一件事兒就是從電腦前站起來,去拜訪那些在某一領域有所建樹的人們。

  11. 推動自身和團隊進步 Refine your process as a team

  重視批評,以包容的態度接受批評并提升自己是非常重要的事情。沒有這個基礎,你不可能成為一個高效的開發者。一位智者曾經說過:“聰明的人善于從自己的錯誤中學習,而智慧的人善于從別人的錯誤中學習。”

  英文原文:http://adamloving.com/interNET-programming/10x-developers

  1. Only do the work that needs to be done. Use the agile process. Involve yourself in UX design. Communicate first. Coding might not be the solution. Premature optimization is the root of all evil. Choose the simplest solution that solves the problem.

  2. Build on the shoulders of giants. Use open source frameworks. Use shorthand languages (HAML, Jade, Coffeescript) to go faster. Don’t re-invent the wheel. Leverage package managers for public and private code distribution. Don’t be at the mercy of Central Command (i.e. Microsoft) to fix a bug in a library. And don’t wait for your employer to let you learn it. Learn it on your own, and get a new job that pays twice as much.

  3. Know your data structures and algorithms. Our profession is open to self taught tradesmen, but you can’t be a 10x developer if you don’t know when to use quick sort, identify an O (n2) routine, or write a recursive function. Be multilingual – so you can see how different frameworks solve the same problems over and over again. Know enough about the plumbing to be able to make informed decisions (how is this Web framework storing the session state? What is a cookie actually).

  4. Don’t be afraid of buying tools that save you time.  Ben says: “I bought a bitmap font tool yesterday for $50. It easily saved me more than $200 of my time.”

  5. Find focus. Don’t keep your email open all day. Same for Twitter, Facebook, HackerNews, and Techememe.  Minimize interruptions during productive moments.  Close email, turn off chat, put headphones on… whatever it takes to not be interrupted. Tiny hack:  I wear headphones at work even though I don’t listen to music because people don’t interrupt me.

  6. Refactor early and often. Kill your darlings.  Sometimes you have to throw out clever code to do what’s right by the project, but that’s OK. If you have to touch code on an existing project, always leave it better than you found it.

  7. Just do it. Think small. Do your weekend project, participate in Startup Weekend. I bought a Mac and worked in a Windows Virtual Machine on .NET projects for a year before I was able to fully leap to Unix and Ruby on Rails.

  8. Pick an editor and PWN it. Some 10x devs prefer text editors to IDE’s because they find they learn more without the crutches. In any case, learn your keyboard shortcuts. There’s no faster way to look something up than to know it.

  When picking an editor — seriously consider one of the greats (emacs or vim), they’re universal. After that, pick the best/most supported editor on your preferred platform. Use macros. Write code that writes code. Use TextExpander on the Mac to create shortcuts for entire paragraphs. Use auto-completion in Visual Studio or SublimeText.

  Use an editor that supports splitting your window into columns or rows. This way you can see your both a unit test and the code it is testing (or a model and view) at the same time.

  But think before you type. A friend in a large group said that the most productive coder in their group was a paraplegic who used a mouth stick to type. He had to really think things out before he started typing, he only rarely made mistakes.

  9. Clearness beats Cleverness. Write your code so that the next person can read it, not so it uses the fewest characters possible. Strive to adhere to the DRY (Don’t repeat your self) principle. Re-use clearly defined objects and libraries. Break work into clean interfaces between components and developers. Break the problem into small simple tasks.

  10. Your sub-conscience is a powerful tool. Stepping away for 10 minutes is often all that is required to solve a problem. Treat your self to a diverse life and limit your coding time. You will be able to work more effectively during your coding time because it will be more enjoyable. Of course, us older developers also know that a minimum effective dose of physical fitness is also a prerequisite to being a 10x developer.

  Human NETworking is more important than computer NETworking. Practice your pong. I often feel the best thing I ever did for my career as a programmer was to step away from the computer and go meet some movers and shakers.

  11. Refine your process as a team. One of the biggest things is to really pay attention and to be wide open to criticism and changing and refining your process. You can’t become a 10x anything without that foundation because it will take you too long to get better at it. A wise man once said “A smart man learns from his mistakes, but the truly clever man learns from the mistakes of others.”

it知識庫如何成為“10倍效率”開發者,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 忘忧草研究院一二三 | 色姣姣狠狠撩综合网 | 四库影院永久国产精品 | 国产亚洲精品高清视频免费 | 一本之道高清在线观看免费 | 日本xxxx8888| 亚洲色欲色欲无码AV | 999久久狠狠免费精品 | 亚洲精品福利一区二区在线观看 | 精品日产1区2卡三卡麻豆 | 和搜子的日子 在线观看 | 日本中文字幕巨大的乳专区 | 99综合之综合久久伊人 | 文中字幕一区二区三区视频播放 | 一品道门在线视频 | 亚洲成a人不卡在线观看 | 天美传媒色情原创精品 | 在线亚洲免费 | 国产精品国产三级国AV在线观看 | 校园纯肉H教室第一次 | 超h高h肉h文教室生理课 | 九九精品视频在线播放 | 91久久精品一区二区三区 | 麻豆天美国产一区在线播放 | 影音先锋av天堂 | 中文字幕亚洲第一页 | 四虎成人影院 | 久色视频网| 手机在线国产视频 | 日本久久久WWW成人免费毛片丨 | 国产精品99亚发布 | 色吧电影院 | 探花口爆颜射乳交日韩 | 亚洲三级在线看 | 色人阁影视| 伊人久久亚洲精品一区 | 国产精品欧美久久久久天天影视 | 久久国产视频网 | 小黄文纯肉污到你湿 | 噜噜噜狠狠夜夜躁精品 | 国产全部视频列表支持手机 |