Esta página es un borrador. El curso está actualmente en desarrollo, la coordinación está teniendo lugar en la [http://listas.latertulia.org/mailman/listinfo/haslo lista de correo].
Programación usando Software Libre
Curso introductorio
Objetivos
- Introducir a las comunidades de programadores de nuestro país cómo enfrentar el desarrollo de aplicaciones desde la perspectiva del Software Libre.
- Presentar técnicas de gestión de proyectos basados en esta filosofía y aprovechar sus ventajas para consolidar los conocimientos teórico/prácticos de la programación.
- Preparar a profesionales para la implementación de sistemas de gestión de contenidos para web usando herramientas de Software Libre.
Explicación de los objetivos
En nuestro país, como en el resto del mundo, existe una tradición en el uso del software libre para implementar servicios de redes. Esto crea una sensación de avance importante cuando se habla de enfrentar un proceso de migración más generalizado en nuestra sociedad. Sin embargo, de las pocas justificaciones usadas como rechazo y que tienen realmente una base objetiva, se encuentra la no disponibilidad de aplicaciones que sustituyan a las que se han venido usando a lo largo de muchos años de uso de software privativo. Las sustituciones más críticas son precisamente las que se han venido desarrollando localmente por nuestras comunidades de programadores.
A medida que se va adquiriendo conciencia de la importancia del uso masivo de software libre, hay que ir formulando la estrategia para lograrlo. Y la capacitación de capital humano es más un principio que parte del proceso mismo de migración. Por otro lado, se sospecha que los entornos de desarrollo se han convertido en el terreno principal de batalla al que están apostando los grandes monopolios para parar el inminente desarrollo que está alcanzando el software libre.
Este curso es otro intento de ir avanzando en capitalizar positivamente nuestros recursos humanos de desarrollo, teniendo en cuenta a las entidades que ya han decidido o comenzado el proceso de migración y las universidades, junto con el resto del mundo académico, por su esencia determinante en el éxito de cualquier proyecto de desarrollo tecnológico.
Son ejemplos de entidades que, por su carácter social, pudieran tener un papel importante en esta estrategia: El Ministerio de Cultura, Infomed, El Proyecto de Informatización de la Prensa Cubana, la Agencia Latinoamericana Prensa Latina, etc.
Organización del curso
Todas las actividades serán conferencias a no ser que en un tema sea estrictamente necesario otro formato. Cada actividad tendrá una duración de dos horas. Los estudiantes crearán condiciones para practicar en sus centros de estudios o trabajo.
Los horarios deben ser adaptados para garantizar los mayores niveles de asistencia posible. Todos los materiales desarrollados para el curso se pondrán a disposición en sistemas en-línea.
Profesores y colaboradores
La propuesta que se presenta a continuación es preliminar, luego de definir exactamente la disponibilidad de cada cual, se sustituirán por otras propuestas todos los casos que se vean imposibilitados en cumplir con las tareas que este curso implica.
- Servilio Afre (C)
- Alfonso Alí (P)
- Yudivián Almeida (P)
- Néstor Alonso (P)
- Israel Fernández Cabrera (P)
- Alcides Morales Guedes (C)
- Maykel Moya (P,C)
- Medardo Rodríguez (P)
- Héctor Velarde (C)
- Luis Zarrabeitia (P)
«Los grupos de profesores deberán reunirse y elaborar los detalles de cada tema.»
Propuesta de bibliografía
- Documentos legales y licencias del Movimiento de Software Libre y el proyecto GNU/Linux.
- «Homesteading the Noosphere» y «Revenge of the Hackers» por Eric Steven Raymond.
- «Dive Into Python». por Mark Pilgrim.
- «Python Bible». por Dave Brueck y Stephen Tanner.
- «The Art of Computer Programming» por Donald Knuth.
- «Text Processing in Python». por David Mertz.
- «Object Oriented Analysis and Design with Applications» por Grady Booch.
- «The Cathedral and the Bazaar» por Eric Steven Raymond.
- «Pragmatic Version Control using Subversion». por Mike Manson.
«The Zope Book» por Amos Latteier, Michel Pelletier, Chris McDonough y Peter Sabaini.
- «The Definitive Guide to Plone», de Enfold Systems.
- «Best Practices for Plone development» por Joel Burton.
- «Putting a new look on Plone: a real-world example» por Alexander Limi.
- «DIYPloneStyle: Creating a Custom Style for Plone» por David Convent.
Índice de temas
- Cultura hacker
- Introducción a la programación con Python.
- Forma canónica del modelo de objetos.
- La Fortaleza y el Bazar.
- Desarrollo de aplicaciones de propósito general usando Python.
- Sistemas de Gestión de Contenidos (CMS) para Web.
Include(Cursos/IntroProgramaciónConPython)
Include(Cursos/FormaCanonicaDelModeloDeObjeto)
Include(Cursos/LaFortalezaYElBazar)
Include(Cursos/DesarrolloDeAplicacionesDePropositoGeneralUsandoPython)