我为期一个月的GitHub的经验教训

by JS

由JS

我为期一个月的GitHub的经验教训 (Lessons from my month-long GitHub commit streak)

“I want to learn JavaScript. Like, really learn it. Like, truly understand it.” — me in November 2016

“我想学习JavaScript。 喜欢,真正地学习它。 喜欢,真正了解它。 ” —我在2016年11月

A lofty goal, for sure. Especially for someone who’s only been programming for about six months, decidedly in not-JavaScript (Ruby, if you must know). A particularly daunting task after you’ve been told over and over again how weird JavaScript is. But I can be stubborn.

确实有一个崇高的目标。 特别是对于只从事了大约六个月编程工作的人,绝对是使用非JavaScript编程的(如果您必须知道,则使用 Ruby) 一项特别艰巨的任务 一遍又一遍地告诉您JavaScript多么奇怪 。 但是我可能很固执。

About two months ago, I wrapped up a stint at The Firehose Project, where I studied part-time while holding down a day job as an attorney. It was a great experience. I learned about building complex Ruby on Rails applications, test-driven development, and more. But once the program ended, I wanted to learn more about JavaScript — the language powering so much of the web.

大约两个月前,我结束了The Firehose Project的工作 ,在那里我从事兼职工作 ,同时担任律师的日常工作。 这是一个很好的经验。 我了解了如何构建复杂的Ruby on Rails应用程序,测试驱动的开发等等。 但是,一旦程序结束,我想学习更多有关JavaScript的知识-JavaScript是支持大量Web的语言。

I turned to freeCodeCamp, the resource I initially used to learn basic HTML and CSS before enrolling in The Firehose Project. freeCodeCamp has a robust, project-driven, JavaScript-oriented curriculum that seemed like the perfect option to master the basics.

我转向freeCodeCamp ,这是我最初在注册Firehose Project之前用来学习基本HTML和CSS的资源。 freeCodeCamp具有健壮的,以项目为导向,面向JavaScript的课程,这似乎是掌握基础知识的理想选择。

Without the structure of a paid program, however, I feared that I would fall victim to procrastination or otherwise come up with some excuse as to why I should stop when things got hard.

但是,如果没有付费计划的结构,我担心自己会成为拖延的受害者,否则我会提出一些借口,以求在遇到困难时我应该停下来。

I came up with a solution: work through the freeCodeCamp projects and make at least one commit to GitHub every single day for at least one month. No matter what. No matter whether I felt like coding. No matter how I was feeling on any particular day. And I’m happy to say I accomplished my goal. And what I learned surprised me.

我想出了一个解决方案:在freeCodeCamp项目中工作,并在至少一个月中的每一天至少对GitHub进行一次提交。 无论。 不管我是否想编码。 不管我在任何一天的心情如何。 我很高兴地说我实现了我的目标。 我学到的东西使我感到惊讶。

第一课:即使在我不喜欢编码的日子里,一旦强迫自己开始,我经常会快乐地工作几个小时。 (Lesson one: even on days when I didn’t feel like coding, I often happily worked for hours once I forced myself to get started.)

“The pleasures of not writing are so great that if you ever start indulging them you will never write again” — John Updike.
“不写作的乐趣是如此之大,以至于一旦您沉迷于它们,就再也不会写作了。” —约翰·厄普代克(John Updike)。

It’s an awful idea to just sit around waiting for the right moment or inspiration to strike. While this idea of waiting for one’s muse mostly comes up in creative fields, a variation of it can take hold in other disciplines.

只是坐在那里等待正确的时刻或灵感来袭是一个可怕的想法。 虽然这种等待缪斯女神的想法主要出现在创意领域,但它的一种变体可以在其他学科中扎根。

Don’t wait until you’re “in the mood to code” or until you’ve thought of a great idea for a new app. Don’t wait for inspiration. Just start.

不要等到您“打算编写代码”或等您想到一个新应用的好主意时再等。 不要等待灵感。 刚开始。

If you don’t have any active projects, log on to Code Wars and do a few kata. Make a simple implementation in that framework you’ve been meaning to check out. This field is vast enough that there is always something you could be working on.

如果您没有任何活动的项目,请登录Code Wars并进行一些操作。 在您一直想签出的那个框架中做一个简单的实现。 该场是广阔的,以至于总有一些东西 ,你可以工作。

Besides, the simple act of starting might inspire you to continue.

此外,简单的开始可能会启发您继续。

