从Source Depot到Git:微软Office的史诗级代码库迁移

2025-06-12
从Source Depot到Git:微软Office的史诗级代码库迁移

本文讲述了微软Office团队历时数年将庞大代码库从过时的Source Depot迁移到Git的传奇故事。迁移过程充满挑战,包括构建“平行宇宙”同步代码库、证明两个系统功能等效、以及与4000多名工程师的沟通协调。作者详细描述了迁移的各个阶段,包括克服Source Depot与Git之间差异、构建虚拟文件系统以优化性能、以及通过培训提高工程师的Git使用技能等。最终,迁移取得成功,极大地提升了开发效率和代码质量,也为大规模技术迁移提供了宝贵的经验教训。

阅读更多
开发

17岁程序员的第一次“无薪劳动”教训

2025-04-10
17岁程序员的第一次“无薪劳动”教训

2013年,17岁的作者在一家只有7个人的小公司工作,该公司主要为墨西哥的可再生能源项目开发复杂的Web表单。项目涉及复杂的业务规则、多阶段申请流程和大量的计算,作者参与了使用PHP DSL、jQuery和JavaScript的开发,这段经历让他接触到了元编程、早期前端调试工具Firebug和PhoneGap跨平台应用开发。然而,由于客户拖欠工资,作者最终选择了离开,并悟出了职业生涯中最重要的教训:无薪则无工。

阅读更多

从捣鼓电脑到成为软件工程师:我的30岁自省

2025-04-06
从捣鼓电脑到成为软件工程师:我的30岁自省

作者在30岁生日之际,回顾了12年来从对电脑充满好奇到成为软件工程师的历程。这篇文章是系列文章的第一部分,讲述了他如何通过不断尝试和探索,从拆解电脑、学习命令行、在论坛学习编程,到搭建Linux系统(过程中不断“搞砸”系统并从中学习),最后到用HTML和CSS制作Neopets商店的经历。作者强调了好奇心和探索精神,以及社区和论坛在学习过程中的重要作用,以及游戏化学习的有效性。

阅读更多
开发