Programando un juego en Python por streaming

Vamos a arrancar un experimento con Diego y Leandro (el equipo de La Escuelita Python donde vamos a hacer un juego, en Python, programando en vivo. Vamos a usar la plataforma Twitch, todos los miércoles a las 18hs, nos pueden seguir por este canal.

Tenemos la idea: queremos hacer el Boggle (un juego de construcción de palabras) para que un grupo de personas lo pueda jugar via Telegram. Esta es toda la definición, y no tenemos nada más. Ni como es exactamente el juego, ni cual va a ser la dinámica de grupo de les jugadores, ni cómo interactuar con Telegram.

Y a propósito tenemos solamente la idea base y nada explorado porque vamos a hacer todo en vivo. Desde el diseño hasta crear el proyecto en Github, desde explorar las bibliotecas a utilizar hasta ver como lo deployamos, desde irlo codeando hasta probarlo funcionando, etc.

Queremos desmitificar lo que es "la programación de verdad" ya que mucha gente piensa que cuando uno tiene experiencia se sienta y hace todo bien como si ya supiese de antes, y realmente hay todo un proceso de exploración y aprendizaje que, aunque es más corto y orientado si tenés experiencia, también existe.

Y queremos de paso aprender Twitch y promocionar la Escuelita, que ya se acerca el fin de la pandemia y ni bien podamos empezar con los cursos presenciales saldremos al ruedo :)

¡Les esperamos!

Comentarios Imprimir

CDPedia 0.9.0, ahora en varios idiomas

Ya les conté muchas veces sobre CDPedia en este blog. En todas sus liberaciones, cuando trabajábamos en los distintos PyCamps, un resumen de su historia, también cuando salió como parte del material de EducAr, y especialmente cuando hice un gran "todo lo que siempre quisiste saber" del proyecto.

También les comenté el año pasado que arrancaba un proyecto social (a.k.a. "experimento") alrededor de CDPedia para impulsarlo y a la vez explorar el armado de un grupo de trabajo específico. A fines del año pasado expuse una charla rápida en la PyCon Argentina contando el avance de dicho experimento, es un videito de menos de cinco minutos, si les gusta:

Este post, entonces, es para contarles que llegamos con éxito a la versión 0.9.0. Pasó el tiempo, y las dinámicas del grupo fueron cambiando, pero en definitiva estuvimos trabajando más de un año para esta liberación.

Pueden explorar el el detalle de todos los cambios en la página de la release, que están agrupados en:

  • Renovación del índice para una búsqueda más rápida y exacta
  • Cambios en cómo mostramos y procesamos las imágenes
  • Mejoras en la experiencia de les usuaries finales
  • Modernización del proyecto
  • Mejoras en la producción de las imágenes de CDPedia

Y obviamente, el contenido actualizado a este año.

El equipo

Pero quizás la novedad más importante de esta versión es que completamos algunos cambios y ajustamos todos los detalles para poder empezar a generar CDPedias en distintos idiomas. Por eso si van al sitio de la CDPedia van a ver que podrán elegir la CDPedia no sólo en Castellano sino también en Aimara y Portugués. Seguramente agregaremos otros lenguajes más adelante. ¿Hay alguno que quieran en particular?

Recuerden que la CDPedia es un proyecto para hacerle llegar la información a aquelles que no tienen buena conexión a internet, así que tenemos que ser proactivos en llevarles las imágenes de CDPedia para que la puedan disfrutar. Entonces si tienen discos disponibles, hagan algunas copias de CDPedia para regalar a tus familiares y amigues, a la biblioteca de vuestro barrio, o a la escuela de sus hijes. O directamente llévenla en un pendrive y la comparten todo lo que puedan.

¡Difundan CDPedia!

Comentarios Imprimir

Python en Ámbitos Científicos

Desde hace un par de años largos que tenía en la cabeza escribir un libro que mezcle Python con Ciencia.

El año pasado activé, lo pensé un poco más, y encontré el mejor socio para esto: mi amigo Manu Carlevaro.

Nuestras ideas sobre qué queríamos de un libro que mezcle estos dos conceptos convergieron bastante rápido, así como también la idea del formato y otros contextos (como que sea un libro en PDF con una licencia que permite ser distribuido sin inconvenientes).

Casi que les diría que lo que más nos costó fue el título :) Pero nos gusta como quedó, se llama Python en Ámbitos Científicos.

Por otro lado el logo salió bastante rápido

Empezamos a laburar hace varios meses, y acabamos de publicar el primer capítulo

¿Cómo el primer capítulo? ¿Y el libro? El libro en sí está en proceso, pero otra de las ideas contextuales de este trabajo es ir liberando capítulos de a poco para poder recibir feedback y mejorarlo. Después de todo si es gratis y tiene una licencia copada, ¿por qué no recibir sugerencias de mejoras?

Entonces, el primer capítulo ya está disponible para que lo bajen desde la página del libro. También hay un proyecto en Github donde además de encontrar los PDFs se puede acceder a todo el código mostrado en el libro. Y una cuenta de Twitter por si quieren seguirla para recibir noticias.

