Developers/Projects/lang-es: Difference between revisions

From OLPC
Jump to navigation Jump to search
(traducción de títulos)
 
 
(16 intermediate revisions by 4 users not shown)
Line 9: Line 9:
= Proyectos existentes =
= Proyectos existentes =


[[Software projects]] describes the currently active projects that may need help. Note that the list there is maintained by the project owners, so while we say "active", some of the projects may be hanging in limbo. If you attempt to contact the owner and they do not respond or indicate they are no longer working on the project, speak up on the [http://lists.laptop.org/listinfo/devel Devel] list and we will attempt to figure out how to move the project forward.
[[Software projects|Los proyectos de software]] describen los proyectos activos que quizas necesiten ayuda. Nota que esta lista esta mantenida por los dueños de los proyectos, asi que decir que esta "activa" puede ser una sobreestimación. Si quieres contactar a un dueño del proyecto, y no responde o indica que no esta activamente trabajando en el proyecto. Avísanos en la lista de [http://lists.laptop.org/listinfo/devel desarrollo] e intentaremos darle continuidad al proyecto.


Si estas buscando unirte a un proyecto ''maduro'', existen varias [[Activities|Actividades]] las cuales tienen un publico (hijos) buscando lanzamientos. Arreglo de bugs, pruebas y documentación son algunas de las actividades que los contribuidres siempre buscan en estos proyectos maduros.
If you are looking for a ''mature'' project to join, the various [[Activities]] already available on/for the XO may need help. While [[Software projects]] includes many projects that have barely started, [[Activities]] are the projects which already have public (child) facing releases. Bug fixing, testing, documentation, translations and the like are always highly sought-after contributions in these mature projects.


= Nuevos Proyectos =
= Nuevos Proyectos =


Si estas viendo como comenzar tu propio proyecto, existen muchos requisitos que aun no se han cubierto. O quizas ya tienes una idea que quieras hacer. De cualquier forma, leer esta discusión de como integrar tu proyecto dentro del proyecto de OLPC.
If you are looking to start your own project, there are lots of as-yet-unmet requests to be filled. Or maybe you already have an idea of what you want to do. Either way, read this section for a discussion of how to integrate your project into the OLPC project.


== Proyectos bases ==
== Proyectos bases ==


There is only so much room on an OLPC-XO (or any similar laptop), and the choice of what [[Activities]] should be included in the base image is involved. The targets for an activity which will become part of the core set delivered to all children should be as follows:
Existen solo cierto espacio en una laptop OLPC-XO (o cualquier laptop similar), y la opción de que [[Activities|Actividades]] deben ser incluidas en la imagen base esta involucrada. Las metas para una actividad del cual forma parte de la base entregada a todos los hijos que de ser así:


# Impacto epistemológico — a que grado esta actividad impacta positivamente el aprendizaje? (Esta desde luego el criterio mas importante.)
# Epistemological impact—to what degree does this activity positively impact learning? (This is of course the most important criteria.)
# Divertido—esto es invertido? envolvente o adictivo?
# Fun—is it fun? engaging?
# Calidad—Es la actividad lo suficientemente robusta, o su implementación, no compromete la integridad y capacidades del sistema? Es la calidad global de la implementación la adecuada y que llegue a nuestros estándares? Puedes involucrar a la comunidad en el proceso de pruebas y "garantizar" el mantenimiento de la actividad?
# Quality—is the activity sufficiently robust in its implementation that it will not compromise the integrity or supportability of the system? Is the overall quality of the implementation adequate to meet our standards? Can the community be engaged in the process of testing and "certifying" and maintaining the activity?
# Sugarizado—a que medida la actividad ha sido integrado dentro de Sugar, incluyendo UI, Diario, seguridad, internacionalización, etc? La actividad requiere la dependencia de sus librerías dentro librerías y recursos? (Este tiene impacto de robustes-positiva y negativo-soporte, inflado, y la usabilidad general, estética, y percepción de calidad en la maquina.)
# Sugarized—to what extent has the activity been integrated into Sugar, including UI, Journal, security, internationalization, etc.? Does the activity require the folding in of additional libraries and resources? (This has impact on robustness—positive and negative—support, bloat, and the overall usability, aesthetics, and perception of quality of the machine.)
# FOSS—es la actividad y todas las dependencias abiertas y libres?
# FOSS—is the activity and all of its dependencies free and open?
# Extensibles—si la actividad algo que la comunidad pueda extender? Atiende a múltiples necesidades? (Y tiene-o el potencial de tener- el soporte de una comunidad con el tiempo?)
# Extensible—is the activity something the community can extend? Does it span multiple needs? (And does it have—or the potential of having—an upstream community of support?)
# Singularidad—si la actividad agrega una mejora única a la base?
# Uniqueness—does the activity add a unique feature to the core?
# Expectativa—la actividad alcanza las expectativas de los (niños, maestros, padres, audiencia G1G1, etc.)?
# Expectations—does the activity meet the expectations of (children, teachers, parents, G1G1 audience, etc.)?
# Discoverable—el núcleo de la actividad descubrible? (Esto no es decir ue deba ser difícil explotar el poder de la actividad pero que debe tener una baja curva de aprendizaje y uso.)
# Discoverable—is the core activity discoverable? (This is not to say that it shouldn't be hard work to fully exploit the power of an activity, but it should have a low barrier to entry.)


Si estas interesado en eventualmente poner en tu actividad un componente base de la OLPC, debes tener estas metas en mente mientra desarrollas.
If you are interested in eventually making your activity a core component of the OLPC, you should keep these targets in mind throughout your development process.


See: [http://lists.laptop.org/pipermail/community-news/2007-October/000079.html Original Thread]
Ver: [http://lists.laptop.org/pipermail/community-news/2007-October/000079.html Hilo original]


== Grabando una idea ==
== Registrando una idea ==


If you have a great idea for a new project, please add it to the [[Software ideas]] or [[Hardware ideas]] page so that it is not lost. Consider adding contact information so that people can contact you to ask questions about the idea.
Si tienes una buena idea para un nuevo proyecto, seria genial que la agregaras a la zona de [[Software ideas|ideas de Software]] o [[Hardware ideas| hardware]], para que no se pierda. Considera la opción de añadir información de contacto para que la gente interesada pueda ponerse en contacto contigo y comparta ideas o haga preguntas.


Intenta describir tu proyecto en una linea o dos. Si se necesita más espacio, se puede publicar en una nueva pagina del wiki, en donde se puede describir mas detalles. Si quieres trabajar en un proyecto, este puede ser el sitio principal de tu proyecto.
Try to keep the entry to a line or two. If you need more space, create a new wiki page to describe the idea in detail. If you intend to work on the project yourself, this can become the homepage for your project eventually.


Al registrar la idea antes de empezar el trabajo, podemos asegurar que no se pierde porque "la vida la puso en el camino"
By recording the idea before you begin work, we can ensure that a great idea isn't lost because "life got in the way".


== Encontrando ideas ==
== Encontrando ideas ==


The obvious result of recording a great new project idea on the [[Software ideas]] page is that if you are looking for a new project idea, there are lots of them.
El resultado evidente de almacenar una gran idea de proyecto en la página de [[Software ideas]] es de que si estas buscando una nueva idea de proyecto, hay muchas allí.


Si encuentras una idea en la página de ideas de software, recuerda que muchas otras personas probablemente leen esa misma página y pueden también tener intenciones de trabajar en el mismo proyecto. Asegúrate de dar a conocer tus intenciones de trabajar en el proyecto con ruido, para que puedas conocer a cualquiera que este trabajándola en silencio desde su taller.
If you find an idea on the software ideas page, remember that lots of other people have probably read that page and may also be intending to work on that project. Be sure to advertise your intention to work on the project loudly so that you can flush anyone working on it silently out of the woodwork.


Si los requerimientos no son claros, considera contactar a la persona que escribió la petición para obtener mas información acerca de lo que intentaban hacer. Incluso si los requerimientos parecen claros, considera contactar a la persona. Incluso si "tu" escribiste los requerimientos, considera [[Developers/Communication|discutir]] los requerimientos en público para que puedas obtener retroalimentación en que/como/si podría o debería hacerse el proyecto.
If the requirements are not clear, consider contacting the person who posted the request to get more information about what they were intending. Even if the requirements seem clear, consider contacting the person. Even if '''you''' wrote the requirements, consider [[Developers/Communication|discussing]] the requirements in public so that you can get input and feedback on what/how/whether the project should or could be done.


== Escogiendo/Refinando tu Idea ==
== Escogiendo/Refinando tu Idea ==


OLPC no solo es una plataforma de hardware para niños sino también es una re planeación de como usar la computadora como una herramienta educacional. Para ese fin, existen diferentes principios que esperamos que tengas presentes mientras planeas tu actividad. En particular, actividades que deben incluir los siguientes aspectos:
OLPC is not just a fancy hardware platform for kids to use — it is also a rethinking about how to use a computer as an educational tool. To that end, there are several design principles to keep in mind as you think about your activity. In particular, activities should include:
* '''Visibilidad''' — Es la actividad intuitiva para su aprendizaje? Los manuales largos de introducción es algo aburrido y difícil de traducir. Entre mas intuitiva puedas hacer la actividad de tu actividad, mejor aún. Eso quiere decir que usando un modelo de interacción que te motive a experimentar, usando imágenes descriptivas en botones en vez de texto, etc.
* '''Discoverability''' — Is the activity intuitive to learn? Long instruction manuals are boring to read and hard to translate. The more intuitive you can make your activity's interface, the better. That means using an interaction model that encourages experimentation, using evocative images on buttons rather than text, etc.
* '''Extensibilidad''' — La actividad puede ser fácilmente editada por maestros y niños para expandir su uso? Por ejemplo, tu actividad de evaluación le da al maestro la habilidad de cambiar la pregunta, para que entonces puedan usar cualquier tipo de pregunta, no solo la que habías pensado?
* '''Extensibility''' — Can the activity be easily edited by teachers and kids to expand its use? For example, does your quiz activity give teachers the ability to change the questions, so that they can use it for any type of quiz question, not just the ones you thought of?
* '''Collaboration''' — Can your activity be used by more than one child at a time? Great activities should have both a single-user mode and a multi-user mode, if that makes sense with the activity. Is your game multiplayer? Does your word processor let two people write the same document?
* '''Colaboración''' — Puede tu actividad ser usada por mas de un niño a la vez? Grandes actividades tienen ambos modos de usuario singular o de multi-usuario, si eso hace sentido para la actividad. Si tu juego es multi-usuario? Tu procesador de texto es capaz de que dos personas escriban en el mismo documento?


These are core principles in the XO's [[Sugar]] user interface; it is worth looking at the [[HIG | OLPC human interface guidelines]] and the [[educational activity guidelines]] for more detailed discussions of what type of activity we are looking for.
Estos son los principios nucleares de la interfaz de uso de las XO y [[Sugar]]; es importante hecharle un vistazo a las [[HIG | Guías de interfaz Humanas de la OLPC]] y las [[educational activity guidelines|guías para las actividades educativas]] para mayor detalles y para ver que tipo de actividad debes buscar.


Also, look at [[Activities | existing activities]] to find out what is already going on and what type of software is being developed.
También por favor observa las [[Activities |actividades existentes]] para encontrar que ya esta trabajando y que tipo de software esta siendo desarrollado.


== Comenzando un proyecto ==
== Comenzando un proyecto ==


Hay algunos pasos basicos que deberas tomar para comenzar tu nuevo proyecto y ponerlo al punto que los niños puedan usarlo en sus laptops:
There are some basic steps you should take to start your new project and get it to the point where children are using it on their laptops:


* [http://lists.laptop.org/listinfo/devel Announce your project] before you even start work
* [http://lists.laptop.org/listinfo/devel Anuncia tu proyecto] antes que comienzes a trabajar
** Ahora que la gente conoce que estas trabajando y puede ser mas fácil que te ayuden.
** So that people know what you are working on and can potentially help you out
** En algunos casos alguien mas esta trabajando ya en un proyecto similar
** In case someone else is already working on a similar project
* Add your project to [[Software projects]]
* Añade tu proyecto a [[Software projects|proyectos de software]]
** Añade tu información de contacto para que colaboradores potenciales puedan ponerse en contacto
** Add your contact information so that potential collaborators can reach you
** Homepage (e.g. a page on the wiki with a full description of the project)
** Sitio principal (e.g. una página en el wiki con una descripción completa del proyecto)
* Write a few lines of Code (say 10)
* Escribe unas pocas lineas de código (digamos 10)
* Set up Source Code Control and Bug Tracker (See: [[#Project Hosting]] below)
* Configura un control de fuentes así como un sistema de gestión de bugs (Ver: [[#Project Hosting|Hospedaje de proyectos]] abajo)
** Asegúrate que tengas un tracker de bug disponibles en algún lugar, piensa en '''milliones''' estarán usando tu actividad, donde muchos '''registrarán''' reportes de bugs!
** Be sure you have a public bug tracker available somewhere, think '''millions''' of users, there '''will''' be bug reports!
* Code
* Codigo
** Recuerda usar un control de codigo fuente, sería muy malo que perdieras tu trabajo
** Remember to use source control, lost work sucks
* Distribuye bajo estas licencias (dentro de lo posible)
* Distribute under these licenses (where possible)
** [http://www.opensource.org/licenses/gpl-license.php GPL], [http://www.opensource.org/licenses/lgpl-license.php LGPL] or the [http://www.opensource.org/licenses/mit-license.php MIT] license for software
** [http://www.opensource.org/licenses/gpl-license.php GPL], [http://www.opensource.org/licenses/lgpl-license.php LGPL] o la licencia [http://www.opensource.org/licenses/mit-license.php MIT] para software
** [http://creativecommons.org/licenses/by/3.0/ CC-BY], [http://creativecommons.org/licenses/by-sa/3.0/ CC-BY-SA], or the GFDL for text and media
** [http://creativecommons.org/licenses/by/3.0/ CC-BY], [http://creativecommons.org/licenses/by-sa/3.0/ CC-BY-SA], o la GFDL para textos y medios
** A more comprehensive guide to [[Software licensing]] is available
** Una guía mas extensa esta disponible en [[Software licensing|Licencias de software]]
* Prueba tu aplicación en una imagen oficial (preferentemente en una laptop fisica) antes de publicarla extensamente
* Test your application in an official image (preferably on a physical laptop) before publishing broadly
** People will often test new code on their OLPC-XO if you don't have one
** La gente entonces probará nuevo código en su OLPC-XO si no tienes una
* Cuando estes listo para enfrentar a los verdaderos usuarios (niños) agrega tu actividad a la página de [[Activities]] para facilitar la descarga e instalación
* When ready to face real users (children) add your activity to the [[Activities]] page to allow for easy download and installation


=== Hosting de proyecto ===
=== Hospedaje de proyecto ===


The OLPC [[Developers Program]] can provide [[Project hosting]] for OLPC-compatible projects, especially XO-specific projects. These services allow you to run your entire OLPC development project off of the OLPC servers.
El [[Developers Program|Porgrama de desarrollo]] de OLPC puede proveer [[Project hosting|Hospedaje de proyectos]] para los proyectos compatibles de OLPC, especialmente proyectos específicos de la XO. Estos servicios permiten ejecutar tu proyecto de desarrollo OLPC completamente desde un servidor OLPC.


For more general Sugar-based projects, see the resources at http://wiki.sugarlabs.org/Activity_Team and http://git.sugarlabs.org.
Para proyectos mas generales basados en Sugar, ver los recursos en http://wiki.sugarlabs.org/Activity_Team y http://git.sugarlabs.org.


No estas obligado a usar el proyecto de hospedaje de la OLPC, hay varios otros servicios de hospedaje tales como:
You are not required to use the OLPC's project hosting services, there are numerous other hosting services, such as:
* [http://git.sugarlabs.org Sugar Labs]
* [http://git.sugarlabs.org Sugar Labs]
* [http://sourceforge.net SourceForge]
* [http://sourceforge.net SourceForge]
Line 97: Line 97:
* [http://code.google.com Google Code]
* [http://code.google.com Google Code]


o tambien puedes hospedar tu codigo en tu propio servidor de proyecto. Por favor recuerda que es muy importante tener tu código fuente y gestor de tickets de forma publica.
or you can host your code on your own or your project's servers. Please keep in mind, though, that having your source code and ticket tracking engines publicly available is very important.


'''Nota''' Los servidores OLPC son ''publicos'' y cualquier puede ver lo que sea que pongas. No pongas nada en tu repositorio del proyecto (o el wiki o el sistema de gestion de tickets) que sea propietario, sensible, o que no tengas los derechos requeridos para publicación!
'''Note''' the OLPC servers are ''public'' and anyone can see anything you put on them. Do not put anything into your project repository (or the wiki, or the ticket tracker) which is proprietary, security-sensitive, or for which you do not hold the rights required to release publicly!


'''Espacio de Wiki'''
'''Espacio en el Wiki'''


El [[Main Page|Wiki principal OLPC]] puede ser usado ara configurar tu sitio web del proyecto. Esto te permite colaborar en la distribución y configuración de tu proyecto con otros miembros de tu equipo y con la comunidad mas amplia de OLPC.
The main [[Main Page|OLPC Wiki]] can be used to set up your project's home page. This allows you to collaborate on the layout and setup of your project with both other members of your team and the wider OLPC community.


'''Control de código fuente'''
====Control de código fuente====


El control del código fuente (SCC) es critico para cualquier proyecto de software. El programa de Desarrollador puede proveer con un control de código basado en [[:Category:Git|GIT]]. Mientra que GIT no es el entorno mas familiar o amigable, es el que mas se usa por los desarrolladores del Kernel y es bastante robusto. Te permite generar un repositorio distribuido (como el existente en el núcleo de Linux) o un árbol central (como sistemas de código tradicionales).
Source Code Control (SCC) is critically important for any software project. The Developer's Program can provide you with [[:Category:Git|GIT]]-based SCC. While GIT is neither familiar nor particularly friendly, it is used heavily by the Linux kernel developers, and is correspondingly robust. It allows for a distributed repository (similar to the Linux Kernel) or a central tree (like traditional SCC systems).


Usuarios familiarizados con sistemas de control de código mas tradicionales se les recomienda leer el [http://git.or.cz/course/svn.html curso relámpago Git-SV], ''no'' esperes algo muy amigable y no esperes tampoco algo intuitivo.
Users familiar with more traditional SCC systems should read the [http://git.or.cz/course/svn.html Git-SVN crash course], do ''not'' expect to be able to "work it out" just by trying to do things, GIT does not try to be user-friendly and does a very good job of not being intuitive.


'''Siguiendo tickets'''
====Gestor tickets====


El gestor de tickets es de igual manera importante en cualquier proyecto de software. Necesitas una forma de reportar problemas en un manera ue prevenga que los problemas se pierdan o sean ignorados. El programa para el desarrollador provee un [http://dev.laptop.org sistema de gestión de tickets] basado en Trac el cual es relativamente fácil de usar.
Ticket Tracking is similarly important in any software project. You need a way for users to report problems in a way that prevents issues from being lost or ignored. The Developer's Program provides a Trac-based [http://dev.laptop.org ticket-tracking system] which is reasonably straightforward to use.


See: [[Importing your project]] for a detailed description of how to use the [[Project hosting]] facilities
Ver: [[Importing your project|Importando tu proyecto]] para una descripción detallada de como usar las facilidades del [[Project hosting|Programa de hospedaje]].


[[Developers/Issues/lang-es|Previo]] [[Developers/Communication/lang-es|Siguiente]]
[[Developers/Issues/lang-es|Previo]] [[Developers/Communication/lang-es|Siguiente]]

Latest revision as of 07:17, 1 July 2011

  Please copy/paste "{{Translationlist | xx | origlang=en | translated={{{translated}}}}}" (where xx is ISO 639 language code for your translation) to Developers/Projects/lang-es/translations HowTo [ID# 257603]  +/-  

Previo Siguiente

Esta sección intenta ayudar a contestar tus preguntas "Donde debo empezar?". La OLPC es un proyecto enorme con miles de personas trabajando en el, ya sea directamente, o en un proyecto que se alimenta de este. Ya que estas leyendo este documento asumiremos que quieres trabajar directamente en el proyecto de la OLPC, en vez de que uno de los proyectos que dependen de este.

Muchos de los nuevos desarrolladores que probablemente quieran trabajar en una Actividad (una aplicación individual) para el desarrollo a usuarios finales (normalmente niños). Siempre estamos buscando ayuda para el sistema core (ejemplo Sugar, Journal, Bitfrost, School Server), particularmente para programadores avanzados de Python y gente interesada en la documentación y traducciones.

Proyectos existentes

Los proyectos de software describen los proyectos activos que quizas necesiten ayuda. Nota que esta lista esta mantenida por los dueños de los proyectos, asi que decir que esta "activa" puede ser una sobreestimación. Si quieres contactar a un dueño del proyecto, y no responde o indica que no esta activamente trabajando en el proyecto. Avísanos en la lista de desarrollo e intentaremos darle continuidad al proyecto.

Si estas buscando unirte a un proyecto maduro, existen varias Actividades las cuales tienen un publico (hijos) buscando lanzamientos. Arreglo de bugs, pruebas y documentación son algunas de las actividades que los contribuidres siempre buscan en estos proyectos maduros.

Nuevos Proyectos

Si estas viendo como comenzar tu propio proyecto, existen muchos requisitos que aun no se han cubierto. O quizas ya tienes una idea que quieras hacer. De cualquier forma, leer esta discusión de como integrar tu proyecto dentro del proyecto de OLPC.

Proyectos bases

Existen solo cierto espacio en una laptop OLPC-XO (o cualquier laptop similar), y la opción de que Actividades deben ser incluidas en la imagen base esta involucrada. Las metas para una actividad del cual forma parte de la base entregada a todos los hijos que de ser así:

  1. Impacto epistemológico — a que grado esta actividad impacta positivamente el aprendizaje? (Esta desde luego el criterio mas importante.)
  2. Divertido—esto es invertido? envolvente o adictivo?
  3. Calidad—Es la actividad lo suficientemente robusta, o su implementación, no compromete la integridad y capacidades del sistema? Es la calidad global de la implementación la adecuada y que llegue a nuestros estándares? Puedes involucrar a la comunidad en el proceso de pruebas y "garantizar" el mantenimiento de la actividad?
  4. Sugarizado—a que medida la actividad ha sido integrado dentro de Sugar, incluyendo UI, Diario, seguridad, internacionalización, etc? La actividad requiere la dependencia de sus librerías dentro librerías y recursos? (Este tiene impacto de robustes-positiva y negativo-soporte, inflado, y la usabilidad general, estética, y percepción de calidad en la maquina.)
  5. FOSS—es la actividad y todas las dependencias abiertas y libres?
  6. Extensibles—si la actividad algo que la comunidad pueda extender? Atiende a múltiples necesidades? (Y tiene-o el potencial de tener- el soporte de una comunidad con el tiempo?)
  7. Singularidad—si la actividad agrega una mejora única a la base?
  8. Expectativa—la actividad alcanza las expectativas de los (niños, maestros, padres, audiencia G1G1, etc.)?
  9. Discoverable—el núcleo de la actividad descubrible? (Esto no es decir ue deba ser difícil explotar el poder de la actividad pero que debe tener una baja curva de aprendizaje y uso.)

Si estas interesado en eventualmente poner en tu actividad un componente base de la OLPC, debes tener estas metas en mente mientra desarrollas.

Ver: Hilo original

Registrando una idea

Si tienes una buena idea para un nuevo proyecto, seria genial que la agregaras a la zona de ideas de Software o hardware, para que no se pierda. Considera la opción de añadir información de contacto para que la gente interesada pueda ponerse en contacto contigo y comparta ideas o haga preguntas.

Intenta describir tu proyecto en una linea o dos. Si se necesita más espacio, se puede publicar en una nueva pagina del wiki, en donde se puede describir mas detalles. Si quieres trabajar en un proyecto, este puede ser el sitio principal de tu proyecto.

Al registrar la idea antes de empezar el trabajo, podemos asegurar que no se pierde porque "la vida la puso en el camino"

Encontrando ideas

El resultado evidente de almacenar una gran idea de proyecto en la página de Software ideas es de que si estas buscando una nueva idea de proyecto, hay muchas allí.

Si encuentras una idea en la página de ideas de software, recuerda que muchas otras personas probablemente leen esa misma página y pueden también tener intenciones de trabajar en el mismo proyecto. Asegúrate de dar a conocer tus intenciones de trabajar en el proyecto con ruido, para que puedas conocer a cualquiera que este trabajándola en silencio desde su taller.

Si los requerimientos no son claros, considera contactar a la persona que escribió la petición para obtener mas información acerca de lo que intentaban hacer. Incluso si los requerimientos parecen claros, considera contactar a la persona. Incluso si "tu" escribiste los requerimientos, considera discutir los requerimientos en público para que puedas obtener retroalimentación en que/como/si podría o debería hacerse el proyecto.

Escogiendo/Refinando tu Idea

OLPC no solo es una plataforma de hardware para niños sino también es una re planeación de como usar la computadora como una herramienta educacional. Para ese fin, existen diferentes principios que esperamos que tengas presentes mientras planeas tu actividad. En particular, actividades que deben incluir los siguientes aspectos:

  • Visibilidad — Es la actividad intuitiva para su aprendizaje? Los manuales largos de introducción es algo aburrido y difícil de traducir. Entre mas intuitiva puedas hacer la actividad de tu actividad, mejor aún. Eso quiere decir que usando un modelo de interacción que te motive a experimentar, usando imágenes descriptivas en botones en vez de texto, etc.
  • Extensibilidad — La actividad puede ser fácilmente editada por maestros y niños para expandir su uso? Por ejemplo, tu actividad de evaluación le da al maestro la habilidad de cambiar la pregunta, para que entonces puedan usar cualquier tipo de pregunta, no solo la que habías pensado?
  • Colaboración — Puede tu actividad ser usada por mas de un niño a la vez? Grandes actividades tienen ambos modos de usuario singular o de multi-usuario, si eso hace sentido para la actividad. Si tu juego es multi-usuario? Tu procesador de texto es capaz de que dos personas escriban en el mismo documento?

Estos son los principios nucleares de la interfaz de uso de las XO y Sugar; es importante hecharle un vistazo a las Guías de interfaz Humanas de la OLPC y las guías para las actividades educativas para mayor detalles y para ver que tipo de actividad debes buscar.

También por favor observa las actividades existentes para encontrar que ya esta trabajando y que tipo de software esta siendo desarrollado.

Comenzando un proyecto

Hay algunos pasos basicos que deberas tomar para comenzar tu nuevo proyecto y ponerlo al punto que los niños puedan usarlo en sus laptops:

  • Anuncia tu proyecto antes que comienzes a trabajar
    • Ahora que la gente conoce que estas trabajando y puede ser mas fácil que te ayuden.
    • En algunos casos alguien mas esta trabajando ya en un proyecto similar
  • Añade tu proyecto a proyectos de software
    • Añade tu información de contacto para que colaboradores potenciales puedan ponerse en contacto
    • Sitio principal (e.g. una página en el wiki con una descripción completa del proyecto)
  • Escribe unas pocas lineas de código (digamos 10)
  • Configura un control de fuentes así como un sistema de gestión de bugs (Ver: Hospedaje de proyectos abajo)
    • Asegúrate que tengas un tracker de bug disponibles en algún lugar, piensa en milliones estarán usando tu actividad, donde muchos registrarán reportes de bugs!
  • Codigo
    • Recuerda usar un control de codigo fuente, sería muy malo que perdieras tu trabajo
  • Distribuye bajo estas licencias (dentro de lo posible)
  • Prueba tu aplicación en una imagen oficial (preferentemente en una laptop fisica) antes de publicarla extensamente
    • La gente entonces probará nuevo código en su OLPC-XO si no tienes una
  • Cuando estes listo para enfrentar a los verdaderos usuarios (niños) agrega tu actividad a la página de Activities para facilitar la descarga e instalación

Hospedaje de proyecto

El Porgrama de desarrollo de OLPC puede proveer Hospedaje de proyectos para los proyectos compatibles de OLPC, especialmente proyectos específicos de la XO. Estos servicios permiten ejecutar tu proyecto de desarrollo OLPC completamente desde un servidor OLPC.

Para proyectos mas generales basados en Sugar, ver los recursos en http://wiki.sugarlabs.org/Activity_Team y http://git.sugarlabs.org.

No estas obligado a usar el proyecto de hospedaje de la OLPC, hay varios otros servicios de hospedaje tales como:

o tambien puedes hospedar tu codigo en tu propio servidor de proyecto. Por favor recuerda que es muy importante tener tu código fuente y gestor de tickets de forma publica.

Nota Los servidores OLPC son publicos y cualquier puede ver lo que sea que pongas. No pongas nada en tu repositorio del proyecto (o el wiki o el sistema de gestion de tickets) que sea propietario, sensible, o que no tengas los derechos requeridos para publicación!

Espacio en el Wiki

El Wiki principal OLPC puede ser usado ara configurar tu sitio web del proyecto. Esto te permite colaborar en la distribución y configuración de tu proyecto con otros miembros de tu equipo y con la comunidad mas amplia de OLPC.

Control de código fuente

El control del código fuente (SCC) es critico para cualquier proyecto de software. El programa de Desarrollador puede proveer con un control de código basado en GIT. Mientra que GIT no es el entorno mas familiar o amigable, es el que mas se usa por los desarrolladores del Kernel y es bastante robusto. Te permite generar un repositorio distribuido (como el existente en el núcleo de Linux) o un árbol central (como sistemas de código tradicionales).

Usuarios familiarizados con sistemas de control de código mas tradicionales se les recomienda leer el curso relámpago Git-SV, no esperes algo muy amigable y no esperes tampoco algo intuitivo.

Gestor tickets

El gestor de tickets es de igual manera importante en cualquier proyecto de software. Necesitas una forma de reportar problemas en un manera ue prevenga que los problemas se pierdan o sean ignorados. El programa para el desarrollador provee un sistema de gestión de tickets basado en Trac el cual es relativamente fácil de usar.

Ver: Importando tu proyecto para una descripción detallada de como usar las facilidades del Programa de hospedaje.

Previo Siguiente