Changes

Jump to navigation Jump to search
m
no edit summary
Line 33: Line 33:  
:'''Scope''': We would need to architect and build a UI abstraction layer that would enable users of different age groups to experience the system differently. This should be achieved requiring minimal change on part of the rest of the code base, especially activities. But a UI abstraction framework is a lot of work, for something that we aren't even sure we need. Hence I could start paving way for what could eventually become a framework, but still manage to contribute something significant and useful for the community in these 3 months. Lets take the feature of discoverability of context menus and keyboard shortcuts. I could work on bringing this feature into Sugar as part of GSoC. But do younger children need context menus or keyboard shortcuts ? Can the clues for enhancing discoverability of such features lead to confusion for those who dont need it ? So depending upon the age of the user using the system (obtained from user profile), the system could choose to expose clues to certain features or not. (We can even think about exposing/hiding certain features depending upon age. But I am hesitant to go in that direction unless there is a clear reason/evidence to do so). I will limit my target groups to two. The exact age ranges of the two groups can be fixed after a bit of exploration (6-10 and 11-15 ? Work by [http://scholar.google.ca/scholar?hl=en&q=author:%22Allison+Druin%22+author:%22Ben+Bederson%22&btnG=Search&lr=lang_en&as_sdt=2000&as_ylo=&as_vis=0 Allison Druin and Ben Bederson] seems to suggest that Children start thinking differently after 10). I believe that this part can be done in 3 months. I believe that this effort could also evolve to help [http://www.olpcnews.com/use_cases/community/one_xo_laptop_grandmother.html senior citizens] eventually.
 
:'''Scope''': We would need to architect and build a UI abstraction layer that would enable users of different age groups to experience the system differently. This should be achieved requiring minimal change on part of the rest of the code base, especially activities. But a UI abstraction framework is a lot of work, for something that we aren't even sure we need. Hence I could start paving way for what could eventually become a framework, but still manage to contribute something significant and useful for the community in these 3 months. Lets take the feature of discoverability of context menus and keyboard shortcuts. I could work on bringing this feature into Sugar as part of GSoC. But do younger children need context menus or keyboard shortcuts ? Can the clues for enhancing discoverability of such features lead to confusion for those who dont need it ? So depending upon the age of the user using the system (obtained from user profile), the system could choose to expose clues to certain features or not. (We can even think about exposing/hiding certain features depending upon age. But I am hesitant to go in that direction unless there is a clear reason/evidence to do so). I will limit my target groups to two. The exact age ranges of the two groups can be fixed after a bit of exploration (6-10 and 11-15 ? Work by [http://scholar.google.ca/scholar?hl=en&q=author:%22Allison+Druin%22+author:%22Ben+Bederson%22&btnG=Search&lr=lang_en&as_sdt=2000&as_ylo=&as_vis=0 Allison Druin and Ben Bederson] seems to suggest that Children start thinking differently after 10). I believe that this part can be done in 3 months. I believe that this effort could also evolve to help [http://www.olpcnews.com/use_cases/community/one_xo_laptop_grandmother.html senior citizens] eventually.
   −
