├── 001.md ├── 002.md ├── 003.md ├── 004.md ├── 005.md ├── 006.md ├── 007.md ├── 008.md ├── 009.md ├── README.md ├── books └── 【黑客:计算机革命的英雄(25周年纪念版)】Steven Levy.pdf └── projects └── Google.md /001.md: -------------------------------------------------------------------------------- 1 | # 开源早读课周刊:第1期 2 | 3 | 这里记录每周值得分享的开源内容,周五发布。 4 | 5 | 本杂志开源(GitHub: [hapiman/weekly](https://github.com/hapiman/weekly)),欢迎提交 issue,投稿或推荐你的项目。 6 | 7 | ![image](https://user-images.githubusercontent.com/7567048/126717854-ba93a9ad-f4ed-4d25-ba90-aa1328310dd1.png) 8 | 9 | 封面图:网上流传的一张特别广泛的图,旨在阐述在信息洪流时代,如何将漫天遍野的信息转为为知识,并进一步形成智慧、洞见。 10 | 11 | ## 刊首语 12 | 13 | 阮一峰老师的《科技爱好者周刊》是我每周五都会浏览的网站,经常能够收获科技,人文,互联网等方面比较新颖的观点。 14 | 15 | “开源早读课周刊”借鉴了这种方式,将每周开源领域值得分享的内容,包括开源协议、开源咨询、开源软件、开源思想、开源杂谈、开源案例等整理在周刊中,希望能够在帮助自己深入理解开源世界的同时,也能够帮助对于开源世界感兴趣的读者。 16 | 17 | 开源,也就是开发源代码,之前我和大多数一样,一直认为源代码属于公司的核心资产,如果把源代码都放在开源世界里面,那么每个人都能够看到公司对于软件的实现方式、设计思想,岂不是给自己找了批量的竞争对手,主动让出利润。 18 | 19 | 直到在阅读《黑客和画家》看到了新的观点,我们的思维往往局限在分蛋糕层面,而不是想着通过开源方式来做大蛋糕,这个思想在Google开源浏览器内核Chromuim和Android源码得到充分体现,具体流程留在后面的周刊中专门介绍。 20 | 21 | 在这里我还想在举个例子,关于微软对于开源生态态度的转变。 22 | 23 | 微软前CEO史蒂夫·鲍尔默曾激进地公开将Linux称为“癌症”。在现任CEO上台之后,微软对于开源的态度却急剧转变。尽管很多人依然觉得微软是一个拒绝开源的封闭的高科技公司,但最近几年微软已经是Github提交源代码人数最多的公司了,已经是最积极主动拥抱开源的公司之一了。 24 | 25 | 这一切,都和其公司的战略密切关联,在微软现任CEO萨提亚·纳德拉上台之后,提出了“移动优先云优先”的发展战略,重新定位了客户范围,就如其自传《刷新:重新发现商业与未来》中提到了那样,在主动拥抱开源世界之后重新刷新公司。带来的转变相当成功,截至今日,微软的估值已经从2000+亿增长到如今20000亿左右,基本实现了10倍的增长。 26 | 27 | 关于微软开源态度,可以总结为一句话:**开源并不代表不赚钱,开源也不定有人看**。 28 | 29 | 关于开源实在是有太多的问题了。 30 | 31 | 开源如何赚钱,开源的运作模式,开源的历史,开源项目如何估值,开源项目如何协作,各个国家开源情况,各个公司的开源,知名项目的开源情况,怎么做好开源等等。 32 | 33 | **本周刊就聚焦解决这些问题,希望在开源世界贡献自己的力量。** 34 | 35 | 在前期,主要是推荐每周找到的一些精彩的文章,我会尽量少做评论,避免因为自己认知的不到位,误导大家。 36 | 37 | OK,下面是第一周的开源分享,enjoy。 38 | 39 | ## 开源简史 40 | 41 | 1、[开源软件的历史](https://zhuanlan.zhihu.com/p/119958494) 42 | 43 | 44 | ## 开源协议 45 | 46 | 1、[使用Apache协议的是自由软件吗?](https://my.oschina.net/vigor23/blog/4464345) 47 | 48 | ![image](https://user-images.githubusercontent.com/7567048/126722990-7ee27ac4-b069-4b51-9373-3858eb30c38c.png) 49 | 50 | 大家都知道的是,使用Apache协议的是开源软件,但若问是不是自由软件呢? 51 | 52 | 大多数人是很犹豫的。 53 | 54 | 因为“自由”两个字,还挺吓人的。 55 | 56 | 很多人以为,只有采用GPL协议的软件才是自由软件。 57 | 58 | 其实,采用Apache 2.0协议的也是自由软件。 59 | 60 | 只不过,自由软件并不等同于copyleft,这才是人们容易搞混的东西。 61 | 62 | 本文就是简单搞明白一下什么是开源软件,什么是自由软件,什么是copyleft。 63 | 64 | 65 | 2、[​Copyright 到底是什么意思?](https://my.oschina.net/vigor23/blog/4482512) 66 | 67 | 3、[GPLv2许可证正经人话翻译](https://my.oschina.net/vigor23/blog/4393072) 68 | 69 | ## 开源杂谈 70 | 71 | 1、[如何高效地学习开源项目?](https://time.geekbang.org/column/article/186778) 72 | 73 | - 1、安装 74 | - 2、运行 75 | - 3、原理研究 76 | - 4、测试 77 | - 5、源码研究 78 | 79 | 2、[个人开源项目如何赚钱?](https://time.geekbang.org/column/article/155211) 80 | 81 | 个人开源项目如何挣钱,没有收入的个人项目大概率是无法活下来的。 82 | 83 | 3、[开源中国开源世界高峰论坛](https://codechina.csdn.net/COPU/OCOW-2021) 84 | 85 | > 6月17日 86 | 87 | > - 开源开放的构建OpenHarmony @欧建深 88 | > - 开源深度赋能小米AIoT @崔宝秋 & @Daniel Povey 89 | > - Apollo开放平台 赋能产教融合,推动行业创新 @董芳芳 90 | > - 开源技术赋能工业互联网产业实践 @于辰涛 91 | > - 发展开源基础软件 @马涛 92 | 93 | > 6月18日 94 | 95 | > - 2021中国开源发展蓝皮书 @刘澎 96 | > - 中国开源的底气 @马越 97 | > - Apache SkyWalking,顶级开源监控生态 @吴晟 98 | > - PostgreSQL生态价值与中国开发者社区运营实践 @丁治明 99 | > - 开源标准与木兰社区 @杨丽蕴 100 | > - 从Harbor开源项目构建云原生生态 @张海宁 101 | > - 加速模型推理,助力AI落地 @袁丽雅 102 | 103 | 4、[开源商业化是“一夜成名”的爆发](https://mp.weixin.qq.com/s/BBYGBwWaGQezyRWHHDSMzQ ) 104 | 105 | 开源的商业化有一个拉新、留存、促活和转化的过程。 106 | 107 | 5、[十年「速」成的世界级开源公司HashiCorp](https://mp.weixin.qq.com/s?__biz=MjM5MTk3NTYyMA==&mid=2651245140&idx=1&sn=bc4818c75cfe45a80e4c2d2022cfa436&chksm=bd5f3bff8a28b2e93e863b3d2fdd4671d9bfa526298b372a12f7cb32964d5ae4c74db5176b6a&scene=21#wechat_redirect) 108 | 109 | 讲述世界级开源软件公司HashiCorp的十年「速」成路。 110 | 111 | 6、[纳德拉与开源的微软](https://time.geekbang.org/column/article/98891) 112 | 113 | 7、[崛起的中国开源软件市场](https://time.geekbang.org/dailylesson/collection/34) 114 | 115 | 8、[关于《大教堂与集市》读后感](https://opensourceway.community/posts/the_way_of_open_source/the_three_realm_of_open_source_software/) 116 | 117 | ## 开源书籍 118 | 119 | 1、《大教堂与集市》 120 | 121 | 本书是开源运动的独立宣言,它清晰、透彻和准确地描述了开源运动的理论与实际应用,对开源软件运动的成功和Linux操作系统的广泛采用都起到了至关重要的作用。 122 | 123 | 本书在开源运动中的地位相当于基督教的圣经,用黑客们的话说,这是“黑客藏经阁”的必备收藏。 124 | 125 | 本书并不只是在讲开源和黑客,所有关心软件开发和IT发展的人都应该花些时间通读全书,书中给出了大量充满智慧的观点和经过验证的概念,如命令体系、礼物文化、以少成多、内部市场、竞次、反公地模型、委员会设计、同侪声誉、模因工程、SNAFU现象、进化不利条件、软件业是服务行业、组织结构决定产品结构、准入门槛越低稳定性越高、程序员是资产而非成本等,这些内容一定会给你带来新的启示和思考。 126 | 127 | 2、《2021中国开源发展蓝皮书》 128 | 129 | 2021年5月11日,由**中国开源软件推进联盟**发起,联合中国开发者社区CSDN、中国网络空间研究院、中国电子信息产业发展研究院、中国电子技术标准化研究院、开源社、开源中国、北京大学、国防科技大学、华东师范大学等几十家科研院所、科技企业,共同重磅发布《2021中国开源发展蓝皮书》,旨在全面梳理、展现当前中国开源发展的真实图谱。 130 | 131 | ## 订阅 132 | 133 | 这个周刊每周五发布,微信搜索 **大漠胡萝卜** 或者扫描二维码,即可订阅。 134 | 135 | ![](https://pic3.zhimg.com/80/v2-3f4a18e9ed7be804777475106db4f205_1440w.png) 136 | 137 | (完) -------------------------------------------------------------------------------- /002.md: -------------------------------------------------------------------------------- 1 | # 开源早读课周刊:第2期 2 | 3 | 这里记录每周值得分享的开源内容,周五发布。 4 | 5 | 本杂志开源(GitHub: [hapiman/weekly](https://github.com/hapiman/weekly)),欢迎提交 issue,投稿或推荐你的项目。 6 | 7 | ![](https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/4517d357bae14d79bca3e9fac091da32~tplv-k3u1fbpfcp-zoom-1.image) 8 | 9 | 封面图:国内首座开源长廊,来自2021全球开源技术峰会。 10 | 11 | ## 刊首语 12 | 13 | 开源最初是一场反建制类型的技术和社会运动,旨在让人们接受自由和开放的思想和促进软件的交流。而今天的开源已经是人们日常生活的重要组成部分,世界上大多数现代软件都基于开源软件快速开发而来,开源改变了人们的工作方式。 14 | 15 | 现在的开源软件已经成为了全球技术供应链中重要一环,开源软件上游可以商业化使用,下游则可以提供给更多的用户。这就要求项目管理者做出任何方向性决策之前都要经过谨慎的思考,为社区建立信任,以确保可以不断地吸引更多的开发者和用户加入他们的项目。他们建立信任的方法是有一个良好的安全态势,确保上游项目的安全基线,这样人们就可以充分信赖上游开源社区。合理和健全的开源项目需要更严格地跟踪知识产权,无论是代码本身的版权,还是管理这些开源项目的商标,以及制定一些执行和互操作标准等。 16 | 17 | 开源不变的地方在于,无论是今天还是未来的软件建设方式,开源都将是我们在应对未来挑战中的核心组成部分,我们如何建立流程、系统、工具和培训,使我们所依赖的开源社区能够在开放协作中生产软件,使其自由提供给任何人,无论他们在哪里工作,无论他们住在哪里,其方式可以被信任,这将是今天和未来要面临的持续挑战。 18 | 19 | > 关于开源实在是有太多的问题了。 20 | > 21 | > 开源如何赚钱,开源的运作模式,开源的历史,开源项目如何估值,开源项目如何协作,各个国家开源情况,各个公司的开源,知名项目的开源情况,怎么做好开源,开源对于社会影响等等。 22 | > 23 | > **本周刊就聚焦解决这些问题,希望在开源世界贡献力量。** 24 | > 25 | > 在前期,主要是推荐每周找到的一些精彩的文章,我会尽量少做评论,避免因为自己认知的不到位,误导大家。 26 | 27 | OK,下面是第一周的开源分享,enjoy。 28 | 29 | ## 开源杂谈 30 | 31 | 1、开源的「变」与「恒」:七大开源基金会负责人圆桌会谈,[上半场](https://my.oschina.net/oscpyaqxylk/blog/5136832)和[下半场](https://my.oschina.net/oscpyaqxylk/blog/5136845)。 32 | 33 | 在7月9日举办的首届全球开源技术峰会`GOTC 2021`上海站,来自全球各顶级基金会的负责人共聚圆桌,围绕开源软件的历史与未来展开了深刻的探讨。 34 | 35 | 这场圆桌论坛分为两个部分,第一部分由各大基金会负责人分别自我介绍,并围绕主题“开源的「变」与「恒」”发表各自的观点;第二部分为自由讨论,主持人马越整理了一些网友感兴趣的问题,对相关基金会掌门人进行了现场采访。 36 | 37 | 2、[GOTC 2021 深圳站来啦!](https://www.oschina.net/news/151967/gotc-2021-shenzhen-intro) 38 | 39 | 这条史无前例的开源长廊由三部分组成,分别是开源历史、国际开源趋势与国内开源发展,展现了开源黑客文化的由来,以及开源生态中的基金会、开源项目、开源人物、技术社区、厂商开源贡献等丰富的内容,为广大开发者展开一幅全球开源生态画卷,以及开源几十年发展中诞生的璀璨群星,也让参会者近距离接触和了解到了开源的文化和历史。 40 | 41 | ![](https://pic2.zhimg.com/80/v2-0bd64fb88b9891ed0cefcf9e32137132_1440w.png) 42 | ![](https://pic3.zhimg.com/80/v2-810779e419cd2de7de094a73822e6a55_1440w.png) 43 | 44 | 3、[微软:在公司推动开源实现的5种方法](https://www.oschina.net/news/151781/microsoft-5-ways-open-source-company), 45 | 微软开源项目办公室(Open Source Programs Office,OSPO)主管 Stormy Peters 分享了一些该公司在建设 OSPO过程中的所总结出来的经验教训和实践,想建设开源的企业可以借鉴学习和共同成长。 46 | 47 | 4、开源项目的资本时代来了,自Github被微软收购,红帽公司被IBM收购之后,开源软件公司融资频次和规模快速增长。 48 | 49 | ![](https://pic3.zhimg.com/80/v2-fa3219aba4bae381ad7c7810f7b2b8a2_1440w.png) 50 | 51 | ![](https://pic1.zhimg.com/80/v2-203434dcac29934c94a56706774c423b_1440w.png) 52 | 53 | 5、[红帽如何在linux领域脱颖而出](https://zhuanlan.zhihu.com/p/394128167) 54 | 55 | 红帽凭借着首创的开源“订阅”服务模式突围。 56 | 57 | 6、[1Password 融资 1 亿美元](https://www.oschina.net/news/152657/1password-raises-100m) 58 | 59 | 密码管理软件提供商 1Password 宣布已完成 1 亿美元的 B 轮融资,以加速公司的业务增长并继续提供新的网络安全解决方案。 60 | 61 | ![](https://pic3.zhimg.com/80/v2-7b99ad5d16dd5531386f4d7f0d296479_1440w.png) 62 | 63 | 7、[开源商业化:满足各方底层需求](https://opensourceway.community/posts/business_model/open-source-commercialization-to-meet-the-underlying-needs-of-all-parties/) 64 | 65 | 健康的开源项目是满足使用者、贡献者、商业公司各方「名利双收」的商业化利益。 66 | 67 | ## 开源项目 68 | 69 | > 笔者比较熟悉Go语言技术栈,对于其他的开发语言不甚了解,因此推荐的项目大多与Go语言相关,如果你发现比较优秀的项目或者愿意分享自己的项目,欢迎issue。 70 | 71 | 1、[goim v2.0](https://github.com/Terry-Mao/goim/blob/master/README_cn.md),纯Golang实现的支持集群的im及实时推送服务。 72 | 73 | 具备以下特性: 74 | 75 | - 轻量级 76 | - 高性能 77 | - 纯Golang实现 78 | - 支持单个、多个、单房间以及广播消息推送 79 | - 支持单个Key多个订阅者(可限制订阅者最大人数) 80 | - 心跳支持(应用心跳和tcp、keepalive) 81 | - 支持安全验证(未授权用户不能订阅) 82 | - 多协议支持(websocket,tcp) 83 | - 可拓扑的架构(job、logic模块可动态无限扩展) 84 | - 基于Kafka做异步消息推送 85 | 86 | ![](https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/9188bdb728df4cc7bd100cd82effb8e5~tplv-k3u1fbpfcp-zoom-1.image) 87 | 88 | 2、[dtm](https://github.com/yedf/dtm),GO语言分布式事务管理服务。 89 | 90 | DTM是首款golang的开源分布式事务管理器,优雅的解决了幂等、空补偿、悬挂等分布式事务难题。提供了简单易用、高性能、易水平扩展的分布式事务解决方案。 91 | 92 | 目前开源的分布式事务框架,暂未看到非Java语言有成熟的框架。而Java语言的较多,有阿里的SEATA、华为的ServiceComb-Pack,京东的shardingsphere,以及himly,tcc-transaction,ByteTCC等等,其中以seata应用最为广泛。 93 | 94 | 下面是dtm和seata的主要特性对比: 95 | 96 | | 特性| DTM | SEATA |备注| 97 | |:-----:|:----:|:----:|:----:| 98 | | 支持语言 |Golang、python、php及其他|Java|dtm可轻松接入一门新语言| 99 | |异常处理| [子事务屏障自动处理](https://zhuanlan.zhihu.com/p/388444465)|手动处理 |dtm解决了幂等、悬挂、空补偿| 100 | | TCC事务| ||| 101 | | XA事务|||| 102 | |AT事务|||AT与XA类似,性能更好,但有脏回滚| 103 | | SAGA事务 |简单模式 |状态机复杂模式 |dtm的状态机模式在规划中| 104 | |事务消息|||dtm提供类似rocketmq的事务消息| 105 | |通信协议|HTTP|dubbo等协议,无HTTP|dtm后续将支持grpc类协议| 106 | |star数量|github stars|github stars|dtm从20210604发布0.1,发展快| 107 | 108 | 从上面对比的特性来看,如果您的语言栈包含了Java之外的语言,那么dtm是您的首选。如果您的语言栈是Java,您也可以选择接入dtm,使用子事务屏障技术,简化您的业务编写。 109 | 110 | 3、[erda](https://github.com/erda-project/erda),基于多云架构的一站式企业数字化平台。 111 | 112 | Erda 是一款基于多云架构的一站式企业数字化平台,为企业提供 DevOps、微服务治理、多云管理以及快数据管理等云厂商无绑定的 IT 服务。 113 | 114 | 为了有效帮助和解决中小企业数字化转型过程中成本过高的负担,平台在提供完整的 PaaS + SaaS 一整套能力的基础上,也提供了 SaaS 化的服务,企业可以把自己的计算资源或者云上容器服务进行托管使用。 115 | 116 | ![](https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/b654208b178f4f8ba935f28a05fc767c~tplv-k3u1fbpfcp-zoom-1.image) 117 | 118 | 4、[hugo](https://github.com/gohugoio/hugo),Go语言的静态网站生成器。 119 | 120 | `hugo`号称,世界上最快的构建网站的框架,是最流行的开源静态站点生成器之一。 121 | 122 | 凭借其惊人的速度和灵活性,`hugo`让搭建网站再次变得有趣。 123 | 124 | `hugo`提供了一个强大的主题系统,并且易于实施,即便是最复杂的网站也能自如应对。 125 | 126 | ![](https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/dbbf8d58c16c414ab5891739100af028~tplv-k3u1fbpfcp-zoom-1.image) 127 | 128 | 5、[TopList](https://github.com/tophubs/TopList),今日热榜。 129 | 130 | 获取各大热门网站热门头条的聚合网站,使用Go语言编写,多协程异步快速抓取信息,预览[点我](https://mo.fish)。 131 | 132 | ![](https://pic3.zhimg.com/80/v2-34c04f4f2fd76b0bcea7b8f8ec265e65_1440w.png) 133 | 134 | 135 | ## 开源书籍 136 | 137 | 1、《刷新·重新发现商业与未来》 138 | 139 | > 在回成都的火车上,网络实在太差,在得到发现了这本书,看完之后,解决了一直困扰自己的烦恼,为什么在鲍尔默离任之后,微软能够强势中兴,并焕然一新,再次引领时代。 140 | 141 | 互联网时代的霸主微软,曾经错失了一系列的创新机会。但是在智能时代,这家科技公司上演了一次出人意料的“大象跳舞”。 142 | 143 | 《刷新》全景回顾了萨提亚的变革路径,如在硬件Surface电脑上的投入,在混合现实、人工智能和量子计算三大领域的战略布局等,系统总结了他的核心管理思想,**即任何组织和个人,达到某个临界点时,都需要自我刷新**。 144 | 145 | 为了迎接智能时代的挑战,他提出自我刷新的三个关键步骤:**拥抱同理心**,**培养无所不学的求知欲**,**建立成长型思维**。 146 | 147 | ![](https://pic1.zhimg.com/80/v2-524077530d40b2478d3400029dd07353_1440w.png) 148 | 149 | 2、《开源工业互联网的财富秘密》 150 | 151 | > 这一本书可以作为第1期提及的《2021中国开源发展蓝皮书》的后续,扩展了不少细节。 152 | 153 | 开源能否赢利?有成熟的商业模式吗?可实现商业价值吗?为什么要开源?怎样开源?全球开源企业如何实现赢利?商业模式是什么样的?如何做开源公司的投资估值?背后的经济学原理是什么?工业互联网也能开源吗? 154 | 155 | 本书就以上问题,梳理了开源30多年来影响重大的事项:人物、事件、社区、项目、公司、基金会与许可证等;有鲜为人知的故事,也有细致的案例剖析:战略选择、商业模式设计、社区运营、成立基金会、项目孵化、公司运营与融资发展全生命周期等内容。 156 | 157 | 案例既涉及苹果、谷歌、亚马逊、BAT、华为及特斯拉等大公司,也涉及新兴开源公司,并尝试揭开它们成功的秘密:**技术创新与商业创新的双轮驱动模式**。 158 | 159 | ![](https://pic1.zhimg.com/80/v2-5eb0af9afe572a13fa326540984bc1e8_1440w.png) 160 | 161 | ## 订阅 162 | 163 | 这个周刊每周五发布,微信搜索 **大漠胡萝卜** 或者扫描二维码,即可订阅。 164 | 165 | ![](https://pic3.zhimg.com/80/v2-3f4a18e9ed7be804777475106db4f205_1440w.png) 166 | 167 | (完) -------------------------------------------------------------------------------- /003.md: -------------------------------------------------------------------------------- 1 | 2 | # 开源早读课周刊:第3期 3 | 4 | 这里记录每周值得分享的开源内容,周五发布。 5 | 6 | 本杂志开源(GitHub: [hapiman/weekly](https://github.com/hapiman/weekly)),欢迎提交 issue,投稿或推荐你的项目。 7 | 8 | ![image](https://pic3.zhimg.com/80/v2-16670bd496e9abb31f7ea457b36ea1a5_1440w.png) 9 | 10 | 封面图:黑客是程序员的高级形式。 11 | 12 | ## 刊首语 13 | 14 | **要致富,你需要两样东西:可测量性和可放大性。** 15 | 16 | 职位产生的业绩,应该是可测量的,否则你做得再多,也不会得到更多的报酬。 17 | 18 | 此外,还必须拥有可放大性,即产生巨大的财富效应。 19 | 20 | 任何一个通过自生努力而致富的个人,在他们身上都应该同时发现可测量性和可放大性。就如CEO、电影明星、基金经理、专业运动员等。 21 | 22 | 有一个办法可以发现是否存在可放大性,那就是看失败的可能性。因为收入和风险是对称的,所以如果存在巨大的获利可能,就必然存在巨大的失败可能。 23 | 24 | CEO、电影明星、基金经理、专业运动员的头顶都悬着一把宝剑,随时都可能掉下来。一旦他们搞砸了,他们就完了。 25 | 26 | 如果你有一个令你感到安全的工作,你是不会致富的,没有风险就等同于没有可放大性。 27 | 28 | 但是,如果你想同时具备可测量性和可放大性,不一定非得当上CEO或者电影明星不可。 29 | 30 | 你只需要成为某个攻克难题的小团体的一部分即可,作为团队中一部分,在团队获得成功的过程中也能够成就个人。 31 | 32 | 就创业项目而言,九死一生是常态。 33 | 34 | 项目最终的失败,并不代表团队能力差,这里的能力包括技术能力,执行能力,团队精神等。但至少可以证明团队是否具备战斗能力,是否能够为下一次重装上阵做好充分的准备。 35 | 36 | > 关于开源实在是有太多的问题了。 37 | > 38 | > 开源如何赚钱,开源的运作模式,开源的历史,开源项目如何估值,开源项目如何协作,各个国家开源情况,各个公司的开源,知名项目的开源情况,怎么做好开源,开源对于社会影响等等。 39 | > 40 | > **本周刊就聚焦解决这些问题,希望在开源世界贡献力量。** 41 | > 42 | > 在前期,主要是推荐每周找到的一些精彩的文章,我会尽量少做评论,避免因为自己认知的不到位,误导大家。* 43 | 44 | **OK,下面是本周的开源分享,Enjoy。** 45 | 46 | ## 开源杂谈 47 | 48 | 1、[开源:从“复兴”走向“商业化”](http://tech.sina.com.cn/csj/2020-03-26/doc-iimxxsth1826379.shtml) 49 | 50 | 从IBM鲸吞RedHat、微软收购GitHub到Elastic、MongoDB等初创公司相继上市,这一系列事件早就不再是对开源本身的认可,而是标志着开源业务作为一种商业行为,其价值和模式逐渐复兴,终于获得了资本市场的广泛承认。 51 | 52 | 2、[Google是如何打造独一无二的开源项目部的](https://opensourceway.community/posts/business_model/how_google_created_new_kind_of_ospo/) 53 | 54 | Google 开源项目部的人们不仅仅是让Google的软件变得更好——他们更加热衷于通过开源改变世界。 55 | 56 | 3、[Google Summer of Code(GSoC),谷歌编程夏令营](https://summerofcode.withgoogle.com/) 57 | 58 | Google编程之夏是一个全球性项目,旨在为学生们和开源、自由软件、技术相关的组织建立联系,让学生们贡献代码并获得报酬!组织会提供导师,在学生从熟悉社区到贡献代码的整个过程中提供指导。这个想法的目的是让学生们参与和熟悉开源社区,并帮助他们充分利用暑假时间去得到锻炼。 59 | 60 | `GSoC`的亮点, 61 | 62 | > 降价之前的报酬折算至每月是 11K 有余,几乎快赶上一线互联网公司的正式应届员工价格了。降价之后大概是一月 8K 多,仍然是碾压各家一线的实习生价格。还不用扣税哟! 63 | 64 | > 在 GSoC 项目期间,每个学生都会被分配一名导师,在整个项目期间给予你帮助。就我的亲身经历和身边人的体会,虽然会有些比较懒的放养导师,不过基本上还都是非常认真负责而且热心的。导师本身的技术水平也都十分出色。而如果你参与的是 GCC、OpenCV 这类久负盛名的工具、语言、框架的组织下的项目,很可能你的导师就会是这些组织的 Core Team Developer,他们可都是在行业内备受尊敬的大牛。 65 | 66 | 参与经验分享, 67 | 68 | - [Google 编程之夏(GSoC):海量优质项目,丰厚报酬,你竟然还不知道?](https://zhuanlan.zhihu.com/p/27330699) 69 | - [参加 Google Summer of Code 的体验](https://segmentfault.com/a/1190000012888551) 70 | - [gsoc-cn社区](https://github.com/gsoc-cn/gsoc-cn) 71 | 72 | 两篇申请书, 73 | - [Optimization of Distance Between Methods in Single Java Class](https://docs.google.com/document/d/1lWXpWhUN6cE06sjQANjWxamc_X3ddbSphTRSofChLyk/edit) 74 | - [Regression Testing Tool and HTML Report Generator for Pull Request](https://docs.google.com/document/d/1xu6SE4qeKTRQ45R9FSLOQB-t5ExzBGyvU9FLGifvxY0/edit) 75 | 76 | 4、[Google 教你如何“做”开源](https://www.infoq.cn/article/2017/04/a-new-home-for-google-open-sourc) 77 | 78 | - [Google 开源项目目录](https://opensource.google/projects/explore/featured) 79 | - [Google 开源项目精选](https://github.com/hapiman/weekly/blob/main/projects/Google.md) 80 | - [Google 是如何做开源的](https://opensource.google/docs/) 81 | - [Google 发布一款新的开源项目遵循那些流程](https://opensource.google.com/docs/releasing) 82 | - [如何为其它开源项目提交补丁](https://opensource.google.com/docs/patching/) 83 | - [Google 是如何管理引入第三方的开源项目以及如何使用](https://opensource.google.com/docs/thirdparty/) 84 | - [Google 为何仅仅使用某些特定的许可协议的项目](https://opensource.google.com/docs/using/license/) 85 | - [为什么 Google 需要将所有接受到的补丁都是遵循许可协议](https://opensource.google.com/docs/cla/policy/) 86 | 87 | 5、[中国开源原生商业社区正式宣告成立](https://www.oschina.net/news/153170),分享当下中国的开源建设前沿进展,探讨社区创办之初的发展等问题。 88 | 89 | GOTC 全球开源技术峰会深圳站[开源原生商业分论坛](https://play.itdks.com/watch/10486308?player=&lang=en-us)视频。 90 | ![](https://user-images.githubusercontent.com/7567048/128481491-d628f573-0e02-4494-b054-e826f22f1949.png) 91 | 92 | 6、[如何看待陆奇担任 Y Combinator 中国创始人?YC 进中国将产生哪些影响?](https://www.zhihu.com/question/290337744/answer/469523924) 93 | 94 | 陆奇,互联网行业知名人物。 95 | 96 | 在微软工作的时候,曾经是现任微软CEO萨提亚的领导,号称是华人在硅谷任职的最高岗位。 97 | 98 | 当初在加盟百度之后,负责百度业务线重组,鉴于李彦宏的信任和放权,是一人之下,万人之上的存在。 99 | 100 | 可惜的是,和历史上大多数改革一样,在转型进入深水期之后,在改革派和既有势力不可调和的情况下,成为了公司斗争的牺牲品,黯然出走。 101 | 102 | 在休息了一段时间之后,2018年陆奇加入Y Combinator,作为中国创始人在接受36氪采访的文章,可以看到其对于使用科技改变世界的赤子之心。 103 | 104 | ## 开源资讯 105 | 106 | 1、[Apache Pinot 成为 ASF 顶级项目](https://www.oschina.net/news/153644/apache-pinot-become-tlp) 107 | 108 | Apache Pinot 是一个分布式大数据分析基础设施,旨在以高吞吐量和低延迟提供可扩展的实时分析。 109 | ![](https://pic1.zhimg.com/80/v2-f02acee896137c7b333846d3f5e30587_1440w.png) 110 | 111 | 2、[KodeRover 获数千万元天使+轮融资,核心产品 Zadig 已完成 100% 开源](https://www.oschina.net/news/153661/koderover-angel-investment) 112 | 113 | 云原生软件交付服务商「KodeRover」已于 7 月中旬完成其核心产品 Zadig 100% 开源,同时宣布完成数千万元人民币天使+轮融资。 114 | 115 | ![](https://pic1.zhimg.com/80/v2-a3123e5189533304ae42257c085c30f9_1440w.png) 116 | 117 | 3、[JetBrains成立中国公司捷并思 助力中国开发者加速创新](http://www.techweb.com.cn/it/2021-07-29/2851222.shtml) 118 | 119 | 4、[CNCF 宣布 Linkerd 毕业](https://www.oschina.net/news/153068) 120 | 121 | Linkerd是第一个加入CNCF沙箱的项目,沙箱当时被称为inception,现在是第一个获得毕业地位的服务网格项目。 122 | 123 | Linkerd是一个服务网格,它为云原生应用程序提供关键的可观察性、安全性和可靠性特性,而不需要更改代码。 124 | 125 | 5、[开源软件开发商 Odoo 获得 2.15 亿美元投资](https://www.oschina.net/news/153171/odoo-raises-215m-investment) 126 | 127 | 开源商业管理软件工具提供商 Odoo 在由 Summit Partners 领导的一轮融资中获得了 2.15 亿美元的投资。这是一项二级投资,意味着 Summit Partners 正在从现有投资者手中购买股份。 128 | 129 | Odoo 提供了其服务的开源版本,该版本包含其所有功能的 80%,它同样也提供了一个付费的专有版本的产品,其中包含剩余的 20% 功能。 130 | 131 | ![](https://pic2.zhimg.com/80/v2-684df0f9f1fdecf330a2dd139d875f28_1440w.png) 132 | 133 | 6、[CNCF 宣布 Grafana 实验室升级为白金会员](https://www.oschina.net/news/153174) 134 | 135 | ![](https://pic2.zhimg.com/80/v2-412e6f3f7134c79cf85aec7563275262_1440w.png) 136 | 137 | ## 开源项目 138 | 139 | > 笔者比较熟悉Go语言技术栈,对于其他的开发语言不甚了解,因此推荐的项目大多与Go语言相关,如果你发现比较优秀的项目或者愿意分享自己的项目,欢迎issue。 140 | 141 | 1、[croc](https://github.com/schollz/croc),文件传输器🐊📦。 142 | 143 | `croc`实现了在两台机器之间方便,安全的传输文件。 144 | 145 | 它具备下面特点, 146 | 147 | - 允许任意两台计算机传输数据(使用中继) 148 | - 提供端到端加密(使用 PAKE) 149 | - 实现轻松的跨平台传输(Windows、Linux、Mac) 150 | - 允许多个文件传输 151 | - 允许恢复被中断的传输 152 | - 不需要本地服务器或端口转发 153 | - 优先使用ipv6 154 | - 可以使用代理,比如tor 155 | 156 | ![](https://user-images.githubusercontent.com/7567048/128481663-41679bd1-f38b-4dde-9206-3d1d678ce819.gif) 157 | 158 | 2、[kubesphere](https://github.com/kubesphere/kubesphere),容器平台。 159 | 160 | KubeSphere是在Kubernetes之上构建的面向云原生应用的**容器混合云**,支持多云与多集群管理,提供全栈的 IT 自动化运维的能力,简化企业的DevOps工作流。 161 | 162 | KubeSphere提供了运维友好的向导式操作界面,帮助企业快速构建一个强大和功能丰富的容器云平台。 163 | 164 | KubeSphere愿景是打造一个基于Kubernetes的云原生分布式操作系统,它的架构可以很方便地与云原生生态进行即插即用的集成。 165 | 166 | ![](https://pic3.zhimg.com/80/v2-0a56c0560ffcee50527b7151a72a4b18_1440w.png) 167 | 168 | ![](https://pic1.zhimg.com/80/v2-3af389761ac9c29d11019ce272eb74b8_1440w.png) 169 | 170 | 3、[kratos](https://github.com/go-kratos/kratos),轻量级Go微服务框架。 171 | 172 | kratos致力于提供完整的微服务研发体验,整合相关框架及工具后,微服务治理相关部分可对整体业务开发周期无感,从而更加聚焦于业务交付。对每位开发者而言,整套 kratos框架也是不错的学习仓库,可以了解和参考到微服务方面的技术积累和经验。 173 | 174 | kratos设计原则如下, 175 | 176 | - 简单:不过度设计,代码平实简单; 177 | - 通用:通用业务开发所需要的基础库的功能; 178 | - 高效:提高业务迭代的效率; 179 | - 稳定:基础库可测试性高,覆盖率高,有线上实践安全可靠; 180 | - 健壮:通过良好的基础库设计,减少错用; 181 | - 高性能:性能高,但不特定为了性能做 hack 优化,引入 unsafe ; 182 | - 扩展性:良好的接口设计,来扩展实现,或者通过新增基础库目录来扩展功能; 183 | - 容错性:为失败设计,大量引入对 SRE 的理解,鲁棒性高; 184 | - 工具链:包含大量工具链,比如 cache 代码生成,lint 工具等等; 185 | 186 | ![](https://pic1.zhimg.com/80/v2-518bd28c2e245351a080f5f3de1fa548_1440w.png) 187 | 188 | 4、[awesome-go](https://github.com/avelino/awesome-go),Go官方维护的Go语言的awesome系列。 189 | 190 | awesome-go汇集了各个领域使用Go语言开发常用的库,非常丰富。 191 | 192 | ![](https://user-images.githubusercontent.com/7567048/128482644-c45a692f-247b-4d7e-a71d-4783dac787b0.png) 193 | 194 | 5、[clash](https://github.com/Dreamacro/clash),基于规则的跨平台代理软件。 195 | 196 | - 具有身份验证支持的本地 HTTP/HTTPS/SOCKS 服务器 197 | - VMess、Shadowsocks、Trojan、Snell 协议支持远程连接 198 | - 内置 DNS 服务器,旨在最小化 DNS 污染攻击的影响,支持 DoH/DoT 上行和假 IP。 199 | - 基于域、GEOIP、IP CIDR 或端口的规则将数据包转发到不同的节点 200 | - 远程组允许用户实施强大的规则。 支持基于延迟的自动回退、负载平衡或自动选择节点 201 | - 远程提供者,允许用户远程获取节点列表,而不是在配置中硬编码 202 | - Netfilter TCP 重定向,使用 iptables 在您的 Internet 网关上部署 Clash。 203 | - 全面的 HTTP RESTful API 控制器 204 | 205 | ![](https://user-images.githubusercontent.com/7567048/128482384-41c77764-bfc5-4b9f-905f-f2b6bebd0f5a.png) 206 | 207 | ## 开源书籍 208 | 209 | 1、[《黑客与画家:来自计算机时代的高见》](https://item.jd.com/11323434.html)。 210 | 211 | *这是本周读完的唯一的一本书。* 212 | 213 | 本书是保罗·格雷厄姆的文集,共包含15篇文章,每一篇文章都充满智慧和前瞻性,绝不是粗略地读一遍就能够完全吸收的,在不同时间或者经历下读起来感受肯定是不一样的。 214 | 215 | 全书出版时间是在2004年,大多数的观点在现在这个时间点依然适用,尽管某些观点此时可能并不正确,但是作者的思考方式依然值得我们借鉴。 216 | 217 | 举三个例子, 218 | 219 | 财富来源方式有多种,如抢劫、偷盗、赠予等,但是最好的方式是去创造财富,不是去参与零和博弈,而是思考如何做大蛋糕,如何共赢; 220 | 221 | 每个社会都存在“不可说的话”,什么是不可说的话,说了会怎样,到底值不值得说,应该如何说,给谁说等等; 222 | 223 | 如果经营一个软件开发的初创公司,到底是选择那些多数人使用的编程语言(不是那么高级)还是使用少数人编程语言(语言高级),就如如今微服务开发是选择Java还是选择Go呢,之所以会有这个问题,是因为语言的替换是一个漫长的过程,源于既有的惯性。 224 | 225 | 保罗·格雷厄姆是谁呢? 226 | 227 | 美国互联网界如日中天的教父! 228 | 229 | 著名程序员、风险投资家、畅销技术书作家,哈佛大学博士,Y Combinator创始人之一。 230 | 231 | 2005年,他创办了Y Combinator,该公司已成为美国著名的创业孵化器。截至2012年7月,共孵化380家创业公司,这些公司累计获得投资额超过10亿美元,估值已超100亿美元。2012年,《福布斯》将YC评为最有价值的孵化器。当年轻人紧握一个激动人心的想法,想要寻求帮助时,或是有所小成,得到了一点钱,却不知该朝哪个方向继续努力时,就会想到去找保罗·格雷厄姆。 232 | 233 | ## 订阅 234 | 235 | - [开源早读课周刊:第1期](https://github.com/hapiman/weekly/blob/main/001.md) 236 | - [开源早读课周刊:第2期](https://github.com/hapiman/weekly/blob/main/002.md) 237 | 238 | 这个周刊每周五发布,微信搜索 **大漠胡萝卜** 或者扫描二维码,即可订阅。 239 | 240 | ![image](https://pic1.zhimg.com/80/v2-3f4a18e9ed7be804777475106db4f205_1440w.png) 241 | 242 | (完) -------------------------------------------------------------------------------- /004.md: -------------------------------------------------------------------------------- 1 | 2 | # 开源早读课周刊(第4期):微软的开源方兴未艾 3 | 4 | 这里记录每周值得分享的开源内容,周五发布。 5 | 6 | 本杂志开源(GitHub: [hapiman/weekly](https://github.com/hapiman/weekly)),欢迎提交 issue,投稿或推荐你的项目。 7 | 8 | ![image](https://pic1.zhimg.com/80/v2-fcd3a4253b3df269550da2c483a88277_1440w.png) 9 | 10 | 封面图:微软的两位创始人,保罗·艾伦和比尔·盖茨。 11 | 12 | ## 刊首语 13 | 14 | 关于公司的控制权问题。 15 | 16 | 前段时间滴滴在美国上市的事情闹的沸沸扬扬,对于是否已将审计底稿给予了美国政府,我们依然不得而知。不过,在这儿不是重点,最终低调上市,我相信这是公司重要股东权衡投票之后的结果,只是没有考虑到中国政府在这件事情上会如此较真。滴滴作为一家典型的被资本催熟的公司,经过一系列的融资、并购之后,在股权方面尤为分散。就投票权而言,程维、柳青等管理团队只不过10%多点,自然是没有办法左右公司。 17 | 18 | 创始人无法控制公司的情况在比比皆是,尤其是在计算机行业飞速发展的这几十年。为了能够尽快的做大做强,提高生存的概率,不被竞争对手淘汰,减少风险,创业公司大多都会引入风险资本,以出让股权的方式。在引入资本之后,确实能够解决燃眉之急,挽救公司与存亡之际,抑或是锦上添花,步入飞速发展的快速通道,顺风顺水。 19 | 20 | 但是,如果没有控制好股权分散的力度或者投票权与股权没有分开,就会非常容易出现创始人身不由己的情况。比如曾经的苹果创始人乔布斯,因产品的设计方案不被股东认可,惨淡地被赶出公司。如果不是后来王者归来,谁会知道这个世界曾有一个乔布斯呢,就像十年前大名鼎鼎的太阳公司没落之后,基本上已经没有人能够记得太阳公司的”丰功伟绩“了。 21 | 22 | 资本是逐利的,有时候会变得非常短视,过于考虑短期的利益而忽视长远的发展。百年企业AT&T就是在资本的短视中不断地被自我拆解,在分拆业务上市之后,在迎来短暂的荣光之后,由于业务之间无法协同,唯有随着互联网的泡沫破灭而陨落,叫人叹息。 23 | 24 | 国内的阿里巴巴,京东,拼多多,美团等公司在股权上处理就比较“聪明”了,将投票权和股权完全的拆离,投资人享受公司发展的红利,创始人牢牢的控制住公司的发展方向,更容易长远地考虑问题,制定长期战略。要做到这一点,必须公司拥有非常大的竞争优势,是资本眼中的香饽饽才行,否则就会被资本抛弃,一蹶不振。比如ofo共享单车的创始团队不想放弃公司的控制权,在多次博弈无果之后,因资金链断裂而破产。现在看来当初ofo其实并没有太多的竞争优势,并且替代性较高,其实并没有太多的谈判筹码。 25 | 26 | > 关于开源实在是有太多的问题了。 27 | > 28 | > 开源如何赚钱,开源的运作模式,开源的历史,开源项目如何估值,开源项目如何协作,各个国家开源情况,各个公司的开源,知名项目的开源情况,怎么做好开源,开源对于社会影响等等。 29 | > 30 | > **本周刊就聚焦解决这些问题,希望在开源世界贡献力量。** 31 | > 32 | > 在前期,主要是推荐每周找到的一些精彩的文章,我会尽量少做评论,避免因为自己认知的不到位,误导大家。* 33 | 34 | **OK,下面是本周的开源分享,Enjoy。** 35 | 36 | ## 开源杂谈 37 | 38 | 1、[被曲解的微软2号人物](https://mp.weixin.qq.com/s/XnnCArydUFBw5fN6p9mmIg?utm_source=wechat_session&utm_medium=social&utm_oi=26935006593024),讲述了两个天才少年创建微软并抓住机会建立商业帝国的过程。 39 | 40 | ![](https://pic1.zhimg.com/80/v2-1424ce98c795c4346193f670159d96a2_1440w.png) 41 | 42 | 2、[《2020 中国开源先锋 33 人》榜单](https://segmentfault.com/a/1190000038597979),中国开源需要默默无闻的贡献者,也需要一呼百应的“带货网红”,该榜单包括了贡献代码的开发者、开源项目发起人、开源布道师、开源治理专家与推动者、关注开源的投资人、开源社区运营者等等,都是开源生态发展道路上不可或缺的角色。 43 | 44 | ![](https://pic1.zhimg.com/80/v2-a1bb2fe0e445aa4554073c87c9d66781_1440w.png) 45 | 46 | 今年的可以看看[2021中国开源优秀人物](https://new.qq.com/omn/20210617/20210617A05XD700.html)。 47 | 48 | 3、[开源长廊](https://gitee.com/h4cd/gotc-open-source-gallery),在之前的文章中提到过,开源长廊通过展示开源生态中基金会、开源项目、开源人物、技术社区、厂商开源贡献,为广大开发者展开一幅全球开源生态画卷,以及开源几十年发展中诞生的璀璨群星。 49 | 我认为这是一种非常有效地方式来传播开源的理念。 50 | 51 | ![](https://pic3.zhimg.com/80/v2-53754594512755463d5679cba4da9030_1440w.png) 52 | 53 | 4、[如何应对美国对开源项目的出口管制?](https://cloud.tencent.com/developer/article/1856074)。 54 | 55 | 介绍了开源社区该如何了解并遵循与美国出口管制要求及开源加密相关的一般性原则。白皮书是以中、英文两种语言一同发布的,中英文并列的方式展现。 56 | 57 | ![](https://pic3.zhimg.com/80/v2-8b798bf4305d370b77d4aaf2172db930_1440w.png) 58 | 59 | 5、[开源世界的美好年代](https://cloud.tencent.com/developer/article/1856075),Linux基金会执行董事Jim Zemlin在linux诞生30周年之际对于linux上的优秀项目及对各行业的贡献的举例介绍,并且针对Linux基金会的定位和未来发展做了清晰说明。 60 | 61 | 6、[Linux 内核与 Git 创造者 Linus Torvalds 接受了 Linux 基金会执行董事 Jim Zemlin 的独家专访](https://cloud.tencent.com/developer/article/1856076) 62 | 63 | ![](https://pic2.zhimg.com/80/v2-e3584e8aac8c98b14bf4936bca1fe43e_1440w.png) 64 | 65 | **关于如何参与 Linux 或开源,你能给他们什么鼓励的话?** 66 | 67 | Linus Torvalds 是这样认为的,“我认为最重要的是,不要试图一次做所有的事情 —— 从小事做起,从你个人感兴趣的事情开始。我认为任何人都可以提供一些有价值的东西,哪怕你并不确定。我的意思是,就像当年我自己刚开始做这件事时一样。它真的不一定是你认为你能改变世界的东西,让它成为你充满热情的东西。你要真的认为你可以带来一些东西,即使它看起来很小,或许在大局中也不太重要,但这就是你应该如何开始的部分,这就是你进入任何项目的方式 —— 无论是内核还是其他开源项目。找到你关心的,你想真正提高自己的愿望,这应该成为你学习 CPU 如何工作的动力。但你也要想办法让别人意识到你的技能组合。这就是你如何成长的方式。” 68 | 69 | 7、[腾讯开源之道:基于 Apache 之道的开源实践与探索](https://cloud.tencent.com/developer/article/1858140) 70 | 71 | 三大项目助力腾讯开源生态的建设, 72 | 73 | - 建立“腾源会”社区 74 | - 建立产业开源联合实验室 75 | - 代码之夏 76 | 77 | 78 | ![](https://pic1.zhimg.com/80/v2-a329966716d021f69c40ed52bbe97374_1440w.png) 79 | 80 | ![](https://pica.zhimg.com/80/v2-82ebf85d512d9cf925a509179e97ff66_1440w.png) 81 | 82 | **8、关于微软的开源** 83 | 84 | (1)[Github地址:github.com/microsoft](https://github.com/microsoft?q=&type=&language=&sort=stargazers) 85 | 86 | (2)[官方网站:opensource.microsoft.com](https://opensource.microsoft.com/),Open、Collaborative、Flexible。 87 | 88 | (3)[开源生态:Ecosystem](https://opensource.microsoft.com/ecosystem/) 89 | 90 | (4)[特色项目:Featured Projects](https://opensource.microsoft.com/projects/) 91 | 92 | (5)[全部项目:All projects](https://opensource.microsoft.com/projects/explore/) 93 | 94 | ![](https://pic3.zhimg.com/80/v2-802af2a4ce4c3faaac220adbea88f7a4_1440w.png) 95 | 96 | 特别的,三个针对初学者的开源项目,非常棒! 97 | 98 | (1)[Web开发:Web-Dev-For-Beginners](https://github.com/microsoft/Web-Dev-For-Beginners) 99 | 100 | (2)[机器学习:ML-For-Beginners](https://github.com/microsoft/ML-For-Beginners) 101 | 102 | (3)[物联网:IoT-For-Beginners](https://github.com/microsoft/IoT-For-Beginners) 103 | 104 | ## 开源资讯 105 | 106 | 1、[小米推出开源机器人伴侣](https://www.oschina.net/news/154777/xiaomi-open-source-community),在今年的雷军年度演讲、小米秋季新品发布会上,雷军向大众展示了小米内部的一个探索概念项目,一款开发人员可以构建的开源机器人伴侣。 107 | 108 | ![](https://pic3.zhimg.com/80/v2-7303a4e79e5f03263cfd98cac5b4246e_1440w.png) 109 | 110 | 2、[GitHub 工程团队的开发环境迁移至 Codespaces](https://www.oschina.net/news/154976/githubs-engineering-team-moved-codespaces) 111 | ![](https://pic3.zhimg.com/80/v2-ca180447ea21fc0fd377c8cd01527730_1440w.png) 112 | 113 | 3、[Google 计划将完整版 Chrome 浏览器引入 Fuchsia OS](https://www.oschina.net/news/154574/chrome-browser-fuchsia-os) 114 | 115 | Fuchsia 采用非 Linux 架构来设计的,基于自行开发的微内核 Zircon。 不仅有可能取代桌面OS Chrome OS,还可能取代为移动设备设计的 Android,成为一个跨所有设备的统一系统,还处于试验阶段。 116 | 117 | ![](https://pic1.zhimg.com/80/v2-55a92eb53316a2f646755b4719615681_1440w.png) 118 | 119 | ## 开源项目 120 | 121 | > 笔者比较熟悉Go语言技术栈,对于其他的开发语言不甚了解,因此推荐的项目大多与Go语言相关,如果你发现比较优秀的项目或者愿意分享自己的项目,欢迎issue。 122 | 123 | 1、[frp](https://github.com/fatedier/frp),快速反向代理。 124 | 125 | frp是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网IP节点的中转暴露到公网。 126 | 127 | 通过在具有公网 IP 的节点上部署 frp 服务端,可以轻松地将内网服务穿透到公网,同时提供诸多专业的功能特性,这包括: 128 | 129 | - 客户端服务端通信支持 TCP、KCP 以及 Websocket 等多种协议。 130 | - 采用 TCP 连接流式复用,在单个连接间承载更多请求,节省连接建立时间。 131 | - 代理组间的负载均衡。 132 | - 端口复用,多个服务通过同一个服务端端口暴露。 133 | - 多个原生支持的客户端插件(静态文件查看,HTTP、SOCK5 代理等),便于独立使用 frp 客户端完成某些工作。 134 | - 高度扩展性的服务端插件系统,方便结合自身需求进行功能扩展。 135 | - 服务端和客户端 UI 页面。 136 | 137 | ![](https://pic2.zhimg.com/80/v2-383b8028d4e35429542f66cfde35efa8_1440w.png) 138 | 139 | 2、[tidb](https://github.com/pingcap/tidb),兼容 MySQL 协议的开源分布式 HTAP 数据库。 140 | 141 | TiDB(“Ti”代表 Titanium)是一个开源的 NewSQL 数据库,支持混合事务和分析处理 (HTAP) 工作负载。 142 | 143 | 它具备以下特点: 144 | 145 | - 水平可扩展性 146 | - MySQL 兼容语法 147 | - 具有强一致性的分布式事务 148 | - 云原生 149 | - 最小化 ETL 150 | - 高可用性 151 | 152 | ![](https://pic3.zhimg.com/80/v2-e00d0a72c4a4d9e9c134aa41ec4eadc0_1440w.png) 153 | 154 | 3、[prometheus](https://github.com/prometheus/prometheus),监控系统和时间序列数据库。 155 | 156 | Prometheus 是 CNCF 的一个服务监控系统项目,可以在给定的时间间隔从配置的目标收集指标,评估规则表达式,显示结果,并支持在观察到指定条件时触发警报。 157 | 158 | Prometheus 与其他指标和监控系统的区别在于: 159 | 160 | - 一个多维数据模型(由指标名称和一组键/值维度定义的时间序列) 161 | - PromQL,一种强大且灵活的查询语言,可利用此维度 162 | - 不依赖分布式存储; 单个服务器节点是自治的 163 | - 用于时间序列收集的 HTTP 拉取模型 164 | - 通过批处理作业的中间网关支持推送时间序列 165 | - 通过服务发现或静态配置发现目标 166 | - 多种图形和仪表板支持模式 167 | - 支持分层和水平联合 168 | 169 | ![](https://pic2.zhimg.com/80/v2-30bc8360165f3bb2f8c4d8346d2a2415_1440w.png) 170 | 171 | 4、[k6](https://github.com/grafana/k6),使用 Go 和 JavaScript 的现代负载测试工具。 172 | 173 | 提供了一个纯净、用户友好的脚本 API、在本地和云上皆可执行,支持灵活地配置。 174 | 175 | ![](https://pic2.zhimg.com/80/v2-cf494fc6a2399bc463e8aefe349a9fab_1440w.gif) 176 | 177 | 5、[etcd](https://github.com/etcd-io/etcd),在分布式系统中,核心数据的分布式可靠存储。 178 | 179 | 具备一下特点: 180 | 181 | - 简单:定义明确、面向用户的 API (gRPC) 182 | - 安全:具有可选客户端证书身份验证的自动 TLS 183 | - 快速:基准测试为 10,000 次写入/秒 184 | - 可靠:使用 Raft 正确分布 185 | 186 | etcd 已经被非常多的公司用于生产中,经常与 Kubernetes、locksmith、vulcand、Doorman 等应用程序合作,严格广泛的生产测试确保了功能的可靠性。 187 | 188 | ![](https://pic1.zhimg.com/80/v2-06326d60ef644cbe39c826fc12891c16_1440w.png) 189 | 190 | ## 开源书籍 191 | 192 | 1、[《浪潮之巅》](https://u.jd.com/aLXHtlM)。 193 | 194 | *这是本周读完的唯一的一本书。* 195 | 196 | ![](https://pic1.zhimg.com/80/v2-e2b4b01edfba3c8e99bd03b0d1832f5b_1440w.png) 197 | 198 | 如果你想知道现在硅谷大企业是如何抓住时代给予的契机,不同企业之间的爱恨情仇的故事,或者那些已然逝去的公司到底做错了什么,那么《浪潮之巅》绝对可以解决你的疑惑。 199 | 200 | 在书中,我们可以了解到, 201 | 202 | AT&T如何在拿着一手好牌,但在资本的短视的情况下,自我拆解之后,逐渐凋零; 203 | 204 | IBM如何在风雨飘摇,几经沉浮,小日子过的依然滋润,只是市值已经不及苹果、微软的零头,百年企业似乎在等待下一次时代的浪潮; 205 | 206 | 乔布斯与比尔盖茨之间互相“帮助”,两家公司携手共进至今成为了科技行业市值最大的两家公司; 207 | 208 | 摩托罗拉作为家族企业依然还是没能够逃出富不过三代的魔咒,被迫委身于“不作恶”的谷歌小子; 209 | 210 | 雅虎破天荒的采用了免费服务的方式,将发展的重点集中在获取流量之上,凭借品牌广告盈利,国内更是一众的模仿者,但欣欣向荣的背后,潜在的危机四伏; 211 | 212 | 以及各家企业都拾起专利武器来回诉讼,搞得不亦乐乎。 213 | 214 | 不懂历史的人是不懂现在的,也是看不到未来的。《浪潮之巅》的价值不止在于陈述的事实,更在于总结出来的规律,告诉我们在哪儿,追逐的又是什么。 215 | 216 | ## 订阅 217 | 218 | - [开源早读课周刊:第1期](https://github.com/hapiman/weekly/blob/main/001.md) 219 | - [开源早读课周刊:第2期](https://github.com/hapiman/weekly/blob/main/002.md) 220 | - [开源早读课周刊:第3期](https://github.com/hapiman/weekly/blob/main/003.md) 221 | 222 | 这个周刊每周五发布,微信搜索 **大漠胡萝卜** 或者扫描二维码,即可订阅。 223 | 224 | ![image](https://pic1.zhimg.com/80/v2-3f4a18e9ed7be804777475106db4f205_1440w.png) 225 | 226 | (完) -------------------------------------------------------------------------------- /005.md: -------------------------------------------------------------------------------- 1 | 2 | # 开源早读课周刊(第5期):Facebook的开源欣欣向荣 3 | 4 | 这里记录每周值得分享的开源内容,周五发布。 5 | 6 | 本杂志开源(GitHub: [hapiman/weekly](https://github.com/hapiman/weekly)),欢迎提交 issue,投稿或推荐你的项目。 7 | 8 | ![](https://pic3.zhimg.com/80/v2-88e4cb6f5ea4e5b907485f13ee7bfaa9_1440w.png) 9 | 10 | 封面图:程序员属于新生代农民工,实锤。 11 | 12 | ## 刊首语 13 | 14 | 红杉资本,风投界的执牛耳者。如果创一家业公司找红杉资本商讨投资,需要准备哪些资料呢,我们看看。 15 | 16 | - 公司目的(一句话讲清楚); 17 | - 要解决的问题和解决的方法,尤其要说清楚该方法对于用户有什么好处; 18 | - 要分析为什么现在创业,即证明市场已经成熟; 19 | - 市场规模,再强调一遍,没有10亿美元市场的公司不要找红杉; 20 | - 对手分析,必须知己知彼; 21 | - 产品及开发计划; 22 | - 商业模式,至关重要; 23 | - 创始人及团队介绍,如果创始人背景不够强,可以拉上一些名人来做董事; 24 | - 最后,也就是最重要的--想要多少钱,为什么,怎么花。 25 | 26 | > 关于开源实在是有太多的问题了。 27 | > 28 | > 开源如何赚钱,开源的运作模式,开源的历史,开源项目如何估值,开源项目如何协作,各个国家开源情况,各个公司的开源,知名项目的开源情况,怎么做好开源,开源对于社会影响等等。 29 | > 30 | > **本周刊就聚焦解决这些问题,希望在开源世界贡献力量。** 31 | > 32 | > 在前期,主要是推荐每周找到的一些精彩的文章,我会尽量少做评论,避免因为自己认知的不到位,误导大家。* 33 | 34 | **OK,下面是本周的开源分享,Enjoy。** 35 | 36 | ## 开源杂谈 37 | 38 | **1、关于Facebook的开源** 39 | 40 | Facebook 积极拥抱开源,坚信开源不仅仅是为开发者提供优秀的技术,还能够让人们发挥出最好的一面。Facebook 相信三个原则: 41 | 42 | - 合作 43 | 44 | 允许来自世界各地的开发人员积极合作以实现共同目标。 45 | 46 | - 社区 47 | 48 | 开源为创建多元化社区以支持每个人的进步提供了机会。 49 | 50 | - 技术 51 | 52 | 开源产生了历史性的技术,包括操作系统、框架和编程语言。 53 | 54 | (1)[Github地址:github.com/facebook](https://github.com/facebook) 55 | 56 | (2)[官方网站:opensource.fb.com](https://opensource.fb.com/),Collaboration、Community、Technology。 57 | 58 | (3)[开源项目:opensource.fb.com/projects](https://opensource.fb.com/projects/) 59 | 60 | ![](https://pic1.zhimg.com/80/v2-109e063c3fcaf9da7aa9619ab5aba186_1440w.png) 61 | 62 | **特色项目,** 63 | 64 | - [React](https://opensource.fb.com/projects/react),用于构建用户界面的 JavaScript 库。 65 | 66 | ![](https://opensource.fb.com/img/projects/react.jpg) 67 | 68 | - [Docusaurus](https://opensource.fb.com/projects/docusaurus),易于维护的开源文档网站 69 | 70 | ![](https://pic2.zhimg.com/80/v2-1ca7c28054fd534ece7c53a60f04b3b4_1440w.png) 71 | 72 | - [PyTorch](https://opensource.fb.com/projects/pytorch),具有强大 GPU 加速能力的张量和动态神经网络。 73 | 74 | PyTorch 是一个开源机器学习框架,能够加速原型研究到生产部署的路径,使用Python来实现。 75 | 76 | PyTorch 具有以下特点: 77 | 78 | (1)可用于生产:可使用 TorchScript 在 Eager 和图形模式之间无缝转换,并使用 TorchServe 加速生产路径。 79 | 80 | (2)分布式训练:支持在研究和生产中的可扩展分布式训练和性能优化。 81 | 82 | (3)强大的生态系统:丰富的工具和库生态系统扩展了 PyTorch,支持使用 Node 在服务器上进行计算机视觉、NLP 等方面的开发,支持使用 React Native 开发移动应用。 83 | 84 | (4) 云支持:PyTorch 在主要云平台上得到很好的支持,提供无摩擦的开发和轻松的扩展。 85 | 86 | ![](https://image-static.segmentfault.com/208/857/2088573088-611fdeac676cd_fix732) 87 | 88 | 89 | 2、[在开源世界里,应该持有什么样的法律思维](https://opensourceway.community/posts/os-license-and-copyleft/how-to-think-open-source-copyright-risk/) 90 | 91 | 作者认为,如果对某些事情不能够做到充分的理解,就尽量不要去触犯他们的禁忌,这不是说是否受到惩罚的问题,而是一个文明达到一定高度的标志,如果你没有这么做,代表着落后、愚昧和无知,失去的就是信任、尊严和社会资本。 92 | 93 | 3、[不设防的交换 ———— 如何为自由/开源软件付“费”](https://opensourceway.community/posts/open-source-economic/how-to-pay-for-free-software/),这是一份可以让你为自由/开源软件付费的指南。 94 | 95 | 不设防的买卖其实在中国的古代是蛮常见的事情,即使是现代的熟人社会中也会出现类似所谓的‘看着给’这样的场景,将定价权交给购买方。这样的社会对于大规模的工业化交易是不靠谱的,凡事必有价,一手交钱一手交货乃天经地义。自由/开源软件所采用的这种不设防的生意,而这也是其最大的魅力所在。想为自由/开源软件付费吗?本文会事无巨细的帮助你。 96 | 97 | 4、[腾讯云数据库开源再突破:TDSQL PG版查询性能提升百倍](https://cloud.tencent.com/developer/article/1864503) 98 | 99 | TDSQL PG版的整体架构是非常典型的无共享的MPP的数据库架构,最左边是GTM(事务管理器),负责协调集群事务并管理全局对象,右边是协调节点CN,它是整个数据库访问的接入节点,也是业务访问的入口。 100 | 101 | ![](https://pic1.zhimg.com/80/v2-82ae3d8b33a38e20ba988f1bbde38d72_1440w.png) 102 | 103 | 5、[IE 浏览器的淘汰进入最后阶段](https://www.oschina.net/news/156200/internet-explorer-move-into-final-phase) 104 | 105 | ![](https://image-static.segmentfault.com/244/638/2446380523-611fdf7510202_fix732) 106 | 107 | 6、[Apollo GraphQL 融资 1.3 亿美元:创建开创性开源 graph 技术](https://www.oschina.net/news/156188/apollo-graphql-130-million) 108 | 109 | 7、[Debian 诞生 28 周年](https://www.oschina.net/news/155969/debian-turns-28) 110 | 111 | ![](https://pica.zhimg.com/80/v2-87207b3fee100f99e85e2b901dab1712_1440w.png) 112 | 113 | ## 开源项目 114 | 115 | > 笔者比较熟悉Go语言技术栈,对于其他的开发语言不甚了解,因此推荐的项目大多与Go语言相关,如果你发现比较优秀的项目或者愿意分享自己的项目,欢迎issue。 116 | 117 | 1、[gorse](https://github.com/zhenghaoz/gorse),一个用 Go 编写的开源推荐系统服务。 118 | 119 | Gorse 是一个用 Go 编写的开源推荐系统。 120 | 121 | Gorse 旨在成为一个通用的开源推荐系统,可以快速引入各种在线服务。通过将物品、用户和交互数据导入 Gorse,系统将自动训练模型来为每个用户生成推荐。 122 | 123 | 项目特点如下: 124 | 125 | (1)AutoML:通过后台模型搜索自动选择最佳推荐模型和策略。 126 | 127 | (2)分布式推荐:单节点训练,分布式预测,在推荐阶段能够实现横向扩展。 128 | 129 | (3)RESTful API:为数据CRUD和推荐请求提供RESTful API。 130 | 131 | (4)Dashboard:提供数据导入导出、监控、集群状态检查的dashboard。 132 | 133 | ![](https://pic3.zhimg.com/80/v2-75b5567a8574a0ddce657ce55d0ac9d7_1440w.png) 134 | 135 | 2、[go-patterns](https://github.com/tmrts/go-patterns),设计模式精选,Go语言实现。 136 | 137 | 3、[lazygit](https://github.com/jesseduffield/lazygit),一个用于 git 命令的简单终端 UI。 138 | 139 | git 功能非常强大,但是当一切都很难做到时,这种强大有什么用,本项目致力于让我们使用 git 更加容易。 140 | 141 | - staging 142 | 143 | ![](https://image-static.segmentfault.com/728/484/728484499-611fdffa42774) 144 | 145 | - merging 146 | 147 | ![](https://image-static.segmentfault.com/379/409/3794090254-611fe08ae7e60) 148 | 149 | - rebasing 150 | 151 | ![](https://image-static.segmentfault.com/710/713/710713831-611fe0855d74f) 152 | 153 | 154 | 4、[minio](https://github.com/minio/minio),高性能的 Kubernetes 原生对象存储。 155 | 156 | MinIO是遵守GNU Affero GPL V3.0协议的一款高性能的对象存储。它的 API 与 Amazon S3 云存储服务兼容。 使用 MinIO 可以为机器学习,分析和应用工作负载数据搭建高性能架构。 157 | 158 | ![](https://pic1.zhimg.com/80/v2-368294c3c39ee564f0f94a84dd90902e_1440w.png) 159 | 160 | 5、[telegraf](https://github.com/influxdata/telegraf),用于收集和报告指标的插件驱动的服务器代理。 161 | 162 | Telegraf 是 influxdata 公司的时间序列平台TICK技术栈中的“T”, 是一个用于收集、处理、聚合和写入指标的代理。 163 | 164 | ![](https://pic1.zhimg.com/80/v2-1b15e4cb22e38a52f4334fc9ff758781_1440w.png) 165 | 166 | 通过插件系统以将内存占用降至最低,以便社区中的开发人员可以轻松添加对收集指标的支持。 167 | 168 | Telegraf 是插件驱动的,具有4种不同插件类型的概念: 169 | 170 | (1)输入插件:从系统、服务或第三方 API 收集指标。 171 | 172 | (2)处理器插件:转换、装饰和/或过滤指标 173 | 174 | (3)聚合器插件:创建聚合指标(例如平均值、最小值、最大值、分位数等) 175 | 176 | (4)输出插件:将指标写入不同的目的地 177 | 178 | 179 | ## 开源书籍 180 | 181 | 1、[《浪潮之巅·下》](https://u.jd.com/aLXHtlM)。 182 | 183 | *这是本周读完的唯一的一本书。* 184 | 185 | ![](https://pic1.zhimg.com/80/v2-e2b4b01edfba3c8e99bd03b0d1832f5b_1440w.png) 186 | 187 | 这周看完了《浪潮之巅·下》,和《浪潮之巅·上》一样,非常精彩,启人心智,意犹未尽。 188 | 189 | 比如,Google战胜微软的方式:挑选最厉害的人,以最快的速度占领市场。践行着最好的防守方式就是不断的往前跑的理念; 190 | 191 | 比如,斯坦福大学的办学方式以及如何和硅谷互补互助,抓住美国教育体制改革的契机,实现了与哈佛、耶鲁、麻省理工等常青藤名校比肩; 192 | 193 | 比如,云计算的发展历史、对于社会变革的展望,对于中国云计算政绩工程存在的不足的指出。站在10年后这个节点,不得不佩服作者的眼光。 194 | 195 | 另外,还有风险投资、投资银行,特别是华尔街天使和恶魔的两幅面孔等等。 196 | 197 | 印象最深刻的是,当一个公司变大之后,如何才能避免大公司病--类似部门之间勾心斗角,组织臃肿等问题,从而保持创新的文化? 198 | 199 | 吴军博士为我们举了两个例子向我们呈现如何保持创新,分别是3M公司和通用电气公司。 200 | 201 | 3M公司,将创新的基因深深的植入到企业的文化中。允许员工匀出15%的时间做与工作无关的事情,希望领导对员工保持宽容,要求公司的营收中有多少比例必须是来自最近数年的创新成果,对于依然在盈利但是没有太多前途的业务线果断剥离等。 202 | 203 | 通用电气公司,在杰克·韦尔奇带领下,连续的变革之后,不可思议的实现了集团下面六个部门中任意一个独立上市都能够成为500强之一,可见集团曾经的庞大。我们都知道在公司体量比较大的情况下,增长就会变得缓慢,那么通用电气是如何做到持续稳健的发展下去而没有类似AT&T那样被肢解呢。除了管理层比较厉害之外,还在于通用能够在一个行业将要发展起来之前,果断地进入,加速开创这个行业,成为行业的领军企业。同时,还能够与时俱进,淘汰没有竞争优势的业务,比如在衡量计算机业务无法竞争过IBM之后,直接将业务卖掉,提升利润率。 204 | 205 | ## 订阅 206 | 207 | - [开源早读课周刊:第1期](https://github.com/hapiman/weekly/blob/main/001.md) 208 | - [开源早读课周刊:第2期](https://github.com/hapiman/weekly/blob/main/002.md) 209 | - [开源早读课周刊:第3期](https://github.com/hapiman/weekly/blob/main/003.md) 210 | - [开源早读课周刊(第4期):微软的开源方兴未艾](https://github.com/hapiman/weekly/blob/main/004.md) 211 | 212 | 这个周刊每周五发布,微信搜索 **大漠胡萝卜** 或者扫描二维码,即可订阅。 213 | 214 | ![image](https://pic1.zhimg.com/80/v2-3f4a18e9ed7be804777475106db4f205_1440w.png) 215 | 216 | (完) 217 | -------------------------------------------------------------------------------- /006.md: -------------------------------------------------------------------------------- 1 | 2 | # 开源早读课周刊(第6期):苹果的开源差强人意 3 | 4 | 这里记录每周值得分享的开源内容,周五发布。 5 | 6 | 本杂志开源(GitHub: [hapiman/weekly](https://github.com/hapiman/weekly)),欢迎提交 issue,投稿或推荐你的项目。 7 | 8 | ![](https://pic1.zhimg.com/80/v2-f6a614d18c8f6a0a7a290ed9167c1e5d_1440w.png) 9 | 10 | 封面图:国家何时整治程序员的高薪现象? 11 | 12 | 高薪的三个原因: 13 | 14 | (1)处在向上的行业,市场大,供需关系决定;(2)工作强度较大、时间长;(3)程序员是大多是公司最主要的生产资料。 15 | 16 | ## 刊首语 17 | 18 | 2011年8月24日,蒂姆库克(Tim Cook)被正式任命为苹果CEO,这期间苹果长期作为市值最高的科技公司,数次成为最有价值的品牌。 19 | 20 | 期间苹果生产了众多的新硬件:Apple Watch系列,AirPods系列,HomePod系列,Apple Silicon芯片等。相比于乔布斯生前创造的iPhone、iPad、Mac等,差距很明显,但是相对于竞争对手,依然领先一小步,新产品在完善苹果生态系统的同时,带动了整个行业的发展。苹果从根本上来说就是一家产品公司,始终追求着由硬件、软件和服务相互交叉而产生的魔法,不断拓宽公司的护城河,赚取超过半数的行业利润。从巴菲特的投资苹果来看,苹果的商业模式能够大概率给公司长久持续地带来比较稳定利润,充满着极其强悍竞争力。 21 | 22 | 从下面的图片我们可以看看各种产品的市场情况。 23 | 24 | (1)开创了智能穿戴品类 Apple Watch, 份额始终维持在第一位置, 而且每年都有显著的体验改进, 竞争对手的生存空间不断被挤占。 25 | ![](https://pic1.zhimg.com/80/v2-68c1b000e07b403c25a37f54728f9e09_1440w.png) 26 | 27 | (2)开创了TWS无线耳机品类, 重新定义了耳机的使用方式, 并且稳居市场第一。 28 | ![](https://pic1.zhimg.com/80/v2-60e96525f809e72827538973d8696abb_1440w.png) 29 | 30 | (3)Apple Silicon 芯片在种类和性能上不断突破, 从耳机芯片 H1 到无线网络芯片 W3, 超宽频芯片 U1, 然后就是在去年引爆整个品类革命的 M1 芯片。 31 | ![](https://pic3.zhimg.com/80/v2-b30a2316993b25f4eff71019902ed8c8_1440w.png) 32 | 33 | (4)iPhone/iPad 两个传统品类也维持了极高的行业内营收份额, 考虑到更高的净利润, 可以说吃掉半个行业的利润。 34 | ![](https://pic1.zhimg.com/80/v2-75a7f2eecc813352ebe93c5292767b30_1440w.png) 35 | 36 | 在美国整个科技互联网行业,能够长时间在一家巨头公司担任CEO,并且深受股东信任,让公司长期保持着强劲的增长,是非常有挑战的事情,如果能够做到,那么必有非凡才能及过人之处。 37 | 38 | 比如前微软CEO鲍尔默,极其富有热情,很难不被其激情感染。虽然总被认为其缺乏创新,让公司死气沉沉,错过了整个互联网时代。但是没有人能够磨灭他在其位时组织开发的windows7的成功(最受欢迎的windows系统),及在稳固为微软根基上作出成就,也正是其对于云计算的提早布局,压中了这个市场巨大的蓝海行业,能够让萨提亚接任之后,将微软的云计算发扬光大。 39 | 40 | 比如,IBM的前CEO路易斯·郭士纳,走马上任之后,大刀阔斧的解决了公司的臃肿问题,在10年的时间内,让公司重新焕发生机。 41 | 42 | 比如,Google的前CEO埃里克·爱默生·施密特,思科的前CEO约翰·钱伯斯等等。 43 | 44 | 库克的优势在于其供应链管理能力,并且配合着苹果软硬一体的商业模式,将自己的优势体现的淋漓尽致,从另一个维度证明了乔布斯除了在产品设计方面的天赋之外,知人善任方面也颇有眼光,可以举两个例子说明。 45 | 46 | 1、当年苹果公司快要倒闭了,乔布斯回到苹果之后,马上就从库珀公司找来了库克。库克“奉命于危难之际”,在两年之内,将公司仓储商品库存量从70天缩减到10天以内的数量。 47 | 48 | 2、维护政府关系能力强,中美竞争这么激烈,苹果公司依然能够大赚特赚。对比人性自大退出中国市场的谷歌,求而不得恼羞成怒的Facebook,库克是纯粹的商人,一切以公司的利益至上,深受华尔街喜欢! 49 | 50 | 乔布斯打下了苹果帝国的江山,而库克守住并且扩大了苹果帝国的江山。乔布斯负责苹果公司的灵魂,库克负责将其落地。如果将乔布斯比作“高祖”的话,库克封一个“太宗”也不为过。 51 | 52 | > 关于开源实在是有太多的问题了。 53 | > 54 | > 开源如何赚钱,开源的运作模式,开源的历史,开源项目如何估值,开源项目如何协作,各个国家开源情况,各个公司的开源,知名项目的开源情况,怎么做好开源,开源对于社会影响等等。 55 | > 56 | > **本周刊就聚焦解决这些问题,希望在开源世界贡献力量。** 57 | > 58 | > 在前期,主要是推荐每周找到的一些精彩的文章,我会尽量少做评论,避免因为自己认知的不到位,误导大家。* 59 | 60 | **OK,下面是本周的开源分享,Enjoy。** 61 | 62 | ## 开源杂谈 63 | 64 | **1、关于苹果的开源**,“开源软件是 Apple 平台和开发者工具的核心,Apple 继续贡献和发布大量开源代码”。 65 | 66 | 苹果在业界以封闭生态链的方式自居,我们下意识的觉得苹果在开源领域无所作为,然而苹果是少数在早期就开始积极参与开源社区的公司。封闭的商业模式在保证了极致的用户体验的同时也决定了苹果的开源过程无法类似其他的IT企业一样,被众多的开发者认识,如苹果的Darwin操作系统无法作出类似Android系统那样全方位的开源,更多的是系统的部分开源,比如操作系统的内核部分[XNU](https://github.com/apple/darwin-xnu)早已开源,但是知之甚少。 67 | 68 | > Darwin是一种类Unix操作系统,包含开放源代码的XNU内核,其以微核心为基础的核心架构来实现Mach,而操作系统的服务和用户空间工具则以BSD为基础。类似其他类Unix操作系统,Darwin也有对称多处理器的优点,高性能的网络设施和支持多种集成的文件系统。 69 | 70 | > XNU是一个由苹果电脑开发用于macOS操作系统的操作系统内核。它是Darwin操作系统的一部分,跟随着Darwin一同作为自由及开放源代码软件被发布。它还是iOS、tvOS和watchOS操作系统的内核。XNU是X is Not Unix的缩写。 71 | 72 | 以iOS为例来说一下,iOS的大致结构如下: 73 | 74 | ![](https://image-static.segmentfault.com/356/764/3567642790-61286688df2fc_fix732) 75 | 76 | CoreOS就是上面说的Darwin是由Mach、FreeBSD以及一些苹果自己的代码组成的,是开源、符合POSIX标准的一个Unix核心,这部分整体是开源的,像Mach层里的IOkit驱动框架是开源的但是驱动是不开源的。 77 | 78 | (1)[Github地址:github.com/apple](https://github.com/apple) 79 | 80 | (2)[官方网站:developer.apple.com/opensource/](https://developer.apple.com/opensource/)。 81 | 82 | (3)[源码下载:opensource.apple.com](https://opensource.apple.com/) 83 | 84 | ![](https://pic3.zhimg.com/80/v2-fecbc5e1a5275f7cda4e8bb0b1ddfb77_1440w.jpeg) 85 | 86 | **特色项目,** 87 | 88 | (1)[Swift](https://github.com/apple/swift),苹果新一代的开发语言。 89 | 90 | Swift 专门针对 OS X 和 iOS 的应用开发,在各个方面优于 Objective-C,没有那么多复杂的符号和表达式。同时,更加快速、便利、高效、安全。 91 | 92 | ![](https://pica.zhimg.com/80/v2-8a21980b1ff91868fb4ca59001e25091_1440w.png) 93 | 94 | (2)[darwin-xnu](https://github.com/apple/darwin-xnu),XNU 内核是 Darwin 操作系统的一部分,用于 macOS 和 iOS 操作系统。 95 | 96 | XNU 是 X is Not Unix 的首字母缩写词。 XNU 是一个混合内核,它结合了卡内基梅隆大学开发的 Mach 内核和 FreeBSD 的组件以及用于编写驱动程序的 C++ API,称为 IOKit。 XNU 在 x86_64 上运行,适用于单处理器和多处理器配置。 97 | 98 | ![](https://pic2.zhimg.com/80/v2-1212b5bfd26d14b783e4f9cb955ab3e9_1440w.png) 99 | 100 | (3)[Webkit](https://webkit.org/),苹果开源的浏览器引擎。 101 | 102 | 除了被Safari、App Store使用之外,因为被Chromium引用,所以当前大多数浏览器都间接使用到了Webkit引擎。 103 | 104 | ![](https://pic1.zhimg.com/80/v2-1a857e1ec681e56fe3769b8bcc48fe61_1440w.png) 105 | 106 | 2、[开源之书·共读」#40:《维基经济学:大规模协作如何改变一切](https://opensourceway.community/posts/book-of-open-source/40th-wikinomics/) 107 | 108 | 当人们提到开放、对等(peer)、共享、全球化的时候,如果没有对应的可实践的事物,如Linux、Apache、Python、Wikipedia、Kubernetes的话,是无法准确理解这四个词汇的意思的,但是如果有人通过书籍整理并专门讲解的话,就另当别论了。 109 | 110 | 3、[开源共同体在本土的可能发展路径:一次开源文化的思想实验](https://opensourceway.community/posts/opensource_culture/let-us-think-big-os-future-in-china/)。 111 | 112 | 当我们仔细思考开源的本质的时候,我们会发现,当人类要集体生产某个事物的时候,他们会如何组织?如何协调资源?如何获得关注?在资本主义的思路下,这似乎都不是一个问题,有了资本,就可以找到人,有了人,使用现代管理方法即可,然后领导统一目标,大家齐心协力实现目标。但是,这个世界的所有生产方式未必都是由金钱资本驱动的。 113 | 114 | 4、[从动物科学到乐队鼓手,腾讯技术小哥的开源人生](https://cloud.tencent.com/developer/article/1866209)。 115 | 116 | 5、[记一次10人跨组织、跨地域的开源协作经历](https://cloud.tencent.com/developer/article/1866208)。 117 | 118 | ![](https://image-static.segmentfault.com/244/638/2446380523-611fdf7510202_fix732) 119 | 120 | 6、[操作系统革命(**视频**)](https://www.bilibili.com/video/BV1iC4y187nT?from=search&seid=3622394567411620124),非常经典的有关自由软件运动的纪录片。 121 | 122 | 7、[代码奔腾(**视频**)](https://www.bilibili.com/video/BV1rx411E7oW?from=search&seid=15901582272587737095),从1998年3月到1999年4月,一个独立纪录片摄制组跟随着网景公司的一个软件工程师团队,记录了他们公司和互联网历史上的分水岭。 123 | 124 | ## 开源资讯 125 | 126 | 1、[携程捐赠 Apollo 项目到 Apollo 开源社区](https://www.oschina.net/news/157401/ctrip-donate-apollo-to-apollo-community) 127 | 128 | 为了更好地支持社区的发展,携程决定捐赠 Apollo 项目到 Apollo 开源社区,从而实现真正的社区自治,为 Apollo 项目更好的发展提供成长环境,相关项目将迁移到 [github.com/apolloconfig](https://github.com/apolloconfig) 下。 129 | 130 | 2、[Bootstrap 诞生 10 周年](https://www.oschina.net/news/157177/bootstrap-ten-years) 131 | 132 | 十年前,2011 年 8 月 19 日,Bootstrap 第一个版本正式发布,并宣布在 GitHub 开源。 133 | 134 | 当时它的定位是“一个用于快速开发 Web 应用的前端工具包”,集合了 CSS 和 HTML 的常见用法,并使用一些最新的浏览器技术,为开发者提供时尚的排版、表单、按钮、表格、网格、导航和其他需要的组件。 135 | 136 | 3、[Sourcegraph 向个人开发者开放,将支持搜索私有库](https://www.oschina.net/news/157175/sourcegraph-entire-open-source-web) 137 | 138 | Sourcegraph 正计划将其通用代码搜索平台扩展到云端,并在此过程中对 GitHub 和 GitLab 的数百万公共仓库进行索引,这样一来任何人都可以通过搜索找到它们。 139 | 140 | ![](https://image-static.segmentfault.com/164/027/1640273192-612866e4db45c_fix732) 141 | 142 | 4、[“要源码上门自取”,结果人真就上门了](https://www.oschina.net/news/156938/umidigi-violate-the-gplv2-license),关于开源协议的一则有趣的故事。 143 | 144 | 5、[大数据独角兽 Databricks 估值或达 380 亿美元](https://www.oschina.net/news/156558/databricks-38-billion-valuation) 145 | 146 | ## 开源项目 147 | 148 | > 笔者比较熟悉Go语言技术栈,对于其他的开发语言不甚了解,因此推荐的项目大多与Go语言相关,如果你发现比较优秀的项目或者愿意分享自己的项目,欢迎issue。 149 | 150 | 1、[tunny](https://github.com/Jeffail/tunny),Go协程池实现,重复利用创建的协程,避免浪费系统资源。 151 | 152 | ```go 153 | package main 154 | 155 | import ( 156 | "io/ioutil" 157 | "net/http" 158 | "runtime" 159 | 160 | "github.com/Jeffail/tunny" 161 | ) 162 | 163 | func main() { 164 | numCPUs := runtime.NumCPU() 165 | 166 | pool := tunny.NewFunc(numCPUs, func(payload interface{}) interface{} { 167 | var result []byte 168 | 169 | // TODO: Something CPU heavy with payload 170 | 171 | return result 172 | }) 173 | defer pool.Close() 174 | 175 | http.HandleFunc("/work", func(w http.ResponseWriter, r *http.Request) { 176 | input, err := ioutil.ReadAll(r.Body) 177 | if err != nil { 178 | http.Error(w, "Internal error", http.StatusInternalServerError) 179 | } 180 | defer r.Body.Close() 181 | 182 | // Funnel this work into our pool. This call is synchronous and will 183 | // block until the job is completed. 184 | result := pool.Process(input) 185 | 186 | w.Write(result.([]byte)) 187 | }) 188 | 189 | http.ListenAndServe(":8080", nil) 190 | } 191 | ``` 192 | 193 | 194 | 2、[glab](https://github.com/profclems/glab),用 Go 写的 GitLab 命令行工具。通过它除了能够在命令行管理项目、issues、合并提交之外,还能够查看 CI 的运行状态。 195 | 196 | ![](https://image-static.segmentfault.com/307/439/3074390713-61286705e6f43_fix732) 197 | 198 | 3、[fzf](https://github.com/junegunn/fzf),命令行模糊查找器。 199 | 200 | 能够搜文件、历史命令、进程、git 提交记录等信息,支持预览内容、整合到 Vim/Neovim 编辑器,而且搜索速度极快。 201 | 202 | ![](https://pic1.zhimg.com/80/v2-97019c08d5f2233ca60675d649551e26_1440w.png) 203 | 204 | 205 | 4、[godis](https://github.com/HDT3213/godis),Go 语言实现的 Redis 服务器和分布式集群。 206 | 207 | 本项目旨在为尝试使用 Go 语言开发高并发中间件的朋友提供一些参考。 208 | 209 | 支持 Redis 常见的五种数据结构以及自动过期功能(TTL)、发布订阅、地理位置、 210 | AOF 持久化及 AOF 重写、事务、集群等功能,值得看看。 211 | 212 | ![](https://image-static.segmentfault.com/105/865/1058650845-6128671f87eaa_fix732) 213 | 214 | 5、[rosedb](https://github.com/roseduan/rosedb),一个 Go 语言实现的快速、稳定、内嵌的 k-v 数据库。。 215 | 216 | rosedb 是一个稳定、高性能、快速、内嵌的 k-v 数据库,支持多种数据结构,包含 String、List、Hash、Set、Sorted Set,接口名称风格和 Redis 类似。 217 | 218 | rosedb 基于简单的 bitcask 模型,数据文件布局类似 LSM Tree 中的 WAL 日志,纯 Golang 实现,易于使用、扩展。 219 | 220 | rosedb 代码简洁,注释清晰,有讲解视频,和上面提到的 godis 一样,适合找 Go 实战项目的小伙伴们。 221 | 222 | ![](https://pic1.zhimg.com/80/v2-97ebe4d72434deaadf3143427d7835a3_1440w.png) 223 | ![](https://pic1.zhimg.com/80/v2-dc5940fb61922acfaa471bd471df920f_1440w.png) 224 | ![](https://pic1.zhimg.com/80/v2-66bb7755686c38bf9ed9485f36156e96_1440w.png) 225 | 226 | ## 开源书籍 227 | 228 | 1、《开源软件文集:开源革命之声》。 229 | 230 | *这是本周读完的唯一的一本书。* 231 | 232 | ![](https://image-static.segmentfault.com/245/096/2450969811-612867b86dbc9_fix732) 233 | 234 | 这本书集合了所有 Open Source 领域大拿的文章。从 Linux , Perl, Apache, NetScape 的创建者到 Open Source 的开创者。各式各样的人物从不同角度阐述着对 Open Source 的理解,你可以不认同 Open Source 的方式和哲学,但是你一定要听一下这些声音。 235 | 236 | > 该书写于1999年,现在依然是经典,只有少数的地方卖纸质二手书,电子书也很难找到,在公众号中回复 104 可以获取! 237 | 238 | ## 订阅 239 | 240 | - [开源早读课周刊:第1期](https://github.com/hapiman/weekly/blob/main/001.md) 241 | - [开源早读课周刊:第2期](https://github.com/hapiman/weekly/blob/main/002.md) 242 | - [开源早读课周刊:第3期](https://github.com/hapiman/weekly/blob/main/003.md) 243 | - [开源早读课周刊(第4期):微软的开源方兴未艾](https://github.com/hapiman/weekly/blob/main/004.md) 244 | - [开源早读课周刊(第5期):Facebook的开源欣欣向荣](https://github.com/hapiman/weekly/blob/main/005.md) 245 | 246 | 这个周刊每周五发布,微信搜索 **大漠胡萝卜** 或者扫描二维码,即可订阅。 247 | 248 | ![](https://pic1.zhimg.com/80/v2-3f4a18e9ed7be804777475106db4f205_1440w.png) 249 | 250 | (完) 251 | -------------------------------------------------------------------------------- /007.md: -------------------------------------------------------------------------------- 1 | # 开源早读课周刊(第 7 期):亚马逊的开源“合作共赢” 2 | 3 | 这里记录每周值得分享的开源内容,周五发布。 4 | 5 | 本杂志开源(GitHub: [hapiman/weekly](https://github.com/hapiman/weekly)),欢迎提交 issue,投稿或推荐你的项目。 6 | 7 | ![](https://image-static.segmentfault.com/180/241/1802410308-61334b2bc5668_fix732) 8 | 9 | 封面图:北京首钢三高炉博物馆(中国年度建筑大奖首位)。 10 | 11 | ## 刊首语 12 | 13 | 2021 年 8 月 2 日,在毫无征兆的前提下,北京陌陌科技有限公司突然宣布将公司名称改为“Hello”集团。 14 | 15 | 对于一家已经成熟并且在美国上市的互联网公司,即使是变更 Logo、Slogan,都会对公司有非常大的影响,更何况是企业的名称,那么为什么陌陌会做出如此变化呢? 16 | 17 | 官方宣称,**陌陌这个名字已经不能覆盖陌陌的现在整体业务**,因为当前陌陌集团主要业务已经包含陌陌、探探、陌陌影业和音乐、综艺等业务。 18 | 19 | 不过,此举更深层次的原因在于陌陌转型陷入迷途,同时一直以来用户对其的评价负面化,“不涉黄无陌探”标签已成为其无法卸下的枷锁。多年以来,陌陌在陌生人社交这个赛道干掉一众竞争对手之后,依然无法在盈利层面有所突破。在意外转向直播赛道之后,虽收获颇丰,但业务内容主打**性感美女秀场**,存在非常严重的负面信息,在监管的边缘试探,极其不稳定。 20 | 21 | 集团使用新的名称,淡化陌陌对于公司品牌的影响,或许是一种可行的逻辑。 22 | 23 | > 关于开源实在是有太多的问题了。 24 | > 25 | > 开源如何赚钱,开源的运作模式,开源的历史,开源项目如何估值,开源项目如何协作,各个国家开源情况,各个公司的开源,知名项目的开源情况,怎么做好开源,开源对于社会影响等等。 26 | > 27 | > **本周刊就聚焦解决这些问题,希望在开源世界贡献力量。** 28 | > 29 | > 在前期,主要是推荐每周找到的一些精彩的文章,我会尽量少做评论,避免因为自己认知的不到位,误导大家。 30 | 31 | **OK,下面是本周的开源分享,Enjoy。** 32 | 33 | ## 开源杂谈 34 | 35 | **1、关于亚马逊的开源** 36 | 37 | 在探索亚马逊开源主题之前,我满怀期待希望能够找到一些“扛把子”的项目。在查询很长时间之后,非常奇怪,诺大的科技公司竟然在开源领域没有主导过特别有影响力的项目。再详细的看了一下相关的资料之后,大致了解亚马逊的开源的特点。 38 | 39 | 1、作为知名开源项目的参与者,共享技术力量,但是并没有拿的出手的重量级的项目。这方面完全比不上其他互联网巨头,如微软的 VsCode,谷歌的 Android,脸书的 React 等 40 | 41 | 2、开源项目大多数围绕者生态来看,可能是内部 OKR 机制导致,官网提及的 2500+相关的开源项目大多如此。如果离开了生态,大多就没有多少拓展使用的空间。 42 | 43 | 2、与其他的开源厂商矛盾比较严重,源自亚马逊用了社区的技术劳动成果,但是对于社区的贡献却远达不到所得。同时还特意淡化社区开源产品的商标,如使用 DocumentDB 取代 Mongodb、OpenSearch 取代 ElasticSearch 等,迫使其他的开源软件厂商不得已修改开源协议。 44 | 45 | (1)[官方网站:aws.amazon.com/opensource](https://aws.amazon.com/opensource)。 46 | 47 | (2)[精选项目:aws.github.io](https://aws.github.io/) 48 | 49 | **特色项目:** 50 | 51 | (1)[Bottlerocket](https://github.com/bottlerocket-os/bottlerocket),基于 Linux 的用于托管容器的操作系统。 52 | 53 | (2)[Firecracker](https://firecracker-microvm.github.io/),用于创建和管理微型虚拟机的虚拟机监视器 (VMM)。 54 | 55 | (3)[FreeRTOS](https://www.freertos.org/),适用于微控制器和小型微处理器的市场领先的实时操作系统 (RTOS)。 56 | 57 | 2、[经验还是科学?](https://opensourceway.community/posts/the_way_of_open_source/osw-experience-and-science/) 58 | 59 | 当我们遇到新生事物是知识的盲区后,我们通常是利用已有的知识来理解的,这是大脑的运行机制,然后不断的进行学习、尝试、设想、试错,取得阶段性结果,然后如此反复。这似乎是解释的通的,但是现实呢?我们会本能的使用经验来反对一切尝试,在开源的世界,此类事件也概莫能外。 60 | 61 | 3、[Apache 软件基金会公布 2021 财年年度报告](https://www.oschina.net/news/158162/apache-2021-report) 62 | 63 | 附几张图。 64 | 65 | ![](https://oscimg.oschina.net/oscnet/up-f6c0ab0f594e35ffb329af920dc45fc2b5c.png) 66 | ![](https://oscimg.oschina.net/oscnet/up-f00d371518a56f14e45ad280f9b9836864d.png) 67 | ![](https://oscimg.oschina.net/oscnet/up-e093559419d02ed2f5803648cdbba389dba.png) 68 | 69 | 4、[《人民日报》刊文:以开源开放为抓手形成科技与产业新优势](https://www.oschina.net/news/158057) 70 | 71 | 技术开源和产业开放彼此衔接、相互支撑,构建全产业链合作模式和无边界产业生态圈,形成新型产业组织形态,日益成为数字时代全球分工体系的主流模式。 72 | 73 | ![](https://static.oschina.net/uploads/space/2021/0831/112735_Yt1l_4937141.jpeg) 74 | 75 | 5、[CNCF 首个中国开源项目是如何炼成的?](https://mp.weixin.qq.com/s?__biz=MzIwODAzNTA2NQ==&mid=2651225040&idx=1&sn=51e9e88d38aeb538d8a28a196bb645b1&scene=21#wechat_redirect) 76 | 77 | Harbor 目前在 GitHub 上有 15000+ star,2000+ 贡献者,5000+ 用户,每月有 20000+ 的独立访问者,4000 多次的源代码下载量。显然,Harbor 是成功的。它做对了什么?为什么能取得成功?Harbor 的经历可以为我们带来哪些思考? 78 | 79 | ![](https://pic1.zhimg.com/80/v2-4885a6d011f3887d71bc2544b95f0b7f_1440w.png) 80 | 81 | 6、[Zadig 开源角第一集--大企业如何做采购决策、如何创新](https://my.oschina.net/koderover/blog/5212538) 82 | 83 | 开源角是 Zadig 团队新开辟的对话企业高管的视频录播系列,和各种企业探讨开源带来的机遇和挑战。Zadig 会定期邀请相关同学来团队在上海的 Office 畅谈,并在之后转化成文章和视频录播供大家分享。 84 | 85 | 第一集是邀请的神州数码集团 CIO 沈暘,和 Zadig 联创郭健讨论在开源时代,大企业如何做采购决策、如何创新。 86 | 87 | ![](https://pic1.zhimg.com/80/v2-45f4ca4a09d20bd7791c4da09e170f4d_1440w.png) 88 | 89 | ## 开源资讯 90 | 91 | 1、[TypeScript 使用新的官网](https://www.typescriptlang.org/),以更好地向用户介绍 TypeScript。 92 | 93 | 2、[Databricks 融资 16 亿美元,估值达 380 亿美元](https://www.oschina.net/news/158310/databricks-raises-1-6b-at-38b-valuation) 94 | 95 | 3、[vscode.dev](https://www.oschina.net/news/158325/ms-previews-free-vs-code-for-web),在网页中使用 vs code 访问仓库代码。 96 | 97 | 4、[Facebook 开发和开源的 Go 实体框架 Ent 加入 Linux 基金会](https://www.oschina.net/news/158203),国内使用较多的是[gorm](https://github.com/go-gorm/gorm)框架。[Ent](https://entgo.io/)的官方网站:https://entgo.io/。 98 | 99 | 5、[微软宣布 Windows 11 将于 10 月 5 日上市](https://www.oschina.net/news/158167/windows-available-on-10-05) 100 | 101 | 6、[WordPress 母公司收购 Frontity,未来将停止开发和维护该框架](https://www.oschina.net/news/158149/automattic-acquires-frontity) 102 | 103 | 7、小米、字节加入开源专利社区 OIN,[小米](https://www.oschina.net/news/158111/xiaomi-corporation-joins-oin)和[字节](https://www.oschina.net/news/158249/bytedance-joins-oin) 104 | 105 | ## 开源项目 106 | 107 | > 笔者比较熟悉 Go 语言技术栈,对于其他的开发语言不甚了解,因此推荐的项目大多与 Go 语言相关,如果你发现比较优秀的项目或者愿意分享自己的项目,欢迎 issue。 108 | 109 | 1、[lindb](https://github.com/lindb/lindb),LinDB 是一个高性能、高可用并且具备水平拓展性的开源分布式时序数据库,目前在饿了么存储全量的监控数据,每天增量写入 TB 级,全量数据总计 PB 级。 110 | 111 | ![](https://pic1.zhimg.com/80/v2-307461e3cda83f93a41dcc0ae5610b03_1440w.png) 112 | 113 | _当前的分支还不稳定,并且不推荐生产环境的使用,LinDB 0.1 还处在开发阶段。_ 114 | 115 | 2、[annie](https://github.com/iawia002/annie),Go 编写的快速、简单、干净的视频下载程序。 116 | 117 | 支持哔哩哔哩、YouTube、Facebook、优酷、爱奇艺、腾讯视频等视频网站。 118 | 119 | ``` 120 | $ annie https://www.youtube.com/watch?v=dQw4w9WgXcQ 121 | 122 | Site: YouTube youtube.com 123 | Title: Rick Astley - Never Gonna Give You Up (Video) 124 | Type: video 125 | Stream: 126 | [248] ------------------- 127 | Quality: 1080p video/webm; codecs="vp9" 128 | Size: 63.93 MiB (67038963 Bytes) 129 | # download with: annie -f 248 ... 130 | 131 | 41.88 MiB / 63.93 MiB [=================>-------------] 65.51% 4.22 MiB/s 00m05s 132 | ``` 133 | 134 | 3、[dgraph](https://github.com/dgraph-io/dgraph),开源、免费的分布式图数据库。 135 | 136 | Dgraph 是一个水平可扩展的分布式 GraphQL 数据库。它提供 ACID 事务、一致复制、线性读取功能。作为原生 GraphQL 数据库,它严格控制数据在磁盘上的排列方式,以优化查询性能和吞吐量,减少集群中的磁盘搜索和网络调用。 137 | 138 | Dgraph 的目标是提供 Google 生产级别的规模和吞吐量,具有足够低的延迟,能够在 TB 级的数据中实现实时用户查询。Dgraph 支持 GraphQL 查询语法,并通过 GRPC 和 HTTP 以 JSON 和 Protocol Buffers 进行响应。 139 | 140 | ![](https://pica.zhimg.com/80/v2-3e64627c6c913c725c284b885630f72a_1440w.png) 141 | 142 | 4、[go-sniffer](https://github.com/40t/go-sniffer),抓包截取项目中的数据库请求并解析成相应的语句,如 mysql 协议会解析为 sql 语句,便于调试。不要修改代码,直接嗅探项目中的数据请求。 143 | 144 | ``` 145 | ======================================================================= 146 | [使用说明] 147 | 148 | go-sniffer [设备名] [插件名] [插件参数(可选)] 149 | 150 | [例子] 151 | go-sniffer en0 redis 抓取redis数据包 152 | go-sniffer en0 mysql -p 3306 抓取mysql数据包,端口3306 153 | 154 | go-sniffer --[命令] 155 | --help 帮助信息 156 | --env 环境变量 157 | --list 插件列表 158 | --ver 版本信息 159 | --dev 设备列表 160 | [例子] 161 | go-sniffer --list 查看可抓取的协议 162 | 163 | ======================================================================= 164 | [设备名] : lo0 : 127.0.0.1 165 | [设备名] : en0 : x:x:x:x:x5:x 192.168.1.3 166 | [设备名] : utun2 : 1.1.11.1 167 | ======================================================================= 168 | ``` 169 | 170 | 5、[dive](https://github.com/wagoodman/dive),用来探索 docker 镜像每一层文件系统,以及发现缩小镜像体积方法的命令行工具。使用命令:`dive ` 171 | 172 | ![](https://image-static.segmentfault.com/396/180/396180739-61318ef6c2feb) 173 | 174 | ## 开源书籍 175 | 176 | 1、[《黑客:计算机革命英雄》](https://github.com/hapiman/weekly/blob/main/books/%E3%80%90%E9%BB%91%E5%AE%A2%EF%BC%9A%E8%AE%A1%E7%AE%97%E6%9C%BA%E9%9D%A9%E5%91%BD%E7%9A%84%E8%8B%B1%E9%9B%84%EF%BC%8825%E5%91%A8%E5%B9%B4%E7%BA%AA%E5%BF%B5%E7%89%88%EF%BC%89%E3%80%91Steven%20Levy.pdf)。 177 | 178 | _这是本周读完的唯一的一本书。_ 179 | 180 | ![](https://pic3.zhimg.com/80/v2-aeb194b0e0ff51f23eb793565d8f2f27_1440w.png) 181 | 182 | 在上个世纪计算机革命如火如荼的征程上,这一群黑客用默默无闻的行动为当今的数字世界照亮了一条道路,留下不可磨灭的贡献。他们是一群把计算视为世界上最重要事情的程序员和设计师,他们专注,认真,勇于承担风险,勇于挑战规则,去探索计算机工程问题的巧妙解决方案,不屑的坚持前进。在朴实无华的外表之下,他们是真正的冒险家、梦想者、勇于承担风险的人和艺术家——他们清楚地认识到计算机是一种真正的革命性工具。他们是一群卓越的人物,勇敢地探索计算机思维空间,一个任何人都未曾到达的奇妙世界。 183 | 184 | [赶快去看看黑客英雄们是如何改变我们的世界的吧!](https://github.com/hapiman/weekly/blob/main/books/%E3%80%90%E9%BB%91%E5%AE%A2%EF%BC%9A%E8%AE%A1%E7%AE%97%E6%9C%BA%E9%9D%A9%E5%91%BD%E7%9A%84%E8%8B%B1%E9%9B%84%EF%BC%8825%E5%91%A8%E5%B9%B4%E7%BA%AA%E5%BF%B5%E7%89%88%EF%BC%89%E3%80%91Steven%20Levy.pdf) 185 | 186 | ## 订阅 187 | 188 | - [开源早读课周刊:第 1 期](https://github.com/hapiman/weekly/blob/main/001.md) 189 | - [开源早读课周刊:第 2 期](https://github.com/hapiman/weekly/blob/main/002.md) 190 | - [开源早读课周刊:第 3 期](https://github.com/hapiman/weekly/blob/main/003.md) 191 | - [开源早读课周刊(第 4 期):微软的开源方兴未艾](https://github.com/hapiman/weekly/blob/main/004.md) 192 | - [开源早读课周刊(第 5 期):Facebook 的开源欣欣向荣](https://github.com/hapiman/weekly/blob/main/005.md) 193 | - [开源早读课周刊(第 6 期):苹果的开源差强人意](https://github.com/hapiman/weekly/blob/main/006.md) 194 | 195 | 这个周刊每周五发布,微信搜索 **大漠胡萝卜** 或者扫描二维码,即可订阅。 196 | 197 | ![](https://pic1.zhimg.com/80/v2-3f4a18e9ed7be804777475106db4f205_1440w.png) 198 | 199 | (完) 200 | -------------------------------------------------------------------------------- /008.md: -------------------------------------------------------------------------------- 1 | # 开源早读课周刊(第 8 期):阿里巴巴的开源国内领先 2 | 3 | 这里记录每周值得分享的开源内容,周五发布。 4 | 5 | 本杂志开源(GitHub: [hapiman/weekly](https://github.com/hapiman/weekly)),欢迎提交 issue,投稿或推荐你的项目。 6 | 7 | ![](https://pic3.zhimg.com/80/v2-5bbdd6400de21fcdf4dbe48cfdeaf2ba_1440w.jpg) 8 | 9 | 封面图:阿里十年开源小结。 10 | 11 | ## 刊首语 12 | 13 | 说一说“苹果税”。 14 | 15 | 当 App 发布到 AppStore 之后,如果用户下载这个 App 需要收费,那么苹果也要收取一定比例的费用。这个很好理解,就像我们要去某个商场开个小店,我们占用了商场的资源,那么我们就得支付一定的费用,在这一块,倒是没有什么争议。 16 | 17 | 苹果和 App 开发商的矛盾主要在于**应用内支付**。在用户下载 App 之后,在使用过程中,如果发生了购买行为,支付了一定的金额,苹果官方就会收取一定比例的费用。当然这个不是针对所有的商品。如果是实物商品,需要经过线下操作,类似购买实体书籍、家电、水果等,这种情况苹果是不会收取费用的,因此我们很少会看到类似阿里、京东、携程等公司和苹果在支付费用上产生矛盾,引发热点,反倒是腾讯经常会和苹果在支付费用方面发生的矛盾。根本的原因在于苹果收费的领域主要针对无实物的购买,也就是虚拟商品,比如游戏中的虚拟道具,视频 App 购买的 VIP 会员,在音乐 App 购买的歌曲等都是苹果收费的目标。 18 | 19 | 大家都知道,苹果的生态系统比较封闭,苹果手机只能通过 AppStore 下载安装应用程序,无法像 Android 一样能够从其他的应用商店、厂商渠道或者通过浏览器下载。于是,想通过其他的方式来分发软件是不可能的,而苹果在支付上通过协议约定了独家支付,否者就可能面临下降 App 的风险,因此在支付的问题上开发商不可避免地就会和苹果官方形成冲突。 20 | 21 | 因此只能迂回的解决问题,如亚马逊电子书须先在网页版中下载书籍之后,才能够在 Kindle 中使用;微信将“打赏”定义成为个人行为,绕过“苹果税”;将支付功能引导到 App 之外去处理等等。如果实在无法找到解决方案,则对消费者实行价格歧视,差异化定价,如爱奇艺的视频会员,iOS 充值的费用高于 Android 等情况。 22 | 23 | 本周,一项对于苹果公司诉讼终于尘埃落定,最终的结果是**要求苹果不许限制 APP 开发商将用户引导至第三方支付系统**,预计在今年 12 月 9 日生效。这对于广大的苹果手机用户而言无疑是非常好的消息,想必在用户体验或者虚拟商品购买费用上能够优化不少,我们拭目以待。 24 | 25 | > 关于开源实在是有太多的问题了。 26 | > 27 | > 开源如何赚钱,开源的运作模式,开源的历史,开源项目如何估值,开源项目如何协作,各个国家开源情况,各个公司的开源,知名项目的开源情况,怎么做好开源,开源对于社会影响等等。 28 | > 29 | > **本周刊就聚焦解决这些问题,希望在开源世界贡献力量。** 30 | > 31 | > 在前期,主要是推荐每周找到的一些精彩的文章,我会尽量少做评论,避免因为自己认知的不到位,误导大家。 32 | 33 | **OK,下面是本周的开源分享,Enjoy。** 34 | 35 | ## 开源杂谈 36 | 37 | **1、关于阿里巴巴的开源** 38 | 39 | 在 2019 年,AI 领域的大牛贾扬清加入到阿里巴巴,在经过短暂的团队磨合之后,同年 9 月,被正式任命为阿里巴巴开源技术委员会负责人。至此,阿里巴巴形成了由委员会成员、开源技术专家组、开源办公室、开源布道师等组成的开源技术委员会格局,全球顶级开源社区 CNCF 首位中国委员李响,Ant Design 项目的核心推动者玉伯,FastJson 和 Druid 项目的维护者高铁等多位开源专家均在其中。这也标志着阿里逐渐将开源从最早期的个人行为逐渐发展成组织行为,并且升级为阿里技术战略之一。阿里的开源分为四个阶段,即拥抱开源、贡献开源、自主开源、持续赋能开源,不仅要实现已有项目深度贡献,还要将更多的内部自主项目,逐渐放到社区来。 40 | 41 | ![](https://image-static.segmentfault.com/831/482/831482204-613c97065f971_fix732) 42 | 43 | 上任之初,贾扬清用“3+1”概述了阿里开源技术委员会的方向:3 是“云原生、操作系统和前端”,1 是“工具”。 44 | 45 | ![](https://image-static.segmentfault.com/615/502/615502092-613c9894e8838_fix732) 46 | 47 | 云原生:越来越多的技术将在云上设计,阿里开源将帮助开发者更好、更方便获取的云原生环境。 48 | 49 | 操作系统:阿里有飞天操作系统底座,同时也应用过很多类似 Linux 这样本身就开源的系统。 50 | 51 | 前端:前端是和用户交互的重要媒介,做好前端能够迅速将技术交到用户手里,如蚂蚁金服开源的 Ant Design。 52 | 53 | 工具:利用开源项目和解决方案提高开发效率,包括测试部署工具,源代码管理工具,项目交流平台等,帮助开发者更容易推进自己的开源项目。 54 | 55 | 只有经过实际应用场景的验证,开源项目的价值才可能最大化。开源项目是 0 到 1 的过程,仅仅是完成“出生”,实现从无到有,但是如何才能茁壮成长,实现 1-100 质的飞跃,还得需要真实的应用场景的帮助,而阿里就致力于提供了一个技术试验场。阿里巴巴的大规模计算能力、丰富的实践场景将有助于降低开源成本、推动项目的成熟完善乃至商业化场景落地。 56 | 57 | 此后,阿里加速了集团技术开源的步伐,无论是参与组织的重量级和数量上,还是项目的质量、数量、广度上,皆取得了重大的突破,具体项目介绍查看阿里开源官方网站,[我们开放源码,更相信社区的力量](https://opensource.alibaba.com/)。 58 | 59 | (1)[推荐项目](https://opensource.alibaba.com/project),包括`apache/dubbo`,`apache/rocketmq`,`ant-design/ant-design`,`alibaba/Sentinel`,`alibaba/nacos`,`eggjs/egg`,`alibaba/fastjson`等 60 | 61 | (2)[所有项目](https://opensource.alibaba.com/project?spm=a2c6h.13032830.1395148.2.fcaf7435jnNf5j) 62 | 63 | (3)[阿里开源博客](https://developer.aliyun.com/group/opensource?spm=a2c6h.13058506.1395594.3.3d4e3addKbvNoq&tab=1#/?_k=c4ps9x) 64 | 65 | 2、[阿里开源 10 年,致敬千万开源人](https://zhuanlan.zhihu.com/p/102767356?utm_source=wechat_session&utm_medium=social&utm_oi=26935006593024) 66 | 67 | 阿里开源负责人贾扬清在阿里开源 10 周年之际写给开源人的一封信。 68 | 69 | 里面有一句话说得非常好,“我们经常发现,当各种喧嚣归于平静,当各种繁华归于平淡,我们的工程师们都依然不变初心,在追求着自己的梦想:通过代码这一种最直接的语言,通过开源这一种最简单的方式,寻找着技术路上的下一个突破点,寻找着技术对于社会创造的更多价值。开源是开发者最大的同心圆,未来,我们希望与更多开源人一起,用技术普惠世界。”。 70 | 71 | 作为技术从业者,保持一颗纯真的技术心灵,使用着朴素而又简单的方式,用技术来改善我们的世界,难能可贵。 72 | 73 | 3、[日调用量超三十万亿,腾讯开源百万级服务发现和治理中心北极星](https://mp.weixin.qq.com/s/YP8aXGwd_vyYSgL8QyomvQ) 74 | 75 | 在腾讯内部,经过多年的技术沉淀,形成了非常多的业务组件,一方面是多个团队不断探索的成功,但是在另一方面,众多而杂乱的组件很多时候却增加了大家选择的烦恼。鉴于此,腾讯内部开始有意统一微服务基础设施框架,北极星(Polaris Mesh)就是其中之一。“北极星”着力于打造公司标准化的服务发现和治理方案,帮助业务提升研发效率和运营质量。 76 | 77 | 9 月 8 日,腾讯云面向所有开发者,正式宣布开源北极星,开放了应用在大规模生产环境中的源代码,推进以微服务为核心的开源生态建设,并希望帮助业界更好地进行分布式或者微服务架构转型。 78 | 79 | 4、[云战略现状调查: 欢迎来到多云时代!](https://my.oschina.net/u/5121740/blog/5253230) 80 | 81 | 5、[Amazon Elasticsearch Service 更名为 Amazon OpenSearch Service](https://www.oschina.net/news/159534/amazon-elasticsearch-service-is-now-amazon-opensearch-service) 82 | 83 | Elastic 公司改变开源协议之后,Aws 对于其反击的后续。 84 | 85 | 6、[Apache Doris 声明 | 你们想知道的一切,都在这里了。](https://zhuanlan.zhihu.com/p/408644772) 86 | 87 | 由`Apache Doris`而来的,关于真假开源的一段“爱恨情仇”。 88 | 89 | 由此引发的热烈讨论,可以看看[如何评价 StarRocks 开源?](https://www.zhihu.com/question/485718919)和[对 StarRocks 真假开源之争的灵魂九问](https://zhuanlan.zhihu.com/p/408727834) 90 | 91 | 7、[字节跳动开源微服务中间件 CloudWeGo](https://zhuanlan.zhihu.com/p/408262736) 92 | 93 | 8、[开源八年后转向闭源,LiveCode:付出与回报不对等](https://www.oschina.net/news/159216/livecode-closed-source) 94 | 95 | 开源事业唯有和商业机会联系在一起,才容易做大做强。 96 | 97 | 9、[开源背后的那几个人](https://gitee.com/oschina/gotc-open-source-gallery/blob/master/%E7%AC%AC%E4%BA%8C%E9%83%A8%E5%88%86%EF%BC%9A%E5%9B%BD%E9%99%85%E5%BC%80%E6%BA%90%E8%B6%8B%E5%8A%BF/%E7%AC%AC5%E9%83%A8%E5%88%86-%E5%BC%80%E6%BA%90%E9%A2%86%E5%9F%9F%E4%BB%A3%E8%A1%A8%E4%BA%BA%E7%89%A9.md?from=wx-oschina) 98 | 99 | ## 开源项目 100 | 101 | > 笔者比较熟悉 Go 语言技术栈,对于其他的开发语言不甚了解,因此推荐的项目大多与 Go 语言相关,如果你发现比较优秀的项目或者愿意分享自己的项目,欢迎 issue。 102 | 103 | 1、[cli](https://github.com/cli/cli),让开发者通过命令行对 GitHub 进行无缝的协同工作,即在命令行终端上就可以进行 pull requests、issues 等功能。 104 | 105 | ![](https://image-static.segmentfault.com/389/014/3890142203-613d6e5a733b4_fix732) 106 | 107 | 下面举一些常用的功能。 108 | 109 | ```sh 110 | # 查看issue列表 111 | gh issue list 112 | 113 | # 切换分支 114 | gh pr checkout 115 | 116 | # 发布版本 117 | gh release create 118 | 119 | # 快速查看详情 120 | gh issue view 152 121 | 122 | # 创建PR 123 | gh pr create 124 | 125 | # 状态查看 126 | gh pr status 127 | ``` 128 | 129 | ![](https://image-static.segmentfault.com/427/799/4277991228-613d6eb55ad1e_fix732) 130 | 131 | github 上的 star 变化情况, 132 | 133 | ![](https://image-static.segmentfault.com/723/537/723537322-613d70ad4eaba_fix732) 134 | 135 | 2、[go-ethereum](https://github.com/ethereum/go-ethereum),以太坊协议的官方实现(Go 语言版)。 136 | 137 | 3、[gitbatch](https://github.com/isacikgoz/gitbatch),批量管理 Git 仓库的命令行工具。 138 | 139 | ![](https://image-static.segmentfault.com/119/498/1194989076-5cad69e71e179) 140 | 141 | 4、[cds](https://github.com/ovh/cds),企业级的持续交互和 DevOps 自动化开源平台。 142 | 143 | ![](https://image-static.segmentfault.com/205/620/2056204731-613d9f220a24d) 144 | 145 | ![](https://image-static.segmentfault.com/723/537/723537322-613d70ad4eaba_fix732) 146 | 147 | 5、[1m-go-websockets](https://github.com/eranyanay/1m-go-websockets),纯 Go 编写的服务器,用不到 1GB 的内存来支持 100 多万个 websocket 连接。 148 | 149 | ![](https://image-static.segmentfault.com/251/714/2517142875-613da13948cc5_fix732) 150 | 151 | ## 开源书籍 152 | 153 | 1、[《以奋斗者为本:华为公司人力资源管理纲要》](https://item.jd.com/1363024643.html)。 154 | 155 | _这是本周读完的唯一的一本书。_ 156 | 157 | 说华为是一家世界级的高科技公司,想必没有人反对吧。那么华为是通过什么方式将公司十几万人组合起来,统一思想、统一目标,为客户创造价值的呢;华为今日的成功是否会为将来带来更大的成功呢;在这本书中我们能够找到答案。这本书讲述了华为的人力资源管理文化,文字大多是从历次的演讲中摘抄而来,通过按照时间分类整理,帮助读者能够系统的感受华为的独特的企业文化。 158 | 159 | 在阅读的过程中,最大的感受就是提及的文化都是那么简单和朴实,深刻感知卓越的公司伟大的地方在于无差别的贯彻。 160 | 161 | ## 订阅 162 | 163 | - [开源早读课周刊(第 6 期):苹果的开源差强人意](https://github.com/hapiman/weekly/blob/main/006.md) 164 | - [开源早读课周刊(第 7 期):亚马逊的开源“合作共赢”](https://github.com/hapiman/weekly/blob/main/007.md) 165 | 166 | 这个周刊每周五发布,微信搜索 **大漠胡萝卜** 或者扫描二维码,即可订阅。 167 | 168 | ![](https://pic1.zhimg.com/80/v2-3f4a18e9ed7be804777475106db4f205_1440w.png) 169 | 170 | (完) 171 | -------------------------------------------------------------------------------- /009.md: -------------------------------------------------------------------------------- 1 | # 开源早读课周刊(第 9 期):腾讯的开源稳步推进 2 | 3 | 这里记录每周值得分享的开源内容,周五发布。 4 | 5 | 本杂志开源(GitHub: [hapiman/weekly](https://github.com/hapiman/weekly)),欢迎提交 issue,投稿或推荐你的项目。 6 | 7 | ![](https://pic2.zhimg.com/80/v2-9dd3f042a7e99dae38368dff452ab02d_1440w.png) 8 | 9 | 封面图:室内大规模无线充电系统。 10 | 11 | ## 刊首语 12 | 13 | **说一说无线充电。** 14 | 15 | 无线充电是未来的趋势,从现今的手机厂商的旗舰机型都支持无线充电可以看出来。 16 | 17 | 但是,如今的解决方案似乎和我们想象的完全不一样,所谓的无线充电却依然要放到某个设备边缘才能够实现,只不过去掉“插拔”的字眼。 18 | 19 | 无线充电本应当是无时无刻,身处其中,皆可充电。 20 | 21 | 那么当前的技术是否能够实现这种诉求呢,如果不能,那么技术的瓶颈又是什么呢? 22 | 23 | 8 月 30 号,日本东京大学在《自然·电子学》期刊发表了一项研究。 24 | 25 | 研究人员首次实现了在一个房间里无死角、全覆盖的无线充电效果,充电功率可以达到 50W 左右。房间里的手机、台灯、风扇等,都可以通过远距离无线充电来正常工作,就好像 Wi-Fi 覆盖后就可以无线上网一样。 26 | 27 | 远距离无线充电技术,有两个比较热门的技术流派。 28 | 29 | - “探照灯”派 30 | 31 | 其基本原理和我们手机接收信号的实现原理一样,通过在手机里面安装一种类似天线的装置来把电磁波的能量接受下来。 32 | 33 | 采用这种技术的无线充电器,本质上是一个电池波探照灯,通过随时追踪你手机的位置,来把电磁波束精确的投射到上面,同时还要注意避免照射到有人的区域。因为这种电磁波的能量很高,对于人体健康可能会有风险。 34 | 35 | - “不倒翁”派 36 | 37 | 其基本原理是在一个比较大的空间内,产生特定频率振动的磁场,然后让被充电的设备和这个频率产生共振来获得电能。 38 | 39 | 举个例子,就好像桌子上放着一个不倒翁,只要用合适的频率摇动桌面,这个不倒翁就会逐渐剧烈晃动起来,获得你的手传递过去的能量。 40 | 41 | 这次东京大学的论文就是属于这个“不倒翁”流派。 42 | 43 | 这种方式有三个优点。 44 | 45 | 第一、可以实现大范围覆盖,不需要像“探照灯”模式一样,需要随时知道手机的位置。 46 | 47 | 第二、充电效率比较高,在东京大学这项研究中能够实现 50%以上充电效率。 48 | 49 | 第三、磁场比电磁波安全。 50 | 51 | 令人抓狂的是,这种方式也有两个明显的缺点。 52 | 53 | 第一、需要对房间做比较明显的改造,使用铝板把房间彻底给包裹起来,成本高昂。 54 | 55 | 第二、对于充电设备的摆放有要求,只有与磁场正交的情况下才能高效充电。 56 | 57 | 因此目前两种方式都具备硬伤,要想实现真正的无线充电,还需要在电磁学方面有原理性突破才行,期待那一天的早点到来。 58 | 59 | [论文地址](https://www.nature.com/articles/s41928-021-00636-3) 60 | 61 | > 关于开源实在是有太多的问题了。 62 | > 63 | > 开源如何赚钱,开源的运作模式,开源的历史,开源项目如何估值,开源项目如何协作,各个国家开源情况,各个公司的开源,知名项目的开源情况,怎么做好开源,开源对于社会影响等等。 64 | > 65 | > **本周刊就聚焦解决这些问题,希望在开源世界贡献力量。** 66 | > 67 | > 在前期,主要是推荐每周找到的一些精彩的文章,我会尽量少做评论,避免因为自己认知的不到位,误导大家。 68 | 69 | **OK,下面是本周的开源分享,Enjoy。** 70 | 71 | ## 开源杂谈 72 | 73 | **1、关于腾讯的开源:代码传递思想,技术创造回响** 74 | 75 | 说到腾讯的开源,和阿里一样,必须要提到 2019 年。 76 | 77 | 在 2019 年,腾讯统一了思想,自上而下开始重视了开源在腾讯技术战略中地位,明确了开源对于腾讯的重要意义,最明显的标志就是马化腾公开为开源站台,强调开源的对于腾讯公司,对于行业技术发展的重要性。 78 | 79 | > “腾讯希望在科研领域投入更多力量,把‘科技向善’纳入公司新的使命与愿景。我们将通过内外部开放源代码等方式,积极参与‘全球科技共同体’的共建。”。 80 | 81 | 在这之前,腾讯已经在 GitHub 上放出了 82 个项目,覆盖微信、腾讯云、腾讯游戏、腾讯 AI、腾讯安全等相关领域。 82 | 83 | 在这之后,腾讯的开源进入到了快车道,多个业务线上开源项目接连不断的推出,包括云原生、大数据、AI、微服务治理等,同时踊跃的加入顶级开源基金会,积极赞助,成为级别最高的会员。 84 | 85 | 至今,“自上而下”与“自下而上”相结合,成了腾讯开源的新思路,在内部协同共建的基础上,推送更底层、更重磅的技术对外开放。 86 | 87 | 在这儿回顾一下整个腾讯的开源流程。 88 | 89 | 2010 年,腾讯战略思路发生重大改变,由相对封闭走向了开放合作,提出了 “拥抱开放“的战略,从内部代码的复用开始,内外部开源逐渐结合,形成腾讯自己的代码文化以及开源策略。 90 | 91 | 2011 年,腾讯在内部提倡以公共组件的形式共享和复用代码。 92 | 93 | 2012 年,腾讯尝试发布了第一个对外开源项目。 94 | 95 | 2013 年,腾讯鼓励和推进内、外部开源落地执行。 96 | 97 | 2014 年,开源变得流程化:制定和发布了腾讯的开源策略和具体流程,并发布第一批的 6 个官方开源项目。 98 | 99 | 2015 年,腾讯成立腾讯开源联盟(TOSA)后,腾讯开源就进入了快节奏的时代,仅一年时间就开源了 20 个高质量的项目。 100 | 101 | 2016 年,腾讯开始以 Github 为主要阵地经营开源项目,让更多人能够更快了解到腾讯的开源项目; 102 | 103 | 2018 年,腾讯调整组织架构,随着腾讯技术委员会和腾讯对外开源管理办公室成立,腾讯加强了与行业顶级开源基金会的合作,逐步形成了有腾讯特色的“自下而上”和“自上而下”相结合的开源路线,提出了开源协同的概念。 104 | 105 | 2019 年,腾讯在公司层面成立了技术委员会,“开源协同”成为腾讯技术发展的核心战略。通过开源协同,腾讯将各个事业群最底层和共性的技术能力进行梳理和拉通,同时也形成了对于优质项目的甄选机制,不仅在公司层面推广复用,同时对外贡献整个开源社区。 106 | 107 | 2020 年,腾讯捐赠给 Linux 基金会的开源项目 TARS 成立单独的 TARS 基金会,这是首个起源于中国开源项目的国际开源基金会,是 Linux 基金会下唯一聚焦微服务技术生态的子基金会。 108 | 109 | 经过十余年的实践和探索,腾讯已经形成了**代码开源协同作基础**,**产品社区商业促进步**,**打通内外开源‘双循环’**”的开源战略模式。 110 | 111 | (1)[官方网站](https://opensource.tencent.com/),官网上的项目没有更新,似乎腾讯内部对于开源的步调未能达成一致,如果有内部知情人士可以给我讲讲。 112 | 113 | (2)[腾讯开源项目](https://github.com/Tencent),希望了解更多的朋友可以看看[腾讯开源十年历程](https://cn.chinadaily.com.cn/a/202012/21/WS5fe013c8a3101e7ce97365cf.html)。 114 | 115 | 2、[开源治理:企业采用开源的激进与保守](https://opensourceway.community/posts/opensource_enterprise_guide/the-art-of-balance-for-adopt-open-source/) 116 | 117 | 很多企业调查都说开源软件占据了他们技术栈,超过 75%的份额,那么这些企业是如何评估、采购、维护的了呢?和过去几十年的专有软件的模式有什么区别?是真的节省了成本,还是增加了开销?管理的难度到底如何?其实答案本身不重要的,重要的是开源,让企业当一件事情的去处理,再也不能无视其存在了。 118 | 119 | 3、[得开发者得天下 ———— 开发者是如何征服世界的](https://opensourceway.community/posts/paper_or_book_reading/the_new_kingmaker_review/) 120 | 121 | 现代的世界是由开发者所塑造,这个论断是否言过其实?取决于你对世界的感受,以及有多大的同理心去感受这个世界!请尝试将自己设身处地的想象为一名普通人在现代世界的生存状态,来体验一下开发者所打造的世界:功利、工程、科学、人性、美学。 122 | 123 | 4、[腾讯云虚拟化资深研发专家李万鹏的 9 年开源之路分享](https://cloud.tencent.com/developer/article/1879301) 124 | 125 | ![](https://image-static.segmentfault.com/192/766/1927669153-61488e20db0a2_fix732) 126 | 127 | 回望这 9 年在内核世界攀登的过程,李万鹏给自己总结了 12 字真经——“热爱技术、学会欣赏、追求卓越”。 128 | 129 | 5、[Envoy 代理开源五周年,创始人 Matt Klein 亲述开源心路历程及经验教训](https://cloud.tencent.com/developer/article/1879299) 130 | 131 | 他在 Twitter 因为自己的程序 bug 造成重大事故而离职,后加入 Lyft,在开源 Envoy 之前几乎没有贡献和管理开源项目的经验,这篇文章分享了他个人及 Envoy 开源的心路历程,在投身开源 Envoy 还是为雇主 Lyft 效命,该如何抉择?看完本文,相信对于开源项目的维护者、创业者及投资人都会大有收获。 132 | 133 | ## 开源项目 134 | 135 | > 笔者比较熟悉 Go 语言技术栈,对于其他的开发语言不甚了解,因此推荐的项目大多与 Go 语言相关,如果你发现比较优秀的项目或者愿意分享自己的项目,欢迎 issue。 136 | 137 | 1、[ent](https://github.com/ent/ent),一个简单而又功能强大的 Go 语言的实体框架,易于构建和维护应用程序与大数据模型。 138 | 139 | 具备 140 | 141 | - **图就是代码** - 将任何数据库表建模为 Go 对象。 142 | - **轻松地遍历任何图形** - 可以轻松地运行查询、聚合和遍历任何图形结构。 143 | - **静态类型和显式 API** - 使用代码生成静态类型和显式 API,查询数据更加便捷。 144 | - **多存储驱动程序** - 支持 MySQL, PostgreSQL, SQLite 和 Gremlin。 145 | - **可扩展** - 简单地扩展和使用 Go 模板自定义。 146 | 147 | ![](https://image-static.segmentfault.com/464/677/464677940-6147fc5148d62_fix732) 148 | 149 | 2、[go-micro](https://github.com/asim/go-micro),分布式微服务开发框架。 150 | 151 | `go-micro`框架提供了微服务开发最基本的核心功能,包括 RPC 通信和事件驱动通信等,各组件都是可插拔、可替换,便于私人订制。 152 | 153 | ![](https://cdn.learnku.com/uploads/images/202007/16/21588/qSVcpdiQRL.png!large) 154 | 155 | 3、[go-zero](https://github.com/zeromicro/go-zero)是一个集成了各种工程实践的 web 和 rpc 框架。通过弹性设计保障了大并发服务端的稳定性,经受了充分的实战检验。 156 | 157 | go-zero 包含极简的 API 定义和生成工具 goctl,可以根据定义的 api 文件一键生成 Go, iOS, Android, Kotlin, Dart, TypeScript, JavaScript 代码,并可直接运行。 158 | 159 | 使用 go-zero 的好处: 160 | 161 | - 轻松获得支撑千万日活服务的稳定性 162 | - 内建级联超时控制、限流、自适应熔断、自适应降载等微服务治理能力,无需配置和额外代码 163 | - 微服务治理中间件可无缝集成到其它现有框架使用 164 | - 极简的 API 描述,一键生成各端代码 165 | - 自动校验客户端请求参数合法性 166 | - 大量微服务治理和并发工具包 167 | 168 | ![](https://image-static.segmentfault.com/414/540/4145401119-6148021570bd8_fix732) 169 | 170 | ![](https://raw.githubusercontent.com/tal-tech/zero-doc/main/doc/images/resilience-en.png) 171 | 172 | 4、[httpstat](https://github.com/davecheney/httpstat),类似颜色的`curl -v`,看下图就懂。 173 | 174 | ![](https://image-static.segmentfault.com/325/168/3251686665-614805e4ea047_fix732) 175 | 176 | 5、[ants](https://github.com/panjf2000/ants)是一个高性能的 goroutine 池,实现了对大规模 goroutine 的调度管理、goroutine 复用,允许使用者在开发并发程序的时候限制 goroutine 数量,复用资源,达到更高效执行任务的效果。 177 | 178 | - 自动调度海量的 goroutines,复用 goroutines 179 | - 定期清理过期的 goroutines,进一步节省资源 180 | - 提供了大量有用的接口:任务提交、获取运行中的 goroutine 数量、动态调整 Pool 大小、释放 Pool、重启 Pool 181 | - 优雅处理 panic,防止程序崩溃 182 | - 资源复用,极大节省内存使用量;在大规模批量并发任务场景下比原生 goroutine 并发具有更高的性能 183 | - 非阻塞机制 184 | 185 | `ants`的工作流程图: 186 | 187 | ![](https://pica.zhimg.com/80/v2-47d79008d32c71ec23566d44e2efed23_1440w.png) 188 | 189 | ## 开源书籍 190 | 191 | 1、[《计算机简史(第三版)》](https://item.jd.com/12648965.html)。 192 | 193 | **这是本周读完的唯一的一本书。** 194 | 195 | 能够从人文的角度来陈述计算机发展史不多,《计算机简史》是其中值得阅读的一本。 196 | 197 | 该书简明完整、信息全面、引人入胜,描述了影响人类生活的信息革命。 198 | 199 | 了解历史,才能知道自己的位置,在历史的回顾中,我们才能够立足现在,看到未来科技发展的方向。 200 | 201 | ## 订阅 202 | 203 | - [开源早读课周刊(第 7 期):亚马逊的开源“合作共赢”](https://github.com/hapiman/weekly/blob/main/007.md) 204 | - [开源早读课周刊(第 8 期):阿里巴巴的如火如荼](https://github.com/hapiman/weekly/blob/main/008.md) 205 | 206 | 这个周刊每周五发布,微信搜索 **大漠胡萝卜** 或者扫描二维码,即可订阅。 207 | 208 | ![](https://pic1.zhimg.com/80/v2-3f4a18e9ed7be804777475106db4f205_1440w.png) 209 | 210 | (完) 211 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # 开源早读课周刊 2 | 3 | - [开源早读课周刊:第 1 期](https://github.com/hapiman/weekly/blob/main/001.md) 4 | - [开源早读课周刊:第 2 期](https://github.com/hapiman/weekly/blob/main/002.md) 5 | - [开源早读课周刊:第 3 期](https://github.com/hapiman/weekly/blob/main/003.md) 6 | - [开源早读课周刊(第 4 期):微软的开源方兴未艾](https://github.com/hapiman/weekly/blob/main/004.md) 7 | - [开源早读课周刊(第 5 期):Facebook 的开源欣欣向荣](https://github.com/hapiman/weekly/blob/main/005.md) 8 | - [开源早读课周刊(第 6 期):苹果的开源差强人意](https://github.com/hapiman/weekly/blob/main/006.md) 9 | - [开源早读课周刊(第 7 期):亚马逊的开源“合作共赢”](https://github.com/hapiman/weekly/blob/main/007.md) 10 | - [开源早读课周刊(第 8 期):阿里巴巴的开源国内领先](https://github.com/hapiman/weekly/blob/main/008.md) 11 | - [开源早读课周刊(第 9 期):腾讯的开源稳步推进](https://github.com/hapiman/weekly/blob/main/009.md) 12 | 13 | 这个周刊每周五发布,微信搜索 **大漠胡萝卜** 或者扫描二维码,即可订阅。 14 | 15 | ![](https://pic1.zhimg.com/80/v2-3f4a18e9ed7be804777475106db4f205_1440w.png) 16 | -------------------------------------------------------------------------------- /books/【黑客:计算机革命的英雄(25周年纪念版)】Steven Levy.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hapiman/weekly/b6406a8113147fd197e212e6e558ee61cff68bdb/books/【黑客:计算机革命的英雄(25周年纪念版)】Steven Levy.pdf -------------------------------------------------------------------------------- /projects/Google.md: -------------------------------------------------------------------------------- 1 | ## 开源移动操作系统 Anroid 2 | 世界最流行的操作系统,市场占有量甚至超过了Windows。 成功很大程度来源Android操作系统相比竞争对手采用了开源的策略,使得手机制造商能够大量生产基于Android操作系统的手机。 3 | 4 | [https://source.android.com](https://source.android.com) 5 | 6 | ## 开源浏览器 Chromium 7 | 8 | Chromium是Chrome的开源版本,几乎所有的浏览器新特性都会首先出现在Chromium上再逐步往Chrome“下放”。由于Chromium的开源属性,几乎所有的国产浏览器里都有着Chromium的开源代码。 9 | 10 | [https://www.chromium.org/](https://www.chromium.org/) 11 | 12 | ## 容器集群管理系统 Kubernetes 13 | Kubernetes 是来自 Google 云平台的开源容器集群管理系统。基于 Docker 构建一个容器的调度服务。该系统可以自动在一个容器集群中选择一个工作容器供使用。其核心概念是 Container Pod。 14 | 15 | [https://github.com/kubernetes/kubernetes](https://github.com/kubernetes/kubernetes) 16 | 17 | ## 开源编程语言 Go 18 | 19 | 发布于2007年的编程语言。Go尝试成为一种在保留住灵活性和性能的同时最大程度去除C系编程语言复杂度的新系统语言。虽然社区里一直有对Go特性不足的抱怨,但创始人坚决认为这对保持这一语言的成功是必不可少的。Go语言的适用场景组件从云计算扩展到区块链,微服务,AI等领域。 20 | 21 | [https://github.com/golang/go](https://github.com/golang/go) 22 | 23 | ## 开源编程语言 Dart 24 | Dart着力于Web应用,移动App和物联网设备。和Go不同,Dart不是一种编译型语言。它和Python或Java一样运行在自己的虚拟机之上,但也能转换成JavaScript放入浏览器中运行。 25 | 26 | [https://github.com/dart-lang/sdk](https://github.com/dart-lang/sdk) 27 | 28 | ## AI和机器学习 TensorFlow 29 | TensorFlow是Google开源的用于机器学习库。用于构建和训练神经网络,编写AI程序。横扫人类围棋高手的Google AI程序,就是基于TensorFlow编写的。TensorFlow可以运行在CPU,也可以运行在GPU之上。 30 | 31 | [https://github.com/tensorflow/tensorflow](https://github.com/tensorflow/tensorflow) 32 | 33 | ## 模块化深度学习系统 Tensor2Tensor 34 | 35 | Tensor2Tensor 是一个模块化和可扩展的库和二进制文件,能够帮助人们为各种机器学习程序创建最先进的模型,可应用于多个领域,如翻译、语法分析、图像信息描述等,大大提高了研究和开发的速度。 36 | 37 | [https://github.com/tensorflow/tensor2tensor](https://github.com/tensorflow/tensor2tensor) 38 | 39 | 40 | ## istio 41 | 42 | Istio是一个由谷歌、IBM 与 Lyft 共同开发的开源项目,旨在提供一种统一化的微服务连接、安全保障、管理与监控方式。Istio 项目能够为微服务架构提供流量管理机制,同时亦为其它增值功能(包括安全性、监控、路由、连接管理与策略等)创造了基础。这款软件利用久经考验的 Lyft Envoy 代理进行构建,可在无需对应用程序代码作出任何发动的前提下实现可视性与控制能力。 43 | 44 | [https://github.com/istio/istio](https://github.com/istio/istio) 45 | 46 | ## material-design-icons 47 | Google 开源了Material Design系统图标包其中的750个字形,包含常用的图标,如用于媒体播放、通讯、内容编辑、连接等等。在 Web 应用,安卓和 iOS 设计均适用。 48 | 49 | [https://github.com/google/material-design-icons](https://github.com/google/material-design-icons) 50 | 51 | [icons](https://fonts.google.com/icons) 52 | 53 | [material design guidelines](https://material.io/design) 54 | 55 | ## 前端开发工具组 MDL 56 | MDL (Material Design Lite) 是 Google 推出的网站前端开发工具组。Material Design Lite (MDL)可以让你添加一个 Material Design 的外观和感觉到你的静态内容网站不依赖于任何的Java框架和库。MDL可以优化跨设备的使用体验,可以在旧版的浏览器进行平滑的切换,提供非常快速的访问体验。 57 | 58 | [https://github.com/google/material-design-lite](https://github.com/google/material-design-lite) 59 | 60 | ## Web前端框架 Angular 61 | Angular是一款十分流行且好用的 Web 前端框架,目前由 Google 维护。官方已将 Angular 2 和之前的版本 Angular.js 分开维护(两者的 GitHub 地址和项目主页皆不相同)。渐进式 Web 应用,借助现代化 Web 平台的力量,交付 app 式体验。高性能、离线化、零安装。 62 | 63 | ## 数据描述语言 protobuf 64 | Protocol Buffers (ProtocolBuffer/ protobuf )是 Google 公司开发的一种数据描述语言,用于将结构化数据序列化,可用于数据存储、通信协议等方面。 65 | 66 | ## Java 常用库 Guava 67 | 该项目是 Google 的一个开源项目,包含许多 Google 核心的 Java 常用库。 68 | 69 | ## Spark 70 | Spark 是谷歌公司推出的一款基于 Chrome 浏览器的开发环境。提供一组可重用的UI组件。采用Dart开发。 71 | 72 | ## RPC框架 GRPC 73 | GRPC是一个高性能、开源和通用的 RPC 框架,面向移动和 HTTP/2 设计。目前提供 C、Java 和 Go 语言版本,分别是:grpc, grpc-java, grpc-go. 其中 C 版本支持 C, C++, Node.js, Python, Ruby, Objective-C, PHP 和 C# 支持 .GRPC 基于 HTTP/2 标准设计,带来诸如双向流、流控、头部压缩、单 TCP 连接上的多复用请求等特。这些特性使得其在移动设备上表现更好,更省电和节省空间占用。 74 | 75 | ## 高质量压缩图片算法工具 Guetzli 76 | Guetzli,是一个针对数码图像和网页图像的 JPEG 编码器,能够通过产生更小的 JPEG 文件来达到更快的在线体验,并且同时保持与当前浏览器,图像处理应用和 JPEG 标准的兼容性。Google 称 Guetzli 创建高质量的 JPEG 图像文件的大小比当前的压缩方法要再小 35%。上图为 16×16 像素样本,是挂在蓝天下的一根电话线,传统 JPEG 算法经常会遇到的失真状况。左边是未压缩的原图,中间为较小尺寸的 libjpeg,右边是失真更少的 Guetzli 。 77 | 78 | ## Google JS Test 79 | Google JS Test是一个运行于V8 JavaScript引擎下的Javascript单元测试框架,其在Google内部负责对Chrome的快速JS执行速度进行测试。 80 | 81 | 82 | ## k/v数据库 Leveldb 83 | Leveldb是一个google实现的非常高效的kv数据库,目前的版本 1.2 能够支持 billion 级别的数据量了。 在这个数量级别下还有着非常高的性能,主要归功于它的良好的设计,特别是 LSM 算法。 84 | 85 | ## 自动化网络审查工具 Lighthouse 86 | Lighthouse 是一个开源的自动化工具,用于改进网络应用的质量。 可以将其作为一个 Chrome 扩展程序运行,或从命令行运行。 当为 Lighthouse 提供一个要审查的网址,它将针对此页面运行一连串的测试,然后生成一个有关页面性能的报告。可以参考失败的测试,看看可以采取哪些措施来改进应用。 87 | 88 | ## Gson 89 | Gson 是Google提供的用来在Java对象和JSON数据之间进行映射的Java类库。可以将一个JSON字符串转成一个Java对象,或者反过来。 90 | 91 | ## 最小系统加载工具 systemjs 92 | systemjs 是一个最小系统加载工具,用来创建插件来处理可替代的场景加载过程,包括加载 CSS 场景和图片,主要运行在浏览器和 NodeJS 中。它是 ES6 浏览器加载程序的的扩展,将应用在本地浏览器中。通常创建的插件名称是模块本身,要是没有特意指定用途,则默认插件名是模块的扩展名称。 93 | 94 | ## 序列化库 FlatBuffers 95 | FlatBuffers 是一个Java的序列化库,用于游戏和其他内存受限的应用。FlatBuffers可以让你直接访问序列化后的数据,无需解压并进行解析的过程。同时提供很强的向前和向后兼容性。FlatBuffers 支持 C++ 和 Java 语言,无需依赖第三方库支持。 96 | 97 | ## 文本编辑器 Xi Editor 98 | Xi Editor 是 Google 开源的一款用 Rust 语言编写的文本编辑器,最初是为 Mac OS X 构建的,使用 Cocoa 作为用户界面,已有计划适配其它平台。所有编辑操作都可以在 16ms 之内提交并处理。文本绘制使用最好的技术(如 Mac 上的 Core Text,Windows 上的 DirectWrite 等),并完全支持 Unicode。 99 | 100 | ## Grumpy 101 | Grumpy 是一个 Python to Go 源代码翻译编译器和运行时,旨在替代 CPython 2.7。 关键的区别是它将 Python 源代码编译为 Go 源代码,然后将其编译为本机代码,而不是字节码。这意味着 Grumpy 没有 VM。编译的 Go 源代码是对 Grumpy 运行时的一系列调用,Go 库服务与 Python C API 类似的目的(尽管不直接支持 C API)。 102 | 103 | ## Java编译器 Traceur 104 | Traceur 是一个来自 Google 的 Java 编译器,通过它可以体验一些很新并且有趣的 Java 语言特性,这些多数是还没有被当前浏览器实现的 ECMA 标准或草案,比如:数组比较、类、模块、迭代器、方法参数默认值、Promise 等。 105 | 106 | ## 媒体播放器 ExoPlayer 107 | ExoPlayer 是 Android 上一个应用级的媒体播放器。它为 Android MediaPlayer 的 API 在播放本地或在线的视频与音频上提供了一个候选。ExoPlayer 支持一些 Android MediaPlayer API 无法提供的特性,包括 DASH 和 SmoothStreaming 自适应回放,持久的高速缓存和自定义渲染器。不像 MediaPlayer API,EXOPlayer 很容易定制和扩展,而且它可以通过 Play Store 更新升级。 108 | 109 | ## 代码构建工具 Bazel 110 | Bazel 是 Google 的一款可再生的代码构建工具。它主要是用于构建 Google 的软件,处理出现在谷歌的开发环境的构建问题,比如说:大规模数据构建问题,共享代码库问题,从源代码构建的软件的相关问题。支持多种语言并且跨平台,还支持自动化测试和部署、具有再现性(Reproducibility)和规模化等特征。 111 | 112 | ## 创作艺术和谱写曲子的机器智能 magenta 113 | Google Brain 团队的一组研究人员发布了一个项目 Project Magenta,其主要目标是利用机器学习创作艺术和谱写曲子。Project Magenta 使用了 TensorFlow 系统,研究人员在 GitHub 上开源了他们的模型和工具。 114 | 115 | ## 自动生成命令行界面的内容库 Python Fire 116 | Python Fire 是 Google 开源的一个可从任何 Python 代码自动生成命令行接口(CLI)的库。Python Fire 是一种在 Python 中创建 CLI 的简单方法;是开发和调试 Python 代码的有用工具;能够使 Bash 和 Python 之间的转换更为容易;并且通过使用你需要导入和创建的模块和变量来设置 REPL,使得使用 Python REPL 更容易。 117 | 118 | ## 软硬件框架 AnyPixel.js 119 | AnyPixel.js 是 Google 开源的一个软件和硬件框架,可以用来构建各种由“像素”构成的展示,每个像素可以是任何一种可交互的实体对象,如 LED 灯、气球等。 120 | 121 | ## 物联网工具 Physical Web 122 | Physical Web 是由 Chrome 团队主导的一个项目, 意在用 URL 连接世界, 方便用户接受数据。在 Web 世界中,各种 URL 可以说是链接的基础,也是去中心化的,所以“The Physical Web”要做的就是让每个智能设备用 URL 来标识自己,然后用户按照自己的需要通过 URL 和设备进行交互。这样一来,你使用智能设备的体验就和在网站上使用各种超链接差不多了。 123 | 124 | ## Docker容器性能分析工具 cAdvisor 125 | Advisor 是谷歌公司用来分析运行中的 Docker 容器的资源占用以及性能特性的工具。cAdvisor 是一个运行中的守护进程用来收集、聚合、处理和导出运行容器相关的信息,每个容器保持独立的参数、历史资源使用情况和完整的资源使用数据。当前支持 lmctfy 容器和 Docker 容器。 126 | 127 | ## C++单元测试工具 128 | Google 的开源 C++ 单元测试框架 Google Test,简称 gtest 是一个非常的不错单元测试框架。支持跨平台以及包括 Windows CE 和 Symbian 在内的一些手机操作系统。 129 | 130 | ## IndexedDB关系查询引擎 lovefield 131 | lovefield 是建立在 IndexedDB 上的关系查询引擎。它提供了类似 SQL 的语法,并且可以跨浏览器工作(目前支持 Chrome 37 及以上版本,Firefox 31 及以上版本,IE 10 及以上版本)。 132 | 133 | ## Java 生成器源代码集合 Auto 134 | Auto 是Java生成器源代码集合,Java有许多机械、重复、未经测试的代码,而且有时会出现一些微妙的Bug 。Auto项目是自动执行这些类型的任务的代码生成器的集合,他们可以无Bug创建你要编写的代码。 135 | 136 | ## Python 代码格式化的工具 137 | YAPF 是 Google 开发的一个用来格式化 Python 代码的工具。 138 | 139 | ## 基于TensorFlow的神经网络库 Sonnet 140 | Sonnet 库使用面向对象的方法,允许创建定义一些前向传导计算的模块。模块用一些输入 Tensor 调用,添加操作到图里并返回输出 Tensor。其中一种设计选择是通过在随后调用相同的模块时自动重用变量来确保变量分享被透明化处理。 该库兼容 Linux/Mac OS X 和 Python 2.7。TensorFlow 的版本必须至少为 1.0.1。Sonnet 支持 TensorFlow 的 virtualenv 安装模式,以及 nativ pip 安装。 141 | 142 | ## go-github 143 | Google对Github的开放API进行Go语言封装的一个项目。 144 | 145 | [https://github.com/google/go-github](https://github.com/google/go-github) --------------------------------------------------------------------------------