5分钟阅读时间 (945个单词)

准备编写优秀的软件。在早期我们做得很轻松!

March-DevelopaSoftware

当我们编写软件并贡献于一个主要的开源项目时,有许多事情要考虑。而这往往是问题所在。

对于今天的志愿者来说,情况与25-30年前大不相同。

当时我开始接触开源软件,或者那时被称为“免费软件”,争论是在Vi/Vim和Emacs之间作为你的首选编辑器。我在SUSE Linux和另一个发行版Mandrake(后来成为Mandriva)之间切换,有时还有BSD版本。为什么不选择更流行的Ubuntu呢?很简单,它不存在,它还在马克·舒斯特罗夫的眼中闪烁。

然后出现了最漂亮的小编辑器之一,Bluefish。它是高级编辑器和集成开发环境(IDE)的结合。它为我服务了很多年。

至于学习git、GitHub、代码样式和代码嗅探器,它们都还在未来,在我们的小团队中,成为领头羊很容易。

那时的商业网络软件,我把它比作在篝火上做饭。抓起必需品,所有你能触及到的,然后做点什么。在黑暗中看起来不错,基本上没有受到当地昆虫群体的侵扰。坐下来,说它很美味。不好,视觉上很乱,充满了虫子,别人则带着赞扬和喜悦说它甚至能工作。

与此相比,今天的世界。

首先,你需要一个卫生证书,一个有所有必需品的厨房。除非有一个PAT测试证书,否则你不能提一个水壶。使用刀具的培训,了解营养、过敏、急救课程、事故记录、保险、食物储存知识。个人服装带有发网。清单很长,我们甚至还没开始打鸡蛋。

当你最终开始制作东西时,它美味、健康,在明亮的厨房灯光下看起来令人惊叹。在这个无菌的厨房环境中,甚至一根头发都不会有,然后会被批评和与其他优秀菜肴比较。

这使得使用现代工具产生的代码非常好,视觉上令人惊叹,没有虫子,被批评和嘲笑说它甚至没有快一点。

今天加入一个大型开源团队对新手来说是不是感到有些畏惧,这并不奇怪。

那么我们能做些什么来减轻负担,使入门更容易,但又能保持高标准呢?

这就是IDE团队理念的来源。

在谷歌夏季代码(GSoC)的入职渠道中,我们组织了一个周六聊天小组,讨论如果Joomla被接受为参与者,学生需要哪些东西。即使我们不被接受,我们也计划帮助社区的新成员。

搭建本地环境始终是首要问题之一。IDE的选择是工具中的一大关键部分。使用IDE,你可以用它连接到git、GitHub、代码嗅探器等,这些都是现在在写代码之前期望拥有的东西。

去年在查阅文档时,我们决定正式支持两种。一种是Visual Studio Code(VSC),它非常受欢迎,而且免费。另一种是PhpStorm,尽管需要付费,但很受欢迎,他们通过提供许可证来帮助我们社区。

在日常工作中,我使用PhpStorm,但我喜欢在笔记本电脑上使用轻量级的VSC进行探索。3月6日周六,Anibal Sanchez在我们的周六会议上就使用VSC与Joomla的一些方面进行了演讲。在会议讨论之后,我们在Glip(Joomla的官方聊天)中创建了两个新的频道,以便人们可以加入并学习他们选择的IDE。

频道里有什么计划?

我们已经要求所有加入的人将他们的学习资源固定在频道上。已经有超过100个关于设置和IDE使用的视频。

正在添加外部用户组和活动,使其真正成为跨社区的资源。

如果人们发现了关于如何使用IDE的各种有用课程和资源,请分享。可以随着时间的推移创建“每周技巧”和IDE设置的片段部分。我们可以有一些官方的食谱,让新用户快速上手,并且所有工具都在指尖。

我们将与JUGs(Joomla用户组)联合举办更多教学课程,如果记录下来,这些也会出现在频道中。

这些频道中的对话和资源共享旨在然后反馈到Joomla文档中,为想要加入社区并开始编写代码的人提供全面且易于遵循的入职流程。

如果你在Glip上遇到任何问题,无法访问新频道,请加入“在家中的虫子与乐趣”频道,那里的团队成员之一可以帮助你加入新频道。如果你没有使用Glip,请考虑加入社区,与其他正在开发Joomla的人交流。在过去一年中,看到社区成长得更好,成为新用户友好的地方,并伴随着经验丰富的Joomla开发者的指导,真是太好了。

我想感谢Patrick Jackson在项目中的帮助,他的时间和他的“欣赏”我的笑话,以及Benjamin Trenkle,他慷慨地花费时间、知识和耐心来教这位成熟的学员。

我从他人的善意中学到了很多。

在Joomla社区杂志上发表的一些文章代表了作者对特定主题的个人意见或经验,可能并不符合Joomla项目的官方立场。

1
探索核心!使用菜单创建您的页面
我是如何学习Joomla - Dénes Székely
 

评论

已经注册? 在此登录
还没有发表评论。成为第一个发表评论的人

通过接受,您将访问https://magazine.joomla.net.cn/外部第三方提供的服务