Walter Bender — Taking Sugar Beyond the XO Laptop
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."
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.
I read the article, and one of Walter Bender's comments jumped out at me:
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
lf(1): it's like ls(1) but sorts filenames by extension, tersely
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.
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.
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.
Bow-ties are cool.