Re: [Sugar-devel] Making OLPC / Sugar Labs more approachable
On 9 August 2010 11:02, Mikus Grinbergs wrote: > > in general I think it's entirely appropriate to expect > > that people asking for help do so via the correct channels > > I believe that "asking for help" should not be the only supported > motivation for contacting developers. > Not at all, but it's a significant one. > In my opinion, developers of a product ought to be interested in > learning about shortcomings perceived in that product by users. > Looking into the original case - we had people on a public forum[1] expressing frustration that yum fails to work among other things. I hope this doesn't come across the wrong way - but are G1G1 laptop owners considered the target market? If a user installs Skype on an XO-1, only to find that it kills the sound, then I think it's okay for OLPC to abstain from taking responsibility. Fora such as olpcnews.com attracts very motivated individuals who experiment. That's great, but once they leave the realm of the product, peer support takes over. In practice, it seems that genuine issues from these comments do find their way to the surface, albeit in roundabout way. OLPC & Sugar Labs are now aware that yum doesn't seem to work. > Are "the correct channels" any different than blinders ? > > mikus > I'm not sure I understand what you mean by blinders. Do you mean blinkers? [edit: Wikipedia says yes] In many ways that's true, but the metaphor doesn't transfer exactly. Each channel (Trac, wiki, mailing list, local user group) deals with a different type of problem. They e simply to block unintended knowledge. However, it's likely that some people will be put off - which means that they become fairly blunt filters. Where the metaphor does fit is using a system to create focus. It's important to recognise that OLPC & Sugar Labs have very constrained development resources. Therefore, systems that reduce load on developers increases time on development. Tim [1] http://www.olpcnews.com/forum/index.php?topic=4867 ___ Devel mailing list de...@lists.laptop.org http://lists.laptop.org/listinfo/devel ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [PATCH] BUG#2544 Adding smiley support to Chat application
Hi Mukesh, Thanks for this. Some questions: - Are you able to provide the license for those .svg files? - The .svg files have many Inkscape-specific elements. Perhaps save them as plain SVG files - it will save some space. Tim @timClicks On 28 December 2010 07:46, Mukesh Gupta mukeshgupta.2...@gmail.com wrote: [big patch] ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Kiwi PyCon 2011 - August 26/27 - OLPC / Sugar Labs content would be great!
Hi all, Wellington, New Zealand has been selected as the venue for Kiwi PyCon 2011. PyCon stands for Python conference, kiwi stands for our national bird (that you probably know as a fruit) I've been given the title Conference Director and would really like to get some OLPC/Sugar Labs content/speakers. So, if anyone has thought about taking a trip to New Zealand - here's a good reason to think about doing so! I'll be posting more details to the community as they emerge but thought I would spark some interest with a quick note. Very best regards Tim McNamara http://www.timmcnamara.co.nz http://twitter.com/timClicks ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] setting svg icon as datastore metadata?
Erik, I don't think it's possible to change an icon for something that is already in the Journal. I can't remember exactly how things work, but I think the following is accurate: Icons are associated with Activities. Mimetypes are associated between a Journal entry and an Activity. The correct icon is inferred by finding a journal entry's mimetype and then looking up which Activity is appropriate. Tim On 4 December 2010 10:51, Erik Blankinship er...@mediamods.com wrote: Can I set my own svg icon as metadata for a datastore entry? How would I do that? ___ 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
[Sugar-devel] Sugar as a Mobylize $100K entry?
I don't know if it's a bit back-to-front, but has anyone considered entering Sugar into Mobylize's $100K developer challenge[1]? I know that Martel is putting money into OLPC, but it may be worthwhile checking the entry criteria. -Tim [1] http://twitter.com/#!/mobylize/status/27066434989 ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] Sugar as a Mobylize $100K entry?
Correction: Marvell, not Martel On 4 November 2010 23:23, Tim McNamara paperl...@timmcnamara.co.nz wrote: I don't know if it's a bit back-to-front, but has anyone considered entering Sugar into Mobylize's $100K developer challenge[1]? I know that Martel is putting money into OLPC, but it may be worthwhile checking the entry criteria. -Tim [1] http://twitter.com/#!/mobylize/status/27066434989 ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [IAEP] stepping down as maintainer
On 24 October 2010 17:42, David Farning dfarn...@ubuntu.com wrote: Sugar Labs lost its lead developer. [...] At the risk of angering pretty much everybody Sugar Labs has three fundamental problems. Sugar Labs is optimistic to the point of untruthfulness. Sugar Labs is lead by veto rather than vision. There is a lack of accountability to stakeholders. David, Thank you for your bravery and frankness with which you have raised these concerns. My main desire from these discussion is that contributors will feel like they are contributing to a project with momentum by the end of them. I would like to address your three points. However, I would also like to add some more context to the discussion as I see it: Sugar faces several up-coming technical challenges that will test the resolve of Sugar Labs. - a move to a touch-based interface - change in hardware infrastructure for the XOs (e.g. ARM processors) - Move to GNOME 3.0 - Move to Python 2.7 eventually to 3.x From the pedagogical side, I'm sure that an increased emphasis on standardised testing (at least in the developed world) means that there will be an increased expectation for standardised teaching tools. *Issue 1*: over-promising This is a tricky problem. Sugar is enticing. I think that we will not be able to contain people's enthusiasm, nor do I think that Sugar Labs should stop aspiring to provide the world's best educational platform. Instead, we should focus on improving the technology. *Issue 2*: veto We have a small cadre of experienced and highly able contributors. *Issue 3*: lack of accountability to stakeholders I don't agree that Sugar Labs is unresponsive. Nor do I agree that a change in the leadership structure will be beneficial. WB has provided excellent service to the team. We have engaged with OLPC, Fedora and provide support several deployments. For a volunteer driven organisation, it's highly responsive. Here are some of my reflections over the last few days: The list of challenges does look overwhelming. There is probably a lack of developer capacity in our community to deal with them. At least, I'm fairly intimidated. Sugar is a very large project, with hundreds of interdependent parts. However, we should remember that each of these challenges is surmountable. They will also present developers with the possibility to innovate and interesting solutions. It would be good to quantify the risks that the project faces. Are the list of challenges I've written up valid things to worry about? I think Sugar Labs could create an informal mentor system to enable more contributions from current 'lurkers'. This proposal is I think the development teams needs to draw on IAEP others for support. I think that once everyone feels like that a degree of momentum has been reached, the community will grow and our educators will be able to go back to just educating. Sugar Labs does lots of its own infrastructure. Is that the best use of contributors' time? (Why don't we use Canonical's Launchpad?) Regards, Tim McNamara @timClicks ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [IAEP] stepping down as maintainer
Please excuse my rash pushing of the 'send' button: On 26 October 2010 23:42, Tim McNamara paperl...@timmcnamara.co.nz wrote: *Issue 2*: veto We have a small cadre of experienced and highly able contributors. This means that an expectation of very high-quality will become established as the norm. This is a hard wall to scale while contributing. However, there have been many emails on the development list surrounding changes to the patch acceptance process. I don't feel that anyone is against change if it will make things more productive. Tim ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] Development Meetings
On 26 October 2010 02:45, Aleksey Lim alsr...@member.fsf.org wrote: On Mon, Oct 25, 2010 at 01:29:07PM +, Walter Bender wrote: On Mon, Oct 25, 2010 at 12:59 PM, Aleksey Lim alsr...@member.fsf.org wrote: On Mon, Oct 25, 2010 at 08:13:24AM -0400, Walter Bender wrote: On Mon, Oct 25, 2010 at 8:09 AM, Aleksey Lim alsr...@member.fsf.org wrote: Hi all, Since we don't have team lead (for a long time) there a bunch of questions that need to be fixed. (imho, we might not even need team lead for Development Team, all questions might be solved in process while, weekly/daily on-purpose meetings. Lead is required eg for community relationships or an architect) For me, default time is ok Wednesday 2010-10-27, 14:00 UTC irc://irc.freenode.net#sugar-meeting 14:00 UTC is 2am for me.. If I have anything to contribute on the agenda items, should I send an email to sugar-devel or the meeting chair? Tim ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] wordgroupz ( A vocabulary building app) ported to sugar
On 20 October 2010 22:04, Ratnadeep Debnath rtn...@gmail.com wrote: On Tue, Oct 19, 2010 at 10:38 PM, Gary Martin garycmar...@googlemail.com wrote: So, 100% behind the wordgroupz activity name? Just wanted to double check before re-doing the icon again. Since the original name of the application is wordgroupz, I think that the icon should reflect that. More importantly, wordgroupz is an application for collecting words and studying them. So I am thinking of some activity names like : * collect words * build your vocabulary Which one sounds good? I think Collect would be an excellent name for an Activity. It's a verb with a single word. I don't think you should worry about being too accurate with the name, because 1) it inhibits growing the application later, 2) we want to encourage discovery - telling too much doesn't allow learners to explore, 3) it enables other locations to translate the Activity into their own language and 4) consistency with other Activities makes the whole of Sugar's brand stronger. Many Sugar Activities are derivatives of other applications, but they have all changed their name for Sugar. As one example, Sugar uses Write, which is a version of AbiWord. Will it be better to have the name wordgroupz in the icon or the activity name in the icon? If you can, remove all words from the icon. Translating strings within SVG files seems like an unnecessary hassle. Regards, Tim. ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Mailman's admin and archive interfaces are horrible - suggest GroupServer.org
I'm assuming the infrastructure team are part of this list. I would like to recommend that Sugar Labs considers migrating from mailman to GroupServer as its mailing list system[1]. I've been using GroupServer as a participant for over a year for lots of open government New Zealand activities [1]. I find the system is far superior to mailman and Google Groups lists. The archives are easily searchable, attached files are converted to links to the server so that people's inboxes are not flooded. The middleware seems to deal well with filtering out replied content. The best feature for me is that threaded conversations are together in a single page[3]. I welcome any feedback. I think that a migration like this will make the mailing lists far more accessible as a knowledge archive. I've been assured that there is a migration path from mailman[4]. From what I know of Dan, its lead developer, it should be fairly easy reliable. Tim [1] http://groupserver.org/groupserver/features/ [2] http://groups.open.org.nz/groups/ninja-talk/messages/topics.html [3] http://groups.open.org.nz/groups/ninja-talk/messages/topic/7ppGhESvF5ow9VeMlK1eZy [4] http://twitter.com/danrandow/status/27676366090 ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] SL Bug #2063
On 14 October 2010 08:50, Mukul Gupta mu...@seeta.in wrote: Team, Wish to have your feedback on the design aspect of the ticket 2063 (Sugar should bring up an alert when an unhandled Python exception occurs) - please find the git diff attached below. This is an attempt to display an alert when an unhandled Python exception occurs in the journal. Unfortunately, when the exception takes place in journalactivity.py , I am neither unable to notice the Journal Icon (it disappears), diff --git a/journalactivity.py b/journalactivity.py index 44cc018..36a2e2e 100644 --- a/journalactivity.py +++ b/journalactivity.py @@ -358,8 +358,20 @@ class JournalActivity(Window): self.show_main_view() self.search_grab_focus() +def uncaught_exception_alert(self): +alert = ErrorAlert(title=Operation could not be performed, msg=Please check the logviewer activity for details ) We can improve the helpfulness of this message. For example, we can tell people which file to open in the log. I would like to give some recommended steps to help get problems fixed, but I haven't included it here. Also, if they don't have the log viewer activity, then they may feel helpless: def uncaught_exception_alert(self): from glob import glob from os import system logger = ... # should be easy to find recentlog = glob({0}*.format(logger.filename))[-1] last_log_line = system(tail -n 1 {0}.format(recentlog)) alert = ErrorAlert(title=_(Sorry, something went wrong), msg = _(Please check the file {0} for details.\nThe last line of that file is:\n{1}).format( recentlog, last_log_line)) ... I also don't like the function name uncaught_exception_alert. Functions should generally begin with verbs. Perhaps handle_uncaught_exception? _journal = None +def _alert_excepthook(exc_type, exc_value, traceback): +logging.exception('Unhandled Python exception: %s', repr((exc_type, exc_value, traceback))) +_journal.uncaught_exception_alert() + +sys.excepthook = _alert_excepthook + def get_journal(): global _journal if _journal is None: -- 1.7.0.4 I wish to request you to please review the code and suggest desired changes, if any. Moreover, I have two important questions regarding the bug. 1. To catch all unhandled python exceptions in sugar, where exactly should we be looking forward to be the venue for adding the functionality? Adding it in journalactivity.py doesn't seem to serve all purposes. It has to be added somewhere which is being used all the time. 2. Wish if you could recommend on the GUI feature that could be used for displaying the alert message to the user. Looking forward to for your valuable suggestions, ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] Backup and Restore activity icons
On 2 October 2010 04:46, Gary C Martin garycmar...@googlemail.com wrote: Any catch your eye? I think series 1 will work best in small screens, but I think that series 4 is more complete.. ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [IAEP] Ask! Please! (Re: how to ask a question)
On 9 October 2010 11:33, fors...@ozonline.com.au wrote: Quoting Edward Cherlin echer...@gmail.com: I have a partial draft of a textbook on the subject at http://www.booki.cc/discovering-discovery/ It encourages XO owners to explore on their own and find out what questions they have before we give them answers. I like the idea. It encourages users to jump in and take risks, experiment, not worry if they have incomplete understanding. Me too, and have added some feedback to NZ educators on why open source can aid education in ways that closed source can't[1]. From [1]: Here is one way that I can think that that open source benefits learners, based only on my own experience however. What I've witnessed from many computer uses is a sense of frustration and helplessness when something doesn't work as they think it should. People who buy software are trained to wait for automatic updates, or worse they are forced onto purchasing the next version. Processes inside organisations say, If you're having problems, call the helpdesk.* The feedback loop might be an automated report that is generated and sent to an anonymous server. I would like to think that open source software would enable a sense of critical analysis, exploration and problem solving. For me, when I have a problem with a piece of software that I use, I tend to go through a process of reflection: Is this issue something other people might be having? Can I reproduce the problem? Why is the system built like this, there must be a reason? It must be useful for something. Is the hassle of the computer problem larger than the hassle of my time to send feedback? How can I word a report to developers that explains what's going wrong? In short, I have the impression that users of paid software feel like they don't have the skills to contribute. They don't see themselves as a participant in a computer system. By computer system, I mean a system that includes software, hardware and the user to generate some useful output. Open source software has helped me by creating a sense of empowerment and discovery. I use the software that I want to run. When there's a problem, my involvement forms part of the solution. [1] http://groups.google.com/group/mle-reference-group/browse_thread/thread/3caf7421439020d6 (scroll to bottom) ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Fwd: Testing Summary - Wellington, 9 Oct 2010
Forwarding to Sugar-devel.. -- Forwarded message -- From: Tim McNamara mcnamara@gmail.com Date: Sat, Oct 9, 2010 at 4:43 PM Subject: Testing Summary - Wellington, 9 Oct 2010 To: OLPC NZ olpc...@lists.laptop.org Really nice day today! Attendees: - Tim, Alastair, Kristina, Grant Non-testing activities: - Introduced OLPC/Sugar to a teacher and a few kids - Introduced Wtgn folk to the test request page, seemed to be support for it - Discussion on using luggage tags so that we can identify which computer belongs to who from the outside - Bare beginnings of testing manual (at bottom of message) ## spirolaterals-2 Tim = - perhaps rename activity to spin, in keeping with Sugar HIG (Activities as verbs) - the background of icon while loading seems to pulse while loading - immediate thought: seems like a matching game, how do I make my turtle move? - had to click around on a few things before anything responded Here is a recording of things that I discovered.. - cyan gives me a new puzzle - hints can appear = thought: oh, the *are* significant - green means go - black means refresh (?) - ah! the turtle does its own looping! (orignally thought I needed to tell the turtle some how to loop a few times - the turtle only turns right? Alastair = - confused at first about the purpose of each of the buttons - clicking on the wizard brings up hints ## filemix-2 Tim = - perhaps rename activity to mix, in keeping with Sugar HIG (Activities as verbs) - neat icon - no pulsing icon on load :( - immediate thoughts: super cool concept - perhaps use the user's colours, rather than olive green for the buttons? - had no files to test with - *lots* of text - I would like to tuck lots of this away in future versions - You are urged to make your own - perhaps reference a sound recording activity? - midi device required - how do I know if I have one? - shouldn't the activity be able to let me know? - suggestions for future versions: - make files selectable, renaming to soundin.1, ... ,soundin.4 is a lot of work - run through a diagnostics dialogue with sample files: - can you hear this? MIDI, MP3, OGG, WAV, ... Alastair = - no audio to test with ## juegos_flash-2 - coloured icon - flash would wouldn't render the chess board at the start - seems to be a compilation of non-free flash games from various sites - gnash gave me English menus, everything else in Spanish - Penales - All rights reserved Flashfooty.com FTW - games failed to load after 20 secs - Penales2 - Games1.com Ad ?? - in English - selecting a team didn't seem to do anything - EncontrarObjectos - failed to load in 20 secs on XO-1.5 - Bar - Welcome to our pre-party cocktail mixing game for cocktail connoisseurs... or not as the case may be! - omg, it's actually a game about alcohol consumption - kinda cute, in it's own way. Provides instructions along the way, which is what I had expected from spirolaterals - Cocinarpizza - seemed unresponsive to the XO's mousepad - Ajedrez - argh, flashing chess game again - Futbal - ran very slowly - when missing a goal, the text is undefined - Tesoro - loaded well, a little slow on XO-1.5 - teacher seemed to be silent - Pes2002 - heavily screen flickering (gave up after 20sec) - Bolos - failed to load once Play was clicked - QueHariasConTuEx - from whackyourex.com - game does what it says ## F14/SoaS 4 Tim = - x86_84 failed to loaded - i386 takes a *long* time to load from the .iso - icon is the native Fedora icon until the Home view loads - have been asked to enter a new keyring password (obsessively # Frame - selecting 'My Settings' from frame resulted in the computer crashing # My settings - horizontal scrolling is annoying Language - languages are in English - took a while to load - restart dialogue: does it need to say Warning? Software update - appears to check things properly, but doesn't allow me to actually conduct an upgrade. The screen just goes blank. # changed to german - long time to load, screen went blank for about 20s a few times and flicked between a thinking icon, boot-up text, keyring password dialogue with assorted random character goodness - possibly disable the language option on the SoaS iso - restarted the VM, things worked find Kristina = - hard to get .iso file playing nicely on the Macbook. ## visualmatch-36 Alastair = - needs a bigger indicator that the game is finished Kristina = - seems to work really well Grant = - couldn't find any bugs - it's hard on hard! ## sliderule-21 Kristina = - failed to load: log exerpt :- /usr/lib/python2.6/site-packages/sugar/util.py:25: DeprecationWarning: the sha module is deprecated; use the hashlib module instead import sha 1286581194.867893 WARNING root
[Sugar-devel] Call for test requests
Does anyone have anything specific that they would like looked over this weekend? If so, please add it to NZ's test request page [1]. Ta, Tim. [1] http://wiki.laptop.org/go/OLPC_New_Zealand/Test_Requests ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Possible copyright infringement in activities.sl.o
Hi all, This morning, I tested juegos_flash-2. It's just a sample of free (no cost) flash games from the Internet. I don't think Sugar Labs is be allowed to distribute them. Apart from these legal concerns, I also have some ethical ones. The package includes a game that teaches users how to mix cocktails. Another one of the activities is called Smack your ex. Here are my raw notes from the session: ## juegos_flash-2 - coloured icon - flash would wouldn't render the chess board at the start - seems to be a compilation of non-free flash games from various sites - gnash gave me English menus, everything else in Spanish - Penales - All rights reserved Flashfooty.com FTW - games failed to load after 20 secs - Penales2 - Games1.com Ad ?? - in English - selecting a team didn't seem to do anything - EncontrarObjectos - failed to load in 20 secs on XO-1.5 - Bar - Welcome to our pre-party cocktail mixing game for cocktail connoisseurs... or not as the case may be! - omg, it's actually a game about alcohol consumption - kinda cute, in it's own way. Provides instructions along the way, which is what I had expected from spirolaterals - Cocinarpizza - seemed unresponsive to the XO's mousepad - Ajedrez - argh, flashing chess game again - Futbal - ran very slowly - when missing a goal, the text is undefined - Tesoro - loaded well, a little slow on XO-1.5 - teacher seemed to be silent - Pes2002 - heavily screen flickering (gave up after 20sec) - Bolos - failed to load once Play was clicked - QueHariasConTuEx - from whackyourex.com - game does what it says Regards, Tim ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] Memory leak in Sugar -- how to dump Py data structures?
On 8 October 2010 03:34, Martin Langhoff martin.langh...@gmail.com wrote: See http://dev.laptop.org/ticket/10386 for details. The sugar-session process in 10.1.2 grows slowly... There's some form of leak somewhere. Maybe we are triggerin a real python leak, maybe we have reference loops. How do we trace this? This post seems pretty good [1]. It cites a tool that creates an object graph that visually represents what is happening in memory.[2] [1] http://www.lshift.net/blog/2008/11/14/tracing-python-memory-leaks [2] http://mg.pov.lt/blog/python-object-graphs.html ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] Proposal of dotted activity version number
On 5 October 2010 10:25, James Cameron qu...@laptop.org wrote: I agree with the proposal. -- James Cameron System Test Coordinator One Laptop per Child I tentatively agree. My strong preference is for Activities to rapidly increase their integer numbers, rather than creating a complex tree of point releases. My feeling is that a tree of three or more levels deep adds complexity to new Learners. It goes against the 'low floor, no ceiling' philosophy by requiring that Learners learn a new counting system, on top of integer increments. It also adds to the pressure to maintain several versions of the software concurrently. While I agree that maintainence releases are important, I would prefer that community etiquette is developed that discourages version numbers that look like 2.4.12. Developers should be strongly encouraged to migrate to a new integer release when practical. Most activities are quite discrete. They tend not to add many features once they have reached a desired level of maturity. Tim. ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] Weekly test request reminders? (was Re: Priorities for testing)
On 30 September 2010 07:56, Tabitha Roder tabi...@tabitha.net.nz wrote: That would be nice. If you add a [Testing] tag to those mails we could set up a mailing list topic to allow people to opt-out (see the subscription options [1]). If mailman supports sorting a message into multiple topics, a [Reminder] topic might be useful as well. Sascha [1] http://lists.sugarlabs.org/options/sugar-devel We currently use the mailing list test...@lists.laptop.org Considering the huge number of lists that many of us follow I would like us to consider whether we need to use another list. There are 16 lists on lists.sugarlabs.org and over 100 lists on lists.laptop.org and many of us follow quite a few and the lines between olpc and Sugar are blurred because if you support one you are often found supporting the other. Could we use test...@lists.laptop.org or do we need to separate out Sugar testing for non XO hardware? Whatever is decided I will follow, just making sure we think it through. Thanks Tabitha Hi Tabitha, I think Sascha was just asking that we add [Testing] to messages to sugar-devel. This means that people can opt-out of those messages in the list's administration setting. Coordinating tests between OLPC Sugar Labs is an interesting one. It's something I've been working on for several months [1]. Perhaps there could be a BOF session with a few people in San Fran to work out the simplest way forward? Tim [1] http://people.sugarlabs.org/~tim/testing ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] wordgroupz ( A vocabulary building app) ported to sugar
On 30 September 2010 03:45, Gary Martin garycmar...@googlemail.com wrote: However to be honest, I think the extra dependancies are the real issue just at the moment (I haven't seen it working yet). I guess specific distros could each individually package up and install the needed dependancies (though that is not very child friendly, at least a deployment could choose to include it). Unfortunately as it is, almost none of the existing Sugar users will be able to use this activity. I try to keep a fairly clean Sugar environment here for testing, and it fails right away with ImportError: No module named nltk.corpus I made it as far as yum installing 15Mb for python-nltk (which pulled in about 11 external dependancies), at which point the activity would run and show its UI, but was still non-functional. I looked through the error logs (attached below if you are curious) but didn't have time to try and go through the dependencies trying to find what was still missing. NLTK depends on much more than the software. It also needs the corpus data to run effectively[1][,2]. From memory, that's generally several hundred megs. However wordGroupz may not require the whole stack. NLTK is a highly modular application/framework and could be spliced and packaged by the wordGroupz maintainers. I've done a fair bit of work with NLTK this year and am fairly active in that community, however I don't have time to look into the complexities of this right now. Tim [1] http://www.nltk.org/data [2] http://nltk.googlecode.com/svn/trunk/nltk_data/index.xml ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] Replacing Illegal character ':' in username (SL #2152)
On 30 September 2010 06:32, Dipankar Patro dipan...@seeta.in wrote: Hi, With reference to bug : http://bugs.sugarlabs.org/ticket/2152 I am trying to replace the ':' character in the username with '_', while the user is entering the Username in About Me. The following has been done by me so far: - diff --git a/extensions/cpsection/aboutme/model.py b/extensions/cpsection/aboutme/model.py index 8500799..47e7158 100644 --- a/extensions/cpsection/aboutme/model.py +++ b/extensions/cpsection/aboutme/model.py @@ -17,6 +17,7 @@ from gettext import gettext as _ import gconf +import re _COLORS = {'red': {'dark':'#b20008', 'medium':'#e6000a', 'light':'#ffadce'}, 'orange': {'dark':'#9a5200', 'medium':'#c97e00', 'light':'#ffc169'}, @@ -42,6 +43,7 @@ def set_nick(nick): if not nick: raise ValueError(_(You must enter a name.)) if not isinstance(nick, unicode): +nick = re.sub(r':', '_', nick) nick = unicode(nick, 'utf-8') client = gconf.client_get_default() client.set_string(/desktop/sugar/user/nick, nick) I would use simple string operations rather than regular expressions. Also, take it out of the type checking block. Unicode expressions may still contain :. Looking at this, I would also change the first conditional to something that emulates a try/except block. if nick: nick = unicode(nick.replace(':', '_'), encoding='utf-8') client = gconf.client_get_default() client.set_string(/desktop/sugar/user/nick, nick) else: raise ValueError(_(You must enter a name.)) I see no added advantage in type testing for unicode. Unicode instances will incur no further penalty than what would have occurred anyway with type testing. Like Sascha, I don't know where to implement the name change. Tim ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] [Testing] Submitting test requests - some provisional instructions
I have created a page in the OLPC wiki for submitting test requests[1]. The reason I used wiki.laptop.org rather than wiki.sl.o was because that's where the NZ teams' presences are currently. A wiki page serves as a good place so that people don't need to sign into several services, etc. This process is subject to something else being adopted that works better for everyone. Please provide feedback on other suggestions.* If you would like something tested and reported on, please submit it to [1]. If you're short of time or whatever, feel free to send it to sugar-devel and I'll port the request over. I've created a small format for receiving test requests. Please include the following information: * Test description Either provide a test case and expected behaviour, a ticket (that includes replication instructions) that you think you've fixed, or just say [General]. * Required equipment Indicate whether Internet connectivity is required, SoaS, XO-1, XO-1.5, virtual machine image, etc. * Download location Where we get the file to test. Direct links are best. Tim * I have discounted a few others, such a Google Forms. I would like to stick to free software. [1] http://wiki.laptop.org/go/OLPC_New_Zealand/Test_Requests ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Weekly test request reminders? (was Re: Priorities for testing)
On 25 September 2010 21:07, Sascha Silbe sascha-ml-reply-to-201...@silbe.org wrote: Excerpts from Tim McNamara's message of Fri Sep 24 22:37:18 +0200 2010: The New Zealand testing groups will be operating in a few hours. If you have any requests for things to be explored, please respond within 5 hours. That was a bit short notice. Sorry about that Sascha. We meet every weekend (Friday evening in Europe, Friday afternoon USA) , but haven't received many direct requests in a while. If it would be worthwhile, I can send out reminders in the middle of the week asking for things that are worthwhile to be manually tested. Do people think that would be excessive? Tim ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Accessing hidden SSIDs
Is it possible to access hidden SSIDs via the Neighbourhood View? Tim ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Priorities for testing
The New Zealand testing groups will be operating in a few hours. If you have any requests for things to be explored, please respond within 5 hours. Thank you Tim ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] wordgroupz ( A vocabulary building app) ported to sugar
On 22 September 2010 16:50, Ratnadeep Debnath rtn...@gmail.com wrote: snip / Sugar bundle for wordgroupz available at http://rtnpro.fedorapeople.org/wordgroupz/Wordgroupz-1.xo Please check if this is satisfactory and feel free to suggest any improvements. I also need an icon for wordgroupz for sugar. Any help will be highly appreciable. Well done on your release! My *personal* feeling is that you should change the name of the Activity. Ideally, all Sugar Activities should be verbs.[1] I know that many Activities haven't followed the HIG guidelines, but following them demonstrates a level of care. At the very least, I'm not happy with the trailing Z. I don't think encouraging misspelling is entirely suitable for an educational environment. Well done on the software, it looks very promising. Tim [1] http://wiki.sugarlabs.org/go/Human_Interface_Guidelines/Activities/Activity_Bundles#Activities_as_Verbs ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [IAEP] Text to Speech in other Activities (was Re: FW: [Olpc-uruguay] MiguelEstudia (Version 1))
On 17 September 2010 02:19, James Simmons nices...@gmail.com wrote: Tim, Do I have documentation? Surely your jest! http://en.flossmanuals.net/ActivitiesGuideSugar/TextToSpeech This is a chapter of Make Your Own Sugar Activities!, a FLOSS Manual I wrote (with much help from the folks on the Sugar-Devel mailing list). There's a Spanish version in progress, and we hope to have printed versions available from Lulu in time for Christmas. James, Thanks for this! I was sure that I had read through the guide all the way through. This book is an amazing resource. Thank you. Tim ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [IAEP] Child in charge of FOSS or Sugar
Søren, You raise some concerns that I have had. Over of time, I have come to slightly different conclusions. On 18 September 2010 01:27, Søren Hougesen soren.houge...@gmail.com wrote: For about a month ago, I asked as a curious outsider, if kids were actually hacking sugar. It is almost certainly the case that learners are hacking while using Sugar. I see less evidence that learners are hacking Sugar itself, but there is a lot of it: We often receive feedback through teachers. From my experience, Activity developers are more than willing to incorporate feedback from learners. My personal feeling is that Sugar Labs needs to have systems that are clear and consistent.. But responsibility for teaching those systems to learners should be pushed onto teachers. In my search for bugging/debugging in Sugar I found the ‘BugSquard/Bugreport’ on wiki.sugarlabs and it says: “If you're using Sugar on a Stickhttp://wiki.sugarlabs.org/go/Sugar_on_a_Stickor another distribution of Sugar http://wiki.sugarlabs.org/go/Supported_systems and find something specific you think could be improved—maybe something isn't working the way you think it should work, or you have an idea for how something could be better—you can file a *ticket. * A ticket is a way for anyone to suggest to the software or project developers that *they should work* on something […]. “[The tickets]” is the *most* important part—because reading the title of a ticket *is how a developer decides* if he or she is going to work on it”. I thought it was the child/sugar-user that should *decide on working on bugs/improvements*. I agree with the force of your argument. Interesting, I think that this process facilitates lots of involvement. I feel that our approach is reasonable, because it balances several forces. For example, some learners do not want to develop software. Making it easy to receive feedback is important. This explains the emphasis on tickets. Tickets also centralise the feedback, which helps to avoid duplication. Also, this quote does not imply that learners are not entitled to become developers, just that developers do development. Lastly, we operate under a volunteer model. This means that it's important to recognise that developers do decide which tickets to fix. There are other forces at play. I recall one thread on the development list that said there should not be in-code documentation in order to maintain the quality of the contributions of prospective developers. The reasoning was that if individuals are not able to understand the code by reading the source, then they are not qualified to contribute to Sugar's core. As Papert says on debugging: “Errors benefit us because they lead us to study what happen, to understand what went wrong, and, through understanding, to fix it” (Mindstorms - 1980 (1993): 114), which is essential for learning learning. I have trouble seeing the correspondence between the child/sugar-user taking charge, debugging in Sugar-FOSS as a computational environment and a distant Sugar-developer deciding on debugging or making improvements. To me the ticket doesn’t look like the child is taking charge. taking charge is part of the story. Tickets do allow people to participate at the level that they wish to. If learners would like to learn how to fix the problems that, I think their teachers should guide them. I'm not convinced that Sugar Labs should be in charge of educating learners. I think we need clear, consistent instructions that can be taught to learners who wish to contribute. I have 4 assumptions about this: 1. The BugSquard doesn’t mean that the sugar-user/child can’t be in charge and taking control and doing own improvements and bug-fixing in Sugar-FOSS- environment. If a child wants to release Sugar 6.1 then by all means. The BugSquard is just there to help and assist the child/sugar-user who doesn’t have the technical know-how to do improvements. 2. Not everyone can release Sugar 6.1, 6.2 etc. That’s the mission of the Development Team. They… “build and maintain the core Sugar environment. This includes specifying and implementing new features in conjunction with the Design Teamhttp://wiki.sugarlabs.org/go/Design_Team, fixing bugs as they are found by the Testing team and the Sugar community […]” (wiki.sugarlabs.org.). 3. Debugging and improving Sugar-OS is different from debugging and programming as a learning-process *in* a Sugar-activity like “Turtle Blocks”, which is the reason why.. 4. …it is possible to run Sugar-activities on Windows. It’s not possible to debug, improve, program and hack Windows (not legally anyway). But you can still debug and program Turtle as a Sugar-activity that runs on Windows. If I’m right about assumption 2,3,4 then children doesn’t benefit from Sugar as a FOSS. That’s mainly for Sugar-developers and the benefit of changing and reshaping Sugar for specific cultural needs
Re: [Sugar-devel] #2141 UNSP: Memory and CPU status indicator for the frame.
On 16 September 2010 09:24, Tabitha Roder tabi...@tabitha.net.nz wrote: When I was in Samoa at their olpc deployment, I found the kids started lots of activities but no one had told them how to stop an activity. I tried to explain why the XOs were not responsive by saying that the computer was like a cup and each activity added water to the cup, and after 2 or 3 activities were running the cup was full so they had to stop activities before the cup was full and that would make room for new activities to start. Now I don't know if that was the best way of explaining it, as a cup doesn't really explain clearly the removal of load. Can we come up with a good load analogy? School bag? That way it's easy to think about adding and removing things. Or, maybe something like eating. It's hard to eat something new when you're mouth is already full. Tim ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Python multi-touch lib reaches 0.5
PyMT has native support for multitouch devices on Linux that are supported by the kernel, all Windows 7 multitouch devices, all of Apple’s multitouch accessories and much more. If you know basic python, PyMT is the easiest way to create multitouch applications or to just test your hardware. [1] [1] http://the-space-station.com/2010/8/16/python-multitouch:-pymt-0-5-released ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] List of widgets used in Sugar?
Is there a list of current widgets that are used in Sugar activities? The Activity Team's wiki[1] now links to a page that is labelled as obsolete. *Status* My focus is currently on the widget identification system for Experior [2] (nee Sugarbot). The system enables scripting to take place. The system needs to support Sugar 0.84 widgets (icons, rather than text). As every type of gtk.Widget has its own quirks, I would like to prioritise them. More generally, Experior is coming along relatively nicely. I am progressively rewriting quite a lot of unpythonic code. This should result speedups readability improvements. I still expect the code to be replaced with Dogtail, but I'm not sure how difficult that will be. The canonical branch is being hosted on GitHub [3]. Partially because I wanted to see what all the fuss was about. Mainly because of its lightweight issue tracker. Once I feel that the code is at a fairly stable state, I'll move the tracker to bugs.sugarlabs.org. *Emerging Issues:* - Experior is designed to test actvities, I can't seem to test sugar-core UI feature atm [1] http://wiki.sugarlabs.org/go/Activity_Team#sugar-widgets_library [2] http://git.sugarlabs.org/projects/experior [3] http://github.com/timClicks/experior ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Upgrade gitorious?
Possibly another task to add to the stack... git.sl.o doens't have a very friendly landing for new contributors page. Directions to core gitorious projects, such as sugar jarabe category:glucose would be good. Further, http://www.gitorious.org seems to be a little prettier than our instance. Are we a few versions behind? Tim ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Unit integration testing - tools discussion
I would like to start a thread on unit integration testing. I have two main questions: 1) Where should tests be located 2) Which testing framework to use Some options for 1: - every Sugar project decides for itself - root/tests in each project - a meta project that houses tests for several/all Sugar projects Some options for 2: - unittest - nose - py.test My preferences: 1: root/tests for each project 2: py.test - primarily because it supports distributed testing, that will make support for alternate Python versions much easier (if we have test sufficient coverage) Regards, Tim. ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] Sugarbot working on latest Sugar
On 12 August 2010 03:17, Sascha Silbe sascha-ml-ui-sugar-de...@silbe.orgwrote: Excerpts from Tim McNamara's message of Sun Aug 08 02:06:21 +0200 2010: Is there interest in pushing an updated sugarbot to git.sl.o? Sure, go ahead! If you need commit rights, please write to systems@ and I'll transfer the project to you. The original author, a GSoC student, has already stated having no interest to work on it any further. Sugarbot repo is currently reserved for the IRC bot. I'll think of a new name for the Sugarbot testing project start a new project from the GSoC SVN. Affination is one of the processes in raw sugar processing. What about that? I have spent some time over the last three days getting Sugarbot to run in sugar-jhbuild. After a few code changes, and lots of reading, I have been successful. Great! And thanks for working on this. Automated UI testing is our most pressing need right now (IMO at least). It enables faster, easier and better testing of code changes (including upstream changes). [snip] I don't have time to answer more in-depth, but one thing I'd like to point out is that Gnome is using dogtail for UI testing which seems to be rather similar to SugarBot so we might want to use that instead. I would like to use Sugarbot during a transition phase. Two reasons: 1) Things should work with it now. To support Dogtail (or LDTP), Sugar's components will need to support AT-STI. I don't know how hard that will be. 2) Test scripts written for Sugarbot are be almost identical to scripts written for Dogtail. Therefore, testers' time taken to build scripts for Sugarbot will not be wasted. I'm not sure how Dogtail works under the hood. The project was initially dismissed by the Sugarbot author as being too hard to look into during GSoC.[1] [1] http://gsoc-sugarbot.blogspot.com/2008/05/dissecting-guitest.html ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] Unit integration testing - tools discussion
On 12 August 2010 13:30, James Cameron qu...@laptop.org wrote: 2) Which testing framework to use Whatever the test developer and activity developer can agree on. I don't know enough about the options to choose. (p.s. I'm aware of your work on Sugarbot. While this is fantastic, I'm worried that a test that depends on Sugarbot might end up not being used because Sugarbot is unavailable on the platform, or a later version is needed.) Oh, I was mainly talking about unit testing. Something like Sugarbot / dogtail is more suited to larger-scale testing. I see the choice here between derivatives of Kent Beck's SUnit and some of the newer testing frameworks. In Python, this would be the unittest* module. The other two options I listed were nose [1] py.test[2] tests. There are other possibilities, such as zope.testing. In my opinion, nose py.test make writing tests much simpler. I personally prefer py.test because of some of its additional capabilities, such as being able to send tests to other cores/machines via ssh with a command line switch. I think nose has a greater popularity primarily because it has a better website with friendlier documentation. Tim * From Py 2.7, that is depreciated in favour of unittest2. [1] http://somethingaboutorange.com/mrl/projects/nose/0.11.2/ [2] http://codespeak.net/py/dist/test/ ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] Making OLPC / Sugar Labs more approachable (was: Re: OLPC 10.1.2 Release Candidate 1)
On 9 August 2010 09:09, Christoph Derndorfer christoph.derndor...@gmail.com wrote: On Sun, Aug 8, 2010 at 3:56 PM, Ed McNierney e...@laptop.org wrote: Instructions: 1. Report bugs at http://dev.laptop.org/newticket - if necessary, register first at http://dev.laptop.org/register (as mavrothal kindly points out) 2. If you have interesting experiences or user information to contribute, please do so at http://wiki.laptop.org 3. If you're unwilling to perform steps 1 and/or 2 as appropriate, please don't expect the bug to be fixed, or for anyone else to even know about it. I know I'm repeating myself here but I find the attitude expressed in these instructions and particularly point 3 troublesome and a continued source of frustration for me as well as other people I've talked to. Even more so I think it's a very clear symptom of the much-discussed disconnect between developers and end-users in the OLPC and Sugar Labs context. The core here is that software developers seem very reluctant to step out of their own comfort zone when it comes to processes and tools (a.k.a. point 3 a.k.a. my way or the highway) yet consistently expect teachers and other XO and Sugar users to do exactly that. I'm not sure of the wider context here, but in general I think it's entirely appropriate to expect that people asking for help do so via the correct channels. It's also appropriate for OLPC Sugar to set realistic expectations. Placing the burden on the user may be the only way to understand what's going wrong with the software. That said, the OLPC/Sugar communities should be very good at guiding new contributors to those channels. Perhaps OLPC/Sugar could create a super simple web form for problem submissions. They would then be triaged (by support gang?) and sent to the correct ticker. That way, new contributions only have a single channel for everything. This leads to the current situation in which crucial information and feedback from these users does not make it back to developers and the broader community. Therefore rather than working on things that users need or need to work reliably (e.g. the Journal) resources are spent elsewhere. This is not the only reasons why the development of pieces of Sugar moves very slowly. The datastore is a complex piece of software engineering. I have no idea how it works and don't think I'll ever able to understand it without someone next to me explaining its operation. The real problem for me, even if I wanted to help with the Journal, is that there is nearly no code documentation through Sugar's core. I find it very difficult to justify spending a few hours learning how a module operates when I want to fix a bug. Yet, this is the situation I face every time. An associated problem for me is that I don't know if my code will break things. AFAIK , there are no unit tests in Sugar's code base. Sugar is actually quite hard to test. Secondly, many of the functions methods are not designed with (unit) testing in mind, meaning it's hard to retrospectively create tests for methods. Testing side effects is annoying. Even if unit testing was integrated into Sugar's development, it's really tough to set up development test environments. sugar-jhbuild has never built correctly for me. Looking through compiler errors trying to identify what's wrong makes me feel like an idiot. The reason I don't look into the hard problems is not that I don't know they exist. It's that they're hard to even start looking into. Tim ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] Making OLPC / Sugar Labs more approachable
On 9 August 2010 11:02, Mikus Grinbergs mi...@bga.com wrote: in general I think it's entirely appropriate to expect that people asking for help do so via the correct channels I believe that asking for help should not be the only supported motivation for contacting developers. Not at all, but it's a significant one. In my opinion, developers of a product ought to be interested in learning about shortcomings perceived in that product by users. Looking into the original case - we had people on a public forum[1] expressing frustration that yum fails to work among other things. I hope this doesn't come across the wrong way - but are G1G1 laptop owners considered the target market? If a user installs Skype on an XO-1, only to find that it kills the sound, then I think it's okay for OLPC to abstain from taking responsibility. Fora such as olpcnews.com attracts very motivated individuals who experiment. That's great, but once they leave the realm of the product, peer support takes over. In practice, it seems that genuine issues from these comments do find their way to the surface, albeit in roundabout way. OLPC Sugar Labs are now aware that yum doesn't seem to work. Are the correct channels any different than blinders ? mikus I'm not sure I understand what you mean by blinders. Do you mean blinkers? [edit: Wikipedia says yes] In many ways that's true, but the metaphor doesn't transfer exactly. Each channel (Trac, wiki, mailing list, local user group) deals with a different type of problem. They e simply to block unintended knowledge. However, it's likely that some people will be put off - which means that they become fairly blunt filters. Where the metaphor does fit is using a system to create focus. It's important to recognise that OLPC Sugar Labs have very constrained development resources. Therefore, systems that reduce load on developers increases time on development. Tim [1] http://www.olpcnews.com/forum/index.php?topic=4867 ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Sugarbot working on latest Sugar
Is there interest in pushing an updated sugarbot to git.sl.o? I have spent some time over the last three days getting Sugarbot to run in sugar-jhbuild. After a few code changes, and lots of reading, I have been successful. Some changes that needed to be made from the 0.1 release: - a few syntax errors - update sugarbot.py to access jarabe.model.bundleregistry.get_registry, rather than sugar.shell.registry and update associated methods Left to do: Think... Sugarbot's widget identification system worked well when text-based labels were common place. Recent Sugar versions have moved to a highly icon-based naming system. Developers will either need to make use of gtk.Widget.set_name() or another widget identification algorithm will need to be established. There are several things under the hood that I think would be useful. I think some of what I would like to do would be classed as code style changes, rather than substantive though. Thoughts questions welcome. Tim ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] Adding committers on gitorious (was: Re: [PATCH] Remove nbsp chars from the html string before parsing)
On 6 August 2010 11:20, James Cameron qu...@laptop.org wrote: On Thu, Aug 05, 2010 at 09:06:03AM +0200, Tomeu Vizoso wrote: Another option is having some script that adds committers to all sugar core modules in one go, that would be similar to what GNOME does. There are too many core modules, in my opinion (and Michael Stone's). I see no good reason why there isn't just one git repository for the whole of Sugar. +1 ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] Name for Sugar Packages
On 1 August 2010 12:11, Aleksey Lim alsr...@member.fsf.org wrote: so, 3:0 for cubes.. I guess the place where these cubes are produced could be named refinery.sugarlabs.org +1 ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] behaviour of F-keys on XO HS
On 16 July 2010 10:50, Daniel Drake d...@laptop.org wrote: Under non-sugar environments (e.g. GNOME), myself and Paul are in agreement that in order to change brightness and volume, you should press e.g. Fn+F9 (to decrease brightness). This matches behaviour of normal laptops, including the Dell that I'm writing on. Linux already has mechanisms (once through hal, now through udev) so that when I press Fn+F8 on my Dell, X receives the volume down key press (instead of the Fn+F8 key press), matching what is printed on the keyboard. This convention appears to be changing. My very recent HP notebook requires th Fn button to be pushed to reach the function keys. Everything is reversed. While I don't have the empirical evidence to support a claim that users prefer to have quick access to volume brightness, I think this could be an argument to say that whatever the path of least resistance (in terms of developer cycles) is fine. Tim ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] WikiBrowse from sugar-emulator (ubuntu 10.04) ?
On 12 July 2010 03:23, Bastien bastien.gue...@wikimedia.fr wrote: Thanks Sascha. Sascha Silbe sascha-ml-ui-sugar-de...@silbe.org writes: Excerpts from Bastien's message of Sat Jul 10 16:11:17 + 2010: He installed Sugar on Ubuntu 10.04 with sugar-emulator 0.88 then tried to install WikipediaEN from these packages : * http://dev.laptop.org/~cjb/enwiki/WikipediaEN-4.xo * http://dev.laptop.org/~cjb/eswiki/Wikipedia-10.xo Ubuntu removed python-xpcom for 10.04, so hulahop and anything based on it (Browse, Wikipedia, ...) is broken. ~$ sudo apt-get install python-xpcom should do it, right? The python-xpcom package is not in Lucid unfortunately [1].. The source is available from Mozilla [2]. Good luck. [1] https://bugs.launchpad.net/ubuntu/+bug/480407 [2] https://developer.mozilla.org/en/pyxpcom ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] Python help
On 8 July 2010 04:49, ALEXANDER JONES (RIT Student) acj3...@rit.edu wrote: I'm writing a python program for sugar and i recently added a line at the top 'from sugar.activity import activity' and now every time i run it i get a glib.GError:Failed to contact configuration server;.(lots of text) i can't seem to figure out what this means. can anyone point me in the right direction? Thanks :) Hi Alexander, Are you able to tell us which version of the sugar.activity package you are importing? Also, can you please paste in the full error. Lastly, which operating system are you running on? ~Tim ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] [PATCH] TurtleArt - escaping HTML entities while exporting to HTML #sl1854
This patch attempts to fix http://bugs.sugarlabs.org/ticket/1854. It assumes that the only place where , , could enter the file in a troublesome manner is when the TurtleArt code is being imported into the content div. Author: Tim McNamara paperl...@timmcnamara.co.nz Date: Sat Jul 3 19:00:34 2010 +1200 HTML chars escaped in TA code , , This commit utilises cgi.escape to escape troublesome HTML entities. The only place where this function is called is when the Turtleart code is being extracted and presented in a div. The SVG input is assumed to be clean - escaping those chars would result in the XML text being rendered rather than the image. diff --git a/taexporthtml.py b/taexporthtml.py index 5a0d163..47577f0 100644 --- a/taexporthtml.py +++ b/taexporthtml.py @@ -24,6 +24,7 @@ import gtk import os.path from tautils import data_to_string, save_picture, image_to_base64 from gettext import gettext as _ +from cgi import escape def save_html(self, tw, embed_flag=True): Either: Save canvas and code or pictures to HTML @@ -114,7 +115,7 @@ def save_html(self, tw, embed_flag=True): code += (self.html_glue['img'][0] + imgdata + \ self.html_glue['img'][1]) code += self.html_glue['div'][0] -code += data_to_string(tw.assemble_data_to_save(False, True)) +code += escape(data_to_string(tw.assemble_data_to_save(False, True))) code += self.html_glue['div'][1] if tw.running_sugar: ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Setting Palette delay timing
Hi all, I'm reading http://bugs.sugarlabs.org/ticket/1169, which talks about the delay of GTK Palettes/drop down menus. I think this is a worthy bug to squash, but I'm not really sure where to start. Given that this has been high/critical priority since 0.86, I'm assuming that it's harder than the sugar-love status it has been triaged as. Noting that there probably isn't a global setting, how is the delay animation established? If there is a global toggle/setting, let's get on to increasing the perceived responsiveness of these menus. -Tim. ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] [PATCH] TurtleArt - SVG text wrapping #sl1856
Hi Walter, et all, This patch should go most of the way to fixing the bug. However, I haven't tested it locally it contains a few assumptions about what the SVG files look like that that it's processing. I'm also not 100% sure about the elementtree implementation of ElementTree (am used to lxml). That said, I would like your feedback about whether you consider this to be an appropriate way to approach the problem. diff --git a/taexporthtml.py b/taexporthtml.py index 5a0d163..daad983 100644 --- a/taexporthtml.py +++ b/taexporthtml.py @@ -25,6 +25,78 @@ import os.path from tautils import data_to_string, save_picture, image_to_base64 from gettext import gettext as _ +try: import xml.etree.cElementTree as ET +except ImportError: +try: import cElementTree as ET # python 2.5 +except ImportError: +try: import lxml.etree as ET +except ImportError: +try: import xml.etree.ElementTree as ET +except ImportError: +import elementtree.ElementTree as ET + +def split_at_len(s, max_len=50, delimiter=None): + +Returns a list of strings, that are split from an +input string. Delimits on whitespace by default. + +if delimiter is None: +s = s.split() +else: +s = s.split(delimiter) + +lines = [] +current_line = '' +for word in s: +if len(current_line) = max_len: +short.append(current_line) +current_line = word +else: +current_line = '%s %s' % (current_line, word); +lines[0] = lines[0][1:] #hack required by string formatting +lines.append(current_line) +return lines + +def process_svg_text_element(el, max_len=50, line_height='1.1em'): + +Turns + textlong ... content/text +into + text +tspanlong/tspantspan.../tspantspancontent/tspan + /text + +# NOTE Assumes that there are no subelements this +# should be safe because TurtleArt shouldn't +# generate any +data = split_at_len(el.text, max_len=max_len) + +for line in data: +ET.SubElement(el, 'tspan') + +i = 0 +while i len(data): +el[i].text = data[i] +el[i].attrib['dy'] = (i*line_height) +i = i+1 +return el + +def process_text_in_svg(svg, max_len=50, line_height='1.1em'): + +Takes an SVG as a string or file-like object +and returns a string with text elements split +into multiple lines surrounded by tspan. + +tree = ET.parse(svg) +svg_text = tree.findall('text') +if len(svg_text) 0: +for el in svg_text: +# TODO check if this actually replaces the element in tree +el = process_svg_text_element(el, + max_len=max_len, + line_height=line_height) +return ET.tostring(tree) + def save_html(self, tw, embed_flag=True): Either: Save canvas and code or pictures to HTML self.embed_images = embed_flag @@ -85,7 +157,7 @@ def save_html(self, tw, embed_flag=True): imgdata = f.read() f.close() if p.endswith(('.svg')): -tmp = imgdata +tmp = process_text_in_svg(imgdata) else: pixbuf = gtk.gdk.pixbuf_new_from_file(p) imgdata = image_to_base64(pixbuf, tw.activity) @@ -97,7 +169,7 @@ def save_html(self, tw, embed_flag=True): f = open(p, r) imgdata = f.read() f.close() -tmp = imgdata +tmp = process_text_in_svg(imgdata) else: tmp = self.html_glue['img3'][0] tmp += p ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [PATCH] fixes sl#2062
On 2 July 2010 20:42, Sascha Silbe sascha-ml-ui-sugar-de...@silbe.orgwrote: TypeError should be catched in jarabe.desktop.schoolserver.register_laptop() and rethrown as a RegisterError. Sascha diff --git a/src/jarabe/desktop/schoolserver.py b/src/jarabe/desktop/schoolserver.py index fc9ddeb..a05f56c 100644 --- a/src/jarabe/desktop/schoolserver.py +++ b/src/jarabe/desktop/schoolserver.py @@ -99,7 +99,7 @@ def register_laptop(url=REGISTER_URL): server = ServerProxy(url) try: data = server.register(sn, nick, uuid_, profile.pubkey) -except (Error, socket.error): +except (Error, TypeError, socket.error): logging.exception('Registration: cannot connect to server') raise RegisterError(_('Cannot connect to the server.')) ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [PATCH] TurtleArt - SVG text wrapping #sl1856
On 4 July 2010 05:08, Walter Bender walter.ben...@gmail.com wrote: On Sat, Jul 3, 2010 at 7:44 AM, Tim McNamara paperl...@timmcnamara.co.nz wrote: Hi Walter, et all, This patch should go most of the way to fixing the bug. However, I haven't tested it locally it contains a few assumptions about what the SVG files look like that that it's processing. I'm also not 100% sure about the elementtree implementation of ElementTree (am used to lxml). That said, I would like your feedback about whether you consider this to be an appropriate way to approach the problem. I don't know much about ElementTree, but the patch itself looks OK. What I don't understand is how the textbox width is determined. How do we know how long to make the strings? My patch includes the max_len argument twice, for convenience only. process_text_in_svg passes those arguments to process_text_in_svg, which itself passes those arguments to split_at_len. My thought was that it would enable the functions to be accessed externally. Then again, I should use objects if I would like to maintain state like this. As far as how the width is calculated, I've created an arbitrary cut-off at 50 characters. This is used by split_at_len. It would be better to draw an inference about the available space left on the page from the element's x/y position and the height/width of the whole page. However, I consider this patch an intermediate step patch submission as a pit stop to get review comments. Relationship between three functions process_text_in_svg accepts whole SVG file/string, calls process_svg_text_element on text tags, returns SVG as a string process_svg_text_element accepts a list of Element objects, calling split_at_len on their content, returning the Element split_at_len accepts single string, returns list of strings I'll work on an OO implementation on this. It'll add flexibility clarity. -Tim. ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] [PATCH] Remove hard-coded School Server URL when XOs register #sl1976
Hi there, Ref http://bugs.sugarlabs.org/ticket/1976 Bevaviour of the software is now independent of the hardware that Sugar is running. All registrations will look for Jabber server settings from /desktop/sugar/collaboration/jabber_server. However, this patch retains the REGISTER_URL as an option for systems administrators. This prevents currently written documentation for the XS / XO registration from breaking. Please note, I haven't got an XS to test this on, so am relying on maintainter to see if this fixes the bug. -Tim diff --git a/src/jarabe/desktop/schoolserver.py b/src/jarabe/desktop/schoolserver.py index fc9ddeb..6a59cb2 100644 --- a/src/jarabe/desktop/schoolserver.py +++ b/src/jarabe/desktop/schoolserver.py @@ -29,7 +29,9 @@ import gconf from sugar import env from sugar.profile import get_profile -REGISTER_URL = 'http://schoolserver:8080/' +REGISTER_URL = '' +# this setting is depreciated, consider changing XMPP settings +# in /desktop/sugar/collaboration/jabber_server def generate_serial_number(): Generates a serial number based on 3 random uppercase letters @@ -89,10 +91,14 @@ def register_laptop(url=REGISTER_URL): else: sn = generate_serial_number() uuid_ = str(uuid.uuid1()) -setting_name = '/desktop/sugar/collaboration/jabber_server' -jabber_server = client.get_string(setting_name) -store_identifiers(sn, uuid_, jabber_server) + +setting_name = '/desktop/sugar/collaboration/jabber_server' +jabber_server = client.get_string(setting_name) +store_identifiers(sn, uuid_, jabber_server) +if len(url) == 0: url = 'http://' + jabber_server + ':8080/' +else: +url = url nick = client.get_string('/desktop/sugar/user/nick') ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Q on tracker cleanup / triage
Hi devs, 500+ unclosed bugs causes problems. I feel intimidated overwhelmed by this number. I also find it difficult to find material sift through bug reports, to find areas where I can help (although, at the moment, I'm quite content with sugar-love level problems). However, 500+ bugs isn't that accurate. Some have been identified as upstream problems, but their resolution status remains open. I suggest that we make more use of the wontfix resolution status. In 5 minutes, I've found some likely candidates. wontfix comes with a high risk of alienating people submitting bugs, but a polite note saying that it's upstream or possibly something like Unfortunately, we have higher priority areas to work on right now. However we would welcome a patch if you are still wiling to work on this issue. It's great that you've taken the time to submit the bug, and we have looked into resolving things for you. Some candidates: wontfix - upstream http://bugs.sugarlabs.org/ticket/1307 wontfix - other priorities http://bugs.sugarlabs.org/ticket/288 http://bugs.sugarlabs.org/ticket/292 duplicates http://bugs.sugarlabs.org/ticket/172 http://bugs.sugarlabs.org/ticket/394 I think that resolving bugs, even if by using the wontfix tag will make other areas easier. Also, I don't know if I have the permission to change resolution status when something hasn't been touched for 12+ months. If I were to change status on likely candidates, would this anger the other developers? Tim ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [PATCH] Add cpu and memory resource indicator to frame
On 2 July 2010 22:03, Sascha Silbe sascha-ml-ui-sugar-de...@silbe.orgwrote: +def create_palette(self): +palette = ResourcePalette(_('System Resources')) Should Resources be lower case instead? (Question to native english speakers) Title Case is often used in headings, but use of capital letters is generally frowned upon in modern English. In this context, it seems fine. System resources is unlikely to be contentious. Tim ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] [PATCH] fixes sl#2062
Hi all ref http://bugs.sugarlabs.org/ticket/2062 Simple fix, have captured the exception that's raised and have told user to connect to the nework: This commit fixes sl#2062. This bug causes XS registrations to fail silently when the XO is offline. The fix is to catch the TypeError provide an alert to the user upon failure. --- src/jarabe/desktop/favoritesview.py |6 ++ 1 files changed, 6 insertions(+), 0 deletions(-) diff --git a/src/jarabe/desktop/favoritesview.py b/src/jarabe/desktop/favoritesview.py index aca945a..45fa305 100644 a b 323323except RegisterError, e: 324324 alert.props.title = _('Registration Failed') 325325 alert.props.msg = _('%s') % e326except TypeError: 327 # raised by xmlrpclib.py when XO attempts to 328# register itelf while offline: sl#2062 329alert.props.title = _('Registration Failed') 330alert.props.msg = _('Please try connecting to '\ 331 'the network.') 326 332else: 327333alert.props.title = _('Registration Successful') 328334alert.props.msg = _('You are now registered ' \ Index: src/jarabe/desktop/favoritesview.py === --- a/src/jarabe/desktop/favoritesview.py +++ b/src/jarabe/desktop/favoritesview.py @@ -323,6 +323,12 @@ except RegisterError, e: alert.props.title = _('Registration Failed') alert.props.msg = _('%s') % e +except TypeError: +# raised by xmlrpclib.py when XO attempts to +# register itelf while offline: sl#2062 +alert.props.title = _('Registration Failed') +alert.props.msg = _('Please try connecting to '\ + 'the network.') else: alert.props.title = _('Registration Successful') alert.props.msg = _('You are now registered ' \ ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] [PATCH] [trivial] Free From Malaria
Hi, Wtgn testers have notived that the Free From Malaria Activity [1] currently has gtk test as its activity name in activity.py. Here's a fix :) -Tim === modified file 'activity.py' --- activity.py 2010-06-19 00:07:52 + +++ activity.py 2010-06-19 00:09:04 + @@ -45,7 +45,7 @@ print Journal resume. # Set title for our Activity -self.set_title('gtk test') +self.set_title('Free From Malaria') # Attach sugar toolbox (Share, ...) # Use old = 0.84 toolbar design ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [PATCH] Calculate/functions.py
On 3 June 2010 16:00, James Cameron qu...@laptop.org wrote: On Thu, Jun 03, 2010 at 03:51:46PM +1200, Tim McNamara wrote: Thanks for taking the time to review that patch. But wait, there's more. Tested-by: James Cameron qu...@laptop.org shift_right() also mentions self on the argument list, which stops it from working right. After that is fixed, shift_left() and shift_right() are usable in Calculate. Applied. Tim diff --git a/functions.py b/functions.py index ddc1088..b101a4c 100644 --- a/functions.py +++ b/functions.py @@ -1,3 +1,5 @@ +#!/usr/bin/python + # functions.py, functions available in Calculate, # by Reinier Heeres rein...@heeres.eu # @@ -14,14 +16,20 @@ # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +''' +Functions library for the Calculate Activity. + +The functions module is designed to be added as a plugin for the +Calculate Activity's astparser.AstParser class. -# Any variable or function in this module that does not start with an -# underscore ('_') will be available in Calculate through astparser.py. -# Docstrings will automatically be added to the help index for that function. -# However, instead of setting the docstring on a function in the simple way we -# add it after the function definition so that they can more easily be -# localized through gettext. +Variables and functions that do not start with an underscore ('_') +will be available in Calculate through astparser.py. +Docstrings will automatically be added to the help index for that function. +However, instead of setting the docstring on a function in the simple way we +add it after the function definition so that they can more easily be +localized through gettext. +''' import types import math import random @@ -67,10 +75,10 @@ _FUNCTIONS = [ _('tan'), _('tanh'), _('xor'), -] +] def _d(val): -'''Return a _Decimal object.''' +'''Returns a _Decimal object, an alias of decimal.Decimal.''' if isinstance(val, _Decimal): return val @@ -94,79 +102,180 @@ def _inv_scale_angle(x): return x / _angle_scaling def abs(x): + +Calculates the absolute value of x in floating point. +When x is less than 0, it returns -x. + + abs(10) +10.0 + abs(_Decimal(-10)) +10.0 + return math.fabs(x) -abs.__doc__ = _( -'abs(x), return absolute value of x, which means -x for x 0') +abs.__doc__ = _(abs.__doc__) def acos(x): + +Calculates the arc cosine of x. + +The arc cosine of x is the angle for which the cosine is x. + + acos(-0.2) +1.7721542475852274 + acos(_Decimal('-0.20')) +1.7721542475852274 + +x must be between -1 and 1. + acos(20) +Traceback (most recent call last): +... +ValueError: math domain error + return _inv_scale_angle(math.acos(x)) -acos.__doc__ = _( -'acos(x), return the arc cosine of x. This is the angle for which the cosine \ -is x. Defined for -1 = x 1') +acos.__doc__ = _(acos.__doc__) def acosh(x): + +Calculates the arc hyperbolic cosine of x. + +This is the value y for which the hyperbolic cosine equals x.' + + acosh(20) +3.6882538673612966 + acosh(20.0) +3.6882538673612966 + acosh(_Decimal('20.0')) +3.6882538673612966 + return math.acosh(x) -acosh.__doc__ = _( -'acosh(x), return the arc hyperbolic cosine of x. This is the value y for \ -which the hyperbolic cosine equals x.') +acosh.__doc__ = _(acosh.__doc__) def And(x, y): + +Logical Boolean operator and. + +Returns True if both x and y evaluate to True, +otherwise it returns False. + + And(True, True) +True + And(False, False) +False + And(True, False) +False + And(False, True) +False + return x y -And.__doc__ = _( -'And(x, y), logical and. Returns True if x and y are True, else returns False') +And.__doc__ = _(And.__doc__) def add(x, y): + +Adds x and y, returning their sum. + +If either of the varibles is an instance of decimal.Decimal, +the function will coerce the other to be that type. + if isinstance(x, _Decimal) or isinstance(y, _Decimal): x = _d(x) y = _d(y) return x + y -add.__doc__ = _('add(x, y), return x + y') +add.__doc__ = _(add.__doc__) def asin(x): + +Calculates the arc sine of x. + +This is the angle for which the sine is ix. +Accepts an x value of -1 to 1. + + asin(_Decimal('-0.20')) +-0.2013579207903308 + asin(_Decimal('-020')) +Traceback (most recent call last): +... +ValueError: math domain error + return _inv_scale_angle(math.asin(x)) -asin.__doc__ = _( -'asin(x), return the arc sine of x. This is the angle for which the sine is ix. \ -Defined for -1 = x = 1') +asin.__doc__ = _(asin.__doc__) def asinh
[Sugar-devel] [PATCH] Calculate/functions.py
/python +# -*- coding: utf-8 -*- + + # functions.py, functions available in Calculate, # by Reinier Heeres rein...@heeres.eu # +# Copyright 2010 Tim McNamara t...@sugarlabs.org + # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or @@ -14,14 +20,20 @@ # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +''' +Functions library for the Calculate Activity. + +The functions module is designed to be added as a plugin for the +Calculate Activity's astparser.AstParser class. -# Any variable or function in this module that does not start with an -# underscore ('_') will be available in Calculate through astparser.py. -# Docstrings will automatically be added to the help index for that function. -# However, instead of setting the docstring on a function in the simple way we -# add it after the function definition so that they can more easily be -# localized through gettext. +Variables and functions that do not start with an underscore ('_') +will be available in Calculate through astparser.py. +Docstrings will automatically be added to the help index for that function. +However, instead of setting the docstring on a function in the simple way we +add it after the function definition so that they can more easily be +localized through gettext. +''' import types import math import random @@ -67,7 +79,7 @@ _FUNCTIONS = [ _('tan'), _('tanh'), _('xor'), -] +] def _d(val): '''Return a _Decimal object.''' @@ -94,79 +106,173 @@ def _inv_scale_angle(x): return x / _angle_scaling def abs(x): + +Calculates the absolute value of x in floating point. +When x is less than 0, it returns -x. + + abs(10) +10.0 + abs(_Decimal(-10)) +10.0 + return math.fabs(x) -abs.__doc__ = _( -'abs(x), return absolute value of x, which means -x for x 0') +abs.__doc__ = _(abs.__doc__) def acos(x): + +Calculates the arc cosine of x. + +The arc cosine of x is the angle for which the cosine is x. + + acos(-0.2) +1.7721542475852274 + acos(_Decimal('-0.20')) +1.7721542475852274 + +x must be between -1 and 1. + acos(20) +Traceback (most recent call last): +... +ValueError: math domain error + return _inv_scale_angle(math.acos(x)) -acos.__doc__ = _( -'acos(x), return the arc cosine of x. This is the angle for which the cosine \ -is x. Defined for -1 = x 1') +acos.__doc__ = _(acos.__doc__) def acosh(x): + +Calculates the arc hyperbolic cosine of x. + +This is the value y for which the hyperbolic cosine equals x.' + + acosh(20) +3.6882538673612966 + acosh(20.0) +3.6882538673612966 + acosh(_Decimal('20.0')) +3.6882538673612966 + return math.acosh(x) -acosh.__doc__ = _( -'acosh(x), return the arc hyperbolic cosine of x. This is the value y for \ -which the hyperbolic cosine equals x.') +acosh.__doc__ = _(acosh.__doc__) def And(x, y): + +Logical Boolean operator and. + +Returns True if both x and y evaluate to True, +otherwise it returns False. + return x y -And.__doc__ = _( -'And(x, y), logical and. Returns True if x and y are True, else returns False') +And.__doc__ = _(And.__doc__) def add(x, y): + +Adds x and y, returning their sum. + +If either of the varibles is an instance of decimal.Decimal, +the function will coerce the other to be that type. + if isinstance(x, _Decimal) or isinstance(y, _Decimal): x = _d(x) y = _d(y) return x + y -add.__doc__ = _('add(x, y), return x + y') +add.__doc__ = _(add.__doc__) def asin(x): + +Calculates the arc sine of x. + +This is the angle for which the sine is ix. +Accepts an x value of -1 to 1. + + asin(_Decimal('-0.20')) +-0.2013579207903308 + asin(_Decimal('-020')) +Traceback (most recent call last): +... +ValueError: math domain error + return _inv_scale_angle(math.asin(x)) -asin.__doc__ = _( -'asin(x), return the arc sine of x. This is the angle for which the sine is ix. \ -Defined for -1 = x = 1') +asin.__doc__ = _(asin.__doc__) def asinh(x): + +Calculates the arc hyperbolic sine of x. + +This is the value y for which the hyperbolic sine equals x. + return math.asinh(x) -asinh.__doc__ = _( -'asinh(x), return the arc hyperbolic sine of x. This is the value y for \ -which the hyperbolic sine equals x.') +asinh.__doc__ = _(__doc__) def atan(x): + +Calculates the arc tangent of x. + +The arc tangent is the angle for which the tangent is x. + +x can be any number. + return _inv_scale_angle(math.atan(x)) -atan.__doc__ = _( -'atan(x
Re: [Sugar-devel] [PATCH] Calculate/functions.py
James, Thanks for taking the time to review that patch. On 3 June 2010 15:38, James Cameron qu...@laptop.org wrote: 5. fixes a transcription error from the XOR Wikipedia article by editing out a symbol that can't be represented in code. This was the only reason why I added the encoding statement at the top. I'll remove that line also if we take out the logical symbol. Another question for you ... is the docstring of sinc() supposed to have two periods trailing the formula? No. I'll pull that also. Based on my edits, reviewed. -- James Cameron http://quozl.linux.org.au/ ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Please review code (was Re: Speak answering maths questions)
Hi Chris, et al. ref http://pastebin.com/2XNCHGiy I am most of the way there, as you can see from lines 91 - 143. The function is attempting to return something that can be read out loud back to a child if they ask the Speak robot a mathematical question. My biggest question is the best way to import the functionality from the Calculate activity. As per silbe's comments on IRC, I'm leaning towards duplicating the two modules inside of the Speak activity. I guess I could implement my own parser, I thought about using the ast module. Then I realised that I would just make a poor replication of the parser evaluator that's already been created. Thoughts/comments welcome. Tim On 30 May 2010 05:34, Chris Ball c...@laptop.org wrote: Hi Tim, I'd suggest looking at the parsing logic in the Calculate activity -- it deals with the same problems. - Chris. -- Chris Ball c...@laptop.org One Laptop Per Child ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] ANNOUNCE: Sugar 0.88 for the XO-1
On 26 May 2010 06:16, Peter Robinson pbrobin...@gmail.com wrote: On Tue, May 25, 2010 at 5:25 PM, Bernie Innocenti ber...@codewiz.org wrote: Hello everyone, we've just started a new development cycle aimed at providing Sugar 0.88 for the XO-1. Our focus is stability and usability for deployments, although we're also attempting to merge a couple of low-risk features developed in Uruguay. Full details are here: http://wiki.sugarlabs.org/go/Deployment_Team/Sugar-0.88_Notes Is F-11 still the base OS for this? Peter Just for my knowledge, does Fedora have an equivalent to Ubuntu's long-term support releases? Without thinking too deeply about the implications, it make sense (to me) to peg XO development to something that's stable over a few years. That way package versions etc will be widely known and consistent. /me reads [1]. Apparently not. Is there anyway to achieve something similar without needing to pay for RHEL, which is probably a bit of an overkill? Best regards, Tim McNamara @timClicks [1] http://news.cnet.com/Long-term-Fedora-Linux-support-ending/2100-7344_3-6146604.html ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Speak answering maths questions
Hi all, *About* This email is asking for feedback on different alternatives of implementing a feedback request. It also goes through a lot of thought processes that have resulted in my preferred suggestion. This is mainly addressed at Sugar devs, but thought Alastair Grant from Wellington this morning might be interested. *Background = User story* This morning while we were testing with some parents, the question came up whether Speak could respond to maths problems, e.g. if you entered 10+2, would speak respond with 12? *First thoughts* I thought this was quite a neat suggestion and have encountered a few ways to implement it. To start with, I thought a smart way to indicate that you wanted Speak to tell you an answer would be to use the equals sign after maths. That leads to a construction like this: if text.rstrip()[-1:] == '=': try: text = str(eval(text.rstrip()[:-1])) except: # SyntaxError is called when eval can't handle the input, # but I think we should obscure all errors pass We need to convert the result of the eval to a string because speaking seems to get confused when it encounters an integer. The practical result of the code above is to produce results similar to this below: text = '3+4= ' str(eval(text.rstrip()[:-1])) '7' One problem with this approach is integer division. Speak I am not quite sure yet how to simply convert all integers within text to floats and keep things succint snappy. I thought it would be better to bring something back to the list and have a chat about trade offs. Also, what do people think about the risks of exposing eval() to users? My thoughts are that as we're forcing an '=' to be at the end of the string, it will always result in SyntaxErrors. if something dangerous is attempted to be evaluated. eval('str') type 'str' vs. eval('str=') Traceback (most recent call last): File stdin, line 1, in module File string, line 1 str= ^ SyntaxError: unexpected EOF while parsing Even so, is there a simple way to expose mathematical operators but prevent calls to functions methods? *Where to implement?* The easiest place for the user would be to be agnostic of mode [1]. E.g. whenever an equals sign appears at the end, try to answer the maths and say the result. it is very easy to tel someone 'add an equals sign at the end'. However, since we have a Robot mode, it's probably best to throw it in there [2]. However, it's probably best for code maintenance to put the evaluation in the 'brain.py', rather than in the voice, so that's where solution [3] puts it. [1] activity.py trunk:377 Will evaluate maths problems agnostic of mode: def _entry_activate_cb(self, entry): # the user pressed Return, say the text and clear it out text = entry.props.text.rstrip() maths_problem = False if text: self.face.look_ahead() # solve the maths problem if text[-1:] == '=': try: text = str(eval(text[:-1])) maths_problem = True except: pass # speak the text if self._mode == MODE_BOT and not maths_problem: self.face.say( brain.respond(self.voices.props.value, text)) else: self.face.say(text) [2] activity.py trunk:377 Will evaluate maths only if we're in robot mode def _entry_activate_cb(self, entry): # the user pressed Return, say the text and clear it out text = entry.props.text.rstrip() if text: self.face.look_ahead() # speak the text if self._mode == MODE_BOT: if text[-1:] == '=': try: text = str(eval(text[:-1])) except: self.face.say(text) self.face.say( brain.respond(self.voices.props.value, text)) else: self.face.say(text) [3] brain.py trunk:66: Moving the logic from [2], to the brain of the program. def respond(voice, text): if text.rstrip()[-1:] == '=': try: text = str(eval(text.rstrip()[:-1])) except: pass if _kernel is None: return text else: return _kernel.respond(text) *Summary* I personally prefer [1] because it means that you don't need to change modes. However, that does mean we're overloading the default speech mode. If there's no support, then [3] is probably be the best way to keep logic in the right place. Thanks ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [Fwd: [PATCH] use the spanish verb quitar for unmounting devices]
On 17 May 2010 06:07, Bernie Innocenti ber...@codewiz.org wrote: This was also supposed to be posted on the list: - Mensaje reenviado De: Bernie Innocenti ber...@codewiz.org Para: Tomeu Vizoso to...@sugarlabs.org Cc: Sayamindu Dasgupta sayami...@gmail.com, de...@lists.sugarlabs.org, Bernie Innocenti ber...@codewiz.org Asunto: [PATCH] use the spanish verb quitar for unmounting devices Fecha: Sun, 16 May 2010 13:44:05 -0400 In Sugar 0.88, the command for unmounting removable devices has been renamed from Unmount to Remove, which is used throughout the GUI with several slightly different meanings. The common translation for remove was eliminar, whose semantic meaning is eliminate, thus inappropriate for the unmount operation. Would Take Out be an appropriate string? Tim ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Code Guidelines L10N
Hi all, Am seeking clarification on coding style, notably the use of trailing white space punctuation. import gettext as _ ... _(Enter your name: ) = Generally used _(Enter your name)+: = Best for translators, slower to run, readability decreases _(Enter your name%s) % (: ,) = Avoids concat, readability low Trailing white space punctuation marks can be irritating to deal with. As a translator, it's hard to know the significance of the white space without context if you notice it. When the translator interprets things incorrectly, the reader then experiences the irritation. I've looked through the Code Guidelines[1], but can't see any reference the appropriate way to use gettext -Tim [1] http://wiki.sugarlabs.org/go/Development_Team/Code_Guidelines ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Introduction to this year's GSoC teams
Thank you to all of the students and mentors that have invested their time in assisting Sugar Labs through the GSoC application process. Contratulations to the successful students! As you will have inferred from my previous emails, this year's applications were of a very high calibre. If you were unsuccessful, we would still love your contributions! There were several applications that we regretfully needed to turn down that would be excellent additions to Sugar. Here are the successful projects: *Enhancing Sugar on a Stick* Sebastian Dziallas (sdziallas), mentored by Walter Bender http://wiki.sugarlabs.org/go/Summer_of_Code/2010/Improved_Sugar_on_a_Stick Selected comments: - The author of this proposal has outlined a realistic timeline for a valuable project and has demonstrated that he has the knowledge, motivation, and contacts necessary to succeed and to grow. - SoaS is a critial part of the Sugar strategy for reaching out to teachers. ** *Pippy Improvements* Dinko Galetić (dgaletic), mentored by Michael Stone http://wiki.sugarlabs.org/go/Summer_of_Code/2010/Pippy_improvements Selected comments: - This is a fine proposal, well aligned with Sugar's goals, made by a talented candidate. *Abstract Browser* Lucian Branescu Mihaila (lucian), mentored by Luis Gustavo Lira http://wiki.sugarlabs.org/go/Summer_of_Code/2010/AbstractBrowser Selected comments: - This is a clear and focused proposal about a clear need - Lucian demonstrated that he is up to the task last summer--he could revitalize this important corner of Sugar I wish the teams the best of luck. Congratulations to the sucessful students! I'll be updating the wiki today my time. Please feel to come to me with any questions. Regards, Tim McNamara Sugar Labs GSoC 2010 Coordinator ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] GSoC decisions very close - fantastic proposals - mentors IRC meeting
We have had several outstanding proposals from very talented software developers. Unfortunately, many highly worthwhile projects will miss out. I warmly welcome mentors who have not yet reviewed the proposals to do so. If everyone participates, it will make distinguishing the top contenders easier. Full participation ensures the fairest outcome. However, I admit that I'm trying to insulate myself from having to make hard decisions! We also need you to propose yourself as a mentor for projects you're interested in supporting. To help coordiate efforts, are mentors available for an IRC discussion? We can meet in #sugar tomorrow afternoon / evening. UTC 7pm, 20 April NZST 7am, 21 April EDT 3pm, 20 April BST 8pm, 20 April Thanks everyone, especially to our GSoC applicants. Tim ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Busy weekend for GSoC - Please review proposals jobs for mentors
Hi all, *Everyone* Please review proposals that have been submitted to the Sugarlabs wiki, http://wiki.sugarlabs.org/go/Summer_of_Code. There are some very interesting ideas. Unfortunately, we will only be able to select three this year. However, If you would like to see one of the ideas developed outside of the GSoC framework, I recommend you voice your support on Sugar-devel. That *GSoC Mentors* It's especially important that the mentors review the proposals at http://socghop.appspot.com/gsoc/org/list_proposals/google/gsoc2010/sugar_labs. Things are currently very close. We need some more votes to enable projects to be distinguished. Also, I recommend that you nominate yourself as a mentor to project(s) you feel could benefit from your support. This will make the selection process slightly easier. Thanks all, Tim McNamara ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [Gsoc] State of this year's gsoc
On 12 April 2010 15:10, Rafael Enrique Ortiz Guerrero raf...@sugarlabs.orgwrote: Hi all. How is Gsoc going for SugarLabs this year ? Are we having enough mentors ? How is the proposal review going ?. Hi Rafael, thanks for the questions! Here's a short update: Sugar Labs has three student slots this year, which will mean we will be fine for mentors :) We've had twelve students who have submitted proposals, from a total pool of 13 proposals. I've neglected my duties this week, and haven't moved the proposal review forward. I'll be arranging this shortly. Cheers :) Tim P.D I'm willing to step down as a student to help coordinating if necessary. Rafael Ortiz ___ GSoC mailing list g...@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/gsoc ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Sugar Labs Accepted as GSoC 2010 Organisation
Chris - You must have known something! Sugar Labs is part of the fold. [1] Thanks all for helping me along. Now the real fun starts :) Tim @timClicks [1] http://socghop.appspot.com/gsoc/program/accepted_orgs/google/gsoc2010 On 13 March 2010 12:11, Chris Ball c...@laptop.org wrote: Hi Tim, Sugar Labs application for Google Summer of Code 2010 has been accepted. Wow, that was quick. Many congrats and thanks! I'm not sure exactly on the politics of the situation, but my personal feeling is that we should be quite encouraging of supporting OLPC projects. That sounds great; I'd be happy to chat more about this. - Chris. -- Chris Ball c...@laptop.org One Laptop Per Child ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Recommendation - sugar-love Trac Report
Hi all, Small recommendation. Create a Trac report that is clickable from the front of http://dev.sugarlabs.org that lists orphaned tickets identified by sugar-love. This will make it very easy for new contributors to find something that they can get involved with. Tim. ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Sugar Labs GSoC 2010 Flyer - please review
Hi all, If you have 30 seconds free, please review http://issuu.com/timclicks/docs/sugarlabs_gsoc_2010. I've gone for simplicity over . My main consideration was tying together growth children's learning. I think you'll smile when you see the result. If people are relatively happy with it, we can start forwarding it around. I've used a web-based solution to avoid clogging up people's inboxes. If you would like the PDF or raw SVG, do let me know. Tim @timClicks ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Sugar Labs GSoC 2010 Application In
Hi all, Sugar Labs application for Google Summer of Code 2010 has been accepted. Over the course of the weekend, I'll be sending out email flyers for you to send to potential students. I'm not sure exactly on the politics of the situation, but my personal feeling is that we should be quite encouraging of supporting OLPC projects. Two requests: 1. Self-nominate yourself as a potential mentor. This involves a few hours a week could reap huge benefits for the project. 2. Please promote http://idea.sugarlabs.org/ . This means encouraging students to submit ideas then visiting back a few times over the course of the next few weeks. Please feel to contact me off the list at paperl...@timmcnamara.co.nz if you have any questions. Very best regards, Tim McNamara @timClicks ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Write - H1 - H4 other minor things
Hi all, A few thoughts on the version of Write which I cloned today. *H1 ... H4* Do we know how these term has been received by the education sector? I wonder if we could change the string literals to something like Major heading Subheading Minor heading. I haven't got too much experience with teaching children in a classroom, but this is closer the language I remember from school. H1 ... H4 seems like something that HTML created. *Export* Great feature! Would be great to rotate the arrow on this icon outwards to match the word :) *Insert/Delete Row* I would have + - visual indicators, rather than simply arrows. That is all. If you're interested, I could probably submit SVGs for review to deal with the last two points. Tim. ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Yum install sugar-activity-record?
On 26 February 2010 13:28, Art Hunkins abhun...@uncg.edu wrote: I am unable to test my activities (Our Music, Our Music MC) on recent daily builds because Browse doesn't work, and other USB drives are not recognized. (The neighborhood view shows nothing except me.) These are my only ready ways of getting activities into the system. This may be somewhat naive, but would it possible to manipulate yum to allow yum install sugar-activity-name? I guess it would mean packaging the contents of each .xo file as an app and setting up a server somewhere.. I know I got pretty irritated with debian packaging a while ago, would this be lots of overhead? Tim. ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] Yum install sugar-activity-record?
On 26 February 2010 14:42, James Cameron qu...@laptop.org wrote: On Fri, Feb 26, 2010 at 02:21:02PM +1300, Tim McNamara wrote: This may be somewhat naive, but would it possible to manipulate yum to allow yum install sugar-activity-name? I guess it would mean packaging the contents of each .xo file as an app and setting up a server somewhere.. Yes, it would be possible, and it has been done for certain core activities. However the advantage of .xo files are that they require no configuration of yum, and they work also when Sugar is used on platforms that don't have yum. Gotcha. ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] Activity SoaS Licensing Concerns
On 13 February 2010 09:15, Sebastian Dziallas sebast...@when.com wrote: If nobody complains by the end of this weekend, I'll just upload the images, put a GPLv2+ license in the archive and make a tarball, as this is what they've been listed under in Strawberry and Blueberry, too. --Sebastian Sebastian, apparently the GPL isn't really that great for creative works, like images documents. Will see if I can get some more info by the end of the weekend. Tim ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] FileShare Activity Feedback and Review Request
Justin, Alastair, Grant I had a great time with this app this morning. Seemed to work great. From a UI perspective, I found myself wanting to click files to download pending ones. This may be a hangup from too much web experience. Having to click on the icon at the top took a little bit of retraining :) Well done! Tim. On 13 February 2010 10:49, Justin Lewis jtl1...@rit.edu wrote: I am looking for testing, feedback, and reviews of my File Share Activity so that I may find/fix any remaining bugs and hopefully nominate it for public release on activities.sugarlabs.org. The activity can be found here: http://activities.sugarlabs.org/en-US/sugar/addon/4266 Justin Lewis http://people.rit.edu/~jtl1728 ___ 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] screen blurring using firefox 3.5 and 3.6
On 26 January 2010 17:15, Bryan Berry br...@olenepal.org wrote: I have tested firefox 3.5 and 3.6 on the XO with Sugar version sugar-0.81.7-1. I see significant blurring whenever a png image is added for manipulated I also had this issue w/ os10 for 0.84? http://dev.laptop.org/~smparrish/XO-1/builds/OS10/ Just got this email. GMail has been acting very slow recently. Which activity is this, sorry? I could have a go at converting the PNGs into SVG format over the weekend if desired. That way the background would render over the whole screen the animals' distortion would be minimised. Let me know the URI to the git repo. Also, do we know who owns copyright of the images? I can't create derivative works without permission. Also, if this goes ahead, I would like to add to the Open Clipart Library. Is this okay? Thanks, Tim. ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [Feature] [DESIGN] Enhanced Color Selector
On 2 February 2010 22:45, Simon Schampijer si...@schampijer.de wrote: In the design meeting and the ml-thread the '+' layout and the rows of XOs were favored. Eben brought as well the 'static rows with separated fill/stroke' on the table. Let's try to find an agreement. The proposal looks great. May I suggest a revision to the string literals? Click to change stroke color: = Outline Click to change fill color: = Body Stroke/Fill are terms of art in vector drawing area. My guess is that the terms outline and body (when looking at the XO figure) may be more natural. I feel we can omit Click to change or replace it with Choose. I'm pretty sure it'll be obvious by exploration that clicking on the little XOs changes the big one. Any thoughts? Tim Identi.ca / Twitter / IRC @timClicks p.s. Apologies all for being silent for several weeks. I took a few weeks off during summer, then moved house (no Internet) have been caught up with the Haiti earthquake response with the Sahana project. ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [DESIGN] Control Panel Font configuration
2010/1/31 Albert Cahalan acaha...@gmail.com Sayamindu Dasgupta writes: It may make sense to allow setting of the font as well. While the default Sans may be good enough for most European scripts, it may cause problems for Arabic, Asian, South Asian scripts, etc. Sans usually resolves to DejaVu Sans, etc, which often carry suboptimal glyphs from non Latin scripts I think it's only fair that you get suboptimal glyphs too. :-) DejaVu Sans looks bad even for English with plain ASCII. Among other things, somebody invented a screwy non-standard way to distinguish the lowercase L (l) character. That sort of innovation just isn't what you do in a system-wide default font. The rest is messed up too. BTW, consider a document containing several languages. You'd normally want all the Latin-based ones to use one font, all the Cyrillic ones to use one font, and so on. In other words, per-script (not per-language) selection of the font. If I remember right, there are about 14 scripts in active use around the world. I thought that Gentium may have a sans serif typeface. No, but they refer to Andika SIL : Andika is a sans serif, Unicode-compliant font designed especially for literacy use, taking into account the needs of beginning readers. The focus is on clear, easy-to-perceive letterforms that will not be readily confused with one another. Seems to fit the bill very well. It is released under an open font licence, however I remember hearing difficulties with typeface licencing GPL. Here's a link: http://scripts.sil.org/cms/scrIpts/page.php?site_id=nrsiitem_id=Andika Tim McNamara Identi.ca / Twitter: @timClicks ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [IAEP] Why #sugar should be logged - a plug for transparency and ease of use.
2010/1/13 Jeff Elkner j...@elkner.net It would like to make most of these conversations available to the rest of the community, but I don't have the time to log and publish them myself. +1 for a log bot Is there a good reason why we don't auto log the channel? jeff elkner ___ IAEP -- It's An Education Project (not a laptop project!) i...@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/iaep ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] Sugar 0.86 Favourites View behaviour - Browse
2009/12/7 Simon Schampijer si...@schampijer.de On 12/06/2009 10:28 PM, Tim McNamara wrote: Hi all, Am running Sugar 0.86.3. In general, I like how Sugar now opens the most recent item from the Journal, rather than starting a brand new file. However, I think with Browse - it's still useful for this to default to the homepage. Is there an easy way to make this happen? Do other people agree? @timClicks Hi Tim, interesting question. I am not sure Browse should differ to other activities in that case. It presents you with the latest Browse-session, which is the last visited page. Firefox does the same btw. Looks like a no to my second question :) Maybe you are looking for a simple way to go back to a preferred page (the start page for example). And maybe the answer to your question is more a home button - or global bookmarks that can be accessed through the interface? At the moment there are only session bookmarks and the auto completion functionality. A home button/icon would be beneficial to me. I am interested in others' views. From memory, FF also tends to ask whether you would like to start from scratch or open the last open tab. Another trend in browsers is to present 9 or so thumbnails from the most commonly used pages. 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
[Sugar-devel] Sugar 0.86 Favourites View behaviour - Browse
Hi all, Am running Sugar 0.86.3. In general, I like how Sugar now opens the most recent item from the Journal, rather than starting a brand new file. However, I think with Browse - it's still useful for this to default to the homepage. Is there an easy way to make this happen? Do other people agree? @timClicks ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Maze file structure different than others
Hi all, I am downloading the svg icons from http://git.sugarlabs.org/. I've noticed a minor issue, Maze has a different file structures from other activities. http://git.sugarlabs.org/projects/maze/repos/mainline/trees/master/Maze.activity/activity vs http://git.sugarlabs.org/projects/log/repos/mainline/blobs/master/activity/ Is this significant at all? @timClicks ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Enhancement suggestion - Maze
Something I would like feedback on. After several sessions playing Maze with 6 year olds, I've noticed that it's sometimes very hard to distinguish the difference between opponents if they have the same core colour. E.g. blue w/ light blue stroke is hard to distinguish from blue w/ dark blue stroke. I think a solution would be to increase the stroke width. This would make the distinguishing factor easier to see. Any thoughts? @timClicks ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] GSM/CDMA Modems support (part II)
2009/11/26 Martin Abente mabe...@paraguayeduca.org Hello again everyone! As I mentioned in my last email to de...@lists.laptop.org, there is a real need for a GSM/CDMA usb modem support in our region since thats the most common/available service in rural locations. Have you looked at the project RapidSMS, developed with support from Unicef? [1] RapidSMS is designed to run on any standard computer paired with a standard GPRS modem or certain models of cell phones.[2] I have been lurking on their lists for a while, with my interest in the Sahana Disaster Management System[3], but have gathered that at its core is a python library, pyGSM [4]. I don't know if there is a PyGTK front end. Best of luck! @timClicks [1] http://rapidsms.org/ [2] http://www.rapidsms.org/getting-started/tech-basics/ [3] http://sahana.lk/ [4] http://www.rapidsms.org/code/libraries/ ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] Roadmap to 0.88 --- Proposal
2009/11/25 Simon Schampijer si...@schampijer.de On 11/20/2009 06:43 PM, Walter Bender wrote: Great job!! -walter Any more thoughts? Pros and Cons? Things I have overseen? Wishes? Simon, et al This may be a SoaS issue, but I will press on nevertheless. I would like Fedora man pages included into Sugar. I see this as being a critical part of low floor, no ceiling. Decent documentation about the features the OS and how to run its advanced features is part of that. While I would like it to be on all Sugar installations, I think we have more flexibility with HDD space as deployers with SoaS. Any thoughts? @timClicks ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Testing Summary - 14 Nov 09
Sorry this is late everyone. We mainly focused on the deducto/colour deducto activities as requested. Food Force II was attempted, but the game was highly unstable and we couldn't test any in-game functionality. Time: 11am - 1:30pm, 14 November 2009 Location: Southern Cross, Able Smith St, Wellington Attendees: Not recorded (sorry!) - about 6 *Deducto* First impressions, too hard. Perhaps provide a 'hint' feature. Language: 'true board' vs 'false board' seems to presuppose a knowledge of formal logic. Likewise, the term efficiency, while technically correct, seemed to be a little cold. Perhaps substitute would be 'good' 'great' 'learning', etc etc. We had some problems with the behaviour once the learner had beaten level 10. Whenever a while square is hovered over, it darkens. This makes it look like the squares can be pressed. But they don't actually do anything once they are pressed (even though they change colour and appear to be pressed). Yes/No buttons are very far apart. 'How to Play' - reads like an 'About' section. Quite focused on the teacher/parent, rather than the learner. *Food Force II* At http://activities.sugarlabs.org, there are two activities: Food Force 2 and Food Force II. Recommendation: eliminate the unnecessary one. General issues with stability. The game would crash would without warning, and often fail to start. XO-1 rarely reaches the menu, XO-1.5 usually gets there. We found the main menu lacks sufficient contrast. Tim McNamara http://www.timmcnamara.co.nz http://twitter.com/timClicks ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [IAEP] sugar live cd for windows
2009/10/17 Kevin Cole dc.l...@gmail.com On Tue, Oct 13, 2009 at 13:59, Manusheel Gupta m...@laptop.org wrote: Dear all, Wish to ask you for pointers to improve the performance of SocialCalc activity while running it on Sugar Live CD for Windows. SocialCalc works very well on the native installation of Sugar. Please suggest. Hi, I just wanted to clarify a possible source of confusion in your choice of wording. A Live CD doesn't run on anything, generally speaking. It implies a CD which you boot the entire operating system from. To the best of my knowledge there are no Live Windows Sugar CD's. This perception that the SoaS or a LiveCD runs on or for Windows is not an isolated case: https://answers.launchpad.net/soas/+question/85331 timClicks ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] friendview.py
Hi all, Have just cloned http://git.sugarlabs.org/projects/sugar/repos/mainline and have encountered a fixme in /sugar/src/jarabe/desktop/friendview.py: def _buddy_activity_changed_cb(self, buddy, ps_activity=None): if not ps_activity: self._remove_activity_icon() return # FIXME: use some sort of unknown activity icon rather # than hiding the icon? name = self._get_new_icon_name(ps_activity) if name: self._activity_icon.props.file_name = name self._activity_icon.props.xo_color = buddy.get_color() if not self._activity_icon_visible: self.append(self._activity_icon, hippo.PACK_EXPAND) self._activity_icon_visible = True else: self._remove_activity_icon() I am assuming something generic like a question mark would be fine. Where should that file live? Is it okay in the core sugar directory? Naturally, people will probably want to click on that question mark. Would we be able to have a dialogue like Search for activity %s? % name, which if accepted opens up Browse and searches http://activities.sugarlabs.org to download it? This would be easiest if you can p2p file share activities... I've played around a bit, but it doesn't look especially obvious. Thoughts appreciated :) timClicks ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] Design mockup of a different activity launcher
2009/10/18 Wade Brainerd wad...@gmail.com http://www.youtube.com/watch?v=OvDdN1t-0yE I was in the code and have wanted to try this for awhile! If anyone else thinks it would be better than the pulsing icon, I'll clean up and post the patch to a Feature on the wiki. -1 to removing the pulsating icon. I really like it. I think it's something really unique and special about the Sugar approach. To be honest, I found it one of the most attractive, colourful and playful features I first encountered. Most of the rest of the UI is grey, it's great to have something dynamic and interesting. +1 to the close button. Being unable to cancel is a real pain in the XO-1. Some of the apps seem to hang when loading, and there's no way to know what's going on. Also, it's quite easy to load up a second application, because the menus are not always as responsive as they could be. timClicks ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] Design mockup of a different activity launcher
2009/10/18 Avi fiendi...@gmail.com wrote: Wade wrote: Rationale: 1) Less flashy 2) Clock theme represents time 3) Ability to count how many seconds the launch takes 4) Close button (instead of timeout) when there is an error 5) Possibly less startup overhead; needs to be tested on XO snip /A little bit of thought put into optimization would probably solve the overhead issue. For example, use pre-computed bitmaps instead of that astoundingly inefficient SVG-based algorithm. Also verify that the available hardware is being used effectively. This may be an area where the interests of Sugar Sugar on a Stick may diverge. Sugar on the XO-1 has a determined size. Bitmaps will be fine. Sugar on a Stick requires vector-based images, because we don't know what screen size we'll encounter. My experience with the GCompris applications in SoaS is that all of the controls are horribly rendered. It comes across as unprofessional, especially when introducing Sugar to teachers parents. ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Live CD with network / HDD storage - possible?
Hi all, I came across this note at http://wiki.laptop.org/go/LiveCd, can someone please fill me in on the details of how to achieve this? Much appreciated: It is also possible to use this type of Live CD to create a virtual Sugar lab for a school, where a traditional computer lab's computers are booted into a Sugar environment, storing their data on a networked or other storage device, without changing the lab's installed software. ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [Karma] Re: Conozco Uruguay in karma
2009/10/12 Gabriel Eirea gei...@gmail.com 2009/10/10 Bryan Berry br...@olenepal.org: On Fri, 2009-10-09 at 10:11 -0200, Gabriel Eirea wrote: Gabriel, do you think we could use Inkscape to accomplish this? Yes, I think Inkscape is the right tool. I believe you can also take the bitmap and ask it to extract a vectorized version of the image. This command is available in the menu: Path Trace Bitmap... or a keyboard shortcut Shift + Alt + B ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Fwd: [Marketing] 2009 Free Software Awards
2009/10/8 Rafael Enrique Ortiz Guerrero raf...@sugarlabs.org fyi ..Sugar or it's representative should be nominated :). http://www.fsf.org/news/2009FSAwardsCall Hi all, Apologies for my lack of knowledge. Does Sugar contain any non-free components? ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
[Sugar-devel] Talk at New Zealand PyCon : Support from dev team needed
Hi all, I've been asked by the organisers of the Kiwi PyCon 2009http://nz.pycon.org to give a 45m interactive presentation. There will be about 150 Pythonistas there. Am pretty intimidated, because I'm sure I'll be receiving far more technical questions than I will be able to answer. I guess I have three main Qs: 1) What kinds of things are likely to be of great interest to the general python community? What made you get involved with Sugar? Perhaps I could sow those seeds in local developers' minds... 2) Are there any bite-sized projects (eggs spam) that a hackfest could get involved with over the weekend? 3) Are there any main sized meals (eggs, spam, spam, spam spam) that individuals groups can get involved with on this side of the world? E.g. there seems to be *lots* of Sugar going on, but where is the starting line? Cheers, timClicks http://timmcnamara.co.nz/ http://twitter.com/timClicks ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel
Re: [Sugar-devel] [SoaS] Where should we put our mixture of bugs, feature requests and misunderstandings as we develop curriculum
Hi Caroline, Apologies for not introducing myself to the lists before my first post, but workflow of issues is something that sparked a neuron or two! 2009/10/1 Caroline Meeks carol...@solutiongrove.com As I work with educators to create and write up curriculum we will discover problems. They will be a mixture of Sugar, Activities, SoaS and confusion. There are a bunch of ways we could deal with it. 1. Everything goes into Launchpad soas answers and we sort it out from there. 2. Everything is first posted to IAEP, discussed and sorted out and then put into Dev, Launchpad soas or into a wiki page somewhere or just lost in the mailing list archives 3. Everyone tells me everything and I try to decide where to put it which has obvious problems 4. Everything is put into Trac Here's a suggested workflow: Issue identified with SoaS Add Q https://answers.launchpad.net/soas/ Immediate Q answered Decisions to make Answerer(s) - If substantive, invite query to be discussed on list - If Sugar bug, then port to http://dev.sugarlabs.org/ - If repeated/general Q, then click Add to FAQ Rationale: Launchpad Answers is friendlier to newbies than Trac. Answers allows the user to own the question = they get to decide if their Q was answered sufficently to close the ticket. It's very easy to create a FAQ in Launchpad Answers. Trac is powerful for software development, but is only adequate for user support. Some things (like curriculum changes or substantive issues) deserve to be forwarded to mailing list. Cheers all, Tim http://timmcnamara.co.nz http://twitter.com/timClicks ___ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel