分类 观点 下的文章

如果你有时候会感觉大脑处于停滞状态,那么你可能正在遭受一心多用和决策疲劳。

想象一下,你刚完成了日常工作,坐在电脑前,手里拿着晨间咖啡,正准备开始新的一天。突然,一条 Slack 消息弹了出来,你扫了一眼邮件,然后切回 Slack。你打开日历,看看下一次会议是什么时候,令你惊讶的是,它 15 分钟后就要开始了!你回到办公桌前,开始检查待办事项,想看看在这短短 15 分钟内还能给自己安排什么任务,但不巧的是,这时你的一个同事请求你帮他解决一个问题。大半天就这样过去了,而你根本没有意识到……

我的许多日子都是这样度过的,不断地多个任务之间徘徊。有些时候,我发现自己盯着电脑,大脑完全停滞。如果你也发现自己处于这种情况,这可能是你的大脑发出的信号,提醒你休息一下。你可能正在遭受一心多用和决策疲劳。

平均而言,成年人每天要做大约 35000 个决定!它们可能是简单的决定,如吃什么或穿什么,也可能是需要更多思考的决定,如下一个假期去哪里或从事哪个职业。每天你都面临着大量的选择,它们占据了你的头脑。

分散注意力的一心多用

不只有你一个人每天面临着数以千计的决定,事实上,一心多用早已成为忙碌的、工作中的专业人士的常态。问题是,一心多用的伤害比它的帮助更大。你越是为了处理多任务而分散注意力,你的生产力就越是下降。

在一项研究中,自称是一心多用者的人,被要求以他们感觉自然的速度,在各种任务之间来回切换。同时,研究的对照组,被要求按顺序,一次完成一项工作。研究表明,多任务组的效率要低得多。每次他们切换任务时,都会出现速度减慢的情况,因为他们需要时间来回忆到目前为止所做的细节和步骤。这最终 额外花费了大约 40% 的时间,并导致整体准确度降低。每次专注于一项任务的人,总体上花费的时间更少,并且完成了所有的任务。

选择专注

当大脑集中在一项活动上时,它的功能是最理想的。选择专注而不是一心多用,将使你在一天中获得更好的感受,并帮助你完成更好的工作。

“专注”可以被定义为有意识和察觉的。它实际上是指活在当下,并将注意力集中于眼前的事情上。在工作场所,专注有很多好处。它的诀窍在于建立边界和习惯,使你能够对每项任务给予充分的关注。

保持积极主动,为每天必须完成的项目排好优先级,并制定一个完成计划。这将使你能够在一些重要的事情上取得真正的进展,而不是被动应付。你的待办事项清单上的每个项目,都应该是独立、明确、可操作的。每天专注于三到五项任务,不要太多。

三种在工作日休息的方法

不要忘记把“休息”也放进一天的计划中。大脑每小时需要几分钟的休息,以休养生息,避免倦怠。休息一下对你的心理健康也有好处,最终 有助于生产力的提高

这里有三种简单的“休息”方法,请把它们融入到你忙碌的一天中吧!

1、移动身体

花 10 分钟时间,离开你的椅子,站起来走一走。如果你的时间很紧张,可以站起来伸展两分钟。改变身体所处的位置,并专注于当下,将有助于缓解积聚在你心中的精神紧张。

2、多笑

休息一下,与你的朋友和工作中的同事交谈。笑声可以减少压力荷尔蒙,并引发内啡肽的释放,内啡肽是人体天然的的化学物质,它会使人感觉良好。欢声笑语的小憩有助于放松你的头脑,对你的灵魂也有好处。

3、深呼吸

用两分钟的休息时间来重置你的身心,使用腹部深呼吸。它可以使你的身心平静下来,改善氧气流动,并给你带来自然的能量提升。

  1. 挺直坐正,将注意力放在腹部,感受它的柔软和放松。
  2. 从缓慢的深吸气开始,数三下,让氧气依次充满你的腹部、肋骨和上胸。
  3. 停顿一秒钟,然后与深吸气相反,从上胸、肋骨和腹部呼气,最后将腹部拉向脊柱。
  4. 再次停顿,然后重复。

重置自己

下次当你发现自己处于停滞状态,或是正在强迫状态不佳的自己完成一项任务时,请尝试上面的一些提示。最好是短暂休息一下,重置身心,而不要试图强行完成任务。相信我,你的身体和大脑会感谢你的!

本文改编自《BodyMindSpirit》上的 让自己休息一下 和 ImageX 的博文 专注而不是一心多用


via: https://opensource.com/article/19/4/mindfulness-over-multitasking

作者:Sarah Wall 选题:lkxed 译者:lkxed 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

