桌面系统和程序员

简介:

本周我出席了OpenStack峰会。在峰会上绝大多数应用部署都是基于Linux的,然而,大家使用的笔记本电脑最多的还是苹果产的。人们写代码,最终要把代码部署到Linux上,但在编码时却使用另外一种不同的操作系统。

最有趣的还是他们使用的开发工具。我在他们的背后看他们开发,看到的是命令行终端和浏览器。他们并没有使用Macs,他们的部署工具需要Linux 环境,他们之所以用Macs,是因为其它原因——漂亮的操作系统,ITunes,以及最炫的超薄设备。有些人在公司和在家里是用同一台电脑。他们在地铁里 用它,玩游戏时用它,加班时用它。他们使用苹果电脑,是因为他们不想在工作和娱乐时使用不同的电脑。

我身边的这群程序员跟你在10年前的技术大会上看到的程序员不一样。他们成长在一个越来越重视用户体验的年代,Linux的可配置/灵活性对他们不 再有吸引力。人们工作的时候使用免费软件(并且开发或维护免费软件),却运行在一个不免费的操作系统上,因为如果不这样会使他们另外一些很在意的活动体验 上打折扣。Linux里有命令行终端和浏览器,但Linux的糟糕的多触点控制功能足以影响在其上的工作。使用Linux会减慢他们的工作。

但是,就算我们改进了所有这些提到的问题,人们为什么要是有Linux做开发环境?Linux的最大优点是提供了一个相当自由的环境,能够让使用者修改他们的软件。我们可以想象,这并不具有巨大的吸引力。否则,其它的劣势也就不是问题了。

当我们在讨论一个程序员的经验时,我们基本上是在说这个人用桌面电脑编程的经验,而不是指他们偶尔使用Linux的经历。这些人并不需要一个更好的 API文档,他们并不需要一个好用的IDE。他们需要的是一个好的桌面环境,能够让他们访问他们日常所需的各种服务。如果有人在他的问题库里提交了一个 bug,他会收到一封Email。他们需要点击邮件里的连接,进入一个web页面,看到关于这个bug的描述。如果他知道这个bug已经在另外一个分支里 修复了,它会切换到gihub页面,找到bug修复的ID,然后切换回来,将其粘贴到bug修复描述里。这很无聊,很讨厌。这让人分心。

如果桌面环境能内置一个智能的问题跟踪系统,它能够呈现各种相关的信息,不需要人去在两个系统间切换。如果git提交能够在本地存放索引,程序员不需要打开浏览器就能找到相关信息。这样一来,一个简单的任务,虽然需要牵连多个环境内容,也能够很快速的完成。

这只是一个简单的例子。更进一步分析。使用各种web服务来管理各种开发过程,省去了公司维护自己的基础系统,但是,在使用过程中,需要程序员在多个拥有不同界面的系统间来回跳跃。时间浪费在其中。这让程序员不高兴。

一方面改进桌面环境的可用性,一方面优化程序员的工作流程,避免他们在终端和浏览器间浪费精力,用更多的时间来开发,这样能很大程度的防止程序员从 这个桌面环境中流失。这能够让Linux从其它操作系统中脱颖而出,苹果和微软都在花大力气改进他们的程序员开发工具,但这些工具只是针对他们的平台。能 够更方便执行常见的开发工作,这将会成为一个桌面系统的独特卖点。

我在这次峰会上跟很多人说了这个观点,让人宽心的是,有不少人也在思考这个问题,希望能在这些事情上给予帮助。我在期待,我也在期待有更多能够让程序员的开发更轻松的观点提出,但同时也不能让其它用户的体验有损伤。看起来这是一个有趣的挑战。

相关文章
|
9月前
|
监控 项目管理 Windows
Windows上不可或缺的5款宝藏软件,工作效率拉满!
Windows上不可或缺的5款宝藏软件,工作效率拉满!
|
数据可视化 Windows
小众实用!5款不为人知的Windows软件,让你工作更轻松
分享5款冷门但值得下载的Windows软件,个个都是实用,你可能一个都没见过,但是 我觉得你用过之后可能就再也离不开了。
154 0
小众实用!5款不为人知的Windows软件,让你工作更轻松
|
Windows
工欲善其事,必先利其器,分享5款Windows效率软件
工欲善其事,必先利其器。作为全球最多人使用的桌面操作系统,Windows 的使用效率与我们的工作学习息息相关。今天,小编就为大家整理了5款提高效率的利器,让你的 Windows 更具生产力。
125 0
工欲善其事,必先利其器,分享5款Windows效率软件
|
监控 Java 程序员
程序员需要了解的硬核知识之操作系统和应用(一)
这是 Java 建设者的第 45 篇原创文章 利用计算机运行程序大部分都是为了提高处理效率。例如,Microsoft Word 这样的文字处理软件,是用来提高文本文件处理效率的程序,Microsoft Excel 等表格计算软件,是用来提高账本处理效率的程序。这种为了提高特定处理效率的程序统称为 应用 程序员的工作就是编写各种各样的应用来提高工作效率,程序员一般不编写操作系统,但是程序员编写的应用离不开操作系统,此篇文章我们就针对 Windows 操作系统来说明一下操作系统和应用之间的关系。
86 0
程序员需要了解的硬核知识之操作系统和应用(一)
|
存储 数据可视化 中间件
程序员需要了解的硬核知识之操作系统和应用(二)
这是 Java 建设者的第 45 篇原创文章 利用计算机运行程序大部分都是为了提高处理效率。例如,Microsoft Word 这样的文字处理软件,是用来提高文本文件处理效率的程序,Microsoft Excel 等表格计算软件,是用来提高账本处理效率的程序。这种为了提高特定处理效率的程序统称为 应用 程序员的工作就是编写各种各样的应用来提高工作效率,程序员一般不编写操作系统,但是程序员编写的应用离不开操作系统,此篇文章我们就针对 Windows 操作系统来说明一下操作系统和应用之间的关系。
128 0
程序员需要了解的硬核知识之操作系统和应用(二)
|
存储 Unix 程序员
肝了很久!一文了解操作系统 I/O(3)
肝了很久!一文了解操作系统 I/O(3)
肝了很久!一文了解操作系统 I/O(3)
肝了很久!一文了解操作系统 I/O(4)
肝了很久!一文了解操作系统 I/O(4)
肝了很久!一文了解操作系统 I/O(4)
|
存储 缓存 监控
肝了很久!一文了解操作系统 I/O(5)
肝了很久!一文了解操作系统 I/O(5)
肝了很久!一文了解操作系统 I/O(5)
|
算法 安全
安装了一下WinZip,感觉很难用
安装了一下WinZip,感觉很难用
118 0
|
Web App开发 自然语言处理 程序员
这些软件太强了,Mac必装!尤其程序员!
这些软件太强了,Mac必装!尤其程序员!
551 0