开源简史与概览
Think
1.论述“自由软件”与“开源软件”的区别与联系?
2.GitHub Trending 是一个能够快速找到有趣的新项目的地方;而 OpenLeaderboard 也是一个能够发现有趣而有影响力项目的地方。尝试从这两个网站中找到感兴趣的若干项目,挖掘并分析出上榜原因。
3.中国开源码力榜是开源爱好者们记录的开源贡献榜单,找到一个感兴趣的开发者,记录一下他/她的故事。
4.了解黑客文化的起源,思考为什么黑客文化会成为一种文化,以及这种文化对开源的影响。
Note
操作系统是支持计算机基本功能的软件,例如调度任务、执行任务以及控制包括存储设备在内的一些外围设备。
过去的一段时间,大多数计算机系统仍庞大而昂贵,“Big Iron”是常用的俚语。
商业用户需要能轻松地共享数据和资源的操作系统。
20世纪90年代,基于各种原因,互联网在默默无闻中脱颖而出,其中最重要的原因是英国科学家 Tim Berners-Lee 在欧洲核子研究中心工作期间发明了万维网,而这个欧洲研究组织运营着世界上最大的粒子物理实验室。
内核将应用软件与计算机硬件连接起来,并且将管理系统硬件的业务从“用户空间”中抽象出来。
Linux操作系统是类Unix操作系统家族中的一员。
考虑到商业能力与软件密不可分的关系,这意味着开源的发展将推动商业能力向前发展。
“一切都取决于时机,孩子!”
“共享数据是走向社区的第一步。”
“说出你的想法。不要退缩。”
“这个孩子是谁?",“他的名字叫 Linux。”
-- Prodigy
Trial
1.自由与开源软件
自由软件(Free Software)和开源软件(Open Source Software)这两个概念经常被提及,它们都强调软件的源代码可以被用户访问和修改,但它们的核心理念和侧重点有所不同:
1. 自由软件(Free Software):
- 自由:自由软件运动的核心是“自由”(Freedom),即用户拥有使用、研究、分享和修改软件的自由。这个概念由理查德·斯托曼(Richard Stallman)提出,并由自由软件基金会(FSF)推广。
- 道德和伦理:自由软件强调的是道德和伦理问题,即软件应该是自由的,用户不应该被剥夺这些基本自由。
- 版权和许可证:自由软件通常使用如GPL(通用公共许可证)这样的许可证,这些许可证确保了软件的自由性,防止他人将软件私有化。
- 社区和哲学:自由软件运动更强调社区和哲学,鼓励用户参与软件的开发和改进。
2. 开源软件(Open Source Software):
- 开放性:开源软件强调的是开放性,即任何人都可以访问、修改和增强软件的源代码。
- 实用主义:开源软件更侧重于实用主义,关注软件的开发过程、质量和效率,以及如何通过开放源代码来促进软件的发展。
- 许可证:开源软件可以使用多种许可证,包括但不限于GPL、MIT、Apache等,这些许可证允许不同程度的使用和修改。
- 商业和合作:开源软件鼓励商业和非商业实体之间的合作,促进技术创新和软件质量的提升。
尽管自由软件和开源软件在理念上有所不同,但它们之间存在很多交集,许多项目同时符合自由软件和开源软件的定义。实际上,很多开源项目也是自由软件,反之亦然。两者都促进了软件的共享、协作和创新。
2.OpenLeaderboard
是什么?
OpenLeaderBoard 是 X-lab 开放实验室 提供的一款用于洞察开源世界的开源工具。OpenLeaderBoard 提供了一些可视化的开源排行榜,包含项目,企业,中国,活跃度,影响力等多种类别的排行榜,并支持查看开源项目的可视化看板。
- 官方网站:Open Leaderboard
- GitHub 地址:https://github.com/X-lab2017/open-leaderboard
如何参与贡献
step1:阅读项目 README
step2:查看 issue list 中尚未解决的问题
step3:选一个自己力所能及的 issue,并在其中回复表示自己有意愿完成这个 issue
step4:积极主动与社区维护者在 issue 下进行解决方案交流
step5:将远程仓库代码拉取到本地,再在本地进行代码开发
step6:完成代码开发后在 GitHub 上发起 PR,等待社区维护者 Review Code,代码通过后,恭喜你,成功完成了一次开源贡献!
其他基本功能就自己探索吧。
感兴趣的项目
榜上的项目都好大
- cilium
是什么?
Cilium作为一个基于eBPF技术的开源项目,在网络、安全性和可观察性方面提供了创新的解决方案。
活跃度
1. 社区活跃度:Cilium自2016年8月开源以来,已经收获了11.5k的star,接近400位开发者为Cilium项目贡献过代码。其中有60多位开发者在最近一个月保持活跃,GitHub的issues讨论也非常热情,接近6000条issue被处理。这显示了Cilium项目的高活跃度和社区的积极参与。
协作影响力
1. 开源社区贡献:Cilium是eBPF社区中最重要的贡献者与维护者之一,其商业化公司Isovalent也是eBPF里最活跃的开源社区。这表明Cilium在eBPF社区中具有较大的协作影响力。
2. 跨项目协作:Cilium与Envoy和Prometheus紧密结合,并提供了一个基于Go的扩展框架。这种跨项目的协作进一步增强了Cilium的影响力。
3. 行业认可:Cilium被多家知名企业和云供应商采用,如Adobe、Capital One、Cognite、Datadog等,这进一步证明了其在行业中的协作影响力。
价值流网络
1. 网络功能:Cilium提供了扁平化的L3网络以及跨集群通信的能力,能实现L3到L7的协议感知并实施安全策略。这种全面的网络功能为Cilium构建了一个强大的价值流网络。
2. 安全性和可观察性:Cilium通过作为CNI和使用eBPF的Kubernetes增强网络层,为云原生环境提供网络、安全和可观察性。这些功能使得Cilium在云原生架构中具有重要的价值。
3. 商业化潜力:Cilium的商业化公司Isovalent的存在,以及资本市场对eBPF技术的关注,显示了Cilium在商业化方面的潜力和价值流网络的重要性。
- odoo
1.是什么?
Odoo 是一套基于 Wed 的开源商业应用程序。主要应用包括网站构建器、仓库管理、电子商务等。
活跃度

全球活跃度榜17
2.协作影响力
Odoo是全球最大企业应用市场之一,拥有2万个应用市场模块,每月新增300多个,且有广泛的社区支持。
3.价值流网络
Odoo提供了全面的企业管理功能,覆盖企业管理的各个方面,且在安全层面十分灵活。
Odoo官方、开源社区、技术服务商、Odoo用户发展了一个世界最大企业应用市场,显示了商业化潜力。
3.中国开源码力榜
官网
1.是什么?
中国开源码力榜是由 SegmentFault 思否、开源社、X-lab 开放实验室共同发起的中国开源开发者榜单。
该榜单的评选基于开源贡献度评价算法 OpenRank,通过开源社区、广大开发者、志愿者的开放协作,共同核实标注信息、排除机器人账号,甄选了每年排名前 99 位的中国开发者。
2.探索Jarrett Ye 的故事
叶峻峣(Junyao Ye),也称为 Jarrett Ye,是一位活跃在开源社区的算法工程师,他的开源开发故事可以从以下几个方面来讲述:
1. 教育背景与研究兴趣:
叶峻峣毕业于哈尔滨工业大学(深圳)计算机系,目前就职于墨墨背单词,负责研发记忆算法。他对优化间隔重复算法和建模人类记忆有着浓厚的兴趣。
2. 开源之夏的起步:
叶峻峣的开源之旅始于“开源之夏”,当时他对开源项目知之甚少,但怀着对技术的热爱和对学习的渴望,他决定报名参加。这一决定开启了他一段难忘的旅程,也让他在技术和社区中找到了归属感。
3. 在taichi社区的贡献:
他最初报名的是taichi社区,这是一个高效的开源计算框架,专为高性能计算和图形应用设计。叶峻峣在学校研究NeRF时期接触了很多图形学框架,对taichi产生了浓厚的兴趣。
4. OpenMMLab项目的贡献:
在开源之夏报名失败后,叶峻峣发现了OpenMMLab项目,并开始积极参与社区工作。他选择了MMDeploy仓库,并将EfficientNet移植到Jetson上。他还实现了使用OnnxRuntime的NMSMatch算法,为开源社区做出了贡献。
5. 个人开源项目:
叶峻峣给Anki移植了基于他论文中提出的DHP记忆模型的间隔重复算法FSRS,并创建了相关的开源项目。这个项目最初是他个人的项目,但后来吸引了更多人参与,主要代码还是由他编写。
6. 研究成果与开源代码:
叶峻峣在记忆算法研究方面取得了重要进展,其研究成果在国际顶级期刊IEEE TKDE上发表,同时他也提供了相关的开源代码和数据集。
7. 开源组织的参与:
叶峻峣还是@Thoughts Memo汉化组的组长,致力于传播有助于自由学习的知识,并且Anki的作者也加入了他们的开源组织。
叶峻峣的开源开发故事体现了他对技术的热爱、对开源社区的贡献以及在记忆算法领域的专业研究。通过他的努力,叶峻峣不仅提升了自己的技术水平,也为开源社区带来了宝贵的资源和知识。
3.个人感受
他的教育经历丰富,且始终保持着探索欲和好奇心,在兴趣的驱使下不断学习,充满热情地加入特定的领域的社区,这也在一定程度上为他的开源学习和贡献奠定了基础。总的来说,无论是理论还是实践,都非常厉害,很多都没接触过。
4.黑客文化
了解黑客文化的起源,思考为什么黑客文化会成为一种文化,以及这种文化对开源的影响。
1. 起源
黑客文化的起源可以追溯到1961年,那一年麻省理工学院(MIT)终于得到了第一台PDP-1计算机。学院技术模型铁路俱乐部(Tech Model Railroad Club,TMRC)的成员们开始探索计算机系统的能力和自由交流。这个时期,黑客文化主要是由对计算机技术充满热情的一群年轻人组成,他们对技术的热爱、对信息自由的追求以及对权威的挑战精神构成了黑客文化的核心。黑客文化从早期的实验室科研行为准则,发展成“开放源代码”和“自由软件”这样的社会性运动。
2. 为什么成为文化?
黑客文化之所以成为一种文化,有几个关键因素:
- 技术探索与创新:黑客文化鼓励对技术的深入探索和创新,这种对知识的追求和对未知的探索是黑客文化的核心。
- 信息自由:黑客文化强调信息的自由流通和共享,这与互联网的开放性相契合,促进了信息共享观念的推广和扩大。
- 反传统、反权威精神:黑客文化包含反传统、反权威的精神,这种精神鼓励挑战现存的价值观和制度,推动社会变革。
- 社区与合作:黑客文化中的成员通过分享知识、参与开放源代码项目,形成了一个全球性的社区,这种社区精神和合作是黑客文化得以持续和发展的重要原因。
3. 对开源的影响
黑客文化对开源的影响是深远的:
- 开源运动的推动:黑客文化中的开放和共享精神直接推动了开源运动的发展。许多黑客认为软件应该是自由共享的,这种思想促成了如Linux这样的开源项目的成功。
- 技术创新与合作:黑客文化鼓励开放式创新,通过开源软件、共享知识和互联网协作,推动技术的快速发展。
- 社会与文化影响:黑客文化不仅影响了技术领域,还对社会的文化和思考方式产生了影响,促进了非正规、非线性、开放式的文化和思考方式的发展。
- 对抗与合作:黑客文化中的白帽子运动也逐渐壮大,他们致力于发现漏洞并帮助公司修复系统,提高整体安全性,这在一定程度上也促进了开源项目的安全和稳定性。
综上所述,黑客文化因其对技术探索的热爱、对信息自由的追求、反传统精神以及社区合作的特点,成为了一种全球性文化现象,并对开源运动和技术创新产生了深远的影响。
相关文章:
开源简史与概览
Think 1.论述“自由软件”与“开源软件”的区别与联系? 2.GitHub Trending 是一个能够快速找到有趣的新项目的地方;而 OpenLeaderboard 也是一个能够发现有趣而有影响力项目的地方。尝试从这两个网站中找到感兴趣的若干项目,挖掘并分析出上…...
充电桩语音提示芯片方案-支持平台自定义语音NV128H让充电更便捷
随着工业化与城市化进程的加速推进,传统燃油汽车的数量急剧攀升,这直接导致了石油资源的过度开采与消耗。石油,作为不可再生的化石燃料,其储量日益枯竭,价格波动频繁,给全球能源安全带来了前所未有的挑战。…...
277-基于八路256Ksps 24bit AD生物电震动检测FMC子卡
一、板卡概述 板卡基于AD7768 AD芯片设计的八路低速采集的FMC 子卡,支持直流耦合,产品应用于生物电、脑电波、声音,震动等信号采集。 二、板卡参数及性能 板卡功能 参数 内容 ADC 芯片型号 AD7768 路数 8路ADC, 采样率 2…...
【电路理论四】正弦电流电路
正弦电流 正弦量是随时间按正弦规律变动的电路变量。 随时间按正弦规律变动的电流称为正弦电流。 正弦电流的瞬时值表达式: 称为正弦电流的三要素。 分别为振幅/幅值,角频率,初相。 幅值为正弦电流的最大值,恒为正。 为正弦电…...
【PyCharm】如何把本地整个项目同步到服务器?
在PyCharm中,您可以使用部署功能将项目同步到服务器。以下是步骤和示例配置: 打开PyCharm,选择您的项目。 点击菜单栏的 “File” -> “Settings” -> “Build, Execution, Deployment”。 在左侧菜单中,选择 “Deployme…...
露营小程序搭建有哪些步骤?小程序里面可以找个露营搭子
露营不仅仅是走进大自然的旅程,它也成为了一种社交和体验式的活动。随着小程序的普及,露营活动也越来越多地开始在线上开展。通过搭建一个露营小程序,商家不仅可以为用户提供更多的露营选择,还可以帮助他们找到合适的露营搭子。那…...
SOLID-开闭原则
单一职责原则:https://blog.csdn.net/dmk877/article/details/143447010 在前面我们学习了单一职责原则,今天来一起学习一下SOLID原则中的开闭原则(Open-Closed Principle, OCP) 通过本篇博客你将学到到以下内容 ①什么是开闭原则 ②如何实现开闭原则 ③…...
前端经典面试合集(二)——Vue/React/Node/工程化工具/计算机网络
1. 说说 Vue 中的 Diff 算法 Vue 的 Diff 算法 主要用于优化虚拟 DOM 和实际 DOM 之间的比较过程。它通过以下几种策略来提高性能: 最小化对 DOM 的操作:Vue 通过在内存中构建一个虚拟 DOM 树,在虚拟 DOM 树与真实 DOM 树之间进行比较和更新…...
PH47代码框架 24241231 重要更新
仪式感一下:2024年最后一天,发布 PH47 代码框架的一次重要更新。当然这并不是有意的,而是直到现在才把更新的所有工作全部做完(希望确实如此)。 本次更新要点: 1、加入多IMU支持。本次更新正式加入对 MPU65…...
Qt6之QML——作用域
作用域定义了表达式可以访问哪些变量、属性或对象,并决定了在变量重名时的优先级如何处理。以下将从作用、绑定、组件作用域和使用技巧四个方面详细解析 QML 中的作用域。 1. 作用:表达式的变量访问与优先级 在 QML 中,表达式能够访问的变量…...
119.【C语言】数据结构之快速排序(调用库函数)
目录 1.C语言快速排序的库函数 1.使用qsort函数前先包含头文件 2.qsort的四个参数 3.qsort函数使用 对int类型的数据排序 运行结果 对char类型的数据排序 运行结果 对浮点型数据排序 运行结果 2.题外话:函数名的本质 1.C语言快速排序的库函数 cplusplus网的介绍 ht…...
C#封送类
封送类(Marshaling classes)在.NET框架中扮演着至关重要的角色,尤其是在托管代码与非托管代码之间进行数据交换时。封送过程涉及到将托管环境中的对象转换为非托管环境中可以理解的形式,并且反之亦然。这一过程确保了两种不同类型…...
2024年度学习总结
2024年是我学业生涯的结束,是我职业生涯的开始。2024年6月19日我顺利研究生毕业,进入体制内,陆止于此,海始于斯,知识和文化最大的魅力,大概就是教会人谦卑和敬畏。读研的目的不是为了单纯拿到哪个证书&…...
我的博客年度之旅:感恩、成长与展望
目录 感恩有你 技能满点 新年新征程 嘿,各位技术大佬、数码潮咖还有屏幕前超爱学习的小伙伴们!当新年的钟声即将敲响,我们站在时光的交汇点上,回首过往,满心感慨;展望未来,豪情满怀。过去的这…...
undefined symbol: __nvJitLinkComplete_12_4, version libnvJitLink.so.12
目录 我的解决方法: 测试: 报错: undefined symbol: __nvJitLinkComplete_12_4, version libnvJitLink.so.12 from torch._C import * # noqa: F403 ImportError: /mnt/pfs/users/lbg/envs/mmpano/lib/python3.9/site-packages/torch/lib…...
【OTA】论文笔记--《智能网联汽车整车OTA功能设计研究》智能网联汽车OTA系统设计分析报告
智能网联汽车OTA系统设计分析报告 引言 随着汽车智能化、网联化水平不断提升,现代汽车中电子控制单元(ECU)的数量和复杂度持续增加。据统计,高级轿车上电子电气元件的成本已占整车开发成本的60%~70%。为了实现对这些电控单元的软件开发调试、数据标定、文件更新和故障修复,…...
c#String和StringBuilder
目录 一,String 1,string的特点: 2,string常用方法 (1)Length (2)Substring() (3)ToUpper() (4)ToLower() (5&…...
【Linux】HTTP协议
之前,我们已经做过了自定义协议,事实上,已经有很多现成已经做好又非常好用的协议,它们都是相同的,比如HTTP协议。所谓HTTP协议,就是超文本传输协议,定义了客户端和服务器之间是如何通信的&#…...
计算机网络 (14)数字传输系统
一、定义与原理 数字传输系统,顾名思义,是一种将连续变化的模拟信号转换为离散的数字信号,并通过适当的传输媒介进行传递的系统。在数字传输系统中,信息被编码成一系列的二进制数字,即0和1,这些数字序列能够…...
《向量数据库指南》——Milvus Cloud 2.5:Sparse-BM25引领全文检索新时代
Milvus Cloud BM25:重塑全文检索的未来 在最新的Milvus Cloud 2.5版本中,我们自豪地引入了“全新”的全文检索能力,这一创新不仅巩固了Milvus Cloud在向量数据库领域的领先地位,更为用户提供了前所未有的灵活性和效率。作为大禹智库的向量数据库高级研究员,以及《向量数据…...
(十)学生端搭建
本次旨在将之前的已完成的部分功能进行拼装到学生端,同时完善学生端的构建。本次工作主要包括: 1.学生端整体界面布局 2.模拟考场与部分个人画像流程的串联 3.整体学生端逻辑 一、学生端 在主界面可以选择自己的用户角色 选择学生则进入学生登录界面…...
【CSS position 属性】static、relative、fixed、absolute 、sticky详细介绍,多层嵌套定位示例
文章目录 ★ position 的五种类型及基本用法 ★ 一、position 属性概述 二、position 的五种类型详解(初学者版) 1. static(默认值) 2. relative(相对定位) 3. absolute(绝对定位) 4. fixed(固定定位) 5. sticky(粘性定位) 三、定位元素的层级关系(z-i…...
蓝桥杯 冶炼金属
原题目链接 🔧 冶炼金属转换率推测题解 📜 原题描述 小蓝有一个神奇的炉子用于将普通金属 O O O 冶炼成为一种特殊金属 X X X。这个炉子有一个属性叫转换率 V V V,是一个正整数,表示每 V V V 个普通金属 O O O 可以冶炼出 …...
保姆级教程:在无网络无显卡的Windows电脑的vscode本地部署deepseek
文章目录 1 前言2 部署流程2.1 准备工作2.2 Ollama2.2.1 使用有网络的电脑下载Ollama2.2.2 安装Ollama(有网络的电脑)2.2.3 安装Ollama(无网络的电脑)2.2.4 安装验证2.2.5 修改大模型安装位置2.2.6 下载Deepseek模型 2.3 将deepse…...
前端中slice和splic的区别
1. slice slice 用于从数组中提取一部分元素,返回一个新的数组。 特点: 不修改原数组:slice 不会改变原数组,而是返回一个新的数组。提取数组的部分:slice 会根据指定的开始索引和结束索引提取数组的一部分。不包含…...
0x-3-Oracle 23 ai-sqlcl 25.1 集成安装-配置和优化
是不是受够了安装了oracle database之后sqlplus的简陋,无法删除无法上下翻页的苦恼。 可以安装readline和rlwrap插件的话,配置.bahs_profile后也能解决上下翻页这些,但是很多生产环境无法安装rpm包。 oracle提供了sqlcl免费许可,…...
一些实用的chrome扩展0x01
简介 浏览器扩展程序有助于自动化任务、查找隐藏的漏洞、隐藏自身痕迹。以下列出了一些必备扩展程序,无论是测试应用程序、搜寻漏洞还是收集情报,它们都能提升工作流程。 FoxyProxy 代理管理工具,此扩展简化了使用代理(如 Burp…...
Linux安全加固:从攻防视角构建系统免疫
Linux安全加固:从攻防视角构建系统免疫 构建坚不可摧的数字堡垒 引言:攻防对抗的新纪元 在日益复杂的网络威胁环境中,Linux系统安全已从被动防御转向主动免疫。2023年全球网络安全报告显示,高级持续性威胁(APT)攻击同比增长65%,平均入侵停留时间缩短至48小时。本章将从…...
2025年- H71-Lc179--39.组合总和(回溯,组合)--Java版
1.题目描述 2.思路 当前的元素可以重复使用。 (1)确定回溯算法函数的参数和返回值(一般是void类型) (2)因为是用递归实现的,所以我们要确定终止条件 (3)单层搜索逻辑 二…...
python基础语法Ⅰ
python基础语法Ⅰ 常量和表达式变量是什么变量的语法1.定义变量使用变量 变量的类型1.整数2.浮点数(小数)3.字符串4.布尔5.其他 动态类型特征注释注释是什么注释的语法1.行注释2.文档字符串 注释的规范 常量和表达式 我们可以把python当作一个计算器,来进行一些算术…...
