2017-01-12 13:30:26 +08:00
使用 Exercism 提升你的编程技巧
============================================================
2017-04-15 10:07:00 +08:00
> 这些练习目前已经支持 33 种编程语言了。
2017-01-12 13:30:26 +08:00
![Improve your programming skills with Exercism ](https://opensource.com/sites/default/files/styles/image-full-size/public/images/life/code2.png?itok=CVgC8tlK "Improve your programming skills with Exercism " )
2017-04-15 10:07:00 +08:00
2017-01-12 13:30:26 +08:00
>图片提供: opensource.com
2017-04-15 10:07:00 +08:00
我们中的很多人的 2017 年目标,将提高编程能力或学习如何编程放在第一位。虽然我们有许多资源可以访问,但练习独立于特定职业的代码开发的艺术还是需要一些规划。[Exercism.io][1] 就是为此目的而设计的一种资源。
2017-01-12 13:30:26 +08:00
2017-04-15 10:07:00 +08:00
Exercism 是一个 [开源][2] 的项目和服务, 通过发现和协作, 帮助人们提高他们的编程技能。Exercism 提供了几十种不同编程语言的练习。实践者完成每个练习,并获得反馈,从而可以从他们的同行小组的经验中学习。
2017-01-12 13:30:26 +08:00
这里有这么多同行! Exercism 在 2016 年留下了一些令人印象深刻的统计:
2017-04-15 10:07:00 +08:00
* 有来自 201 个不同国家的参与者
2017-01-15 17:20:15 +08:00
* 自 2013 年 6 月以来, 29,000 名参与者提交了练习,其中仅在 2016 年就有 15,500 名参加者提交练习
* 自 2013 年 6 月以来, 15,000 名参与者就练习解决方案提供反馈,其中 2016 年有 5,500 人提供反馈
2017-01-12 13:30:26 +08:00
* 每月 50,000 名访客,每周超过 12,000 名访客
2017-04-15 10:07:00 +08:00
* 目前的练习已经支持 33 种编程语言,另外 22 种语言在筹备工作中
2017-01-12 13:30:26 +08:00
2017-04-15 10:07:00 +08:00
该项目为各种级别的参与者提供了一系列小小的挑战, 使他们能够“即使在低水平也能发展到高度谙熟”, Exercism 的创始人 [Katrina Owen][3] 这样说到。Exercism 并不旨在教导学员成为一名职业程序员,但它的练习使他们对一种语言及其瑕疵有深刻的了解。这种熟悉性消除了学习者对语言的认知负担(使之更谙熟),使他们能够专注于更困难的架构和最佳实践的问题。
2017-01-12 13:30:26 +08:00
2017-04-15 10:07:00 +08:00
Exercism 通过一系列练习(或者还有别的?)来做到这一点。程序员下载[命令行客户端][4],检索第一个练习,添加完成练习的代码,然后提交解决方案。提交解决方案后,程序员可以研究他人的解决方案,并学习到对同一个问题不同的解决方式。更重要的是,每个解决方案都会收到来自其他参与者的反馈。
2017-01-12 13:30:26 +08:00
2017-04-15 10:07:00 +08:00
反馈是 Exercism 的超级力量。鼓励所有参与者不仅接收反馈而且提供反馈。根据 Owen 说的, Exercism 的社区成员提供反馈比完成练习学到更多。她说:“这是一个强大的学习经验,你需要发表内心感受,并检查你的假设、习惯和偏见”。她还指出,反馈可以有多种形式。
2017-01-12 13:30:26 +08:00
2017-04-15 10:07:00 +08:00
欧文说:“只需进入,观察并发问”。
2017-01-12 13:30:26 +08:00
2017-04-15 10:07:00 +08:00
那些刚刚接触编程,甚至只是接触了一种特定语言的人,可以通过预设好的问题来提供有价值的反馈,同时通过协作和对话来学习。
2017-01-12 13:30:26 +08:00
2017-04-15 10:07:00 +08:00
除了对新语言的 < ruby > “微课”学习< rt > bite-sized learning< / rt > < / ruby > 之外, Exercism 本身还强烈支持和鼓励项目的新贡献者。在 [SitePoint.com][5] 的一篇文章中,欧文强调:“如果你想为开源贡献代码,你所需要的技能水平只要‘够用’即可。” Exercism 不仅鼓励新的贡献者,它还尽可能地帮助新贡献者发布他们项目中的第一个补丁。到目前为止,有近 1000 人成为 [Exercism 项目][6]的贡献者。
2017-01-12 13:30:26 +08:00
2017-04-15 10:07:00 +08:00
新贡献者会有大量工作让他们忙碌。 Exercism 目前正在审查[其语言发展轨迹的健康状况][7],目的是使所有发展轨迹可持续并避免维护者的倦怠。它还在寻求[捐赠][8]和赞助,聘请设计师提高网站的可用性。
2017-01-12 13:30:26 +08:00
2017-04-15 10:07:00 +08:00
Owen 说:“这些改进对于网站的健康以及为了 Exercism 参与者的发展是有必要的,这些变化还鼓励新贡献者加入并简化了加入的途径。” 她说:“如果我们可以重新设计,产品方面将更加可维护……当用户体验一团糟时,华丽的代码一点用也没有”。该项目有一个非常活跃的[讨论仓库][9],这里社区成员合作来发现最好的新方法和功能。
2017-01-12 13:30:26 +08:00
那些想关注项目但还没有参与的人可以关注[邮件列表][10]。
--------------------------------------------------------------------------------
作者简介:
![](https://opensource.com/sites/default/files/styles/profile_pictures/public/pictures/vmb_helvetica_sm.png?itok=mSb3xriS)
2017-04-15 10:07:00 +08:00
VM( Vicky) Brasseur - VM( 也称为 Vicky) 是技术人员、项目、流程、产品和 p\^Hbusinesses 的经理。在她超过 18 年的科技行业从业中,她曾是分析师、程序员、产品经理、软件工程经理和软件工程总监。 目前,她是 Hewlett Packard Enterprise 上游开源开发团队的高级工程经理。 VM 的博客在 anonymoushash.vmbrasseur.com, tweets 在 @vmbrasseur 。
2017-01-12 13:30:26 +08:00
--------------------------------------------------------------------------------
2017-04-15 10:07:00 +08:00
via: https://opensource.com/article/17/1/exercism-learning-programming
2017-01-12 13:30:26 +08:00
作者:[VM (Vicky) Brasseur][a]
译者:[geekpi](https://github.com/geekpi)
2017-01-15 15:54:16 +08:00
校对:[jasminepeng](https://github.com/jasminepeng)
2017-01-12 13:30:26 +08:00
本文由 [LCTT ](https://github.com/LCTT/TranslateProject ) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]:https://opensource.com/users/vmbrasseur
[1]:http://exercism.io/
[2]:https://github.com/exercism
[3]:https://twitter.com/kytrinyx
[4]:http://exercism.io/cli
[5]:https://www.sitepoint.com/exorcise-your-newbie-demons-by-contributing-to-exercism/
[6]:https://github.com/exercism
[7]:http://tinyletter.com/exercism/letters/exercism-track-health-check-new-maintainers
[8]:http://exercism.io/donate
[9]:https://github.com/exercism/discussions/issues?page=1& q=is%3Aissue+is%3Aopen
[10]:http://tinyletter.com/exercism/archive
2017-01-15 17:20:15 +08:00