桌面环境和开发者

本文是翻译,版权归原作者所有


本周我参加了OpenStack峰会。OpenSatack相当一部分开发是基于Linux的,大会上最受欢迎的笔记本厂商(相当长的时间)是苹果。人们在写代码,目的是在Linux上部署,但是他们在一个完全不同的操作系统上写代码。

但是真正有意思的是他们写代码所使用的工具。放眼望去,我看到了终端和浏览器。他们没有使用Mac因为他们的开发工具需要,他们使用Mac是因为他们能得到其它东西—一个审美上让人满意的操作系统、iTunes和市场上很可能是最好的触控板硬件/驱动的结合。他们在家里和工作时使用的笔记本是同一台。当他们正在上下班路上时,无论是打游戏还是抢先一步,便于他们能够尽早离开。他们使用苹果,因为他们不想为了工作和娱乐而使用不同的硬件。

我身边环绕的开发者不是你10年前在一次技术大会上的遇见的开发者了。他们在一个越来越关注用户体验的时代,因为Linux的可调整性而迁移到Linux的想法不再有吸引力了。把工作时间花在免费软件(多数情况下,甚至贡献和维护免费软件)上的人们不愿意运行一个免费的操作系统,因为这会要求他们在他们关心的东西上有所取舍。Linux可以给他们提供相同的终端和浏览器,但是Linux糟糕的多点触控处理足以打乱他们的工作流。转向Linux会降低他们的效率。

即使我们修复了所有这些问题,为什么有人会迁移?我们能够提供的最好地方是一个对等的、更多的修改他们大多数软件的自由的体验。我们很可能认为,这不是一个能令人信服的优势,因为如果是这样,这可能足以克服某些功能上的不一致。或许我们需要有差别地看待了。

当我们讨论开发者体验时,我们倾向于讨论那些为桌面环境写软件的人们,而不是那些偶尔使用Linux做开发的人们。这些人不需要更好的API文档。他们不需要一个更好的IDE。他们需要一个桌面环境,可以让他们访问日常需要的服务。如果某人刚刚打开了其中一个bug的issue,他们将收到一封邮件。他们为了打开一个表明他们已经接受了这个bug的网页而不得不去点击。如果他们知道这个bug已经在另一个分支修复了,他们很可能需要切换到github,以找到包含了bug号的commit,然后切回他们的issue追踪,粘贴进去,标记为重复。这是无聊的,令人厌烦的,分散精力的。

如果桌面已经内置了issue追踪的意识,那么他们就可以调出相关信息和选项,而不必在两个独立的应用程序之间点击。如果git的commit在本地索引了,开发者可以找到相关commit、而不必返回web浏览器、或打开一个新的终端以找到本地的checkout。目前涉及到多环境切换的一项简单任务能够被显著加快。

多么简单的例子。问题更加深入了。管理开发过程中各个部分的web服务对于公司而言,省去了维护他们自己的基础设施的必要性,但是在这个过程中,它倾向于强迫开发者在具有不同UI和非直接的信息分享方式的多个网站之间切换。时间被浪费了,这让开发者不开心。

提高桌面光鲜度、把努力花在优化开发者工作流上,将产生一个真正的机会,以吸引这些开发者远离OS X,因为他们可以花较少的时间与web浏览器战斗,留下更多的时间在开发上。这有助于帮助Linux与有专利的同类产品形成差异化——苹果和微软或许花费了巨大的努力在提高开发者工具上,但是他们通常是为了那些致力于自家平台的开发者而这样做的。一个更容易提高一般开发效率的桌面环境将是一个独特的卖点。

在峰会上我对各种人说出了这个观点,听说有有些人已经开始考虑,并希望改进一些东西时,是非常令人鼓舞的。我期待这一天,但是我也希望在规划不连累其他用户的前提下,如何让开发者简化工作将是更大的兴趣点。这貌似是个有趣的挑战。

原文地址:http://mjg59.dreamwidth.org/31714.html

译文:桌面环境和开发者 》| 腊八粥