Changes

Line 4: Line 4:     
===Key Design Principles===
 
===Key Design Principles===
''Low floor, no ceiling.''
+
''Low floor, no ceiling:'' this mantra should guide your development efforts for OLPC.  All activities and interfaces should be designed in such a way as to be simple and intuitive to users of all age groups, nationalities, and levels of computer experience. At the same time, we don't wish to impose unnecessary limitations on the software either.  Instead, we hope to create a platform suitable for all kinds of creative expression which provides a low floor to the inexperienced, but doesn't impose a ceiling upon those who are.  This is a worthy goal, but will require a genuine effort on the part of developers, who must take many aspects of design into account.  The following list, while certainly not comprehensive, provides a starting point for such considerations.
 +
 
    
====Performance====
 
====Performance====
The OLPC laptop bucks the trend of "more, faster, fatter"; we aim to provide a computer tailored to the needs of children in the context of their learning, not to the needs of frantic video games or office applications. We are, however, working within constraints of component cost, robustness, and power consumption. To satisfy these constraints, we have opted for NAND flash rather than a harddisk and a modest 128MB of memory (Please see [[Hardware_Specification|hardware specifications]]). Thus developers must make every effort to write efficient code while minimizing memory usage.
+
The OLPC laptop bucks the trend of "more, faster, fatter"; we aim to provide a computer tailored to the needs of children in the context of their learning, not to the needs of frantic video games or office applications. We are, however, working within constraints of component cost, robustness, and power consumption. To satisfy these constraints, we have opted for NAND flash rather than a hard disk and a modest 128MB of memory (Please see [[Hardware_Specification|hardware specifications]]). Thus, developers must make every effort to write efficient code while minimizing memory usage.
   −
Since there is no swap space on the laptop, only a limited number of activities can run concurrently; the Sugar UI exposes these details directly to the user. The [[OLPC Human Interface Guidelines/The Laptop Experience/Zoom Metaphor#Home|Home]] screen features an activity ring that contains icons representing each instance of an open [[OLPC Human Interface Guidelines/Activities|activity]]. The size of the ring segment that a given activity occupies represents its overall memory usage; when the ring fills up, no additional activities may be launched until some resources are freed up. Take these limitations into account as you develop activities, since they will have a greater impact on the performance of your software on the laptop than on other platforms.
+
Since there is no swap space on the laptop, only a limited number of activities can run concurrently; the Sugar UI exposes these details directly to the children. The [[OLPC Human Interface Guidelines/The Laptop Experience/Zoom Metaphor#Home|Home]] screen features an activity ring that contains icons representing each instance of an open [[OLPC Human Interface Guidelines/Activities|activity]]. The size of the ring segment that a given activity occupies represents its overall memory usage; when the ring fills up, no additional activities may be launched until some resources have been freed. Take these limitations into account as you develop activities, since they will have a greater impact on the performance of your software on the laptop than on other platforms.
    
====Usability====
 
====Usability====
OLPC places an emphasis on discoverability and usability due to our [[OLPC_Human_Interface_Guidelines/Design Fundamentals#Know_Your_Audience|target audience]]. Usability has everything to do with the actual behavior of the activities, the layout of the buttons and tools, and the feedback that the interface provides to the user through interaction.  Ultimately, the design decisions that make your activities usable will depend greatly on the type of activity you are developing, and it will be up to you to consider carefully the kinds of interactions users will expect when presented with it. As a general rule, if the interface provided does what the child expects it to, you are off to a good start.  However, since it is quite difficult to know what they will expect—and in practice not all children will expect the same things—there is no substitute for user testing.
+
OLPC places an emphasis on discoverability and usability due to our [[OLPC_Human_Interface_Guidelines/Design Fundamentals#Know_Your_Audience|target audience]]. Usability has everything to do with the actual behavior of the activities, the layout of the buttons and tools, and the feedback that the interface provides to the children when they interact with it.  Ultimately, the design decisions that make your activities usable will depend greatly on the type of activity you are developing, and it will be up to you to consider carefully the kinds of interactions that the children will expect when presented with it. As a general rule, if the interface provided does what the child expects it to, you are off to a good start.  However, since it is quite difficult to know what they will expect—and in practice not all children will expect the same things—there is no substitute for user testing.
    
====Simplicity====
 
====Simplicity====
We designed the entire laptop interface with a goal of simplicity. It can be tempting—and also quite easy—to add an overabundance of features to software: the abundance of MIPS and memory exacerbate the software-bloat phenomenon. The laptop hardware "limitations" lead toward a more concise direction and aid in designing for simplicity.
+
We designed the entire laptop interface with a goal of simplicity. It can be tempting—and also quite easy—to add an overabundance of features to software: the abundance of MIPS and memory often exacerbate the software-bloat phenomenon. The laptop hardware "limitations" lead toward a more concise direction and aid in designing for simplicity.
    
Keep in mind that simple doesn't necessarily mean limited. OLPC hopes to demonstrate to the world that simple—even minimal—controls can have great expressive power. Avoid bloated interfaces that do too much, and limit the controls to those immediately relevant to the task at hand. Rather than creating a "Swiss Army knife" of an activity, think of the laptop itself as the knife, and instead develop a particular tool for that knife that does one thing, and does it very well.  When all the activities on the laptop embrace this idea, the true power of the laptop will emerge.
 
Keep in mind that simple doesn't necessarily mean limited. OLPC hopes to demonstrate to the world that simple—even minimal—controls can have great expressive power. Avoid bloated interfaces that do too much, and limit the controls to those immediately relevant to the task at hand. Rather than creating a "Swiss Army knife" of an activity, think of the laptop itself as the knife, and instead develop a particular tool for that knife that does one thing, and does it very well.  When all the activities on the laptop embrace this idea, the true power of the laptop will emerge.
Line 26: Line 27:     
====Adaptability====
 
====Adaptability====
There are several variable use conditions that should be taken into consideration in designing activities: the laptop has both a grayscale (sunlight) mode and a color (backlight) mode; the mesh—while always available—may or may not be connected to the Internet at the time the activity is active; the laptop may be configured in either laptop mode (keyboard and touchpad exposed) or [[OLPC Human Interface Guidelines/The Sugar Interface/Input Systems#"Hand-held" Mode|handheld mode]] (game controller, camera, microphone and speakers only). Signal strengths, and therefore bandwidth, may fluctuate, and at times activity partipants may even drop off temporarily. Activities should handle all of these cases with care. E.g., temporary loss of connectivity should be handled silently, and reconnection of an individual to an activity they were previously participating in should happen with no noticeable side-effects as outlined in the guidelines for [[OLPC Human Interface Guidelines/Activities/Activity Basics#Activity Robustness|activity robustness]].
+
There are several use conditions that should be taken into consideration in designing activities: the laptop has both a grayscale (sunlight) mode and a color (backlight) mode; the mesh—while always available—may or may not be connected to the Internet at the time the activity is active; the laptop may be configured in either laptop mode (keyboard and touchpad exposed) or [[OLPC Human Interface Guidelines/The Sugar Interface/Input Systems#"Hand-held" Mode|handheld mode]] (game controller, camera, microphone and speakers only). Signal strengths, and therefore bandwidth, may fluctuate, and at times activity partipants may even drop off temporarily. Activities should handle all of these cases with care. E.g., temporary loss of connectivity should be handled silently, and reconnection of an individual to an activity they were previously participating in should happen with no noticeable side-effects as outlined in the guidelines for [[OLPC Human Interface Guidelines/Activities/Activity Basics#Activity Robustness|activity robustness]].
    
====Recoverability====
 
====Recoverability====
Line 41: Line 42:     
====Mobility====
 
====Mobility====
 +
 +
Of course, as with all portable computers, a general notion of mobility is intrinsic to the laptops.  However, in the hands of children, this mobility rises to a new level, since we can expect that they will carry them not only to and from school, but on a hike, onto the playground, or to any number of other locations where they can learn and experience the world.  Their physical form has been designed with ruggedness in mind.  The important thing to consider is the effect such mobility can, and should have on the activities themselves.  The lens of the built-in camera looks a lot different when it's treated not as a simple webcam, but as a way to capture the world around them, both indoors and out.
    
====Transparency====
 
====Transparency====
87

edits