Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-29 Thread Herbert
This reminds me of a point Michael said I should mention:

So, regarding the whole resume-by-default, start-new-by-default
debate, is there anything wrong with the idea of having a menu pop-up
at the beginning of each activity session that offers to Resume
Previous and Start New options?

Love,
Herbert.
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-28 Thread Gary C Martin
On 14 Oct 2009, at 17:39, Eben Eliason wrote:

 On Wed, Oct 14, 2009 at 12:04 PM, Simon Schampijer si...@schampijer.de 
  wrote:
 On 10/13/2009 04:36 AM, Bernie Innocenti wrote:
 Hello,

 Michael just passed by the Acetarium and, since the dinner was  
 late, we
 found the time to test and review his latest prototype^W patch.

 I'm loving how the menus suddenly are now snappy and responsive.  
 Please,
 test it yourself and report back. If we like this change, I think we
 should go on and also kill the code that this patch makes redundant.
 (please, let's not add another configurable knob!)

 From 83ef08969ed7bee08f90c12bfa1eedcb7fb0500c Mon Sep 17 00:00:00  
 2001
 From: Michael Stonemich...@laptop.org
 Date: Mon, 14 Sep 2009 22:33:12 -0400
 Subject: Make various palette animations happen more quickly.

 Can you describe what the patch will change from the user point of  
 view?
 Is this to get rid of the delayed build up of palettes when hovering
 over icons?

 You can use right click to get the menu immediately. The delay is on
 purpose.

 We should definitely get feedback. I wouldn't be entirely opposed to a
 change, but I do want to make sure that we make such a change for the
 right reasons, and that it's actually the right change to make.

 The initial design intent was to develop a system which worked in a
 sufficiently complete manner without needing palettes at all. Kids
 should be able to start activities, resume activities, join
 activities, write, paint, stop, etc. without ever seeing a palette at
 all. [1] This is the low floor. For kids with more experience or
 curiosity, we decided to provide contextual palettes which grouped
 related actions and provided more complex interactions with the
 system. This is no ceiling. Furthermore, we wanted to help introduce
 kids to the availability of additional options in a discoverable way,
 which is why the hover effect was chosen to provide increasing levels
 of detail and interaction for a given object.

 Finding that many kids were actually waiting for the palette to appear
 always, instead of, for instance, simply clicking on an activity icon
 to join it, encouraged us to INcrease the delay on the palettes to
 help emphasize this as a secondary mechanism for interaction. A agree
 that hovering in one place to click in another isn't great; but that's
 also not the intended primary means of interaction, and should only
 really be done when one of the secondary actions is desired.

 Removing the delay pushes us, I fear, even farther away from an
 interface in which nice friendly large clickable icons can be directly
 manipulated and encourages every action to be done through a
 contextual menu with a bunch of text in it. Is that really what we
 want kids to face?

 Just for fun, I might suggest an alternate possibility which actually
 decreases the discoverability of the secondary palette. We could
 reveal the primary palette (label) on a delay as we do now, with some
 indication of more options that can be clicked to expand the menu to
 reveal the secondary items. This would provide the (essential) primary
 palette as a label and introduce kids to the existence of more
 controls without encouraging them to use this as a primary method of
 interaction. Advanced users, of course, could still right-click to
 invoke the full menu in one shot.

 Eben

 [1] Incidentally, one of my major complaints with the resume by
 default behavior is that it makes starting new activities hard to do,
 and virtually impossible to do without using a secondary action, which
 is the wrong approach in my mind. I think starting from home, with the
 option to resume, while encouraging one-click resume from the Journal
 is still the correct approach.  I think offering the option to enter
 resume by default mode is great, but I'm not sure it should be,
 itself, the default for Home view.

 In practice, it seems it has worked too well. It used to be that
 kids never resumed activities. Now, it seems, they never start new
 ones. The solution seems to be in encouraging use of the Journal and
 the Home view for these different default actions, and in clarifying
 the UI such that kids understand and desire to do so.


Just wanted to ping the list with a mockup and comment I've attached  
to a trac ticket regarding reverting the 'resume by default' home view  
feature:

http://bugs.sugarlabs.org/ticket/1382

The direct link to the mockup image is:


http://bugs.sugarlabs.org/attachment/ticket/1382/home_mockup_with_start_new_as_default.png

One worry I have is that we're generating feature churn, especially if  
OLPC starts shipping real quantities of 0.84 in a few months... Sugar  
0.82 starts new activity instances when clicking activity icons in the  
home view, we came up with the 'resume by default' design solution to  
help resolve the deluge of feedback from deployments about 'Journal  
spam' and teachers/kids not being able to easily enough find and  
resume 

Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-28 Thread Wade Brainerd
+1 from me!

Resume by Default inhibits learning the difference between Activity
and Activity Instance which is a key computer concept.

Back-porting to 0.84 and 0.86 sounds great to me; is the patch simple?

-Wade

On Wed, Oct 28, 2009 at 2:14 PM, Gary C Martin g...@garycmartin.com wrote:
 On 14 Oct 2009, at 17:39, Eben Eliason wrote:

 On Wed, Oct 14, 2009 at 12:04 PM, Simon Schampijer si...@schampijer.de
  wrote:
 On 10/13/2009 04:36 AM, Bernie Innocenti wrote:
 Hello,

 Michael just passed by the Acetarium and, since the dinner was
 late, we
 found the time to test and review his latest prototype^W patch.

 I'm loving how the menus suddenly are now snappy and responsive.
 Please,
 test it yourself and report back. If we like this change, I think we
 should go on and also kill the code that this patch makes redundant.
 (please, let's not add another configurable knob!)

 From 83ef08969ed7bee08f90c12bfa1eedcb7fb0500c Mon Sep 17 00:00:00
 2001
 From: Michael Stonemich...@laptop.org
 Date: Mon, 14 Sep 2009 22:33:12 -0400
 Subject: Make various palette animations happen more quickly.

 Can you describe what the patch will change from the user point of
 view?
 Is this to get rid of the delayed build up of palettes when hovering
 over icons?

 You can use right click to get the menu immediately. The delay is on
 purpose.

 We should definitely get feedback. I wouldn't be entirely opposed to a
 change, but I do want to make sure that we make such a change for the
 right reasons, and that it's actually the right change to make.

 The initial design intent was to develop a system which worked in a
 sufficiently complete manner without needing palettes at all. Kids
 should be able to start activities, resume activities, join
 activities, write, paint, stop, etc. without ever seeing a palette at
 all. [1] This is the low floor. For kids with more experience or
 curiosity, we decided to provide contextual palettes which grouped
 related actions and provided more complex interactions with the
 system. This is no ceiling. Furthermore, we wanted to help introduce
 kids to the availability of additional options in a discoverable way,
 which is why the hover effect was chosen to provide increasing levels
 of detail and interaction for a given object.

 Finding that many kids were actually waiting for the palette to appear
 always, instead of, for instance, simply clicking on an activity icon
 to join it, encouraged us to INcrease the delay on the palettes to
 help emphasize this as a secondary mechanism for interaction. A agree
 that hovering in one place to click in another isn't great; but that's
 also not the intended primary means of interaction, and should only
 really be done when one of the secondary actions is desired.

 Removing the delay pushes us, I fear, even farther away from an
 interface in which nice friendly large clickable icons can be directly
 manipulated and encourages every action to be done through a
 contextual menu with a bunch of text in it. Is that really what we
 want kids to face?

 Just for fun, I might suggest an alternate possibility which actually
 decreases the discoverability of the secondary palette. We could
 reveal the primary palette (label) on a delay as we do now, with some
 indication of more options that can be clicked to expand the menu to
 reveal the secondary items. This would provide the (essential) primary
 palette as a label and introduce kids to the existence of more
 controls without encouraging them to use this as a primary method of
 interaction. Advanced users, of course, could still right-click to
 invoke the full menu in one shot.

 Eben

 [1] Incidentally, one of my major complaints with the resume by
 default behavior is that it makes starting new activities hard to do,
 and virtually impossible to do without using a secondary action, which
 is the wrong approach in my mind. I think starting from home, with the
 option to resume, while encouraging one-click resume from the Journal
 is still the correct approach.  I think offering the option to enter
 resume by default mode is great, but I'm not sure it should be,
 itself, the default for Home view.

 In practice, it seems it has worked too well. It used to be that
 kids never resumed activities. Now, it seems, they never start new
 ones. The solution seems to be in encouraging use of the Journal and
 the Home view for these different default actions, and in clarifying
 the UI such that kids understand and desire to do so.


 Just wanted to ping the list with a mockup and comment I've attached
 to a trac ticket regarding reverting the 'resume by default' home view
 feature:

        http://bugs.sugarlabs.org/ticket/1382

 The direct link to the mockup image is:

        
 http://bugs.sugarlabs.org/attachment/ticket/1382/home_mockup_with_start_new_as_default.png

 One worry I have is that we're generating feature churn, especially if
 OLPC starts shipping real quantities of 0.84 in a few months... Sugar
 0.82 

Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-28 Thread Eduardo H. Silva
2009/10/16 Eben Eliason e...@laptop.org:
 On Thu, Oct 15, 2009 at 10:09 PM, Avi fiendi...@gmail.com wrote:
 Tomeu wrote:

 I'm more concerned about developers proposing big user experience
 changes because they feel it's better. Before I look at the patch I
 would like to know if there's agreement from people close to our users
 that this behavior change is desired. How can we get that?

 How about users (me) proposing big user experience changes by asking a
 developer (Michael) why the fuck does this UI take so goddamned long to
 react? Also, define our users. Is it people using Sugar? Is it people
 using XOs? Is it people other than you? I'll gladly put myself into any of
 these categories if it makes you happy.

 I think we'd all agree that the primary audience for Sugar is children
 of varied age groups and levels of education, and that audience should
 be considered first in terms of the user experience. I'm not
 suggesting, of course, that the rest of us aren't also users with
 valid input and experiences, or that this proposed patch was submitted
 without the best interests of that audience, or at least a reasonable
 portion of that audience, in mind.

 I also don't believe that Tomeu was stating a challenge of any kind,
 or insinuating that no one other than Michael was likely to have a
 positive response to the proposed change. The suggestion was that we
 collect feedback from many people, yourself included, and also from
 children in our primary audience and the teachers and instructors who
 work with them daily. In that regard, thank you for your feedback; it
 would be more constructive, of course, if you could provide it without
 the profanity and apparent disgust.

 Eben wrote:

 The initial design intent was to develop a system which worked in a
 sufficiently complete manner without needing palettes at all.

 1) For whom? What about people who know how to recognize English letters and
 words better than they remember what an obscure picture means? Because
 you've failed on that front.

 For children! And actually, I agree with you. In many cases text is
 minimized more than I would like it to be. Clearly it's beneficial for
 those learning to read to see associations of words and icons, and
 words are naturally useful to those who already can.

 2) Good luck. Sincerely. I hope that if that's still your goal that it's
 actually possible. I'm personally not convinced, but only because I haven't
 yet seen a demonstration that shows progress on that front.

 Honestly, I think we've come relatively close. Would you strongly
 disagree? It's possible to create new activities, resume past
 activities, join collaborative activities, connect to networks,
 participate in activities, copy, paste, and stop activities with the
 use of primary actions only. I'm not suggesting that the full power of
 the UI is available without the need for seeing any text, but I am
 suggesting that there are a great many things you can do with Sugar
 without needing to use the secondary actions and tools available in
 palettes.

 If there are basic functions or actions that are frequently needed
 that aren't exposed as primary actions, it would be useful to identify
 those areas in order to make improvements. Do you have any
 suggestions?

 Finding that many kids were actually waiting for the palette to appear
 always, instead of, for instance, simply clicking on an activity icon
 to join it, encouraged us to INcrease the delay on the palettes to
 help emphasize this as a secondary mechanism for interaction.

 Jesus, why? Think about what you just said for a moment. Why might someone
 wait for the palette to appear before clicking? Probably because they want
 to see what's on the palette! The situation of the palette is that all it

 I was not precise enough in my statement. Upon observation, many
 children were waiting for the palette exclusively to select the first
 option within it, which is the primary action that a click on the
 object itself would also invoke. They were NOT attempting to access
 the secondary functionality, but instead, due to the appearance of the
 palette, assumed that this was the only means of interaction.

 As Michael correctly points out, the contextual menus are indeed an
 inferior solution to direct interactions, since they require finer
 motor skills (and are difficult with poor trackpads, such as those on
 XOs) and movement away from the object they wish to interact to a
 secondary target within the menu. The icons are larger targets, easy
 to click without delay, and would have saved children both time and
 aggravation had they learned to act upon them directly.

 takes is one accident to discover that hovering shows useful information.
 And with the knowledge that the palette shows useful information, and that
 hovering shows the palette, it is reasonable that one might just engage in
 the described behavior. Either make the useful information available without
 the contextual menu or 

Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-19 Thread Art Hunkins
My vote is to eliminate the delayed palettes altogether.

They just get in my way, obscuring other items.

The right-click option is fully satisfactory. As a senior citizen (in motor 
activity, similar to a child), my errant attempts to click inside a palette 
that disappears on me, are highly frustrating.

Art Hunkins

