Community News, July 2, 2009

by Wesley Coelho, July 2nd, 2009

It has been a while since we’ve posted news from the Tasktop and Mylyn community. Here are some of the most interesting posts from the last few months.

Enjoy!

Bugzilla works better with Mylyn by Lars Kurth
In this post Lars offers excellent insights on how Mylyn and Tasktop can make Bugzilla access much easier. “Mylyn has transformed my experience with Bugzilla. I can easily stay on top of bugs through 6 bug queries that I have defined. These are neatly displayed in a task list that shows dependencies amongst bugs.”
 
Feature Request: Integrate Adobe Flex Builder with Mylyn by Tim Buntel
Tim makes a compelling case for implementing Mylyn integration for Adobe Flex Builder. “Mylyn is hands down the most useful plugin for Eclipse I’ve ever used. It has dramatically increased my productivity. On my worst day I’m still at least 2x as productive as I used to be. On a good day it’s probably more like 5x… There are 3 specific areas I’d like to see better integration…”
 
I’m feeling Lazy by Chris Aniszczyk
Chris describes the “I’m feeling Lazy” task selection button recently added to Mylyn and how this might be useful. Check out the post for screenshots and interesting follow-up comments.
 
Subversion + Eclipse3.5 = Easy! by Mark Phippard
Mark shows how easy it is to install Subversion support into Eclipse 3.5 Galileo using Mylyn/Tasktop’s Connector Discovery wizard. “…the Eclipse Mylyn team has made the process super-easy in the Eclipse 3.5 release.”
 
Scrum Vision 2.1.1 by Laurent Carbonnaux
Scrum Vision is a free and open source Mylyn connector that uses a Google spreadsheet as a Scrum backlog.
 
Mylyn by Tom
Tom writes about his experiences with Mylyn and Tasktop and how he’s using these tools to integrate applications in his organization. “Trying out Mylyn and Tasktop and I love it. Everyone on my project is required to use Mylyn now, and Tasktop…”
 
Mylyn-Mantis connector quick install in Mylyn 3.2 by Robert
Robert announces the Mantis listing in the Mylyn Connector Discovery wizard.
 
Mantis in Eclipse with Mylyn by Devexp
This post covers some of the benefits of Mylyn Mantis connector, including automatically generated commit comments. “Well, praise the lord, ’cause there is an open source project out there that does all these things called Mylyn.”
 
Issue tracking for better projects by flex.mentalaxis.com
This post discusses the benefits of shared issue tracking systems such as Redmine and touches on the the additional benefits provided by Mylyn. “Mylyn is a sweet Eclipse plugin which really helps to keep developers linked up to the project tracking system…”
 
InDefero Mylyn Connector by seb
See how to connect Mylyn with InDefero using the Web Templates Connector.
 
Using Mylyn with Jira without API access by Jey At
See how to connect Mylyn to Jira using the Web Templates Connector when JIRA’s XML-RPC API is disabled or inaccessible.
 
Mylyn: Integrate Bugzilla with Eclipse by Aneesh
A nice guide to connecting Bugzilla with Eclipse Mylyn. “…whenever a new bug arrives eclipse will pop up a small notification to inform you that there is a new bug. Now you don’t need to depend your browser to read bugs.”
 
An Introduction to Mylyn and Trac by Captain
A concise post on how to configure Mylyn and Trac.
 
Task Focused Programming with Mylyn and Tasktop by Chathurika Sandarenu
Chathurika walks through installation steps and points out some interesting features of Mylyn/Tasktop. “…Trust me this can improve your productivity many times. I personally experienced this during last two days I used Mylyn.”
 

Do you have news for the task-focused community? Send news to news@tasktop.com

Be more productive. Guaranteed.

Tasktop 1.5, Mylyn 3.2 and new connectors released for Eclipse Galileo

by Mik Kersten, June 24th, 2009

The landscape of change management tools is diverse, due to the presence of legacy systems, new tools for agile and Scrum, and the need to choose among best-of-breed solutions. Across the Mylyn and Tasktop channels we have seen over 1000 requests for Mylyn connectors to 60 different change and task management solutions. The 2009 Eclipse Survey demonstrated this heterogeneity, identifying the popularity of Mozilla Bugzilla and Atlassian JIRA, followed by Trac, Mantis, IBM Rational ClearQuest and others, all with active use in the Eclipse ecosystem. With today’s releases of Tasktop 1.5, Eclipse Galileo, Mylyn 3.2 and more connectors, the measurable productivity benefits of the task-focused interface are now available for all of the change management solutions popular with Eclipse users. Thanks to the rapid expansion of Mylyn and Tasktop integrations, Eclipse is now the most broadly connected IDE available. Here are some highlights from today’s releases.

Mylyn 3.2

