算法训练营 重编码_关于如何在没有训练营的情况下学习编码的10条提示

算法训练营 重编码

Seattle 2017. I had just attended my first team meeting at my first job as a software developer. A proud day for me!

2017年西雅图。作为软件开发人员的第一份工作,我刚刚参加了第一次团队会议。 为我感到骄傲的一天!

Three years ago I learned how to code without attending a bootcamp or having a computer science degree.

三年前,我学习了如何在不参加训练营或没有计算机科学学位的情况下进行编码。

Ever since then, I've had my dream job working as a full-time developer. But learning to code on my own wasn't easy—I struggled, and almost gave up at one point.

从那时起,我一直梦想着成为一名全职开发人员。 但是,靠自己学习编码并不容易,我挣扎了,几乎一度放弃。

If you're reading this, you might have the goal that I did—to be self-taught and avoid attending an expensive bootcamp or returning to college to get a computer science degree.

如果您正在阅读本文,那么您可能会达到我的目标-自学成才,避免参加昂贵的训练营或回到大学获得计算机科学学位。

Here are my best tips on how to teach yourself to code without a bootcamp.

这是我的最佳技巧,教您如何在没有训练营的情况下进行编码。

创建一个计划并坚持下去 (Create A Plan And Stick To It)

When you are learning to code, a common mistake is having no plan.

在学习编码时,常见的错误是没有计划。

You take a few coding tutorials here and there, build an app or two, and read a few articles on coding. But then months go by and you aren't sure where to go next. You feel lost.

您在这里和那里学习了一些编码教程,构建了一两个应用程序,并阅读了一些编码方面的文章。 但是几个月过去了,您不确定下一步要去哪里。 你感到迷茫。

What can you do?

你能做什么?

Create a plan—a detailed roadmap for how exactly you'll learn to code.

创建一个计划-详细的路线图,了解如何精确地编码。

To create your plan, start asking yourself these questions.

要创建您的计划,请开始问自己这些问题。

What language will you learn? What kind of coding are you interested in? Are you most interested in creating games, building apps, or websites? What area are you going to focus on?

你会学什么语言? 您对哪种编码感兴趣? 您对创建游戏,构建应用或网站最感兴趣吗? 您要关注什么领域?

What is your main goal? What is the reason why you want to code and what are you going to do once you have the skill? Is your goal to become a developer? Or build something?

您的主要目标是什么? 您为什么要编码的原因是什么?一旦掌握了技能,您将要做什么? 您的目标是成为一名开发人员吗? 还是建造一些东西?

What learning resources will you use?  There are many amazing (and completely free) resources to choose from when learning how to code, it can be overwhelming. Whether it's the freeCodeCamp curriculum or another, pick a program and set goals to complete it.

您将使用哪些学习资源? 在学习编码时,有许多惊人的(并且完全免费的)资源可供选择,这可能会令人难以承受。 无论是freeCodeCamp课程还是其他课程,都请选择一个程序并设定目标以完成该课程。

How many hours per week will you learn, and when? When you're in college or school, you usually know how many hours you'll be either in class or studying, and you stick with that schedule. Create a schedule for yourself that works best for you so you can stay on track.

您每周将学习几小时,何时学习? 在上大学或学校时,您通常会知道上课或学习的时间是多少,并且遵守该时间表。 为自己制定最适合自己的时间表,这样您就可以保持进度。

Before I created a roadmap for myself, I felt confused as I was teaching myself how to code.

在为自己创建路线图之前,我在教自己如何编码时感到困惑。

I didn't know what to learn or what to do next.  Once I had my built roadmap, it was easy to move forward in my journey— I knew the next step to take.

我不知道该学什么或下一步做什么。 一旦有了自己的路线图,就很容易在前进的过程中前进-我知道下一步要采取的行动。

追求好奇心 (Chase Your Curiosity)

Having your roadmap is key, but make sure to follow your curiosity.

制定路线图是关键,但是请务必保持好奇心。

To learn to code, find one thing about programming that’s fascinating to you. Find the thing that makes you curious enough to learn about it on a Saturday night - because you’ll need to do that at times.

要学习编码,请找到与编程有关的一件事,这会让您着迷。 找到让您足够好奇的东西,以便在周六晚上进行了解-因为您有时需要这样做。

Find something about coding that you are what one of my favorite writers, T.K Coleman, would call irresponsibly curious about. You know when you’re up late binging a good show, or you’re so curious about what happens next in a book that it’s 2am and you’re trying to keep your eyes open because you can't wait to see what happens next?

找到一些有关编码的知识,这就是我最喜欢的作家TK Coleman会不负责任的好奇心。 您知道当您起床晚了要看一场精彩的演出时,或者您对这本书接下来会发生什么感到非常好奇时,已经是凌晨2点了,并且您想睁大眼睛,因为您迫不及待地想看看接下来会发生什么?

Discover the area of programming  that makes you curious enough to keep pursuing it. Time flies by as you follow your curiosity, and the amount you learn will skyrocket. Like reading a great book or the best who-done-it movie you’ve seen in a while, you’ve got to get to the end.

探索使您充满好奇心并继续追求的编程领域。 随着好奇心的流逝,时间流逝,学到的东西将激增。 就像读一本好书或您曾经看过的最好的谁做的电影一样,您必须走到尽头。

Figure out what you're curious about and chase after it.

弄清楚您对什么感到好奇并追逐它。

让自己负责。 (Hold yourself accountable.)

When attending a coding bootcamp, if you don’t complete assignments, you risk getting kicked out and wasting the money you paid to enroll.

参加编码训练营时,如果您没有完成作业,则可能会被踢出并浪费您为注册而支付的钱。

In school or college, if you don’t complete your homework you risk failing a class.

在学校或大学,如果您不完成家庭作业,则可能会失败上课。

At work, you risk getting fired if you don’t show up.

在工作中,如果不露面,就有被解雇的风险。

But what risks do you face when you don’t complete a free coding course?

但是,如果您没有完成免费的编码课程,您将面临什么风险?

Nothing. You’ve got no leverage on yourself. No one to hold you accountable.

没有。 您没有对自己的影响力。 没有人追究您的责任。

So find ways to hold yourself accountable.

因此,找到使自己负责的方法。

Here are some ideas:

这里有一些想法:

Start a blog and announce (or on social media) that you’ll blog weekly on the progress of your goal.

创建一个博客,并宣布(或在社交媒体上)每周将针对您的目标进度进行博客发布。

Use positive or negative reinforcement, depending on what works for you. Tell a friend that you will pay them X amount of money if you don’t present them with evidence of a completed project. Or, every time you make progress with your coding goals give yourself a reward.

根据您的需要使用正或负钢筋。 告诉朋友,如果您没有向他们提供完成项目的证据,您将向他们支付X钱。 或者,每次您在实现编码目标方面取得进展时,都会给自己带来奖励。

Hold yourself accountable. Get leverage on yourself.

让自己负责。 利用自己。

Give yourself no choice but to learn to code.

别无选择,只能学习编码。

公开学习 (Learn In Public)

When I was first learning how to code, I read books and articles about how going on social media would hurt your productivity. I subsequently decided to delete my Twitter, Instagram and Facebook accounts.

当我第一次学习如何编码时,我读了有关社交媒体如何影响您的生产力的书籍和文章。 随后,我决定删除我的Twitter,Instagram和Facebook帐户。

And while this did help me a bit (I could no longer scroll Twitter as a distraction from a hard coding problem), I eventually realized the benefits of using social media were far greater than the disadvantages.

尽管这确实对我有所帮助(我无法再滚动Twitter来摆脱硬编码问题),但我最终意识到使用社交媒体的好处远大于缺点。

When I got back on social media and started sharing my journey towards becoming a developer, I made friends, found mentors, got job opportunities, and sped up my learning. I was also told I inspired some people by sharing my journey as a self-taught developer.

当我回到社交媒体上并开始分享成为一名开发人员的过程时,我结识了朋友,找到了导师,获得了工作机会,并加快了学习速度。 我还被告知,通过分享我作为自学成才的开发人员的经历,我启发了一些人。

You can do the same.

你也可以做到的。

When I published blog posts or social media posts about what I was learning, I received encouragement and feedback from friends. This exchange created a great positive feedback loop for me; I wanted to learn more so I could share my accomplishments again.

当我发表有关所学知识的博客文章或社交媒体文章时,我得到了朋友的鼓励和反馈。 这种交流为我创造了一个很好的积极反馈回路。 我想学习更多,以便再次分享自己的成就。

Here are some of my favorite articles and podcast interviews on all of the benefits of learning in public and how to get started:

以下是一些我最喜欢的文章和播客访谈,介绍了在公共场所学习的所有好处以及入门方法:

Learn in public: The Fastest Way To Learn.

公开学习:最快的学习方式

Use Social Media To Break Into Tech.

利用社交媒体闯入科技领域

Switching Careers And Learning In Public With Tania Rascia.

与Tania Rascia转换职业和公开学习

不要害怕Google的一切。 (Don't be afraid to Google everything.)

This is something I heard from Brian Holt when watching his excellent Intro To Web Development course on Frontend Masters. Many people believe they aren't good coders if they have to Google things. Contrary to this, as Brian points out, good programmers need to Google things all of the time.

这是我在Brian Holt观看有关Frontend Masters的出色的Web开发入门课程时听到的。 许多人认为,如果必须使用Google的产品,他们并不是很好的编码人员。 与此相反,正如Brian指出的那样,优秀的程序员一直都需要Google的东西。

Don't be afraid to Google things as you code. Googling to find an answer does not make you less of a programmer.

编写代码时,不要害怕Google的事情。 谷歌搜索答案并不会减少您成为程序员的机会。

建立您知道可以完成的项目。 (Build projects you know you can finish.)

Starting a coding project as a beginner is daunting. The project seems so massive and you feel as if you might never complete it. You lose motivation starting a project you have no idea if you can finish.

作为一个初学者开始编码项目是艰巨的。 该项目看起来如此庞大,您会觉得好像永远无法完成它。 您失去了启动项目的动力,您不知道能否完成。

The solution?

解决方案?

Try to build projects you're reasonably confident you can finish. Build projects that stretch your skills,  but be realistic on whether or not you can finish the project. Seeing the finished projects you've completed will help motivate you to continue your coding journey.

尝试构建有一定信心可以完成的项目。 构建可以扩展您技能的项目,但在是否可以完成项目上要切合实际。 看到完成的项目将有助于激发您继续进行编码之旅。

If you aren’t sure how to start a project yet, this article I wrote on moving from tutorials to coding projects might help.

如果你不知道如何启动一个项目还没有, 这个文章我写了从教程移动到编码的项目可能会有所帮助。

建立不可能的项目。 (Build impossible projects.)

That said. A good friend of mine, who has worked for some of the biggest tech companies, once told me that he felt most of his growth as a developer came from building what he called ‘impossible’ projects.

那就是。 我的一个好朋友曾在一些最大的科技公司工作过,他曾告诉我说,他感到自己作为开发人员的大部分成长都来自建立所谓的“不可能”项目。

He would have an idea for something that he wanted to build, and then he would set out to do it. And while it would seem impossible to build these ideas, he was so excited that he would try to find a way. Thus, lots of learning happens.

他会对要构建的东西有个主意,然后他便着手去做。 尽管建立这些想法似乎是不可能的,但他非常激动,以至于他试图找到一种方法。 因此,大量的学习发生了。

If you’ve been building and finishing projects, try picking a project you really dream of building even though it feels impossible to build.

如果您一直在构建和完成项目,请尝试选择您真正梦想构建的项目,即使感觉无法构建。

With the power of your passion for this project, you may be able to build exactly what you want or at least learn an incredible amount in the process.

凭借对这个项目的热情,您也许能够准确地构建自己想要的东西,或者至少在此过程中学到了很多东西。

寻找导师和您的社区 (Find mentors and your community)

One of the most inefficient ways to get a mentor to take you on is to message someone out of the blue and ask “Will you be my mentor?”

让导师接你的最无效的方法之一是给某人发疯的消息,然后问“你愿意成为我的导师吗?”

The person you are messaging likely already has many requests to be a mentor. If they're the kind of person who is mentoring someone for free in their spare time, they likely already have several mentees and can't take on another. And when you say ‘will you be my mentor’ with no specifics and no real plan, you're making your mentor do more work up front by figuring out what to do next. Anyone that can actually help you probably isn’t going to say yes.

与您聊天的人可能已经有很多要求成为导师的请求。 如果他们是那种在业余时间免费指导某人的人,那么他们可能已经有几名受训者,不能再另当别论了。 当您说“您愿意成为我的导师”而没有具体细节,也没有真正的计划时,您就是在通过确定下一步要做什么来让导师提前做更多的工作。 能够真正帮助您的人可能不会说“是”。

So how can you find a mentor?

那么如何找到导师呢?

There are great platforms such as CodeMentor or Coding Coach. There are also coaches within programs such as Udacity or Treehouse.

有很棒的平台,例如CodeMentorCoding Coach 。 Udacity或Treehouse等计划中也有教练。

You can also find mentors by asking questions, discussing what you’re learning and interacting with others on forums and places like StackOverflow.

您还可以通过提问,讨论您正在学习的知识以及在论坛和诸如StackOverflow之类的地方与他人进行互动来找到导师。

Having a community to surround you can also help keep you immensely during your journey of learning to code. Here are some of my favorite online coding communities: freeCodeCamp, of course. CodeNewbie, Dev.to, Stackoverflow, Reddit.

在您周围有一个社区可以帮助您在学习编码的过程中保持极大的精力。 这里是一些我最喜欢的在线编码社区:freeCodeCamp。 CodeNewbie开发 ,Stackoverflow,Reddit。

I also started the CodebookClub at the beginning of this year, a free community of developers of all experience levels learning together. We host live online meetings and reach techincal books as well as take tutorials, together.

我还于今年年初启动了CodebookClub ,这是一个由所有经验水平的开发人员组成的免费社区,可以一起学习。 我们举办现场在线会议,并提供技术书籍以及教程。

不要亲自处理您的错误。 (Don't take your errors personally.)

I often witness new developers write code, get an error, and then say something like, “Ugh! Of course I got this error, I’m stupid”, or “I seem to get a lot of errors, I’m not sure if I’m cut out for programming.”

我经常看到新开发人员编写代码,遇到错误,然后说类似“ U! 当然,我遇到了这个错误,我很愚蠢”,或者“我似乎遇到了很多错误,我不确定是否要切入编程领域。”

Yes, you wrote an error--we all do. An error in your code doesn’t mean you aren’t cut out to be a developer. I repeat: errors while coding don’t mean you aren’t going to be a great developer. They’re a natural part of the coding process.

是的,您写了一个错误-我们都做。 您的代码中的错误并不意味着您不会沦为开发人员。 我再说一遍:编码时的错误并不意味着您不会成为一名出色的开发人员。 它们是编码过程中自然的一部分。

Think of your favorite video game. When you failed a level several times, did you think, ‘Maybe I’m not meant to be a video game player’? Probably not! Fail many times, then master that level--them go to the next one.

想想您最喜欢的视频游戏。 当您几次未通过游戏时 ,您是否想过“ 也许我不是要成为视频游戏玩家 ”? 可能不是! 多次失败,然后掌握该级别,然后转到下一个级别。

Don’t take your errors personally. Learn from them, and move on.

不要亲自处理您的错误。 向他们学习,继续前进。

保持连胜。 (Keep the streak going.)

When I was first learning to code, I took a break for a week. When I came back to coding, I felt like I was seeing the language again for the first time. And once I took a break from coding, it was that much harder to get back into it.

当我第一次学习编码时,我休息了一个星期。 当我回到编码时,我觉得我是第一次看到这种语言。 一旦我在编码上休息了一下,就很难再使用它了。

My mom suggested I start a streak of coding. Coding Every. Single. Day. There were many times when I felt tired or unmotivated to code, but I had to keep my streak going. So I would code--even for just five minutes. So even on the days when I really didn’t feel like it, I still took a small step towards my goal. That momentum kept me going--all the way to the finish line.

我妈妈建议我开始连胜编码。 编码每个。 单。 天。 很多时候,我对代码感到疲倦或无动力,但我不得不继续努力。 所以我会编码-即使只是五分钟。 因此,即使在我真的不喜欢它的日子里,我仍然朝着自己的目标迈出了一小步。 这种动力使我一直走到终点。

Keep the streak alive!

保持连胜!

如果您喜欢这篇文章,请注册我的电子邮件列表 ,我将在该列表中提供免费课程,并为我的免费编码图书俱乐部宣布会议。
(If you enjoyed this post, sign up for my email list where I  give away free courses and announce meetings for my free coding book club.)

如果您对此帖子有任何反馈或疑问,请随时向我发@madisonkanna的推文。 (If you have feedback or questions on this post, feel free to Tweet me @madisonkanna.)

翻译自: https://www.freecodecamp.org/news/10-tips-on-how-to-code-without-a-bootcamp/

算法训练营 重编码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值