Difference between revisions of "Taxonomy"

From Sugar Labs
Jump to navigation Jump to search
(New page: Benjamin M. Schwartz has proposed a taxonomy for the various Sugar components to remedy an ongoing naming problem. "I think Sugar has a naming problem. There are a lot of different digit...)
 
m
Line 15: Line 15:
 
or other names."
 
or other names."
  
==Component: The abstract design of the interface==
+
==Sweet: The abstract design of the interface==
  
Codename: Sweet (the taste of sugar)
+
''(the taste of sugar)''
  
 
Description: "Sweet" is the abstract design of the interface's appearance
 
Description: "Sweet" is the abstract design of the interface's appearance
Line 24: Line 24:
 
component's second major release, or perhaps 2.0-alpha.
 
component's second major release, or perhaps 2.0-alpha.
  
==Component: The base Sugar environment==
+
==Glucose: The base Sugar environment==
  
Codename: Glucose (the fundamental, simple sugar used by all life forms)
+
''(the fundamental, simple sugar used by all life forms)''
  
 
Description: Glucose is the minimal system that must be added to a
 
Description: Glucose is the minimal system that must be added to a
Line 36: Line 36:
 
except those like the Journal that are non-optional.
 
except those like the Journal that are non-optional.
  
==Component: A set of demonstration activities==
+
==Fructose: A set of demonstration activities==
  
Codename: Fructose (the main sugar in fruit, which is how we're supposed
+
''(the main sugar in fruit, which is how we're supposed to get our sugar)''
  
to get our sugar.)
 
 
Description: The Sugar developers will need  some example set of
 
Description: The Sugar developers will need  some example set of
 
activities with which to demonstrate Sugar.  This set is Fructose.  The
 
activities with which to demonstrate Sugar.  This set is Fructose.  The
Line 49: Line 48:
 
their own Activity sets.
 
their own Activity sets.
  
==Component: The interface, plus a set of demonstration activities==
+
==Sucrose: The interface, plus a set of demonstration activities==
  
Codename: Sucrose ("table sugar", the kind you buy in the store.  It
+
''("table sugar", the kind you buy in the store.  It consists of glucose and fructose, combined)''
consists of glucose and fructose, combined.)
 
  
 
Description: Sucrose consists of both Glucose and Fructose.  It therefore
 
Description: Sucrose consists of both Glucose and Fructose.  It therefore
Line 60: Line 58:
 
"Wow! Look at all the cool capabilities that this system has!".
 
"Wow! Look at all the cool capabilities that this system has!".
  
==Component: The base Linux distribution being used by Sugar==
+
==Ribose: The base Linux distribution being used by Sugar==
  
Codename: Ribose (the sugar used by all lifeforms to control their
+
''(the sugar used by all lifeforms to control their hardware, in the form of RNA.  It's important, but not sweet)''
hardware, in the form of RNA.  It's important, but not sweet.)
 
  
 
Description: Ribose is the set of hardware-centric software components
 
Description: Ribose is the set of hardware-centric software components
Line 71: Line 68:
 
to install Glucose if it has not yet been installed.
 
to install Glucose if it has not yet been installed.
  
==Component: A complete disk image for Sugar==
+
==Starch(es): A complete disk image for Sugar==
  
Codename: A starch (starch is composed of multiple sugars bonded together.)
+
''(starch is composed of multiple sugars bonded together)''
  
 
Description: We often distribute complete disk images for Sugar, ready to
 
Description: We often distribute complete disk images for Sugar, ready to

Revision as of 16:52, 16 May 2008

Benjamin M. Schwartz has proposed a taxonomy for the various Sugar components to remedy an ongoing naming problem.

"I think Sugar has a naming problem. There are a lot of different digital objects being produced by this project, and referring to all of them as Sugar is becoming increasingly confusing. For example, the discussion about "Sugar on Windows" has been all but incomprehensible, because each author means something entirely different by the term "Sugar". Similarly, the recent proposals for "inclusion in Sugar" are extremely confusing, since these components will not be required to run Sugar.

"To resolve this, I am going to attempt to list a number of important, distinct digital objects that this work has produced. I will also introduce cutesy codenames. I hope that the Sugar developers will adopt a clear set of distinct names, and I do not care if they choose these names or other names."

Sweet: The abstract design of the interface

(the taste of sugar)

Description: "Sweet" is the abstract design of the interface's appearance and behavior, independent of any code actually implementing this style. The mockups at http://wiki.laptop.org/go/Designs represent this component's second major release, or perhaps 2.0-alpha.

Glucose: The base Sugar environment

(the fundamental, simple sugar used by all life forms)

Description: Glucose is the minimal system that must be added to a standard Linux distribution in order to enable Activities to run. This includes all the python code and graphics files that implement the shell, as well as the Journal. Glucose's dependencies may include xorg-server, xulrunner, squeakvm, rainbow, etc. Some of these dependencies may be marked optional by distributions. Glucose does not include any Activities except those like the Journal that are non-optional.

Fructose: A set of demonstration activities

(the main sugar in fruit, which is how we're supposed to get our sugar)

Description: The Sugar developers will need some example set of activities with which to demonstrate Sugar. This set is Fructose. The packages in Fructose should be selected to make the resulting environment as impressive as possible for a potential client or user. Packages should therefore be stable, polished, and exercise the widest possible range of features. Fructose may also serve as an example for people constructing their own Activity sets.

Sucrose: The interface, plus a set of demonstration activities

("table sugar", the kind you buy in the store. It consists of glucose and fructose, combined)

Description: Sucrose consists of both Glucose and Fructose. It therefore represents a complete example Sugar environment, ready to be installed through a package manager. The purpose of Sucrose is so that prospective deployers can install the "sugar-sucrose" package, and immediately say "Wow! Look at all the cool capabilities that this system has!".

Ribose: The base Linux distribution being used by Sugar

(the sugar used by all lifeforms to control their hardware, in the form of RNA. It's important, but not sweet)

Description: Ribose is the set of hardware-centric software components that have been developed throughout this project. It includes the XO kernels, OHM, any init-script customizations, etc. Ribose should be construed as including all components necessary to boot the system, enough to install Glucose if it has not yet been installed.

Starch(es): A complete disk image for Sugar

(starch is composed of multiple sugars bonded together)

Description: We often distribute complete disk images for Sugar, ready to boot. These images are composed of multiple elements of the above stack. ~ For example, the current Joyride images are composed of Ribose (the non-graphical work) and Glucose (the shell) but not Fructose (the activity package). Each image series should be named separately, to minimize confusion. For cutesy codenames, we could have a development build ("glycogen", a starch used to produce Glucose) and a stable build ("cellulose", an extremely stable starch).