The biggest news is the Mylyn Connector Discovery portal, which makes finding and installing connectors as easy as downloading iPhone apps or Firefox add-ins (screenshot follows). In addition to having resolved 334 Bugzilla reports and feature requests since the March release of Mylyn 3.1, and 988772 since the Eclipse Ganymede release of Mylyn 3.0, we have highlighted 23 notable features in the Mylyn New & Noteworthy. One of the most significant is the UI improvements that we’ve made to the Task Editor, the main point of contact to the task-focused workday. The process of triaging incoming change notifications and commenting on tasks should now be faster than going through email.

mylyn-32-task-editor

The most noteworthy community contribution to this release is the screen capture and editing improvements made by Hiroyuki Inaba. Hiroyuki took the basic screen capture facility, which itself originated entirely from community contributions, and turned it into a full-featured tool for communicating with screenshots. We are very pleased to see that even as the project matures, community contributions to Mylyn remain high. Since the Ganymede release, we have seen 249 Bugzilla reports on Mylyn resolved by countless patches.

mylyn-32-screenshot-tool-small1

The biggest addition to Mylyn in the past year is WikiText, the lightweight wiki markup editing framework, created by David Green, which we all now depend on when authoring tasks. WikiText has seen numerous improvements, such as integration with the local task editor, formatting for stack traces, and output to PDF when used as an API for converting wiki documents.

mylyn-32-local-task1

Tasktop 1.5

This release of Tasktop has seen the usual stream of improvements and responses to user feedback, and the free trial has been extended to 60 days. The most notable parts of the release are two new connectors to popular change management tools, which have been added to Tasktop.

ClearQuest Connector

The Mylyn integration for ClearQuest has long been in the top 10 highest voted feature requests among 280,000 Bugzilla reports on Eclipse. Thanks to Tasktop Technologies’ new partnership with IBM around the Open Services for Lifecycle Collaboration (OSLC) web service APIs for change management, the connector is now available, and has been validated as “Ready for IBM Rational Software”. Teams using ClearQuest can now take advantage of offline support and powerful new capabilities for working with ClearQuest artifacts directly from Eclipse along with the benefits of the task-focused workspace and one-click multitasking.

tasktop-15-clearquest

ScrumWorks Pro Connector

The task-focused interface has its roots in agile development and we’ve recently seen a sharp increase in demand for Mylyn from teams and organizations adopting Scrum. Tasktop has partnered with Danube, creators of ScrumWorks Pro, to deliver a fully integrated environment for Scrum development that takes advantage of Mylyn’s task-focused interface, enabling Task List integration, offline editing, and the task-focused workflow for users of ScrumWorks.

tasktop-15-scrumworks1

Connectors Galore

We created the Tasktop Certified program in order to provide users with assurance that the Mylyn connectors they are installing meet a quality level defined by the Eclipse UI guidelines, the Eclipse coordinated release guidelines, the Mylyn framework guidelines, and Tasktop’s usability guidelines. When you see the “Tasktop Certified” label you can be sure that no matter what makes up your tool stack, the connectors you install will interoperate seamlessly to provide you with comprehensive Eclipse integration, focus for workspace artifacts, and one-click multitasking. For example, if you’re making a Spring-powered application, tracking tasks with JIRA, building with Bamboo, and using Subversion for your source code, you simply install the latest Tasktop Certified SpringSource Tool Suite, check off the Atlassian Connector for Eclipse and the CollabNet Desktop in the Mylyn Connector Discovery to create a fully integrated and task-focused tool set. Here’s a glimpse of the connector ecosystem today.

mylyn-32-discovery-small

Mylyn 3.2 New & Noteworthy

Tasktop 1.5 New & Noteworthy

Be more productive. Guaranteed.

Mylyn Connector Discovery

by Mik Kersten, June 16th, 2009

The goal of the Eclipse Mylyn project and its ecosystem of connectors is to make the productivity benefits of the task-focused interface available to everyone. Mylyn enables a broad range of change management and collaboration technologies to be integrated with Eclipse. The result is a task-based inbox with a consistent rich client experience for managing all your projects and tasks in one place. Today Mylyn supports issue trackers, version control, email protocols, code review tools, build systems, wikis and more. In the future, we can expect the reach of Mylyn connectors to extend to additional domains like social networking as well as new collaboration protocols such as Google Wave.

Across the Mylyn and Tasktop channels we have seen over a thousand votes for sixty different change management and collaboration tools. Three dozen Mylyn connectors are now available, from a wide variety of vendors. But the mere availability of connectors is not enough. The success of Firefox’s add-ins and Apple’s App Store are great examples of how important ease of installation is to broad adoption. Having fielded countless installation support requests and hearing from numerous users unaware of available connectors, we realized that the process of finding and installing connectors was a limiting factor in the adoption of Mylyn. We looked to the Web Tools Platform for leadership in linking a similar sort of installable extension, its Server Adapters. At EclipseCon we announced our plans to leverage the same mechanisms for Mylyn and sought input from our integrator community in order to incorporate their needs (bug 272621) and established a selection process for listing connectors. The screenshot below shows the result.

connector-discovery-small

Mylyn connectors can now be installed with a few clicks, for both Eclipse.org based ones as well as those from other portals, such as the Tasktop Certified portion of the commercial ecosystem and other parts of the open source community. Note that the listing in the screenshot is a draft and subject to change.

connector-details

Leveraging P2

In attempting to reduce our support overhead for connector install, we realized that the Eclipse P2 update mechanism was both the cause of and solution to all of our problems. P2 provides a very nice framework for validating and automating installs, and has seen some major improvements in Eclipse 3.5, so we built the Mylyn Connector Discovery entirely on P2. With our usual less is more design philosophy, an additional constraint we imposed is that beyond accepting a license agreement, the interaction should only require the user to view a single discovery page. To avoid the need for sophisticated error messages, we also eagerly validate update sites and disable install for those that are not available. For more advanced configurations options the user can always drop back into the P2 UI.

Building on PDE

Since we’re all spoiled by the quality of Eclipse’s tools for working with plug-ins, we wanted a similar experience for authoring connector discovery listings. We also wanted a convenient way of testing and debugging the listings. To support that, we used the plug-in extension mechanism in an interesting way. Each discovery entry is a bundle, with its contents defined via extension point. The discovery UI downloads and reads all the discovery extensions listed on the eclipse.org/mylyn/discovery/directory.xml listing, in addition to those contributed by running bundles. We’ve been very pleased with the resulting ease of authoring, testing and deploying the bundles. Here’s an example of the extension point in use.


<extension
    point=“org.eclipse.mylyn.discovery.core.connectorDiscovery”>
  <connectorDescriptor
    categoryId=“org.eclipse.mylyn.discovery.site.categories.connector
      CategoryEclipseOrg”

    id=“org.eclipse.mylyn.bugzilla_feature”
    license=“EPL”
    name=“Mozilla Bugzilla”
    provider=“Eclipse Mylyn”
    siteUrl=“http://download.eclipse.org/tools/mylyn/update/weekly/e3.4″
    …>
    <icon
      image32=“images/bugzilla32.png”
      image64=“images/bugzilla48.png”>
    </icon>
    <overview
      screenshot=“images/bugzilla-screenshot-320×240.png”
      summary=“%connectorDescriptor.overview.summary.bugzilla”
      url=“http://eclipse.org/mylyn/”>
    </overview>
  </connectorDescriptor>
</extension>

We have high hopes for the discovery technology bringing the benefits of Mylyn and Eclipse to even more users. The next time that you’re curious about whether your change management solution is integrated with Eclipse, you’ll only be a couple clicks away from finding that out and having it installed. Stay tuned for more news of what’s coming in Mylyn 3.2.

Be more productive. Guaranteed.

Interview with JavaOne Rock Star Mik Kersten

by Wesley Coelho, June 4th, 2009

Tasktop CEO Mik Kersten has been awarded JavaOne Rock Star status, which recognizes speakers for outstanding session content and speaking ability. In an interview with Janice J. Heiss, Mik discusses his most recent JavaOne talk, Eclipse Mylyn, cloud computing, advice for Java beginners and more. The interview is reproduced below.

videos1 Mik’s 2009 JavaOne session is “Mylyn: Redefining the ‘I’ of the IDE”, which was also delivered previously at QCon. Watch the video and slide show of the QCon talk (Note that the fonts and formatting aren’t properly reproduced).
 

JavaOne 2009 Interview with Janice J. Heiss

Bio: Mik Kersten is Chief Executive Officer and Co-Founder of Tasktop Technologies. His session focuses on how Mylyn, a task-focused interface tool from Tasktop, can be used by Java developers in their everyday work. Kersten invented the user interface technology underlying Mylyn while working on his Ph.D. at the University of British Columbia in Vancouver, Canada. While completing his Ph.D., supervised by Gail C. Murphy, Kersten and Murphy co-founded Tasktop, which provides productivity software built on the Mylyn technology.

Q: Tell us about your 2009 JavaOne Conference session.

A: The goal is to show developers how they can start on the path to doubling their productivity. We’ve all experienced moments in which we feel like we’re coding at the speed of thought. For some, it only happens when they are distraction free during late-coding sessions, or at release crunch times. With our task-focused interface, we’ve discovered that it’s possible to bring that level of productivity to day-to-day work. Hundreds of thousands of developers have already started working this way with Eclipse Mylyn. But many are still discovering the technology and tools, so during the presentation newcomers will get a high-level overview of how to streamline their Java tool suite in order to make coding faster and easier. Seasoned users will get a preview of the new productivity features in Eclipse Galileo and Mylyn 3.2, to be released on June 24.

Q: Tell us why the notion of a tool that hides more of the program than it shows is not a crazy idea.

