CALISTHENIC EVENT
Explicación: Mi Planificador organiza un inventario general del evento con los requisitos de que alcance para todas las modalidades de competicion aunque se hicieran todas a la vez para asegurar que no hayan conflictos, aunque el usuario se presume que tenga un mínimo de conocimiento sobre lo que no se puede con su inventario disponible y de que todo elemento del inventario si necesita de otro para su uso ya sea por la seguridad de los competidores o por necesidad inviolable.
Diseño: Ya que es un tipo de evento simple de organizar, los mecanismos principales son rellenar el inventario con lo que el usuario tenga a su disposición siempre que respete las condiciones de seguridad y dependencias, esto es el primer menú que aparece al iniciar el proyecto,luego de iniciar un proyecto con el inventario general se organizan los subeventos que se deseen crear con su modalidad y cantidad de participantes de esa competencia específica,cuando se deseen crear más eventos estos tendrán disponible la cantidad restante de elementos del inventario,por lo que es importante tener una idea general de la escala de cada competencia en base a la disponibilidad,pero no es problema ya que todo dato es modificable en cualquier momento después de haber guardado. Elegí esta manera de organizarlo ya que casi todos los casos de competencias son menores en escala y dependen efectivamente de lo que los organizadores tengan a su alcance para realizarse, ya sean encuentros o competencias, aunque este proyecto lo hice pensando principalmente en competencias, no tiene ningún problema al realizarse para encuentros ya que solo cambiaría la finalidad conque se hace cada subevento. También en lo personal considero lo más útil planificar en base a lo seguro
Proceso: Lo primero que aprendí fue la importancia y utilidad de las Bases de Datos, herramienta que jamás había usado, y que elegir una que de la libertad necesria también es vital para mantener el código lo más claro posible. Aprendí a usar mejor las Clases dentro de Python y que eso ahorra muchas líneas de código si se usan correctamente. Por el uso de Streamlit y las BD diría que clasifica como aprender a escala simple un poco de Front-End, lo cual amplía mucho la visión de como usar la programación.
Ejemplo: Básicamente lo primero es poner el nombre del evento,la fecha que se desea siempre que no esté ocupada,y si tuvieras 20 barras fijas y 20 barras paralelas, las incluyes en el inventario general, luego creas los subeventos (la pestaña de la izquierda) y puede crear por ejemplo una competencia de Resistencia en modalidad simultánea con 10 barras fijas y 10 barras paralelas y despuésde guardar, una de Tensión por turnos con las restantes de cada una
Dificultades: La primera dificultad que encontré fue la traba de no saber como dar la opción de elimidar un evento o subevento al usuario, lo que solucioné cambiando de Json a Sqlite3 por consejo de un amigo, ya que este permite borrar,sobreescribir,renombrar,etc de manera más intuitiva al menos para mí.