Pregunta
Soy un estudiante de la carrera de ingenieria de sistemas, pretendo reutilizar un software libre para contribuir con algo mas a la comunidad de software libre, para lo cual requiero saber como modificar un software libre o que tecnicas o herramientas se necesitan para dicha modificacion.
Agradecere toda ayuda de la comunidad de software libre.
Respuesta
Lo mas sencillo es que aprendas un lenguaje libre...php..phyton etc etc...y luego pues te bajes el codigo y contribuyas!!
Otra respuesta
Si quieres contribuir con un proyecto
*como desarrollador* entonces debes ajustarte al lenguaje, estilo,
practicas y reglas del grupo de desarrollo de ese proyecto.
Generalmente la mejor forma de empezar es buscar algo que funciona mal o
que funciona imcompleto y que tu lo arregles o mejores, una vez hecho has
identificado una cosa en que quieres trabajar. El próximo paso es buscar a
los autores de ese proyecto, todos los grupos de desarrollo tienen una
lista de correo electrónico y un repositorio de código, una wiki y una web.
Debes inscribirte en la lista de desarrollo y *primero* mirar como se
comporta la gente allí, aprende "sus modales", mientras tanto empieza a
estudiar el código, busca la parte que identificaste para trabajar,
preocúpate por entender el código, y así con conocimiento de terreno puedes
escribir a la lista para preguntar cosas que no te quedan claras. El
siguiente paso normalmente será que tengas algo de código funcionando, y
ahí es cuando puedes preguntar a la lista la "forma correcta" de enviarles
tu código, (OJO. Debes seguir sus reglas), cuando el resto de
desarrolladores y generalmente el líder considera que tu código es útil,
entonces será aceptado para ser incluído en algún próximo lanzamiento. Otra
vez, cuando se haga ese lanzamiento y la forma dependerá del proyecto y
grupo en cuestión.
Eso es en general como se puede contribuir. El consejo de oro es que debes
estar preparado y dispuesto de aprender a usar herramientas y lenguajes que
quizá nunca utilizaste, y también aprender y respetar las formas y cultura
de desarrollo de cada proyecto.
Y recuerda que mientras más concreta sea tu pregunta, tendrás una mejor
respuesta.
Y otra respuesta
Primero podrías empezar con seleccionar los proyectos candidatos y así
seria mas fácil poder ayudarte.
Lo mejor es ir de los mas pequeño o chico posible para ir incrementando la
complejidad.
has eso y vuelve a escribir así te damos mas pautas, de lo contrario te
puedo sugerir alguno.
"te comento que hasta para traducir tienes que empaparte con un proyecto"
Y siguen las respuestas
Primero ubica a que proyecto de software libre quieres contribuir, luego
aprende los lenguajes y/o metodologias de programación que utilizan, también suscribite a su respectiva lista de correo o algun otro método de comunicación que tengan los desarrolladores del proyecto al que pretendes contribuir.
Y siguen respondiendo
El mundo de software libre es como el Internet, no está centralizado, no hay autoridad. No existe una página donde estén todos los proyectos, hay muchas páginas.
Algunas páginas albergan varios proyectos, como:
- sourceforge.net
- github.com
Algunas páginas son de organizaciones que tienen varios proyectos:
- Fundación Apache
- Proyecto GNU
- Gnome
- KDE
- Google
Hay páginas de un sólo proyecto
- XZ - tukaani.org/xz/
Es más fácil que primero eligas que quieres hacer. Y luego vayas a buscar
la página del proyecto
Te cuento mi caso:
Hace unos años estaba aprendiendo portugués, utilizaba Rhythmbox para
escuchar música brasilera, y cuando quise que Rhythmbox me mostrara las
letras de las canciones en Portugés, como lo hacía con las canciones en
Inglés, no funcionó. Ahí encontré mi tarea: hacer que Rhythmbox mostrara
esas letras de canciones, y así llegué a
http://adf.ly/1f0aFm.
Y si hoy pruebas Rhythmbox verás que tiene esa funcionalidad.
Ahora, si realmente no tienes ni la menor idea, pues busca algo con lo que
te sientes confortable, si por ejemplo estás cómodo con Java, entonces
busca sólo proyectos en Java, elige unos 2 o 3 proyectos y empieza a
revisar los reportes de errores, y comienza a estudiar el código para
arreglarlos.Y con el proyecto que sientas te va mejor quédate y arregla los
errores.
Siguen y siguen respondiendo
La metodologia de desarrollo de software libre no es
distinto sobre la que se utiliza con el propietario, lo que si marca la
diferencia son las libertades establecidas por la Licencia Publica
General (GPL) en cualquiera de sus versiones.
Dicho sea de paso debes tener muy en cuenta, entender y comprender, que
si usas software libre para tu proyecto de grado, este debe ser libre
tambien, de lo contrario estarias violando la GPL, antes mencionada.
Dentro de las tecnicas puedes optar por la metodologia de desarrollo y
diseño que mas te guste. Si necesitas herramientas pues... existen
infinidad... hasta puedes hacer .NET con software libre!!!! (si, a mi
tambien me parece herejia), pero para eso existe Monodevelop o
Sharpdevelop para Windows, otras herramientas como Eclipse, NetBeans,
editos poderosos como ViM, Emacs, Nano... hasta notepad puedes usar si
sabes lo que haces =D.
Como otras alternativas tienes todos los modeladores de UML, CASE, etc.
disponibles... solo tienes que preguntar a google, por que ahi vas a
obtener respuestas especificas rapidas y sin vueltas...