During the last month, there were more than a couple days where, after a long day at work, the last thing I wanted to do was sit down at my desk at home and struggle with some coding problem. But more often than not, once I started working, I found it easy to keep going.

在过去的一个月中,有超过两天的时间,经过一整天的工作之后,我要做的最后一件事是坐在家里的办公桌前,遇到一些编码问题。 但是通常,一旦我开始工作,我发现继续前进很容易。

The mind has a terrible way of making mountains out of molehills. Don’t fall for it.

头脑有一种糟糕的方法,可以使人们摆脱困境。 不要为它而堕落。

第二课:我了解到我能够在一段时间内致力于某件事-不是因为我为此花了很多钱,或者不是因为我需要我-而是因为我设定了我想要实现的目标。 (Lesson two: I learned that I was able to commit to something for a period of time — not because I was paying a lot of money for it, or because I was required — but because I set a goal that I wanted to achieve.)

I have trouble staying committed to things I don’t actively find fascinating.

我很难坚持做那些我没有积极发现的事情。

There’s a brief honeymoon phase with every new hobby I pick up where it’s the only thing I can think about during the day. This lasts for about a month and it goes something like this: I’m progressing at a rapid pace, learning something awesome every day. I’m feeling more confident. I start have delusions of grandeur. “I will be a master [pianist / photographer/ artist / songwriter] soon,” I whisper to myself.

在每个新的爱好中,都有一个短暂的蜜月期,这是我白天唯一可以想到的事情。 这个过程持续约一个月,过程是这样的:我的进步很快,每天都在学习一些很棒的东西。 我感到更加自信。 我开始有宏伟的幻想。 “我很快就会成为[钢琴家/摄影师/艺术家/作曲家]的大师,”我自言自语。

And then, all of a sudden, I stop noticeably improving. It gets hard. I hit a wall. The magic goes away. I wonder if maybe this thing isn’t for me after all.

然后,突然之间,我停止了明显的改善。 很难。 我撞墙了。 魔术消失了。 我想知道这东西到底是否不适合我。

Unless you’re a prodigy, you’ve probably experienced something similar. It’s so easy to quit (as anyone who ever briefly saw me with a DSLR around my neck or a sketchbook in my hands can testify). But this is a terrible way to ever get good at anything.

除非您是神童,否则您可能会经历过类似的事情。 退出非常容易(任何曾经在我脖子上戴数码单反相机或手里写有素描本的人都可以作证)。 但这是一门擅长于任何事情的可怕方法。

Learning to program is not easy. And anyone can tell you it’s certainly not always fun. There have been times when I have wanted to give up because I felt I wasn’t progressing quickly enough. But learning to program is more akin to a marathon than a sprint, and it’s important to keep this in mind when you think about your goals, and where you want to be in a few weeks, or a month, or a year. Nobody becomes an expert in this stuff overnight.

学习编程并不容易。 任何人都可以告诉您,这当然并不总是很有趣。 有时候我想放弃是因为我觉得自己进步不够快。 但是学习编程比起短跑更像是一场马拉松比赛,并且在考虑自己的目标以及几周,一个月或一年的目标时要牢记这一点,这一点很重要。 没人会在一夜之间成为专家。

With that in mind, it’s really important to just gut it out and persevere through the tough times.

考虑到这一点,重要的是要克服困难并坚持不懈。

I have long thought my tendency to stop doing stuff when it got boring or difficult was just a personal defect. Something I was bound to live with for the rest of my life. Me, the guy who likes to dabble in everything but is not actually good at any one thing.

长久以来,我一直认为我倾向于在无聊或困难时停止做某事只是个人的缺陷。 我一生都必须与之共存。 我,一个喜欢涉足所有事物但实际上在任何事情上都不擅长的家伙。

It’s true that there’s never been a better time to learn a new skill or hobby — there are so many free resources, and the barrier of entry is often so low, that there’s basically no limit to what you can learn. It’s really incredible and I wouldn’t have it any other way.

的确,从来没有比现在更好的时间来学习新技能或嗜好-有太多的免费资源,入门门槛通常很低,以至于您学到的东西基本上没有限制。 这真是不可思议,我再也没有其他方式了。

But it’s also not so great if you’re like me and have a wandering eye when it comes to interests and hobbies. In 2016, it’s incredibly easy to jump from topic to topic when the going gets tough or the spark fades. If you want to get good (at anything), it’s important to resist this temptation, however strong.

