Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

L1.思考题 a #2

Closed
Tracked by #1
will-ww opened this issue Feb 27, 2023 · 35 comments
Closed
Tracked by #1

L1.思考题 a #2

will-ww opened this issue Feb 27, 2023 · 35 comments
Labels
question Further information is requested

Comments

@will-ww
Copy link
Contributor

will-ww commented Feb 27, 2023

No description provided.

@will-ww will-ww changed the title 思考同 a L1.思考题 a Feb 27, 2023
@will-ww
Copy link
Contributor Author

will-ww commented Feb 27, 2023

阅读《拥抱开源》的第一章,论述“自由软件”与“开源软件”有什么样的区别与联系?

@will-ww will-ww added the question Further information is requested label Feb 27, 2023
@tennnx
Copy link
Contributor

tennnx commented Mar 1, 2023

“自由软件”的概念更多是从哲学上解释了软件要开源、免费的原因,是一种理想主义,属于黑客文化,体现了技术高手的技术和精神内容;而“开源软件”的思想更务实,与实用主义结合,是更加中庸的一种思想,并且商业化友好,一定程度上解决了“自由软件”与商业化的冲突,促使开源软件走向成熟化、繁荣化。

@tang-small-flower
Copy link

  • ”自由软件“是指在使用软件时,用户具有自由度,包括:运行、复制、分发、研究、修改等。自由软件的重点在于保护用户的权利,使用户能够自由地使用软件,并且在有需要时能够自行修改和扩展软件。
  • ”开源软件“是指软件源代码是公开的,允许任何人查看、修改和分发软件源代码,但并不一定意味着用户能够完全自由地使用软件。开源软件的重点在于提供可见的源代码,以便让其他人可以查看、修改和改进软件。
  • ”自由软件“和”开源软件“的区别主要在于其价值观和重点不同。”自由软件“关注的是用户的自由和权利,认为用户应该能够自由地使用软件并且在有需要时能够自行修改和扩展软件。”开源软件“则更加注重源代码的公开和可见,以便于其他人可以查看、修改和改进软件。
  • 不过,在实践中,”自由软件“和”开源软件“往往会相互融合,成为一种新的开发模式。这种模式下,软件源代码是公开的,用户可以自由地使用软件,也可以自行修改和扩展软件。同时,开发者也可以在开源社区中协作、分享和改进软件,使得软件的质量和功能得到不断的提升。

@heroding77
Copy link
Contributor

自由软件更强调用户自由和权利,而开源软件更强调软件的质量和效率,认为开放源代码可以促进协作、创新和透明度,从而提高软件的可靠性、安全性和功能性。虽然二者在技术上没有太大的区别,但是在思想上有不同的侧重点,我比较认同一楼同学的观点,开源软件更像是一种中庸之道,既能够满足优秀开发者的需求,同时又给了开发者一个协作共享的机会,帮助开发者能够设计更加完善、更加符合市场需求的软件,从而进一步促进开源软件的发展。

@andyhuang18
Copy link
Contributor

从英文翻译来看,自由软件是Free Software,开源软件是Open Source Software。站在开源软件的未来来看,如果希望实现商业化,那么如果以Free(免费)作为名称,是不是反而矛盾了呢?或许自由软件改名为开源软件也有这方面的原因。

在bilibili视频【【计算机博物志·人物篇】最后的黑客:理查德·马修·斯托曼】 https://www.bilibili.com/video/BV11R4y1b7zc/?share_source=copy_web&vd_source=a4f9672d06d4646ce6a93e3b61a1d5c9 中,也能了解到自由软件演变为开源软件的历程,推荐给大家~

@wj23027
Copy link
Contributor

wj23027 commented Mar 2, 2023

“自由软件运动”是一项倡导软件这种知识产品应该免费共享的社会运动,它主要是从社会伦理学,道德的高度,强调我们每个人都有自由使用软件的权利,这种权利不应该被软件私有所破坏。不难发现,自由软件运动有点太极端、太理想化了,要如此反商业化,还是很有难度的。
于是,发展到了后面,一种“自由软件”和“商业软件”之间的折中------“开源软件”就此诞生了,它既继承了“自由软件”所提倡的知识共享的理念,同时又允许人们以专利的形式从知识产品中谋取利益,从而保护了人们生产、创造知识产品的积极性。

@gongchenghua
Copy link
Contributor

自由软件是指尊重用户自由和社区的软件。表明用户可以自由运行、复制、分发、研究、更改和改进软件。
无论用户出于何种目的,必须可以按照用户意愿,自由地运行该软件;用户可以自由的学习与修改软件,那做为这个的前提,用户是要能自由的访问到软件的源码;用户可以自由的分发软件给别人,以帮助他人;用户可以自由的分发修改后的软件版本,以使整个社区从修改中受益。
开源软件以源代码形式提供,无需额外费用:这意味着用户可以查看组成该软件的代码并对其进行所需的任何更改。源代码可重新用于其他新软件:这意味着任何人都可以获取源代码并利用它来分发自己的程序。
实际上,无论是自由软件还是开源软件都与费用无关,二者都可以合法地出售或赠送。它们之间的主要区别在于共享。对于自由软件而言,如果您对源代码进行了更改并希望共享它们,那么您还必须将这些更改同步共享给原始项目。而开源软件则通常没有这种限制。
尽管存在切实差异,但自由软件和开源软件之间还是具有一些共同的价值。其实,这两个术语有时会合并成一个常用短语:"自由和开源软件"(FOSS)。

@TengLuoLuo
Copy link
Contributor

自由软件和开源软件都强调软件代码的开放性、可修改性、共享性。它们的主要区别在于其背后的思想和理念。

自由软件强调的是用户对软件的自由和权利,提倡用户能够自由地使用、复制、修改和分发软件。自由软件的观念源自于理念上的自由主义,强调软件使用者的权利,要求软件代码不能受到任何限制,甚至是商业的限制。

而开源软件则强调的是开放的机制和模式,提倡软件的开放性、透明性和可信度。开源软件主要关注的是软件开发的过程和方法,尤其是源代码的公开和共享,推崇合作、开放和共享的开源文化。

两者的联系在于,它们都追求软件共享开放的理念和实践。两者不仅有很多共同点,而且有许多相互促进的因素,可以说它们是互补并存的。

@yz2022
Copy link
Contributor

yz2022 commented Mar 3, 2023

自由软件和开源软件都是指一种特定的软件开发和分发模式,基本上大家都认为它们都是开源的。然而,这两种描述方式有一些不同之处。
1)区别:

  1. 定义:自由软件是指那些保证用户可以自由运行、复制、分发、研究、修改并改进软件的软件。而开源软件主要是强调软件可以查看和编辑源代码。
  2. 目的:自由软件意图通过开放源代码和对同行检查代码的要求,以建立一个合作的开发环境。开源软件则是为共享并共同开发于广泛应用的软件。
  3. 许可证:自由软件一般使用GNU Public License (GPL)许可证,而开源软件使用各种不同的许可证,如BSD、Apache、MIT等。
    2)联系:
  4. 两个模式的共同目标是使软件能够更加开放和自由使用。
  5. 自由软件和开源软件之间的差异很小,通常可以通过开放和自由使用的概念将它们联系起来。
    总之,自由软件和开源软件虽然有一些不同之处,但他们的目标都是通过开放和自由使用来推动软件的发展。

@GiveMeAnApple99
Copy link
Contributor

自由软件的要求更“严格”(可以看成是自由软件⫋开源软件),二者都是开放源代码的。自由软件英文译名中的free并不是免费,而是自由,这也是自由软件一以贯之强调的中心点。自由软件并不意味着完全去商业化,而是给予用户充分应用软件的自由,这与有些虽然开放了源代码但限制用户对软件的自由运行、分享、修改的开源软件有明显区别。

@xunx911
Copy link
Contributor

xunx911 commented Mar 3, 2023

自由软件和开源软件都是可以免费获取并使用的软件。它们之间的区别在于对于用户权利的保护程度。
自由软件强调用户拥有对软件的完全控制权,可以自由地运行、复制、分发、研究、修改和改进软件。这意味着用户可以根据自己的需求对软件进行定制,并且可以与他人分享这些更改。
开源软件则强调通过共享和协作来促进技术发展。它允许用户查看和修改其源代码,并鼓励用户共享这些更改,以便其他人也能从中受益。

@JasonZhujp
Copy link
Contributor

自由软件是开源软件的一种。
自由软件关注的是使用软件的自由,它要求:①无论用户出于何种目的,必须可以按照用户意愿,自由地运行该软件;②用户可以自由地学习与修改软件,其前提是用户能自由访问到软件的源码;③用户可以自由分发软件给别人,以帮助他人;④用户可以自由分发修改后的软件版本,以使整个社区从修改中受益。
开源软件是源代码可以任意获取的计算机软件,这种软件的著作权持有人在软件协议的规定下保留一部分权利并允许用户学习、修改以及以任何目的向任何人分发该软件。
二者共同点:
① 二者重叠性高:绝大多数常用的开源软件,其理念也符合自由软件的理念。
② 主张源码开放:无论是自由软件或开源软件,源码一定是开放并且可以任意获取的。
③ 与“专有软件”对立:聚焦于使用软件的自由,因此将专有软件或私有软件视为对立。
二者不同点:
① 理念与目标的差异:自由软件的理念是为用户的计算自由而战斗,用户应该能自由的使用任何计算资源;而开源软件的理念是通过开放源代码,让更多的程序员参与进来的方式,使软件变得更加强大,并且通过开源的模式惠及更多用户。“自由软件是一种高尚的价值观,而开源软件是一种实用主义”。
② 对专有软件的立场不同:自由软件将专有软件视为对立面,专有软件无法与自由软件共存;而开源软件运动中有大量的专有软件公司参与,甚至相当一部分开源软件就是专有软件公司贡献的。

参考:https://zhuanlan.zhihu.com/p/446722689

@itsKevin-lgy
Copy link
Contributor

首先可以明确一点,自由软件与开源软件肯定是不同的,不然也不会衍生出两个不同的名字。自由软件用英语表达是Free Software,“free”一词强调的是自由,而不是价格上的免费;开源软件的英语表达是Open Source Software,它被定义为描述其源码可以被公众使用的软件,并且此软件的使用,修改和分发也不受许可证的限制。虽然术语名称有所不同,但是开源软件与自由软件在含义上比较相近。它们有着一套相似的许可证和软件权限。
自由软件的四个理念:无论用户出于何种目的,必须可以按照用户意愿,自由地运行该软件;用户可以自由的学习与修改软件,那作为这个的前提,用户是要能自由的访问到软件的源码;用户可以自由的分发软件给别人,以帮助他人;用户可以自由的分发修改后的软件版本,以使整个社区从修改中受益。而开源一词是在上个世纪九十年代后期,针对自由软件的限制而引入的。实际上,OSI让它具有了“教育和倡导开放式开发流程的优势”。自由软件和开源软件最大的分歧在于:理念与目标的差异。自由软件的理念是为用户的计算自由而战斗,用户应该能自由的使用任何计算资源,从操作系统到软件等一切;而开源软件的理念是通过开放源代码,让更多的程序员参与进来的方式,使软件变得更加强大,并且通过开源的模式惠及更多用户。

参考:https://zhuanlan.zhihu.com/p/446722689

@KAlbert2333
Copy link
Contributor

自由软件(Free Software)和开源软件(Open Source Software)是两种不同的软件开发模式,它们在一些方面有相似之处,但也存在一些明显的区别。

首先,自由软件和开源软件都强调对用户的自由和知识共享的重要性。它们都使用自由软件许可证,这些许可证允许用户在遵守一些规则的前提下使用、修改和分发软件。

然而,两者的理念不同。自由软件强调的是使用者的权利,即用户有权利在任何目的下自由地运行、复制、分发、学习、修改和改进软件,以及公开发布修改后的版本。而开源软件更强调的是软件的质量和可靠性,即软件的开发应该是一种公开的、透明的、可持续的合作方式,以便于多个人共同参与开发、维护和改进软件。

其次,自由软件和开源软件的开发者也不尽相同。自由软件通常由社区和非营利组织开发和维护,而开源软件则更多地由公司、组织或个人进行开发和维护。自由软件的开发者更关注于软件的自由和用户权利,而开源软件的开发者则更关注于软件的商业价值和市场竞争力。

最后,自由软件和开源软件在使用者、开发者和商业公司之间的关系也不同。自由软件通常更加强调社区精神,用户可以自由地贡献代码和修复问题,以推动软件的发展。而开源软件更多地考虑商业化和市场需求,企业通常会在开源软件上构建自己的商业模式,从中获利。

综上所述,自由软件和开源软件虽然在某些方面有相似之处,但它们的理念、开发者、使用者和商业模式等都有所不同。在选择使用哪种类型的软件时,需要考虑软件的目的、用户需求和商业需求等因素。

@lroethan
Copy link
Contributor

lroethan commented Mar 6, 2023

“自由软件”和“开源软件”都是指一类基于共同开发和分享的软件开发模式,但它们有一些不同的哲学和政治取向。

“自由软件”主张软件用户拥有对软件的自由度,包括使用、研究、复制、分发和改进软件的自由。这个概念最初由理查德·斯托曼(Richard Stallman)提出,并在其创建的自由软件基金会(Free Software Foundation)下得到广泛推广。自由软件强调用户的权利,认为只有在软件使用者拥有完全的控制权时,他们才能真正地掌握技术,并从中受益。

“开源软件”则强调对软件的技术质量和效率的追求,倡导透明和可审计的软件开发过程。开源软件的概念最早由埃里克·雷蒙德(Eric S. Raymond)等人提出,并在开源软件运动的推动下得到广泛应用。开源软件认为,开放的代码可以促进软件的快速发展,同时也可以吸引更多人参与到开发和维护中,从而提高软件的质量和可靠性。

虽然自由软件和开源软件在某些方面存在差异,但它们的目标都是提供更好的软件,推动技术的进步。实际上,很多自由软件也同时具备开源软件的特点,而很多开源软件也在其软件许可证中包含了自由软件的条款。因此,我们可以认为自由软件和开源软件是有一定联系和交集的,两者共同构成了自由和开放的软件生态系统。

@hzhang4433
Copy link
Contributor

区别:

  1. 起源和历史不同,自由软件由理查德·斯托曼等人于1980年代提出,旨在强调软件使用者应该拥有自由掌控软件的权利;开源软件则是布鲁斯·珀林顿在1998年提出的,旨在强调开放源代码可以促进软件的创新和发展。
  2. 目标理念不同,自由软件的主要目标是保障用户的权利和自由,强调软件的自由性以及用户权益,起初是为了保护用户免受商业垄断和专利控制的影响;而开源软件的主要目标是提高软件的质量和可靠性,强调的是开放和合作,它更关注软件技术的发展和推广。
  3. 授权方式不同,自由软件使用GPL等强限制的授权要求所有使用、修改和分发软件的人必须遵守相应的规定以保证软件的自由性和开放性;开源软件使用BSD、MIT等较宽松的授权方式,允许使用者以任何方式使用和分发软件甚至纳入商业软件

虽然自由软件和开源软件在起源、目的理念、授权方式等方面存在一些区别,但它们都旨在推动软件的自由、开放和创新,是现代软件产业发展中的两个重要概念和实践。

@l1tok
Copy link
Contributor

l1tok commented Mar 6, 2023

自由软件和开源软件之间的主要区别在于它们对待用户权利和社会责任的态度。自由软件更关注道德和政治层面,而开源软件更关注技术和商业层面。自由软件是一种理想主义,而开源软件是一种实用主义。同时,自由软件和开源软件也有很多共同点,它们都倡导共享和协作的精神,并通过一些许可证来维护用户和程序员的权利。

@Jalingpp
Copy link
Contributor

Jalingpp commented Mar 6, 2023

开源软件是指软件授权人在软件发布时公开软件源码,并允许其他人查看、修改、使用、复制和分发该软件。
自由软件是指在使用、修改和分发软件时,用户有自由的权利和控制权,不受软件开发者或第三方的限制和约束。
从定义上可以理解为,自由软件是指软件使用者对开源软件拥有更加自由的使用权。

@qkgoalkeeper
Copy link
Contributor

在很长一段时间里,开源软件都被贴上了"自由软件"的标签。1983 年,Richard Stallman 通过 [GNU 计划]正式发起自由软件运动。自由软件运动强调用户的自由权利:自由查看源代码、自由修改、自由再分发,让用户能够自由获取源代码,并且自由地使用。

自由软件旗帜鲜明地反对专有软件或"闭源"软件。闭源软件的源代码则有着重重防护。只有源代码所有者才拥有该代码的合法访问权。更改和复制闭源代码是违法行为,用户只能付费按既定方式使用软件,无法修改另作他用,也无法与社区共享。

但是,"自由软件(free software)"的名称造成了大量困惑。自由软件只表示您可以按照自己的方式自由使用,但不一定意味着您就能免费拥有它。社区曾经对此的解释是:"它指的是言论自由的自由,而不是免费啤酒的免费"。为了解决这一问题,她曾试图用‘开源’来取代‘自由软件’:"早期称呼‘自由软件’不适用,并不是因为含有政治意义,而是会误导新手去过多关注于价格。所以我们需要一个关注于关键的源代码,而且不会让新用户混淆概念的术语。"

参考:https://www.redhat.com/zh/topics/open-source/what-is-open-source

@594Surefour
Copy link

自由软件的理念是为用户的计算自由而战斗,用户应该能自由的使用任何计算资源,从操作系统到软件等一切。而专有软件这种是不合理的,限制了用户的自由,是不应该存在的。
开源软件的理念是通过开放源代码,让更多的程序员参与进来的方式,使软件变得更加强大,并且通过开源的模式惠及更多用户。

@Missjust
Copy link
Contributor

Missjust commented Mar 6, 2023

开源软件是指在软件发行的时候,附上软件的源代码,并授权允许用户更改/自由再散布/衍生著作,开源并不抵制商业收费。自由软件是一项思想运动,强调用户拥有如何使用软件的自由。所以自由软件是开源软件的一个子集,自由软件的定义比开源软件的更加严格,自由软件是一种道德精神层面的维护用户使用的自由。开源软件和自由软件一样,具备一可以免费使用二是公布源代码的主要特征。

@smell-iron
Copy link
Contributor

自由软件和开源软件都是指在软件开发中遵循自由和开放原则的软件开发方法。

自由软件(Free Software)是指用户可以自由地使用、复制、分发、研究、修改和改进软件的软件。在自由软件的定义中,自由指的是使用、复制、修改和分发软件的自由,而不是免费的价值。自由软件通常遵循GNU通用公共许可证(GPL)。

开源软件(Open Source Software)则是指软件源代码是公开可用的,任何人都可以查看、复制、修改和分发的软件。开源软件关注的是开放的协作和互相信任的文化,以便于其他开发者能够协作改进软件,同时保持源代码的可用性。开源软件通常遵循MIT或BSD许可证。

因此,自由软件和开源软件之间的区别在于其强调的方面。自由软件关注的是软件的自由和用户的自由,而开源软件关注的是代码的可用性和共同协作。

然而,自由软件和开源软件之间也有联系。自由软件和开源软件都是基于公共可用的源代码的软件开发方法,强调开放、协作和共享。并且,在软件开发的实践中,许多自由软件项目和开源软件项目之间也有重叠。因此,自由软件和开源软件可以看作是同一种开放源代码的软件开发方法的两个不同的方面。

@tiertie
Copy link
Contributor

tiertie commented Mar 8, 2023

开源软件更强调交流,有更好的社区环境

@Freejww
Copy link
Contributor

Freejww commented Mar 8, 2023

自由软件更强调用户权利和自由度,而开源软件更强调软件的质量和效率,认为开放源代码可以促进协作、创新和透明度,从而提高软件的可靠性、安全性和功能性。虽然二者在技术上没有太大的区别,但是在思想上有不同的侧重点。

@OSZhouYe
Copy link

”开源软件“是指软件源代码是公开的,允许任何人查看、修改和分发软件源代码,
自由软件更强调用户权利和自由度,无法与人共享其代码

@Jolykkkk
Copy link

自由软件和开源软件的区别:自由软件是指可以在任何目的下自由地使用、复制、分发和修改的软件,用户可以自由对软件进行再创造。开源软件是指在符合开源组织(Open Source Initiative)所认可的开源许可证下自由地使用、复制、分发和修改的软件。开源软件更强调开放合作的精神,希望让更多的开发者一起合作开发和维护一款软件。
自由软件和开源软件的联系:开源软件可以看作自由软件的子集,两者都有一个共同的目标就是提供更好的软件,只不过两者的侧重点不同。

@JinkaiXu
Copy link
Contributor

JinkaiXu commented Apr 2, 2023

“自由软件运动”是一项倡导软件这种知识产品应该免费共享的社会运动,它主要是从社会伦理学,道德的高度,强调我们每个人都有自由使用软件的权利,这种权利不应该被软件私有所破坏。不难发现,自由软件运动有点太极端、太理想化了,要如此反商业化,还是很有难度的。
于是,发展到了后面,一种“自由软件”和“商业软件”之间的折中------“开源软件”就此诞生了,它既继承了“自由软件”所提倡的知识共享的理念,同时又允许人们以专利的形式从知识产品中谋取利益,从而保护了人们生产、创造知识产品的积极性。

@innocentc
Copy link

区别:
定义上:自由软件是指用户具有运行、复制、分发、修改、改进和发布的自由。而开源软件强调的是源代码的开放和可访问性,以便更容易地查看、分析和改进软件。
目标上:自由软件强调用户的权利和社区参与,而开源软件强调开发人员的效率和质量。
原则上:自由软件基于道德和社会公正的原则,强调软件自由和社区共享。开源软件则更注重技术和商业方面,强调合作和共享代码。
联系:
自由软件和开源软件都在推动软件技术的进步和发展,它们有着不同的理念和目标,但都是为了让更多的人能够自由地获取、使用、修改和分发软件。

@Wxlhhh
Copy link

Wxlhhh commented Apr 2, 2023

开源软件是指在软件发行的时候,附上软件的源代码,并授权允许用户更改、自由再散布、衍生著作,开源并不抵制商业收费。
自由软件是一项思想运动,强调用户拥有如何使用软件的自由。即可以自由地运行,可以自由地拷贝,可以自由地修改,可以自由地再发行。这里指的自由,并不是价格免费,这和价格无关而是使用软件对所有的用户来说是自由的。
自由软件是开源软件的一个子集,自由软件的定义比开源软件的更加严格,自由软件是一种道德精神层面的维护用户使用的自由。

@likeChen129
Copy link

开源软件通常追求比现有的商业解决方案更好,让更多人群策群力一起开发,比其他软件更好地解决问题,目的除此以外也可以是多种多样的,只不过都以开源作为实现方式,而且是对商业化的妥协,所以被称作是一种实用主义。只谈开源的话,完全可以理解为只公布源码,但是限制主导开发者之外对源码的二次使用,这也可以算作是字面上的开源。自由软件除了软件本身给予用户自由,也重视全过程的自由,因为它要达到「自由」的目的,是实现自由软件运动愿景的前提和产物。自由软件的支持者绝对不会因为自己用上自由软件而沾沾自喜,而是会看到自由软件并不足以支撑起一台通用的pc,因而痛心疾首。

@TW-githubs
Copy link
Contributor

自由软件和开源软件都是指那些在使用、复制、修改和分发上有一定自由度的软件。

自由软件强调的是软件用户的自由,尤其是用户可以自由地运行、复制、分发、学习和修改软件的自由。自由软件的理念主要是由理查德·斯托曼(Richard Stallman)提出来的,他创建了自由软件基金会(FSF)来推广自由软件的理念和开发自由软件。

开源软件则是强调软件的开源,即软件的源代码公开。开源软件的理念主要是由爱德华·雷蒙德(Eric S. Raymond)等人提出来的,他们创建了开源软件运动(OSI)来推广开源软件的理念和开发开源软件。

两者之间的区别主要在于其理念的不同。自由软件注重的是用户的自由,开源软件注重的是软件的开放和代码的透明度。但是,两者的目标是相似的,都是为了提高软件的质量、安全性和可靠性,以及促进技术的进步和创新。

因此,自由软件和开源软件之间有许多联系和共同点。例如,许多自由软件也是开源软件,许多开源软件也符合自由软件的定义。同时,两者的发展也是互相促进的,自由软件和开源软件都在不断地推动着软件的发展和创新。

@Beanm7
Copy link

Beanm7 commented Apr 3, 2023

自由软件和开源软件的区别与联系主要在于授权。自由软件是指拥有自由使用、复制、分发、修改和重新发布软件程序的权利,它依靠特定的软件许可证(自由软件许可证)保护用户的权利,以便他们可以享受到自由软件的优势。而开源软件则是指任何可以以公共方式获取源代码的软件,它们可以被用户编辑、修改和重新发布,但必须遵守其特定的开源许可协议。自由软件和开源软件都允许用户自由的使用、复制、分发、修改和重新发布软件,但是它们之间的区别是前者依靠特定的软件许可证保护用户的权利,而后者要求遵守其特定的开源许可协议。

@stevending1st
Copy link
Contributor

  1. 区别: 自由软件是可以 自由地运行,拷贝,分发,学习,修改 的软件,而开源软件是遵守 OSI 相关定义的软件。开源软件强调源码的开放,而不对其是否开源自由地运行进行约束。( 为什么开源错失了自由软件的重点 一文举了一个例子)另一方面,自由软件强调用户对于软件的权利,而开源软件更多的强调开发方式。

  2. 联系:绝大部分的开源软件同时都是自由软件,而自由软件几乎也都是开源软件。部分开源软件因为选择了对软件的修改、运行、分法等进行更多的限制,导致其不是自由软件。


参考资料:

  1. 为什么开源错失了自由软件的重点
  2. 什么是自由软件?
  3. The Open Source Definition

@Skydzl
Copy link
Contributor

Skydzl commented Jun 19, 2023

区别:
自由软件:强调用户的自由权利,包括运行、研究、修改和分发软件。
开源软件:强调源代码的开放性和可访问性,鼓励共享和协作。

联系:
源代码开放:两者都注重源代码的开放,让用户可以访问、学习和修改软件。
社区协作:都鼓励社区合作和共享,吸引贡献者参与项目的开发和改进。
技术优势:开源软件的开放性和可审计性促进技术创新,而自由软件的自由运行和定制性满足用户需求。

@will-ww will-ww closed this as completed Feb 20, 2024
@wouldmm
Copy link

wouldmm commented Mar 25, 2024

开源软件更强调交流,有更自由软件是指那些尊重用户自由的软件。这种自由包括运行程序的自由、研究和修改程序的自由、以及分享软件副本的自由。自由软件的核心在于赋予用户对软件的控制权,而不仅仅是免费使用。自由软件通常遵循如GNU通用公共许可证(GPL)等许可协议,这些协议确保软件及其衍生作品保持自由。

开源软件则强调源代码的可获取性和公开性。开源软件允许用户自由使用、修改和分发源代码,但它的重点更多在于促进软件的共享和协作。开源软件可能遵循各种许可协议,包括一些允许商业使用和闭源衍生作品的许可证。

总的来说,自由软件强调的是道德和哲学上的自由,而开源软件更注重实用性和技术上的优势。虽然大多数自由软件也是开源的,但并非所有开源软件都符合自由软件的严格标准。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests