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

如何成為“10倍效率”開發(fā)者

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

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

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

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

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

  3. 了解數(shù)據(jù)結(jié)構(gòu)和算法 Know your data structures and algorithm

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

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

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

  5. 集中注意力 Find focus

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

  6. 盡早并且經(jīng)常性地進行代碼重構(gòu) Refactor early and often

  有時,你不得不放棄漂亮的代碼轉(zhuǎn)而去尋找真正對項目有用的代碼,但沒關(guān)系,如果你的現(xiàn)有項目中有這樣的代碼,最好的方式便是不要看它,并重構(gòu)。

  7. 只管去做  Just do it

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

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

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

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

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

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

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

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

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

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

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

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

  英文原文: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倍效率”開發(fā)者,轉(zhuǎn)載需保留來源!

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

主站蜘蛛池模板: 一个人在线观看免费高清视频在线观看 | 肉动漫无修在线播放 | 日韩欧美中文字幕在线 | 美女不要啊 | 日本乱子人伦在线视频 | 国产亚洲精品精品国产亚洲综合 | 国产高清视频a在线大全 | 欧美末成年videos丨 | 羞羞麻豆国产精品1区2区3区 | 动漫女生的逼 | 久久er国产精品免费观看2 | 97视频国产 | 国产一区二区高清 | 视频一区视频二区在线观看 | 日韩成人性视频 | 国产亚洲欧洲日韩在线三区 | 韩国成人理伦片免费播放 | 色琪琪丁香婷婷综合久久 | 日韩 亚洲 欧美 中文 高清 | 在线亚洲中文精品第1页 | 久久视频在线视频观品15 | 无码专区无码专区视频网网址 | 亚洲国产成人一区二区在线 | 性色AV一区二区三区咪爱四虎 | 国产亚洲精品久久久久久线投注 | 全免费a级毛片免费看 | 亚洲午夜精品A片久久软件 亚洲午夜精品A片久久不卡蜜桃 | 一起碰一起噜一起草视频 | 99久久999久久久综合精品涩 | 欧美午夜不卡在线观看 | 国产综合自拍 偷拍在线 | 99久久香蕉 | 日本十八禁无遮无挡漫画 | 国产精品亚洲第一区二区三区 | 伊人伊人影院 | 性白俄罗斯高清xxxxx | 日本一二三区视频在线 | 嫩B人妻精品一区二区三区 内射一区二区精品视频在线观看 | 国产亚洲精品久久久久5区 国产亚洲精品久久久久 | 男人j进女人j一进一出 | 精品四虎国产在免费观看 |