A: Consider the size of a typical Java application. Tens of thousands of lines of code are common. Add to that the size of the JDK and other SDKs that you’re building on, and we’re talking about millions of lines of code. When I’m working on Mylyn and Tasktop, I have around eight million lines of code at my fingertips.

Now consider the size of the monitor sitting on your desk. If you’re lucky it’s 1280 pixels tall. In a tree view — one of the key facilities we have for navigating program structure — you can see only a few dozen elements on the screen at a time. In other words, you can’t possibly see the whole structure of the system. After just a few navigations of the code, these tree views can end up showing thousands of elements that are not relevant to the task at hand. There’s something wrong with this picture. So a traditional user interface often demands more browsing and searching than coding. But, for any task, any bug you fix or feature you add, you only care about a subset of the system that’s relevant to that task. Instead of showing you the compiler’s view of the entire system structure, the task-focused interface shows you only what’s relevant to the task at hand. All the structural information is still at your fingertips, but in the views and editor you see only what you’re working on.

Q: You say that “tasks are more important than files; focus is more important than features; and an explicit context is the biggest productivity boost since code completion.” Elaborate.

A: Whether you’re fixing user-reported defects, working against a SCRUM backlog, or submitting patches to your favorite open-source project, tasks define what you’re working on. Files and classes are the artifacts that you modify in order to complete the task. Thus, tasks should drive your interaction with files, not vice versa. Ever since the original GUI that Xerox PARC produced, we’ve been obsessed on streamlining interaction with files. As a result, the latest indexing and search technologies are quite adequate. It’s now time to evolve the user interface beyond files in order to handle the vast amount of information that we work with today. Automating the capture of task context has enabled a productivity transformation that we have been able to measure with statistical significance.

Q: What is the biggest down side to a task-focused interface?

A: That we’re not finished with it yet. Don’t get me wrong. If you do a Twitter or blog search for Mylyn you’ll see a stream of people stating how much it’s helping their work and programming activities. But, to date, we’ve taken a very incremental approach to extending the IDE user experience. You can use Mylyn without its focusing facilities for task management alone. You can use each of the focusing facilities selectively. We’ve constrained ourselves to layer the new facilities over the existing UI metaphors in order to enable an incremental adoption. It has been important in order to enable the rapid adoption of Mylyn over the past couple of years. But I’m getting an itch to make more fundamental changes to the user experience, basing more of our interaction with the computer around tasks. A few of these changes are already starting to show up in the Tasktop, the commercial version of Mylyn, which is bringing the task-focused interaction metaphor to the desktop and web applications.

Individual Developers and Mylyn

Q: Are there individual strengths and weaknesses that make developers better or worse at working with Mylyn?

A: There’s one interesting trend that I’ve noticed. In some cases, very experienced and senior developers don’t feel as much need for the focusing facilities of the tool. They’re familiar enough with the code that they work on that they can rely on their mental map of the system in order to navigate, rather than rely on tool support. Thankfully, for the rest of us there’s the tool support. And context sharing makes it easier for developers of all experience levels to collaborate around the code.

Q: What do you hope to accomplish with Tasktop Technologies?

A: We want to bring the benefits of the task-focused workflow to everyone’s workday. Based on our research results and adoption of Mylyn and Tasktop, we are convinced that this way of working can double productivity and bring more control to people’s work life. It’s an audacious goal, given that we’re a growing startup, but we’re doing it alone. We’ve created an innovation network with our partners to bring this shift about, including SpringSource, Atlassian, CollabNet, Rally, and IBM. We’ve made such a big portion of the technology open source that we’ve also had the benefit of hundreds of community patches to help us harden the Mylyn framework and APIs in order to extend them to more and more tools and integrations — three dozen at last count.

Cloud Computing

Q: What do you see ahead for cloud computing?

A: I’m interested in how the split between the client and server is getting redefined. Browser/JS/AJAX clients are here to stay. But for some applications having a rich client that’s connected to the cloud will provide a fundamental advantage. Consider Mylyn, where our goal is to open up your task, typically hosted in a web application, in under 200 milliseconds. We also need to ensure that your work is not interrupted if you go offline or if the network goes down. To achieve that, we have a sophisticated offline store for all the cloud-based data that you access, all while seamlessly integrating browser-based access when you are connected. These hybrid rich client approaches will help bring the desktop user experience to cloud-based applications.

Q: Can you describe the process of writing code?

A: Activate task, focus, repeat.

Q: What do you see as the most important API in Java three years from now?

A: That depends largely on your application domain, but considering the trends in processors and virtualization, I believe that the Concurrency API will be more and more important. As programming models continue to become more asynchronous, the current Concurrency API helps take the pain out of debugging concurrent applications.

Q: Can you give us an example of code that you are most proud of creating and explain why?

