Developers manual: Difference between revisions

From OLPC
Jump to navigation Jump to search
No edit summary
m (Reverted edits by 90.204.70.9 (Talk); changed back to last version by Mchua)
Line 1: Line 1:
{{Translations}}
{{Developers}}
{{ Latest Releases
| stable = inline
| devel = inline
| livecd = inline
| firmware = inline
| server = inline
| extra = inline
| extra_text
}}

<div style="margin: 20; padding-left: 30; padding: 10; border: black thin solid; background-color: #e0ffe0">This is a quick intro to working on activities for the XO, and other code for OLPC. Feel free to add to and update the manual; it is a work in progress.</div>

This manual tries to provide you with the answers you need to get started either by contributing to existing projects or starting your own. Although it focuses on the software development side of the process, we are also very interested in encouraging [[Participate|other contributions]].

== Overview ==
* [[Developers/Setup]]
** Describes how to set up a [[Sugar]] development environment on your PC or workstation. It discusses emulation, running Sugar OS natively or in a virtual machine, cross compiling, and some configuration options. It also includes a discussion of which approach is likely to be the most appropriate for you
* [[Test Config Notes]]
** If you have an XO, this page has many useful configuration tips for testing your application.
* [[Developers/Stack]]
** Describes the choices of programming languages and "software stacks" for developing code on the OLPC. It details the base stack of hardware, firmware, operating system and the [[Sugar]] environment. It then gives options for programming in Python, Squeak, C/C++ and other languages or activities.
* [[Developers/Issues]]
** Describes the special considerations required for working on the OLPC project, particularly those driven by our target hardware and deployment environments
* [[Developers/Projects]]
** Suggests ways to choose a particular project, whether one that already exists, or one of your own, and how to start working on the project once you have chosen it
* [[Developers/Communication]]
** Describes the various support and communications channels used by the project, including how to get help with problems, and how to set up your own per-project communications channels
* [[Developers/Documentation]]
** Collects pointers to the various sources of documentation available for the project. Helping us better document our code is always a welcome contribution.
* [[Developers/FAQ]]
** Collects and attempts to answer common questions that developers have when working on the Sugar platform

== Release Schedule ==

We expect to be doing updates monthly through the first quarter of 2008. After that, we will likely adopt a three-month update cycle. Eventually we will adopt a six-month update cycle. It should also be noted that we will be—when time permits—moving to a build environment that enables individual activity developers to maintain their own build cycles.


== Related docs and manuals ==
* [[PyGTK/Hello World Tutorial]]
* [[Beyond Hello World]]
* [[Simplified users guide]]
*[[Developer/GettingStarted | Getting Started]]
* [http://www.olpcaustria.org/mediawiki/index.php/Activity_handbook Activity Handbook] -- a somewhat slower, more detailed tutorial-style presentation, assumes less knowledge of the project's background
* [https://www6.software.ibm.com/developerworks/education/l-sugarpy/l-sugarpy-pdf.pdf Application Development for the OLPC Laptop] (Tim Jones of IBM)
* [[Activation_and_Developer_Keys|Instructions for getting a Developer Key]]

[[Category:Developers]]
[[Category:Software development]]

Revision as of 19:53, 20 June 2008

  english | 한국어español HowTo [ID# 139919]  +/-  



This is a quick intro to working on activities for the XO, and other code for OLPC. Feel free to add to and update the manual; it is a work in progress.

This manual tries to provide you with the answers you need to get started either by contributing to existing projects or starting your own. Although it focuses on the software development side of the process, we are also very interested in encouraging other contributions.

Overview

  • Developers/Setup
    • Describes how to set up a Sugar development environment on your PC or workstation. It discusses emulation, running Sugar OS natively or in a virtual machine, cross compiling, and some configuration options. It also includes a discussion of which approach is likely to be the most appropriate for you
  • Test Config Notes
    • If you have an XO, this page has many useful configuration tips for testing your application.
  • Developers/Stack
    • Describes the choices of programming languages and "software stacks" for developing code on the OLPC. It details the base stack of hardware, firmware, operating system and the Sugar environment. It then gives options for programming in Python, Squeak, C/C++ and other languages or activities.
  • Developers/Issues
    • Describes the special considerations required for working on the OLPC project, particularly those driven by our target hardware and deployment environments
  • Developers/Projects
    • Suggests ways to choose a particular project, whether one that already exists, or one of your own, and how to start working on the project once you have chosen it
  • Developers/Communication
    • Describes the various support and communications channels used by the project, including how to get help with problems, and how to set up your own per-project communications channels
  • Developers/Documentation
    • Collects pointers to the various sources of documentation available for the project. Helping us better document our code is always a welcome contribution.
  • Developers/FAQ
    • Collects and attempts to answer common questions that developers have when working on the Sugar platform

Release Schedule

We expect to be doing updates monthly through the first quarter of 2008. After that, we will likely adopt a three-month update cycle. Eventually we will adopt a six-month update cycle. It should also be noted that we will be—when time permits—moving to a build environment that enables individual activity developers to maintain their own build cycles.


Related docs and manuals