Archive for the ‘Mylyn’ Category

Perforce Mylyn Connector Released

Tuesday, May 18th, 2010

We’ve seen a steady stream of requests for Perforce integration and we’re pleased to join Perforce in announcing P4Mylyn, a Tasktop Certified Mylyn connector for the award-winning Perforce Fast Software Configuration Management System.

P4Mylyn is Tasktop Certified

P4Mylyn is both a full-featured SCM connector and a task repository connector for “Jobs”, Perforce’s built-in defect tracking system. With the connector, Perforce teams can now take advantage of Mylyn’s SCM capabilities such as organizing commits by task, auto-generating comments, and navigating from code to the relevant task. Furthermore, thanks to the connector, Perforce can now be seamlessly integrated with the growing ecosystem of more than 45 compatible defect trackers and project management systems.

Perforce Screenshots
Perforce Jobs in the task list and modified files grouped by task
in the Synchronize view

Key Features

  greenbullet_icon Automatically track the context of Perforce-managed assets related to each task. This makes it easy to commit to Perforce (or revert) only the relevant changes when working on multiple tasks.
  greenbullet_icon Generate commit comments with links to the active task, creating seamless code-to-task navigation and traceability.
  greenbullet_icon Integrate Perforce with defect tracking and project management tools that have Mylyn connectors, such as Atlassian JIRA, Bugzilla, CollabNet TeamForge and ScrumWorks, IBM Rational ClearQuest and ClearCase, Rally, ThoughtWorks Studios Mingle and VersionOne.
  greenbullet_icon Access ‘Jobs’, Perforce’s built-in defect tracking system, using Mylyn’s task-focused interface. This gives developers complete visibility into the tasks their team members are working on and automatically links their own pending work to the Perforce job being fixed.
  greenbullet_icon Display only the changes relevant to a given task when using graphical differencing tools.

Perforce participation in the Mylyn project

Perforce has actively engaged with the Mylyn project and taken a key role in driving innovation in the Mylyn SCM APIs. This is great news for the entire Mylyn and Tasktop community as developers using any of the various Mylyn SCM connectors will benefit from the API upgrades, which make the SCM experience better integrated and more robust for everyone.

Get the P4Mylyn connector

P4Mylyn is included in the Perforce Plug-in for Eclipse. View installation instructions or install from within Eclipse using the Mylyn Connector Discovery via New Task > Install More Connectors…

Need Perforce? Download and evaluate Perforce free from the Perforce website.

Be more productive. Guaranteed.

Meet us at JAX 2010

Monday, May 3rd, 2010
JAX 2010 Mik Kersten, Tasktop CEO and creator of the Eclipse Mylyn project, will be presenting at JAX 2010 in Mainz, Germany this week. Mik’s talks will cover new features in the latest Mylyn release and discuss the impact of Twitter and other forms of social collaboration on software development. Steffen Pingel, Senior Software Developer at Tasktop and Mylyn Committer, will deliver a talk on his experiences with bringing a Firefox-style install experience to the Eclipse platform. Here is the complete list of Tasktop and Mylyn related sessions.

  greenbullet_icon From Tasks to Tweets: Social Collaboration for Software Developers
Mik Kersten, Wednesday, 4:15pm
Developers are increasingly relying on social technologies to get work done. Some worry that constant real-time communication will bring productivity to a halt. But new technologies and practices are forming in order to help organizations harness social collaboration as part of an Agile process and integrated tool set. This talk will demonstrate how we can use the latest social tools alongside established ALM technologies to promote productivity instead of procrastination.
  greenbullet_icon Mylyn 3.4: from Stack Trace to Scrum
Mik Kersten, Wednesday, 10:15am
The rapid adoption of Mylyn has made next big evolution of the IDE clear. Stories and tasks are more central than sourcecode, focus is more important than features, and integration with the Agile workflow is the biggest productivity boost since code completion. This talk will review how new features in the latest Mylyn release and new integrations can make the entire Agile team more productive.
  greenbullet_icon Bringing easy Extension Install to your RCP Applications