A: The InteractionEvent class and related parts of the Mylyn Monitor framework. This is the underpinning of Mylyn’s task-focused interface and isolates the various models that we have created from the user’s interaction with the system, such as the degree-of-interest model that defines the task context. The API and its externalization has not changed since the first Mylyn 0.1 prototype, since it stores interaction data in its most basic form, as a stream of interaction events. As a result, I can load a task context from Mylyn 0.1 into Mylyn 3.2 without requiring any data migration. No other API I’ve written has managed to be that stable, although notably all releases since Mylyn 3.0 have been binary compatible.

Q: The Java class that you couldn’t live without is…?

A: A year ago, I would have probably answered ConcurrentHashMap or CopyOnWriteArrayList. Except that I’ve now used them in the Mylyn codebase so much that we’ve had to reduce their use due to the fact that they can end up allocating a lot of memory when not used diligently.

Q: Favorite Java book?

A: Effective Java by Josh Bloch, by far.

Q: What do you do when you feel stumped?

A: Switch to a lower energy task.

Q: What recent changes to the platform have made your life easier?

A: Generics. And OSGi. I do realize that OSGi may not yet be part of the Java platform, but it has been such a key enabler of all our programming that I can’t imagine using Java without it.

Advice to Beginners

Q: What advice would you give to a programmer new to the Java language?

A: That you’ve made a good choice and that the language will be worth the up-front investment that you need to make to become proficient at it. Statically typed object-oriented languages will continue to play a very important role in how we build large systems. At Tasktop Technologies we use a pretty broad range of programming languages to get the job done. But building our core products and frameworks on Java, leveraging Java-based APIs in the JDK and Eclipse, and having access to the first-rate tooling available for Java, has made it possible for us to work very effectively with a humongous code base.

Be more productive. Guaranteed.

Conferences: RSC and JavaOne 2009

by Mik Kersten, June 2nd, 2009

I just left the Rational Software Conference (RSC) 2009 and arrived at JavaOne. I joined Steve Speicher at RSC to present the results of the Open Services for Lifecycle Collaboration (OSLC) initiative, in which we contributed to the 1.0 specification of a REST-based API for change management. We’ll post more on Tasktop’s participation in OSLC soon.

Our involvement in OSLC started with the tremendous amount of interest in a Mylyn connector for IBM Rational’s ClearQuest. The corresponding bug has been in the top 10 most voted enhancement requests on Eclipse for a couple of years, and is now ranked 4th. We decided with IBM that the best way to approach this was to collaborate on the OSLC initiative, which is now providing a generic way to access tasks in repositories that provide an OSLC web service API. We are leveraging OSLC API to build the soon-to-be-released ClearQuest connector.

If you’re interested in learning more about how OSLC will impact Tasktop and Mylyn users, check out the developerWorks podcast with myself, Carl Zetie and Steve Abrams.


podcast-graphic

IBM developerWorks: Abrams, Zetie, and Kersten on first fruits from the OSLC
Also available in MP3 format

     
  Now it’s time for the craziness that is JavaOne. I just had a quick chat with Michael Ernst who is presenting some very interesting work on Preventing Bugs with Pluggable Type Checking which I was very glad to hear is coming in Java 7. After that it will be good to hear from Rod Johnson on the Spring Framework 3.0: New and Notable.

javaone
     

My talk on what’s new in Mylyn and the task-focused interface will be on Thursday:

mylyn Mylyn: Redefining the “I” of the IDE
Thursday, June 4, 2009
1:30 PM – 2:30 PM Hall E 133
   

Be more productive. Guaranteed.

How-to: task-focused programming

by David Shepherd, April 21st, 2009
Applies to: Tasktop Pro or Eclipse Mylyn
Level: Beginner
Summary: Learn how to focus your Java programming efforts with Tasktop, increasing your personal productivity
tasklistsmaller
Which files was I working with before lunch?

In the course of a day of programming developers often work on many tasks, where each task involves a different set of methods or files. This constant shifting between tasks causes two problems for the developer. First, when working on a particular task, the developer is often interacting with views that contain 90-99% irrelevant information*, causing him to constantly scroll and search.

package Information Overload: All of the classes relevant to a task may not fit in the visible area of the PackageExplorer view. In the view to the left, only one of the two relevant classes (in green) shows without scrolling. The dotted line represents the bottom edge of the view; elements below this line are not visible.

Second, when switching back to a task previously worked on, the developer must recall the details of the previous task, including re-finding the relevant files, in order to restart work on the task.

switchtasks Context Loss: Developers often forget which classes (files) were relevant when returning to an existing task.

Tasktop helps developers by reducing information overload and eliminating context loss. Developers can focus on the high-level problems, knowing that Tasktop is tracking the details for them.

switch Tasktop: Shows only relevant files during tasks and recalls files relevant to previous tasks.

Working Task-Focused

Working task-focused with Tasktop requires only a small adjustment to most developers’ workflow. Here we present an example workflow that developers may follow when working task-focused.

