软件访问转向本地

by Madison Kanna

麦迪逊·卡纳(Madison Kanna)

我是如何从完整的初学者转向软件开发人员的,以及如何做到的 (How I went from complete beginner to software developer — and how you can too)

Two years ago, I was right where you are today.

两年前,我对您今天所在的位置说对了。

I wanted to become a professional programmer. But I had no idea how to make it happen.

我想成为一名专业程序员。 但是我不知道如何实现它。

I had no college degree, no previous coding experience, and I sucked at math.

我没有大学学历,没有以前的编码经验,而且我很喜欢数学。

And there was the nagging doubt: Can someone like me become a developer?

还有一个令人困扰的疑问:像这样的人可以成为开发人员吗?

Well, I made it happen. I have my dream job. I’m a software developer.

好吧,我做到了。 我有理想的工作。 我是软件开发人员。

I often get asked how I did it.

我经常被问到我是怎么做到的。

Here are the three vital actions I took that helped me go from a complete beginner to a software developer.

这是我从一个完整的初学者到软件开发人员所采取的三项重要措施。

1.建立路线图 (1. Build your Roadmap)

The biggest mistake aspiring developers make is that they have no plan.

有抱负的开发人员最大的错误是他们没有计划。

No roadmap.

没有路线图。

When you have no plan, you feel lost. You take coding tutorials, maybe build a project or two. Then months pass. You think, will I ever become a developer? This is all so confusing. You have no idea what path to take.

当您没有计划时,您会感到迷失。 您需要编写编码教程,或者构建一个或两个项目。 然后几个月过去了。 您认为, 我会成为开发人员吗? 这真是令人困惑 。 您不知道走什么路。

The solution? Build a roadmap - right now. Create a plan for exactly how you’ll become a developer.

解决方案? 立即建立路线图。 为您将如何成为开发人员制定计划。

Your first step: Decide if you’re going to do a coding bootcamp or take online courses.

第一步:确定要进行编码训练营还是参加在线课程。

For me, I decided not to attend a bootcamp. I created my curriculum and taught myself…everything.

对我来说,我决定不参加训练营。 我创建了自己的课程并自学了…… 一切。

Because I was homeschooled growing up, I was comfortable learning on my own, so I decided to teach myself to code using various online courses ranging from freeCodeCamp to Udacity.

因为我从小就在家里上学,所以我自己很容易学习,所以我决定使用从freeCodeCamp到Udacity的各种在线课程来教自己编码。

This approach costs far less than a bootcamp but it had a downside: I had no coding mentors or coding curriculum to follow. Learning from online resources means you do pay nothing or very little, but as I discovered, you don’t have much support. And you will struggle on your own as I did.

这种方法的成本远低于训练营,但有一个缺点:我没有编码指导者或编码课程可以遵循。 从在线资源中学习意味着您无需付出任何代价或付出很少,但正如我发现的那样,您所获得的支持并不多。 您将像我一样独自奋斗。

People are drawn to learning to code from online resources as I did, but it is not always the best way. The low cost is a big benefit, but make sure you are able to learn well on your own and can hold yourself accountable - without a lot of mentorship or support.

人们像我一样喜欢从在线资源中学习编码,但这并不总是最好的方法。 低成本是一个很大的好处,但是请确保您能够独自学习并能承担责任-无需大量的指导或支持。

Bootcamps are expensive but they often come with much more support and accountability.

训练营很昂贵,但通常会提供更多的支持和责任感。

Carefully decide which path is best for you.

仔细决定哪条路径最适合您。

If you do learn to code without a bootcamp, I suggest picking an affordable online program that has at least some mentorship and a curriculum to follow. Doing so will ensure you struggle less and get the feedback you need. Udacity’s nanodegrees and Treehouses techdegrees offer some mentorship and code reviews.

如果您确实在没有训练营的情况下学习编码,我建议您选择一个负担得起的在线程序,该程序至少要有一些指导和课程。 这样做可以确保您减少挣扎并获得所需的反馈。 Udacity的纳米学位和Treehouses技术学位提供一些指导和代码审查。

If you decide to learn to code for free, freeCodeCamp’s curriculum is fantastic, and if you get involved in their community, you will excel.

如果您决定学习免费的编码,则freeCodeCamp的课程非常棒,并且如果您加入他们的社区,您就会脱颖而出。

Once you’ve chosen your path, complete your roadmap by answering these questions:

选择路径后,请回答以下问题,以完成路线图:

  • Do I want to become a full-stack, frontend or backend developer? Decide what you’ll focus on learning. Know what language and libraries you’ll need to learn.

    我想成为全栈,前端或后端开发人员吗? 确定您将专注于学习的内容。 了解您需要学习的语言和库。

  • How many hours per week will I study, and when? Carve out the times of the week you’ll practice coding and never miss those study times.

    我每周要学习几个小时,何时学习? 精简一周中的时间,您将练习编码,永远不会错过那些学习时间。

  • What date will I start applying for jobs? Set a deadline for when you’ll apply.

    我什么时候开始申请工作 ? 设定申请截止日期。

  • What will I give up? It’s awesome to picture yourself working as a developer, but the road to get there means early mornings, weekends and late nights of hard work.

    我会放弃什么? 将自己想象成一名开发人员真是太棒了,但是到达那里的道路意味着努力工作的清晨,周末和深夜。

Be realistic: Look at what you spend time on each week, and give one thing up. For me, I was not willing to give up time with my family, but I decided to give up hanging out with friends. On most Saturdays, instead of spending time with friends as I usually did, I stayed home and programmed.

现实一点:看看您每周花费的时间,并放弃一件事。 对于我来说,我不愿意放弃与家人在一起的时间,但我决定放弃与朋友一起闲逛。 在大多数的星期六,我没有像平常那样和朋友在一起,而是呆在家里编程。

When building your roadmap, keep in mind: contrary to a lot of the marketing hype you’ve seen, there is no magical coding course, no magical program, no magical bootcamp that will ‘make you’ a developer. A lot of people ask me what online course I used to learn to code as if there’s one “golden ticket” that will turn you into a developer.

在制定路线图时,请记住:与您所见过的许多营销炒作相反, 没有神奇的编码过程,神奇的程序,没有神奇的训练营可以“使您成为开发人员”。 很多人问我,我曾经学习过哪些在线课程,就像有一张“黄金票”将您变成开发人员一样。

There’s not.

没有。

Only you can make yourself a developer.

只有才能使自己成为开发人员。

Your grit and determination will get you there. But I also used a game-changing method to learn to code to become a developer.

您的勇气和决心将使您到达那里。 但是我也使用了改变游戏规则的方法来学习编写代码成为开发人员。

What was it?

它以前如何?

2.集中精力。 (2. Train your focus.)

There are a million free coding courses available to everyone.

每个人都有一百万免费的编码课程。

If it’s so easy to access free coding courses, why is it so dang hard to learn how to code? Why is it so hard to become a developer?

如果访问免费的编码课程是如此容易,那么为什么学习编码如此困难呢? 为什么要成为开发人员如此困难?

Because many of us do not know the vital skill needed to learn and master programming languages. This skill is called Deep Work popularized by computer scientist, Cal Newport.

因为我们很多人都不了解学习和掌握编程语言所需的关键技能。 该技能称为“ 深度工作”,由计算机科学家Cal Newport推广。

TL;DR: In order to learn hard things, you must focus intensely for long periods. That’s deep work.

TL; DR :为了学习困难,您必须长期集中精力 。 那是艰巨的工作。

But most of us are actively killing off our ability to focus, and few people do deep work.

但是我们大多数人都在积极削弱我们的专注能力 ,很少有人做深入的工作。

Think about that last time you stood in a line. How much time elapses before you feel compelled to grab your phone and check notifications? Or what about this article itself - have you switched to a new tab while reading? Checked your Twitter account? ?

想想您上一次站成一排的情况。 在您被迫抓住手机并检查通知之前,需要花费多少时间? 还是这篇文章本身-您在阅读时是否切换到新标签页? 检查了您的Twitter帐户? ?

Today, it’s the norm to have the attention span of a goldfish. And this is why it is so hard for us to learn complex things like coding. Once I figured this out, I realized that if I committed to doing deep work, I could learn the hard things I needed to know to become a developer.

如今,吸引金鱼的注意力已成为一种规范。 这就是为什么我们很难学习诸如编码之类的复杂事物。 一旦弄清楚了这一点,我便意识到,如果我致力于深入的工作,那么我将可以学习成为一名开发人员所需要了解的艰巨知识。

When you sit down to code, set a timer for 90 minutes. For that entire time, focus on the app you’re building or the coding problem you’re trying to solve. Do not check your notifications. Do not open a new tab. When you find yourself daydreaming, quickly bring your attention back to coding.

当您坐下来编码时,将计时器设置为90分钟。 在整个过程中,请专注于要构建的应用程序或要解决的编码问题。 不要检查您的通知。 不要打开新标签。 当您发现自己在做白日梦时,Swift将注意力转移到编码上。

Train your focus like your future career depends on it - because it does.

像将来的职业一样依靠它来训练自己的注意力-因为它确实如此。