Steffen Pingel, Tuesday, 4:45pm
Eclipse P2 is a powerful tool for managing plug-ins but lacks a UI that matches the ease of use of the Firefox extension installer which has helped to perpetuate the browsers success. To bring the Firefox install experience to RCP applications and Eclipse-based tools the Mylyn project has developed a reusable component on top of P2 that provides a simplified installer.

If you’d like to meet with a member of the Tasktop team at JAX 2010, contact us and we’ll arrange a convenient time.

Be more productive. Guaranteed.

Meet us at EclipseCon 2010

Monday, March 22nd, 2010
speaking-eclipsecon-2010 Steffen Pingel and Shawn Minto from the Tasktop team will be at EclipseCon which is being held this week (March 22nd to 25th) at the Hyatt Regency in Santa Clara, California. Mik Kersten regrets that he won’t be able to attend until Wednesday evening due to a personal matter. Here is the complete list of Tasktop and Mylyn related sessions.

  greenbullet_icon Update, demos, and open-panel on Microsoft’s tooling for
interoperability with Eclipse

Monday, 3:50pm
Tasktop’s Shawn Minto will give a demo of the updates to Eclipse for Windows 7 that Tasktop has been collaborating on with Microsoft.
  greenbullet_icon Documentation: Single-Sourcing, Crowd-Sourcing And Other Voodoo
Tuesday, 2:00pm
David Green of Make Technologies and Chris Aniszczyk of Red Hat will deliver a session on documentation best practices at Eclipse including on how to use Mylyn WikiText.
  greenbullet_icon Simplifying update and extension install for RCP applications
Wednesday, 3:45pm
Steffen Pingel of Tasktop will co-present with Susan McCourt of IBM Rational on how to leverage p2 to add easy-to-use extension install capabilities to Eclipse RCP applications.
  greenbullet_icon From Tasks to Tweets: The IDE is Going Social
Thursday, 1:30pm
In this talk Mik Kersten will review how communication technologies have changed the face of the IDE in the past decade and conclude with a longer-term vision of how developers will communicate around collaborative tasks.
  greenbullet_icon The future of Mylyn
Thursday, 2:00pm
Mik Kersten will introduce the new sub-projects of the Mylyn project and discuss the extension, collaboration and contribution opportunities that will be created.
  greenbullet_icon Mylyn Reviews - Finding a new home for ReviewClipse
Thursday, 2:30pm
Mario Bernhart and Kilian Matt of INSO will explain why ReviewClipse is set to become a sub-project of Mylyn and how it provides task-focused code review capabilities.

If you’d like to meet with a member of the Tasktop team at EclipseCon, contact us and we’ll arrange a convenient time.

Be more productive. Guaranteed.

Mylyn Best Practices in Bite-Sized Chunks

Thursday, March 18th, 2010

Over the past year I’ve been working closely with those in the Tasktop and Mylyn community at large to define best practices for task-focused programming and collaboration. My goal has been to share what I’ve learned about how the leaders in task management use Tasktop and Mylyn to collaborate effectively. To this end, I’ve created several articles on the major task management topics. My focus on major topics is necessary to communicate the full task management vision, but it also results in longer, more intense in-depth posts.


@marcesher

I’ve found the perfect companion series to my in-depth best practices posts. Marc Esher, a thought leader in the Eclipse and Cold Fusion community has been creating an outstanding series of articles on Mylyn best practices in short, bite-sized posts. His content includes great text and often includes a video walkthrough of the feature or concept that he is focusing on. Next coffee break skip the walk (or drive) to Starbucks, grab a home-brewed cup, and spend 5 minutes with one of Marc’s posts. You’ll save a few dollars and your new-found Mylyn knowledge could save you a few minutes (each day!).

Here are Marc’s Mylyn posts to date:

  1. Why Mylyn is Indispensible
  2. The Best Eclipse Menu You’ve Never Heard Of
  3. Mylyn and Jira Short Tutorial
  4. Mylyn and Jira Sharing Context
  5. Mylyn Creating New Issues

I hope you enjoy these articles. If you have any input on task management best practices please join the dialog with me on Twitter. I love to hear from users and your input will influence our future posts.

Be more productive. Guaranteed.

