选择开源软件时应该注意哪些警告标志?

jld*_*ger 13 untagged

当将开源项目与商业软件,甚至其他开源项目进行比较时,什么情况会引发危险信号并导致您按下弹出按钮并寻找其他地方?

Xer*_*xes 17

开源

看项目网站

  • 看文档
  • 查看邮件列表档案
  • 查看 SCM(svn、git、hg 等)

这样做时,请注意以下几点......

  • 软件有多成熟
  • 用户群规模是多少(很多人?3 人?)
  • 谁是用户群中的人(企业、家庭用户、小型企业等)
  • 开发是否活跃?它活跃了多长时间?
  • 邮件列表档案也泄露了很多关于开发人员之间“团队精神”的信息,等等。它看起来健康、充满敌意、无聊等吗?
  • 文档是否体面?
  • 包/项目是否已被任何发行版接受,例如 Fedora、Debian、RHEL、SLES、Ubuntu 等?如果是这样——那是一件好事——至少有不止一个人对这个项目有信心。
  • 该网站是否有适当的票务系统?如果是这样 - 有多少票是从 5 年前开始开放的?这是另一个表明该项目有多“活跃”的迹象。

此外,请确保您注意分发软件所依据的许可证。有些可能不适合您的需求。

企业软件

我在这里没有太多话要说,除了...

  • 确保(不要问销售人员 - 他只会撒谎)应用程序不会以root. 特别是如果它要侦听 TCP/IP 端口。* 查看供应商的声誉
  • 确保供应商知道管理此产品的人(即不会被授予root访问权限,因此该产品必须支持 sudo。任何认为sudo不受支持的人通常只是年老,但他们是供应商,他们会成为必须支持您的人-您不想购买该产品,然后让他们告诉您“不,您不能使用 sudo,您必须 su 才能 root”。
  • 永远不要购买任何闭源安全软件 - 永远
  • (主观):......永远不要相信销售代表所说的任何话——他们都是骗子和蛇,没有例外。


Ave*_*yne 7

  • 缺乏活动。 如果项目没有发布新代码,显示大量未解决的错误(或非常老的错误而没有新错误),或者用户论坛的垃圾邮件与帖子的比率非常高,那肯定是腐烂的代码库。活跃的项目有定期发布,bug 流失表明新开放的项目没有超过关闭的旧项目,以及有日常活动的用户论坛。所有这三个对于保持代码的活跃和良好至关重要 - 发布、反馈和调试/重构,形成一个完整的循环。

  • 活动与代码库的大小、复杂性和成熟度成正比。 程序/项目越大,点发布的频率就越低,但应该有一个一致的点发布流。对于像 Samba 这样具有大型复杂代码库的项目,预计在一个月左右后发布点数。对于像 gcc 这样的项目,它是一个成熟的代码库,具有更保守的设计目标,点发布之间的时间更长,但更大。极少量代码上快速移动的目标也显示出潜在问题 - 可能是开发人员仍在与错误作斗争,或者尚未编码所有目标/功能。

  • 源代码必须易于访问。 直截了当地说,如果它是真正的开源,就不应该有任何魔术握手、巫毒祭品或烛光咒语来查看源代码。是否可以通过 CVS、SVN、Git、Mercurial 甚至信鸽来访问它都没有关系,只要您可以在没有点击许可协议的情况下访问它。 如果您签署了弃权、保密协议或同意某些前所未闻的许可计划,那么您不是在与开源打交道,而是在与已同意向您开放源代码的商业供应商打交道 - 以一定的价格.


Mat*_*ons 6

有很多,真的。

欺骗性许可- 太多的解决方案试图将我杀死。套餐价格为 X,但如果您想要广告选项 1、2 和 3,则每个选项会多出 500-1500 美元。不,谢谢。

没有人使用它——或者至少,谷歌找不到任何人在谈论它。它要么是全新的(在这种情况下,你是一只豚鼠)要么太糟糕以至于每个人都知道

它是多个分叉的根源——如果某个东西被分叉了很多次,那么它可能有一个很好的理由,并且其中一个分叉可能比源代码更好地解决了问题。而是调查那些。

一贯糟糕的界面设计- 我不只是指 GUI。疯狂的、身份不明的或错误标记的 CLI 标志或选项让我发疯

它不起作用- 或者它假装需要解决的情况不应该(或不)存在,因此没有解决它