- Original Message - 
From: Eben Eliason e...@laptop.org
To: Michael Stone mich...@laptop.org
Cc: sugar-devel@lists.sugarlabs.org
Sent: Wednesday, October 14, 2009 11:39 PM
Subject: Re: [Sugar-devel] RFC: Kill the delayed menus for good


On Wed, Oct 14, 2009 at 11:12 PM, Michael Stone mich...@laptop.org wrote:
 Eben,

 First, thanks for the interesting and detailed history of your vision. I
 very much appreciate your ability to generate thought experiments
 describing other ways that the world could be.

 Next...

 Eben wrote:

 Simon Schampijer si...@schampijer.de wrote:

  You can use right click to get the menu immediately. The delay is on
  purpose.

 We should definitely get feedback. I wouldn't be entirely opposed to a
 change, but I do want to make sure that we make such a change for the
 right reasons, and that it's actually the right change to make.

 So try it, and encourage your friends to do the same! :)

I don't feel inclined to myself, as I've never had a problem with the
delay, and actually used to find the speed with which these palettes
obstructed my view of the screen frustrating before the delay was
increased. I assume there is a group of individuals — developers and
kids alike — who feel the same as I do, and others who feel the same
as you. Those that feel as you do, of course, should definitely try it
and provide feedback, which I'd be happy to hear.

I have no itch.

 (NB: merging it is a good way to accomplish this!)

 The initial design intent was to develop a system which worked in a
 sufficiently complete manner without needing palettes at all. Kids
 should be able to start activities, resume activities, join
 activities, write, paint, stop, etc. without ever seeing a palette at
 all. [1] This is the low floor. For kids with more experience or
 curiosity, we decided to provide contextual palettes which grouped
 related actions and provided more complex interactions with the
 system. This is no ceiling. Furthermore, we wanted to help introduce
 kids to the availability of additional options in a discoverable way,
 which is why the hover effect was chosen to provide increasing levels
 of detail and interaction for a given object.

 This is a good story, but a bad implementation. A better implementation
 would be to provide the extra options in a *visible but unobtrusive

I disagree that this is an obviously better implementation. It's
better if you're one who frequently has needs for the additional
complexity. It's arguably not if you use only (or mostly) primary
actions.

 form* or, if you absolutely must hide them, to make them visible with a
 device like a complexity slider or like the new toolbar's transient
 hover; lock on click behavior.

Adding a preference for the delays for these palettes, as we have for
the frame, is a another reasonable possibility, and a literal
incarnation of the complexity slider you suggest.

 Remember -- comparisons should be made in a fixed visual field, not
 across multi-second long gulfs of time, cursor positioning, and fine
 motor control.

 Finding that many kids were actually waiting for the palette to appear
 always, instead of, for instance, simply clicking on an activity icon
 to join it, encouraged us to INcrease the delay on the palettes to
 help emphasize this as a secondary mechanism for interaction. A agree
 that hovering in one place to click in another isn't great; but that's
 also not the intended primary means of interaction, and should only
 really be done when one of the secondary actions is desired.

 Understandable, but as you say, the result isn't great. This makes it
 better. Try it! Merge it! (Then come up with something better.)

We had lots of trouble with palettes obscuring other elements of the
UI even with short delays, including, potentially, the desired target.
I can't imagine that this issue has gone away in the intervening
months, and removing the delay entirely seems it would exacerbate the
issue. Do you have any experiences to report in this regard?

 Removing the delay pushes us, I fear, even farther away from an
 interface in which nice friendly large clickable icons can be directly
 manipulated and encourages every action to be done through a
 contextual menu with a bunch of text in it. Is that really what we
 want kids to face?

 It's better than the present. Again, merge it, then find something
 better.

You keep saying it's better, but fail to provide adequate reasoning or
heuristics for why you feel this to be so. Could you elaborate on the
problems you identified and the way in which this resolves them?

Also, again, it's only arguably better (though I don't fully
comprehend

Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-17 Thread Caroline Meeks
On Sat, Oct 17, 2009 at 11:06 AM, C. Scott Ananian csc...@laptop.orgwrote:

 On Thu, Oct 15, 2009 at 10:34 AM, Wade Brainerd wad...@gmail.com wrote:
  On Thu, Oct 15, 2009 at 10:17 AM, Tomeu Vizoso to...@sugarlabs.org
 wrote:
 
   I'd like to put my designer hat on for a minute and offer an
 alternative
   to
   Bernie/Michael's patch and the current behavior:  Any time the mouse
   hovers
   over a part of the screen with a delayed action, that part must
   immediately
   highlight itself.  With the frame, that would be a 1px rectangle
 around
   the
   screen.  With icons, this could be a border rectangle.

  An even nicer option might be to expand highlight itself to hint at
 what
  it's going to do.
  For example, an icon with a delayed menu could highlight itself and
 display
  a little down arrow (similar to the arrows in the new toolbars).
  With feedback/mockups from the design team I'd be happy to attempt this
  patch.

 I agree with Wade here -- I think the problem is not the delayed menus
 themselves, but that kids are not *discovering* that right-click can
 eliminate the delay.  How are they supposed to discover that?  Perhaps
 some thought along those lines would help.

 I myself found that I often waited for the delayed menu, even though I
 knew about right-click, because it was easier.  That seems to be my
 choice and preference, not a priori a bad thing (even though an
 observer might think it a flaw).  I think that I did this less often
 when the delay was increased, but now we're relying on imperfect
 memory.


I agree. Even if I am right there and say right click and they have done
it before so I know its discovered, its hard for the child, and I'm
working with 4th graders, they are at the older end of our age range.  I
think its not natural/developmentally there skill for our users.

Right click is also hard on a macbook with only one mouse and I think its
also hard in various environments for disabilities.



 Of course, seeing a small child start to swear is a good indication
 that the user is frustrated and has not discovered any means to
 resolve their frustration.  (Even a complexity slider has to be
 discoverable!)
  --scott

 ps. I've found the discussion of ideas here much more interesting than
 the finger-pointing.  Attempts to shift responsibility (it's my patch,
 YOU have to prove that it's wrong -vs- it's my design, YOU have to
 prove that it's wrong) are productive/necessary to some degree, but a
 family matter you guys should take out back somewhere to hash out.  We
 all should (IMHO) be listening much more to Daniel Drake, who seems to
 have the most practical experience guiding his intuitions.  (Caroline,
 too, but I haven't her offer as specific an opinion on the issue.)

 pps. Perhaps this thread should have been started as a discussion of
 design (with working code to demonstrate), not as, here's a patch,
 now if you value contributors you should apply it.

 --
 ( http://cscott.net/ )
 ___
 Sugar-devel mailing list
 Sugar-devel@lists.sugarlabs.org
 http://lists.sugarlabs.org/listinfo/sugar-devel




-- 
Caroline Meeks
Solution Grove
carol...@solutiongrove.com

617-500-3488 - Office
505-213-3268 - Fax
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-17 Thread C. Scott Ananian
On Sat, Oct 17, 2009 at 2:15 PM, Michael Stone mich...@laptop.org wrote:
 ps. I've found the discussion of ideas here much more interesting than
 the finger-pointing.

 Understandable; thanks for providing this feedback. Are there specific
 ideas that have come up in this thread other than the one that Wade
 supplied that you have found particularly thought-provoking?

In general, revisiting the why and attempts to discover different
solutions which achieve the original goals.  Like Martin Dengler, I
find myself convinced all over again when I revisit the original
motivation.  Real world feedback indicates, however, that the current
behavior frustrates some users, despite best laid plans.  It's
obviously time to return to the why and come up with different ways
to accomplish those goals.  (Discussion which is simply I want X
without a consideration of how this relates to the design goals is
much less interesting -- I won't say useless, but it begs for someone
to contextualize it and provide the missing rationale before it fits
well into the conversation I would like to be having.)

 Attempts to shift responsibility (it's my patch,
 YOU have to prove that it's wrong -vs- it's my design, YOU have to
 prove that it's wrong) are productive/necessary to some degree, but a
 family matter you guys should take out back somewhere to hash out.

 Do you have a recommendation on where out back would be? Some other
 mailing list? Private conversation?

If it's a truely personal matter, private email (or some physical
location where you can sit down together for a beer).  If it's about
hashing out a philosophy of participation, then mixing it together
with discussion of UI changes is not helping either conversation
progress.  Sometimes you can't do two things at once, but you can do
them separately.

 I understand you to be saying that we should be listening to people with
 the experience necessary to have informed opinions. Is this a fair
 summary of your position?

Not necessarily.  My position is that there's an interesting UI
discussion largely buried in this thread.  There's also a
community/contribution/patch-approval conversation which I don't have
any strong opinion on.  Finally, there's a meta-topic revealing some
splits within the community which I do have some thoughts on.

I am currently working on a(nother) strongly design-oriented
bottom-up UI, and it has reminded me that such development *can*
work.  Having a strongly coherent user story and regular feedback
from those users *is* really important. That said, unfiltered user
opinions are often short-sighted.  You really do need a designer
role: some group of people who can keep the overall goals in mind and
maintain overall direction.  Some problems need evangelism, some
problems need design fixes, some problems are unexpected/unresolved,
some problems are won't fix (proposed feature out of scope, not
relevant to target users, impossible with given resources, workaround
pending further user feedback/maturity of proper fix), and some
problems are just bugs.

I don't think that treating all proposed code changes uniformly as
bugs is the right solution.  I also don't think that developers
cannot put on designer hats, or vice versa.  But the necessary
organizational discipline seems to be missing in this thread.
Separate your concerns and have separate, focused, conversations: have
everyone put on designer hats and discuss the problem (some users are
frustrated by context menus/some users are not as efficient as they
could be/some users perceive the interface as sluggish because of
intentionally-added delays), goal, and possible solutions.  In another
thread, put on your manager hats and figure out how to nuture
contributions, organize designer roles, maintain coherence (both in
code and design/vision), and maintainability (again, you should be
spending as much time on design janitor work as you seem to be
willing to spend on code janitorial duties).  In yet another context,
put on coder hats and look at the purely technical issues (in this
case, how to treat patch sets which essentially orphan other blocks of
code, patches which demonstrate an idea pending designer feedback, and
possibly how to enable more efficient A/B testing with actual users).
Finally, you can hash out whatever personal issues, grudges, or
misgivings in some other context -- I've always considered actual
face-to-face conferences the best way to enable reconciliation and
team building, but you could also consider personal mail which says,
I feel this response of yours was overly personal... or I apologize
if my response seemed sharp, I thought about this more after I hit
send and realized that not everyone knew XYZ which I was assuming was
obvious... or whatever.

I'm not helping the situation at all by opening yet another topic on
this thread: the meta topic of how I feel this conversation is going.
Clearly I'm not part of the solution, but you (dear readers) may be.
 --scott

-- 
   

Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-17 Thread James Cameron
On Sat, Oct 17, 2009 at 11:06:32AM -0400, C. Scott Ananian wrote:
 I agree with Wade here -- I think the problem is not the delayed menus
 themselves, but that kids are not *discovering* that right-click can
 eliminate the delay.  How are they supposed to discover that?  Perhaps
 some thought along those lines would help.

Small data point ... I only discovered the right-click in the last few
days, when I derived it as a potential solution to the delay, began to
think how to add it, and proceeded to test to see if anything was bound
to right-click.  Doh.  Of course.

Now I can tell the friends' kids how to remove their frustration a bit
... and I was able to add a comment to my patch set mentioning the
right-click.

-- 
James Cameron
http://quozl.linux.org.au/
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-16 Thread James Cameron
On Thu, Oct 15, 2009 at 11:01:30AM +0100, Martin Dengler wrote:
 On Thu, Oct 15, 2009 at 06:48:31PM +1100, James Cameron wrote:
  I'm adding it to my list of patches that improve performance
  perceptions.
 
 Is this list available online somewhere?

http://dev.laptop.org/~quozl/802-patches/
is for browsing

http://dev.laptop.org/~quozl/802-patches.git/
is for contributors

To be used on an XO, the patches must be applied as root, with / as
working directory, using patch --strip 1 ... and naturally you'll need
patch, but that can be copied into /usr/local/bin/ from another system.

-- 
James Cameron
http://quozl.linux.org.au/
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-16 Thread Eben Eliason
I wanted to include Christian on this thread since he may also wish to
try it out and have some valuable feedback.

It seems like this thread is somewhat split between design discussions
and process issues. Should it be exclusive to the sugar-devel list? If
we want feedback from people other than developers it seems we should
have a broader scope.

Eben


On Thu, Oct 15, 2009 at 11:19 PM, Eben Eliason e...@laptop.org wrote:
 On Thu, Oct 15, 2009 at 10:09 PM, Avi fiendi...@gmail.com wrote:
 Tomeu wrote:

 I'm more concerned about developers proposing big user experience
 changes because they feel it's better. Before I look at the patch I
 would like to know if there's agreement from people close to our users
 that this behavior change is desired. How can we get that?

 How about users (me) proposing big user experience changes by asking a
 developer (Michael) why the fuck does this UI take so goddamned long to
 react? Also, define our users. Is it people using Sugar? Is it people
 using XOs? Is it people other than you? I'll gladly put myself into any of
 these categories if it makes you happy.

 I think we'd all agree that the primary audience for Sugar is children
 of varied age groups and levels of education, and that audience should
 be considered first in terms of the user experience. I'm not
 suggesting, of course, that the rest of us aren't also users with
 valid input and experiences, or that this proposed patch was submitted
 without the best interests of that audience, or at least a reasonable
 portion of that audience, in mind.

 I also don't believe that Tomeu was stating a challenge of any kind,
 or insinuating that no one other than Michael was likely to have a
 positive response to the proposed change. The suggestion was that we
 collect feedback from many people, yourself included, and also from
 children in our primary audience and the teachers and instructors who
 work with them daily. In that regard, thank you for your feedback; it
 would be more constructive, of course, if you could provide it without
 the profanity and apparent disgust.

 Eben wrote:

 The initial design intent was to develop a system which worked in a
 sufficiently complete manner without needing palettes at all.

 1) For whom? What about people who know how to recognize English letters and
 words better than they remember what an obscure picture means? Because
 you've failed on that front.

 For children! And actually, I agree with you. In many cases text is
 minimized more than I would like it to be. Clearly it's beneficial for
 those learning to read to see associations of words and icons, and
 words are naturally useful to those who already can.

 2) Good luck. Sincerely. I hope that if that's still your goal that it's
 actually possible. I'm personally not convinced, but only because I haven't
 yet seen a demonstration that shows progress on that front.

 Honestly, I think we've come relatively close. Would you strongly
 disagree? It's possible to create new activities, resume past
 activities, join collaborative activities, connect to networks,
 participate in activities, copy, paste, and stop activities with the
 use of primary actions only. I'm not suggesting that the full power of
 the UI is available without the need for seeing any text, but I am
 suggesting that there are a great many things you can do with Sugar
 without needing to use the secondary actions and tools available in
 palettes.

 If there are basic functions or actions that are frequently needed
 that aren't exposed as primary actions, it would be useful to identify
 those areas in order to make improvements. Do you have any
 suggestions?

 Finding that many kids were actually waiting for the palette to appear
 always, instead of, for instance, simply clicking on an activity icon
 to join it, encouraged us to INcrease the delay on the palettes to
 help emphasize this as a secondary mechanism for interaction.

 Jesus, why? Think about what you just said for a moment. Why might someone
 wait for the palette to appear before clicking? Probably because they want
 to see what's on the palette! The situation of the palette is that all it

 I was not precise enough in my statement. Upon observation, many
 children were waiting for the palette exclusively to select the first
 option within it, which is the primary action that a click on the
 object itself would also invoke. They were NOT attempting to access
 the secondary functionality, but instead, due to the appearance of the
 palette, assumed that this was the only means of interaction.

 As Michael correctly points out, the contextual menus are indeed an
 inferior solution to direct interactions, since they require finer
 motor skills (and are difficult with poor trackpads, such as those on
 XOs) and movement away from the object they wish to interact to a
 secondary target within the menu. The icons are larger targets, easy
 to click without delay, and would have saved children both time and
 

Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-16 Thread Eduardo H. Silva
For us noobs in patching, could someone make a screencast of Sugar
running with this patch?

Eduardo

2009/10/16 Eben Eliason e...@laptop.org:
 I wanted to include Christian on this thread since he may also wish to
 try it out and have some valuable feedback.

 It seems like this thread is somewhat split between design discussions
 and process issues. Should it be exclusive to the sugar-devel list? If
 we want feedback from people other than developers it seems we should
 have a broader scope.

 Eben


 On Thu, Oct 15, 2009 at 11:19 PM, Eben Eliason e...@laptop.org wrote:
 On Thu, Oct 15, 2009 at 10:09 PM, Avi fiendi...@gmail.com wrote:
 Tomeu wrote:

 I'm more concerned about developers proposing big user experience
 changes because they feel it's better. Before I look at the patch I
 would like to know if there's agreement from people close to our users
 that this behavior change is desired. How can we get that?

 How about users (me) proposing big user experience changes by asking a
 developer (Michael) why the fuck does this UI take so goddamned long to
 react? Also, define our users. Is it people using Sugar? Is it people
 using XOs? Is it people other than you? I'll gladly put myself into any of
 these categories if it makes you happy.

 I think we'd all agree that the primary audience for Sugar is children
 of varied age groups and levels of education, and that audience should
 be considered first in terms of the user experience. I'm not
 suggesting, of course, that the rest of us aren't also users with
 valid input and experiences, or that this proposed patch was submitted
 without the best interests of that audience, or at least a reasonable
 portion of that audience, in mind.

 I also don't believe that Tomeu was stating a challenge of any kind,
 or insinuating that no one other than Michael was likely to have a
 positive response to the proposed change. The suggestion was that we
 collect feedback from many people, yourself included, and also from
 children in our primary audience and the teachers and instructors who
 work with them daily. In that regard, thank you for your feedback; it
 would be more constructive, of course, if you could provide it without
 the profanity and apparent disgust.

 Eben wrote:

 The initial design intent was to develop a system which worked in a
 sufficiently complete manner without needing palettes at all.

 1) For whom? What about people who know how to recognize English letters and
 words better than they remember what an obscure picture means? Because
 you've failed on that front.

 For children! And actually, I agree with you. In many cases text is
 minimized more than I would like it to be. Clearly it's beneficial for
 those learning to read to see associations of words and icons, and
 words are naturally useful to those who already can.

 2) Good luck. Sincerely. I hope that if that's still your goal that it's
 actually possible. I'm personally not convinced, but only because I haven't
 yet seen a demonstration that shows progress on that front.

 Honestly, I think we've come relatively close. Would you strongly
 disagree? It's possible to create new activities, resume past
 activities, join collaborative activities, connect to networks,
 participate in activities, copy, paste, and stop activities with the
 use of primary actions only. I'm not suggesting that the full power of
 the UI is available without the need for seeing any text, but I am
 suggesting that there are a great many things you can do with Sugar
 without needing to use the secondary actions and tools available in
 palettes.

 If there are basic functions or actions that are frequently needed
 that aren't exposed as primary actions, it would be useful to identify
 those areas in order to make improvements. Do you have any
 suggestions?

 Finding that many kids were actually waiting for the palette to appear
 always, instead of, for instance, simply clicking on an activity icon
 to join it, encouraged us to INcrease the delay on the palettes to
 help emphasize this as a secondary mechanism for interaction.

 Jesus, why? Think about what you just said for a moment. Why might someone
 wait for the palette to appear before clicking? Probably because they want
 to see what's on the palette! The situation of the palette is that all it

 I was not precise enough in my statement. Upon observation, many
 children were waiting for the palette exclusively to select the first
 option within it, which is the primary action that a click on the
 object itself would also invoke. They were NOT attempting to access
 the secondary functionality, but instead, due to the appearance of the
 palette, assumed that this was the only means of interaction.

 As Michael correctly points out, the contextual menus are indeed an
 inferior solution to direct interactions, since they require finer
 motor skills (and are difficult with poor trackpads, such as those on
 XOs) and movement away from the object they wish to 

Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-15 Thread James Cameron
I've just tried an equivalent of this patch on OLPC build 802 on an
XO-1, and it feels much more responsive.  It affects all mouse-over
menus in Sugar.  I'm adding it to my list of patches that improve
performance perceptions.

/usr/lib/python2.5/site-packages/sugar/graphics/

-- 
James Cameron
http://quozl.linux.org.au/
--- palette.py.orig	2009-10-15 07:37:11.0 +
+++ palette.py	2009-10-15 07:39:13.0 +
@@ -209,13 +209,13 @@
 
 self._menu_content_separator = gtk.HSeparator()
 
-self._popup_anim = animator.Animator(.5, 10)
+self._popup_anim = animator.Animator(0, 10)
 self._popup_anim.add(_PopupAnimation(self))
 
-self._secondary_anim = animator.Animator(2.0, 10)
+self._secondary_anim = animator.Animator(0.0, 10)
 self._secondary_anim.add(_SecondaryAnimation(self))
 
-self._popdown_anim = animator.Animator(0.6, 10)
+self._popdown_anim = animator.Animator(0, 10)
 self._popdown_anim.add(_PopdownAnimation(self))
 
 # we init after initializing all of our containers
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-15 Thread James Cameron
On Thu, Oct 15, 2009 at 08:58:12AM +0545, Daniel Drake wrote:
 It makes all menus that currently have a delay appear instantly?

No, it doesn't.  Try it.  I think you'll like it.

It is quite easy to run the cursor over the activity ring ... nothing
appears until you stop for long enough.  But what does appear appears
without a two second delay!

Consider it for deployment, Daniel.

-- 
James Cameron
http://quozl.linux.org.au/
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-15 Thread Tomeu Vizoso
On Thu, Oct 15, 2009 at 03:49, Michael Stone mich...@laptop.org wrote:
 Tomeu wrote:

 On Wed, Oct 14, 2009 at 16:57, Michael Stone mich...@laptop.org wrote:

 Tomeu wrote:

 I'm more concerned about developers proposing big user experience
 changes because they feel it's better.

 Yay, more roadblocks and stereotyping! :)

 You shouldn't take this personal, most of Sugar contributors including
 me have done this in the past.

 humorI don't take it personally; I take it on behalf of oppressed
 contributors everywhere...!/humor
 (In other words, judging the patch by its author rather than by its text
 and its effects does seem to me to be a rather risky business. Your
 choice, though.)

If you insist on thinking that I have something against you, then I
will stop having this discussion with you. I'm really tired of you
continuously bringing this as a problem but not hearing anyone else
caring about your troubles contributing.

I stand by what I said: substantial user experience changes will be
considered only after discussion involving the design and deployment
teams (which we are having now). This is not just for you but for
anybody else that proposes patches for the modules that I maintain.

Try going to a GNOME or KDE module and proposing that they accept such
a patch so people can test it, they are going to laugh at your face.

Maintenance is already a hard enough task, if the community thinks
that a maintainer should also be accepting all patches, releasing
them, packaging them, making soas spins, asking for feedback,
reverting them, etc. Then I will be glad to pass maintenance to
whoever is available to do these kinds of things.

Regards,

Tomeu

 I'm just saying that now might not be such a good idea any more to
 accept changes in the user experience without user feedback.

 Far better to accept the changes, get the user feedback on the changed
 versions, then revert the changes if they turn out to be inappropriate.
 Everyone will be happier. (That's my opinion, anyway.)

  Are you actually saying that you'd prefer either

  a) no patches or,
  b) patches that I think make the system worse?

 Yup, this is certainly absurd.

 I'm glad that we agree.

 If, say, Gary comes later and proposes a patch to revert yours, should
 I accept it in fear that I may discourage him otherwise?

 Yes, but in awareness rather than in fear, (though only unless you have
 an overriding reason not to.)

 Being concerned about developers proposing big user experience changes
 does not seem to me to meet that criterion. To my mind, overriding
 reasons not to include the patch is...

  * incorrect
  * illegal
  * an obviously bad idea
  * a subtly bad idea
  * more trouble than it's worth

 At best, it has been argued so far that merging the patch I showed to
 Bernie is a subtly bad idea because it leaves the obvious possible of
 refactoring of the context menu code to remove the use of the animation
 code unimplemented.

 In the middle, Eben expressed uncertainty on the basis of a specific
 vision and private memories. This shouldn't impede merging the patch; it
 should just encourage more testing and thought based on his experiences,
 vision, and thought experiment so that we get more data.

 At worst, it has been argued that merging the patch is an obviously bad
 idea because it was developed by a developer (me; who else was supposed
 to develop it?) engaged in critical dialogue with and reflection on the
 Sugar user experience (I do feel that it's better) via methods that I
 find congenial as opposed to by methods that I find prohibitively
 expensive.
 Did I miss any other positions in the debate?

 C'mon, I'm just asking that when substantial changes to the user
 experience are proposed, that we have some discussion that involves
 the design team and the deployments. Is this really so off?

 I'd call it more timid than off. Or at least inappropriately
 deferential to the wishes of the design team and the deployments who
 talk to you at the expense of receiving more contribution by making
 contribution more dynamic and fulfilling and therefore at the expense of
 exploring more possible Sugar experiences.

 Before I look at the patch I would like to know if there's agreement
 from people close to our users that this behavior change is desired.
 How can we get that?

 Well, trying it might be one good way to start. :)

 After that, shipping it in an explicit beta is another more heavyweight
 but nevertheless time-tested approach.

 You know how easy is making a spin of SoaS with such changes for
 people to try out, or are you saying that you want me to do this work
 for you?

 I'm saying three things; namely, that:

  1. I trust that you and the other people on this list are empowered
     and able to make reasonable UI decisions when presented with clear
     alternatives,

  2. Patches are an appropriate way of exchanging proposals for software
     modification and a good medium for discussion of those proposals, and

  

Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-15 Thread Wade Brainerd
I take two points from this exchange:

#1 User interaction changes are always subjective.  Patches, requests,
suggestions, etc. should not be submitted with duh as a rationale.  They
should be backed up with a clear rationale; better yet, hard data.

#2 The Sugar UI is not sacred.  There needs to be a process to collect and
evaluate data, and to design and implement improvements.

With changes to the user experience, writing the code is expected to be the
simplest part of the process so the patch may be trivial, but acceptance may
not.  I could submit a patch changing the Home background color to a lovely
blue; it would be trivial to apply and motivating for me, but not
necessarily a good idea!


The correct way to submit this patch is to file an enhancement bug, post the
patch to the bug, and create a wiki page under
http://wiki.sugarlabs.org/go/Features using the provided template.

An improvement to this patch that would increase its likelihood of
acceptance would be to make it a toggle.  Even better would be to report
delayed menu item clicks to a usability log server.  Work with a deployment
to distribute both versions randomly, analyze the results, and include that
in the feature request.


I'd like to put my designer hat on for a minute and offer an alternative to
Bernie/Michael's patch and the current behavior:  Any time the mouse hovers
over a part of the screen with a delayed action, that part must immediately
highlight itself.  With the frame, that would be a 1px rectangle around the
screen.  With icons, this could be a border rectangle.


Best,
Wade
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-15 Thread Tomeu Vizoso
On Thu, Oct 15, 2009 at 14:47, Wade Brainerd wad...@gmail.com wrote:
 I take two points from this exchange:
 #1 User interaction changes are always subjective.  Patches, requests,
 suggestions, etc. should not be submitted with duh as a rationale.  They
 should be backed up with a clear rationale; better yet, hard data.
 #2 The Sugar UI is not sacred.  There needs to be a process to collect and
 evaluate data, and to design and implement improvements.

Agreed.

 With changes to the user experience, writing the code is expected to be the
 simplest part of the process so the patch may be trivial, but acceptance may
 not.  I could submit a patch changing the Home background color to a lovely
 blue; it would be trivial to apply and motivating for me, but not
 necessarily a good idea!

 The correct way to submit this patch is to file an enhancement bug, post the
 patch to the bug, and create a wiki page under
 http://wiki.sugarlabs.org/go/Features using the provided template.
 An improvement to this patch that would increase its likelihood of
 acceptance would be to make it a toggle.  Even better would be to report
 delayed menu item clicks to a usability log server.  Work with a deployment
 to distribute both versions randomly, analyze the results, and include that
 in the feature request.

This may be a bit too heavy process for practical purposes, I think
there exists a vry wide space between what Michael asks and what
you have written above. I think we would go to such a extreme only
when we have already made a big change to the UI and some people
wanted to revert it (for example move back the activity icons to the
frame).

A good middle point may be to have people who are in contact with
Sugar-using children (both in the classroom and on their own) to
explain how the change would affect the usage they have observed. Even
better if the design team is available to explain the rationale and
suggest alternatives.

 I'd like to put my designer hat on for a minute and offer an alternative to
 Bernie/Michael's patch and the current behavior:  Any time the mouse hovers
 over a part of the screen with a delayed action, that part must immediately
 highlight itself.  With the frame, that would be a 1px rectangle around the
 screen.  With icons, this could be a border rectangle.

I think this one would have a big impact on usability and may not be
hard at all.

Regards,

Tomeu

-- 
«Sugar Labs is anyone who participates in improving and using Sugar.
What Sugar Labs does is determined by the participants.» - David
Farning
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-15 Thread Michael Stone
Tomeu,

 If you insist on thinking that I have something against you, then I
 will stop having this discussion with you. 

I insist only on the reasonableness of taking you literally at your word.

Naturally, I'm quite certain that you have nothing against me that you
don't also have against anyone else who is as damn persnickety as I
am... 

except when you write otherwise.

 I'm really tired of you continuously bringing this as a problem but not 
 hearing anyone else caring about your troubles contributing.

Three points:

   1. It makes sense that you're tired of hearing about it; I'm tired of
  it being a problem. 

   2. The phrase but not hearing anyone else caring... confuses me. I
  can't tell whether you mean that I'm deaf to other people caring,
  that no one else cares, or both. Both cases seem implausible to me,
  but evidence is always welcome.

   3. My troubles contributing are adequately controlled for by avoiding
  sending actual patches. You saw this one only because Bernie said
  that he liked the effect when I showed it to him and because I told
  him that if he liked it, then he should recommend that others try it. 

  (Actually, you might have seen it earlier when I mentioned it to
  you in IRC a few weeks ago, but I can easily understand how a
  single line of IRC traffic is easy to miss.)

 I stand by what I said: substantial user experience changes will be
 considered only after discussion involving the design and deployment
 teams (which we are having now). This is not just for you but for
 anybody else that proposes patches for the modules that I maintain.

I understand but continue to question the usefulness of the decision
given its obvious overhead and consequences. Enjoy the fruits of your
choice.

 Try going to a GNOME or KDE module and proposing that they accept such
 a patch so people can test it, they are going to laugh at your face.

Sugar is not GNOME or KDE (nor the kernel, where experience demonstrates
that the pattern you refer to is actually fairly common). Consequently,
we should find out what's right for Sugar. There's nothing wrong with
you having one position which is different from mine.

 Maintenance is already a hard enough task, if the community thinks
 that a maintainer should also be accepting all patches, releasing
 them, packaging them, making soas spins, asking for feedback,
 reverting them, etc. Then I will be glad to pass maintenance to
 whoever is available to do these kinds of things.

If you find such a person, then please consider it -- I think Sugar
would benefit greatly from having a maintainership community with the
resources to do those things in that order, as I suggested in more
detail in the remaining part of my last email to which you didn't reply.

Regards,

Michael
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-15 Thread Avi
Tomeu wrote:

 I'm more concerned about developers proposing big user experience
 changes because they feel it's better. Before I look at the patch I
 would like to know if there's agreement from people close to our users
 that this behavior change is desired. How can we get that?

How about users (me) proposing big user experience changes by asking a
developer (Michael) why the fuck does this UI take so goddamned long to
react? Also, define our users. Is it people using Sugar? Is it people
using XOs? Is it people other than you? I'll gladly put myself into any of
these categories if it makes you happy.

Eben wrote:

 The initial design intent was to develop a system which worked in a
 sufficiently complete manner without needing palettes at all.

1) For whom? What about people who know how to recognize English letters and
words better than they remember what an obscure picture means? Because
you've failed on that front.
2) Good luck. Sincerely. I hope that if that's still your goal that it's
actually possible. I'm personally not convinced, but only because I haven't
yet seen a demonstration that shows progress on that front.

 Finding that many kids were actually waiting for the palette to appear
 always, instead of, for instance, simply clicking on an activity icon
 to join it, encouraged us to INcrease the delay on the palettes to
 help emphasize this as a secondary mechanism for interaction.

Jesus, why? Think about what you just said for a moment. Why might someone
wait for the palette to appear before clicking? Probably because they want
to see what's on the palette! The situation of the palette is that all it
takes is one accident to discover that hovering shows useful information.
And with the knowledge that the palette shows useful information, and that
hovering shows the palette, it is reasonable that one might just engage in
the described behavior. Either make the useful information available without
the contextual menu or make the current expected behavior more responsive.

 Removing the delay pushes us, I fear, even farther away from an
 interface in which nice friendly large clickable icons can be directly
 manipulated and encourages every action to be done through a
 contextual menu with a bunch of text in it. Is that really what we
 want kids to face?

So what you're saying is that you want to force children to use the system
in a way that you just said is contrary to what THEY actually want to do.

 Perhaps. What would you define as the ailment, yourself? The primary
 intent was to encourage use of a direct interaction model, in which
 palettes we're supposed to play a big role. When it turned out that
 young kids, who didn't read, and who didn't have motor skills for
 selecting form the palettes, we aimed to reduce accidental invocation
 of them without entirely eliminating discovery by increasing the
 delay.

Many kids have motor skills, and the ones that don't initially are
remarkably good (being kids) at developing motor skills that they don't yet
have. Many kids also read. In fact, let's cut into some real deep philosophy
stuff here...

The idea that the XO laptop is mainly for kids who can't read is completely
bogus. Now, maybe you're thinking of other children when you say this, but I
prefer to first consider the main existing userbase. Laptops which have
Sugar installed on them are primarily located in schools and are used for
education. It is kind of ridiculous to say Well, you don't actually need to
know how to read to use the laptops, so we should make the interface not
require reading. when the truth is that, for most activities that have any
educational merit, you DO need to read and you need to read things
significantly more complicated than activity names. Most of the people who
use Sugar for most of the time WILL know how to read.

Daniel Drake wrote:

 It makes all menus that currently have a delay appear instantly?

Not even close. On the XO sitting next to me it still feels like over a
second. There appears to actually be ANOTHER delay somewhere that was not
modified at all, because the UI takes the same amount of time to respond
with the change on both an XO and on a significantly more powerful laptop.
What is noticable, however, is that it just doesn't feel like things are
craaw-aww-aawwwaaawww-ling (ling) after the
change, because before the user was met with a multi-stage, phased delay,
whereas now the delay is brief and only up front.

If you haven't yet, you really need to at least try it. All of this I don't
like it, but I haven't actually tried it stuff is just unhelpful.

Sincerely,
Avi Kelman
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-15 Thread Eben Eliason
On Thu, Oct 15, 2009 at 10:09 PM, Avi fiendi...@gmail.com wrote:
 Tomeu wrote:

 I'm more concerned about developers proposing big user experience
 changes because they feel it's better. Before I look at the patch I
 would like to know if there's agreement from people close to our users
 that this behavior change is desired. How can we get that?

 How about users (me) proposing big user experience changes by asking a
 developer (Michael) why the fuck does this UI take so goddamned long to
 react? Also, define our users. Is it people using Sugar? Is it people
 using XOs? Is it people other than you? I'll gladly put myself into any of
 these categories if it makes you happy.

I think we'd all agree that the primary audience for Sugar is children
of varied age groups and levels of education, and that audience should
be considered first in terms of the user experience. I'm not
suggesting, of course, that the rest of us aren't also users with
valid input and experiences, or that this proposed patch was submitted
without the best interests of that audience, or at least a reasonable
portion of that audience, in mind.

I also don't believe that Tomeu was stating a challenge of any kind,
or insinuating that no one other than Michael was likely to have a
positive response to the proposed change. The suggestion was that we
collect feedback from many people, yourself included, and also from
children in our primary audience and the teachers and instructors who
work with them daily. In that regard, thank you for your feedback; it
would be more constructive, of course, if you could provide it without
the profanity and apparent disgust.

 Eben wrote:

 The initial design intent was to develop a system which worked in a
 sufficiently complete manner without needing palettes at all.

 1) For whom? What about people who know how to recognize English letters and
 words better than they remember what an obscure picture means? Because
 you've failed on that front.

For children! And actually, I agree with you. In many cases text is
minimized more than I would like it to be. Clearly it's beneficial for
those learning to read to see associations of words and icons, and
words are naturally useful to those who already can.

 2) Good luck. Sincerely. I hope that if that's still your goal that it's
 actually possible. I'm personally not convinced, but only because I haven't
 yet seen a demonstration that shows progress on that front.

Honestly, I think we've come relatively close. Would you strongly
disagree? It's possible to create new activities, resume past
activities, join collaborative activities, connect to networks,
participate in activities, copy, paste, and stop activities with the
use of primary actions only. I'm not suggesting that the full power of
the UI is available without the need for seeing any text, but I am
suggesting that there are a great many things you can do with Sugar
without needing to use the secondary actions and tools available in
palettes.

If there are basic functions or actions that are frequently needed
that aren't exposed as primary actions, it would be useful to identify
those areas in order to make improvements. Do you have any
suggestions?

 Finding that many kids were actually waiting for the palette to appear
 always, instead of, for instance, simply clicking on an activity icon
 to join it, encouraged us to INcrease the delay on the palettes to
 help emphasize this as a secondary mechanism for interaction.

 Jesus, why? Think about what you just said for a moment. Why might someone
 wait for the palette to appear before clicking? Probably because they want
 to see what's on the palette! The situation of the palette is that all it

I was not precise enough in my statement. Upon observation, many
children were waiting for the palette exclusively to select the first
option within it, which is the primary action that a click on the
object itself would also invoke. They were NOT attempting to access
the secondary functionality, but instead, due to the appearance of the
palette, assumed that this was the only means of interaction.

As Michael correctly points out, the contextual menus are indeed an
inferior solution to direct interactions, since they require finer
motor skills (and are difficult with poor trackpads, such as those on
XOs) and movement away from the object they wish to interact to a
secondary target within the menu. The icons are larger targets, easy
to click without delay, and would have saved children both time and
aggravation had they learned to act upon them directly.

 takes is one accident to discover that hovering shows useful information.
 And with the knowledge that the palette shows useful information, and that
 hovering shows the palette, it is reasonable that one might just engage in
 the described behavior. Either make the useful information available without
 the contextual menu or make the current expected behavior more responsive.

I think it may be useful to show the 

Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-15 Thread Daniel Drake
2009/10/15 James Cameron qu...@laptop.org:
 No, it doesn't.  Try it.  I think you'll like it.

 It is quite easy to run the cursor over the activity ring ... nothing
 appears until you stop for long enough.  But what does appear appears
 without a two second delay!

OK then, that sounds a lot better. I'm surprised that this point
wasn't raised earlier.

Given that this thread is largely about process, let me throw in one
more point then: all patches should be accompanied with a good
description of the change that they actually make :)

Daniel
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-15 Thread Bernie Innocenti
El Fri, 16-10-2009 a las 09:44 +0545, Daniel Drake escribió:
 OK then, that sounds a lot better. I'm surprised that this point
 wasn't raised earlier.
 
 Given that this thread is largely about process, let me throw in one
 more point then: all patches should be accompanied with a good
 description of the change that they actually make :)

+1, but in this case this was just an RFC meant to let people test the
new behavior and comment on it.

Surprisingly, a lot of feedback came from people who had not actually
tried the patch or even *looked* at it! Lack of expertise is not a good
excuse as we claim that even children could make changes to Sugar.

Here's Michael's patch again (attached below). As can be seen, it's
really as trivial as changing just 3 bytes in two files (it's really 3
changed bytes and 1 added byte, but it could be done in just 3
moves :-).

One could also edit the files in-place from a SoaS or XO image:

  vi /lib/python2.6/site-packages/sugar/graphics/palette.py +106
  vi /lib/python2.6/site-packages/sugar/graphics/palettewindow.py +151


From: Michael Stone mich...@laptop.org
Date: Mon, 14 Sep 2009 22:33:12 -0400
Subject: Make various palette animations happen more quickly.

---
 src/sugar/graphics/palette.py   |2 +-
 src/sugar/graphics/palettewindow.py |4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/sugar/graphics/palette.py b/src/sugar/graphics/palette.py
--- a/src/sugar/graphics/palette.py
+++ b/src/sugar/graphics/palette.py
@@ -103,7 +103,7 @@ class Palette(PaletteWindow):
 
 self._menu_content_separator = gtk.HSeparator()
 
-self._secondary_anim = animator.Animator(2.0, 10)
+self._secondary_anim = animator.Animator(0.0, 10)
 self._secondary_anim.add(_SecondaryAnimation(self))
 
 # we init after initializing all of our containers
diff --git a/src/sugar/graphics/palettewindow.py 
b/src/sugar/graphics/palettewindow.py
--- a/src/sugar/graphics/palettewindow.py
+++ b/src/sugar/graphics/palettewindow.py
@@ -148,10 +148,10 @@ class PaletteWindow(gtk.Window):
 self._up = False
 self._old_alloc = None
 
-self._popup_anim = animator.Animator(.5, 10)
+self._popup_anim = animator.Animator(0.0, 10)
 self._popup_anim.add(_PopupAnimation(self))
 
-self._popdown_anim = animator.Animator(0.6, 10)
+self._popdown_anim = animator.Animator(0.0, 10)
 self._popdown_anim.add(_PopdownAnimation(self))
 
 gobject.GObject.__init__(self, **kwargs)
-- 
1.5.6.5

-- 
   // Bernie Innocenti - http://codewiz.org/
 \X/  Sugar Labs   - http://sugarlabs.org/

___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-14 Thread Tomeu Vizoso
On Tue, Oct 13, 2009 at 03:40, Bernie Innocenti ber...@codewiz.org wrote:
 El Mon, 12-10-2009 a las 22:36 -0400, Bernie Innocenti escribió:
 Hello,

 Michael just passed by the Acetarium and, since the dinner was late, we
 found the time to test and review his latest prototype^W patch.

 I'm loving how the menus suddenly are now snappy and responsive. Please,
 test it yourself and report back. If we like this change, I think we
 should go on and also kill the code that this patch makes redundant.
 (please, let's not add another configurable knob!)

 BTW, Michael and I have a small disagreement on how a maintainer
 should react to the present patch. From a purely functional PoV, this
 patch is short, correct and low impact. Yeah, but... who's ever going to
 clean up after it if we do not demand the cleanup to be merged
 atomically with the patch that opens the need for it? Once the patch is
 in, the maintainer would no longer have a stick to brandish while saying
 now eat your veggies!.

 (Michael replies: This is a flawed position because it leads to absurd
 conclusions. More specifically, it actively discourages the current
 contributor from submitting more patches by denying the satisfaction of
 seeing their existing patch merged, delays the deferral of a correct and
 believable patch that introduces behavior you yourself describe as
 'desirable' and, last but not least, misses an opportunity to involve
 inexperienced contributors by providing appropriate on-ramp bugs like
 the proposed refactoring.)

I'm more concerned about developers proposing big user experience
changes because they feel it's better. Before I look at the patch I
would like to know if there's agreement from people close to our users
that this behavior change is desired. How can we get that?

Thanks,

Tomeu

-- 
«Sugar Labs is anyone who participates in improving and using Sugar.
What Sugar Labs does is determined by the participants.» - David
Farning
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-14 Thread Michael Stone
A word of initial warning: please turn on your sense of the absurd
before reading. This response is written with a deep sense of amusement,
rather than angst.

Tomeu wrote:

 I'm more concerned about developers proposing big user experience
 changes because they feel it's better. 

Yay, more roadblocks and stereotyping! :)

Are you actually saying that you'd prefer either

   a) no patches or,
   b) patches that I think make the system worse?

 Before I look at the patch I would like to know if there's agreement
 from people close to our users that this behavior change is desired.
 How can we get that?

Well, trying it might be one good way to start. :)

After that, shipping it in an explicit beta is another more heavyweight
but nevertheless time-tested approach.

Failing that option, you likely need to find some product specialists.

...

For what it's worth, I do view this patch as a UI bandaid to the
underlying problem that hover-to-click-somewhere-else is the wrong UI
affordance for the home screen to use in supporting discovery of and
access to variant or associated behaviors. The patch is, however, still
a big improvement that is available today.

Now, as for what better look like: treat each view has having a
primary layout algorithm for Sugar-level UI actions. This algorithm
should effectively arrange logically related groups of capabilities as
determined by metadata attached to the capabilities and as determined by
the current filtering criteria for the view.

In actual activities, this layout algorithm is the new toolbar
approach. The filtering criteria are hover-or-click on an expandable
toolbar item.

In the circle view, I'd like to see the layout algorithm expanded to lay
out arcs of smaller option icons each with the same prelighting and
saturation behavior as partial halos around the exterior perimeter of
the activity icons. Naturally, there are some obvious interesting
extensions involving zoom effects and more subtle saturation behaviors.

Lastly, it seems to me that a similar approach might also be effective
in the mesh view and around the central XO-figure.

Kind regards,

Michael
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-14 Thread Simon Schampijer
On 10/13/2009 04:36 AM, Bernie Innocenti wrote:
 Hello,

 Michael just passed by the Acetarium and, since the dinner was late, we
 found the time to test and review his latest prototype^W patch.

 I'm loving how the menus suddenly are now snappy and responsive. Please,
 test it yourself and report back. If we like this change, I think we
 should go on and also kill the code that this patch makes redundant.
 (please, let's not add another configurable knob!)

 From 83ef08969ed7bee08f90c12bfa1eedcb7fb0500c Mon Sep 17 00:00:00 2001
 From: Michael Stonemich...@laptop.org
 Date: Mon, 14 Sep 2009 22:33:12 -0400
 Subject: Make various palette animations happen more quickly.

Can you describe what the patch will change from the user point of view? 
Is this to get rid of the delayed build up of palettes when hovering 
over icons?

You can use right click to get the menu immediately. The delay is on 
purpose.

Regards,
Simon
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-14 Thread Caroline Meeks
On Wed, Oct 14, 2009 at 7:14 AM, Tomeu Vizoso to...@sugarlabs.org wrote:

 On Tue, Oct 13, 2009 at 03:40, Bernie Innocenti ber...@codewiz.org
 wrote:
  El Mon, 12-10-2009 a las 22:36 -0400, Bernie Innocenti escribió:
  Hello,
 
  Michael just passed by the Acetarium and, since the dinner was late, we
  found the time to test and review his latest prototype^W patch.
 
  I'm loving how the menus suddenly are now snappy and responsive. Please,
  test it yourself and report back. If we like this change, I think we
  should go on and also kill the code that this patch makes redundant.
  (please, let's not add another configurable knob!)
 
  BTW, Michael and I have a small disagreement on how a maintainer
  should react to the present patch. From a purely functional PoV, this
  patch is short, correct and low impact. Yeah, but... who's ever going to
  clean up after it if we do not demand the cleanup to be merged
  atomically with the patch that opens the need for it? Once the patch is
  in, the maintainer would no longer have a stick to brandish while saying
  now eat your veggies!.
 
  (Michael replies: This is a flawed position because it leads to absurd
  conclusions. More specifically, it actively discourages the current
  contributor from submitting more patches by denying the satisfaction of
  seeing their existing patch merged, delays the deferral of a correct and
  believable patch that introduces behavior you yourself describe as
  'desirable' and, last but not least, misses an opportunity to involve
  inexperienced contributors by providing appropriate on-ramp bugs like
  the proposed refactoring.)

 I'm more concerned about developers proposing big user experience
 changes because they feel it's better. Before I look at the patch I
 would like to know if there's agreement from people close to our users
 that this behavior change is desired. How can we get that?


People could take both versions to a group of kids and video how it goes.


 Thanks,

 Tomeu

 --
 «Sugar Labs is anyone who participates in improving and using Sugar.
 What Sugar Labs does is determined by the participants.» - David
 Farning
 ___
 Sugar-devel mailing list
 Sugar-devel@lists.sugarlabs.org
 http://lists.sugarlabs.org/listinfo/sugar-devel




-- 
Caroline Meeks
Solution Grove
carol...@solutiongrove.com

617-500-3488 - Office
505-213-3268 - Fax
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-14 Thread Sean DALY
In marketing parlance, these would be called focus groups and are a
very effective and quick way to get feedback.

The group I did at my kids' school last June
(http://lists.sugarlabs.org/archive/marketing/2009-June/001625.html)
immediately showed for example the problems kids had with quitting
Activities.

Sean


On Wed, Oct 14, 2009 at 6:15 PM, Caroline Meeks solutiongr...@gmail.com wrote:


 On Wed, Oct 14, 2009 at 7:14 AM, Tomeu Vizoso to...@sugarlabs.org wrote:

 On Tue, Oct 13, 2009 at 03:40, Bernie Innocenti ber...@codewiz.org
 wrote:
  El Mon, 12-10-2009 a las 22:36 -0400, Bernie Innocenti escribió:
  Hello,
 
  Michael just passed by the Acetarium and, since the dinner was late, we
  found the time to test and review his latest prototype^W patch.
 
  I'm loving how the menus suddenly are now snappy and responsive.
  Please,
  test it yourself and report back. If we like this change, I think we
  should go on and also kill the code that this patch makes redundant.
  (please, let's not add another configurable knob!)
 
  BTW, Michael and I have a small disagreement on how a maintainer
  should react to the present patch. From a purely functional PoV, this
  patch is short, correct and low impact. Yeah, but... who's ever going to
  clean up after it if we do not demand the cleanup to be merged
  atomically with the patch that opens the need for it? Once the patch is
  in, the maintainer would no longer have a stick to brandish while saying
  now eat your veggies!.
 
  (Michael replies: This is a flawed position because it leads to absurd
  conclusions. More specifically, it actively discourages the current
  contributor from submitting more patches by denying the satisfaction of
  seeing their existing patch merged, delays the deferral of a correct and
  believable patch that introduces behavior you yourself describe as
  'desirable' and, last but not least, misses an opportunity to involve
  inexperienced contributors by providing appropriate on-ramp bugs like
  the proposed refactoring.)

 I'm more concerned about developers proposing big user experience
 changes because they feel it's better. Before I look at the patch I
 would like to know if there's agreement from people close to our users
 that this behavior change is desired. How can we get that?

 People could take both versions to a group of kids and video how it goes.

 Thanks,

 Tomeu

 --
 «Sugar Labs is anyone who participates in improving and using Sugar.
 What Sugar Labs does is determined by the participants.» - David
 Farning
 ___
 Sugar-devel mailing list
 Sugar-devel@lists.sugarlabs.org
 http://lists.sugarlabs.org/listinfo/sugar-devel



 --
 Caroline Meeks
 Solution Grove
 carol...@solutiongrove.com

 617-500-3488 - Office
 505-213-3268 - Fax

 ___
 Sugar-devel mailing list
 Sugar-devel@lists.sugarlabs.org
 http://lists.sugarlabs.org/listinfo/sugar-devel


___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-14 Thread Eben Eliason
On Wed, Oct 14, 2009 at 12:04 PM, Simon Schampijer si...@schampijer.de wrote:
 On 10/13/2009 04:36 AM, Bernie Innocenti wrote:
 Hello,

 Michael just passed by the Acetarium and, since the dinner was late, we
 found the time to test and review his latest prototype^W patch.

 I'm loving how the menus suddenly are now snappy and responsive. Please,
 test it yourself and report back. If we like this change, I think we
 should go on and also kill the code that this patch makes redundant.
 (please, let's not add another configurable knob!)

 From 83ef08969ed7bee08f90c12bfa1eedcb7fb0500c Mon Sep 17 00:00:00 2001
 From: Michael Stonemich...@laptop.org
 Date: Mon, 14 Sep 2009 22:33:12 -0400
 Subject: Make various palette animations happen more quickly.

 Can you describe what the patch will change from the user point of view?
 Is this to get rid of the delayed build up of palettes when hovering
 over icons?

 You can use right click to get the menu immediately. The delay is on
 purpose.

We should definitely get feedback. I wouldn't be entirely opposed to a
change, but I do want to make sure that we make such a change for the
right reasons, and that it's actually the right change to make.

The initial design intent was to develop a system which worked in a
sufficiently complete manner without needing palettes at all. Kids
should be able to start activities, resume activities, join
activities, write, paint, stop, etc. without ever seeing a palette at
all. [1] This is the low floor. For kids with more experience or
curiosity, we decided to provide contextual palettes which grouped
related actions and provided more complex interactions with the
system. This is no ceiling. Furthermore, we wanted to help introduce
kids to the availability of additional options in a discoverable way,
which is why the hover effect was chosen to provide increasing levels
of detail and interaction for a given object.

Finding that many kids were actually waiting for the palette to appear
always, instead of, for instance, simply clicking on an activity icon
to join it, encouraged us to INcrease the delay on the palettes to
help emphasize this as a secondary mechanism for interaction. A agree
that hovering in one place to click in another isn't great; but that's
also not the intended primary means of interaction, and should only
really be done when one of the secondary actions is desired.

Removing the delay pushes us, I fear, even farther away from an
interface in which nice friendly large clickable icons can be directly
manipulated and encourages every action to be done through a
contextual menu with a bunch of text in it. Is that really what we
want kids to face?

Just for fun, I might suggest an alternate possibility which actually
decreases the discoverability of the secondary palette. We could
reveal the primary palette (label) on a delay as we do now, with some
indication of more options that can be clicked to expand the menu to
reveal the secondary items. This would provide the (essential) primary
palette as a label and introduce kids to the existence of more
controls without encouraging them to use this as a primary method of
interaction. Advanced users, of course, could still right-click to
invoke the full menu in one shot.

Eben

[1] Incidentally, one of my major complaints with the resume by
default behavior is that it makes starting new activities hard to do,
and virtually impossible to do without using a secondary action, which
is the wrong approach in my mind. I think starting from home, with the
option to resume, while encouraging one-click resume from the Journal
is still the correct approach.  I think offering the option to enter
resume by default mode is great, but I'm not sure it should be,
itself, the default for Home view.

In practice, it seems it has worked too well. It used to be that
kids never resumed activities. Now, it seems, they never start new
ones. The solution seems to be in encouraging use of the Journal and
the Home view for these different default actions, and in clarifying
the UI such that kids understand and desire to do so.

Eben



 Regards,
    Simon
 ___
 Sugar-devel mailing list
 Sugar-devel@lists.sugarlabs.org
 http://lists.sugarlabs.org/listinfo/sugar-devel

___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-14 Thread Tomeu Vizoso
On Wed, Oct 14, 2009 at 16:57, Michael Stone mich...@laptop.org wrote:
 A word of initial warning: please turn on your sense of the absurd
 before reading. This response is written with a deep sense of amusement,
 rather than angst.

 Tomeu wrote:

 I'm more concerned about developers proposing big user experience
 changes because they feel it's better.

 Yay, more roadblocks and stereotyping! :)

You shouldn't take this personal, most of Sugar contributors including
me have done this in the past. I'm just saying that now might not be
such a good idea any more to accept changes in the user experience
without user feedback.

 Are you actually saying that you'd prefer either

  a) no patches or,
  b) patches that I think make the system worse?

Yup, this is certainly absurd. If, say, Gary comes later and proposes
a patch to revert yours, should I accept it in fear that I may
discourage him otherwise?

C'mon, I'm just asking that when substantial changes to the user
experience are proposed, that we have some discussion that involves
the design team and the deployments. Is this really so off?

 Before I look at the patch I would like to know if there's agreement
 from people close to our users that this behavior change is desired.
 How can we get that?

 Well, trying it might be one good way to start. :)

 After that, shipping it in an explicit beta is another more heavyweight
 but nevertheless time-tested approach.

You know how easy is making a spin of SoaS with such changes for
people to try out, or are you saying that you want me to do this work
for you?

 Failing that option, you likely need to find some product specialists.

 ...

 For what it's worth, I do view this patch as a UI bandaid to the
 underlying problem that hover-to-click-somewhere-else is the wrong UI
 affordance for the home screen to use in supporting discovery of and
 access to variant or associated behaviors. The patch is, however, still
 a big improvement that is available today.

 Now, as for what better look like: treat each view has having a
 primary layout algorithm for Sugar-level UI actions. This algorithm
 should effectively arrange logically related groups of capabilities as
 determined by metadata attached to the capabilities and as determined by
 the current filtering criteria for the view.

 In actual activities, this layout algorithm is the new toolbar
 approach. The filtering criteria are hover-or-click on an expandable
 toolbar item.

 In the circle view, I'd like to see the layout algorithm expanded to lay
 out arcs of smaller option icons each with the same prelighting and
 saturation behavior as partial halos around the exterior perimeter of
 the activity icons. Naturally, there are some obvious interesting
 extensions involving zoom effects and more subtle saturation behaviors.

 Lastly, it seems to me that a similar approach might also be effective
 in the mesh view and around the central XO-figure.

I'm having trouble getting your proposal, maybe some mockups would help.

Regards,

Tomeu

-- 
«Sugar Labs is anyone who participates in improving and using Sugar.
What Sugar Labs does is determined by the participants.» - David
Farning
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-14 Thread Edward Cherlin
I'm extracting some of the for [[The Undiscoverable]].

On Wed, Oct 14, 2009 at 9:39 AM, Eben Eliason e...@laptop.org wrote:
 On Wed, Oct 14, 2009 at 12:04 PM, Simon Schampijer si...@schampijer.de 
 wrote:
 On 10/13/2009 04:36 AM, Bernie Innocenti wrote:
 Hello,

 Michael just passed by the Acetarium and, since the dinner was late, we
 found the time to test and review his latest prototype^W patch.

 I'm loving how the menus suddenly are now snappy and responsive. Please,
 test it yourself and report back. If we like this change, I think we
 should go on and also kill the code that this patch makes redundant.
 (please, let's not add another configurable knob!)

Works for me. I hate hover menus.

 From 83ef08969ed7bee08f90c12bfa1eedcb7fb0500c Mon Sep 17 00:00:00 2001
 From: Michael Stonemich...@laptop.org
 Date: Mon, 14 Sep 2009 22:33:12 -0400
 Subject: Make various palette animations happen more quickly.

 Can you describe what the patch will change from the user point of view?
 Is this to get rid of the delayed build up of palettes when hovering
 over icons?

 You can use right click to get the menu immediately. The delay is on
 purpose.

Yes, that's in [[The Undiscoverable]]

 We should definitely get feedback. I wouldn't be entirely opposed to a
 change, but I do want to make sure that we make such a change for the
 right reasons, and that it's actually the right change to make.

 The initial design intent was to develop a system which worked in a
 sufficiently complete manner without needing palettes at all. Kids
 should be able to start activities, resume activities, join
 activities, write, paint, stop, etc. without ever seeing a palette at
 all. [1]

That's fine, if

1) Everything is discoverable.
or
2) Teachers have guidance on what is not discoverable and how to
introduce it, and on children's use cases and on how to handle those
use cases efficiently.

