Una plataforma e-learning
Con total certeza, puedo asegurar que este es el proyecto del que me siento más orgulloso hasta el momento, y del que seguramente me seguiré sintiendo orgulloso por varios años más.
Contexto del desarrollo
Este fue un proyecto realizado durante seis meses continuos, como proyecto final de una de las asignaturas de la carrera técnica en Programación, que cursé como parte de mis estudios en el Centro de Bachillerato Tecnológico Industrial y de Servicios No. 199.
Fue desarrollado por un equipo de 5 personas, de las cuales: 2 fueron programadores front-end, 2 fueron administradores de la Base de Datos, y 1 servidor, que realizó funciones full-stack, de diseñador de la base de datos y de dirección del proyecto.
Orgulloso de desarrollarlo
El orgullo de este proyecto reside principalmente por ser el proyecto más amplio en el que había trabajado y liderado desde los inicios de mi formación como programador. El código puede no ser el mejor, pero definitivamente es funcional.
Muchas cosas nuevas fueron descubiertas por un servidor gracias a este desarrollo, muchos de los algoritmos que funcionan en el modelo, fueron creados desde cero, aunque existieran alternativas ya existentes, y muchos de los principios de una programación orientada a objetos apareció para nosotros gracias a este proyecto.
Puedo decir, sin lugar a dudas, que este proyecto fue el que puso una pasión en mí para desarrollar verdaderamente de manera continua en este mundo tan asombroso e interesante.
La organización del proyecto
Internamente, el programa hace uso de PHP, HTML y CSS. La funcionalidad de JS es apenas perceptible, para apoyar con el diseño.
Existen módulos PHP para todas las funciones que se pueden realizar en la plataforma, desde el inicio de sesión, la creación de contenido, creación de usuarios, modificación de perfiles, modificación de contenido, eliminar usuarios y contenido, visualizar e imprimir el progreso personal o del grupo, y el cierre de sesión.
Existe un módulo creado para añadir un chat (todo creado desde 0), y, como es de esperarse, se añade un algoritmo de encriptación creado por los mismos autores.
La base de datos, se estructura de la manera que aquí se muestra:
El código
Debido a la complejidad del desarrollo, explicar el código de todo el proyecto sería muy extenso para una sola página, y valdría la pena tomar toda una sección de este sitio dedicado a explicarlo.
Sin embargo, como todos los proyectos, éste se encuentra disponible en el repositorio de Github, bajo licencia GNU para software libre.