Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [mylyn-dev] Fishtail - Using task context to automate web searches

Nathan,

First, it's great to see this kind of experimentation and innovation being
done on top of Mylyn.  From your message below, I'm glad to see that the
effort that you've been putting into this work is not discouraged by the
negative message below.  I think that you should probably take Eugene's
complaints as a complement, because all Mylyn committers are constantly
subjected this kind of UI nit picking :) 

Regarding reusing Dynamic Help, in your place I would not consider it at
this stage.  While in general the heuristic of integrating with existing UI
facilities rather than adding new ones is very important, in this case the
flexibility that you would lose would likely not be worth it.  You would
need to invest significant time in bringing your results into Dynamic Help,
and you would lose a lot of the flexibility that you are getting from using
a viewer (e.g. the ability to show results as a tree view, decorate their
labels, and show custom tooltips).

Lubos put it well in stating that when an idea has promise, like this one,
people will be willing to try it again.  As he said, in the early stages it
took people multiple tries with Mylyn as well, and for some I'm sure that it
still does.  In my experience, the trick with integrating innovative ideas
of this sort is to figure out how to get the UI friction low enough to get
enough people to try it without investing a ton of time into the UI work,
since that takes time away from the core work and evaluation.  Here are some
tips that have worked for me (note that you're following some of these
already, and that some of them are an ongoing effort in Mylyn as well): 

* Decide and communicate whether you want the plug-in to be something that
people experiment with, or something that they use for their daily
development.  

* If the plug-in is to be used for daily development, it should have a very
low performance footprint.  What's most important is that it does not slow
down the user's Eclipse when it is not being used, otherwise many users will
quickly disable it.

* When your plug-in is doing any background work, make sure to have that
indicated in the Progress view (via the Jobs API).  This will help people
trust the tool, since their Eclipse could be getting slowed down by
something else.

* Decide carefully on the UI that's needed to enable early adopters to make
use of your tool.  Eclipse users tend to have a very high expectation of UI
polish, and UI work can dominate implementation time.  Try to reuse existing
UIs as much as possible.  When adding new UI, it can help to follow the
Eclipse UI guidelines (either the document or by example) since this will
make it easier for people to use your tool without needing to read
documentation.    

* Eat your own dogfood as much as possible.  If you expect others to be able
to use the tool you should be able to use it yourself (as long as you are
representative of the target audience).  One of the key benefits of
consuming what you produce is that it will help you prioritize both the
performance and the UI work.

* Provide people with a public forum for feedback, since open discussion is
important to many of the open source contributors who may try it.  If you do
not have a forum available you can start a discussion thread on the Mylyn
newsgroup.

* Provide a short page describing how to use your plug-in (e.g.
http://www.cs.ubc.ca/labs/spl/projects/fishtail/

* In order to get support specific to your tool from the Mylyn committers
create a Mylyn bug called "support integration with MyCoolTool".  

I've added these notes to: 

http://wiki.eclipse.org/Mylyn_Integrator_Reference#Innovating_and_Experiment
ing

If anyone has feedback or additions please comment there or reply to
mylyn-dev.

Cheers,

Mik

> -----Original Message-----
> From: mylyn-dev-bounces@xxxxxxxxxxx [mailto:mylyn-dev-
> bounces@xxxxxxxxxxx] On Behalf Of Nathan Hapke
> Sent: Monday, December 10, 2007 1:13 PM
> To: Mylyn developer discussions
> Subject: Re: [mylyn-dev] Fishtail - Using task context to automate web
> searches
> 
> Thanks for the initial feedback guys.  Sorry for the delay on getting
> back to
> you, it's been a busy week with democamp here in town.  I've made some
> significant changes to the searching algorithm which directs it much
> more at the
> class you're interacting with.  In my initial tests I've been finding
> this
> produces much more detailed search results, and hope you will find the
> same.
> 
> Eugene, the choice to make this a separate view was based on our goal
> to get the
> tool publicly available as fast as possible.  Though in principle your
> suggestion of using the dynamic help or context search view makes some
> sense,
> I'm not really convinced that that would address the overall theme of
> your
> e-mail which seems to be one of saving screen real estate.  In the
> amount that
> I've looked over people's shoulders to see the layout of their
> workbench on a
> day-to-day basis, I have yet to see somebody that leaves either view
> open.
> Either way, I see that as a possibility, but not something that's
> necessary at
> this point in time.
> 
> Your final point about Mylyn having support for tracking external
> resources I
> see to be a completely orthogonal issue to our research question
> regarding the
> import of relevant web resources into the workbench.  This tool doesn't
> make any
> attempt to manage or track Web resources, nor does it make any
> distinction
> between what information is webpage based or wiki-based or ...
> 
> 
> 
> Lubos, your comments about considerable slowdown of the workbench is a
> significant concern.  As I was revising the search algorithm I noticed
> some
> unnecessary processing that was happening in the UI thread.  I've
> addressed this
> issue and hope that clears up the performance issue, but if it doesn't
> I'd
> really be interested to know what kind of a setup you're running (could
> be an
> operating system specific issue).  I haven't seen these sorts of
> issues.  I'm
> glad to hear that you'd be willing to try it again.
> 
> Another thing that caught me was that you were looking for better Mylyn
> integration... Were you referring to better search results, or are you
> thinking
> of another aspect that the tool presently doesn't address?
> 
> Cheers.
> Nathan
> 
> Lubos and Alena Pochman wrote:
> > I also installed the plugin and ran it for couple of days. I do not
> see
> > any usefulness yet either,
> > and I noticed considerable slowdown of Eclipse actions like
> selections,
> > cursor movement etc.
> > So I just uninstalled the plugin (it was slowing me too much on quite
> > powerful laptop (3G dual core Intel).
> > But the idea has a promise and I would be willing to try it again (as
> I
> > did with Mylar several times ;-)
> > when it becomes more efficient and more useful.
> >
> > Nathan, keep it going, I am looking forward to new updates and better
> > Mylyn integration.
> >
> > Lubos
> >
> > On Dec 5, 2007 3:06 PM, Eugene Kuleshov <eu@xxxxxxxx
> > <mailto:eu@xxxxxxxx>> wrote:
> >
> >     Hi Nathan,
> >
> >      I've played a little with this tool but didn't noticed any
> relevance
> >     between my task context and search results suggested by this
> view, so I
> >     am not sold on the usefulness yet. :-)
> >
> >      Besides, there are several UI-related things.
> >
> >      First of all, it is completely unnecessary to have borders
> around
> >     widgets that are put in the view. Compare it, for example, with
> standard
> >     Eclipse view, i.e. Problems or History view and because screen
> real
> >     estate is limited it would be useful to be able to disable the
> >     description area and provide better markup in the tooltip for
> search
> >     results.
> >
> >      Also, after looking at this view for some time I started to
> wonder why
> >     does it have to be a separate view? There is already Help /
> Dynamic help
> >     view, which seem a really good candidate for this sort of search
> >     results. More over, there is also Mylyn's own Active Search view,
> that
> >     might be another good candidate to plug in this tool into.
> >
> >      Another interesting aspect is that Mylyn does have core support
> for
> >     tracking external resources, such as web pages with the task
> context.
> >     Unfortunately in my understanding it been left out for commercial
> tools
> >     to provide UI for that. So developer tools are lacking support of
> >     managing or tracking such resources, but it would be really
> useful for
> >     developers to have list of web resources or wiki pages along with
> the
> >     sources relevant to the active task, i.e. show those resources
> right in
> >     the Project Explorer view or on a special tab in the Task Editor.
> >
> >      regards,
> >      Eugene
> >
> >
> >     Nathan Hapke wrote:
> >      > Are you constantly searching the web for resources as you
> program?
> >      > (E.g.: Are you searching for information about how to
> integrate with
> >      > Eclipse?)
> >      >
> >      > Gail Murphy and I have been working on a new tool, Fishtail,
> which
> >      > uses the context of a currently active Mylyn task to formulate
> web
> >      > searches about the code of interest. Searches are performed
> for a
> >      > variety of categories, such as articles, tutorials, and
> examples of
> >      > code use. The goal is to bring web resources into the
> development
> >      > environment as you work, so that information is readily
> available
> >     when
> >      > you need it.
> >      >
> >      > It is available at:
> >     http://www.cs.ubc.ca/labs/spl/projects/fishtail/
> >     <http://www.cs.ubc.ca/labs/spl/projects/fishtail/>
> >      >
> >      > If you have any comments or feedback, please contact me via
> email at
> >      > nhapke@xxxxxxxxx <mailto:nhapke@xxxxxxxxx>.
> >      >
> >      > Cheers,
> >      >
> >      > Nathan
> >
> >     _______________________________________________
> >     mylyn-dev mailing list
> >     mylyn-dev@xxxxxxxxxxx <mailto:mylyn-dev@xxxxxxxxxxx>
> >     https://dev.eclipse.org/mailman/listinfo/mylyn-dev
> >     <https://dev.eclipse.org/mailman/listinfo/mylyn-dev>
> >
> >
> >
> > ---------------------------------------------------------------------
> ---
> >
> > _______________________________________________
> > mylyn-dev mailing list
> > mylyn-dev@xxxxxxxxxxx
> > https://dev.eclipse.org/mailman/listinfo/mylyn-dev
> _______________________________________________
> mylyn-dev mailing list
> mylyn-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/mylyn-dev



Back to the top