开源项目arent magic

Editor’s Note: We believe that open source softwares and communities are a crucial part of software development. As a longtime Groovy community member and manager of the Groovy Community slack, Jenn Strater has intimate knowledge of the open source process; in this piece from 97 Things Every Java Programmer Should Know she shares her experience in why open source projects aren’t magic and understanding how they work can make them — and your ability to use them — even better. We’d love to know your thoughts on this piece.

编者注: 我们认为开源软件和社区是软件开发的关键部分。 作为Groovy社区的长期成员和Groovy社区松弛的经理,Jenn Strater对开源过程有深入的了解。 在这本《 每个Java程序员都应该知道的97件事》中, 她分享了她的经验,他解释了为什么开源项目不是魔术,理解开源项目的工作原理可以使它们(以及您使用它们的能力)变得更好。 我们很想知道您的想法。

One of my biggest pet peeves is hearing people say that X technology, language, build tool, etc., works by magic. If that project is open source, then what I hear is “I’m too lazy to look up how it works,” and I’m reminded of Clarke’s Third Law that “any sufficiently advanced technology is indistinguishable from magic.”1

我最大的烦恼之一是听到人们说X技术,语言,构建工具等是由魔术产生的。 如果该项目是开源的,那么我听到的是“我懒得查找它的工作原理”,并且让我想起了克拉克的《第三定律》,“任何足够先进的技术都无法与魔术区分开。” 1个

In the days of the modern web, it is easier than ever before to look up the reference guides and source code and find out how that technology works. Many open source projects like the Apache Groovy programming language, for example, have a website (in this case, groovy-lang.org) that lists where you can find the documentation, reference guides, bug tracker, and even links to the source code itself.

在当今的网络时代,查找参考指南和源代码并找出该技术的工作原理比以往任何时候都容易。 例如,许多开源项目(例如Apache Groovy编程语言)都有一个网站(在本例中为groovy-lang.org ),该网站列出了您可以在其中找到文档,参考指南,错误跟踪器,甚至是源代码链接的网站。本身。

If you’re looking for help getting started, guides and tutorials are a great place to begin. If you are more of a visual or hands-on learner, many online learning platforms offer introductory courses for learning new languages through labs, exercises, and group work. Sometimes these are even freely available so that the technologies will be more widely known.

如果您正在寻找入门帮助,则指南和教程是一个不错的起点。 如果您是视觉或动手学习者,则很多在线学习平台都提供入门课程,可通过实验室,练习和小组学习来学习新语言。 有时甚至可以免费获得这些工具,因此这些技术将得到更广泛的了解。

After learning the basic syntax and data structures and starting to use them in your own projects, you’ll likely start encountering unexpected behaviors or even bugs. No matter which ecosystem you choose, this will happen at some point. It’s just a part of the world we live in. You should first look for an issue tracker like Jira or GitHub issues to see if others are having the same problem. If so, there may be workarounds, a fix in a newer version, or a timeline for when this issue will be fixed.

在学习了基本的语法和数据结构并开始在自己的项目中使用它们之后,您可能会开始遇到意外的行为甚至错误。 无论您选择哪种生态系统,都会在某个时候发生。 这只是我们所生活的世界的一部分。您首先应该寻找一个问题跟踪器,例如Jira或GitHub issue,以查看其他人是否也遇到相同的问题。 如果是这样,可能会有解决方法,较新版本中的修复程序或修复此问题的时间表。

It may take a little work to find out where your technology’s community collaborates. Sometimes it is in chat rooms, forums, or mailing lists. Projects in the Apache foundation, in particular, tend to use Apache infrastructure rather than commercial products. Finding this place is the best way to move from “magic” to clarity.

要找出您的技术社区在哪里进行协作,可能需要花费一些工作。 有时它在聊天室,论坛或邮件列表中。 尤其是Apache基金会中的项目倾向于使用Apache基础结构而不是商业产品。 找到这个地方是从“魔术”变为清晰的最佳方法。

Even after you master a particular technology, learning is a continuous process and you’ll need to keep doing it. New releases may add new features or change behaviors in ways you will need to understand. Join the mailing list or attend conferences with the open source committers to learn what you need for upgrading your projects. If you are already a subject matter expert, this is a great way you can also contribute to uncovering the “magic” for everyone else.

即使您掌握了特定技术,学习也是一个连续的过程,您将需要继续努力。 新版本可能会以您需要了解的方式添加新功能或更改行为。 加入邮件列表或与开源提交者一起参加会议,以了解升级项目所需的知识。 如果您已经是主题专家,则这是一种很好的方式,您还可以为其他所有人发掘“魔术”。

Lastly, if you find something is unclear or missing, many projects are happy to accept contributions, especially to documentation. The project leads are often people with regular day jobs and other priorities, so they may not respond right away, but this is the best way to help everyone succeed and to uncover the “magic” for the next generation of users.

最后,如果您发现不清楚或缺少的内容,许多项目都乐于接受您的贡献,尤其是对文档的贡献。 项目负责人通常是有日常工作和其他优先事项的人,因此他们可能不会立即做出回应,但这是帮助所有人成功并为下一代用户揭示“魔力”的最佳方法。

1 Arthur C. Clarke, Profiles of the Future: An Inquiry into the Limits of the Possible. (London: Pan Books, 1973). Now, yes, there is a formal definition in computer science that refers to hiding the implementation details through abstraction, but most people misuse the term “magic” to describe any technology that they find difficult to understand.

1亚瑟·克拉克(Arthur C. Clarke), 《未来的轮廓:对可能性极限的质询》 。 (伦敦:Pan Books,1973年)。 现在,是的,计算机科学中有一个正式的定义,该定义是指通过抽象隐藏实现细节,但是大多数人会误用“魔术”一词来描述他们难以理解的任何技术。

学得更快。 深入挖掘。 看得更远。 (Learn faster. Dig deeper. See farther.)

Join the O’Reilly online learning platform. Get a free trial today and find answers on the fly, or master something new and useful.

加入O'Reilly在线学习平台。 立即获得免费试用版,即时找到答案,或者掌握一些新的有用的知识。

Learn more

学到更多

Jenn Strater is a longtime Groovy community member and manager of the Groovy Community slack. She has contributed to various open source projects including CodeNarc, Gradle, Groovy, and Spring REST Docs. As a conference speaker, Jenn has presented at events such as Devoxx Belgium, the Grace Hopper Celebration of Women in Computing, SpringOne Platform, and the O’Reilly Velocity Conference. In 2013, she founded the organization GR8Ladies (now GR8DI) through which she mentors students and junior developers. She is a graduate of Hamilton College in Clinton, NY, and was a Fulbright grant recipient in 2016–2017. She currently resides in the Twin Cities.

Jenn Strater是Groovy社区的长期成员,也是Groovy Community松弛的经理。 她为CodeNarc,Gradle,Groovy和Spring REST Docs等各种开源项目做出了贡献。 作为会议发言人,Jenn出席了诸如Devoxx Belgium,Grace Hopper庆祝计算中的妇女,SpringOne Platform和O'Reilly Velocity会议之类的活动。 2013年,她成立了GR8Ladies组织(现为GR8DI),通过该组织指导学生和初级开发人员。 她毕业于纽约克林顿的汉密尔顿学院,并于2016–2017年获得富布赖特奖学金。 她目前居住在双子城。

翻译自: https://medium.com/oreillymedia/open-source-projects-arent-magic-db6d0d2afd78

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值