这里记录每周值得分享的科技内容,周五发布。
本杂志开源[1],欢迎投稿[2]。另有《谁在招人》[3]服务,发布程序员招聘信息。合作请邮件联系[4][email protected][5])。

封面图

秘鲁首都利马是一个神奇的城市,建在面向太平洋的悬崖之上。要去海滩,还要下山。(via[6]

开源软件如何赚钱?

众所周知,开源软件很难赚钱,尤其是 GPL 许可证的代码。
GPL 规定,必须向使用者提供源码,并且使用者有权重新发布源码。
这就是说,别人可以免费分发你的软件,所以你无法靠出售软件获利。
既然卖不了软件,那么能不能卖服务呢,出售代码的支持、定制、咨询服务?
我一直认为是可以的。证据就是有一家软件公司,依靠软件支持服务,赚到了大钱,还上市了。
这家公司就是红帽公司,它出售 Linux 企业级支持和咨询服务,1999年成功上市,2019年被 IBM 以340亿美元的高价收购。
但是,这个成功故事在上个月嘎然而止。突然之间,所有人惊觉,软件客服的商业模式再也行不通了
下面我就来说说,到底发生了什么事。
红帽的主要产品,就是它自己的 Linux 发行版,叫做 RHEL(Red Hat Enterprise Linux 的缩写)。它卖的是这个发行版的支持服务。
根据 GPL 许可证,它必须免费提供源码,所以市场上有很多它的克隆版。那些不愿意买红帽服务的公司,就用克隆版,很多互联网大厂都这样做。
以前,最流行的红帽克隆版是 CentOS。它甚至比红帽本身的使用量都要大。
自从红帽被 IBM 收购以后,就觉得克隆版对生意的冲击太大了。它就收购了 CentOS,并在两年前把它停掉,改成自家的测试版,起名为 CentOS Stream,等于让社区帮它找 Bug。
这件事让很多人不爽,但是红帽的源码是公开的,一个克隆版没了,那就再推其他克隆版。现在最流行的克隆版有两个:Alma Linux 和 Rocky Linux。
上月发生的事情就是,红帽公司突然宣布[7]源码不再公开了,只向索要源码的客户私下提供
这个声明像炸弹一样,在业界炸开了锅。开源世界里面,从来没人这么干过。
大家仔细分析以后,发现这居然符合 GPL 许可证。因为 GPL 只要求向使用者提供源码,红帽的使用者都是付费客户,所以它可以私下提供源码。
问题是你成为红帽客户的时候,必须签一个《用户协议》,里面明确规定,如果你重新发布源码,红帽有权终止用户合同。这等于说,发布克隆版的人,从此就无权获得源码了,从而实际上禁止了克隆版。
这一招真是高明啊,既没有违反 GPL,又消灭了克隆版。红帽一定是找了很多律师,反复研究才想出这种做法。
这件事对红帽的长期影响,还有待观察。但是,至少说明了一点,红帽觉得“客服模式”赚的钱太少了,只有禁掉克隆版,才能赚更多的钱
红帽是业内唯一的开源软件“客服模式”的成功案例,就这样终结了。一家开源软件公司,通过客服赚到大钱,以前还有红帽,以后就绝迹了。
国外媒体总结了几个原因[8]为什么“客服模式”行不通,我觉得说得非常好。
(1)客服模式利润微薄,客户不愿意为支持服务支付高价。
(2)客服很难扩展。客户可能会大量使用软件,但是只购买一份服务。
(3)客服模式无法实现高速增长。软件越易用越可靠,用户就越不需要购买支持服务。“如果你出色构造了软件,你最终会让自己失业,因为客户可以在没有帮助的情况下使用它。”
(4)客服模式很难获得早期收入。创业公司好不容易找到100个初始用户,其中可能只有几个会购买服务,也许一个都没有。
因此,开源软件的盈利模式,一定不是客服,而是其他模式。不过,今天已经写得太长了,这个话题只好留到下周。

科技动态

1、待办显示屏[9]
一个国外程序员使用平板显示器,制作了一个“待办事项显示屏”。
每天放在桌子上,提醒自己要办什么事,进度如何。
显示屏的上部显示最近几个月的日历,下面是每周的待办事项和进度。
这个设备成本很低,操作又很简单,可以取代传统的日历和台历,非常实用,也许还有商业潜力。
2、世界最大办公楼[10]
印度建造了一座世界最大办公楼,位置在孟买以北约250公里的苏拉特。
那里是世界钻石加工中心,全球约90%的钻石在那里切割。这次新建的就是钻石交易所。
整栋大楼的建筑面积约66万平方米,一共9个矩形单元通过中央走廊连在一起。整个建筑物高为15层楼,可以容纳65,000人同时办公。
在它之前,世界最大的办公楼是美国国防部五角大楼,建筑面积61万平方米。世界最大的建筑物则是成都的环球中心,建筑面积176万平方米。
3、法律摇篮曲[11]
互联网大厂的用户协议,充满了法律术语,冗长而乏味。如果仔细阅读,让人昏昏欲睡。
有人想到一个点子,邀请配音演员来朗读这些协议,把录音放在网上,用来助眠。
如果你睡不着,不妨去 zzzuckerberg.com[12],听听这些录音,也许很快就会睡着。
Instagram 协议的音频长达51分钟,TikTok 长约38分钟。
4、AI 音乐平台[13]
各种音乐网站收录的,都是人类创造的音乐。现在有一个网站,专门收录 AI 创作的音乐。
这个叫做 Mubert[14] 的网站表示,已经收录了1亿首曲子,跟世界最大音乐网站 Spotify 的规模相当,你可以无穷无尽地收听。
AI 音乐没有版权,用户可以任意使用,包括商用。这个网站还提供工具,让你按照自己的喜好生成音乐,添加到它的曲库。

文章

1、GitHub 支持无密码登录[15](英文)
GitHub 宣布,本月开始支持 Passkey(无密码登录),本文教你怎么打开这个功能。
2、《芯片战争》作者专访[16](英文)
专访畅销书《芯片战争》作者克里斯·米勒,谈美国芯片战略和中美芯片竞争。
3、structuredClone() 简介[17](英文)
JavaScript 自带的拷贝,都是浅拷贝,现在浏览器引入一个全局函数structuredClone(),用来深拷贝。
4、圆圈滚动问题[18](英文)
上图中,两个圆的半径分别是 r 和 4r。小圆沿着大圆滚动一圈,请问这时小圆自身滚动了几圈?(提示:答案不是4圈。)
5、CSS Media Query 入门[19](英文)
本文是 CSS 入门科普文章,介绍如何使用 Media Query 完成响应式设计,写得很清晰。
6、Git 内部原理的快速介绍[20](英文)
Chrome 团队工程师写的 Git 原理简单介绍,理清 Git 的一些基本概念。
7、哈希是什么[21]
一篇入门科普文章,图文并茂,通俗解释哈希的原理,怎么使用,写得很好。
8、socket 到底是个啥(中文)
socket 的概念往往是常见面试问题,作者介绍了 socket 的使用场景和底层实现。(@xxxsalted[22] 投稿)

工具

1、hiSHtory[23]
一个强大的 Shell 操作历史的搜索工具,可以替代 Bash 内置的 ctrl-r 搜索。
2、talk[24]
一个开源的 Web 应用,基于 WebRTC 技术的多人群聊软件,支持视频、音频和文字聊天。
3、TinyVG[25]
SVG 图片格式的二进制版本,可以大大缩小 SVG 文件体积。
4、Gitstars[26]
一个开源的在线服务,用来管理你在 GitHub 打过星标的项目(收藏的项目)。(@cfour-hi[27] 投稿)
5、迅排设计[28]
开源的在线海报图片设计器。(@palxiao[29] 投稿)
6、Spring Startup Ananlyzer[30]
Spring 性能分析工具,收集启动过程数据,生成交互式分析报告。(@linyimin0812[31] 投稿)
7、WebAV[32]
Chrome 94 开放了 WebCodecs API,意味着 JS 也能处理音视频了。这是一个实验性项目,尝试提供简单易用的 API 在浏览器中处理音视频数据。(@hughfenghen[33] 投稿)
8、kafka-console-ui[34]
一款轻量级的 Kafka 可视化管理平台。(@xxd763795151[35] 投稿)
9、killport[36]
一个 Rust 语言写的命令行程序,可以杀死占用指定端口的进程。
10、Sniffnet[37]
一个跨平台桌面应用,用来追踪监控网络流量,并以可视化的方式呈现。

资源

1、Triviance[38]
使用 ChatGPT 生成的智力测验的题库,超过100万题,都是四选一的选择题,还分成不同的主题。
2、FastGPT[39]
新兴搜索引擎 Kagi 推出的 GPT 聊天,免费使用,响应很快,支持中文。
3、ToolAI[40]
AI 网站目录,收录了全球5000个 AI 网站。(@littledot2020[41] 投稿)
4、Python 数据分析(第三版)[42](Python for Data Analysis)
一本英文教材,最新的第三版,讲授 Python 数据分析的初步知识,免费阅读。

图片

1、冰山的底部[43]
人们总是说,冰山露出水面的部分不到20%。
一个德国的水下摄影师,特意前往格陵兰,拍摄水下的冰山。
她拍到了很多震撼的冰山底部的照片。
2、最大的化石花[44]
1872年,在北欧波罗的海附近,发现了一块距今3000多万前的琥珀化石。
令人震惊的是,这块化石里面有一朵完整的花。
这是已知最大的化石花,花瓣长达28毫米,我们可以看到它在3000多万年前盛开的样子。

文摘

1、成年期的快与慢[45]
我们生活在这样一个社会:小孩子像成年人一样老成,而成年人像小孩子一样幼稚。
现在的孩子们比以前更容易接触到成年人的世界,因此他们更早成人化。
从很小的年龄起,他们就在视频网站观看暴力和战争,在社交网络上看到性感和暴露的照片和视频。
然而,当孩子们成年以后,他们往往无法实现经济独立,也没有机会承担足够的责任。
结果,整个社会的文化就变得很幼稚,成年人感到无法做出承诺,即使承诺了也缺乏信心,对以后的生活感到难以把握。
他们的行事方式和处事态度,就像还在青少年时期。
2、JSLint 的许可证[46]
JSON 格式的发明者道格拉斯(Douglas Crockford),在一次演讲中讲了一件趣事。
他在自己开发的 JSLint 软件许可证中设置了一个条款,要求“该软件应该用于善,而不是恶“。
后来,他收到一封来自 IBM 公司律师的信。
律师说,他们想使用 JSLint,但是这个许可证让他们有点为难。他们很确定,IBM 不会用它来作恶,但没法保证 IBM 客户的行为。因此询问道格拉斯,能不能给他们一个不同的许可证?
道格拉斯回信:“可以。我允许 IBM、它的客户、合作伙伴使用 JSLint 作恶。”
律师回信说:“非常感谢,道格拉斯!”

言论

1、
我们家的洗碗机经常坏,上一次是我自己修好的,这一次修不好了。
一连10天,我都用手洗碗。虽然我小时候就是这样做,但是洗碗机让我忘了,自己曾经多么讨厌这件事。好在新洗碗机终于到了。
-- 莱纳斯·托沃兹[47],Linux 创始人
2、
Linux 桌面环境,可能永远不会普及到大众。因为 Linux 使用者真正关心的是能否完成工作,他们对于桌面的要求,只要拥有浏览器即可满足,所以社区没有足够动力改善桌面体验。
-- 《今年不是 Linux 桌面年》[48]
3、
网络社区最不能容忍的,就是大量持续涌入的陌生人,这让社区变成一个类似火车站的地方。成员的行为模式变得就像路过,人来人往,没有真正的归属感。
-- 《杀死社区》[49]
4、
以太坊发明者 Vitalik Buterin 在创建以太坊之前,是一名记者,为比特币杂志撰稿。他(或者他的父亲)说,他们相信写作帮助他理清了思想。
-- Hacker News 读者[50]

历史上的本周

极简主义的胜利(2022 #216)
(完)

References

[1]
 开源: 
https://github.com/ruanyf/weekly
[2]
 投稿: 
https://github.com/ruanyf/weekly/issues
[3]
 《谁在招人》: 
https://github.com/ruanyf/weekly/issues/3222
[4]
 邮件联系: 
mailto:[email protected]
[5]mailto:[email protected]
[6]
 via: 
https://www.instagram.com/p/CufbbVXPtA8/
[7]
 突然宣布: 
https://www.redhat.com/en/blog/furthering-evolution-centos-stream
[8]
 几个原因: 
https://opencoreventures.com/blog/2023-04-red-hat-model-only-worked-red-hat/
[9]
 待办显示屏: 
https://peppe.rs/posts/plain_text_journaling/
[10]
 世界最大办公楼: 
https://edition.cnn.com/style/india-largest-office-building-surat-diamond-bourse/index.html
[11]
 法律摇篮曲: 
https://petapixel.com/2023/07/13/legal-lullabies-puts-you-to-sleep-by-reading-social-media-terms-of-use/
[12]
 zzzuckerberg.com: 
https://www.zzzuckerberg.com/
[13]
 AI 音乐平台: 
https://www.digitalmusicnews.com/2023/07/12/ai-generated-music-platform-mubert-says-catalog-now-tops-100-million-songs/
[14]
 Mubert: 
https://mubert.com/
[15]
 GitHub 支持无密码登录: 
https://github.blog/2023-07-12-introducing-passwordless-authentication-on-github-com/
[16]
 《芯片战争》作者专访: 
https://www.noahpinion.blog/p/interview-chris-miller-historian
[17]
 structuredClone() 简介: 
https://developer.mozilla.org/en-US/docs/Web/API/structuredClone
[18]
 圆圈滚动问题: 
https://plus.maths.org/content/circles-rolling-circles
[19]
 CSS Media Query 入门: 
https://engineering.kablamo.com.au/posts/2023/media-queries-and-responsive-design/
[20]
 Git 内部原理的快速介绍: 
https://sites.google.com/a/chromium.org/dev/developers/fast-intro-to-git-internals
[21]
 哈希是什么: 
https://samwho.dev/hashing/
[22]
 @xxxsalted: 
https://github.com/ruanyf/weekly/issues/3274
[23]
 hiSHtory: 
https://github.com/ddworken/hishtory
[24]
 talk: 
https://github.com/vasanthv/talk
[25]
 TinyVG: 
https://tinyvg.tech/
[26]
 Gitstars: 
https://github.com/cfour-hi/gitstars
[27]
 @cfour-hi: 
https://github.com/ruanyf/weekly/issues/3286
[28]
 迅排设计: 
https://github.com/palxiao/poster-design
[29]
 @palxiao: 
https://github.com/ruanyf/weekly/issues/3284
[30]
 Spring Startup Ananlyzer: 
https://github.com/linyimin0812/spring-startup-analyzer
[31]
 @linyimin0812: 
https://github.com/ruanyf/weekly/issues/3280
[32]
 WebAV: 
https://github.com/hughfenghen/WebAV
[33]
 @hughfenghen: 
https://github.com/ruanyf/weekly/issues/3282
[34]
 kafka-console-ui: 
https://github.com/xxd763795151/kafka-console-ui
[35]
 @xxd763795151: 
https://github.com/ruanyf/weekly/issues/3272
[36]
 killport: 
https://github.com/jkfran/killport
[37]
 Sniffnet: 
https://github.com/GyulyVGC/sniffnet
[38]
 Triviance: 
https://triviance.com/
[39]
 FastGPT: 
https://labs.kagi.com/fastgpt
[40]
 ToolAI: 
https://www.toolai.io/
[41]
 @littledot2020: 
https://github.com/ruanyf/weekly/issues/3276
[42]
 Python 数据分析(第三版): 
https://wesmckinney.com/book/
[43]
 冰山的底部: 
https://mossandfog.com/incredible-photos-show-the-underside-of-icebergs/
[44]
 最大的化石花: 
https://www.iflscience.com/the-biggest-fossil-flower-ever-found-in-amber-has-a-new-name-67049
[45]
 成年期的快与慢: 
https://perell.com/essay/adulting-fast-and-slow/
[46]
 JSLint 的许可证: 
https://web.archive.org/web/20130203112329/http://dev.hasenj.org/post/3272592502
[47]
 莱纳斯·托沃兹: 
https://social.kernel.org/notice/AUkTPiXrpnBynp8vS4
[48]
 《今年不是 Linux 桌面年》: 
https://antipaucity.com/2013/06/04/this-is-not-the-year-of-the-linux-desktop/
[49]
 《杀死社区》: 
https://www.marginalia.nu/log/82_killing_community/
[50]
 -- Hacker News 读者: 
https://news.ycombinator.com/item?id=36793106
继续阅读
阅读原文