Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Education

Walter Bender — Taking Sugar Beyond the XO Laptop 84

waderoush writes "While the One Laptop Per Child Foundation tries to reboot after drastic staff cuts, Sugar, the original open-source graphical interface for OLPC's XO Laptop, is rapidly evolving into a stand-alone learning platform that can run on any PC. Walter Bender, who left OLPC last year to start the non-profit Sugar Labs, has given a detailed interview about 'Sugar on a Stick' — the USB drive that allows any machine to boot into the Sugar environment. Bender also describes the Sugar upgrades coming in March — including better tools for file management, portfolio presentations, and Python code hacking — and talks about his hopes for expanding Sugar Labs and getting Sugar into more classrooms than OLPC can reach through its hardware."
This discussion has been archived. No new comments can be posted.

Walter Bender — Taking Sugar Beyond the XO Laptop

Comments Filter:
  • by xzvf ( 924443 ) on Thursday February 05, 2009 @02:55PM (#26741733)
    Before everyone that has an XO goes crazy and start dumping on Sugar, please remember the target market. Put it in front of an elementary age student and see how easily they take to it. Of course, I've noticed that they take to even inefficient desktops pretty quickly also. It is old people (like teenagers) that can't handle having an icon moved.
  • View Source (Score:5, Insightful)

    by steveha ( 103154 ) on Thursday February 05, 2009 @03:11PM (#26741989) Homepage

    I read the article, and one of Walter Bender's comments jumped out at me:

    I've said this over and over again since the early 1990s, but the reason why the Web took off as a protocol is that the Mosaic browser had a View Source menu item, which meant that anybody using the Web could also create things for the Web. The idea with Sugar is that anyone using Sugar should also be able to create things with Sugar.

    This is the best thing about Sugar for the long run. In the old days of Apple ][ or Commodore 64 computers, lots of software was written in BASIC; and it wasn't too hard to interrupt the program, look around inside it, and even tweak it a bit. The hardest part was the sucky BASIC language. Now Sugar is being explicitly designed to not only make this kind of tweaking possible, but encourage it and make it as easy as possible. And Python is the best language they could have possibly chosen for encouraging school kids to try to tweak things.

    If you read the article, you can read about how they have extended the "Turtle Art" program to allow programming the turtle movement in Python. So someone can learn trivial programming by chaining control blocks together, and then learn somewhat more advanced programming to script a special block in Python, and then perhaps move from there to tweaking the behavior of other parts of the system.

    P.S. The OLPC project proper seems to be walking away from this sort of constructionist learning; putting Windows on a laptop is the total opposite of the above approach. I really wonder what Negroponte is thinking.

    steveha

  • Re:View Source (Score:5, Insightful)

    by IamTheRealMike ( 537420 ) on Thursday February 05, 2009 @03:35PM (#26742265)

    You'd think so wouldn't you. Actually it doesn't work like that.

    The first problem with their approach is that they actually implemented the whole OS shell in Python. Now I dunno about the Commodore 64, but I remember the BBC Basic and I can assure you, the OS and most apps were not written in BASIC. They were written in assembler because that was the only way to make non-sucky software. Fast-forward to 2009 and it's the same thing - Python is an awful language to make performant, robust software in. And an operating system shell needs to be both fast and solid. Sugar is neither.

    But maybe (maybe) if it was actually feasible for a child to press a key and get exploring, that'd be a price worth paying for the rest. Except it's not. Have you actually read the Sugar code? It's awful. I did a spot-check on this whole claim when Sugar first came out and found it bogus.

    I took the Block Party game (seeing as games are what kids like) and looked at the code. The first problem is the code is completely uncommented. Seriously. The only comments are the license boilerplate at the top. The second problem is the code isn't simple like BASIC used to be. It's object-oriented event-handling GUI code that uses containment based layout, multiple libraries, sound servers, uses magic numbers etc. It'd be hard to figure out for an adult, let alone somebody new to programming. There's no 10 PRINT HELLO WORLD 20 GOTO 10 there.

    So they managed to make a flaky, incredibly resource intensive environment on the grounds that "it's python and kids will love learning programming by reading python" except the code is crap and impenetrable. Fail.

  • by r00t ( 33219 ) on Thursday February 05, 2009 @04:08PM (#26742723) Journal

    Sugar just couldn't deliver. Anybody with a clue about software development could have predicted it.

    Just look at the mess:

    We write an ENTIRELY NEW and FULLY INCOMPATIBLE toy interface in a REALLY SLOW language that is only mildly popular with free software programmers. Meanwhile, we discourage free software developers by helping Microsoft and by using proprietary wireless/EC/keyboard firmware.

    Prior to about 1 year ago, incompatibility was even somewhat considered a virtue!

    Now the OLPC leadership wants to go with XP. Is there any surprise? In their eyes Linux has been confused with the mess that is Sugar. Sugar-free Linux doesn't get considered.

    We could have tweaked a regular Linux desktop for the XO. With far less effort, we'd have far better results. But no, we implement a joke designed by people who've obviously never read The Mythical Man Month and obviously never worked on resource-constrained hardware before.

  • by Burz ( 138833 ) on Thursday February 05, 2009 @04:09PM (#26742745) Homepage Journal

    Worse than that: It'll be a GUI for a toddler that has to be administered by someone with Sysadmin skills, due to lack of poor vertical integration with the rest of the OS.

    We don't need yet another GUI -- We need a reference platform, from the kernel up through the GUI control panel. We need a holistic starting point that tech support departments, end-users and app developers alike can confidently work with (and build deltas from when required).

    This segregation between OS layers isn't working.

  • scrolling iframes (Score:4, Insightful)

    by Tetsujin ( 103070 ) on Thursday February 05, 2009 @04:32PM (#26743205) Homepage Journal

    I have an old friend who commented that having to use a horizontal scrollbar in an iframe on a web page was "soooo hard". You can't and shouldn't try to please everybody.

    Horizontal scroll is evil, and any kind of scroll on an iframe is doubly evil. So what you've got there is 2*evil^2

    Why is this? Well, when you're dealing with a language that's formatted like English - that is, rows of text, horizontal scroll means you have to scroll twice for each line. UI generally isn't very well suited to scrolling in more than one direction, either - except in cases where you can scroll by dragging the content, it usually requires going from one scrollbar to the other to find your info.

    Now, combine that with the problems caused by scrolling an iframe - specifically, the scrollbars for the iframe are themselves part of scrolled content - so if you scroll up or left one of your scrollbars may disappear completely - or you may scroll up in the main window to view the top half of your iframe, scroll down to read the bottom half... Click the iframe scrollbar to page down the iframe and then scroll back up on the main window to see the top half of the iframe again...

    Saying that this process makes working with such a page "hard" isn't exactly a good, clear expression of what's wrong with it... But there's lots of things wrong with an interface like that. It's just bad design, bad design that goes beyond the realm of ignorance and into incompetence.

  • Re:View Source (Score:5, Insightful)

    by forkazoo ( 138186 ) <wrosecrans@@@gmail...com> on Thursday February 05, 2009 @08:47PM (#26746655) Homepage

    While you are largely correct, I think you missed the point. The kids that would be using sugar aren't going to read the python code and try to determine what the program is doing. Rather, they will look for something that looks vaguely similar to what they want to change, change something about it, and see what happens. Repeat enough times, and they're starting to get an understanding of Python and programming. I don't know about you, but when I saw my first program code, I didn't read it top to bottom for an understanding, I skimmed it for words that I was interested in, and started changing stuff.

    Yeah, IME, when a tinkerer kid gets ahold of source to their favorite toy, the first task is usually just to start changing text strings, so that in the game where you normally visit the "Medicine Shop," in the new customised modded version the player character is now able to visit the "Poop Shop." It's not proper programming in any real sense, but it gives the kid a chance to start interacting with the system, and feel that he has power over it. Some sort of weird manifestation about the magic schtick where if you know the true name of something you can have power over it. Once you know the true name of the variable that holds the name you are interested in, you can make it anything. "Crap Shop" "Stupid Shop" even "Dookie Head Fart Sho" when you suddenly discover that the game has a limit on the length of the name and won't shop you the last p. Then, you start looking at the code around the "discovery" of teh particular variable and you find some reference to a font and a font size, and you make the text smaller, etc. Suddenly you've had to learn more syntax for the sake of exploring your childish vulgarity.

    IMO, it's important not to underestimate that sort of childish hobby tinkering, even when the available code isn't good for or meant for teaching. The point is learning, not teaching.

The only possible interpretation of any research whatever in the `social sciences' is: some do, some don't. -- Ernest Rutherford

Working...