阿里的事前驗尸
by JS
由JS
(不太完全)100天的代碼-驗尸 ((Not quite) 100 Days of Code — A Postmortem)
At the end of last year, I wrote about my experience coding and making daily commits to GitHub for 30 consecutive days. I also pledged to keep the streak going for as long as I could. I am happy to report that I made it through 90 straight days! It was an incredible experience, and I learned a ton.
去年年底,我寫了自己的經驗編碼,并連續30天每天對GitHub進行提交。 我也保證會繼續保持連勝紀錄。 我很高興地報告我已經連續90天做到了! 這是一次令人難以置信的經歷,我學到了很多東西。
The following is an overview of the projects I completed and some lessons I learned along the way. I hope it motivates some of you to make your own daily commitment to code.
以下是我完成的項目的概述,以及我在此過程中學到的一些經驗教訓。 我希望它能激勵你們中的一些人對代碼做出自己的日常承諾。
完成freeCodeCamp的前端認證 (Completed freeCodeCamp’s Front-End Certification)
I had worked on the more basic freeCodeCamp material ages ago. I still had to complete eight intermediate and advanced front-end projects and a series of small coding challenges before I could claim my certification.
很久以前,我就已經開發了更基本的freeCodeCamp材料。 在獲得認證之前,我仍然必須完成八個中級和高級前端項目以及一系列小的編碼挑戰。
The projects covered a wide variety of topics and proved quite challenging at times. I used an API to display the local weather, and for another I built a working clone of the children’s game Simon. The combination of good resources and the patience of some more experienced friends helped me finish them to earn my certification.
這些項目涵蓋了廣泛的主題,有時證明非常具有挑戰性。 我使用API??來顯示當地天氣,另外我還建立了兒童游戲Simon的有效克隆。 良好的資源和一些更有經驗的朋友的耐心相結合,幫助我完成了他們的認證工作。
These projects taught me how to organize and write clean code. I honed my JavaScript skills and learned how the language differs from other more classically object-oriented languages such as Ruby and Python.
這些項目教會了我如何組織和編寫簡潔的代碼。 我磨練了我JavaScript技能,并了解了該語言與其他更經典的面向對象的語言(如Ruby和Python)的區別。
A few weeks after I earned my certification, I went back and refactored some of the initial projects. I applied the DRY principle and included some functional programming concepts I had subsequently learned. It was great fun trying to eliminate all of the for
loops in my code.
在獲得認證的幾周后,我回去重構了一些最初的項目。 我應用了DRY原理,并包含了后來學到的一些函數式編程概念。 嘗試消除代碼中的所有for
循環非常有趣。
寫了一篇關于學習JavaScript的廣泛共享的文章(無論如何對我來說) (Wrote a widely-shared (for me, anyway) article about learning JavaScript)
After finishing my first blog, which freeCodeCamp was kind enough to publish on its Medium page, I had the itch to write something else.
在完成我的第一個博客(freeCodeCamp足以在其“中型”頁面上發布)之后,我很想寫其他東西。
Because it can be so hard to figure out which learning resources are actually worthwhile, I decided to put together a study plan for beginners looking to learn JavaScript based on what I had found useful. The article was again published by freeCodeCamp and currently has over 15 thousand views and 700 recommends.
因為很難弄清楚哪些學習資源真正值得,所以我決定為希望根據我發現有用的知識學習JavaScript的初學者制定一項學習計劃 。 該文章再次由freeCodeCamp發布,目前有超過15,000次瀏覽和700條推薦。
Not exactly ‘viral,’ sure, but for someone who had never done any public writing as recently as six months ago, it was exhilarating to see my article resonate with a bunch of people.
當然,這并非完全是“病毒”,但對于六個月前從未進行過任何公開寫作的人來說,看到我的文章在一群人中引起共鳴是令人振奮的。
學過的React (Learned React)
In addition to completing the freeCodeCamp Front-End Certification, I also began learning React. Thanks to a few great tutorials (shout out to the excellent Wes Bos course, React for Beginners), I was able to finish a few React projects. These included a live-searchable recipe repository. I also became comfortable using the create-react-app CLI tool to scaffold React applications.
除了完成freeCodeCamp前端認證之外,我還開始學習React。 多虧了一些很棒的教程(向優秀的Wes Bos課程大喊“ React for Beginners” ),我才得以完成一些React項目。 其中包括一個可實時搜索的配方存儲庫。 我也對使用create-react-app CLI工具來搭建React應用程序感到滿意。
在第91天打破了我的連勝紀錄 (Broke my streak on Day 91)
With progress so great, why did I stop? The path I paved for myself had slowed down. I felt intimidated by some of the upcoming projects on freeCodeCamp, so I shifted my efforts to learning D3.js, a data-visualization library. At the time, it proved to be a bit too impenetrable for me despite multiple attempts to grasp it.
進步如此之大,我為什么停下來? 我為自己鋪的路已經放慢了。 我對即將在freeCodeCamp上進行的一些項目感到害怕,因此我將精力轉移到學習數據可視化庫D3.js。 當時,盡管我多次嘗試掌握它,但對我來說還是有點難以理解。
Also, I didn’t have a compelling personal project to work on, and needed a break from the grind of working full-time and coding at night for multiple hours.
另外,我沒有一個引人入勝的個人項目,需要從全職工作和晚上多個小時的編碼工作中解脫出來。
The most important thing I learned about keeping a streak like this going is to always know what to work on tomorrow. When you sit down at your computer, you should already have a clear idea of what you’re going to do. If you make that decision ahead of time, it removes a barrier to getting started.
我了解到保持這樣的連勝最重要的一點是, 總是知道明天該做什么 。 當您坐在電腦旁時,您應該已經對要做什么有一個清晰的了解。 如果您提前做出決定,它將消除入門的障礙。
Take a moment before you decide to stop coding for the day and make sure you have something concrete to do tomorrow. I stuck to this plan for the vast majority of my streak and it was a major factor in my success. It was only when I stopped planning ahead that I eventually missed a day.
請花一點時間,然后再決定停止當天的編碼,并確保明天有具體的工作要做。 我在大部分時間里都堅持這個計劃,這是我取得成功的主要因素。 直到我停止提前計劃時,我才最終錯過了一天。
完全值得的體驗 (A completely worthwhile experience)
At the beginning of my not-quite #100DaysOfCode, I had some familiarity with the Ruby on Rails ecosystem and HTML/CSS with only a few hours of JavaScript under my belt.
剛開始我不很熟練的#100DaysOfCode時,我對Ruby on Rails生態系統和HTML / CSS有所了解,只用了幾個小時就掌握了JavaScript。
Three months later, I gained a good, foundational knowledge of JavaScript, learned React, got a bunch of cool projects in my GitHub portfolio, and had two articles published on freeCodeCamp’s Medium page. I am a far better developer today than I was when I started this daily coding experiment a few months ago.
三個月后,我獲得了很好JavaScript基礎知識,學習了React,并在我的GitHub投資組合中獲得了很多很棒的項目,并且在freeCodeCamp的Medium頁面上發表了兩篇文章。 今天的開發人員要比幾個月前開始進行此日常編碼實驗時要好得多。
下一步 (Next steps)
Having taken a pretty substantial break, I want to continue working on React projects, dip my toes into some backend JavaScript, and learn more about algorithms and data structures. I also hope to keep writing.
經過了相當長的休息之后,我想繼續從事React項目,將腳趾浸入一些后端JavaScript,并了解有關算法和數據結構的更多信息。 我也希望繼續寫作。
If you enjoyed this article and want to continue the discussion, come find me on Twitter.
如果您喜歡本文并希望繼續討論,請在Twitter上找到我。
翻譯自: https://www.freecodecamp.org/news/not-quite-100-days-of-code-a-postmortem-d27124f023f2/
阿里的事前驗尸