毫不夸张地说,在开源方面获得的经验,帮助我在产品管理领域创造了一条成功的职业道路。

我是一个充满好奇心的人,我喜欢探索科技行业的许多领域,从视觉设计、编程到产品管理。我也被开放源码的理念所吸引。因此,我很高兴与大家分享我作为一个产品经理(PM),是如何利用开源来建立我的职业生涯的。我相信我的经验可以帮助其他对产品管理感兴趣的人。

什么是开源软件

简单地说,开源软件是开放源代码的软件,这意味着任何人都可以检查、修改、增强和分享它的源代码。我们发表过一篇详细、全面的文章 来帮助你了解什么是开源。

我最早知道开源是很久以前了,那时,我还是一名刚入行不久的视觉设计师。我很想知道开源是什么,也很想知道如何成为它的一部分。在这种好奇心的驱使下,我接触到了一些有经验的开源贡献者和倡导者。虽然我当时没有做出贡献,但是他们让我知道了什么是社区,这对我下定决心开始贡献有很大帮助。

如何上手产品管理

产品管理工作貌似是一件很难上手的事情,感觉必须要戴上拳击手套,经过一番搏斗,才能强行进入这一行。然而,我从其他产品经理那里听说,与编写/调试代码块,或使用像素点生成复杂的产品设计线框相比,产品管理工作其实是更好上手的。

虽然我们的经历和经验各不相同,但是有一点可以确定:成为产品经理的道路往往是漫长而不可预知的。随着就业竞争的不断加剧,获得一个初级产品经理的职位可能会很困难。应聘者通常被要求有 2 到 3 年的经验才能加入产品团队。这时你可能会问:“我应该如何获得这些经验呢?”

来看看下面这四个策略吧,它们或许能够将你的职业生涯转向到产品管理:

  1. 在一个大型组织的内部转岗。这可能需要你的经理为你说一些好话,比如,说你很适合在公司内部转岗等。你必须有证据表明你掌握了该岗位的技能。这通常被认为是获得产品管理经验的最快
  2. 担任大型组织的初级产品经理角色。通过它获得实习机会,或者加入一个需要初级产品经理的关副产品管理项目,这些都很常见。
  3. 你也可以尝试通过加入创业公司来上手产品管理工作。
  4. 你还可以启动一个自己的副业项目来上手产品管理工作。

缺乏实践经验,就很难成为产品经理。正如开源产品经理 David Ryan 所说,“有一条获得实际的产品管理经验的途径,它既未被人充分利用,也很少有人意识到并利用它们”。

这条途径是什么?

答案就是开源

一个开放源码项目要想成功,需要的不仅仅是代码。它还包括项目战略、用户研究,以及将战略与日常工作联系起来。这些都是产品经理应该积极参加的活动。但是,在产品管理这一行里,有多少职责会分配给一个新手产品经理呢?

Susana Videira Lopes 在她的一篇文章中指出,“获得一个入门级的产品角色,本质就是以一种建立你的信心的方式,让你加入到至产品管理这一行,同时尽早为组织提供价值”。

一个入门级的产品经理该如何参与开源项目,并为它提供价值呢?

答案很简单:多问问题

这里有一些你可以问的问题:

  • 正在探索的是什么问题/机会?
  • 如何制定解决方案来解决这个问题?
  • 用什么标准来确定项目是否成功?
  • 这个解决方案的服务对象是谁?
  • 他们是如何被告知这个解决方案的?
  • 该解决方案如何与当前和更广泛的生态系统相适应?
  • 项目的文件是在哪里维护的?
  • 项目维护者是否了解 无障碍 accessibility 要求?它们是否被满足?

既然你已经获得了产品经理的所需技能,为何不应用它们呢?结合所学,表达出你深思熟虑的问题,并邀请你的团队来评估吧!你的团队可以选择那些能引起开发者和社区共鸣的问题,并优先考虑其中最重要的。

这些问题可以帮助你建立用户角色、用户旅程图、精益画布,以及更多。这种经验对发展职业潜力有很大的帮助。

我在 OpenUnited 的经历

OpenUnited 是一个以独特方式连接数字人才和工作的平台。我们与贡献者合作,帮助他们投入到高质量的开源产品,从而证明自身的特定技能。一旦他们的工作得到验证,这些有才华的贡献者就有资格在公司里从事有偿工作。

OpenUnited 是一个开源平台,为各类贡献者(包括产品经理、开发人员、设计师、商业分析师和其他人)提供服务。它致力于帮助贡献者提高技能,并为他们提供长期的高质量付费工作来源。