但是,如果您像我一样,并且在兴趣和爱好方面流浪,那也不太好。 在2016年,当事情变得艰难或火花消失时,从一个主题跳到另一个主题非常容易。 如果您想变得出色(无论如何),那么抵抗这种诱惑,无论多么强大,都是很重要的。

Coding and pushing daily commits to GitHub for a month-straight helped me realize that I have the power to stick it out through the tough times and keep going, even when it’s not fun or exciting.

每天对GitHub的提交进行编码和推送已连续一个月,这使我意识到,即使在娱乐性或令人兴奋的情况下,我也有能力在艰难时期坚持并继续前进。

第三课:一致的练习是最好的练习。 (Lesson three: consistent practice is the best kind of practice.)

Consistent practice of a moderate or even short length is better than having a couple marathon sessions once or twice a week. There are tons of studies on practice and training that confirm this, but you will see the evidence for yourself if you take this challenge.

坚持适度甚至短时间的持续练习比每周进行一到两次两次马拉松比赛更好。 大量的实践和培训研究证实了这一点,但是如果您接受这一挑战,您将为自己找到证据。

With consistent practice, you have the opportunity to reinforce what you learned in days prior, before you forget everything. This reinforcement is key to understanding tough programming concepts. It’s not enough to sit down for a few hours, read about how this or prototypal inheritance work and then walk away for a week. If you haven’t completely forgotten what you read by then, well, congratulations on having a better memory than me.

通过坚持不懈的练习,您有机会在忘记所有内容之前,加强前几天学到的知识。 这种增强是理解严格的编程概念的关键。 坐下来几个小时,阅读有关this继承或原型继承的工作方式,然后走一个星期,这是不够的。 如果您还没有完全忘记自己所读的内容,那么恭喜您拥有比我更好的记忆。

The far better tactic is to read, take notes, practice some implementations, and then go back the next day and review what you’ve done. By practicing consistently, and structuring your sessions so you are in a cycle of constantly reviewing old material while also learning new material, you ensure progression while solidifying a foundation of knowledge.

更好的策略是阅读,做笔记,练习一些实现,然后在第二天返回并回顾您的工作 。 通过坚持不懈地练习和安排课程结构,使您处于不断回顾旧材料,同时学习新材料的循环中,可以确保进步,同时巩固知识基础。

第四课:记日记有助于我保持动力。 (Lesson four: keeping a journal helped me stay motivated.)

Seeing all those green boxes on my GitHub profile is awesome, but I chose to also keep a journal of sorts so I could look back on my accomplishments in detail. My journal also allowed me to keep track of all my non-GitHub work, of which there was plenty (because, like I said earlier, once I got started I often did not want to stop).

在我的GitHub个人资料上看到所有这些绿色框都很棒,但是我选择还保留各种日记,以便我可以详细回顾自己的成就。 我的日记还允许我跟踪我所有非GitHub的工作,其中有很多工作(因为就像我之前说的那样,一旦开始,我常常不想停止)。

Your journal can be anything — a Google Doc, a blank notebook, or a notes app on your phone. I chose to go with a small, daily planner that has a calendar laid out for each month and then on subsequent pages, space for writing about each day. At the end of every night, I would check off the day in the calendar section and then write some notes about what I did that day. Let me tell you, it feels incredible to check those boxes.

您的日记可以是任何内容-手机上的Google文档,空白笔记本或记事应用。 我选择了一个小型的每日计划器,该计划器每个月都有一个日历,然后在随后的页面上留出每天写的空间。 每天晚上结束时,我都会在日历部分检查当天的日期,然后写下一些有关当天的工作记录。 让我告诉你,勾选这些复选框实在令人难以置信。

Whenever you’re feeling discouraged or down, you can look back into your journal and see how far you’ve come. I was really surprised at how empowering this turned out to be.

每当您感到沮丧或沮丧时,您都可以回顾一下日记,看看您走了多远。 事实证明,如此强大的功能真让我感到惊讶。

下一步是什么? 加入我! (What’s next? Join me!)

Looking ahead to the new year, I want to keep this streak going as long as possible. While I’m nowhere near where I want to be in terms of skill-level, I’ve already learned so much in the past month, and I am completely sold on this admittedly not-so-revolutionary method (shout out to #100DaysOfCode, a slightly more structured and significantly longer version of my personal challenge to myself).

展望新的一年,我想让这种情况保持尽可能长的时间。 虽然我距离技能水平还差得远 ,但过去一个月我已经学到了很多东西,而且我完全被这种公认的不太革命性的方法所售出(喊到#100DaysOfCode ,这是我对自己的个人挑战的结构化程度略高,且版本更长的版本)。

I don’t see why it wouldn’t work for anyone, at any skill, in any topic.

我不明白为什么它对任何主题的任何人,任何技能都不起作用。

If you feel inspired to start your own #CommitMonth, hit me up on twitter. I’d love to hear from you.

如果您有灵感开始自己的#CommitMonth,请在twitter上打我。 我希望收到您的来信。

“Amateurs sit and wait for inspiration, the rest of us just get up and go to work.” — Stephen King
“业余者坐在那里等待灵感,我们其余的人只是起床去上班。” - 斯蒂芬·金

翻译自: https://www.freecodecamp.org/news/lessons-from-my-month-long-github-commit-streak-b8f3167d34ac/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/396133.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

安装itunes需要管理员身份_ITUNES无法安装,提示没有权限如何解决?

展开全部注意机器一定要登陆管理员系统,如果现在不是,可以注62616964757a686964616fe78988e69d8331333365646263销,切换一下用户。还有计算机不要有漏洞,如果有的话修复一下。打开开始运行,输入regedit,点击确认打开注册表编辑器,…

vs2012新建项目产生的问题

当用vs新建web项目时遇到 只需下载一个vs2012的更新插件 http://download.microsoft.com/download/A/0/2/A02C37E0-77F7-448A-BD5C-F66AB1F78DBC/VS11-KB3002339.exe 点击安装更新即可. 转载于:https://www.cnblogs.com/GreenLeaves/p/5452073.html

zoj4062 Plants vs. Zombies 二分+模拟(贪心的思维)

题目传送门 题目大意:有n个植物排成一排,标号为1-n,每株植物有自己的生长速度ai,每对植物浇一次水,该株植物就长高ai,现在机器人从第0个格子出发,每次走一步,不能停留,每…

MyBatis注解模式批量insert方法

2019独角兽企业重金招聘Python工程师标准>>> 方法一:script标签方式 Insert("<script>insert into xxx (channelId,siteId) " "values " "<foreach collection\"list\" item\"item\" index\"index\&quo…

尚硅谷学费有住宿么_我在12个小时的住宿期间了解到的硅谷知识

尚硅谷学费有住宿么by Sahil Khoja由Sahil Khoja 我在12个小时的住宿期间了解到的硅谷知识 (What I learned about Silicon Valley during my 12 hour stay) #1 Unless you’re a designer or a developer, the billboards are pure gibberish.&#xff03;1除非您是设计师或开…

以下属于linux文件系统认为的文件是,信息安全技术题库:在Linux系统中,图形文件、数据文件、文档文件等都属于()。...

相关题目与解析Linux中图像文件属于()。A、文本文件B、连接文件C、特殊文件D、二进制文件主要用于Linux系统中进程间相互传递数据。A&#xff0e;FIFO文件B&#xff0e;设备文件C&#xff0e;链接文件D&#xff0e;目录文件关于Linux文件组织方式的说法中&#xff0c;(32)是错误…

关于eclipse中文注释乱码的问题

今天打开了一个以前的android项目&#xff0c;发现中文注释都成乱码啦&#xff01;&#xff01;&#xff01; 后来在网上找了一会解决方法&#xff0c;知道了中文的编码大体是两种&#xff1a;GBK(汉字内码扩展规范)和UTF-8(8-bit Unicode Transformation Format)。 因此问题的…

园林系统优秀党员推荐材料_园林绿化公司党员先进个人事迹材料

第1页共5页三一文库(www.31doc.com)〔园林绿化公司党员先进个人事迹材料〕我于年月踏出校门来到建设公司。初到公司&#xff0c;我被分配到分公司卉丰园林绿化公司工作。我努力学习公司各项规章制度和相关业务知识&#xff0c;多了解树木、绿化的有关情况。在此期间&#xff0c…

python入门(5)使用文件编辑器编写代码并保存执行

python入门&#xff08;5&#xff09;使用文件编辑器编写代码并保存执行 两款文本编辑器&#xff1a; 一个是Sublime Text&#xff0c;免费使用&#xff0c;但是不付费会弹出提示框&#xff1a; 一个是Notepad&#xff0c;免费使用&#xff0c;有中文界面&#xff1a; 请注意&…

js 获取时间戳的方法

(new Date()).valueOf()1541569364658(new Date()).getTime()1541569372623Number(new Date())1541569386622 // 2019年1月23日补充 *除以1000得到的是Unix时间戳 // Math.floor(new Date().getTime() / 1000), // 当天// (new Date(new Date().setHours(0, 0, 0, 0)) / 1000) …

agpl限制了开源_不要限制您的开源项目的潜力

agpl限制了开源by Julien Danjou通过朱利安丹乔(Julien Danjou) 不要限制您的开源项目的潜力 (Don’t limit your open source project’s potential) During the OpenStack summit a few weeks ago, I had the chance to talk to some people about my experience on running…

linux 批量同步,多主机目录到备份服务器批量同步脚本

为了方便同步多个主机的目录到备份服务器&#xff0c;写了如下脚本&#xff1a;#!/usr/bin/perluse strict;use File::Spec;use File::Basename;use File::Path;#设定存储路径my $storedir"/backup/";while(){chomp;my ($host,$s_path)split /\t/;my $project_namefi…

交流电的有效值rms值_交流电路的功率三角因数原来是这样理解的

点击“电工电气学习”关注即可免费订阅&#xff01;电工学习网&#xff1a;www.diangon.com关注电工学习网官方微信公众号“电工电气学习”&#xff0c;收获更多经验知识。交流电路中消耗的电能可以用直角三角形的三个边来表示&#xff0c;通常称为功率三角形我们在关于交流电路…

CSS3酷炫样式集合

1、30种炫酷CSS鼠标滑过按钮特效 2、CSS 变量实现炫酷鼠标悬浮效果 3、基于CSS3和jQuery实现跟随鼠标方位的Hover特效 4、css3金属质感登录表单 4、CSS3动态下拉菜单 5、CSS3鼠标悬浮特效 转载于:https://www.cnblogs.com/mankii/p/9922981.html

微信小程序工具篇

“工欲善其事必先利其器”&#xff0c;在开始新内容的学习之前&#xff0c;往往会对用哪个IDE开发而苦恼。因为自身硬件条件的限制&#xff08;公司给配的商务笔记本&#xff0c;真心的是中看不中用。也就是便携这么个有点了&#xff09;。所以在选择IDE方面&#xff0c;个人比…

NOIP2008 普及组T4 立体图 解题报告-S.B.S.(施工未完成)

题目描述 小渊是个聪明的孩子&#xff0c;他经常会给周围的小朋友们将写自己认为有趣的内容。最近&#xff0c;他准备给小朋友们讲解立体图&#xff0c;请你帮他画出立体图。 小渊有一块面积为m*n的矩形区域&#xff0c;上面有m*n个边长为1的格子&#xff0c;每个格子上堆了一些…

及时沟通的重要性_沟通与代码同样重要

及时沟通的重要性by Andrea Goulet通过安德烈古莱特(Andrea Goulet) 沟通与代码同样重要 (Communication Is Just As Important As Code) This past weekend, I had the pleasure of being the closing keynote at Ruby Nation. I expanded on one of the core values at Corg…

linux telnet smtp,如何使用Telnet测试IMAP与SMTP

1 前言笔者有时候调试邮件服务器需要使用Telnet直接去操纵IMAP与SMTP的服务&#xff0c;所以整理此文。2 最佳实践2.1 IMAP服务2.1.1 使用Telnet链接IMAP服务telnet imap.cmdschool.org 143信息显示如下&#xff0c;Trying 113.96.209.109...Connected to imap.cmdschool.org.E…

圆柱体积怎么算立方公式_圆柱体积公式怎么算

圆柱的体积计算公式同仁实验学校各年级组备课教师教案教案设计 课题 教学内容年级 六年级 科目 圆柱体积的计算公式数学教案类型新授P25 页例 5 及补充例题&#xff0c;完成“做一做”及练习五第 1~3 题。授课人1、通过用切割拼合的方法借助长方体的体积公式推导出圆柱的体积公…

Python学习笔记7:函数对象及函数对象作參数

一、lambda函数比如&#xff1a;fun1 lambda x,y: x y print fun1(3,4)输出&#xff1a;7lambda生成一个函数对象。该函数參数为x,y&#xff0c;返回值为xy。函数对象赋给func。func的调用与正常函数无异。上面的代码等价于&#xff1a;def fun2(x, y):return x y二、函数作…