Midori博客系列翻译(0)——介绍

已经离开了足够长的时间,因此我觉得在博客中谈论以前在微软的“Midori”项目是安全的。在接下来的几个月里,我将发表十余篇文章,以涵盖这个项目最有趣的方面,以及我认为的主要教训。

Midori是一个研究/孵化项目,它的目标是在整个微软软件栈上的探索可能的创新。其涵盖了包括编程语言、编译器、操作系统及其服务、应用程序和整体编程模型在内的所有方面。在该项目中,我们侧重于对云计算、并发和安全的考虑。同时,该项目包含了新颖的“文化”方法——全员开发以及非常专注于代码,因此它看起来更像是今天微软的样子,以及对微软未来所期望的模样,而不是8年前项目开始时的微软。 我于2009年开始在Midori项目工作,直到2012至2014年期间,团队中的各个成员相继离开而去了各自新团队。在这期间,我带领团队专注于面向开发者的体验,这包括编程语言、编译器、核心框架、并发模型和IDE工具等,同时也写了不少的代码。

虽然起初我们从C#和.NET技术开始,但在离开时Midori最终走向了对安全性、可靠性和性能的追求。而现在,我正在帮助将Midori的许多经验教训带回到交付的产品中,这也包括可能会令人惊讶的C++。因此,我的大多数博客文章都将重点关注于那些我们正尝试用于改善现有其他产品的关键教训,例如,无处不在的异步、零拷贝I/O、对安全和性能不可调和性的消除、基于功能的(capability-based)安全、安全并发、建立关于技术的辩论文化等。

我得首先承认,于初大家都不知道Midori会怎么样发展,因为研究通常就是这样。而我最大的遗憾是,从一开始就没有将它开源,因为开源可以很好地使互联网的各类优秀开发者对其进行评判。与所有其他大公司一样,围绕Midori核心技术命运的决策并非完全由技术驱动,并且可悲的是,甚至不完全由业务所驱动,于此也有一些重要的教训。我的第二大遗憾是我们没有发表更多关于Midori的论文,但该系列博客可能有助于重新阐述其中的部分内容。

在我发布新文章时,也将同时更新此列表:

  1. 三类安全性的故事
  2. 对象即安全权能
  3. 一切皆异步
  4. 安全的原生代码
  5. 错误处理模型
  6. 性能文化
  7. 关于并发的15年

Midori是一段迷人的旅程,也是我职业生涯中迄今为止最有趣的事情,因此期待与您分享这一旅程。