Miro 公司的高级产品经理 Farbod Saraf 让我加入他与合作伙伴创建的一个平台。我加入了这个项目,并了解了如何对 OpenUnited 做出贡献。我还了解了其他可以帮助我在产品管理生涯中成长的项目,并做出了我的第一次贡献。这是一次很好的经历,因为我可以迅速地开始投入到产品的某些部分,以改善平台上其他用户的体验。在我为项目做贡献的时候,我的导师 Farbod 随时为我提供任何需要的帮助,使我的工作更加轻松。

你对开源项目所做的一切贡献,都会成为你成长为产品经理过程中的有力的公共记录。对于任何想通过开源上手产品管理的人,我都强烈推荐 OpenUnited 平台。

如何找到开源项目

许多人认为,贡献开源只适合于开发人员,因为他们觉得找到一个可以舒适地贡献的开源项目是很难的。

即使作为一个初出茅庐的产品经理,也有好几种方法可以找到适合贡献的开源项目。这里列出了一些:

  • 在产品经理社区中发言,如 Mind The Product 和 Product School。
  • 参加当地的聚会和开源会议,如非洲开源社区节,以此来与开源项目的创建者和维护者保持联系。
  • 与在 GitLab 或 Mozilla 等大型开源公司工作的产品经理接触。他们可能会把你推荐到需要你的技能和贡献的开源项目中。
  • 联系开源公司的开源倡导者和开发者关系团队,让他们推荐一些适合入门级产品经理贡献的开源项目。
  • 寻找 AngelList 上的开源公司或 Product Hunt 上流行的开源产品。这些都是你可以找到适合贡献的开源产品的好地方。

下一步

Ruth Ikegah 是我的一个重要灵感来源,她 为开源新手写了一篇文章。她的文章给出了一些提示,在你开始为开源做贡献时,可能需要考虑一下它们。

在加入和贡献项目、社区或组织之前,对它们做一些研究,并提出自己的问题。当你最终决定加入社区时,试着积极地介绍自己,并说明你可以在哪些方面提供帮助。

当然,开源不仅仅是你职业生涯的一个垫脚石。它本身就是一个平台,而且它需要优秀的产品经理。参与进来吧!一方面,你能为社区做出贡献;另一方面,它也能帮助你磨练自己的技能。


via: https://opensource.com/article/22/4/product-management-open-source

作者:Shebuel Inyang 选题:lkxed 译者:lkxed 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

开源并不仅仅指的是软件。开源是一种文化现象,自然也适合桌面游戏。

 title=

我喜欢优秀的游戏,尤其是桌游,因为桌游的很多特性都和开源相同。在现实生活中,当你和朋友围坐在桌旁一起玩卡牌游戏时,作为一个团队,你们可以一起决定小丑牌是不是万能的。还有,你们可以随意地决定当出了小丑牌后,手上有 Ace 牌的人的要不要舍弃 Ace 牌,或者出了方块皇后以后,每个人是不是都要把手上的牌传给右手边的人。换句话说,你们可以随心所欲地重新制定规则,因为游戏不过是参与者们一致认同的条件集合罢了。对我来说,更棒的是你可以发明自己的游戏,而不用破坏别人的游戏规则。有时候,我会作为一个业余爱好者来开发桌游。因为我喜欢把自己的爱好结合起来,所以我倾向于只使用开源和开放的文化资源来设计游戏。

首先,游戏有大致有两个关键特征,风格和机制,理解这一点非常重要。游戏风格指的是游戏的故事或者主题,游戏机制指的是游戏的规则和条件。这两者并不总是完全脱离的,举个例子,在设计一款以赛车为主题的游戏时,自然而然就会要求玩家迅速完成动作。然而,风格和机制通常是被分开对待的,所以我们完全可以为了好玩就去创造一款使用标准扑克牌,却以太空羊驼为主题的游戏。

开源美术

如果你去过现代艺术博物馆,你可能会发现自己站在一幅纯蓝色的画布前,无意中听到有人说起老话:“见鬼,这我也能做!”。但事实是,艺术是一项艰巨的工作。创作赏心悦目的艺术品需要付出大量的思考、时间、信心和技巧。这也意味着艺术是你在设计游戏时中最难采购的部分之一。

我有一些“技巧”来解决这个典型难题。

1、寻找同类素材

现在有很多免费、开放的艺术作品,而且大部分质量上佳。问题在于,游戏通常需要不止一件作品。如果你正在设计一款纸牌游戏,你大概至少需要四到六个不同的元素(假设你的纸牌遵循塔罗牌风格),有可能还需要更多。如果你花足够多的时间在这上面,你可以在 OpenGameArt.orgFreeSVG.orgArtStation.comDeviantArt.com 等网站上找到 知识共享和公共领域 Creative Commons and Public Domain 的艺术作品。

如果你使用的网站没有专门搜索 知识共享 Creative Commons 的功能,输入以下文字到任何搜索引擎当中,"This work is licensed under a Creative Commons""本工作处于知识共享许可协议之下"(引号很重要,不要把它们漏了),并用搜索引擎要求的语法,以便将搜索限制到一个具体的站点当中(举个例子,site:deviantart.com)。

一旦你有了一个可供挑选素材的艺术库,那就去辨别这些作品的主题,并根据主题分类。两个不同的人拍摄的机器人的照片可能看起来一点都不像,但它们的主题都是机器人。如果提供给你足够多机器人相关的美术素材,你可以围绕机器人这个主题构建你的游戏风格。

2、委托创作知识共享艺术

你可以雇艺术家来为你定制艺术作品。我与使用开源绘画程序(如 Krita 和 Mypaint)的艺术家一起合作。同时,作为合同的一部分,我规定艺术作品必须在 知识共享署名-相同方式许可证 Creative Commons Attribution-ShareAlike (CC BY-SA)下授权。迄今为止,只有一位艺术家因为许可证的限制拒绝了我的提议,并且大多数人都很高兴自己的美术作品有可能有更大的生命力,而不仅仅是作为业余爱好者自己发行的游戏的一部分。

3、创作自己的艺术

就像现代艺术馆之旅展示的那样,艺术是一个非常灵活的词。我发现只要我给自己设定一个目标,也就是我需要为一款游戏创造多少纸牌或令牌,我便能够从 Linux 上的丰富图像创造工具中选择一种去创作。这并不需要什么高难度的东西。就像现代艺术一样,你可以用蓝色和黄色的条纹,或者红色和白色的圆点花纹,或者绿色和紫色的锯齿线来涂一张卡片,只要你能把它们画出来,那么除了你以外,其他人永远不会知道你暗地里把它们当做仙宫里的贵族和小姐。想想看,通过运用图形应用程序,描摹日常物品的照片,重组经典的扑克花色和塔罗牌主题等一系列方式,你可以创造出的简单作品吧。

版面设计

我用 Inkscape、Scribus 或者 GIMP 来进行版面设计,这取决与我有什么素材以及我追求的设计方式是什么。

对于卡牌,我发现简单的版面设计很容易实现,看上去也更好,纯色比渐变色更容易印刷,还有,直观的图像是最棒的。

 title=

(Seth Kenlon, CC BY-SA 4.0)

我在一个单独的 Inkscape 文件中为我最新的游戏做了版面设计,这个游戏只使用了来自 OpenGameArt.com 上三四个不同艺术家的九张图片。在有着更大的美工集,更好的卡牌多样性的游戏中,我会在游戏中的每一种卡片的文件中为它们设计版面。

在为你的游戏素材做任何版面设计之前,要先了解你的目标输出是什么。如果你打算在家里打印游戏,那就做一些计算,搞清楚默认的纸张大小(有些是 US Letter,或者是 A4)可以容纳多少卡牌、令牌或卡片。如果你使用 TheGameCrafter 之类的桌游打印机打印,请下载好模板文件。

 title=

(Seth Kenlon, CC BY-SA 4.0)

游戏机制

游戏机制是游戏中最重要的部分。它们使一款游戏成为游戏。开发游戏规则并不一定是一个正式的过程。你可以一时兴起地创造了一款游戏,可以拿一个现有的游戏重组它的规则,直到它和原来不同,可以修改一款你不喜欢的游戏,也可以将两款不同的游戏组合在一起。从简单容易的地方做起,拿索引卡,标准扑克牌,或塔罗牌去试着模拟你的想象中游戏是如何工作的。你可以自己尝试早期的游戏创意,但最终,让朋友来帮忙是找出意外故障和进行优化的好方法。

经常测试游戏。与不同类型的玩家一起玩游戏,并听取他们的反馈。你的游戏可能会激发许多玩家去创造新的规则和想法,因此要将关于 哪些搞砸了 的反馈与关于 哪些可以做修改 的反馈分开。你不一定要去真的实施这些反馈意见,只需迭代你的想法,但还是要仔细考虑错误报告。

一旦确定了你想要让你的规则如何运作,就把它们写下来,让它们 简短且容易解析。你定的规则不必说服玩家去玩这款游戏,不必向他们解释策略,你也不必允许玩家重新设置规则,只要告诉玩家为了让游戏玩起来,他们应该采取的步骤就可以了。

最重要的是,考虑一下,将你的规则开源。分享经验是游戏的一切,这其中也应该包括规则。知识共享或 开放游戏许可证 Open Gaming License 的规则集合允许其他玩家在你的作品上进行迭代、混合和构建。你永远不会知道,有人可能会因此想出一个你更喜欢的游戏变体!

开源游戏

开源不仅仅指的是软件。开源是一种文化现象,自然也适合桌面游戏。花几个晚上的时间来尝试制作游戏。如果你是新手,那就从一些简单的开始,比如下面的这个空白卡牌游戏:

  1. 找来一些朋友。
  2. 给每个人几张空白的索引卡,告诉他们在每张卡片上写一条规则。规则可以是任何东西(“如果你穿着红色衣服,你就赢了”或“第一个站起来的人赢”等等)。
  3. 在你自己的索引卡片上,写上 “和”、“但是”、“但是不要”、“而且不要”、“除了”,以及其他的条件短语。
  4. 洗牌并将牌发给所有玩家。
  5. 每个玩家轮到的时候出一张牌。
  6. 最终目标是获胜,但是玩家可以通过出 “和”、“但是”、“或者” 卡片来修改决定胜负的条件。

这是一个有趣的聚会游戏,同时是一份很好的介绍,告诉你如何像游戏设计者一样思考,它帮助你认识到什么适合作为游戏机制,什么不适合。

还有,当然的,这是开源的。

(题图片由 MorningbirdPhotoPixabay 上发布 )


via: https://opensource.com/article/21/12/open-source-card-game

作者:Seth Kenlon 选题:lujun9972 译者:hadisi1993 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

有些项目长期保持活跃,有些项目却过早消亡 —— 这两者的区别往往在于它们的文档。严谨、聪明的文档可以给你的项目带来它所需要的动力。你应该把文档工作视为一项主要工作,把它与开发相提并论,下面我将说明这么做的理由和正确的做法。

经常会有开发者简单地认为他们的代码的“ 自我描述 self-documented ”已经足够了,继而认为额外的文档是没有必要的。这种过度的自信会让项目付出很大的代价。匮乏或差劲的文档会扼杀你的项目。没有适当的文档,用户将无法理解项目的目标以及正确的工作流程。这可能会导致人们对采用你的开源产品产生一些疑虑。

撰写文档,从项目第一天就开始

文档不应该是次要的工作,它应该是与代码开发和管理同等的主要任务。随着内容以 Community Threads、Stack Overflow 和 Quora 问答等形式的广泛传播,文档承担了“ 信息源 source of truth ”的角色。它应该满足那些想参考一手资料的贡献者的需要,并给工程师提供必要的参考支持。它还应该与利益相关者沟通基本计划。一个好的文档可以确保产品的持续改进和发展。

当发布一个软件产品时,我们不仅要发布代码,还要发布好的文档。这给我们带来了一个最重要的概念,大多数良好维护了文档的开源项目都遵循这个概念 —— “ 文档即代码 Documentation as code ”。

文档及代码

今天,文档不再被存储为微软 Word 或 PDF 文件。新的需求是版本控制文档,其中所有的文档都是通过版本控制系统添加的,并持续发布。这个概念因 Read the Docs(LCTT 译注:一个文档创建、托管和浏览的平台)而流行,现在已经成为大多数文档团队的内容策略的重要组成部分。

像 Bugzilla 和 GitHub 议题 Issue 这样的工具可以用来跟踪待处理的文档工作,并从维护者和用户那里获得反馈以验证文档的发布。外部审查可以用来验证文档作品,并持续发布文档。这就保证了除代码外,文档也能不断改进并快速发布。

请记住,如果不遵循规范化的实践,每个文档都会不同。这可能会导致一些混乱,使人们难以获取正确的信息。

哪些东西会被归类为混乱呢?当大多数文件都不遵循规范实践时,不一致就会产生,从而导致更大的混乱!那么,如何整理混乱的开源文档呢?

整理混乱的开源文档

遵循一个“文档风格指南”是很重要的。风格指南是创建和展示内容的指导方针的集合。无论你是一个独立的作家还是一个大型文档团队的成员,它都有助于在你的文档中保持一致的风格、口音和语气。

有几个流行的风格指南,如《红帽风格指南》、《谷歌文档风格指南》和《苹果风格指南》。如何选用?首先要从定义你的需求开始。如果你的要求与其他开源项目没有太大区别,你可以遵循一个现成的风格指南,或者你也可以先选一个,然后在它的基础上根据自身需要做一些修改。大多数与语法有关的准则和内容规则可能是通用的,但整体术语可能会有所不同。

你还需要在你的项目中自动采用这些风格指南。为此,你可以使用 Vale,它集成了本地的持续集成(CI)服务,该服务能帮助你确保文档严格遵循风格指南。