Claro, en algún momento terminaremos todos los capítulos que tenemos planeados, y liberaremos el libro entero y bonito :). Ya les iremos contando. ¡Que lo disfruten!

Comentarios Imprimir

Por un ambiente más seguro en Python Argentina

En Python Argentina venimos discutiendo "diversidad en ámbitos relacionados con la programación" antes que se pusiera de moda :). No sólo diversidad de género (aunque principalmente), sino en general.

Guiados por una chispa que arrancó con la Python Software Foundation, estamos charlando sobre este tema desde hace una década. Como muestra basta un botón: recuerdo una discusión bastante acalorada en el PyCamp de La Falda, 2011.

Durante estos años tuvimos muchas acciones al respecto. Algunas de visibilización del problema, como la Plenaria sobre este tema de Fernando Schapachnik, de la Fundación Sadosky, otras de acciones puntuales, como tener un Código de Conducta en todos los eventos que sean parte de Python Argentina, e incluso una declaración y texto instructivo sobre Diversidad.

Todo esto es para contarles que fuimos un poquito más allá, inclusive.

En sincronía con todo este contexto de hacer nuestras reuniones y espacios de intercambio más seguros y amigables a todas las diversidades, hace como dos años aprendí que teníamos que tener por escrito y pre-acordado la forma de reaccionar ante los distintos problemas. Esto es, un "protocolo" para saber manejarnos cuando algún quilombo suceda, pensado desde el lado operativo y legal, apuntando a cuidar a les víctimas y al mismo tiempo a les que toman las decisiones.

Mi amiga abogada Julieta Parellada me empezó a pasar material similar de universidades y empresas, yo junté todo eso y lo adapté a una organización "semi virtual" como Python Argentina, y después trabajé con ella varios meses puliéndolo, consultando terceras partes para algunos items complicados, completándolo, mejorándolo.

Finalmente terminamos el texto, lo revisaron los abogados de la Asociación Civil, lo presenté a la Comisión Directiva hace algunas semanas, y se aprobó.

Les presento entonces el Protocolo de actuación ante situaciones de discriminación, acoso y hostigamiento. Esto va a estar activo en todos los eventos/canales donde esté involucrada la Asociación Civil, así que está bueno estar al tanto :).

Comentarios Imprimir

Trayendo Typus Pocus de vuelta a la vida

Septiembre del 2006. PyWeek: competencia internacional de hacer jueguitos en Python. Con unos vagos más hicimos Typus Pocus, ganamos :) (acá el detalle de esa historia).

Tipografía y sombrero inconfundibles

Como todo juego de PyWeek, el código tiende a desastroso por el apuro y muchas manos en el plato sin tiempo a demasiado diseño ni emprolijadas. Pero el juego está bueno y yo (y alguien más en algún momento) le seguí metiendo un poco de laburo los años siguientes.

Aunque mostramos el juego en varios stands de Python Argentina en muchas conferencias, creo que la vez que más éxito tuvo fue en la EkoParty del 2014: teníamos una versión adaptada, y la idea era ver si a alguien se le ocurría hackear el juego de alguna manera (algo de eso hubo).

Fué la última vez que lo ejecuté. Fast forward casi siete años.

La primera vez que usamos al Gran Grossini, alto personaje

Una de las ideas para que Felu entre en la programación era que haga juegos. Los dos frameworks para hacer juegos en Python que conocía eran pygame y cocos2d, pero ambos son "complejos" en el sentido que hay que entender un montón de cosas de Python y programación en general antes de poder hacer lo básico. Incluso estuve algunas horas tonteando con hacer una especie de "coquitos" que escondiera la complejidad inicial de cocos2d para los casos más básicos. No progresé mucho. Pasó que escuché sobre Arcade, un framework para hacer juegos justamente orientado a que sea simple. Y Felu está aprendiendo por ahí.

Pero más allá de esa historia, charlando sobre juegos, comenté sobre la existencia de Typus Pocus, y se los mostré (a él y a Male). Y recordé cuan bueno estaba el juego, al punto que decidí que no podía morirse en el tiempo.

Entonces lo refloté.

Escena típica del juego

Lo migré a Python 3, actualicé un poco su entorno de desarrollo y ejecución (mejor internacionalización, ahora corre en un virtualenv, emprolijé el código, etc.), e incluso corregí un par de bugs producto de empezar a usar un Pygame mucho más nuevo (anduvo en un 99.9% luego de tantos años, y más allá de corregir ese 0.1%, es sorprendente que hayan mantenido tan bien compatibilidad con el pasado).

Por otro lado, no le puse mucho más amor que eso: el juego tiene muchos detalles que pueden ser mejorados (manejo de score, por ejemplo). Y sigue estando en Launchpad.

Más allá de correcciones y mejoras (o no), además de hacerlo funcionar de nuevo pensé también en distribuirlo, para lo cual me propuse dos maneras. Por un lado, armé un snap, de manera que pueda ser instalado fácil en cualquier Linux (sudo snap install typuspocus), y por el otro lo empaqueté para Windows y le armé un instalador.

Y hasta le armé una paginita web muy simple. ¡Compartan y disfruten!

Comentarios Imprimir