Eclipse Foundation Board Elections

Friday, March 5th, 2010

Each year the Eclipse Foundation holds an election to vote in board representatives for its committers and sustaining members. If you represent one of these member classes you have one week from today to cast your vote. I’m running as a sustaining member representative and my vision is below. Voting uses a single transferrable voting system, so be sure to read other candidates’ positions before voting.

Vision

Eclipse has reached a stage of maturity that enables Sustaining Members to play a primary role in driving the direction of Eclipse. As Sustaining Members, we represent the largest volume of the Eclipse membership. In 2010 our impact on Eclipse and the value we receive from participating are poised for substantial growth.

I’ve been closely engaged with both the technology and the business aspects of the Eclipse ecosystem since the outset in 2001. I’ve worked directly with many Solution Member companies and watched some Eclipse business models flourish while others have failed. Starting a successful company around Eclipse has given me a pragmatic perspective on how to participate in the platform while growing both product and service revenues on Eclipse-based offerings. As a Sustaining Member representative, my duty will be to apply that knowledge to help make your Eclipse-based efforts successful.

Succeeding in Eclipse means striking a balance between the member, committer and user communities. As board representative, my priorities will be to:

  greenbullet_icon Facilitate reaching users: Marketing in a vendor-neutral open source ecosystem can be far from obvious, and reaching the very broad Eclipse user base is needed for both the commercial success of members and of Eclipse as a whole. I have been closely involved in improving the install story for Eclipse solutions and the upcoming Eclipse Marketplace client. These efforts will provide the next generation of opportunities to get your solution into Eclipse users’ hands.
  greenbullet_icon Lower the barrier to engaging with projects: With product releases and other pressures, too often the step of getting directly involved with an Eclipse project that you build on does not make the cost/benefit cut. But not getting involved has the longer-term cost of incompatibilities and overhead. Lowering the bar for direct participation will provide members with better access to the collaboration and contributor community that make Eclipse a great open source ecosystem. On the Mylyn project we have had over 800 bugs and feature requests resolved by community contributions. I will use my experience of making this work for Mylyn to help lower the overhead of participation with existing projects so that similar benefits are accessible to more members.
  greenbullet_icon Listen to members: My job will be to represent your needs on the board, and I will work with the other representatives to actively seek out feedback from all Solution Members. I helped make the needs of individual committers heard as a committer representative on the Eclipse board, and will ensure that your needs are
represented in discussions and decisions made at the board level.

About the candidate

Dr. Mik Kersten is the CEO of Tasktop Technologies and lead of the Eclipse Mylyn project. Mik is a popular speaker on Eclipse at conferences in the United States, Germany, and worldwide. Highlights of Mik’s contributions to Eclipse include:

  greenbullet_icon Creator and lead of the Eclipse Mylyn project (since 2005)
  greenbullet_icon Active member of the Eclipse Architecture Council (since 2007)
  greenbullet_icon Elected committer representative on the Eclipse Board of Directors in (2008/2009)
  greenbullet_icon Only Eclipse evangelist to be voted a JavaOne Rock Star (2008 and 2009)
  greenbullet_icon Only Eclipse content author on the top authors of the decade list of IBM developerWorks Java
  greenbullet_icon PhD in Computer Science from the University of British Columbia that lead to the invention of Mylyn’s task-focused interface (2006)
  greenbullet_icon Co-creator of the Eclipse AspectJ and AJDT projects (2002) based on his work creating of the first Aspect-Oriented Programming (AOP) tools, Xerox PARC (2000)

Related publications

  greenbullet_icon Symbian Blog: Mik Kersten on Transparency
  greenbullet_icon Tasktop Blog: Growing open source ecosystems: the install story
  greenbullet_icon Tasktop Blog: Tasktop working with Microsoft to improve Eclipse on Windows 7
  greenbullet_icon How Software is Built: Interview with Mik Kersten (highest ranked in series)
  greenbullet_icon Tasktop Blog: Tips on paying for free software
  greenbullet_icon Tasktop Blog: Platform for Innovation, Part 1: Openness & Modularity

Read more about Mik Kersten on Wikipedia.

Be more productive. Guaranteed.

Mylyn Atlassian JIRA Connector Moving

Monday, February 22nd, 2010

The Mylyn JIRA Connector has been developed as part of the Eclipse Mylyn project since 2006 (Bug 109905), when Wesley Coelho and I met in a Vancouver coffee shop and decided to start collaborating on an idea for a startup that involved extending Mylyn’s open source integrations to commercial tools. A year later Wesley became one of the first employees at a new company called Tasktop Technologies, the connector took off, saw steady community contributions, and Mylyn’s reach was extended to JIRA users. Later in 2007 we kicked off a collaboration with Atlassian to improve the JIRA Connector, which in 2008/09 led to Tasktop working with Atlassian to create the initial Atlassian Bamboo and Crucible connectors, now part of the Atlassian Connector for Eclipse effort hosted on studio.atlassian.com. The time has come to merge the two codebases of Atlassian’s Eclipse integrations, and Atlassian has asked that the JIRA connector move to studio.atlassian.com.

According to Atlassian, the decision migrate the source code to their own infrastructure was driven by a desire for greater operational efficiency. Both the implementation of the Connector for Eclipse and the APIs in Atlassian’s server products are evolving, and hosting all these projects in a unified infrastructure enables faster development and more frequent releases of new and improved functionality. The Atlassian Connector for Eclipse will continue to be open source and distributed under the EPL. Anyone can view full project activity and download the full source at https://studio.atlassian.com/browse/PLE. Currently, all committers to the Atlassian Connector for Eclipse are either Atlassian or Tasktop employees, but Atlassian is working to allow others to commit new functionality to the code base.

Mylyn has grown from two integrations to over four dozen, and is playing a driving role in developers’ adoption of Application Lifecycle Management (ALM) and Agile collaboration tools. Having a connector hosted as part of the Mylyn project used to be vital due to the friction of finding and installing Eclipse extensions, and the JIRA connector got very broad exposure. But with our introduction of the Mylyn Connector Discovery feature in last year’s Eclipse Galileo release, it became trivial for users to install Mylyn connectors wherever they are hosted. Also thanks to the discovery mechanism, the move will be transparent to users of the integration.

For users of Tasktop and Mylyn, the main concern is the availability of a high-quality connector. One of the most important aspects of Mylyn’s architecture is that it provides a unified user experience across all integrations, since the majority of the user interaction is handled by the Mylyn framework. Atlassian has provided assurance that they will contribute to the Mylyn framework as part of increasing their own resources behind the integration, which will help ensure that the integration evolves along with upcoming changes in Mylyn. An expected benefit of the move is that some of the shortcomings of the integration that stem from JIRA’s SOAP APIs, such as the lack of support for custom fields and workflows, will be addressed more quickly with all of the code hosted and supported under one umbrella. Tasktop’s relationship with Atlassian continues, and the JIRA connector remains part of the Tasktop Certified program that ensures usability and ALM stack interoperability.

Mylyn’s goal is to provide a framework for Eclipse ALM integrations and to support an ecosystem of extensions. To that end, we have aimed from the start to provide reference integrations to open source tools, starting with Bugzilla. The JIRA integration was the exception as JIRA is closed source, but has been very popular with open source developers due its use in some open source communities such as Apache. The move of the JIRA connector restores the clear split between Mylyn’s reference integrations to open source repositories, hosted on eclipse.org/mylyn and the very the broad ecosystem of integrations with closed source tools. This will help focus the resources of the project on the core framework and open source integrations, while mechanisms such as Connector Discovery and the Tasktop Certified program ensure easy installation and the quality of the connectors that developers need to get the most out of Mylyn.

Be more productive. Guaranteed.

Mastering the Eclipse Toolset: Change Sets

Tuesday, January 19th, 2010
Summary: Learn how to become a master of the Eclipse Change Set Toolset, increasing your individual effectiveness and improving your team’s communication.
Applies to: Tasktop Pro, Eclipse Mylyn
Supported Connectors: Bugzilla, ClearQuest, CollabNet, JIRA, Mingle, Rally, ScrumWorks Pro, Trac, VersionOne (coming soon)
Supported SCMs: CVS, Subversion (SVN), ClearCase (coming soon)

Software Tools

“An apprentice carpenter may want only a hammer and saw, but a master craftsman employs many precision tools. Computer programming likewise requires sophisticated tools to cope with the complexity of real applications, and only practice with these tools will build skill in their use.

–Robert L. Kruse, Data Structures and Program Design

Eclipse is one of the most sophisticated toolsets ever offered to developers. Its plethora of available tools can eliminate many headaches from a developer’s day. Unfortunately, there are days when headaches still occur, as developers struggle to discover and use all Eclipse has to offer. A great technique for discovering the most useful tools in Eclipse is to watch an experienced developer work. In this post I’ll be sharing my change set toolset knowledge, gained from watching others, in hopes of eliminating unnecessary clicks and frustration from your workday.

The (Small) Cost of Change Set Support

Money for Nothing

Contrary to many spammers’ beliefs, everything in life has some costs, and the advantages offered by Tasktop and Mylyn’s change set tooling are no exception. To enable the benefits of the change set tooling you will need to:

  1. Click the “Activate” button on a task before starting that task
  2. Click the “Deactivate” button when finishing a task

Once you develop the habit of working in this way (see Task-Focused Tutorial for details) then you will be able to:

  1. Navigate from any line of code to the relevant task or bug report
  2. Review your teammates changes and view only the files that changed
  3. Quickly erase changes made for a given task (Undo at the task level)

The following sections will walk you through different aspects of the change set tooling and show you how to maximize your benefits.

Change Set - ..the set of changes made in a single commit.
http://en.wikipedia.org/wiki/Revision_control
In (hopefully) all software development organizations there is repository for storing your code. For Eclipse users this often means using a Software Configuration Management (SCM) system like CVS or Subversion. When working with an SCM developers usually download the entire code base and then submit updates to this code base in the form of change sets, or a set of files that they have changed.

Tip #1: Tracking Current Changes

Tasktop and Mylyn automatically track the changes that you make as you work on a task, thus automatically creating a change set. You can view all of your current changes by opening the Synchronize View. Be sure to toggle the view model (circled below) until you are viewing changes as change sets.

Change Sets in Synchronize View

Viewing changes using the Synchronize View makes it easy to quickly review others’ changes and to manipulate your own. The left pane in this example contains four change sets, one of which is expanded.

Clear Your Changes

As you make changes when working on a task a new change set will be created and shown in the Synchronize View. Thus, when you have completed a task it is easy to commit only the relevant code. Open the Synchronize View, right-click on the change set, and select Commit. Occasionally you will work on a task and then abandon it, either because it seems infeasible or because priorities have shifted. In this case it is easy to remove all the changes you’ve made for that particular task by selecting the change set in the Synchronize View and selecting Override and Update (see screenshot above).

Tip #2: Connecting Commits with Tasks

All source code was written for a reason, but when viewing a particular file the original reasoning is not always clear. Fortunately, when using Tasktop/Mylyn tasks to track your work you can easily connect every line of code with the reason it was changed. This connection makes interpreting individual files easier and reviewing changes after-the-fact possible.

Map from Code to Task

Creating and Configuring Automatic Commit Messages: When using tasks to track your work meaningful commit messages will be attached to every commit that you make. When you attempt to commit a set of files Tasktop/Mylyn will automatically populate the commit dialog with tasks that were active when you changed these files.

Automatic Commit Messages

In the above example you can see that the file AbstractTaskAssociation.java is the only file in this change set and that bug 5256 was active when it was changed. To establish a connection between this change set and your task simply do not erase the commit message. Later, when viewing the changed lines in file AbstractTaskAssociation.java it will be easy to trace back to the relevant task (discussed below).

Advanced Tip: Changing Your Commit Message
If your team decides that these commit messages are not exactly as they would like them to be they can configure the template by selecting Tasks -> Team in Window -> Preferences. They can use the following variables as well as any text to alter the commit message. You must keep the task URL in the commit message to enable easy task lookup, all other variables are optional.
Commit message variables: connector.task.prefix, repository.kind, repository.url, task.assignee, task.cc, task.description, task.id, task.key, task.keywords, task.lastmodified, task.notes, task.priority, task.product, task.reporter, task.resolution, task.status, task.summary, task.type, task.url, task.completiondate, task.creationdate, task.reminderdate

From Code to Task: Enabling the automatic commit messages allows your team to trace from any line of code back to the last task that changed that line of code. Starting from a source file, use the context menu in the editor to select Team -> Show Annotations. This will populate the gutters of the editor with a line to task mapping.

In the example above you can see that method isValidUrl was last changed to ensure that URLs did not contain spaces. To open the relevant task use the context menu in the History View (automatically opened for you) and select Open Corresponding Task.

Map from Code to Task

Viewing the task has several advantages for understanding a particular line of code.

  1. The description and comments of the task often have relevant information, including design decisions or problems that were encountered.
  2. The task context (if available) will allow you to interpret the changes as a whole.
  3. The task contains information about the people involved, including those that did not make the commit, whom you may want to discuss the code with.

Tip #3: Sharing Changes with the Team

In the open source community developers often need to submit a patch, essentially a change set, to address a particular bug. The developer in charge of that component will review the patch and either apply it or ask for improvements. The process of creating, reviewing, applying, and reapplying a patch is painless with Tasktop.
When a developer is creating a patch he (or she) usually begins with an up-to-date workspace. He then changes a few files to implement the fix. Once complete, he can use the Synchronize View to create the patch (left), which he can then attach to the bug using the Task Editor (right).

Share Changes with Team

Sharing Changes with Your Team (click to enlarge)

Once the patch is attached to the bug he can revert to a clean workspace by Overriding and Updating his change set in the Synchronize View. If the patch is not approved he can, directly from the task, reapply the patch (below) and begin working on the necessary changes, again submitting an updated patch to the bug.

Apply the Patch

The developer reviewing the task also has the advantage of reviewing the changes in his workspace instead of reviewing a text file. He can apply the changes to his workspace and download the context (below) so that only the relevant files are shown in his package explorer. Reviewing changes in this way allows the developer to focus on only the changed code while reviewing, testing, and applying the patch.

Retrieve Context

Attach Your Context!

In this post I’ve shared with you the toolset that Eclipse and Mylyn/Tasktop offers for change sets. There are many opportunities to eliminate extra clicks and improve collaboration by taking advantage of this tooling. A great way to start using this tooling is to activate your Mylyn/Tasktop tasks and attach your context when submitting a patch. Attaching your context when submitting a patch makes it easier for other developers to review your patch, actually increasing its odds of being accepted.

Attach Your Context
Next time that you submit a patch… do not forget to check “Attach”!

Mik Kersten on Transparency

Thursday, January 14th, 2010

symbian This is a repost of Hayden Shaughnessy’s interview of Mik Kersten originally published on the Symbian Blog.

What are the prerequisites of a vibrant open source community? Mik Kersten’s open source career began with AspectJ, a project that made its mark with a core team of committers rather than community contributions. In contrast, the Eclipse Mylyn project Kersten created has seen over 800 bug and enhancement requests resolved by community patches, which represents 1/7th of the bugs resolved on the project.

Mik, pictured [at right], is CEO at Tasktop Technologies. He attributes much of the success at Mylyn to the project’s transparency.

I asked Mik to share some of the lessons he’s learned from his open source career and began by asking how we should understand transparency when of course there are commercial pressures and ingrained practices that predispose people to a more closed approach somewhere along the line on any project.

How do you manage that conflict and maintain an open management philosophy?

MIK: What’s essential to the transparency that enables community contributions is public and open discussion forums. It is common to have an organizational split between an open source project and one or more companies behind the project. One aspect of that split is the approach to making product plans, design discussions and decision making visible to the open source community.

The level of transparency can determine how permeable a project is to community participation. For example, if Tasktop Technologies were to decide it wanted to introduce a new feature into Mylyn and attempted to do this in a non-transparent way, committing the code for the feature when nearly complete, we would forego the value of community participation and miss the opportunity for the community to harden, improve and extend that feature prior to its release.

How important is an open communications policy to that?

MIK: I believe that it is. It took me a long time to learn what that means, and I still frequently see companies having the goal of community participation, but not getting it right. Open development has to be transparent. Too many phone calls or private email threads on the side, and it becomes too hard for the community to follow what’s going on. Private communications will always have a role, but conversation that involve changing of a feature or API need to happen in the open and be captured for future review. That’s why Bugzilla has become such an effective vehicle and knowledge base for the Eclipse community.

What if that policy leads to conflict? You’re also an advocate of open conflict aren’t you?

MIK: There’s a range of conflicts we see happen. A great thing about open source development is the passions of technologists involved, especially when they are contributing in a volunteer capacity. Heated discussions arise regularly on any popular project, and are usually straightforward to resolve before they degenerate into flame wars. To handle the case when they do, we created guidelines to ensure that communications are respectful and professional.

If there’s a technical conflict, committers can vote. Meritocracy is a key factor even with democratic voting, since participants on the project tend to value the opinion of those contributing most.

More fundamental disagreements can arise, for example those over the trajectory of a project or governance model. In projects controlled by a single vendor, this is less likely since there is a top-down level of control. Vendor neutral projects and foundations are more likely to see this problem occur.

A fundamental level of conflict of this sort has more potential for damaging the community, since a lack of convergence can result in a damaging fork for both the code and the community.

I believe that it is important for the conflict happens in the open, since there can be separate and valid viewpoints within a project. Rather than having the project die the death of a thousand cuts by having people disagree continually due to the fundamental conflict not being identified, an open discussion will more quickly identify a more stable outcome, such as the need to split a growing project into sub-projects with independent leadership.

How do you regard the Symbian open management approach?

MIK: I haven’t yet engaged closely enough to have direct experience. But the approach of deploying and evolving Eclipse best practices and collaboration technologies like Bugzilla is a great step. Symbian faces challenges we at Eclipse do not. The size of the Symbian Foundation means it can handle engineering efforts independently of the community. In Eclipse, the community has to do all of the engineering work.

This is a double-edge sword.

We have experienced the problem of the “common good” of release engineering infrastructure not being provided by the Eclipse Foundation, and no single organization wanting to take on the entire burden. As a result, Eclipse has been slow in getting a satisfactory release engineering solution for projects, at a cost to all, especially smaller newcomers. But more recently we have had some substantial cross-vendor and community participation in making that happen.

In contrast, Symbian Foundation probably has sufficient engineering resources to solve this problem with its own engineering staff, which in the case of release engineering is almost certainly a good idea, but this precedent could discourage participation in other common efforts, putting a disproportionate amount of burden on the foundation. In the end I believe that the best solution is to strike a clear and well communicated balance for the common good efforts that a foundation will support vs. those that will require community participation and coordination.

Is there anything in your experience that proves to be consistently a key turning point in an open ecosystem, a something that you look back on and say, that’s what really made this work?

MIK: Yes, the release of a new platform. Take the November 2001 open source release of Eclipse. We are still riding the wave of excitement and technology potential that generated. Mylyn’s adoption exploded with the 2006 release of its 1.0 APIs. Developers get very excited when they have a new framework to play with, so the platform just needs to make sure that the tools and rules of engagement encourage participation in order to let those first thousand patches bloom.

This entry was written by Haydn Shaughnessy, originally posted on the Symbian Blog January 14, 2010 at 12:01 PM

Tasktop and VersionOne team up on Eclipse Mylyn integration for Agile teams

Wednesday, December 16th, 2009

Today marks the start of a major extension of Eclipse and Mylyn’s reach into Agile project management. We’re very pleased to announce a partnership with VersionOne to develop an Eclipse Mylyn connector for VersionOne’s Agile planning and project management platform. The Tasktop Certified VersionOne Connector will be included in Tasktop Pro and available as a plugin for any Eclipse-based IDE or as a standalone desktop application for product owners.

VersionOne Connector

One of the features we will be leveraging in VersionOne is their open and extensible platform approach to project management. VersionOne’s Team and Enterprise products provide comprehensive core of agile project planning and management tools. These tools are extended with a REST web service API as well as open source SDKs for both Java and .NET to facilitate integration with the rest of an organization’s unique tool stack. This open approach has led to an impressive ecosystem of integrations with defect trackers, version control system, build systems and more.

With the upcoming Mylyn and Tasktop Pro integration, VersionOne’s interoperability will take another giant leap forward in two key ways. First, VersionOne is joining the ecosystem of 42 interoperable Mylyn connectors. This will allow development teams in complex environments to seamlessly access VersionOne alongside artifacts from other supported systems as well as move and link artifacts across systems, all from within the IDE. Second, integration with Tasktop Pro will enable VersionOne artifacts to be linked with web pages, local documents, and applications such as Microsoft Outlook.

Of course, the Connector will also allow VersionOne teams to take full advantage of Mylyn’s task-focused productivity technology to focus the interface on only the code, documents and web pages that are relevant for a given VersionOne story, defect or task.

Feature Highlights

  greenbullet_icon Access VersionOne from any Eclipse-based IDE
  greenbullet_icon Standalone desktop application with offline access to VersionOne artifacts
  greenbullet_icon Link VersionOne stories with artifacts in other Tasktop Certified repositories
  greenbullet_icon Automatic time tracking and reporting
  greenbullet_icon Task-focused interface productivity technology
  greenbullet_icon Easy installation from the Mylyn Connector Discovery listing in the Eclipse IDE

We’ve received fifty requests for VersionOne integration and look forward to releasing the connector in March, 2010. Sign up on the VersionOne Connector page to be notified of future announcements.

Eclipse ecosystem: Open discourse at the risk of open conflict

Thursday, December 3rd, 2009

Open discourse brings conflicts out from behind closed doors. A while back I was involved with an open source conflict that degraded technical discussions to power struggles. I looked to Bjorn Freeman-Benson and Mike Milinkovich the help resolve that conflict. This week, countless eyes were peeled on Planet Eclipse as a very public conflict arose between the two of them.

Open source passions often transcend organizational and professional boundaries. That’s what makes someone bored with their day job contribute to Eclipse on evenings and weekends. It’s what makes someone like Bjorn continue to be invested in the success of Eclipse long after he has moved on from his job as the Director of the Committer Community.

mike-mik-bjorn
Mike, Mik and Bjorn at EclipseCon 2008

Open conflict helps avoid the slow death by a thousand cuts that can result when fundamental or structural problems are hidden from a community. This is one reason why open discourse is as important to a healthy ecosystem as an open development practices. It is up to us to process the information underlying the conflict, learn from it, and move on.

My perspective comes from joining the Eclipse community eight years ago, as one of the first non-IBM committers, and watching it grow. Mike’s great leadership as Executive Director has created the successful Eclipse ecosystem and membership that we have today. Mike has been instrumental in laying down both the technical roadmap and community design that makes Eclipse so successful. Bjorn’s five years of contributions have been remarkable as well. He drove the most fundamental changes to the Eclipse development process with a consistent theme of improving the mechanisms that support committer collaboration, release coordination and innovation. Bjorn has that very rare ability to understand the overlap between people and technology, and employ social engineering in order to define the rules of engagement that make a community successful. The technological implementation of social rules is just as important to open source ecosystems as it is to social networks like Facebook and LinkedIn.

Having collaborated with both Bjorn and Mike throughout most of this decade has given me an appreciation of how different their perspectives are. Bjorn’s academic stance will have him happily debate you to death, and can result in some provocative statements. Mike is a business leader, and if those statements cease being constructive, he will call “jerk” on you in order to protect the foundation and ecosystem.

Evolving open source ecosystems requires the voices of both Mikes and Bjorns. One creates business direction and drives change within the ecosystem as a whole, the other focuses on community structure and dynamics. While recent posts went into enough of a downward spiral as to stop being constructive, we should not discount that Bjorn’s critiques of the Eclipse ecosystem struck a nerve, and have stimulated some of the most significant discourse we have seen around Eclipse since the code went live eight years ago. Assuming that the discourse can return to its constructive form, it is in our interest to have it continue as part of Planet Eclipse.