Raph Levien:古老的新冒险

2020-12-17 05:13:36

休假真的很宝贵。我仍然在2015年底感到疲惫,这是Android团队的残余影响,同时也被家庭和个人事物所消耗,这需要花费更多时间和精力。我明白了这一点,并重新充电,并希望我能提供一些见解。我将在这篇文章中介绍其中一些。每个人都可能是自己的博客文章,但是今天我想简要介绍一下该事件。

我现在是Google字体小组的研究软件工程师,致力于字体技术的多个主题,包括字体设计工具,GPU加速的字体渲染以及字体文件格式的演变,以提高效率和功能。

关于开放源代码可持续性的文章很多,尤其是Nadia Eghbal的“公共工作”。我不会更广泛地谈开源(除非要注意我对Blender和Krita印象深刻),但是对于为图书馆构建生态系统的特定任务,我认为有一个实际可行的模型:依赖该生态系统的公司。

在某种程度上,这是对我们的资本主义制度的起诉。在理想的世界中,将有强大的机构致力于公共利益,开放源代码开发人员可以进行开发,研究人员可以进行研究,并花费绝对最少的时间和精力来寻求支持。在软件方面,无论如何,大学不是那样的(威廉·斯坦因在华盛顿大学Cocalc的经验证明),否则我会很受诱惑。在现实世界中,为Google之类的公司工作几乎是可以接近的。

我仍然对诸如Patreon或Github赞助商这样的惠顾平台持怀疑态度。我认为有可能使它们发挥作用,但仅适用于少数幸运的人,即使那样,创造最大价值的激励措施也与在社交媒体上奔忙的激励结构并不太吻合。

因此,我全职(重新)加入Google基本上是对这种受聘从事开源工作的模型的信心声明。其他模型也可以使用,人们肯定应该找到适合他们的模型,但是对于我感兴趣的项目尤其有意义。

我仍然喜欢Rust,并相信它为构建软件提供了更坚实的基础。感觉就像我在90年代初期开始Rust之旅时,当时我正在使用显式的生存期区域将ML的静态内存管理改造为ML。

Rust的采用率呈上升趋势,包括Google。语言状态良好,但图书馆生态系统仍不成熟,缺少许多关键要素。建立该生态系统是一项非常有意义的项目。

我对Rust在字体技术和基础架构方面的工作感到特别兴奋。如今,Python在字体设计和生产方面起着统治作用,部分原因是字体设计者Just van Rossum是Guido的兄弟。 Python的灵活性和表现力使其非常适合,但我们也已经到了使用Python生产字体和使用C ++的地方。

Rust使我们能够构建可靠的高性能代码,这些代码也可以部署在生产中,并且可以作为流畅交互的UI工具的基础。我不是唯一看到这种潜力的人;出于许多相同的原因,YesLogic正在Rust中构建其下一代字体整形器Allsorts。

一段时间以来,Google字体小组一直对采用更多Rust感兴趣,而我的部分职责就是促进这一工作。我真的非常期待。

我已经将自己重新命名为研究人员,但这也不能完全涵盖整个故事。我一直热爱研究,并且热爱完成我的博士学位,但我也热爱构建真实的事物,实际上,我觉得许多实际问题比学术界流行的抽象主题更有趣。就像撰写论文之类的一样,我正在尝试围绕它构建开源软件和社区。这个角色并没有真正的用词,但即使没有这样的用词,我仍在努力为自己创建这个词,并感谢Google允许我尝试。

这对我来说是最令人兴奋的部分。我对2D图形,字体技术和UI有着长期的兴趣,并且在所有这些方面都做了很多有趣的事情。我希望将我的大部分时间都花在继续推进所有这些领域的研究上。

这些项目的范围很大,而且远比一个人真正能够做的更大。这就是我一直有意识地围绕它们开发一个开源社区的原因之一。那将继续。

关于Druid和Runebender的大部分日常工作将由Colin Rofls完成,尽管我也非常喜欢让肘部加入代码,并且会做一些这样的事情。

一个主要重点将是建立Piet-gpu愿景。我相信高性能2D渲染引擎对于Rust生态系统将是一件好事,并且具有巨大的影响潜力。感觉像是一项很好的研究。无论它是否大规模生产,我都希望从中学到的东西将有助于为下一代UI技术提供信息。对于用户界面基本原理的研究也是如此,例如Druid的Crochet架构。

管线中的样条线技术也确实有令人兴奋的进步。我认为,与三次贝塞尔曲线相比,这些字体有可能成为更吸引人且更具生产力的绘画字体基础。下一步是验证它们是否真正发挥了我的期望。这涉及抛光UX并将其集成到Runebender中。如果事实真的很好,则长期(但更具投机性)的愿望是使它们成为一种字体格式,在减小字体大小的同时提高质量。很明显,Google字体团队是完成这项工作的最佳选择。

我面前有很多工作,但比以往任何时候都更加兴奋。踏上古老的新冒险之旅,2021年5月将是所有人康复和恢复活力的时期。