When working task-focused, a developer must activate a task before beginning programming for that task. This is the only required deviation from most developers’ normal workflow. To activate a task you can (A) press the “Activate” button in the task editor, (B) click on a task’s context icon in the Task List, or (C) use the recent task selector in the Task List.

task activation

Once you activate a task you will notice that the Package Explorer is now empty except for the phrase “Empty task context, alt-click or unfocus”. Your files are not missing. Tasktop has filtered your view to show only the files that are relevant for the task. Because you have not yet worked on this task, the set of relevant files is empty. There are several ways to find files and begin working on your task:

Structured Open a file using the Open Type dialog.
  Click on a file in a stacktrace.
  After opening at least one Java file, use Open Declaration or the Call Hierarchy to open other Java elements.
Exploratory Alt+Click in the Package Explorer and the filtered elements will temporarily become visible. Alt+Click on a specific element and its children will become visible. Open elements of interest and they will remain visible.
  At anytime you can unfocus the Package Explorer and all elements will become visible. To unfocus the Package Explorer press the Focus button, whose icon consists of three purple contexts (represented by circles), at the top right.

If the user chooses to start by using Open Type, and opens class X, class X becomes visible in the Package Explorer because the developer has expressed interest in it by viewing it. As a developer views and modifies this and other files, Tasktop automatically determines which files are most relevant, based on a degree-of-interest model (IBM Developerworks Article), and displays only those files to the user. The degree-of-interest model behaves as one might expect, marking files the developer views and modifies as relevant. However, as the number of files with which the developer has interacted grows, the view could become cluttered, so Tasktop systematically prunes and modifies the set of relevant files. For instance, files that the developer viewed only once will eventually drop out of view as the developer views and modifies other files. On the other hand, files that the developer modifies or views extensively will appear as bold in the Package Explorer, denoting their importance to the given task. The table below shows an example of developer activity and the corresponding elements that Tasktop would display as a result. Note that because class B was only viewed once, and never revisited, it has dropped out of view. In practice, it takes more activity to cause a file to drop out of view than the activity shown in the example.

Developer Activity Files showing in Package Explorer
View class A
View class B
Modify class A
View class C
Modify class C
Modify class A
Modify class C
View class A
View class D
Context

Working with the Package Explorer focused can feel like a major step for some developers. For developers that want to experiment with working focused without this step we recommend unfocusing the Package Explorer. Files that are viewed or modified many times during a given task will appear as bold in the Package Explorer, to indicate their unusually high importance to the task. When working with a task, notice how often that you return to the same few files. If you find yourself continually visiting the same set of files for a given task try focusing the Package Explorer. Tasktop will then focus you on that set of relevant files and eliminate extra scrolling and searching.

Multitasking

Tasktop helps you focus on completing individual tasks, but most developers spend their day moving between several tasks. Multitasking is where Tasktop really shines. Consider working on task A and populating your Package Explorer with relevant files. After working on this task for an hour you are interrupted by a high priority task B, which involves a different set of files. Upon finishing task B you return to task A. When you activate task A you will notice that the Package Explorer is populated with the exact same files as when you left the task. The diagram below illustrates the Package Explorer’s response to these task switches.

taskswitch

Repopulating the Package Explorer helps you restart your task with a minimum of searching and manual recollection. Often, developers will also put additional notes on the task itself, reminding them of the next step in completing the task, further reducing the cost of the context switch.

Managing Change Sets

Working task-focused with Tasktop has many additional advantages. For developers, one of the chief advantages is automatic change set management. As you work on a task and modify files Tasktop creates a change set for that task. Then, upon task completion, developers can submit exactly the files changed to address the given task, eliminating the need for manual tracking. Offloading this tracking allows the developer to work on more tasks in parallel, because she has confidence that there is a record of which changes go with which task. Managing change sets in this way virtually eliminates unintentional commits of unrelated files, which often cause problems in a source repository (e.g., compilation errors due to incomplete commits).

More Focus

Once you are comfortable working with the Package Explorer focused there are many other ways that Tasktop can focus your work. Here are a few highlights for you to explore:

Focus your assist menus: Tasktop will place relevant elements at the top of content assist and Open Type selection menus. opentype
Focus your source code editor: Tasktop can be set to fold all elements that are not relevant in your source code editor. folding
Focus across all views: Tasktop focuses many other code views, such as the outline view, providing the same focus consistently throughout the IDE. outline

Working Task-Focused

Currently most code views in Eclipse are ineffective… they show too many files or elements to be usable. Tasktop reclaims these views by limiting their scope to the current task and the relevant files. Task-focused code views reduce clicking and scrolling during individual tasks and ease the transition between two tasks by serving as the programmer’s memory of relevant files. Tasktop tracks the details of programming tasks so you can focus on being more productive.

*This estimate was calculated using the author’s workspace and the author’s average number of relevant files.

Be more productive. Guaranteed.

Community News, March 31, 2009

by Wesley Coelho, March 31st, 2009
Announcing SpringSource Tool Suite 2.0 by Christian Dupuis
SpringSource has announced general availability of the 2.0 version of the SpringSource Tool Suite (STS). The tool suite incorporates a Tasktop Certified task-focused user interface to speed enterprise application development.
 
Atlassian Eclipse Connector 1.0 - Beta now available by Ken Olofsen
“Anyone using the Mylyn plugin for JIRA understands the value of having a task-focused interface for managing your work. What’s really exciting about the new Eclipse Connector is that we have teamed up with our friends at Tasktop in order to provide similar functionality for code reviews in Crucible as well as your Bamboo continuous integration environment.”
 
Mylyn WikiText 1.0 Released by David Green
Mylyn WikiText provides wiki markup parsing and editing support for Eclipse, Mylyn, Ant and stand-alone applications. The new WikiText capabilities enable rich formatting of Tasktop and Mylyn task descriptions and comments using wiki markup.
 
Project Kenai Release Notes: Use Tasktop and Mylyn with Project Kenai
“It is now possible to use Mylyn, the task management tool, with a project that uses JIRA for issue tracking on kenai.com.”
 
Using desktop notifications by Torkild U. Resheim
Mylyn and Tasktop show popup notifications when there are incoming changes to your tasks. In this post, Torkild shows how to add this functionality to your own application.
 
Eclipse hints, tips, and random musings by Wayne Beaton
Wayne Beaton demonstates his Eclipse Slideshow presentation software built with Mylyn WikiText. Check out the video and screenshots.
 
EclipseCon roundup by Alex Blewitt
“About the only big event in Eclipse is the introduction of Mylyn, which allows for context-based filtering of the current working set to reduce the amount of data shown on the screen. That, too, has resulted in its own mini-ecosystem of connectors…”
 

Do you have news for the task-focused community? Send news to news@tasktop.com

Be more productive. Guaranteed.

Mylyn at EclipseCon

by Mik Kersten, March 25th, 2009

In spite of travel cuts, EclipseCon has been as lively and fun as ever. We had several presentations of Mylyn on Monday, the highlight being Rob and Steffen’s tutorial. The Eclipse awards were entertaining as usual. Bjorn-Freeman Benson roped me into doing a PowerPoint Karaoke session with Oisin Hurley. We had to give a short talk, to someone else’s slides, which Bjorn had selected and we had not seen before. We got a Higgins slide deck and contrived an elaborate pitch of how Higgins was the platform for Identity Theft 2.0. There were a lot of laughs.

Still ahead is my Mylyn: Redefining the “I” of the IDE talk in the keynote ballroom at 1:30pm today. I’ve got some new slides on our approach to integrating web services with Eclipse via both SWT/Browser bridging and a WS/REST layer for Eclipse. While embedding the IDE in the browser has been a hot topic with RAP, e4, and Bespin buzz, the hybrid approach we take also has some very neat properties and applications that I’ll show. Immediately after my talk Steve Northover and Boris Bokowski will show off some of the SWT technologies that make this approach possible. The nice thing is that in the upcoming Eclipse 3.5 release some of the very tricky stuff we’ve had to do in Tasktop’s browser, like invoking JavaScript form Java and vice versa, will now be available in the platform.

At 10:10 am on Thursday I’ll be on the Architecture Council Panel. A big highlight of Thursday is going to be the 50 minutes towards a better you session where David Green will present WikiText and Steffen Pingel will give what’s probably the first presentation dedicated to building Mylyn connectors. After that I’ll be on the Future of Open Source and Business panel at the co-located Open Source Executive Strategy Summit. The other panelists are leaders at Oracle, Cisco, the Bank of America and Microsoft, so I’m looking forward to representing the point of view of startups in the Eclipse ecosystem. One of the great things about Eclipse is the fact that small companies can play a big role in helping shape the technology that we all use.

Now back to smoothing the slides and demos for the 1:30pm talk…

slides1

Be more productive. Guaranteed.

Atlassian Bamboo and Crucible connectors for Eclipse Mylyn released

by Mik Kersten, March 23rd, 2009

Last fall Atlassian and Tasktop joined forces in order to provide users of Atlassian’s very popular developer tools with first-rate Eclipse and Mylyn integration. That effort reached its first public milestone today, with Atlassian’s beta release of the Crucible and Bamboo connectors for code review and continuous integration.

crucible-beta2

Our relationship with Atlassian started a couple of years ago with a tremendous amount of Mylyn community demand for a JIRA connector. Atlassian’s developer tool suite has grown considerably since that time. Confluence has become a popular wiki, and last week’s Mylyn 3.1-based release of the JIRA connector now supports Confluence markup for editing issues inside Eclipse. Crucible is a newer tool that has made it possible to work with code reviews as easily as it is to work with tasks and issues. With today’s release, all of Crucible’s facilities are hooked seamlessly into the Eclipse IDE. Reviews can be managed in Mylyn’s Task List and scheduled with a click.