We have neither. I'm working on 2. Anything that improves 1 gets +1 from me.

 This is the low floor. For kids with more experience or
 curiosity, we decided to provide contextual palettes which grouped
 related actions and provided more complex interactions with the
 system. This is no ceiling. Furthermore, we wanted to help introduce
 kids to the availability of additional options in a discoverable way,
 which is why the hover effect was chosen to provide increasing levels
 of detail and interaction for a given object.

Was the discoverability of hover menus tested with children? I didn't
discover it, and I'm a born lever puller and button clicker.

 Finding that many kids were actually waiting for the palette to appear
 always, instead of, for instance, simply clicking on an activity icon
 to join it, encouraged us to INcrease the delay on the palettes to
 help emphasize this as a secondary mechanism for interaction.

A case of treating the symptom rather than the ailment.

 A agree
 that hovering in one place to click in another isn't great; but that's
 also not the intended primary means of interaction, and should only
 really be done when one of the secondary actions is desired.

 Removing the delay pushes us, I fear, even farther away from an
 interface in which nice friendly large clickable icons can be directly
 manipulated and encourages every action to be done through a
 contextual menu with a bunch of text in it. Is that really what we
 want kids to face?

I don't see the problem. The nice friendly large clickable icons will
remain where they are. You either have to create and *demonstrate* a
path to *equal* discoverability, or you have to think about helping
teachers help children with what they don't discover.

 Just for fun, I might suggest an alternate possibility which actually
 decreases the discoverability of the secondary palette.

Not my kind of fun.

 We could
 reveal the primary palette (label) on a delay as we do now, with some
 indication of more options that can be clicked to expand the menu to
 reveal the secondary items. This would provide the (essential) primary
 palette as a label and introduce kids to the existence of more
 controls without encouraging them to use this as a primary method of
 interaction. Advanced users, of course, could still right-click to
 invoke the full menu in one shot.

I don't like to hear children divided into advanced and non-advanced
that way. If we get a series of lesson plans together on all of the
known non-discoverable elements of Sugar, we should be able to get
this difference down to two or three weeks max. Then we can talk about
advanced children being the ones who have developed skill in what an
Activity is for, not in knobs and blinkenlights.

 Eben

 [1] Incidentally, one of my major complaints with the resume by
 default behavior is that it makes starting new activities hard to do,
 and virtually impossible to do without using a secondary action, which
 is the wrong approach in my mind.

I want to know what is in the children's minds.

 I think starting from home, with the
 

Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-14 Thread Bernie Innocenti
El Wed, 14-10-2009 a las 12:15 -0400, Caroline Meeks escribió:

 People could take both versions to a group of kids and video how it
 goes. 

When are you going to be at the GPA? Next time I could come along, apply
the patch before the kids start using the machines, and then we could
interview them at the end of the day about their experience.

Or -- if we were evil enough -- we could patch only half of the stations
and see which group performs better ;-)


-- 
   // Bernie Innocenti - http://codewiz.org/
 \X/  Sugar Labs   - http://sugarlabs.org/

___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-14 Thread Caroline Meeks
On Wed, Oct 14, 2009 at 1:50 PM, Bernie Innocenti ber...@codewiz.orgwrote:

 El Wed, 14-10-2009 a las 12:15 -0400, Caroline Meeks escribió:

  People could take both versions to a group of kids and video how it
  goes.

 When are you going to be at the GPA? Next time I could come along, apply
 the patch before the kids start using the machines, and then we could
 interview them at the end of the day about their experience.

 Or -- if we were evil enough -- we could patch only half of the stations
 and see which group performs better ;-)


they all have their own sticks so that might not be quite so easy.  Also I
don't want to do it during classroom time.

We hope to start an afterschool session on  Sugar on Fridays in a couple of
weeks.  Want to help?

I think once we've done that for a few times we might be able to ask to
borrow some kids who have yet to use Sugar some afternoon when they are in
after-school. Give half of them one kind of stick and half another in the
GPA computer lab.

Realistically, I think it will be about a month before I could set that up,
just in terms of how many new requests I can give the school at once.

There is also a club at Harvard using XOs in a Boston after school program.
I'm not sure where they are in their process but they might be able to
provide a test bed on XOs.



 --
   // Bernie Innocenti - http://codewiz.org/
  \X/  Sugar Labs   - http://sugarlabs.org/




-- 
Caroline Meeks
Solution Grove
carol...@solutiongrove.com

617-500-3488 - Office
505-213-3268 - Fax
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-14 Thread Eben Eliason
On Wed, Oct 14, 2009 at 1:41 PM, Edward Cherlin echer...@gmail.com wrote:
 I'm extracting some of the for [[The Undiscoverable]].

 On Wed, Oct 14, 2009 at 9:39 AM, Eben Eliason e...@laptop.org wrote:
 On Wed, Oct 14, 2009 at 12:04 PM, Simon Schampijer si...@schampijer.de 
 wrote:
 On 10/13/2009 04:36 AM, Bernie Innocenti wrote:
 Hello,

 Michael just passed by the Acetarium and, since the dinner was late, we
 found the time to test and review his latest prototype^W patch.

 I'm loving how the menus suddenly are now snappy and responsive. Please,
 test it yourself and report back. If we like this change, I think we
 should go on and also kill the code that this patch makes redundant.
 (please, let's not add another configurable knob!)

 Works for me. I hate hover menus.

 From 83ef08969ed7bee08f90c12bfa1eedcb7fb0500c Mon Sep 17 00:00:00 2001
 From: Michael Stonemich...@laptop.org
 Date: Mon, 14 Sep 2009 22:33:12 -0400
 Subject: Make various palette animations happen more quickly.

 Can you describe what the patch will change from the user point of view?
 Is this to get rid of the delayed build up of palettes when hovering
 over icons?

 You can use right click to get the menu immediately. The delay is on
 purpose.

 Yes, that's in [[The Undiscoverable]]

 We should definitely get feedback. I wouldn't be entirely opposed to a
 change, but I do want to make sure that we make such a change for the
 right reasons, and that it's actually the right change to make.

 The initial design intent was to develop a system which worked in a
 sufficiently complete manner without needing palettes at all. Kids
 should be able to start activities, resume activities, join
 activities, write, paint, stop, etc. without ever seeing a palette at
 all. [1]

 That's fine, if

 1) Everything is discoverable.

Yes, we could use some work there. The hover was meant to increase
discoverability, not decrease it, but perhaps it's not working
effectively.

 or
 2) Teachers have guidance on what is not discoverable and how to
 introduce it, and on children's use cases and on how to handle those
 use cases efficiently.

Agreed.

 We have neither. I'm working on 2. Anything that improves 1 gets +1 from me.

 This is the low floor. For kids with more experience or
 curiosity, we decided to provide contextual palettes which grouped
 related actions and provided more complex interactions with the
 system. This is no ceiling. Furthermore, we wanted to help introduce
 kids to the availability of additional options in a discoverable way,
 which is why the hover effect was chosen to provide increasing levels
 of detail and interaction for a given object.

 Was the discoverability of hover menus tested with children? I didn't
 discover it, and I'm a born lever puller and button clicker.

