惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

N
News and Events Feed by Topic
V
V2EX
博客园 - 【当耐特】
Vercel News
Vercel News
雷峰网
雷峰网
爱范儿
爱范儿
WordPress大学
WordPress大学
云风的 BLOG
云风的 BLOG
S
Securelist
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Microsoft Azure Blog
Microsoft Azure Blog
F
Full Disclosure
有赞技术团队
有赞技术团队
Hugging Face - Blog
Hugging Face - Blog
NISL@THU
NISL@THU
www.infosecurity-magazine.com
www.infosecurity-magazine.com
Attack and Defense Labs
Attack and Defense Labs
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Hacker News - Newest:
Hacker News - Newest: "LLM"
Microsoft Security Blog
Microsoft Security Blog
腾讯CDC
P
Proofpoint News Feed
B
Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
K
Kaspersky official blog
I
InfoQ
Google Online Security Blog
Google Online Security Blog
L
LINUX DO - 最新话题
Project Zero
Project Zero
Engineering at Meta
Engineering at Meta
V
Visual Studio Blog
AI
AI
Schneier on Security
Schneier on Security
B
Blog RSS Feed
T
Tor Project blog
H
Help Net Security
H
Hackread – Cybersecurity News, Data Breaches, AI and More
L
LINUX DO - 热门话题
阮一峰的网络日志
阮一峰的网络日志
S
Security @ Cisco Blogs
T
Threat Research - Cisco Blogs
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
C
Cyber Attacks, Cyber Crime and Cyber Security
G
Google Developers Blog
Google DeepMind News
Google DeepMind News
V2EX - 技术
V2EX - 技术
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
A
Arctic Wolf
Webroot Blog
Webroot Blog
Recent Commits to openclaw:main
Recent Commits to openclaw:main

胡涂说

当心流量别被 Agent 都吃了 当 AI 构建自己 阿嬷 ā mó Bun 要从 Zig 迁移到 Rust ? 好奇心周刊第25期: 如何让AI写好代码 好奇心周刊第24期: 关于AI编程的一些体会和设想 云何降伏其心 好奇心周刊第23期: Claude Code 氛围编程初体验 好奇心周刊第22期: 纳瓦尔谈人生 不确定性世界的生存策略 好奇心周刊第21期: 推理模型的构建与未来 好奇心周刊第20期: 从四个方面了解Palantir 周刊第19期: 一起学习 MCP 周刊第18期: 什么是理工科思维 周刊第17期: 如何构建智能体(Agent) 周刊第16期: Andrej Karpathy 讲 AI 读《毛泽东传》对个人的启发 周刊第15期:Nat Friedman 和 Derek Sivers 的自我介绍 周刊第14期:罗振宇和《罗辑思维》 我看《哪吒》 为什么写作? 心猿意马 从铁幕到硅幕 银弹飞过先锋大厦 从神经网络到 Hugging Face 在大理,听打雷 凡所有相,皆是虚妄 马斯克的故事与模式 纳瓦尔的智慧 当魔法消失时 人生无论怎么度过都像是浪费 我们都是新穷人 代码、法律和自由软件 乾隆的性格 当下我们还需要启蒙吗? 云门胡饼赵州茶 上海周末骑行:从浦东到外白渡桥 如何选择图书译本? No.13: 周刊的周刊 读书日,推荐些童话和小说 学习邓小平的智慧 自建博客 Nginx 基本配置 给博客换了套新评论系统 我所理解的存在主义 心经说了什么 觉悟之道就是活在当下 巨人的笔记 从零到百亿美金之路 人生如逆旅,我亦是行人 和自己非暴力沟通 听斯蒂芬·金谈写作 行不尽,行不尽,一路青山 周刊第12期:第一次十字军东征 周刊第11期:玄奘之路 周刊第十期:敦煌 周刊第九期:卡片盒笔记法 爸爸是最聪明的 Ruby 编程语言入门 影响人类命运的是什么? 周刊第八期:如何应对公开错误 周刊第七期:如何学习 周刊第六期 周刊第五期 只买书:一个失败的微信小程序产品 改变世界的一次代码提交 如何成为一名黑客 通往开源之路 空山不见人 如何做好演讲 “人生在世,永远也不该演戏作假” 周刊第四期 大卫四岁读的书 宇宙就是一个蛋 周刊第三期 周刊第二期 周刊开刊 阅读开源代码小技巧 重学C语言 英国随记 变成神的动物 人类伟大的时刻 最著名的黑客 《巨婴国》读后 若为自由故 买房记 答案在风中飘 陪产记 自由的代价 谈一谈英语学习 读《霍乱时期的爱情》 简洁 嵌套的梦 四月莎士比亚 七律三首 从明天起,做一个Scrum Master 不能承受的生命之轻 我是丽莎呀 爱美丽、黑暗王子和豌豆公主 诗歌与烟台
Git 纪元
胡涂说 · 2024-02-25 · via 胡涂说

19世纪末,弗雷德里克·泰勒在美国一些工厂推广他的科学管理方法,这包括用科学的方法来代替人工经验判断、对工人进行专业训练以及按专业分工。亨利·福特在他的汽车工厂里也开始应用泰勒科学管理,并且在汽车生产上创新性的采用了流水线作业。1908年,第一辆福特T型车从流水线上面世,而经过优化的流水线在几年后甚至可以达到93分钟内生产一部汽车,强大的生产效率让福特超过了其他所有汽车厂商生产能力的总和。福特的流水线生产很快被其他厂商所借鉴,也迅速普及到了其他工业领域。可以说,福特T型车流水线作业的发明开启了大规模工业生产的时代,人类的生产力得到了巨大的提升。从英国移居到美国的阿道司·赫胥黎对此深受启发,在他的带有科幻色彩的反乌托邦小说《美丽新世界》中,描写未来的人类“文明社会”,人们不再用公元纪年,也不信仰上帝,改尊亨利·福特为唯一的神,以福特为纪元,并以第一辆福特T型车流水线生产的1908年为福特元年。

福特发明的流水线作业是人类协作的巨大进步,它将不同工种的人以时序方式协同工作,将制造效率最大化。二战后,随着电子计算机的发明,一种新的工作诞生了,那就是软件编程。起初,编程是在打卡机上对纸片穿孔的工作方式,而后随着输入输出设备的演进以及编程语言的发明,软件编程才成为我们现在看到的这个样子。而那时候还没有所谓的软件公司,软件编程也是以小作坊的形式存在,直到IBM System/360项目的开发,该项目是真正意义上的第一款大规模软件项目,据说最多时有2000名工程师参与软件编写,而过程也一度极为混乱,负责该项目的弗雷德里克·布鲁克斯回忆时形容为“焦油坑”:一群长毛象被困在焦油坑中,约挣扎越动弹不得,他将项目经验总结成了软件工程史上的经典著作《人月神话》,而后就很少有这种超多人协同的软件开发项目了。

1984年,没有发生奥威尔所预言的世界变化,在IT界则发生了两件对未来影响深远的事。第一件是苹果第一代麦金塔电脑(Macintosh)发布,另一件则是理查德·斯托曼(RMS)创建了GNU项目。有趣的是这两件事情恰恰引导了软件行业的两个相反走向,而其主人公乔布斯和斯托曼也成了封闭生态和开放生态的代表,它们的理念完全冲突以至于后者斥责前者为邪恶的天才(malicious genius,参见《自由的代价》)。斯托曼还进一步创建了自由软件基金会(FSF),斯托曼对于自由软件原教旨主义的狂热以至于很多老战友都受不了,以埃里克·雷蒙德(ESR)为代表的一群人在1998年创立了开发源码促进会(OSI),以商业更友好的开源软件来取代意识形态更浓重的自由软件。而雷蒙德在研究了一系列软件项目开发后,发布了开源软件开发的经典著作《大教堂与集市》,在书中他阐述了两种开发模式,一种是自上而下构建的、集中式的、由专人或专属团队所管控的软件开发方式,这种雷蒙德称为大教堂模式;另一种则是自下而上构建的、分布式的、在互联网上分发传阅的开放的软件开发方式,雷蒙德称之为集市模式。集市模式开发的代表是Linux项目。

起初,操作系统主要是几家商业巨头闭源把持,如Windows、Mac、Unix,开源世界一片虚空。Linus说,要有操作系统,于是就有了Linux。起因是Linus大学放假期间在家无聊,就写了Linux玩玩并发布到了互联网新闻组,没想到在黑客圈里广受欢迎,Linus也将它无偿开放出来,并广泛接纳社区开发者的代码提交,到了2005年,估计有近一万人给Linux贡献过代码,Linux也成了开源社区最大的项目。这么大的一个软件项目一直没有一个协作工具来管理代码合入,直到Linus选用了一款叫BitKeeper的商业配置管理工具来管理源代码,但很快由于社区有人违反了使用条例被收回了免费使用权,Linus一怒之下就写了一款分布式配置管理工具——Git(参见《改变世界的一次代码提交》)。

Git的发明可以说是改变了软件行业协作的方式,对于开源软件乃至整个软件工业的协作效率的提升是革命性的。Git的分布式、灵活的分支能力使得全球化异步协作更为简单,而GitHub/GitLab引入的Fork+Pull Request/Merge Request机制更成为了软件协作开发的事实标准。更重要的是,Git时代的软件开发逐渐演化为契约化软件开发模式,大规模软件生产越来越普遍,软件开发从原来的手工作坊式的生产变成了搭积木式的工业装配生产,开源组件成为了软件工业的基石和砖块。我在2023年中国开源年会的议题分享上曾将Git时代的软件开发类比福特T型车的生产,软件世界以Git为纪元,以Git诞生的2005年为界,称之为Git元年。

After Git

2022年11月,一款叫ChatGPT的智能聊天软件发布,迅速火遍全球。因为人们发现,AI不仅只是在智力竞赛或者棋类游戏中发挥出色,也能在智力创作场景下有用武之地。人们第一次广泛的将AI用于生产力领域,以GPT为代表的大模型和生成式AI备受瞩目。未来GPT是否会成为主流不能肯定,但可以肯定的是我们正在迈入AI时代。AI时代的软件协作模式是什么?也许被誉为机器学习领域的GitHub的开源平台——Huggingface能够给我们一些启发。Huggingface使用Git和Git LFS技术来托管机器学习的两个重要资产——模型和数据集,在机器学习专家的眼里,Git仍然是最好的协作工具。Git纪元仍然适用,今年是AG (After Git) 20年。