Tasktop Technologies作为一家创建了Eclipse Mylyn并引领其发展的公司,在今日发布了Tasktop的1.0版本。InfoQ采访了Tasktop的CEO Mik Kersten,对本次发布进行了深入了解,并获知它是如何将Mylyn的以任务为焦点的交互界面介绍给更多的受众的。
Mik Kersten首先描述了驱动Tasktop Technologies以及发布Tasktop 1.0的哲学思想:
我们的哲学思想可以由三个简约隽永的文字所概括,那就是:少即是多(less is more),这句话也被放在我们的徽标中。这一原则涵盖了我们的设计、集成与实施决策。“少即是多”的方式反映了我们从开发工具以及知识库工具中看到的一种趋势。那就是需要我们掌握的信息、特性、工具和Web UI正在不断地增长。结果就会导致在我们的日常工作中,需要耗费大量的时间去搜寻信息,而不是去完成工作。我们不胜其烦地点击着窗口、Web应用程序、桌面应用程序,反反复复地滚动鼠标滑轮,搜索着我们需要获得的信息。每个工具都试图帮助我们对有用的信息进行排序,使得这些信息尽在我们掌握之中;但是,对于集成与聚焦的缺乏使得我们总是疲于奔命。在Tasktop Technologies,我们想说,好吧,如果是在上个世纪80年代和90年代,这已经足够了,构建工具以信息为中心的方式已经很棒了,因为,在那时的计算机中可能只有少得可怜的数十个文件,但是,这种方式并没有对信息进行分级。现在,我们需要一种以任务为中心的方式,它使得工具与我们工作的方式相匹配,而不是围绕着存储在文件系统中的信息进行处理。
Kersten同时还谈到了关于“少即是多”格言的更多细节,谈到它的起源,以及它对于Tasktop而言意味着什么:
对我而言,饶有趣味的是这条格言与用在计算机用户界面的一个隐喻语出同处,它至今仍然不停地挂在Xerox PARC(译注:施乐帕洛阿尔托研究中心,Xerox Palo Alto Research Center,是施乐公司所成立的最重要的研究中心)人的嘴边。在1999年,Gregor Kiczales雇佣我为AspectJ(译注:基于Java的面向方面编程的一种语言)构建IDE的支持,我为自己能够为我们的工具和网站构建如此多的功能特性而兴奋不已。而他常常会在我的办公桌边逡巡,以一种日益严峻的腔调不停地念叨着“少即是多,少即是多”。就像醍醐灌顶一般,这种设计美学深深地烙入我的脑海之中,它要求尽可能地创建最简单的解决方案,然后提供给用户以征求反馈,然后对设计进行迭代以保证常用的用例是准确的。在Mylyn和Tasktop,我们对“少即是多”思想的应用已经到了一个全新的层面,这要归功于以任务为焦点的交互界面。
以任务为焦点的交互界面的理念是搭建Mylyn和Tasktop 1.0的关键思想,Kersten进一步地对其进行了详细阐释:
我认为需要解决的关键事情是我们需要频繁点击的工作方式。我试图解决的需求最初出于我的私心,因为我为了发布AspectJ所从事的编码工作,使得我需要长期的与重复性压迫损伤症(译注:Repetitive Strain Injury ,处于不正常的姿态过久,或者重复运动会引起颈部、四肢和背部的疼痛,会导致过度使用综合症,或重复性压迫损伤)开展一场注定必输的战争。我迫切地希望继续从事我所热爱的事业,因此我开始尝试着试验各种不同的输入设备,以及各种能够减少我点击次数的方法。我认识到如果我需要获得的内容可以直接在屏幕上看到,我就无需不停地去搜索和浏览它。为了进一步地对此进行研究和探索,我在UBC(译注:可能是University of British Columbia,英属哥伦比亚大学)开始攻读博士学位,并与Gail Murphy一起合作。Murphy被认为是工具研究中技术与经验最为优秀的其中一位研究人员。我们创建了一个兴趣相关度模型,它能够自动对信息分级,提供与你高度相关的内容。然后,我开始深入体悟如何将这一模型与最近的人类学研究成果——情景记忆过程相结合。简而言之,我们创建了以任务为焦点的交互界面,它通过将任务分为交互和协作的基本元素,并通过自动回忆任务上下文的方式,更好地利用我们的记忆能力。这听起来有些复杂,但最终的UI界面却很简单——激活一个任务,那么作为任务一部分的与你相关的结果就会成为任务上下文的一部分。既然上下文被存储了起来,并能够被共享,因此只需要操作一次单击,就可以完成多个任务。我们估计,当前有成百上千个程序员在使用Eclipse和Mylyn时,会关注并从以任务为焦点的交互界面中获益。
Kersten同时还介绍了如何在Tasktop 1.0扩展最初在Mylyn中实现了的以任务为焦点的交互界面:
Mylyn的目标是创建一个开放的、可扩展的框架,它能够为程序员提供以任务为焦点的交互界面的一个参考实现。该项目从一开始是用于验证我的博士论文,然而后来我却狂热地希望与其他人分享它所带来的生产效率的提高。但是,如你在我的论文摘要中所注意到的那样,它的目标不仅是让程序员从中获益,同样有利于所有知识工作者。要实现这一目标,我们就必须脱离Eclipse工作平台的美好世界,将Mylyn的以任务为焦点的交互界面扩展到我们经常使用的桌面和网络应用程序中。
目前,在Tasktop中我们已经为实现这样的工具奋斗了一年,有数百人试用了它的beta版。今天,我特别高兴地宣布我们已经以每年40美元的价格卖出了第一个Tasktop的公共版本,这一版本针对的是使用Eclipse的程序员。如果需要一个独立的应用程序,则需要每年60美元。这不仅代表了它提供了对我们开发的Mylyn项目的支持,同时还标志着一个巨大的里程碑,就是实现对日常工作关注的目标。
谈到Tasktop 1.0版本的主要特性,Kersten说道:
我首先介绍一个最具明显价值的特性,最后会介绍一个我们引以为豪的特性。至关重要的是,现在每个人都可以使用Mylyn。Mylyn的任务列表使得它可以在一个单独的地方管理你的所有任务,不管这些任务对于你是私有的,还是通过任务仓库而被共享的。
如果你不是程序员,但却需要一个富客户端脱机访问JIRA(译注:一个缺陷跟踪管理软件),或者你正在使用NetBeans或者Visual Studio进行编程,并希望连接到Rally上,那么现在你就可以使用单独的Tasktop RCP应用程序。为了使它易于安装,我们纳入了针对Atlassian的JIRA、CollabNet和Rally的伙伴连接器(Partner Connectors)的一键式安装。如果你是Outlook的用户,你可以获得Outlook邮件、任务和日历事件的连接器。你还可以获得Google日历的集成,通过集成的日历实现任务计划,好处就是诸如议程弹出窗口那样,显示所有从Google日历中获得的即将发生的事件,即使是在脱机状态下。Tasktop彻底地与微软的Windows集成,在即时访问你的文件时,能够浏览你所关注的文件。既然Tasktop具有和操作系统能进行特定的集成,我们还可以提供对Eclipse内外任务分钟级的跟踪。在Eclipse的插件版本中,基于Mac和Linux的程序员可以获得这些好处中的其中一部分,但是目前仍然缺失一些特性,例如在切换任务时,对外部应用程序的自动关闭功能。
但是实际上,我最为之振奋的一个特性就是在打开的时候,Tasktop能够被设置为你的默认浏览器(目前只针对Windows操作系统)。这意味着你的所有浏览活动都将成为关注的焦点。当你返回到一个编程任务中时,这个任务可以是阅读文档,也可以是编辑wiki页面,对应的浏览标签会立刻恢复。当你在Skype中点击一个指向JIRA的超级链接时,它会马上打开一个集成了任务编辑器的脱机的副本,同时在后台与服务器进行同步。它所带来的好处我可以谈上三天两夜,但究竟效果如何却需要你试了才知。目前,我采取这种方式工作已经有一年时间了,想到过去使用经典的标签浏览器,没有丰富的编辑工具和上下文管理所提供的便利,我就不寒而栗。
Kersten还提到了一个在线视频,其中演示了使用中的Tasktop,以及当前集成在Tasktop中的完整列表。同时还谈到了支撑Tasktop 1.0的技术以及最近与SpringSouce的合作:
Tasktop从整体上讲就是集成,而它则充分地利用了Mylyn和Eclipse的API以提供这种集成。若要聚焦你的整个日常工作,则需要提供针对你的任务的一个Mylyn连接器(例如问题跟踪器或者项目管理的Web服务),以及一个Mylyn桥以支持你所使用的工具(例如Java编辑器,Web浏览器)。我们一直致力于为程序员提供一个既为专有、又是开源的集成了Mylyn的系统,以及能够持续发展的工具系统。Tasktop填补了这一空白,就是为非编程行为提供Google和微软工具的连接器,以及为网页和文件浏览搭建了桥梁。我们是API走向开源的忠实信徒,因此Eclipse和Mylyn提供了Tasktop所依赖的整个集成框架。
推动集成的一个例子是我们将在三月份的EclipseCon上展示我们最近基于SpringSource Tool Suite(STS)对SpringSource做出的成果。虽然捆绑了Mylyn的引用桥(reference bridge),提供了对Java程序员巨大的支持,但我们的项目却缺乏足够的资源,以支持那些需要集成J2EE开发生命周期的多个附加的引用桥。然而,我们注意到了Spring框架正在成为事实上的J2EE标准,因而我们与SpringSource合作创建了以任务为焦点的企业应用程序开发环境。随着对Spring框架的使用,强大而简单就是STS的目标,因此我真的非常期待在三月的EclipseCon上展示的我们的第一个公开版本。既然STS构建在Mylyn APIs之上,开发者就可以使用它与Tasktop结合,这样就可以聚焦开发人员的J2EE编程行为以及其他工作行为。
最后,Kersten透露了Tasktop未来的发展方向:
正如你可能知道的,我们刚刚迈上了下一个征程。期望能够看到Tasktop持续改善与集成的发展轨迹,就像你在两年前所看到的第一个Mylyn版本公开发布那样。在EclipseCon上,我们还会宣布一些额外的Tasktop集成,它使得我们更容易管理日常工作与Eclipse的工作空间(workspaces)。查看英文原文: Tasktop: Bringing Mylyn's Task-Focused Interface to Everyone
像这样的一些新特性,它们的诞生总是那么有趣,因为最初的用户会对工具的发展产生深远的影响。用户可以从 http://tasktop.com中获得试用,并通过集成报告告诉我们,关于你对以任务为焦点的交互界面如何改善你的工作所提出的反馈意见。