Eclipse Mylyn的创始公司Tasktop Technologies最近发布了 Tasktop产品的1.2版本,这个版本产品是采用Mylyn3.0 API开发的。InfoQ采访了Tasktop的主席兼CTO Mik Kersten,了解到一些这个新版本的相关情况,也从终端用户的角度了解到新版本较之早期版本的不同之处。
InfoQ: 您能否给大家简单描述一下什么是Tasktop,它与Mylyn之间又有怎样千丝万缕的联系?
Mik Kersten: 在我们Mylyn开源项目的帮助下,无数的开发人员的编程效率因此得到了大幅度地提高。假如你需要在Eclipse平台下以任务安排为中心展开开发的话,那么你所面对的下一步就是要将这种以任务安排为中心的开发方式与其它一些工具相结合。
这就是Tasktop诞生的原因。 Tasktop是Mylyn的商业化版本,它的主要功能在于将web服务与桌面应用集成,无论是Google Calendar、Gmail还是Microsoft Outlook都可以与桌面应用集成。Tasktop最棒的一点是它采用Mylyn健壮且不断扩大的连接系统,因此在Tasktop中所提供的大量 额外的提高开发效率的特性都与Mylyn连接兼容。
InfoQ:这个新版本的Tasktop包含了哪些新特性?
Mik Kersten:这个新版本中,我 们添加了Tasktop Starter,所有Eclipse Mylyn的用户因此可以免费获得一些Tasktop中的功能。此外,目前需要付费的产品名为Tasktop Pro,它最卓越的功能则在于追踪工作时间并生成相应的报告。使用以任务为中心的界面的也就意味着当前工作的任务是整个工作流的一部分,我们因此曾收到过无数个用户请求希望我们能够提供自动跟踪任务进度的功能。现在,Tasktop Pro产品就提供这样的功能,能够完全跟踪每个任务所花销的时间,时间单位精确到分钟。根据这些数据,你能够选择生成相应的图表或者详尽的报告,更清晰地追踪项目进程。根据以任务为中心的界面的宗旨,我们将所有的控制权都交给用户,也就是说,工作时间数据在生成报告的时候是可以调节的。在自动方面,开发人员也可以调节会议或者其它不需要计算机工作的活动时间。我们曾收到无数关于类似功能的请求,而现在,无论是工作时间表还是其它类型的时间报告,这些多数开发人员需要定时去做的工作都将成为小菜一碟。
以我自身为例,下面这个图表是我在Mylyn 3.0发布之后的一个星期内的工作情况。从这张图表中可以直观地看到我在每个任务上所花的时间(表格中),也很直观地看到我在Mylyn和Tasktop 上花的时间分别在工作时间总和中所占百分比(饼状图),还能看到我在管理方面所花的时间比(主状图灰色部分)以及在各个任务上所花的时间比(柱状图的彩色部分)。
根据这张图表的数据所示,我有大约百分之九十的工作日都用在了Tasktop上,在该发布版本中我最喜欢的一项新功能是UI streamlining。例如,现在我们提供横向的分割柱状图,只需要单击一下鼠标就能访问到整个工作组。在这个新功能的帮助下,我因而得以确切地看到 每个工作组中新添加了多少任务。只要简单地单击鼠标,就可以在查看所有与Mylyn有关的工作空间和Tasktop相关的工作空间之间自由切换。减少获得 信息所需要的鼠标点击动作是我们的主旨之一。为了实现这个目标,我们努力不断地优化任务上下文工作的方式,--比如修改web页面populate工作上下文以便在你重新打开任务的时候立即恢复到之前工作状态的方式。而其它一些额外的UI steamlining,比如Tasktop新的trim widgets同样也确保了那些你需要的信息能够信手拈来,不费吹灰之力。
InfoQ:Tasktop是如何在与Eclipse Ganymede同步发布的Mylyn 3.0新性能的基础上创建的?
Mik Kersten:Mylyn 3.0包含了很多新特性,比方说离线任务创建以及一个既快捷又容易管理的任务编辑器。但是,在Mylyn 3.0中最大的变化还是API的更新。在Tasktop Technologies公司,我们始终都对开源API的重要性置信不疑,坚定地认为Tasktop和其它创建在Mylyn之上的工具因此可以通过同一个由Mylyn和Eclipse平台公布的API进行协作。这使得协作双方都拥有一个“富饶的”继承体系,正如我们所看到的针对存储仓库的Mylyn connector,例如CollabNet、JIRA和Rally等等。这同时也激发了在这个公布的API上创建具有创新意义的提高开发效率的工具,比如Tasktop和SpringSource工具箱。在Mylyn从2.0升级到3.0之后,新版本的API显然更为强大,更少暴露详细的技术实现,并且 为那些有兴趣创建和开发connector的第三方减轻了工作。
InfoQ: Tasktop的免费版本--Tasktop Starter为Eclipse用户带来了些什么优势呢?
Mik Kersten:首先,用户会发现只需要点击一下鼠标就能安装经过认证的协作connector,不需要再在各个升级站点间徘徊,也不需要手动管理connector的版本。用户也可以享 受到全自动的Mylyn升级,如果想尽早用到最新版本跑在技术前沿的话,那么无论是从全自动Mylyn升级的发布build还是每周build中都将受益 匪浅。用户也应该会很高兴能够看到时间追踪公告牌,他们可以清楚地看到当前这个星期中正在使用Eclipse工作的任务(如果想要跟踪在Eclipse外工作的时间报告的话,那还需要安装一个Tasktop Pro的OS插件)。最后,鉴于我们曾收到无数份关于开发人员对于集成Gmail的需求,我们最后决定也免费开放这个功能。Tasktop Starter既是一个实用的日常工具,又能在清楚地看到剩下的工作日的任务安排之后调节自己的活动。如果你喜欢Tasktop Starter的话,不妨也试试Tasktop Pro,你会看到大量可以提高开发效率的其它一些Tasktop特性。
InfoQ:Tasktop和SpringSource工具箱以任务为中心的界面对Mylyn有什么影响吗?
Mik Kersten:这两个商业工具都 结合Mylyn,并且将它作为核心性能推出,这对于Mylyn API来说是其向前发展的一个标志。Mylyn项目最初的目的是想要为以任务为中心的界面提供API和核心工具,实现这个目的的唯一方式就是结合直接使用 Mylyn的用户和集成Mylyn的用户的反馈。比如,Tasktop Technologies之前准备将集成Microsoft Outlook和Exchange的工作添加到任务列表上来,这时候我们就需要有一个大概的概念如何让任务列表和本地应用程序乃至web服务之间进行“对 话”。我们提供了的必要的API和测试用例,因此现在用户可以自行实现这类连接到本地任务仓库的connector。
其实SpringSource工具箱也很类似,它的主要特性之一就是全新的以任务为中心的文档指南。为了实现这个特性, SpringSource提供了一些扩展,方便加载与文档指南而非任务相关联的上下文,相对应的API因此更加灵活。此外,还有无数的选择开源的开发人员 以各色各样的方式来扩展API,我们每个月都要打包发布许多API以及新开发的特性。在Eclipse“生态圈”中,这样一种以开发合作且通过商业产品和 开源项目共同发布的方式是最有意思的工作。
InfoQ:Mylyn是特定的Eclipse技术,还是也可以在Eclipse IDE之外运用呢?
Mik Kersten:Mylyn是分层 构架,任何Java应用都可以使用它的核心组件。比如,Tasktop有几个服务器端的应用就将Mylyn的核心部分作为Java API来与Bugzilla及JIRA这样的web服务互相通信。我们也有可以在Eclipse之外运用的UI抽象层。比如,维多利亚大学的CHISEL 小组使用Mylyn的degree-of-interest模式创建了一个生物科技数据表现的基于Swing的应用。另外,Mylyn也可以内嵌在 Eclipse的RCP应用中使用。目前最好的例子就是Windows下的Tasktop Pro,它能够提供与针对Eclipse的Tasktop Pro类似的功能,但其面向的终端用户则是那些日常并不编程的工作人员--比如项目经理。
InfoQ: Mylyn、Tasktop以及以任务为中心的界面的未来计划是什么?
Mik Kersten:对于Mylyn,我们会继续致力于改善任务列表和任务编辑器的UI,以灵活地支持越来越多的各种各样的信息。我们也会继续支持集成Mylyn的开发人员,在Mylyn急速前进的同时保证connector数量的提升。
对于Tasktop,我们将继续努力简化跨公司跨部门或者是同组成员之间的任务合作。很多用户给我们发送了用户请求,希望 Tasktop能够集成诸如Firefox、Thunderbird等的Mozilla应用,我们接下来会在这个方向进行开发。在我们能够为更多使用 Eclipse的开发人员提供足够多的集成和特性,确保他们的工作日流程跟我们的一样顺利之后,我们会把更多的注意力放到Windows应用环境下的 Tasktop Pro开发上,让更多非技术用户,无论是软件开发领域内的还是领域外的,也都能体验到它的优点。
我们的目标是确保以任务为中心的界面至少能够让开发效率翻一番,我们有这个信心,因为在我们Tasktop内部已经实现了这 个目标,而且很多用户在他们的博客上也反映了这样一个事实。当然这个使命还包括继续强化Mylyn和Tasktop背后的degree-of- interest模型。我们开发以任务为中心的界面的目标还在于确保在你回头重新接受几个月前工作过的任务的时候,之前做过的关于这项工作的所有信息都将 历历在目,帮助你立马回复到这项工作中来。换句话说,正如我们的网站所打出的标语一样,我们的目标是减轻你的大脑负荷。
查看英文原文:Tasktop 1.2: Enhanced Time Tracking/Reporting and a New, Free Version