Almost nothing was tested with children until the first release of
Sugar on the XO-1, unfortunately; we would have liked to test more.

 Finding that many kids were actually waiting for the palette to appear
 always, instead of, for instance, simply clicking on an activity icon
 to join it, encouraged us to INcrease the delay on the palettes to
 help emphasize this as a secondary mechanism for interaction.

 A case of treating the symptom rather than the ailment.

Perhaps. What would you define as the ailment, yourself? The primary
intent was to encourage use of a direct interaction model, in which
palettes we're supposed to play a big role. When it turned out that
young kids, who didn't read, and who didn't have motor skills for
selecting form the palettes, we aimed to reduce accidental invocation
of them without entirely eliminating discovery by increasing the
delay.

Perhaps (assuming, of course, the rules you laid out above already) we
should remove the hover activation altogether! (Not, of course,
without testing!)

 A agree
 that hovering in one place to click in another isn't great; but that's
 also not the intended primary means of interaction, and should only
 really be done when one of the secondary actions is desired.

 Removing the delay pushes us, I fear, even farther away from an
 interface in which nice friendly large clickable icons can be directly
 manipulated and encourages every action to be done through a
 contextual menu with a bunch of text in it. Is that really what we
 want kids to face?

 I don't see the problem. The nice friendly large clickable icons will
 remain where they are. You either have to create and *demonstrate* a
 path to *equal* discoverability, or you have to think about helping
 teachers help children with what they don't discover.

The problem is that the appearance of the palette seems to encourage
kids to take the longer (and harder) route to their desired
interaction. The reveal of the alternate option could distract from
the more direct path to their intended goal. Again, observation with
kids indicated that, even without revealing palettes immediately, they
tended to wait for them instead of clicking directly on 

Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-14 Thread Benjamin M. Schwartz
Michael Stone wrote:
 In the circle view, I'd like to see the layout algorithm expanded to lay
 out arcs of smaller option icons each with the same prelighting and
 saturation behavior as partial halos around the exterior perimeter of
 the activity icons.

It took me a while to get this, but now that I understand it, I like it.

The basic idea is to make the current palette appear with no delay on
rollover, but not directly under the cursor.  The user is not dissuaded
from clicking on the primary icon, which remains accessible, but the
secondary options are also immediately visible.

The obvious problem with this is that the palette may cover another nearby
icon, preventing the user from accessing it.   A simple solution, in the
circle view, would be to make the palette always pop out, away from the
center.  Michael proposes a more aesthetic solution, changing the geometry
of the palettes to curve around the outside of the circle.



signature.asc
Description: OpenPGP digital signature
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-14 Thread Martin Dengler
On Wed, Oct 14, 2009 at 12:14:57PM +0100, Tomeu Vizoso wrote:
 On Tue, Oct 13, 2009 at 03:40, Bernie Innocenti ber...@codewiz.org wrote:
  El Mon, 12-10-2009 a las 22:36 -0400, Bernie Innocenti escribió:
  Hello,
 
  Michael just passed by the Acetarium and, since the dinner was late, we
  found the time to test and review his latest prototype^W patch.
 
  I'm loving how the menus suddenly are now snappy and responsive. Please,
  test it yourself and report back. If we like this change, I think we
  should go on and also kill the code that this patch makes redundant.

 I'm more concerned about developers proposing big user experience
 changes because they feel it's better. Before I look at the patch I
 would like to know if there's agreement from people close to our users
 that this behavior change is desired. How can we get that?

From [1]:

Also the context menu, that appears when hovering for a moment over
an icon, providing some settings or features, irritated at least five
children more than it was supportive. Only two children used the
context menu of the home screen-icons to identify the activity,
because the name of the activity is displayed on top of the menu.

[The children] were partially bothered [by the context menu-function]
and one girl even groaned every time the menu appears, because she did
not want it to.

Eben's justification of popup-menus[2] (which I alway re-buy into
everytime I read it) is perhaps not being absorbed by Activity
developers?  Perhaps with a bit of developer elbow-grease we can
eliminate the crutch of the popup-menu from every (Fructose) Activity?

 Thanks,
 
 Tomeu

Martin

1. 
http://dimeb.informatik.uni-bremen.de/documents/Sugar-Not_necessarily_unhealthy.pdf

My favourite use out of context for bashing-the-UI-design quote is:
Every-time the Frame appeared, which happened mostly unintentional,
the children were irritated and one girl even [got] a little bit angry
and started to swear.

2. http://lists.sugarlabs.org/archive/sugar-devel/2009-October/020209.html


pgpKi7DFrbw6q.pgp
Description: PGP signature
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-14 Thread Michael Stone
Simon wrote: 

 On 10/13/2009 04:36 AM, Bernie Innocenti wrote:
  I'm loving how the menus suddenly are now snappy and responsive. 

  From: Michael Stone ...
  Subject: Make various palette animations happen more quickly.
  ...

 Can you describe what the patch will change from the user point of
 view? 

Of course I can. In fact, I believe that Bernie and I already did, in
the lines of your message that I quoted above. Do you actually find
these lines to be obscure?

(I inquire most particularly because I'm nearly certain that you could
have learned the user-visible effect of the patch more quickly and
more easily by trying out the change yourself than by asking. Maybe you
had a more complex goal in mind than simply learning the nature of the
user-visible change which justifies the additional delay and round-trips
that your request incurs?)

 Is this to get rid of the delayed build up of palettes when hovering 
 over icons?

Yes, this is the purpose of setting the length of the build-up animation
to be 0.0 seconds.

 The delay is on purpose.

Of course it is. Unfortunately, that does not make it good.

Now, after trying out the patched version vs. the unpatched version, do
you actually find that you prefer the current behavior?

Kind regards,

Michael
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-14 Thread Sameer Verma
On Wed, Oct 14, 2009 at 4:42 PM, Michael Stone mich...@laptop.org wrote:
 Simon wrote:

 On 10/13/2009 04:36 AM, Bernie Innocenti wrote:
  I'm loving how the menus suddenly are now snappy and responsive.

  From: Michael Stone ...
  Subject: Make various palette animations happen more quickly.
  ...

 Can you describe what the patch will change from the user point of
 view?

 Of course I can. In fact, I believe that Bernie and I already did, in
 the lines of your message that I quoted above. Do you actually find
 these lines to be obscure?

 (I inquire most particularly because I'm nearly certain that you could
 have learned the user-visible effect of the patch more quickly and
 more easily by trying out the change yourself than by asking. Maybe you
 had a more complex goal in mind than simply learning the nature of the
 user-visible change which justifies the additional delay and round-trips
 that your request incurs?)

 Is this to get rid of the delayed build up of palettes when hovering
 over icons?

 Yes, this is the purpose of setting the length of the build-up animation
 to be 0.0 seconds.

 The delay is on purpose.

 Of course it is. Unfortunately, that does not make it good.

 Now, after trying out the patched version vs. the unpatched version, do
 you actually find that you prefer the current behavior?

 Kind regards,

 Michael
 ___
 Sugar-devel mailing list
 Sugar-devel@lists.sugarlabs.org
 http://lists.sugarlabs.org/listinfo/sugar-devel



Can the delay of showing the right-click menu be user configurable via
control panel just like the frame sensitivity? I've seen both use
cases: right click and hover to access the menu.

Sameer
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-14 Thread Michael Stone
Tomeu wrote:
On Wed, Oct 14, 2009 at 16:57, Michael Stone mich...@laptop.org wrote:
 Tomeu wrote:

 I'm more concerned about developers proposing big user experience
 changes because they feel it's better.

 Yay, more roadblocks and stereotyping! :)

 You shouldn't take this personal, most of Sugar contributors including
 me have done this in the past. 

humorI don't take it personally; I take it on behalf of oppressed
contributors everywhere...!/humor 

(In other words, judging the patch by its author rather than by its text
and its effects does seem to me to be a rather risky business. Your
choice, though.)

 I'm just saying that now might not be such a good idea any more to
 accept changes in the user experience without user feedback.

Far better to accept the changes, get the user feedback on the changed
versions, then revert the changes if they turn out to be inappropriate.
Everyone will be happier. (That's my opinion, anyway.)

  Are you actually saying that you'd prefer either
 
  a) no patches or,
  b) patches that I think make the system worse?

 Yup, this is certainly absurd. 

I'm glad that we agree.

 If, say, Gary comes later and proposes a patch to revert yours, should
 I accept it in fear that I may discourage him otherwise?

Yes, but in awareness rather than in fear, (though only unless you have
an overriding reason not to.)

Being concerned about developers proposing big user experience changes
does not seem to me to meet that criterion. To my mind, overriding
reasons not to include the patch is...

   * incorrect
   * illegal
   * an obviously bad idea
   * a subtly bad idea
   * more trouble than it's worth

At best, it has been argued so far that merging the patch I showed to
Bernie is a subtly bad idea because it leaves the obvious possible of
refactoring of the context menu code to remove the use of the animation
code unimplemented.

In the middle, Eben expressed uncertainty on the basis of a specific
vision and private memories. This shouldn't impede merging the patch; it
should just encourage more testing and thought based on his experiences,
vision, and thought experiment so that we get more data.

At worst, it has been argued that merging the patch is an obviously bad
idea because it was developed by a developer (me; who else was supposed
to develop it?) engaged in critical dialogue with and reflection on the
Sugar user experience (I do feel that it's better) via methods that I
find congenial as opposed to by methods that I find prohibitively
expensive. 

Did I miss any other positions in the debate?

C'mon, I'm just asking that when substantial changes to the user
experience are proposed, that we have some discussion that involves
the design team and the deployments. Is this really so off?

I'd call it more timid than off. Or at least inappropriately
deferential to the wishes of the design team and the deployments who
talk to you at the expense of receiving more contribution by making
contribution more dynamic and fulfilling and therefore at the expense of
exploring more possible Sugar experiences.

 Before I look at the patch I would like to know if there's agreement
 from people close to our users that this behavior change is desired.
 How can we get that?

 Well, trying it might be one good way to start. :)

 After that, shipping it in an explicit beta is another more heavyweight
 but nevertheless time-tested approach.

You know how easy is making a spin of SoaS with such changes for
people to try out, or are you saying that you want me to do this work
for you?

I'm saying three things; namely, that:

   1. I trust that you and the other people on this list are empowered
  and able to make reasonable UI decisions when presented with clear
  alternatives,

   2. Patches are an appropriate way of exchanging proposals for software
  modification and a good medium for discussion of those proposals, and

   3. Applying a 6-line patch to a jhbuild root, to a Sugar chroot
  produced with my scripts, or to a live Sugar install is a hell
  of a lot easier (and more valuable to know how to do) than my
  cooking up a SoaS image just for interested people to try out said
  patch.
   
(For the record, I'm more sympathetic to the SoaS argument with rainbow
stuff but the rainbowish work that I'm doing at the moment lies in the
area of network isolation and community-building [c.f. my new playground
at sandboxing.org] rather than in Sugar integration.)

 Now, as for what better look like: ...

I'm having trouble getting your proposal, maybe some mockups would help.

A fair request, but one that is probably doomed to wait until someone
with graphics and/or animation skills comes along to help me transform
my words into pictures and movies. 

(Interested folks should please contact me; I'd be very happy to work
with you on obtaining such visual materials.)

Regards,

Michael

P.S. - For even more humor, count how many words have gone into this
thread so far in 

Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-14 Thread Daniel Drake
2009/10/13 Bernie Innocenti ber...@codewiz.org:
 Hello,

 Michael just passed by the Acetarium and, since the dinner was late, we
 found the time to test and review his latest prototype^W patch.

 I'm loving how the menus suddenly are now snappy and responsive.

I haven't tried it, and your mail also lacks an explicit explanation
of what your patch actually does, but based on the hints you have
provided, :

It makes all menus that currently have a delay appear instantly?

I don't like the idea, as I think that the delay has influenced
Sugar's UI design quite heavily.

For example, a user is on the home screen with ring view enabled, and
the mouse cursor is on the left side of the screen. The user wants to
shut down the XO. He moves the cursor towards the XO figure in the
middle of the screen, but while doing so passes over an activity icon
in the ring. The menu immediately appears, completely obscuring the XO
figure that he was going to click on.

Daniel
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-14 Thread Michael Stone
 Daniel wrote:
 2009/10/13 Bernie Innocenti ber...@codewiz.org:
  Hello,
 
  Michael just passed by the Acetarium and, since the dinner was late,
  we found the time to test and review his latest prototype^W patch.
 
  I'm loving how the menus suddenly are now snappy and responsive.
 
 I haven't tried it, and your mail also lacks an explicit explanation
 of what your patch actually does, but based on the hints you have
 provided, :
 
 It makes all menus that currently have a delay appear instantly?

It makes the menus appear and disappear much more quickly by setting the
length of their animations to be 0.0 seconds, thereby simulating
snappy and responsive. Whether or not their appearance and
disappearance is instantaneous depends on your processor; Python and
GTK are still surprisingly slow.

 I don't like the idea, as I think that the delay has influenced
 Sugar's UI design quite heavily.

