Escribí más abajo qué proyectos o ideas querés proponer para desarrollar durante el PyCamp 2024 .
Escribí un título, una descripción (agregá un link si el proyecto ya está iniciado) y quien propone.
Podés ver ejemplos de las edicion 2023 .
¡Buenas!, va la idea que estuve pensando para programar en el pycamp:
Retro Python
- Propone: Hugo Ruscitti
- Cosas que vamos a usar: Python, ASTs, JavaScript, herramientas para dibujar Pixelart, tijeras y crayones.
Crear el emulador de la mejor computadora imaginaria que nunca existió. Una computadora que te permita crear juegos, animaciones y demos de 8 bits, con 16 colores y 128 píxeles de pura emoción.
Imagino que podemos implementar este “emulador” haciendo una página web con un editor de código y una pantalla “virtual” donde se vería el resultado del programa. Nuestros usuarios tendrían que poder escribir Python y acceder a funciones para dibujar y reproducir sonidos.
Me gusta mucho la estética de pico-8 (PICO-8 by lexaloffle), así que buscaría algo de inspiración por ahí, pero con una impronta más retro-pythonística.
Wiki de Pyar
- Propone: sasha
- Tecnologías: nikola, git
- Repo: GitHub - PyAr/wiki: Los contenidos de la wiki de pyar
La idea es trabajar en dos puntos:
Primero, trabajar la estructura de la Wiki para que la información disponible sea más accesible. Por ejemplo, organizar los contenidos en función de los temas más frecuentes en el chat de Telegram de PyAr como: Material introductorio, temas sobre editores, temas específicos como Django, NumPy, etc… Y hacer una especie de revisión o curaduría del material que ya existe, links rotos, materiales desactualizados, o inaccesibles porque no están linkeados.
Segundo, en aprender y documentar sobre la infraestructura y funcionamiento de la wiki para que sea más fácil colaborar, resolviendo issues y/o configurando features. Por ejemplo, un feature ya disponible en Nikola es el buscador dentro del sitio.
Charla para secundarios
- Propone: Ramiro
- Tecnologías: Python, google slides
- Repo: a crear
Inspirado en la charla que dio Fisa en Santa Fe en el año 2022 sobre todo lo que se puede hacer con Python, me gustaría armar una charla de 30 o 40m que se pueda dar en secundarios, donde podamos contar todo lo que se puede hacer con Python para dar ideas, y cebar a los pibes del secundario que se estan por egresar.
Este año voy a tener la oportunidad de dar charlas en colegios y quiero que salga lo mejor posible.
Si alguien se suma, me encantaría que podamos armar esto y que por ahí quede como para algo que cada uno pueda llevar a los coles que tenga cerca.
Estructura posible de la charla:
- Rubros en los que aplica la programación
- Breve recap de como puede aplicar a varios rubros con ejemplos y demás
- Puestos posibles en el mundo it
- Lista de puestos
- Breve descripción de los mismos
- Ej: Back-end, Front-end, QA, PO, PM, TL, Manager, RRHH, etc…
- Tipos de empresas para las que se puede trabajar
- Consultora para adentro
- Consultora para afuera
- Empresa se producto
- Software factory
- Que se puede hacer con Python
- Donde está en general
- Donde está mas activo python hoy
- Que es lo que mas se busca
- Ejemplos reales de gente que esta trabajando en esto
- Ejemplos de gente de la comunidad
- Con o sin nombre
- Projectos copados y cosas que son increibles
- Comunidades copadas y eventos anuales
- PyAr
- Nerdearla
- HackLabs
- Todo lo que conozcan
Linkode
- Propone: Facundo Batista
- Tecnologías: Flask, PostgreSQL
Linkode es un pastebin con un par de características únicas, como detección automática del tipo de contenido (para el coloreado de sintáxis) y edición inplace con construcción de árbol de versiones.
Más allá de los issues cargados (que hay que revisar) hay que meterle bastante amor al proyecto:
- actualizar deps, modernizar
- simplificar estructura proyecto (configs? logs?)
- encontrar patrones de abuso (árboles con mil nodos? creaciones en ráfaga?)
- agregar login con redes sociales
- poner limitaciones sin login (pocos nodos, poco tamaño total, cadencia creaciones?)
- con login, restricciones más relajadas, y cartelito de "contactar a X para servicio con más prestaciones)
- la API es una bajón, y la documentación una cagada
PyEmpaq
- Propone: Facundo Batista
- Tecnologías: Packaging, virtualenvs
- Documentación: http://pyempaq.rtfd.org/
Un simple pero poderoso empaquetador de programas Python para correr en cualquier lado cualquier proyecto con cualquier dependencia que se instale en un entorno virtual.
Mi idea es ofrecer en este PyCamp soporte por si alguien quiere empaquetar algún proyecto propio o ajeno.
Juego de Codeo Colaborativo
- Proponen: Zoe y Facundo¸
Un juego donde armamos un programejo entre todes para resolver la consigna. Divertido, adrenalina. Para todes, no importa el nivel.
F1Prode
- Propone:
- Tecnologías: Django, ¿Javascript?, Brython, git y frontend <–(soy un queso)
- Repo: a crear
La idea del proyecto es crear una página dónde se puedan hacer predicciones de los resultados de las carreras de Fórmula 1. Funcionaría como un prode normal de fútbol, prediciendo antes de la carrera y cuando termina, si acertaste las posiciones finales de los pilotos, sumás puntos.
Posible formato de la página:
- Sección dónde se puedan realizar las predicciones con todas las opciones.
- Sección dónde se puedan ver los próximos grand prix y los anteriores.
- Sección para ver tu puntaje en total o de cada gran premio en individual
- Grupos que se puedan crear y poder competir contra los miembros de este.
- Ranking global de todos los que hagan predicciones.
- Ver data en tiempo real de posiciones, etc.
Habría que buscar una API que nos de la info que queremos para el proyecto, cosa que me tengo que poner a ver para ya tenerlo listo.
Cosas secundarias para hacer:
- Poder predecir la clasificación.
- Poder predecir al campeón.
- Poder predecir que equipo ganó más puntos en el fin de semana.
- Que sepa reconocer si hay carrera sprint (carrera más corta antes de la principal).
- Seguro alguna cosa más me estoy olvidando que me voy a acordar.
No tengo idea de qué complicado puede llegar a ser, pero seguro lo sacamos andando jaja
EventoL
- Propone: Federico Gonzalez
- Tecnologías principales: Python 3.9 y Django 1.11
- Repositorio: eventoL/eventoL
EventoL es un software de administración de eventos, desarrollador inicialmente para administrar la conferecia FLISoL.
Actualmente, el proyecto crecio muchisimo y tiene su sitio oficinal EventoL y además dos instancias activas de uso libre y gratuito.
Las instancias son Instancia de USLA (usuarios de software libre Argentina) y Instancia de Python Argentina.
Este año simplifique el entorno para que se pueda trabajar de forma más sencilla, y hay issues desde nivel complejo alto hasta simples tanto de back como de front que voy a estar organizando en los siguientes dias.
Issues hasta el momento:
- Eliminar el codigo front con react y webpack, actualmente para evitar su uso, se usan los bundles generados de antes pero seria ideal poder sacarlo y dejar todo en js, css y htmx
- Actualizar las version de django primero a 2.0 y despues 2.1, 2.2, …
- Actualizar version de python de 3.9 a 3.11
- Revisar uso de alguna api para busqueda en mapas para guardar la ubicación del evento
- Exportar datos del admin para asistentes de un evento
- Revisar errores de css
- QA en general
- Revision de documentación de usuario y tecnica
- y mucho mas
Clicker
- Propone: Felipe Batista
- Librerías: Blessed
La idea es hacer un pequeño jueguito Clicker en una terminal muy cortito y muy sencillo
Para hacer el jueguito en la terminal hay que usar la librería Blessed que nos permitiría usar la terminal para mostrar el juego.
Blessed: blessed · PyPI
Un clicker es un tipo de jueguito en el que vos interactuas con un objeto, ganas moneditas y vas comprando mejoras para ganar más moneditas y así.
Ejemplo: Cookie Clicker, https://www.decisionproblem.com/paperclips/index2.html
Fletar
- Propone: Juan Manuel Schillaci (SKA)
- Librerías: Flet, Gspread
Fletar es una pwa/web/mobile para gestión de gastos personales. Está desarrollada con Flet (Flutter con python) y su backend es una planilla de cálculo de google, es básicamente un frontend para carga rápida de gastos, permite clasificación por categorías y medios de pago. Está asociado a una planilla personal con una estructura básica que puede modificarse. La idea es facilitar la interfaz de carga y luego poder usar los datos de la manera que uno quiera.
Hoy en día funciona para un usuario (Yo), la idea es hacerlo multiusuario, mejorar el UX y de ser posible, empaquetarlo para Android. Hoy en dia funciona como PWA sin problemas. Ah y de paso aprender Flet
Simpyt
- Propone: Fisa
Simpyt es una herramienta para generar botoneras web para usar en simuladores de vuelo, streamers, etc. Diseñas tu propia pantalla con botones, y luego los usás para disparar acciones configurables (generar presiones de teclas, correr programas, etc).
Ya funciona y tiene poquitos usuarios. Hay un par de features muy útiles pendientes de desarrollo, que quisiera agregarle: editor web de configs, switches con estado, etc.
Show and tell de configs, entornos, plugins, editores, etc
- Propone: Fisa
Juntarnos a mostrar cómo tiene cada uno configurado su entorno de desarrollo, editor, plugins útiles, etc. Otros años lo hicimos y salen cosas interesantes!
KanTouch
- Propone: OSiUX
- Tecnologías principales: python-evdev, textual
La idea es hacer una simple aplicación de consola en modo TUI que lea tareas desde un Texto Plano y/o Markdown y genere un Board (Kanban) y permita cambiar el estado de cada tarea usando el touchscreen, es decir moviendo a la derecha o izquierda cada tarjeta y guarde el nuevo estado en el archivo de origen.
- github com/PlankCipher/kabmat
- github com/singalhimanshu/taskgo
Django Fixture Extractor
- Propone: Mati Barriento
- Tecnologías: Python, Django, ORM, JSON/YAML
- Repo: django-fixture-extractor
La idea es tener un command de Django que dado un modelo y un id, filtre ese registro y todas las relaciones que ese modelo tenga, de forma recursiva hasta completar un fixture (o varios).
El objetivo es poder tener una copia de la DB pero no completa y con el potencial de obfuscar datos sensibles (mails, passwords, etc)
Usando este ejemplo de django, se elige el modelo de Musician y una PK y deberia bajar ese Musician y solo los Album de ese Musician. Si Album tuviese otro modelo relacionado, deberia bajar los registros de ee modelo tambien