Without practicing deep work, I would not be a developer today.

如果不进行深入的工作,我今天就不会成为开发人员。

3.追逐您的好奇心。 (3. Chase your curiosity.)

When most people set out to learn to code, they start a curriculum of things they are “supposed” to know.

当大多数人开始学习编码时,他们就开始了一个“应该”知道的事情的课程。

Then they get bored. Just like in school, when you’re learning new things only because you’re supposed to learn them, but you don’t know why you need to learn them or why you even care. Losing interest is easy.

然后他们感到无聊。 就像在学校里,当你学习新的东西,只是因为你应该学习他们,但你不知道为什么你需要了解他们为什么你甚至关心。 失去兴趣很容易。

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.

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

There’s a line from Alice In Wonderland that’s stuck with me:

爱丽丝梦游仙境》(Alice In Wonderland)的一句话一直困扰着我:

She had never before seen a rabbit with either a waistcoat-pocket, or a watch to take out of it, and, burning with curiosity, she ran after it.

她以前从未见过有背心口袋或手表的兔子,并且好奇地燃烧着 ,追赶它

As I’ve worked with more senior developers in my career, I’ve realized: the best programmers don’t have to force themselves always to be learning more. They are always learning because, like Alice, they are burning with curiosity.

当我与更多高级开发人员一起工作时,我意识到:最好的程序员不必强迫自己不断学习更多知识。 他们一直在学习,因为他们像爱丽丝一样充满好奇心

Some try coding in one language and hate it, then pick up another language and love it. Make sure you try different programming languages and learn about different fields within programming to discover what fires up your curiosity.

有些人尝试用一种语言编码并讨厌它,然后选择另一种语言并喜欢它。 确保尝试使用不同的编程语言,并了解编程中的不同领域,以发现激发您好奇心的原因。

If you’ve tried learning to code several times from different angles and you still feel like you’re forcing yourself, then coding may not be for you. Contrary to the marketing material of most bootcamps, learning to code in three months and landing a $100K job offer right after, is not the reality for most. Coding is not a get rich quick scheme. Don’t learn to code if you are bored by it, because you’ll miss out on finding what your real curiosity in life is. However, if you are interested in tech but not coding, there are many other incredible and in-demand skills you can learn: design, data analytics, and more.

如果您尝试过从不同角度学习几次编码,但仍然觉得自己在强迫自己,那么编码可能不适合您。 与大多数训练营的营销材料相反,在三个月内学习编码并在紧接着找到10万美元的工作机会后,对于大多数人来说,这并不是现实。 编码不是一种致富的快速方案。 如果您对代码感到无聊,请不要学习编码,因为您会错过寻找生活中真正的好奇心的机会。 但是,如果您对技术感兴趣而不对编码感兴趣,那么您还可以学习许多其他令人难以置信的按需技能:设计,数据分析等等。

If you have a curiosity about programming, chase it. The more you go after your curiosity, the more of it you have. And while you’re chasing your curiosity, don’t worry about where you are coming from. Don’t worry about your lack of a CS degree or what’s behind you.

如果您对编程有好奇心,请追逐它。 您对好奇心的追求越多,就会拥有更多的好奇心。 在追逐好奇心的同时,不必担心自己来自哪里。 不必担心您缺乏CS学位或背后的原因。

Regardless of your age, lack of a degree or previous experience, if you love to code, practice deep work and make learning a priority in your life you can become a professional developer.

无论您的年龄,缺乏学位或以前的经验如何,如果您喜欢编码,从事深入的工作并将学习作为生活中的重中之重,则可以成为专业的开发人员。

Even if you’re a complete beginner.

即使您是一个完整的初学者。

Start now.

现在开始。

如果您喜欢这个故事,请按住? 按钮! 为了与我保持联系,请注册我的杂志 ,在这里我将分享有关学习编码的技巧,并提供免费的编码课程。 (If you enjoyed this story, please hold down the ? button! To keep in touch with me, sign up for my newsletter where I share tips on learning how to code and give away a free coding course.)

翻译自: https://www.freecodecamp.org/news/how-i-went-from-complete-beginner-to-software-developer-and-how-you-can-too-dd36ed08e11b/

软件访问转向本地

软件访问转向本地_我是如何从完整的初学者转向软件开发人员的,以及如何做到的...相关推荐

  1. 芯片-模组-开发板-软件开发包SDK(Software Development Kit)的关系(软件开发人员必须了解的硬件知识)

    使用的芯片相同,但不同模组的Flash大小.天线的材质.模组尺寸是不同的.是的,芯片到模组的演变经历了"定制化.专用化"的过程.模组最终会嵌入到电视.电冰箱.空调等不同的产品中去, ...

  2. 外网怎么访问内网_神卓互联搭建远程桌面和web应用(很详细)

    外网怎么访问内网_神卓互联搭建远程桌面和web应用,我们都知道国内IP资源严重不足,导致运营商商们都不给固定的IP,都是动态分配的,现在基本的已经是100或者10开头的局域网的IP,运营商的ADSL网 ...

  3. 软考中级软件设计师难不难_为什么这么难处理设计师

    软考中级软件设计师难不难 重点 (Top highlight) I have a confession to make. As a young Design 'pioneer' in many tec ...

  4. 定制开发软件所有权_职业所有权软件开发人员指南

    定制开发软件所有权 介绍 (Introduction) 您的职业正在流向大海吗? (Is Your Career Drifting Out To Sea?) Like a frog who's slo ...

  5. pycharm remote 远程项目 同步 本地_利器:PyCharm本地连接服务器搭建深度学习实验环境的三重境界...

    作为实验室社畜,常需要在本地使用Pycharm写代码,然后将代码同步到服务器上,使用远程登录服务器并运行代码做实验. 这其中有很多事情如果没有好的工具,做起来会非常麻烦. 比如如何快速同步本地与服务器 ...

  6. 内网击穿之 HTTP 穿透:网站没上线?如何让全世界的人都可以访问你本地的网站?

    文章目录 前言 一.内网穿透原理与工具介绍 1.1.内网穿透工作原理 1.2.内网穿透工具介绍 二.启动内网穿透工具 2.1.命令及配置介绍 2.2.查看映射信息 三.进行访问测试 3.1.远程访问本 ...

  7. 软件项目技术路线图_创建基本的项目路线图

    软件项目技术路线图 Continuing from my previous article, at this checkpoint, I have two things with me: 上一篇文章的 ...

  8. 使用CuteFtp软件访问虚拟机下的Ubuntu

    使用使用CuteFtp软件访问虚拟机下的Ubuntu首先要在Ubuntu下启动FTP,SSH和NFS服务. 1.$ sudo apt-get update 2.$ sudo apt-get insta ...

  9. tplink软件升级有用吗_如何升级路由器的软件(固件)?

    云路由器支持在线升级和本地升级两种升级方式.我们推荐使用在线升级,操作更加方便快捷.部分路由器可能不支持在线升级或路由器无法联网在线升级,请使用本地升级的方法.下面将详细介绍在线升级和本地升级的操作步 ...

最新文章

  1. 百度:I am from China, wait, am I?
  2. UE如何使用正则表达式
  3. 三菱fb功能块手册中文_技成周报33期 | 三菱、西门子全系列这34个问题值得一看!...
  4. java与json,java与json
  5. 记录 之 tensorflow 常用函数:tf.split(),tf.clip_by_value() 和 tf.cond()
  6. 【Alpha】第一次Daily Scrum Meeting
  7. python异常值检测_python – 使用RPCA的异常值
  8. windows 下 MyEclipse 逆向工程生成hiberate 对应配置文件以及 javaBean。
  9. python中模块、函数与各个模块之间的调用
  10. extjs fileuploadfield default value
  11. 单片机上的8位数码管显示数字12345678
  12. 任鸟飞FPS类型游戏绘制,骨骼,u3d,UE4和游戏安全,反外挂研究 (三)
  13. 32位与64位到底什么区别?
  14. 前有标兵,后有追兵,自热老兵莫小仙胜算还剩几成?
  15. MySQL培训-梅科尔
  16. Ubuntu 11.04 安装后要做的20件事情
  17. 如何使得自己说话有底气?
  18. 无线电能传输LCL-S拓扑/WPT MATLAB/simulink仿真模型 (模型左边为两电平H桥逆变器,LCL-S串联谐振,右边不可控整流结构)
  19. 微服务网关spring cloud gateway入门详解
  20. informatica 许可_Informatica安装及使用文档

热门文章

  1. MaxCompute动态更新表中某个(多个)字段的数据
  2. 异步方法顺序调用问题
  3. 数据结构----单链表增删改查
  4. 计算机二级vlookup引用怎么操作,VLOOKUP函数怎样引用二个条件
  5. pytorch python区别_pytorch源码解析:Python层 pytorchmodule源码
  6. Ant Design Vue 表格内编辑(附完整源码及效果图)
  7. input 默认样式的修改
  8. swift -charts框架雷达图
  9. 如何设计一个 iOS 控件?(iOS 控件完全解析)
  10. java学习路线图(2018年最新版)