You're obviously entitled to your opinion. I'd still appreciate it if
you tried out the patch.

 For example, a user is on the home screen with ring view enabled, and
 the mouse cursor is on the left side of the screen. The user wants to
 shut down the XO. He moves the cursor towards the XO figure in the
 middle of the screen, but while doing so passes over an activity icon
 in the ring. The menu immediately appears, completely obscuring the XO
 figure that he was going to click on.

I have actually tried to produce this behavior. In practice, I can't
find anyway to make it frustrating because the menus also *disappear*
quickly when the cursor leaves their boundary.

(I would nevertheless be interested in hearing about actual experience
reports from frustrated users.)

Regards,

Michael
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-14 Thread Daniel Drake
2009/10/15 Michael Stone mich...@laptop.org:
 the menus also *disappear*
 quickly when the cursor leaves their boundary.

In the field I actually have considered on various occasions doing the
opposite. I've seen many children struggle to keep the mouse inside
the menu while navigating to the item they want to click on, and
having 1 or 2 more seconds to reposition the mouse before the menu
disappears might help a lot.  (of course it might bring in some other
undesirable effects, these are just some initial thoughts from field
frustration)

Daniel
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-14 Thread Eben Eliason
On Wed, Oct 14, 2009 at 11:12 PM, Michael Stone mich...@laptop.org wrote:
 Eben,

 First, thanks for the interesting and detailed history of your vision. I
 very much appreciate your ability to generate thought experiments
 describing other ways that the world could be.

 Next...

 Eben wrote:

 Simon Schampijer si...@schampijer.de wrote:

  You can use right click to get the menu immediately. The delay is on
  purpose.

 We should definitely get feedback. I wouldn't be entirely opposed to a
 change, but I do want to make sure that we make such a change for the
 right reasons, and that it's actually the right change to make.

 So try it, and encourage your friends to do the same! :)

I don't feel inclined to myself, as I've never had a problem with the
delay, and actually used to find the speed with which these palettes
obstructed my view of the screen frustrating before the delay was
increased. I assume there is a group of individuals — developers and
kids alike — who feel the same as I do, and others who feel the same
as you. Those that feel as you do, of course, should definitely try it
and provide feedback, which I'd be happy to hear.

I have no itch.

 (NB: merging it is a good way to accomplish this!)

 The initial design intent was to develop a system which worked in a
 sufficiently complete manner without needing palettes at all. Kids
 should be able to start activities, resume activities, join
 activities, write, paint, stop, etc. without ever seeing a palette at
 all. [1] This is the low floor. For kids with more experience or
 curiosity, we decided to provide contextual palettes which grouped
 related actions and provided more complex interactions with the
 system. This is no ceiling. Furthermore, we wanted to help introduce
 kids to the availability of additional options in a discoverable way,
 which is why the hover effect was chosen to provide increasing levels
 of detail and interaction for a given object.

 This is a good story, but a bad implementation. A better implementation
 would be to provide the extra options in a *visible but unobtrusive

I disagree that this is an obviously better implementation. It's
better if you're one who frequently has needs for the additional
complexity. It's arguably not if you use only (or mostly) primary
actions.

 form* or, if you absolutely must hide them, to make them visible with a
 device like a complexity slider or like the new toolbar's transient
 hover; lock on click behavior.

Adding a preference for the delays for these palettes, as we have for
the frame, is a another reasonable possibility, and a literal
incarnation of the complexity slider you suggest.

 Remember -- comparisons should be made in a fixed visual field, not
 across multi-second long gulfs of time, cursor positioning, and fine
 motor control.

 Finding that many kids were actually waiting for the palette to appear
 always, instead of, for instance, simply clicking on an activity icon
 to join it, encouraged us to INcrease the delay on the palettes to
 help emphasize this as a secondary mechanism for interaction. A agree
 that hovering in one place to click in another isn't great; but that's
 also not the intended primary means of interaction, and should only
 really be done when one of the secondary actions is desired.

 Understandable, but as you say, the result isn't great. This makes it
 better. Try it! Merge it! (Then come up with something better.)

We had lots of trouble with palettes obscuring other elements of the
UI even with short delays, including, potentially, the desired target.
I can't imagine that this issue has gone away in the intervening
months, and removing the delay entirely seems it would exacerbate the
issue. Do you have any experiences to report in this regard?

 Removing the delay pushes us, I fear, even farther away from an
 interface in which nice friendly large clickable icons can be directly
 manipulated and encourages every action to be done through a
 contextual menu with a bunch of text in it. Is that really what we
 want kids to face?

 It's better than the present. Again, merge it, then find something
 better.

You keep saying it's better, but fail to provide adequate reasoning or
heuristics for why you feel this to be so. Could you elaborate on the
problems you identified and the way in which this resolves them?

Also, again, it's only arguably better (though I don't fully
comprehend the argument) for those that want or need all of the
secondary functionality, yourself included, and the ability to
right-click to invoke palettes immediately exists to enable those who
feel more comfortable with the system and desire the added level of
depth it can provide to access these options without the delay.

 Just for fun, I might suggest an alternate possibility which actually
 decreases the discoverability of the secondary palette. We could
 reveal the primary palette (label) on a delay as we do now, with some
 indication of more options that can be clicked 

Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-14 Thread Michael Stone
Eben wrote:

 We should definitely get feedback. I wouldn't be entirely opposed to a
 change, but I do want to make sure that we make such a change for the
 right reasons, and that it's actually the right change to make.

 So try it, and encourage your friends to do the same! :)

 I don't feel inclined to myself, as I've never had a problem with the
 delay, and actually used to find the speed with which these palettes
 obstructed my view of the screen frustrating before the delay was
 increased. 

Do I correctly understand that 

   a) when you wrote we should definitely get feedback up above, you
  actually meant YOU should get feedback and bring it to me. and
  that

   b) when you wrote I definitely want to make sure that we make such a
  change for the right reasons you were not, in fact, considering
  does it feel good to use? to be a critical part of the right
  reasons?

 I have no itch.

You don't need to have an itch to try to help someone else accomplish a
reasonable goal that you do not actively oppose. That's called

   Encouraging Contribution.

 The initial design intent was to develop a system which worked in a
 sufficiently complete manner without needing palettes at all. Kids
 should be able to start activities, resume activities, join
 activities, write, paint, stop, etc. without ever seeing a palette at
 all. [1] This is the low floor. For kids with more experience or
 curiosity, we decided to provide contextual palettes which grouped
 related actions and provided more complex interactions with the
 system. This is no ceiling. Furthermore, we wanted to help introduce
 kids to the availability of additional options in a discoverable way,
 which is why the hover effect was chosen to provide increasing levels
 of detail and interaction for a given object.

 This is a good story, but a bad implementation. A better implementation
 would be to provide the extra options in a *visible but unobtrusive

 I disagree that this is an obviously better implementation. 

Which of the following do you disagree with?

   a) visible but unobtrusive is a lower floor than hover

   b) visible but unobtrusive is a higher ceiling than hover

   c) visible but unobtrusive is provides increasing levels of detail
  better than hover

   d) other objection

 It's better if you're one who frequently has needs for the additional
 complexity. 

I'm actually claiming that it's uniformly better: hover without a lock
open as is available in the new toolbars is Just A Bad Idea,
particularly as we see more devices with touchscreens.

 It's arguably not if you use only (or mostly) primary actions.

Having the sub actions be always available in the same field of view but
unobtrusive, e.g. by means of effective use of color, contrast, and size
just seems like a better solution to me. I'm sorry that I don't have the
code or animations necessary to demonstrate this today. However, that
lack should in no way alter our consideration of the current patch.

 form* or, if you absolutely must hide them, to make them visible with a
 device like a complexity slider or like the new toolbar's transient
 hover; lock on click behavior.
 
 Adding a preference for the delays for these palettes, as we have for
 the frame, is a another reasonable possibility, and a literal
 incarnation of the complexity slider you suggest.

It's one choice, but it's a bad one. We can do better.

Also, it is not a complexity slider, most notably because it is not
visible in the same field of view as the interface it controls.

 Remember -- comparisons should be made in a fixed visual field, not
 across multi-second long gulfs of time, cursor positioning, and fine
 motor control.

You didn't respond to this principle. Do you accept it or feel that it
misses some important cases?

 Finding that many kids were actually waiting for the palette to appear
 always, instead of, for instance, simply clicking on an activity icon
 to join it, encouraged us to INcrease the delay on the palettes to
 help emphasize this as a secondary mechanism for interaction. A agree
 that hovering in one place to click in another isn't great; but that's
 also not the intended primary means of interaction, and should only
 really be done when one of the secondary actions is desired.

 Understandable, but as you say, the result isn't great. This makes it
 better. Try it! Merge it! (Then come up with something better.)

We had lots of trouble with palettes obscuring other elements of the
UI even with short delays, including, potentially, the desired target.
I can't imagine that this issue has gone away in the intervening
months, and removing the delay entirely seems it would exacerbate the
issue. Do you have any experiences to report in this regard?

As I wrote to Daniel, my experience was that the overall increased
responsiveness of the UI more than made up for any annoyance that I
experienced as a result of its occasionally poor layout choices. 

[Sugar-devel] RFC: Kill the delayed menus for good

2009-10-12 Thread Bernie Innocenti
Hello,

Michael just passed by the Acetarium and, since the dinner was late, we
found the time to test and review his latest prototype^W patch.

I'm loving how the menus suddenly are now snappy and responsive. Please,
test it yourself and report back. If we like this change, I think we
should go on and also kill the code that this patch makes redundant.
(please, let's not add another configurable knob!)

From 83ef08969ed7bee08f90c12bfa1eedcb7fb0500c Mon Sep 17 00:00:00 2001
From: Michael Stone mich...@laptop.org
Date: Mon, 14 Sep 2009 22:33:12 -0400
Subject: Make various palette animations happen more quickly.

---
 src/sugar/graphics/palette.py   |2 +-
 src/sugar/graphics/palettewindow.py |4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/sugar/graphics/palette.py
b/src/sugar/graphics/palette.py
index bb2b605..466edef 100644
--- a/src/sugar/graphics/palette.py
+++ b/src/sugar/graphics/palette.py
@@ -103,7 +103,7 @@ class Palette(PaletteWindow):
 
 self._menu_content_separator = gtk.HSeparator()
 
-self._secondary_anim = animator.Animator(2.0, 10)
+self._secondary_anim = animator.Animator(0.0, 10)
 self._secondary_anim.add(_SecondaryAnimation(self))
 
 # we init after initializing all of our containers
diff --git a/src/sugar/graphics/palettewindow.py
b/src/sugar/graphics/palettewindow.py
index 3049f55..4bc07e2 100644
--- a/src/sugar/graphics/palettewindow.py
+++ b/src/sugar/graphics/palettewindow.py
@@ -148,10 +148,10 @@ class PaletteWindow(gtk.Window):
 self._up = False
 self._old_alloc = None
 
-self._popup_anim = animator.Animator(.5, 10)
+self._popup_anim = animator.Animator(0.0, 10)
 self._popup_anim.add(_PopupAnimation(self))
 
-self._popdown_anim = animator.Animator(0.6, 10)
+self._popdown_anim = animator.Animator(0.0, 10)
 self._popdown_anim.add(_PopdownAnimation(self))
 
 gobject.GObject.__init__(self, **kwargs)
-- 
1.5.6.5


-- 
   // Bernie Innocenti - http://codewiz.org/
 \X/  Sugar Labs   - http://sugarlabs.org/

___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] RFC: Kill the delayed menus for good

2009-10-12 Thread David Farning
On Mon, Oct 12, 2009 at 9:40 PM, Bernie Innocenti ber...@codewiz.org wrote:
 El Mon, 12-10-2009 a las 22:36 -0400, Bernie Innocenti escribió:
 Hello,

 Michael just passed by the Acetarium and, since the dinner was late, we
 found the time to test and review his latest prototype^W patch.

 I'm loving how the menus suddenly are now snappy and responsive. Please,
 test it yourself and report back. If we like this change, I think we
 should go on and also kill the code that this patch makes redundant.
 (please, let's not add another configurable knob!)

 BTW, Michael and I have a small disagreement on how a maintainer
 should react to the present patch. From a purely functional PoV, this
 patch is short, correct and low impact. Yeah, but... who's ever going to
 clean up after it if we do not demand the cleanup to be merged
 atomically with the patch that opens the need for it? Once the patch is
 in, the maintainer would no longer have a stick to brandish while saying
 now eat your veggies!.

 (Michael replies: This is a flawed position because it leads to absurd
 conclusions. More specifically, it actively discourages the current
 contributor from submitting more patches by denying the satisfaction of
 seeing their existing patch merged, delays the deferral of a correct and
 believable patch that introduces behavior you yourself describe as
 'desirable' and, last but not least, misses an opportunity to involve
 inexperienced contributors by providing appropriate on-ramp bugs like
 the proposed refactoring.)

  -- Bernie  Michael

The requirement for patches which are clean, correct, and adhere to SL
coding standards is orthogonalization to either sticks or carrots.
The requirement exists because code is expensive to maintain.  The
decision to accept code is up to the maintainer.

This is yet another example of the upstream-downstream tension.  In
this case, the developer wants early and often while the maintainer
wants stable and seldom.  It is interesting to see how the
definitions of early and often and stable and seldom shift as we
move up and down the stream.

david
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel