Difference between revisions of "Features/Introduction Tutorial"

From Sugar Labs
Jump to navigation Jump to search
Line 44: Line 44:
 
''What work do the developers have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?''
 
''What work do the developers have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?''
  
 +
=== Sugar Modifications ===
 +
The major changes to Sugar consist in introducing two new concepts, Probes and Overlays and an additional service in the sugar-session. 
  
 +
Probes allow obtaining events from Activities/Shell and the execution of arbitrary actions from a separate process. This ability should be reviewed in light of the security policy of Sugar. 
 +
 +
Overlays are Layouts or Windows used to draw custom graphics on top of Activities, the Frame, the Journal or any Sugar View. A more complete description for Probes and Overlays is given in the Tutorius Architecture document referred in the Documentation section.
 +
 +
The service in the sugar-session adds an Engine to execute tutorials, a registering mecanism to register and unregister Probes when Activities are started and stopped and a dbus interface to start and stop tutorials.
 +
 +
Those changes involve modifications of less than 100 lines of code in the existing Sugar code base but add a number of new files and concepts.
 +
 +
=== Tasks ===
  
 
==UI Design==
 
==UI Design==

Revision as of 20:35, 13 March 2010



Summary

Provide an interactive introduction to Sugar for first-time users.

Owner

Current status

  • Targeted release: 0.90
  • Last updated: 03-13-2010
  • Percentage of completion: 10%

Detailed Description

The proposal consists in providing a default interactive tutorial for Sugar that will give an overview of the particularities of the Sugar interface.

The proposal aims at giving an overview of the Frame, the different Views, the Journal, Browse and Write in a single tutorial.

The tutorial should be stored in the user home directory, alongside any activity data, as an XML file representing the execution states of the tutorial.

Translation of the tutorial should be made using the gettext convention by storing translations of the tutorial strings along side the XML file using the gettext schema (.po, .pot, .mo files).

The tutorial should be independent of the screen resolution.

For the 0.90 release, the tutorial won't be user modifiable other than by modifying the XML format by hand, which won't be recommended.

Benefit to Sugar

This feature should lower the barrier of entry to Sugar by making it easier to learn the platform by having to resort less to external documentation.

As discussed with Gerald Ardito, picking up Activities seems to work well for most students. However, getting used to the specific idioms of Sugar requires more efforts and therefore would benefit from having tutorials.

Scope

What work do the developers have to accomplish to complete the feature in time for release? Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?

Sugar Modifications

The major changes to Sugar consist in introducing two new concepts, Probes and Overlays and an additional service in the sugar-session.

Probes allow obtaining events from Activities/Shell and the execution of arbitrary actions from a separate process. This ability should be reviewed in light of the security policy of Sugar.

Overlays are Layouts or Windows used to draw custom graphics on top of Activities, the Frame, the Journal or any Sugar View. A more complete description for Probes and Overlays is given in the Tutorius Architecture document referred in the Documentation section.

The service in the sugar-session adds an Engine to execute tutorials, a registering mecanism to register and unregister Probes when Activities are started and stopped and a dbus interface to start and stop tutorials.

Those changes involve modifications of less than 100 lines of code in the existing Sugar code base but add a number of new files and concepts.

Tasks

UI Design

Does the feature have a direct impact on the work flow, or does it need a UI? Link here mockups, or add detailed descriptions. This tutorial should be accessible from the first login screen, right after the color selection, and from the option menu:

login1-300x226.png options-300x225.png

The tutorial will provide an overview of the Desktop, the Group and the Neighborhood Views as well as the Frame, the Journal, the Write and the Browse activity. Here are screenshots of what it might look like for some of them.

desktop-300x214.png neighborhood-300x214.png journal-300x216.png write-300x216.png

The information presented to the user will be essentially composed of bubble messages pointing at screen elements. Progress through the tutorial will be accomplished by the user clicking a next button at the bottom of the screen. Once the tutorial is over, the user will be brought back to the Desktop screen where she will be able to resume interacting with the system normally. At any time during the tutorial, the user can press the Stop button to interrupt the current tutorial an return to the original place where she was at first.


How To Test

Features/Introduction Tutorial/Testing


User Experience

The tutorial won't affect the regular workflow or experience for the platform other than providing a tutorial on the first connexion.

Dependencies

None.

Contingency Plan

Revert to the previous release behavior.

Documentation

The following document provides a high-level view of the Tutorius Architecture. The original system was more powerful since it allowed Creation and Sharing of tutorials from within Sugar also. However, for the purpose of this feature proposal and to ease integration, only the Execution of tutorials will be considered. For the time being, any reference to the Store, the Workshop, the Creator and the Remote may safely be ignored. They are kept in case a further integration of those tools is accepted by the community in a later release.

The execution scenarios presented are not completely up-to-date and will be revised in the next weeks. For the time being, the most interesting part should be the component diagrams and descriptions.

Release Notes

A default interactive tutorial is provided on the first login to help familiarize a new user to Sugar. This tutorial can also be replayed anytime from the option menu.

Comments and Discussion