Developers/Documentation: Difference between revisions
(Splitting out the documentation resources) |
(Added translation templates) |
||
(16 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
{{Developers}} |
|||
⚫ | |||
{{Translations}} |
|||
⚫ | |||
By this point, you should have a working Sugar environment (or a substitute for it), a project idea, and an idea how and where to ask for help if you have problems. The next step is to actually start coding. |
|||
⚫ | As with most software projects, we have difficulties with documentation. We are '''very''' interested in finding people interested in documenting the system. If you are |
||
= Tutorials = |
|||
[[Developers/Stack#Python/PyGTK|PyGTK]] developers will find a collection of [[Tutorials]] available, from very simple Hello World projects to an in-depth description of the development of [[Block Party]]. |
|||
See the [[Tutorials]] page for introductory and quick-start tutorials. Game developers will likely want to focus on: |
|||
[[Developers/Stack#OLPCGames|Pygame]] developers will likely want to start with: |
|||
* [[Game Development Newbies]] -- general introduction |
* [[Game Development Newbies]] -- general introduction |
||
* [[Game development HOWTO]] -- 5-minutes to your first activity in [[Pygame]] |
* [[Game development HOWTO]] -- 5-minutes to your first activity in [[Pygame]] |
||
[[Developers/Stack#Etoys|Etoys]]/Smalltalk developers will want to start with [[Smalltalk Development on XO]]. |
|||
=== References === |
|||
Other developers will want to read about [[Sugarizing]] non-Python applications. |
|||
⚫ | |||
= Reference = |
|||
⚫ | |||
You can also run the pydoc script on an XO in order to have browseable pydoc documentation locally. To do this, open a Terminal activity and run: |
|||
pydoc -p 8080 |
|||
then open a [[Web|Web Browser]] activity and go to the url: |
|||
http://localhost:8080/ |
|||
to view the documentation. This approach works best with Python-coded libraries which have spent some time on their docstrings (and generally requires that you know English, as most docstrings are written in English). |
|||
== Resources == |
|||
* The [[:Category:Developers | Developer's Category]] collects everything in the wiki that's been tagged as pertaining to developers (it's a bit hard to navigate) |
* The [[:Category:Developers | Developer's Category]] collects everything in the wiki that's been tagged as pertaining to developers (it's a bit hard to navigate) |
||
* [[Sugar Code Snippets]] a few canonical code fragments that may be of use when coding in PyGTK |
|||
* [[Developers Program]] focuses on development for the core system, but with information useful for activity developers as well |
|||
== FAQ == |
|||
The [[Developers/FAQ|Developer's FAQ]] is large enough to merit its own page in the Developer's manual. |
|||
= Contributing = |
|||
⚫ | As with most Open Source software projects, we have difficulties with documentation. We are '''very''' interested in finding people interested in documenting the system. If you are too shy about your coding skills to write code, helping us document the code-base would be an amazing and valuable contribution. |
||
Helping organize the wiki (the web site you are currently reading) to better document the platform and development process would also be very helpful. |
|||
== Wade's handy links list == |
|||
Pulling the source to an existing activity from Git: |
|||
* [[Git]] |
|||
Creating a new activity: |
|||
* [[Activity tutorial]] |
|||
* [[Sugar Code Snippets]] |
* [[Sugar Code Snippets]] |
||
* http://dev.laptop.org/~cscott/joyride-1477-api/ |
|||
For PyGTK activities: |
|||
* [[PyGTK]] |
|||
* [[PyGTK/Hello World Tutorial]] |
|||
* [[Beyond Hello World]] |
|||
* http://www.pygtk.org/docs/pygtk/index.html |
|||
For PyGame activities: |
|||
* [[Pygame]] |
|||
* http://pygame.org/docs/ref/index.html |
|||
For video playback using gstreamer: |
|||
* http://pygstdocs.berlios.de/pygst-reference/index.html |
|||
For supporting collaboration: |
|||
* [[Activity sharing]] |
|||
Submitting to OLPC: |
|||
* [[Project hosting]] |
|||
Code worth reading: |
|||
* [[Importing your project]] |
|||
*[http://dev.laptop.org/git.do?p=projects/block-party-activity;a=tree BlockParty] for overall organization of an activity. |
|||
*[http://dev.laptop.org/git?p=projects/hellomesh;a=summary HelloMesh], [http://dev.laptop.org/git.do?p=projects/connect-activity;a=tree Connect] or [http://dev.laptop.org/git.do?p=projects/write;a=tree Write] for tubes. |
|||
[[Developers/Communication|Previous |
[[Developers/Communication|Previous]] [[Developers/FAQ|Next]] |
Latest revision as of 04:56, 22 May 2011
Please copy/paste "{{Translationlist | xx | origlang=en | translated={{{translated}}}}}" (where xx is ISO 639 language code for your translation) to Developers/Documentation/translations | HowTo [ID# 256298] +/- |
By this point, you should have a working Sugar environment (or a substitute for it), a project idea, and an idea how and where to ask for help if you have problems. The next step is to actually start coding.
Tutorials
PyGTK developers will find a collection of Tutorials available, from very simple Hello World projects to an in-depth description of the development of Block Party.
Pygame developers will likely want to start with:
- Game Development Newbies -- general introduction
- Game development HOWTO -- 5-minutes to your first activity in Pygame
Etoys/Smalltalk developers will want to start with Smalltalk Development on XO.
Other developers will want to read about Sugarizing non-Python applications.
Reference
- API Reference -- pointers to the various libraries' reference documentation.
You can also run the pydoc script on an XO in order to have browseable pydoc documentation locally. To do this, open a Terminal activity and run:
pydoc -p 8080
then open a Web Browser activity and go to the url:
http://localhost:8080/
to view the documentation. This approach works best with Python-coded libraries which have spent some time on their docstrings (and generally requires that you know English, as most docstrings are written in English).
Resources
- The Developer's Category collects everything in the wiki that's been tagged as pertaining to developers (it's a bit hard to navigate)
- Sugar Code Snippets a few canonical code fragments that may be of use when coding in PyGTK
FAQ
The Developer's FAQ is large enough to merit its own page in the Developer's manual.
Contributing
As with most Open Source software projects, we have difficulties with documentation. We are very interested in finding people interested in documenting the system. If you are too shy about your coding skills to write code, helping us document the code-base would be an amazing and valuable contribution.
Helping organize the wiki (the web site you are currently reading) to better document the platform and development process would also be very helpful.
Wade's handy links list
Pulling the source to an existing activity from Git:
Creating a new activity:
For PyGTK activities:
For PyGame activities:
For video playback using gstreamer:
For supporting collaboration:
Submitting to OLPC: