Bug 248490 - The I'm Feeling Lucky Task (Random Task)
Summary: The I'm Feeling Lucky Task (Random Task)
Status: RESOLVED FIXED
Alias: None
Product: z_Archived
Classification: Eclipse Foundation
Component: Mylyn (show other bugs)
Version: unspecified   Edit
Hardware: PC Mac OS X - Carbon (unsup.)
: P2 enhancement (vote)
Target Milestone: 3.2   Edit
Assignee: Mik Kersten CLA
QA Contact:
URL:
Whiteboard:
Keywords: bugday, greatbug, helpwanted, noteworthy
Depends on:
Blocks:
 
Reported: 2008-09-24 15:12 EDT by Chris Aniszczyk CLA
Modified: 2009-06-22 08:24 EDT (History)
9 users (show)

See Also:


Attachments
Patch attachement (3.75 KB, patch)
2008-10-08 10:31 EDT, Jakub Jurkiewicz CLA
no flags Details | Diff
mylyn/context/zip (59.07 KB, application/octet-stream)
2008-10-08 10:31 EDT, Jakub Jurkiewicz CLA
no flags Details
updated patch for head (5.80 KB, patch)
2009-05-08 04:32 EDT, Steffen Pingel CLA
no flags Details | Diff
mylyn/context/zip (60.04 KB, application/octet-stream)
2009-05-08 04:32 EDT, Steffen Pingel CLA
no flags Details
Patch (8.38 KB, text/plain)
2009-05-26 11:27 EDT, Jakub Jurkiewicz CLA
no flags Details
mylyn/context/zip (42.63 KB, application/octet-stream)
2009-05-27 16:41 EDT, Mik Kersten CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Chris Aniszczyk CLA 2008-09-24 15:12:54 EDT
There are times where there are so many tasks in my queue for the week or two weeks ahead that I would prefer just to randomly get a task for me to look at. I'm kind of inspired by the Urbanspoon iPhone application which allows me to shake my phone and get a random restaurant within a certain distance. I would like to apply this same idea to tasks.

I click a button and have some threshold preferences... and I get a task! No thinking required :)

Maybe I'm the only one, but sometimes this is the way I operate ;)

Thoughts ;)?
Comment 1 Steffen Pingel CLA 2008-09-24 15:40:10 EDT
+1 for the task list shake button... can e4 do that ;) ?
Comment 2 Eugene Kuleshov CLA 2008-09-26 14:19:11 EDT
I don't want to break the excitement, but wouldn't be more respectful to the bug reporters to take care of the issues reported first? 

Mylyn actually doesn't support that very well and shuffles tasks in order of priority making often a bold assumption that priority mean anything. It annoys me enough that I am really close to forking the Task List UI.
Comment 3 Mik Kersten CLA 2008-09-26 16:47:35 EDT
+1  I think that this is a fabulous idea, speaking as a Mylyn user, not project lead :)  While the Mylyn committers will have to have their heads down with 3.1 priorities, we've taken all sorts of UI automation patches of this sort, so tagging as "bugday".

Here's a pass at a spec:
* Put it next to the "New Task..." button in the Ctrl+F9 "Activate Task..." dialog.
* Come up with one randomizable heuristic for selecting the task that will get opened and activated.  Keeping in mind the mental state of someone who is going to click this button being more along the lines of "I want to do something else" than "What should I do next", here's an example:
  * Get all tasks assigned to the user, across all repositories
  * Reduce to only tasks with no incomings, since incomings can often lead to other work
  * Reduce to only tasks of kind minor, trivial, or enhancement, since those tend to be more fun (this heurisitc is connector specific)
  * Reduce to only tasks that are not scheduled for this or next week, since those will come up anyway
  * Randomly select a task from that set, maybe favoring lower priority tasks since those rarely get enough love
Comment 4 Jakub Jurkiewicz CLA 2008-09-29 06:02:27 EDT
What a great bug! 
Could I work on it? I understand that the priority isn't high, so I could prepare it in my free time.
Comment 5 Mik Kersten CLA 2008-09-30 16:52:32 EDT
Jakub: That would be more than welcome, so reassigning to you.  To get started see: 37154: [Team] Support for subversion
https://bugs.eclipse.org/bugs/show_bug.cgi?id=37154
Comment 6 Jakub Jurkiewicz CLA 2008-10-02 07:29:43 EDT
(In reply to comment #5)
> Jakub: That would be more than welcome, so reassigning to you.  To get started
> see: 37154: [Team] Support for subversion
> https://bugs.eclipse.org/bugs/show_bug.cgi?id=37154
Mik, are you sure you wanted me to look at this particular bug? I'm not sure what I should find there - over 100 comments don't look like a fun ;) Any hints?
Comment 7 Jakub Jurkiewicz CLA 2008-10-08 10:31:41 EDT
Created attachment 114552 [details]
Patch attachement

First approach for random task. 
Waiting for comments.
Comment 8 Jakub Jurkiewicz CLA 2008-10-08 10:31:48 EDT
Created attachment 114553 [details]
mylyn/context/zip
Comment 9 Jakub Jurkiewicz CLA 2009-01-28 07:48:50 EST
I have completely forgotten about this bug. 
Mik, could you have a look?
Comment 10 Mik Kersten CLA 2009-02-26 22:56:33 EST
Jakub: Sorry for having missed this bug and not gotten back to you earlier.  We're out of time for 3.1 contributions, but I'll look at this early on in 3.2.
Comment 11 Steffen Pingel CLA 2009-05-08 04:32:38 EDT
Created attachment 134941 [details]
updated patch for head
Comment 12 Steffen Pingel CLA 2009-05-08 04:32:47 EDT
Created attachment 134942 [details]
mylyn/context/zip
Comment 13 Steffen Pingel CLA 2009-05-08 04:34:20 EDT
Great patch! The only problem I noticed is that the button is also available in the Open Task dialog and instead of opening a random task it activates a random task.
Comment 14 Mik Kersten CLA 2009-05-21 13:11:20 EDT
(In reply to comment #13)
> Great patch! The only problem I noticed is that the button is also available in
> the Open Task dialog and instead of opening a random task it activates a random
> task.

Jakub: Can you fix that?  If so we should be able to get this into Mylyn 3.2.  Also, should this be called "I'm feeling Lazy" since it does not select the next highest priority thing?
Comment 15 Jakub Jurkiewicz CLA 2009-05-22 10:07:21 EDT
(In reply to comment #14)
> (In reply to comment #13)
> > Great patch! The only problem I noticed is that the button is also available in
> > the Open Task dialog and instead of opening a random task it activates a random
> > task.
> 
> Jakub: Can you fix that?  If so we should be able to get this into Mylyn 3.2. 
> Also, should this be called "I'm feeling Lazy" since it does not select the
> next highest priority thing?
> 

I will try to have a look on Monday if this is ok.
Comment 16 Jakub Jurkiewicz CLA 2009-05-26 11:27:21 EDT
Created attachment 137170 [details]
Patch

Did some refactorings. Please have a look and comment if this solution is acceptable.
Comment 17 Mik Kersten CLA 2009-05-27 16:41:23 EDT
Jakub: Good stuff!  I thought through this some more and what strikes me about the "I'm Feeling Lucky" idea being successful is that wherever it appears, Google consistently uses its heuristicvs in order to come up with the best match.  In the case of the "Random Task", it seems that the best match is a low priority and low energy task.  The job of the Task List is to show the next highest priority task to work on in order to help make you more productive.  So this button will be the antithesis of the Task List.  As such, I think that we really should call it "I'm Feeling Lazy" :)

I revised and cleaned up the code a bunch, and made the following additional changes:
* Improved the selection algorithm to cascade priority levels rather than just doing a random selection with a bias to low priority.
* Biased it to scheduled tasks if present, since those have more relevance for people who use scheduling.
* Added the button to Open Task dialog as well.  This will make it considerably more prominent.

Please try this feature out and post your thoughts.  We should still consider how prominent to make this, as we have never added an informal feature of this sort to the Mylyn distribution.  But in this case we may be able to make an exception.
Comment 18 Mik Kersten CLA 2009-05-27 16:41:33 EDT
Created attachment 137414 [details]
mylyn/context/zip
Comment 19 Chris Aniszczyk CLA 2009-05-27 18:05:55 EDT
Thanks guys, I'm looking forward to trying this out in the next i-build!
Comment 20 Mik Kersten CLA 2009-05-28 00:09:21 EDT
Thanks for the idea!

Chris and others, please comment on whether "I'm Feeling Lazy" sounds like the right name for the button.  Also, not that we can still tune the algorithm to make it come up with even lazier tasks.
Comment 21 Steffen Pingel CLA 2009-05-28 00:29:48 EDT
Cool stuff. Weekly build should be available in an hour.
Comment 22 Chris Aniszczyk CLA 2009-05-28 14:22:06 EDT
I don't like the "I'm Feeling Lazy" name, as that implies I'm lazy (which I am), but I just don't like to hear it. I would humbly suggest introducing the concept of "getting a task" with pluggable ways of getting them. One could be random, one could be some algorithm, who knows.
Comment 23 Alex Blewitt CLA 2009-05-28 20:31:46 EDT
Isn't this sufficently close to Google's "Im feeling lucky" trademarked phrase? What did Eclipse legal have to say? A phrase like "random task" might be less contentious. 
Comment 24 Mik Kersten CLA 2009-05-28 22:55:09 EDT
Alex: Thanks for pointing out the "I'm Feeling Lucky" trademark concern.  On that basis I think that we'll need to avoid that one.  The main problem that I see with "Random Task" is that the task we select is not very random since we have deliberate heuristics there.

Chris: Interesting point about the fact that the user might feel like we're accusing them of feeling lazy.  I figured that the fact that it's a special button would imply that the user was not normally feeling lazy, but could click this on the off chance they were.  But this is all about perception so it could be an issue.

Any other ideas?
Comment 25 Alex Blewitt CLA 2009-05-29 20:29:35 EDT
Pick task?
Choose task?
Suggest task?
Propose task?
Comment 26 Alex Blewitt CLA 2009-05-29 20:35:23 EDT
PS Can we reopen this if we're still discussing the name? It's not really fixed. Either that, or we can move the discussion of the name to a different bug.
Comment 27 Mik Kersten CLA 2009-06-01 12:05:07 EDT
Reopened for discussion.
Comment 28 Steffen Pingel CLA 2009-06-04 23:34:08 EDT
I get a bunch of exceptions when I try the I'm Feeling Lazy button on an empty Task List. It looks it's trying to activate a non-exising task.
Comment 29 Jakub Jurkiewicz CLA 2009-06-05 04:37:28 EDT
(In reply to comment #28)
> I get a bunch of exceptions when I try the I'm Feeling Lazy button on an empty
> Task List. It looks it's trying to activate a non-exising task.
> 

I can have a look at this early next week. 
Or do you want to fix this on your own Mik?
Comment 30 Steffen Pingel CLA 2009-06-05 13:29:59 EDT
Thanks for offering help Jakub. I just wanted to note it to remind me to look into it next week (we are past the ip log cut off for 3.2 already).
Comment 31 Mik Kersten CLA 2009-06-08 15:14:31 EDT
Steffen: Let me know what you find.

All: For the time being I removed this feature from the Open Task dialog in order to make it less prominent while we make up our mind.  It's still in the Activate Task dialog.  
Comment 32 Steffen Pingel CLA 2009-06-16 19:41:21 EDT
I am not seeing the problems mentioned in comment#28 with the activate task dialog. Looks like we are good here.
Comment 33 Jakub Jurkiewicz CLA 2009-06-22 08:24:39 EDT
(In reply to comment #32)
> I am not seeing the problems mentioned in comment#28 with the activate task
> dialog. Looks like we are good here.
> 

For me it also looks ok.
However I found other strange behavior described in bug 281066