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 respuestaPrimero 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 respuestasPrimero ubica a que proyecto de software libre quieres contribuir, luegoaprende 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 respondiendoEl 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é ahttp://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 respondiendoLa metodologia de desarrollo de software libre no esdistinto 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...