Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [recommenders-dev] [snipmatch] worse popup behavior

Thanks Chen, I appreciate your commitment!

I agree that it makes sense to focus on the UI until it's done, then
return to everything else. I'm also willing to learn and will help
you.

Doug

On Fri, Mar 23, 2012 at 1:03 PM, Chen Cheng <chengchendoc@xxxxxxxxx> wrote:
> Hi Doug,
>
> Yeah, in our initial plan, search result UI rewrite is not the *most*
> important part. But if we want to release SnipMatch as part of Code
> Recommenders in Eclipse Juno. Marcel think we *must* rewrite this part
> before M7, make it more close with Eclipse's traditional auto-complete
> feature. In fact, i am really agree with Marcel about this point.
>
> The only problem is that neither of us have clear idea about this part of
> UI, i will learn and try my best, but can not finish it all by myself. So
> hope you can also work for it if you have enough time.
>
> Anyway, let's move from now on, treat it as *pivotal* feature that must be
> finished~
>
>
> 2012/3/24 Doug Wightman <douglasw@xxxxxxxxx>
>>
>> Thanks Chen :)
>>
>> Honestly, we hadn't planned for this major UI rewrite. Perhaps I
>> missed an earlier email from Marcel - this may affect our inclusion in
>> Juno. I apologize if I made a mistake.
>>
>> Regardless, it's great to have you involved, we'll get SnipMatch
>> integrated soon :)
>>
>> Doug
>>
>>
>> On Fri, Mar 23, 2012 at 12:37 PM, Chen Cheng <chengchendoc@xxxxxxxxx>
>> wrote:
>> > My opinion comment below:
>> >
>> >
>> > 2012/3/23 Marcel Bruch <bruch@xxxxxxxxxxxxxxxxxx>
>> >>
>> >> I think, we need to split and distribute the workload for the critical
>> >> tasks.
>> >>
>> >> From my end, it looks as follows:
>> >>
>> >> Chen can work on SnipMatch "full" time from July. Before that date he
>> >> shouldn't do any work on the (very) critical path.
>> >> The completion frontend/ui _is_ a critical thing to me.
>> >>
>> >> Things like repository upload, template editing, git support etc. isn't
>> >> required for M7 and might even not be needed for Juno at all (although
>> >> we
>> >> all would love to see it in), and thus, it all boils down to a few
>> >> things:
>> >>
>> >> * be able to download a zip from a repository, unpack, and index its
>> >> contents.
>> >> * do this whenever the zip file on the server side changes
>> >> * have an excellent completion popup with a table viewer with dynamic
>> >> contents and proposal previews as we know it from JDT
>> >> * use JDT's templates API to make it work 'smoothly', i.e, (re-) use
>> >> JDT's
>> >> template proposals + preview popup etc.
>> >
>> >
>> > It is a pity that i am not very familiar with JDT's template proposals
>> > part,
>> > so i have no idea how long this part of job will cost. And this is the
>> > *critical* part of Snipmatch before M7, i can not promise finish it all
>> > by
>> > myself although i really want to. But i won't let it go, I will
>> > study  JDT's
>> > template proposals + preview popup solution and then try to work
>> > together
>> > with you guys here.
>> >
>> >>
>> >>
>> >>
>> >> I think the completion popup is the most critical thing that will
>> >> consume
>> >> _a lot_ of time. To give an estimation: I think it will need ~3 weeks
>> >> full
>> >> time to do it and being sure it works afterwards :) Doug, since you
>> >> know
>> >> your tool best, I think this task is best located in your hands. I can
>> >> assist you when it comes to details like highlighting in table viewers
>> >> or
>> >> using lazy content providers etc. But in its core, you (an Zi) are the
>> >> pros
>> >> here.
>> >
>> >
>> > Doug (and Zi), if you have detailed plan about this part, please let me
>> > know. I will try to keep up with your job, and hope i can coding
>> > together
>> > with you.
>> >
>> >>
>> >>
>> >>
>> >> I can also assist on the search interface and automated model download,
>> >> unzip, and index part. I actually planed the indexing part for mid of
>> >> April.
>> >>
>> >> Chen can do lot's of ui improvements like preference pages, cleanups,
>> >> and
>> >> start working on the "flexible repository modules" concept as warmup
>> >> for the
>> >> GSOC. I think there is much to do but we shouldn't rely on him doing
>> >> the
>> >> critical work until M7 :)
>> >
>> >
>> > No problem for me here, i have been working with SnipMatch's source code
>> > for
>> > so long, i can promise finish this part of job before M7.
>> >
>> >
>> >>
>> >>
>> >>
>> >> After all, I think it depends on how much time we can invest into this
>> >> until M7. I'm heavily involved in the completion and code search
>> >> projects.
>> >> Johannes and Sebastian are working on the mining approaches. The other
>> >> students have their separate projects (codesearch, annotation mining,
>> >> multi-object pattern mining etc.) and cannot assist. Doug, honestly I
>> >> think
>> >> it's time you check in the code and start working on it to make
>> >> Snipmatch
>> >> happen ;)
>> >>
>> >>
>> >> FWIW, I agree with all your UI constraints below.
>> >>
>> >>
>> >> On 23.03.2012, at 15:20, Doug Wightman wrote:
>> >>
>> >> > I agree that we absolutely need downloading and indexing of
>> >> > repositories.
>> >> >
>> >> > In terms of displaying and inserting code snippets, reusing existing
>> >> > (stable) code sounds good. However, I want to ensure that we won't
>> >> > lose the following features:
>> >> > -you still search in a search box, and you can include arguments
>> >> > (e.g.
>> >> > local variables) in the search query. Note: with templates, these
>> >> > arguments would then be used to pre-fill the templates.
>> >> > -the result listing updates as you type
>> >> >
>> >> > So long as we retain these two features, these changes make sense to
>> >> > me. If either is at risk, let's explicitly discuss.
>> >> >
>> >> > Given the timeframe, it might make the most sense to build each of
>> >> > these changes (repository integration + new display system) in the
>> >> > next 6 weeks: splitting the time between the two of them, then
>> >> > polishing afterwards. But Marcel is in a much better position to
>> >> > judge
>> >> > timeline and priorities. I really appreciate your feedback - it's
>> >> > critical that we have a strong offering for M7.
>> >> >
>> >> > I also want to hear from Chen: is this reasonable for you? Is there
>> >> > anything that you think we need to cut?
>> >> >
>> >> >
>> >> > Doug
>> >> >
>> >> >
>> >> >
>> >> >
>> >> > On Fri, Mar 23, 2012 at 8:27 AM, Chen Cheng <chengchendoc@xxxxxxxxx>
>> >> > wrote:
>> >> >> The only problem is the time, if we change display module now, we
>> >> >> have
>> >> >> too
>> >> >> much things to do, we should decide the priority
>> >> >>
>> >> >>
>> >> >> 2012/3/23 Marcel Bruch <bruch@xxxxxxxxxxxxxxxxxx>
>> >> >>>
>> >> >>>
>> >> >>> On 23.03.2012, at 11:49, Chen Cheng wrote:
>> >> >>>
>> >> >>> It seems that time is really emergency for us. About the two
>> >> >>> features:
>> >> >>>
>> >> >>> * downloading and indexing a local repository
>> >> >>>
>> >> >>> You mean current local search module, add EGit module to download
>> >> >>> snippet
>> >> >>> files from remote repository automatic. And with some preference
>> >> >>> pages,
>> >> >>> right ?
>> >> >>>
>> >> >>>
>> >> >>> Exactly.
>> >> >>>
>> >> >>>
>> >> >>> * code completion engine based on Eclipse standard features like
>> >> >>> templates
>> >> >>> and Linking mode
>> >> >>>
>> >> >>> You mean abandoned current match result display module, change to
>> >> >>> Eclipse
>> >> >>> standard features. I am not very clear what your words "templates
>> >> >>> and
>> >> >>> Linking mode" mean, but i think the new search result display will
>> >> >>> looks
>> >> >>> like Java Class Editor's content assist(see attach file
>> >> >>> assist.png),
>> >> >>> right ?
>> >> >>>
>> >> >>>
>> >> >>> Yes. I'm proposing to reuse JDT's template framework for now. With
>> >> >>> linking
>> >> >>> mode I refer to "the placeholders can be navigated by tab" feature
>> >> >>> of
>> >> >>> JDT's
>> >> >>> templates . It also offers functionality like guessing arguments
>> >> >>> for
>> >> >>> template variables.
>> >> >>>
>> >> >>>
>> >> >>> Anyway, current match result display module works, but i don't
>> >> >>> think
>> >> >>> it is
>> >> >>> a long term solution, if you mean change it. I agree.
>> >> >>>
>> >> >>>
>> >> >>> Standing by for Doug's opinion. Must be 6AM in Canada ;)
>> >> >>>
>> >> >>> Thanks
>> >> >>> Marcel
>> >> >>>
>> >> >>>
>> >> >>>
>> >> >>> 2012/3/23 Marcel Bruch <marcel.bruch@xxxxxxxxx>
>> >> >>>>
>> >> >>>> Hi Chen,
>> >> >>>>
>> >> >>>> this fix looks good to me and is good to go for EclipseCon demo.
>> >> >>>> Thanks a
>> >> >>>> lot.
>> >> >>>>
>> >> >>>>
>> >> >>>> I'd like to initiate a discussion about how the whole template
>> >> >>>> code
>> >> >>>> insertion & display mechanism should look like for Juno - and
>> >> >>>> discuss
>> >> >>>> the
>> >> >>>> important milestones.
>> >> >>>>
>> >> >>>> M6 is today. M7 is in 6 weeks and then projects do a feature
>> >> >>>> freeze,
>> >> >>>> i.e., all the time is put into testing, bug fixing and small
>> >> >>>> improvements.
>> >> >>>> Projects like JDT or RAP have feature freeze since M6 already. I'm
>> >> >>>> a
>> >> >>>> bit
>> >> >>>> concerned that we'll run out of time to deliver a stable version
>> >> >>>> of
>> >> >>>> snipmatch. Doug, Zi, Cheng, how do you think about that?
>> >> >>>>
>> >> >>>> I'd propose to focus on just a few features and make them as
>> >> >>>> stable
>> >> >>>> as
>> >> >>>> possible for Juno.
>> >> >>>>
>> >> >>>> Features could include:
>> >> >>>>  * downloading and indexing a local repository
>> >> >>>>  * code completion engine based on Eclipse standard features like
>> >> >>>> templates and Linking mode
>> >> >>>>
>> >> >>>> Although I love the "insert directly in code" and the custom popup
>> >> >>>> feature very much, I think, they are not stable and fast enough
>> >> >>>> yet.
>> >> >>>> I'm
>> >> >>>> concerned that the success of Snipmatch depends on usability and
>> >> >>>> that
>> >> >>>> it
>> >> >>>> will be hard to convince package owners to include it. I'll talk
>> >> >>>> to
>> >> >>>> some
>> >> >>>> package maintainers at EclipseCon to learn about their
>> >> >>>> requirements
>> >> >>>> but
>> >> >>>> before that I'd like to know your opinions on this.
>> >> >>>>
>> >> >>>> Thanks,
>> >> >>>> Marcel
>> >> >>>>
>> >> >>>>
>> >> >>>>
>> >> >>>> On 23.03.2012, at 03:25, Chen Cheng wrote:
>> >> >>>>
>> >> >>>> Hi Marcel,
>> >> >>>>
>> >> >>>> I have fixed this issue, the popup window will not cover the
>> >> >>>> inserted
>> >> >>>> code anymore, and submit source code already.
>> >> >>>>
>> >> >>>> About the other issue "Is it possible to run the code without
>> >> >>>> revealing
>> >> >>>> the active editing position?", my current answer is NO, it seems
>> >> >>>> that
>> >> >>>> the
>> >> >>>> "scrolls" job was done by editor itself, we can not fix it easily
>> >> >>>> now. But i
>> >> >>>> will add this into my TODO list and find solution in the future,
>> >> >>>> in
>> >> >>>> fact, we
>> >> >>>> have plan to improve the whole search result display canvas.
>> >> >>>>
>> >> >>>> 2012/3/22 Marcel Bruch <bruch@xxxxxxxxxxxxxxxxxx>
>> >> >>>>>
>> >> >>>>> Hi Chen,
>> >> >>>>>
>> >> >>>>> I experienced a serious issue for the snipmatch demo:
>> >> >>>>>
>> >> >>>>> When I trigger completion at an empty location, enter "file",
>> >> >>>>> wait
>> >> >>>>> for
>> >> >>>>> proposals and then scroll trough the proposals the popup window
>> >> >>>>> completely
>> >> >>>>> covers the inserted code. With that behavior, we can't see the
>> >> >>>>> code
>> >> >>>>> that
>> >> >>>>> gets inserted by snipmatch.
>> >> >>>>>
>> >> >>>>> Can you reproduce that? What can we do with this?
>> >> >>>>>
>> >> >>>>>
>> >> >>>>>
>> >> >>>>>
>> >> >>>>>
>> >> >>>>>
>> >> >>>>> Thanks,
>> >> >>>>> Marcel
>> >> >>>>>
>> >> >>>>> --
>> >> >>>>> Eclipse Code Recommenders:
>> >> >>>>>  w www.eclipse.org/recommenders
>> >> >>>>>  tw www.twitter.com/marcelbruch
>> >> >>>>>  g+ www.gplus.to/marcelbruch
>> >> >>>>>
>> >> >>>>>
>> >> >>>>> _______________________________________________
>> >> >>>>> recommenders-dev mailing list
>> >> >>>>> recommenders-dev@xxxxxxxxxxx
>> >> >>>>> http://dev.eclipse.org/mailman/listinfo/recommenders-dev
>> >> >>>>>
>> >> >>>>
>> >> >>>>
>> >> >>>>
>> >> >>>> --
>> >> >>>> Best Regards From Cheng Chen [chengchendoc@xxxxxxxxx]
>> >> >>>> _______________________________________________
>> >> >>>> recommenders-dev mailing list
>> >> >>>> recommenders-dev@xxxxxxxxxxx
>> >> >>>> http://dev.eclipse.org/mailman/listinfo/recommenders-dev
>> >> >>>>
>> >> >>>>
>> >> >>>>
>> >> >>>> _______________________________________________
>> >> >>>> recommenders-dev mailing list
>> >> >>>> recommenders-dev@xxxxxxxxxxx
>> >> >>>> http://dev.eclipse.org/mailman/listinfo/recommenders-dev
>> >> >>>>
>> >> >>>
>> >> >>>
>> >> >>>
>> >> >>> --
>> >> >>> Best Regards From Cheng Chen [chengchendoc@xxxxxxxxx]
>> >> >>> <assist.png>_______________________________________________
>> >> >>>
>> >> >>> recommenders-dev mailing list
>> >> >>> recommenders-dev@xxxxxxxxxxx
>> >> >>> http://dev.eclipse.org/mailman/listinfo/recommenders-dev
>> >> >>>
>> >> >>>
>> >> >>> Thanks,
>> >> >>> Marcel
>> >> >>>
>> >> >>> --
>> >> >>> Eclipse Code Recommenders:
>> >> >>>  w www.eclipse.org/recommenders
>> >> >>>  tw www.twitter.com/marcelbruch
>> >> >>>  g+ www.gplus.to/marcelbruch
>> >> >>>
>> >> >>>
>> >> >>> _______________________________________________
>> >> >>> recommenders-dev mailing list
>> >> >>> recommenders-dev@xxxxxxxxxxx
>> >> >>> http://dev.eclipse.org/mailman/listinfo/recommenders-dev
>> >> >>>
>> >> >>
>> >> >>
>> >> >>
>> >> >> --
>> >> >> Best Regards From Cheng Chen [chengchendoc@xxxxxxxxx]
>> >> >>
>> >> >> _______________________________________________
>> >> >> recommenders-dev mailing list
>> >> >> recommenders-dev@xxxxxxxxxxx
>> >> >> http://dev.eclipse.org/mailman/listinfo/recommenders-dev
>> >> >>
>> >> > _______________________________________________
>> >> > recommenders-dev mailing list
>> >> > recommenders-dev@xxxxxxxxxxx
>> >> > http://dev.eclipse.org/mailman/listinfo/recommenders-dev
>> >>
>> >> Thanks,
>> >> Marcel
>> >>
>> >> --
>> >> Eclipse Code Recommenders:
>> >>  w www.eclipse.org/recommenders
>> >>  tw www.twitter.com/marcelbruch
>> >>  g+ www.gplus.to/marcelbruch
>> >>
>> >> _______________________________________________
>> >> recommenders-dev mailing list
>> >> recommenders-dev@xxxxxxxxxxx
>> >> http://dev.eclipse.org/mailman/listinfo/recommenders-dev
>> >
>> >
>> >
>> >
>> > --
>> > Best Regards From Cheng Chen [chengchendoc@xxxxxxxxx]
>> >
>> > _______________________________________________
>> > recommenders-dev mailing list
>> > recommenders-dev@xxxxxxxxxxx
>> > http://dev.eclipse.org/mailman/listinfo/recommenders-dev
>> >
>> _______________________________________________
>> recommenders-dev mailing list
>> recommenders-dev@xxxxxxxxxxx
>> http://dev.eclipse.org/mailman/listinfo/recommenders-dev
>
>
>
>
> --
> Best Regards From Cheng Chen [chengchendoc@xxxxxxxxx]
>
> _______________________________________________
> recommenders-dev mailing list
> recommenders-dev@xxxxxxxxxxx
> http://dev.eclipse.org/mailman/listinfo/recommenders-dev
>


Back to the top