翻译—Programming is hard. That’s precisely why you should learn it.

原文链接:https://medium.freecodecamp.org/make-your-hobby-harder-programming-is-difficult-thats-why-you-should-learn-it-e4627aee41a1


当我不想它这样做时,它为什么这样做?

已经过了午夜。我的妻子和孩子已经睡着了。但是睡觉却不是我的选择,我不得不弄清楚程序中的问题。所以我又一次推敲着代码,作为googolth时间,然后让他运行起来。

emm…看起来是有望实现的…

如果我点击这里,程序应该调用"compute next move"方法。如果我点击了那里后,函数应该自己调用。漂亮,现在,如果我再点击了那里,我应该得到的是…而不是那样的结果。

越多的推敲,越多的错误,就要花费越多的时间。

我觉着学习编程很难,我下一个想法呢?

是的,这也是为什么我喜欢编程的原因!

岩石也是很坚硬的

编程是怎么样成为我的爱好的

四个月前,我开始学习怎么样用JavaScript编写代码,从freeCodeCamp的前端课程开始的,从那以后,写程序就变成了我的爱好。

在过去的几年里,我对我的创造与消费的比例感到很沮丧。我在虚度了太多自己的自由时间。Netfix、播客、Twitter、杂志、体育节目、Facebook、博客、Medium、报纸、文章—这个列表还在继续增加。

这些任何活动都不是错误的,但是全部都是纯输入时间的。甚至是读一篇极好的 书籍也消耗时间的行为。

当然,作为一名记者我倒是产生了大量的输出,但是我再也不能接受一个事实:只有会有报酬时我才会努力工作。

有家庭和事业以及其他义务,我的自由时间却花费了娱乐上面。我用了太多的时间去消磨在媒体上。我感觉我就是一只猪。

至今,我的编程爱好还没有产生那么多输出。我编写了一个简单的app,我在前一篇文章中写过。我已经在freeCodeCamp上完成了所有的前端挑战和项目。

但这只是一个开始,我的目标不是去创造一个让人们印象深刻的东西。只是让自己沉浸在创造的行为中,去挑战自己,尝试一些困难的事情—除了想要完成它没有其他什么原因。

越困难困有趣儿

在我的家乡—Ontario,Canada—有一项提高自己身体健康的运动叫做让你的日子更困难。基本前提是对日常生活进行小幅度调整以增加并改善健康状况。

走楼梯而不是乘坐电梯。公交车上在上一站就下车、选择一个距工作地点最远的停车位。

"可能越简单、越方便并不是真正的有好处的…"这是一个组织所呼吁的。

我完全赞同,那些乘电梯的远方游客正在做什么。

当然,坐在电脑前面推敲代码并不能改善你的身体健康。JavaScript是一个构建应用程序很棒的工具,而不是有利于锻炼腹肌。

不过,我认为学习如何编程有利于你大脑的健康这个说法并不过分。至少比用铁拳头或者翻阅名人的Instagram账户更健康。

对于我来说,即使是我开始敲代码后,工作之外还有很多空余时间。比如,这个月,我用了几十个小时在看基因异常值把球扔在金属环上,这被称为NBA季后赛。(hhhhhhhhh),因为我是一个Toronto Raptors的粉丝,你也可以把它叫做自我折磨。

我独自一人在家里的地下室看了这么长时间的球赛。这对我有什么好处吗?好吧,我在看球赛的时候还喝了更多的啤酒,吃了更多的玉米片、鸡翅和薯片。Mike和Ikes出场了好几次。我还经常熬夜到很晚看西海岸的比赛,以至于我的睡眠时间更少。

换句话说,我认为看运动比赛是我的恶习。虽然我喜欢看比赛,但是这样真的是对我不好。它为我提供了娱乐,但除了家里吵架和中午是不是打哈欠,没有其他的了。

这是太简单的一件事了,趴在沙发上,打开Corona啤酒,架起你的脚,在那里坐上3个小时。

简单的事情更加诱人而困难的事情更加值得。

拥抱困难的事情

当我正在看电影(Hidden Figures)的时候我就会再次回想起拥抱困难的事情的价值。这部电影的特点是John F Kennedy的"我们选择登上月球"演讲片段。总统宣称,美国追求太空旅行并不是因为它简单,而是因为它困难重重。

“We choose to go to the moon in this decade and do the other things, not because they are easy, but because they are hard, because that goal will serve to organize and measure the best of our energies and skills, because that challenge is one that we are willing to accept, one we are unwilling to postpone, and one which we intend to win, and the others, too.” — John F Kennedy

"我们选择在这十年中登月等等事情,不是因为它们做起来很简单,而是因为实现它们很难,因为这个目标将用于组织和衡量我们最好的能力和技能,因为这是一项我们乐于接受的、一项不想拖延的、一项我们打算胜利等等的挑战。"

"hard"和"difficult"等词经常用来形容消极的东西。在许多情况下,这么说是合适的。看着心爱的人生病或受苦是很困难的。当友谊破裂或宠物死掉是很难受的。有时候的情况是非常令人心痛的,没有一点有益的。

然后学会一些比较难的事本身就是有益的。学习的过程事很有价值的。虽然挣扎的代码中问题是很沮丧的,但是它也是锻炼心灵的药物。

如果你一路走来,去开发一下令人惊讶的东西。用户们会带着自己的钱包涌向你做的应用程序,这样的话是极好的。如果没有,无论如何都要编码。如果你写的JavaScript变成了YouTube 上面的一位专家,并且有比New York Times更多的订阅者,那样最好的。如果没有达到,无论如何不要放弃编码。

许多人学习编程是为了实现某一个特定的目标。也许你的工作是很无聊的,你还想要更多的挑战。这样是没错的。也许你为了一份高收入而想要进军技术学校来支撑你的家庭。嘿,有人必须买发面圈和人字拖,还需要足够的WIFI。、

但是在你心里你的编码之途不需要担心有什么残局。只管开始就是了。如果途中有各种各样的困难,不要沮丧。这是你的正确的道路,一条艰难的道路。

你可能感兴趣的:(翻译—Programming is hard. That’s precisely why you should learn it.)