:'''Maintainability''': One concern that I have and is shared by [[User:TimClicks|TimClicks]] (via #sugar) is about the additional challenges this would place on the rest of the code base in terms of maintainability. There is a wide range of approaches we can take to implementing the UI abstraction layer. At one end of the spectrum we have the simple but cumbersome solution wherein each target system feature is tagged manually according to the target age, for example. But this would eventually lead to a maintenance nightmare. On the other end we have a complex elegant system that categorizes features automatically. This again I think is not realistic to achieve. What could work is a system that takes the middle ground. I could start off from the manual end of the spectrum with a very limited set of features (e.g. context menu and/or keyboard shortcuts) and get it done within GSoC. After GSoC, we could evolve the system crystallizing design guidelines based on user studies and using it to slowly push the system further along the spectrum and bringing more of the system under the abstraction layer along the way.
+
:'''Maintainability''': One concern that I have and is shared by [[User:TimClicks|TimClicks]] (via #sugar) is about the maintenance challenges. There is a wide range of approaches we can take to implementing the UI abstraction layer. At one end of the spectrum we have the simple but cumbersome solution wherein each target system feature is tagged manually according to the target age, for example. But this would eventually lead to a maintenance nightmare, requiring changes whenever a relevant part of the system (for e.g., glucose) is changed. On the other end we have a complex elegant system that categorizes features automatically. This again I think is not realistic to achieve. What could work is a system that takes the middle ground. I could start off from the manual end of the spectrum with a very limited set of features (e.g. context menu and/or keyboard shortcuts) and get it done within GSoC. After GSoC, we could evolve the system crystallizing design guidelines based on user studies and using it to slowly push the system further along the spectrum and bringing more of the system under the abstraction layer along the way.
    
:'''Similar efforts''': Some of the more popular programs have started developing a version for children. For example Openoffice has [http://wiki.ooo4kids.org/index.php/Main_Page Ooo4kids]. Inkscape is considering a [https://blueprints.launchpad.net/inkscape/+spec/kidscape-project version targeted at children]. But these efforts are different from this proposal in that they were built for adults and are now being re-designed for children. Still, I think that there is an opportunity for learning from these and similar efforts.
 
:'''Similar efforts''': Some of the more popular programs have started developing a version for children. For example Openoffice has [http://wiki.ooo4kids.org/index.php/Main_Page Ooo4kids]. Inkscape is considering a [https://blueprints.launchpad.net/inkscape/+spec/kidscape-project version targeted at children]. But these efforts are different from this proposal in that they were built for adults and are now being re-designed for children. Still, I think that there is an opportunity for learning from these and similar efforts.
Line 113: Line 113:  
<!--Give 3 answers, each 1-3 paragraphs in length. The first one should be yours. The other two should be answers from members of the Sugar Labs community, at least one of whom should be a Sugar Labs GSoC mentor. Provide email contact information for non-GSoC mentors.-->
 
<!--Give 3 answers, each 1-3 paragraphs in length. The first one should be yours. The other two should be answers from members of the Sugar Labs community, at least one of whom should be a Sugar Labs GSoC mentor. Provide email contact information for non-GSoC mentors.-->
 
:Sugar (& OLPC), I believe, is based on the principles of Constructionism. Discoverability and learnability of the system features with minimal external help hence becomes very important factors. This project will pave way for a framework for improving the discoverability of the features of the system in a customized manner depending upon the individual using the system. I am going to bank upon only one factor: age. But once the framework is mature (~12 months), I can imagine various extensions being developed that take into account other differences: culture, previous experience with technology, physical disabilities.. to name a few. This will immensely improve the system's reach and usability among the millions of children using it every day. This could also enable activity and system developers to target certain features at specific group of users without worrying too much about whether it makes sense to have the feature for all users or whether the UI is getting too cluttered/complicated or if the system is going to suffer from feature creep.. etc.
 
:Sugar (& OLPC), I believe, is based on the principles of Constructionism. Discoverability and learnability of the system features with minimal external help hence becomes very important factors. This project will pave way for a framework for improving the discoverability of the features of the system in a customized manner depending upon the individual using the system. I am going to bank upon only one factor: age. But once the framework is mature (~12 months), I can imagine various extensions being developed that take into account other differences: culture, previous experience with technology, physical disabilities.. to name a few. This will immensely improve the system's reach and usability among the millions of children using it every day. This could also enable activity and system developers to target certain features at specific group of users without worrying too much about whether it makes sense to have the feature for all users or whether the UI is getting too cluttered/complicated or if the system is going to suffer from feature creep.. etc.
 +
:[[User:TimClicks|TimClicks]] (via #sugar): ''I am really intruiged. I like the idea of sugar growing with the user.''
 
; 2. <!--Sugar Labs will be working to set up a small (5-30 unit) Sugar pilot near each student project that is accepted to GSoC so that you can immediately see how your work affects children in a deployment. We will make arrangements to either supply or find all the equipment needed.--> Do you have any ideas on where you would like your deployment to be, who you would like to be involved, and how we can help you and the community in your area begin it?
 
; 2. <!--Sugar Labs will be working to set up a small (5-30 unit) Sugar pilot near each student project that is accepted to GSoC so that you can immediately see how your work affects children in a deployment. We will make arrangements to either supply or find all the equipment needed.--> Do you have any ideas on where you would like your deployment to be, who you would like to be involved, and how we can help you and the community in your area begin it?
 
:I would like a deployment center at UBC, Vancouver. I will also work with my university in locating students to try out the UI through the university's summer programs and other outreach efforts such as Science exhibition fairs. If possible I would like to observe children using the UI before beginning coding.
 
:I would like a deployment center at UBC, Vancouver. I will also work with my university in locating students to try out the UI through the university's summer programs and other outreach efforts such as Science exhibition fairs. If possible I would like to observe children using the UI before beginning coding.
48

edits

Navigation menu