Commenting on reviews is as easy as commenting on issues, and can be done right from the Java editor. Changes under review can be inspected in a diff view. And as expected from a Mylyn integration, the task-focused interface works for reviews, meaning that you only see the code relevant to the review in the Package Explorer and Java editor. We’ve been using this for all of our code reviews at Tasktop and as expected, the integration between Crucible’s collaborative facilities and Eclipse’s code navigation is a killer feature that we’re very happy to get into the hands of Mylyn and Tasktop users. It’s great to see this new application of the task-focused interface action, two new Tasktop Certified connectors, and the Mylyn API changes that Crucible and Bamboo are pushing will open up doors for other interesting tools.

crucible-beta1

The Bamboo integration speaks for itself. Setting up a Bamboo server is as easy as connecting Mylyn to JIRA, at which point builds can be managed within the IDE, and Mylyn’s desktop notifications make you aware of build status changes. My favorite feature is the ability to populate Eclipse’s JUnit view with failed tests in order to rerun them. You can then right-click a test to create a JIRA issue from the failure and have that instantly show up in your Task List, all in just a few clicks.

For those at EclipseCon, check out the tools in action at tonight’s BOF and the other Mylyn sessions. For more information check out the Atlassian blog post, New & Noteworthy and for those of you already using Crucible and Bamboo, enjoy!

Be more productive. Guaranteed.

Tasktop 1.4 and Eclipse Mylyn 3.1 released

by Mik Kersten, March 16th, 2009

Today’s Tasktop 1.4 and Eclipse Mylyn 3.1 releases are a milestone in the evolution of the task-focused interface. Mylyn continues to improve as a framework and core tools for open source developers, while Tasktop evolves its commercial integrations and enterprise-ready feature set. Together, these tools are bringing the benefits of the task-focused interface to a rapidly growing audience.

tasktop-141

Mylyn 3.1 includes 432 bug fixes and enhancements, and 134 community contributions. This represents our highest rate of patches applied to date. One highlight is that the Mylyn Bugzilla Connector can finally edit all bug attributes, such as custom flags, so there’s no more need for users of customized Bugzilla installs to fall back to the browser.

This release also includes WikiText, a new addition to the Mylyn framework. Mylyn provides a broad set of Eclipse-based tools for working offline with web-based artifacts such as tasks and bugs. Wiki markup is a simple and powerful way of editing the text that’s presented by these applications. For example, many projects use wiki syntax when interacting on tasks and authoring documentation. As of Mylyn 3.1, wiki markup becomes a first class citizen of Eclipse. If you’re editing a JIRA issue with Confluence markup, you can do so directly from Mylyn’s task editor. If you’re authoring online help in a “.textile” file, you will immediately see the effects of your formatting without needing to preview changes in a web browser. In other words, the power of Eclipse’s code editing facilities are now available for your wiki editing.

tasks-wikitext

All of these features, and many more, are also available in Tasktop Pro 1.4, the enterprise ready and fully supported product based on Mylyn. The biggest new feature in Tasktop 1.4 is the time synchronization. This has been one of the most requested features from our user community. It has taken us this long to deliver it because time tracking automation is a very tricky thing to get right. For example, if the automation is done without the user’s consent, it can have a big brother effect, which defeats our goal of empowering developers. So as usual, we have put all the control in the developer’s hands. Next to some nice BIRT-based reports you now have the ability to adjust all your timings before synchronizing them with the task repository, ensuring that all your activity is always accounted for. Tasktop will automatically track time that you spend working both inside and outside of Eclipse, present you with a chart of your activity, and allow you to edit that activity as needed. This is a huge time saver for those of us who need to fill out time sheets. For example, I recently learned that I needed to re-create six months of time sheets for R&D tax credit purposes. It took me only one hour to create and submit those reports.

time-tracking-medium11

There are many other new features in Tasktop 1.4, including support for Microsoft Exchange and the ability to create tasks from email threads. But my favorite is the streamlining that we have done for focused web browsing. For those who browse with Tasktop, bookmarks become a legacy technology. With this release, we have simplified the way that browsing activity populates your task context. Just activate a task, start browsing, and you will see a more concise context that represents your interaction with both web pages and web applications. This makes Tasktop’s one-click browsing session restore even more useful.

Stay tuned for upcoming announcements of task-focused tools coming from our partners, including the impending release of the premier IDE for users of the Spring Framework, the SpringSource Tool Suite 2.0, and some very neat developer tools that we have been working on with Atlassian. In the meantime, check out the New & Noteworthy for Tasktop and be more productive today.

Mylyn 3.1 New & Noteworthy

Tasktop 1.4 New & Noteworthy

Be more productive. Guaranteed.