[IAEP] Working math graphs/plots

Gary C Martin gary at garycmartin.com
Fri Dec 12 23:50:38 EST 2008


On 13 Dec 2008, at 01:53, Edward Cherlin wrote:

> On Wed, Dec 10, 2008 at 8:25 PM, Gary C Martin  
> <gary at garycmartin.com> wrote:
>>
>> On 11 Dec 2008, at 00:24, Edward Cherlin wrote:
>>
>>> On Wed, Dec 10, 2008 at 2:51 PM, Reinier Heeres  
>>> <reinier at heeres.eu> wrote:
>>>>
>>>> Hi,
>>>>
>>>> I agree that the plotting functionality is not really well exposed,
>>>> although help(index) will show you it's available and help(plot)  
>>>> will
>>>> tell you how to use it. Try plot(sin(x),x=0..360) for example.  
>>>> I'll work
>>>> on the exposure of plotting in the next release; suggestions on  
>>>> how to
>>>> do this exactly would be welcome.
>>>
>>> Just exposing help would go a long way to solving the problem.
>>
>> Help is already exposed in the hover menu for each toolbar icon. Not
>> discoverable enough?
>
> Absolutely not enough. I have to wait for the menu to expand _twice_.
> How was I supposed to discover that?

You could always read the Calculate wiki page, that's where I first  
read about the plot feature ~11 months or so ago. In the perfect  
world, every feature you needed at any moment would be clearly  
represented in the UI. Different individuals use software in different  
ways, it's always very hard to get this right (and it's _never_  
perfect).

>> Seems Reinier' s Calculate has much more effort/detail
>> put in than any other activity so far.
>
> That doesn't mean that he got it right. I really, really hate delayed
> hover menus, and I hate doubly-delayed hover menus many times more.

Being cheeky here... so right click and move on with life :-p (and, as  
a Mac user, you have no idea how much it pained me when I first saw  
the project was going for 2 mouse button use).

Sometimes I like the whole concept of hover menus, sometimes I think  
they sucks. The idea is certainly going to have to be reworked (along  
with a large chunk of the existing UI) if we get Sugar to a gen 2  
touch interface.

> First, because they are inherently not discoverable, and secondly,
> because you are wasting my time, and every other user's time. I reject
> the argument that we are trying to teach children to click icons
> directly, and note that it doesn't even apply in the case of help.

For me, I always consider the need for help text (and manuals) to be a  
level of failure in design. Help texts are a large burden on everyone  
(quality, translation, UI space, updates, accuracy), but often are the  
cheapest first pass when you realise some feature not discoverable  
enough.

Any concrete UI suggestions for calculate features (or activities** in  
general) to be more discoverable for you? You're not allowed to add  
this as another potential FLOSS book TODO ;-) Well OK, I guess that  
might be a workaround if there's no better UI effort (and teachers  
like static books, right?).

** my latest casual discovery was that Write has customised its keep  
toolbar icon, so if you hover you can choose to keep a copy as RTF,  
HTML, or plain text. Well hidden, but this could be extended to 'keep'  
to all kind's of interesting places (i.e. push to a Moodle server, an  
outbound email, web site upload). Hopefully some Journal 'sharing'   
feature will be a generic solution for any activity.

--Gary

> My general principle of UI design is, never, ever try to be smarter
> than your user. Not even if you are. Now that I know that help is on
> the menus on double delay, I will almost never use it that way,
> because typing is faster, but I will resent it every time I have to
> type it, because the menu could be faster.
>> --Gary
>>
>>>> The implementation is as basic as it can get: it evaluates an  
>>>> expression
>>>> at 100 points between the start and stop range. The internal  
>>>> parser is a
>>>> bit slow, but it's pure python and works reasonably well.
>>>>
>>>> With a bit of coding we could surely add some functionality to  
>>>> get data
>>>> from Measure in there too.
>>>>
>>>> I am not inclined to add RPN parsing myself, but patches will of  
>>>> course
>>>> be considered.
>>>
>>> Would you look at http://sourceforge.net/projects/calcrpnpy/ and  
>>> tell
>>> me what you need done to it?
>>>
>>>> Regards,
>>>> Reinier
>>>>
>>>> Edward Cherlin wrote:
>>>>>
>>>>> On Wed, Dec 10, 2008 at 11:18 AM, Gary C Martin <gary at garycmartin.com 
>>>>> >
>>>>> wrote:
>>>>>
>>>>>> On 10 Dec 2008, at 18:41, Walter Bender wrote:
>>>>>>
>>>>>>
>>>>>>> I haven't looked at it in a while, but what plotting engine is  
>>>>>>> built
>>>>>>> inside of the Calculator Activity?
>>>>>>>
>>>>>>> -walter
>>>>>>>
>>>>>> I think Reinier wrote his own little svg plot generator class  
>>>>>> called
>>>>>> plotlib.py.
>>>>>>
>>>>>> --Gary
>>>>>>
>>>>>
>>>>> I didn't know about the plotting capability, which will have  
>>>>> endless
>>>>> uses. It is certainly not discoverable.
>>>>>
>>>>> Can we feed a segment of a data stream from Measure to Calculate  
>>>>> as a
>>>>> named function?
>>>>>
>>>>> Why don't we put something like plot(f(x),x=min..max) on the  
>>>>> toolbar?
>>>>> Can we provide hints about the functions and syntax anywhere in  
>>>>> the
>>>>> UI? Is there a way to recall and edit an input line? Are there  
>>>>> other
>>>>> functions not exposed in the UI?
>>>>>
>>>>> I have a fairly old book called Numerical Analysis on the Pocket
>>>>> Calculator, which explains how to do all sorts of things that you
>>>>> might not expect on even the simplest 4- and 5-function devices,  
>>>>> and
>>>>> works on up through the sort of algebraic calculator we have  
>>>>> here to
>>>>> the programmable calculator. Our users will need something like  
>>>>> this,
>>>>> to take maximum advantage of the seemingly limited capabilities  
>>>>> we are
>>>>> offering them.
>>>>>
>>>>> And can we have an RPN mode? I can't tell you how much most real
>>>>> engineers hate parentheses. We are not doing children any favors  
>>>>> by
>>>>> hiding the more advanced tools.
>>>>>
>>>>
>>>> --
>>>> Reinier Heeres
>>>> Waalstraat 17
>>>> 2515 XK Den Haag
>>>> The Netherlands
>>>>
>>>> Tel: +31 6 10852639
>>>>
>>>> _______________________________________________
>>>> IAEP -- It's An Education Project (not a laptop project!)
>>>> IAEP at lists.sugarlabs.org
>>>> http://lists.sugarlabs.org/listinfo/iaep
>>>>
>>>
>>>
>>>
>>> --
>>> Silent Thunder (默雷/ 
>>> धर्ममेघशब्दगर्ज/ 
>>> دھرممیگھشبدگر ج) is my name
>>> And Children are my nation.
>>> The Cosmos is my dwelling place, The Truth my destination.
>>> http://wiki.sugarlabs.org/go/User:Mokurai
>>> _______________________________________________
>>> IAEP -- It's An Education Project (not a laptop project!)
>>> IAEP at lists.sugarlabs.org
>>> http://lists.sugarlabs.org/listinfo/iaep
>>
>>
>
>
>
> -- 
> Silent Thunder (默雷/धर्ममेघशब्दगर्ज/ 
> دھرممیگھشبدگر ج) is my name
> And Children are my nation.
> The Cosmos is my dwelling place, The Truth my destination.
> http://wiki.sugarlabs.org/go/User:Mokurai



More information about the IAEP mailing list