文档类型

  • 自述文件:包含基本的安装和使用说明,这也是任何开源文档中最重要的部分之一。它是潜在的用户/开发者与项目之间的第一个连接点。
  • 参考指南:可能包括一些基本的参考资料,以便帮助你快速上手,或者是与项目贡献相关的文档。
  • 用户文档:是最基本的文档,它描述了项目的使用方式。如果没有用户文档,大多数人就会对如何使用该项目感到迷茫。
  • 开发文档:旨在支持开发团队在项目中不断取得新的进展。它还应该为内部开发工作提供一个良好的途径,并确保功能被很好地传达给股东。
  • 社区内容:包括基本的博客、视频和外部内容,旨在为那些想进一步了解项目的社区成员提供支持。

通过使用风格指南,文件的整体前提将以统一的语言风格传达给用户。但是,这些文件毕竟是由一个技术作家团队准备的,它们的写作风格可能会冲突,因为写作风格是因人而异的。那么,如何才能使文档规范化呢?

规范化文档

当涉及到规范化文档时,有许多方法可以采取。第一个方法显然是创建适用于各种角色的预定义模板。这些模板可以用来记录新的功能、识别错误和问题,以及更新变更日志以适应正在增加的新内容。

如果你采用的是基于 Git 的工作流,试着开发一个规范的工作流程来发布你的文档。最规范的工作流是: 复刻 fork 发布文档的仓库,在本地分支上添加你的修改,推送这些修改,提出请求并要求对其进行审查。规范化文档的一个好处就是带来更好的反馈和审查过程。

反馈和自动审查

规范化使得你能够得到用户的反馈并生成自动的审查,可以参考这些反馈来改进项目和文档。通过这些反馈,你也可以评估所分享的信息对用户是否有意义。像 GitBook 这样的文档平台会提供合适的反馈服务,这有助于验证文档是否有用。

始终寻求 主题专家 subject matter expert (SME)对文档的反馈,他们可以是利益相关者、开发者、工程师,甚至是外部贡献者。你也可以使用自动测试和 CI 来验证你的文档是否遵循风格指南。

文档众包

如果你想开源你的文档,最好的方法也许是提供一个快速入门指南。它可以像 CONTRIBUTING.md 那样简单,基本上只要说明该如何设置项目并为其作出贡献/单纯使用它即可。

始终开发以用户为中心的文档,标明每个项目的目的。同时,打造学习课程来帮助新的贡献者。

带着目的编写文档

始终带着目的编写文档。它是最基本的写作策略之一,它定义了你编写某个特定文档的理由,而非方式。首先回答以下问题:

  • 这个文档的目标是什么?
  • 需要传递的信息是什么?
  • 你希望用户在这之后采取什么行动?
  • 我与读者分享的价值观是什么?
  • 我的文档风格是否简洁、一致?

定义一致的内容策略

一致的内容策略有助于确保文档工作和项目基础设施的长期愿景。它可以围绕以下两个主要方面:

  1. 资源:包括项目文档、案例研究和白皮书、项目架构等
  2. 品牌内容:博客和特邀帖子、新闻和社区故事、学习课程等

每个开源项目都应该有适当的文档,以说明它能为用户提供的功能,这样用户就可以选择最合适的解决方案。适当的文档可以传达正确的信息,也可以让其他开发者贡献力量来进一步加强和改进项目。虽然听起来很简单,但只有做对了,文档才能成功。而你的项目,反过来,只有在你的文档正确的情况下才能成功,所以永远不要低估它的目标或过程!

策划:Laveesh Kocher


via: https://www.opensourceforu.com/2022/04/documentation-isnt-just-another-aspect-of-open-source-development/

作者:Harsh Bardhan Mishra 选题:lkxed 译者:lkxed 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

你可以在虚拟机环境里运行任何操作系统,不论是测试还是为了某种需要。

开源朗读者 | 淮晋阳

对于 Linux 而言,它在虚拟环境下的性能会优于其他操作系统。即便你可能会犹豫是否在物理机(裸金属)上安装 Linux 系统,你仍然可以在虚拟机中安装一个性能几乎和物理机一样好的 Linux 系统。

当然,这并不意味着宿主系统为 Linux 时你就不能在虚拟机实例中安装 Linux 了。

更何况,你在虚拟环境下使用 Linux 系统有许多好处。大致如下。

在虚拟环境下运行 Linux 之前的注意事项

在虚拟环境下运行 Linux 或许并不是艰巨的任务,但仍有以下几点你需谨记。

  • 虚拟机的性能取决于宿主机的性能,如果你并没有足够的系统资源分配给虚拟机,那么虚拟机的使用体验注定不会很好。
  • 某些特性仅在物理机(裸金属)上生效,包括硬件加速以及图形(显卡)驱动等。
  • 密集的磁盘 I/O 任务性能会十分受限,例如游戏测试场景。
  • 用户的 Linux 虚拟机实例体验会根据你所使用的虚拟化程序而发生变化,这些虚拟化程序包括 VMware、VirtualBox、GNOME Boxes 以及 Hyper-V 。

此外,你应当列出你的需求,并根据这些需求选定适当的虚拟化程序来运行你的 Linux 实例。

十条在虚拟环境中运行 Linux 的优点

尽管运行虚拟化 Linux 实例极具吸引力,你仍然应当首先考虑当前使用的宿主系统中已有的选择。例如,如果你不需要图形化桌面,或许利用 Windows 操作系统中的 WSL 安装 Linux 就可以满足你的需求。

一旦你确定了使用虚拟机,那么这些优点将会如影随形:

1、部署简便

部署简便

与在传统物理机(裸金属)上安装 Linux 相比,在虚拟机中部署一般会容易许多。

对于基于 Ubuntu 的发行版而言,像 VMware 这样的虚拟化程序会提供一个 快速安装 的选项,你仅需输入用户名和密码,其余过程将自动完成而无需其他操作。你无需手动设置分区、引导程序以及更多高级设置。

某些情况下,一些发行版的开发者会同时提供针对特定虚拟机的预构建镜像,只需打开就可使用。这就好像一个便携式虚拟机镜像,随时可以开箱即用。

例如,在 这里 你将看到如何在虚拟机中安装 Arch Linux 发行版。

对于其他的发行版,你或许仍需要进行一些配置,但一般都会有快速安装的选项令你可以轻松部署。

2、不会影响宿主机

不会影响宿主机

对于虚拟机,你可以更为随心所欲地使用,因为虚拟机系统和宿主机系统是隔离的。

很多时候,如果你并不熟悉 Linux 系统,你很可能会把配置弄得十分混乱。

所以在虚拟机里,你可以随意尝试而无需担心是否会影响到宿主机系统。换句话说,任何虚拟机的操作都不会影响到宿主机,因为它们是完全隔离的。

故此,虚拟机是你最好的试验场,尤其是对于一些激进或具有破坏性的试验。

3、资源可高效共享

资源可高效共享

如果你有十分充裕的系统资源,你可以使用虚拟机运行其他任务,从而充分利用起来这部分闲置的系统资源。例如,如果你需要一个十分私密的浏览环境,虚拟机将为你阻挡一切针对宿主机的追踪器。

这可能略显牵强,但这仅仅是一个例子。基于这样的想法你将可以充分利用全部的系统资源。

而对于双启动方案,你需要在单独的磁盘上在 Windows 之后安装 Linux,或者在 Linux 之后安装 Windows,你需要为你的任务锁定相应的资源。

但利用虚拟机,你无需锁定部分资源也可以使用 Linux ,也不必为了特定的任务而临时共享资源,这样会方便许多。

4、多任务体验更好

多任务体验更好

有了资源共享机制,多任务会前所未有的容易。

在双启动的场景下,你需要来回重启切换才能使用 Linux 或 Windows 。

但如果使用虚拟机,你几乎不再需要 双启动,两个系统将无缝协作并完成多任务。

当然,你需要确认你拥有足够的系统资源和额外的硬件(例如双显示器)来更高效地使用。而多任务的潜力也因 Linux 虚拟机的存在而愈发强大。

5、软件测试更为便捷

有了虚拟化,你将可以创建大量的 Linux 实例,来模拟特定的使用场景,并对软件进行测试。

例如,你可以在不同的 Linux 虚拟机中同步测试不同的软件版本。这有丰富的使用场景,包括对开发版软件进行测试以及 Linux 发行版的早期测试等等。

6、开发更为便捷

开发更为便捷

当你在学习编程或者刚加入一个软件项目的开发的时候,你会希望拥有一个没有任何冲突和错误的开发环境。

在 Linux 虚拟机里,你可以从零开始搭建一个不会与已经存在的环境冲突的开发环境。例如,你可以在 Ubuntu 上 安装并测试 Flutter

如果环境出了问题,你可以轻而易举地删掉这个虚拟机,并重新开始来修正错误。

Linux 虚拟机的隔离环境是一个绝佳的开发和测试环境。

7、学习和研究的好帮手

Linux 值得反复探索。除了基础的计算任务,你可以做许多其他的事情。

你可以学习如何修改你的用户界面,尝试一些常见的桌面环境安装大量常用软件 ,与此同时仍能让一切处于掌控之中。

如果出现问题,新建一个 Linux 虚拟机就可以解决。当然,这并不仅限于日常使用需要,还可以启发系统管理员在其中测试他们所学的知识。

8、更容易复制和迁移

虚拟机可以很容易地复制和迁移。只要其它的宿主机系统支持该虚拟化程序,你就可以很容易地迁移它,而没有特别要求。

不论因何原因,几次简单的点击就可以完成复制和迁移的任务。

9、尝试大量的发行版

尝试大量的发行版

你可以在虚拟环境下尝试数以百计的 Linux 发行版。

你或许会认为这和第七条重复了,但是我相信,测试一个发行版是一个巨大的系统性工程,尤其是当你决定切换发行版做为宿主机或其他用途时。

10、便于调试

不论是严肃的开发活动还是一般的研究,在隔离的虚拟环境中调试和除错相对而言会更简单。

你可以快速尝试大量的调试方法而无需考虑影响。同时,如果你的宿主机是 Linux 系统的话,无需宿主机上的 root 权限便可以访问和修改虚拟机中的配置文件。

总而言之

如果你不熟悉正在使用的系统或者依赖不同的操作系统工作,虚拟机将是协助你工作的一大利器。

Linux 虚拟机可以广泛用于开发、学习、试验或任何特定用途。

你在虚拟机中使用过 Linux 吗?都有哪些应用场景呢?欢迎留言评论!


via: https://itsfoss.com/why-linux-virtual-machine/

作者:Ankush Das 选题:lkxed 译者:PeterPan0106 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

报道称,在推特确认接受收购请求的几个小时后,埃隆·马斯克就明确表示了他对推特的期望。马斯克在一份新闻稿中罗列了他计划做出的重大改变,包括开源“决定用户在推流中看到什么”的算法。

马斯克希望开源推特的算法,是因为他长期以来一直担心该平台有可能进行政治压制。但老实说,即便开源,也不可能达到他的预期效果。专家们担心,这可能反而带来一连串意想不到的问题。

虽然马斯克对权威深恶痛绝,但是他对算法开源的野心和世界各地立法者的愿望不谋而合。近年来,许多政府都将这一原则作为打击大科技公司的基石。

英国社交媒体监管机构 Ofcom 的首席执行官 Melanie Dawes 曾表示,社交媒体公司应当解释其代码的运作方式。此外,欧盟新近通过的《 数字服务法案 Digital Services Act (DSA)》于 4 月 23 日获得批准,该法案将责成平台提供更多的公开性。2022 年 2 月,美国的民主党参议员提交了《 算法问责法案 Algorithmic Accountability Act (AAA)》的立法申请。这些法案的目标是加强算法的透明度和监督,包括我们在社交媒体上的“ 时间轴 timeline ”和“ 新闻流 news feed ”以及我们生活的其他方面。

允许竞争者看到并修改推特的算法,可能意味着有人会偷取源代码,并提供一个改名的版本。互联网的许多部分都运行在开源软件上,其中最著名的就是 OpenSSL,这是一个被大量在线使用的安全工具包,而它在 2014 年被黑客攻击了。

还有一些已经创建的开源社交网络。Mastodon 是一个微博网络,为回应对 Twitter 主导地位的担忧而创建。它允许用户检查其代码,这些代码可在 GitHub 软件仓库中找到。

然而,阅读一个算法背后的代码,并不总能告诉你它的工作方式,而且对于大部分普通人来说,它也提供不了足够的关于公司组织架构以及开发流程的信息。

Jonathan Gray 是伦敦国王学院/关键基础设施研究的高级讲师,他说:“这有点像只用遗传物质来理解古代生物。是的,它能告诉我们的信息比任何方式都多,但如果说我们因此了解它们的生活方式,那就太夸张了。”

推特同样也不是由单一算法控制的。Catherine Flick 是英国德蒙福特大学/研究计算和社会责任的研究员,她说:“其中一些会决定人们在他们的“时间轴”上看到什么趋势、内容或者推荐关注的人。调节用户“时间轴”上显示哪些信息的算法,将会是人们最感兴趣的。然而,即使如此,如果缺少训练数据,单纯开源算法也没多大用处。”

Cobbe 认为,开源推特算法的危害大于好处。因为计算机代码并没有透露算法是如何开发或评估的:有哪些元素或考虑、在这个过程中的优先级是什么等等。所以开源可能不会使推特的透明度发生重大变化。反而,它可能会带来严重的安全隐患。


via: https://www.opensourceforu.com/2022/04/elon-musks-plan-to-open-source-the-twitter-algorithm-has-flaws/

作者:Laveesh Kocher 选题:lkxed 译者:lkxed 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出