JavaRush /Java 博客 /Random-ZH /喝咖啡休息#55。寻找开发者社区的 4 个技巧。初学者需要掌握的 5 个意想不到的技能

喝咖啡休息#55。寻找开发者社区的 4 个技巧。初学者需要掌握的 5 个意想不到的技能

已在 Random-ZH 群组中发布

寻找开发者社区的 4 个技巧

来源:Honeypot 帮助开发者职业发展的因素之一是他们所属的社区。如果你还没有找到你的,别担心!在本文中,我将告诉您如何执行此操作。 人类并不意味着孤独。正是通过合作实现共同目标的能力,人类才取得了进步。这种协作的一个很好的例子就是开发者社区。与其他一些专业行业不同,开发人员彼此互动非常频繁,他们的大部分生活都以某种方式与他们周围创建的社区联系在一起。如果您是开发人员但尚未找到您的社区,请不要失望。您可以在职业生涯的任何阶段加入其中之一。喝咖啡休息#55。 寻找开发者社区的 4 个技巧。 初学者程序员需要掌握的 5 种意想不到的技能 - 1

1. 找出你需要什么

在进入在线深渊寻找开发者社区之前,您应该弄清楚自己到底需要什么以及正在寻找什么。开发人员职业生涯的每个阶段都有自己的兴趣和差异。如果您正在学习 Java,则不太可能在 Python 社区中找到所需的信息,反之亦然。

2.寻找当地社区

Jessica 是 Ember 编程团队的成员,住在柏林。对她来说幸运的是,这座城市提供了大量与其他当地开发商建立联系的机会。“我在专业小组会议方面拥有丰富的经验,并且长期在开放技术学校工作,这有助于人们更多地了解技术。” 这个女孩参加了研讨会和男女同校小组,发现这对初学者非常有用。“我得到了其他学生的支持并获得了免费指导。可以说,它给了我一种责任感,帮助我定期参加会议,并鼓励我自学。” 要找到您当地的社区,杰西卡建议在 Google 上搜索。如果您住在大城市,那么寻找当地的编码社区加入可能不会有任何问题。然而,社交网络上的一些此类群组可能不再活跃或很长时间没有在其中发布消息。在这些情况下,不要害怕直接询问社区中是否还有其他事情发生。表现出兴趣总是值得赞赏的。

3. 寻找在线社区

亲自会见其他开发人员有很多好处。但如果您对当地社区的访问受到限制,那么您几乎肯定会在网上找到替代方案。您可能已经在使用各种框架或技术,这些框架或技术在 Discord 或 Slack 上拥有自己的专用社区。这既适合工作协助,也适合寻找新项目、想法的灵感,甚至适合参与开放项目。

这里有一些地方可以找到您的在线社区

开发到. 用他们自己的话说,“软件行业依赖于协作和网络学习”,dev.to 为开发人员提供了一个见面和互相帮助的空间,无论是编码的技术方面、职业建议还是一般支持和激励。 Slack 上的#开发人员。您需要回答几个问题才能访问此频道,但是一旦您进入,您将获得所需的所有支持和建议:) Hashnode。写一篇关于您想要的任何编程主题的文章,并与更广泛的社区互动。这是与其他开发人员保持联系的好方法。 编码的女性。这是一个为科技行业女性提供支持的地方,她们可以在这里找到编程资源和分享想法的开放空间。 红迪网。每个编码领域都有大量的 Reddit 子版块;查看一些最活跃的: r/programming r/java r/python r/javascript r/reactjsr/cscareerquestionsFacebook 上的开发者圈子。这里的主要目标是创建本地组织的社区,开发人员可以“获得免费工具来开发新技能、想法并推进他们的职业生涯”。在 Facebook 上查找您的社区,所有讨论目前均在线。

4. 寻找开源社区

参与开源社区可能是您职业发展的重要组成部分。成为开源社区的积极成员不仅意味着做出贡献,还意味着参加活动和会议、会见其他人、寻找导师和建立人际网络。除了在开源社区中获得的技能(技术和非技术)之外,参与其中还可以让程序员在日常工作之外获得归属感。开源社区有一种独特的感觉,那就是致力于做大事,而且从很多方面来说,这种工作是一种有意义的贡献。想知道从哪里开始?考虑一下您喜欢哪些开源项目并从那里开始 - 它可以像查找并修复代码中的拼写错误一样简单。重要的是从某个地方开始。

结论

开发人员在专业社区中获得的自我发展支持和激励水平非常高。幸运的是,无论是本地社交媒体团体还是专用于编程语言的大型在线资源,开发人员社区的访问权限无处不在。最重要的是找到适合你的。

初学者需要掌握的 5 个意想不到的技能

来源:Codeburst 我成为一名自学成才的开发人员的道路是漫长而艰难的。有时,回想起我所遇到的所有障碍和失望,我会问自己是否值得以这种方式开始。现在我可以说这是值得的。对于像我这样从零开始的人来说,学习曲线非常陡峭。但我相信,从长远来看,征服这座山的好处超过了所付出的努力。当然,这仅适用于您喜欢所学内容的情况。我花了几年时间才明白,一个优秀的开发人员必须能够做的不仅仅是快速、轻松地编写代码。许多初学者没有意识到获得开发技能需要的不仅仅是编写和运行程序的能力。因此,除了编码之外,这里还有每一个有抱负的开发人员肯定需要的五项技能!喝咖啡休息#55。 寻找开发者社区的 4 个技巧。 初学者程序员需要掌握的 5 种意想不到的技能 - 2

1.使用协作工具

许多流行的自定进度编程平台都专注于语言语法和数据结构。有些允许学生从头开始创建基本项目。假设一个简单的游戏或任务列表应用程序。这些课程对于开始掌握编程技能非常宝贵,但它们并不能模拟您将来将遇到的现实工作环境。开发人员在大型项目上一起工作,有时开发人员可能会同时处理多个代码库。团队合作通常涉及使用 Google 电子表格或 Invision 等工具。开发团队有自己的标准协作工具集。我的公司与美国数以万计的其他公司一样,都使用 GitHub。我永远不会忘记我的同事向我介绍 GitHub 的那一天。首先,他们告诉我打开计算机上的终端(我不知道我的计算机上有类似的东西)。然后我的同事开始在我屏幕上的这个神秘窗口中输入一些乱码。事实证明,这些胡言乱语可以起到神奇的作用,比如在我的计算机上的几个文件夹中塞满各种充满代码的文件。然后他们谈论“树枝”和“绒毛”,一些“遥远”的东西。似乎所有单词都以前缀“git”开头。我知道他们说英语,但我不清楚他们话里的意思。如果您是以前没有与其他开发人员一起编码过的新手,则必须学习该语言和协作工具。这可能看起来很复杂,特别是如果您从未打开过命令提示符。但随着时间的推移,它会成为一种习惯。

2. 日志记录和错误处理

假设您已经学会了与其他程序员协作,并且您的代码已发送到生产环境。当你写的东西被成千上万甚至数百万用户使用时,这是一种真正令人兴奋的感觉。但是一旦到达这个阶段,您就会惨痛地了解到代码中意外的错误总是会发生。例如,您创建的变量从未收到值。现在您正在调用一个带有空值的方法,并且您的程序不知道如何处理它。发生错误,现在用户无法再访问您创建的精彩页面。当您测试程序时,一切似乎都是正确的,因此您甚至可能没有注意到问题。这种特殊错误可能只在 5% 的时间内发生,但对于 10 万用户中的 5% 来说,这是很严重的。您需要学习如何记录、处理和预测代码中的错误:这些对于开发人员来说绝对是必不可少的技能。是的,预测问题的能力是一种随着时间和经验而发展的本能。但对于初学者来说,重要的是要记住错误几乎是开发过程中不可或缺的一部分。了解如何使用不同类型的错误日志记录来保护您的代码可以在将来为您省去很多麻烦,尤其是当您负责调试时。它还可以帮助识别您甚至不知道自己遇到的问题。今天,我们可以使用各种错误记录工具,可以轻松跟踪代码库中的漏洞。我最喜欢的是 Sentry,它可以让您查看问题首次发生的时间以及发生的频率。另外值得一提的是 Logentries、Rollbar 和 Instabug。有些程序可以监视系统范围的数据和问题,例如 New Relic 和 Datadog。在您的开发生涯中,您可能会遇到这些程序的某种组合,并且值得学习如何使用它们。

3. 测试覆盖率

正如我之前所说,磨练编程技能不仅仅是编写代码。您需要确保其他开发人员可以理解您的代码,并且当有人在两年后​​打开它时,该人应该能够快速拿起它并开始进行更改。您编写的逻辑应该在未来几年内是可以理解和重用的。但有时候你的逻辑会很复杂,无法简化。可能是由于业务逻辑的复杂性。也许是因为时间不够。现实情况是,最后期限有时会迫使您做出不太理想的技术决策。而且在开始工作之前,您并不总是能够清楚地定义所有用例。确保代码安全的一种方法是编写伴随更改的测试。大多数编程语言都有可以安装的附加测试包。例如,对于 Ruby,我们使用 Rspec,对于 React,我们经常使用 Jasmine。测试有不同类型,包括单元测试(用于测试小块逻辑)和集成测试(用于端到端流程测试)。通常,为了将您的代码提交到公共代码库,它必须通过整个测试套件。一旦您学会了如何编写它们,您就可以添加“安全性”,以防止将来的更改意外覆盖您编写的函数。测试覆盖率还有助于定义预期行为,因为许多测试用例都是用简单的英语编写的。我无法告诉你有多少次我对几年前编写的某个文件进行了更改,并发现它导致了十几个测试失败,尽管我认为我对预期行为有很好的理解。有一次我什至破坏了几个月前我自己编写的一个功能。幸运的是,我的单元测试立即揭示了这一点。通过查看拉取请求,我注意到开发人员通常对测试覆盖率不够重视,这适用于简单和复杂的更改。我也对此感到内疚,尤其是在截止日期很紧的情况下。但我可以想到几个项目,其中一个地方的更改导致其他四个地方出现故障。这增加了我们的压力,增加了我们的工作量,尽管我们已经急于赶在最后期限前完成任务。如果我们及时花时间编写单元测试,这种情况是可以避免的。学习编写它们可能是一项乏味的任务,尤其是对于新开发人员来说,编写它们肯定会减慢整个开发过程。但是你越早开始编写测试,未来等待你和你的团队的麻烦就越少。

4. 代码审查

这一点与第一点相关——关于在代码库上合作。通常,更改代码库的过程如下所示。您正在本地编写一些代码。要将其推送到代码库的主分支,您需要创建一个拉取请求(更改的可视化摘要),并且团队中的其他开发人员会在批准合并之前检查您的代码。不同的团队对拉取请求的批准有不同的要求,但一般来说,您应该期望您的更改肯定会由某人审核和实施。值得注意的是,您不仅会提交您的代码以供审核,还会审核其他人的代码。学习阅读他人的代码对于开发人员来说是一项重要技能,应该在您的整个职业生涯中不断发展。当我第一次开始并被要求查看其他人的拉取请求时,我不太明白要寻找什么。起初我认为我应该寻找错误。几年过去了,我现在认为代码审查更多的是健全性检查,而不是彻底的调查。最终,发送拉取请求的开发人员负责检查其代码,添加必要的测试,并将此代码安全地贡献给公共数据库。发现隐藏的问题不是审稿人的工作。如今,当我审查代码时,我会检查可读性(例如,这些变量和方法名称是否具有描述性)、组织和结构(是否可以更好地组织代码,以便第一次看到它的人更清楚) 。当然,您对代码库越熟悉,就越容易发现潜在的问题。但即使作为初学者,您也可以开始获得代码审查技能。除此之外,这也是熟悉更有经验的同事使用的代码模式的好方法。

5.正确的谷歌搜索

没有开发人员了解有关编程、编程语言甚至代码库的一切。以前,我确信除了我之外的每个人都能立即理解在这种或那种情况下应该使用什么方法、查询和策略。但我结对的人越多,我就越意识到开发人员在 Google 上搜索问题答案的频率有多高。即使是有经验的人!我们的工作中有太多细节需要记住。我很快就意识到,我所需要的并不是把所有的事情都背下来,而是学会如何正确地寻找答案。Stackoverflow 将成为您最好的朋友。很有可能,如果你被某件事困住了,其他人以前也曾被困住过。当谈到解决问题时,尝试找出到底出了什么问题,用文字描述它,然后将这些文字输入搜索引擎。能够清楚地表达你面临的问题比死记硬背更有帮助。

结论

在您的软件开发之旅中,您迟早会遇到失望。这是无法逃避的。但是,您越多地使用旨在缓解这些挫败感的工具和策略,您的职业生涯就会越有价值。坚持到底,不要放弃。
评论
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION