第一章第一個c#程序上機
On May 17th, I completed my first round of #100DaysOfCode. In case you haven’t heard, #100DaysOfCode is a challenge, or movement, started by Alexander Kallaway for people interested in coding. The basis of the challenge is that you publicly commit to coding every day for at least 100 days. If you want to read more, Alex wrote an article describing it here.
5月17日,我完成了第一輪#100DaysOfCode。 如果您還沒有聽說過, #100DaysOfCode是一個挑戰或運動,它是由Alexander Kallaway針對對編碼感興趣的人們發起的 。 挑戰的基礎是您公開承諾每天至少進行100天編碼。 如果您想,Alex 在這里寫了一篇文章對其進行描述。
I decided to study programming seriously in December 2016, when I found freeCodeCamp. I would have started the #100DaysOfCode challenge at the beginning of 2017 to kick off the New Year, but I was also starting my second semester of grad school and didn’t know if I could commit to the challenge.
我決定在2016年12月發現freeCodeCamp時認真研究編程。 我本來應該在2017年初開始#100DaysOfCode挑戰賽以開始新的一年,但是我也正在開始我的研究生第二學期,并且不知道我是否可以參加挑戰賽。
After coding more and more each week between December and February, I made the decision to join the challenge. I heard the challenge had a strong community and I knew I wanted to improve my coding skills quickly. What better way to do it then to code every day?
在12月到2月之間每周進行越來越多的編碼之后,我決定加入挑戰賽。 我聽說這個挑戰有一個強大的社區,我知道我想快速提高自己的編碼技能。 有什么更好的方式做到每天編碼呢?
我的統計 (My Stats)
Numbers are awesome, so I thought I should start off with the basic stats:
數字很??棒,所以我認為我應該從基本數據開始:
- Total hours coded: 126.5 hours 總編碼小時:126.5小時
- Average time spent each day: 1.3 hours 每天平均花費時間:1.3小時
- Longest day: 4.2 hours || 250 minutes 最長的一天:4.2小時 250分鐘
- Total days missed: 1 day 錯過的總天數:1天
- Certificates received: The Udemy Web Developer Bootcamp by Colt Steele 收到的證書:Colt Steele的Udemy Web Developer Bootcamp
- fCC progress at the end of 100 days: Basic Algorithms — Truncate a String fCC在100天結束時的進展:基本算法-截斷字符串
我如何修改規則 (How I modified the rules)
Before I explain what I changed, I have to say that I really respect Alex and the rules he developed by creating the #100DaysOfCode movement. However, I decided to modify two rules:
在解釋所做的更改之前,我必須說,我非常尊重Alex和他通過創建#100DaysOfCode運動創建的規則。 但是,我決定修改兩個規則:
“I will code for at least 30 minutes every day for the next 100 days.”
“在接下來的100天里,我每天至少要編碼30分鐘 。”
“The time spent doing tutorials, online courses and other similar resources will count towards this challenge.”
“花費在制作教程,在線課程和其他類似資源上的時間將計入這一挑戰。”
The reason I decided to change the first rule from 1 hour to 30 minutes is because I had a lot going on between February and May. I split my time between 3 part-time jobs ranging from 1–20 hours/week each, two graduate classes, and coordinating a summer study-abroad trip. My plate seemed full, but I had to figure out how to make room for coding and this challenge. It seemed fair to change this rule on one condition: Total Hours Coded === 100+ hours
我之所以決定將第一條規則從1小時更改為30分鐘,是因為我在2月至5月之間進行了很多工作。 我將時間分配給3個兼職工作,每個工作1-20小時/周,兩個研究生班,并協調暑期出國學習。 我的盤子似乎滿了,但我必須弄清楚如何為編碼和這一挑戰騰出空間。 在一個條件上更改此規則似乎很公平: 編碼的總小時數=== 100+小時
I modified the second rule because I was starting out as a #CodeNewbie. Because of my learning style and limited amount of time, I needed tutorials, online courses, and other resources to count. I agree with Alex and the rest of the community — real learning happens when you develop your own projects. However, I’m the type of person that benefits from those courses and tutorials because it gives me the confidence-boost I need to venture out on my own.
我修改了第二條規則,因為我剛開始是#CodeNewbie。 由于我的學習風格和有限的時間,我需要教程,在線課程和其他資源來計算。 我同意亞歷克斯(Alex)和社區其他成員的觀點- 真正的學習發生在您開發自己的項目時。 但是,我是從這些課程和教程中受益的人,因為它為我提供了我需要自己冒險的信心增強。
我掙扎的 (What I struggled with)
I struggled through freeCodeCamp challenges and coding problems that I couldn’t figure out within 30 minutes. I remember feeling overwhelmed thinking, “How in the world am I ever going to feel confident in my skills when there is so much to learn?”
我經歷了30分鐘無法解決的freeCodeCamp挑戰和編碼問題。 我記得當時我不知所措,“當有太多東西要學時,我將如何對自己的技能充滿信心?”
In the beginning of freeCodeCamp, I had a hard time working through problems. I would try a challenge for 30 minutes to an hour, and if I couldn’t figure it out, I felt a sense of frustration. I felt anxious. Why couldn’t I figure it out quickly enough? What was I doing wrong and why didn’t my code work?
在freeCodeCamp的開始,我很難解決問題。 我會嘗試挑戰30分鐘到一個小時,如果無法解決問題,我會感到沮喪。 我感到焦慮。 為什么我不能很快弄清楚呢? 我在做什么錯,為什么我的代碼不起作用?
Instead of working through the problem on my own, I would peek around on the forums and immediately seek help instead of struggling a little bit longer. I did not appreciate the struggle enough to fight through it. I gave up quickly and tried to eradicate any discomfort.
我不會獨自解決問題,而是會在論壇上四處張望,并立即尋求幫助,而不是花點時間苦苦掙扎。 我沒有欣賞到足以克服它的斗爭。 我Swift放棄了,試圖消除任何不適。
It felt like I was cheating- cheating myself of the pain that comes packaged with learning a difficult subject. I wanted to have the knowledge without putting in the time and effort.
感覺就像是我在自欺欺人,因為學習困難的科目給自己帶來了痛苦。 我想在不花時間和精力的情況下獲得知識。
There were days where I felt like I was progressing quickly and other days where I thought it would be impossible to even finish one programming challenge. However, #100DaysOfCode forced me to progress each day and learn something new.
有時候,我覺得自己進步很快,而有些日子,我認為甚至不可能完成一個編程挑戰。 但是,#100DaysOfCode迫使我每天進步并學習新知識。
我學到的是 (What I learned)
I feel like I learned a lot about web development over these 100 days that it’s hard to put into words. If I boiled it down to two main lessons, it would be these two:
在過去的100天里,我覺得我學到了很多有關Web開發的知識,這很難說出來。 如果我將其歸結為兩個主要課程,那就是這兩個:
你要甘于掙扎 (You have to be willing to struggle)
As you probably know, learning to code isn’t easy, but it’s achievable if you put your mind to it. The first month was tough, but at the end of it I felt an increase in my abilities.
您可能知道,學習編碼并不容易,但是如果您下定決心,那是可以實現的。 第一個月很艱難,但是最后我感到自己的能力有所提高。
Slowly, I started to feel a stronger grasp on HTML, CSS, and JavaScript. I started to connect the dots between concepts and connect what I learned to what I see on the websites I browse every day. When I read Medium articles or blog posts related to coding, I felt a new sense of understanding because people wrote about things I was learning. My level of self-confidence increased as I started to believe that soon enough, I would be able to start a career in this field.
慢慢地,我開始對HTML,CSS和JavaScript有了更深刻的了解。 我開始將概念之間的點連接起來,并將學到的知識與每天瀏覽的網站上看到的內容聯系起來。 當我閱讀有關編碼的中級文章或博客文章時,我感到了一種新的理解感,因為人們寫了我正在學習的東西。 當我開始相信不久以后,我就能開始在這一領域的職業生涯時,我的自信心就增強了。
One of the struggles is knowing that the code won’t always run bug-free the first time. I’ve learned to lower my expectations on how fast I can learn a concept or code a project, knowing that the end result shouldn’t be the reward. The reward is the struggle and what you gain from that experience.
其中一項困難是,知道代碼并非總是在第一次運行時就沒有錯誤。 我已經知道我對最終概念不應該是獎勵,但對學習概念或編寫項目的速度卻降低了期望。 獎勵是奮斗以及您從中獲得的經驗。
There will always be a day where you feel like you’ve hit a wall and can’t go further. I learned to tell myself, “the next time, it will work” and to battle through the challenge a little bit longer before asking for help. By using that mindset, I’ve found a way to always stay positive and fight through adversity.
總會有一天,您覺得自己碰壁了,無法走得更遠。 我學會了告訴自己:“下一次,它將起作用”,并在尋求幫助之前需要更長的時間來應對挑戰。 通過這種思維方式,我找到了一種始終保持積極向上并戰勝逆境的方法。
知識和專業知識將隨時間而來 (Knowledge and expertise will come with time)
There is a lot to learn in the field of programming. It’s impossible to learn everything, but if you stick to it, you can become knowledgeable in a few areas. That’s what I’ve observed from other developers and people with experience in the field. It won’t happen overnight. They have put in hundreds and thousands of hours to achieve a level of expertise. And of course, we will have to do the same.
在編程領域有很多東西要學習。 學習所有的東西是不可能的,但是如果堅持下去,您將在一些領域變得知識淵博。 這是我從其他開發人員和具有該領域經驗的人員那里觀察到的。 這不會在一夜之間發生。 他們投入了成百上千個小時來達到一定的專業水平。 當然,我們將必須做同樣的事情。
There’s no “get rich quick” formula. It takes grit and dedication. I originally planned to finish the front-end certificate by the end of the challenge, but I changed course multiple times and didn’t achieve that goal. I may have been able to do it if I had more time, or if I rushed. I’ve realized that speed is not the key here. The key is to learn to code and to learn it deeply. It’s okay if you jump around a little, as long as you’re constantly learning and moving upwards. There is not one “correct” path to make it in this field.
沒有“快速致富”的公式。 這需要勇氣和奉獻精神。 我最初計劃在挑戰結束前完成前端證書,但我多次更改了路線,但未實現該目標。 如果我有更多的時間,或者我著急,我也許可以做到。 我已經意識到速度不是這里的關鍵。 關鍵是要學習編碼并要深入學習。 只要您不斷學習并向上移動,就可以稍微跳一下。 在此字段中沒有一個“正確”的路徑可以實現。
Lastly, I remind myself that if I want to make this my career field, shortcuts will not benefit me. The only way I’ll succeed is at a pace where I will retain the information and be able to apply it in the future. I choose not to focus on the end result, but on the journey — no matter how long the road may be.
最后,我提醒自己,如果我想將此作為我的職業領域,捷徑不會使我受益。 我要取得成功的唯一方法就是保持信息的速度,并在將來能夠應用這些信息。 我選擇不將重點放在最終結果上,而將重點放在旅途上-無論路途有多長。
重要要點 (Key Takeaways)
The key takeaways for me from undergoing and completing the #100DaysOfCode challenge are these:
對我來說,經歷和完成#100DaysOfCode挑戰的主要要點是:
Make coding a habit — if you make coding a habit, you will learn more and be able to progress quicker than if you only code sporadically.
使編碼成為一種習慣 -如果僅使編碼成為一種習慣,則比僅偶爾進行編碼會學到更多,并且進步更快。
Learn to love the struggle — if you can’t enjoy the pains of programming, you’re going to face all the more difficulties when you advance to complex problems.
學會熱愛斗爭 -如果您無法享受編程的痛苦,那么當您處理復雜的問題時,您將面臨更多的困難。
Community is essential — Never underestimate the power of community. I wouldn’t have finished this challenge without the supportive communities on Twitter, freeCodeCamp, CodeNewbie and Chingu.
社區至關重要 –永遠不要低估社區的力量。 沒有Twitter, freeCodeCamp , CodeNewbie和Chingu上的支持社區,我將無法完成這一挑戰。
If you’re considering the #100DaysOfCode challenge but worried you don’t have time, make adjustments to the rules for your challenge. I pledged to do at least 30 minutes a day but ended up averaging a little over an hour. Yes, 100 days sounds like a lot, but you’ll reap so many benefits. I highly recommend taking on the challenge if you’re serious about learning to code. If this hasn’t convinced you yet, search #100DaysOfCode on Twitter and see all the people involved.
如果您正在考慮#100DaysOfCode挑戰,但擔心自己沒有時間,請調整挑戰規則。 我保證每天至少要做30分鐘,但平均每個小時要花上一點時間。 是的,聽起來100天聽起來很多,但是您將獲得很多好處。 如果您認真學習編碼,我強烈建議您接受挑戰。 如果這還不能使您信服,請在Twitter上搜索#100DaysOfCode,并查看所有相關人員。
My hope in writing this reflection is that it gave you enough insight into the challenge and you feel motivated to take it on yourself!
我希望能夠寫出這樣的反思,它使您對挑戰有足夠的洞察力,并且您有動力自己去面對挑戰!
P.S.- If you haven’t heard, the Chingu Cohorts were started by a fellow fCC camper to create a smaller community that mimics what you might receive from a bootcamp. I’ve joined two so far and can’t recommend them enough! You can learn more here.
PS-如果您聽不到,Chingu隊列是由一位fCC露營者發起的,目的是建立一個較小的社區,該社區模仿您可能從訓練營獲得的東西。 到目前為止,我已經加入了兩個,不能推薦他們太多! 您可以在此處了解更多信息 。
鏈接 (Links)
My #100DaysOfCode Github Log
我的#100DaysOfCode Github日志
The Official #100DaysOfCode Github Repo for you to fork
官方#100DaysOfCode Github存儲庫供您分叉
The Web Developer Bootcamp Udemy Course by Colt Steele
Colt Steele的Web開發人員Bootcamp Udemy課程
The June Sign-up page for the Chingu Cohorts
Chingu群組的6月注冊頁面
翻譯自: https://www.freecodecamp.org/news/what-i-learned-from-my-first-100daysofcode-13ac805ff0a9/
第一章第一個c#程序上機