sábado, 5 de septiembre de 2009

PyCon 2009 Argentina!


Hola!,

Acabo de volver de PyCon 2009, la primer conferencia en español sobre Python!. Es la primera que se hace en sudamérica una conferencia en español de esta índole. Si bien hay ya varias PyCon en otras partes del mundo, esta en particular es la primera hablada en español. Puden consultar el resto de las PyCon en esta página.

Bien, queria contarles un poco sobre las charlas a las cuales estuve asistiendo pero primero quisiera admitir de que mi espectativa con respecto a esta conferencia no era la mejor, mi idea fue: "voy para ver que hay", pero me lleve una sorpresa, volvì con muchas cosas nuevas en la cabeza y con un panorama completamente diferente al que esperaba. Charlas de muy buen nivel, muy bien explicadas y sobre todo, muy buen ambiente!.

Para ver el programa de las charlas pueden seguir este link.

Creo que esta de más decir que en esta conferencia, todas las charlas, contienen un contenido relacionado con el lenguaje de programación que es Python, intentando enriquecerlo con nuevas librerias, tecnologías e ideas para seguir creciendo.

La primera de las charlas a las cuales asistí fue "Python como un lenguaje de hacking" en la cual Andrés Riancho de Bonsai estuvo dando un pantallazo sobre un par de librerías utilizadas para la realizar assesmente de aplicaciones web. Estuvo hablando sobre la implementacion y la utlizacion de librerias como scapy y sobre algunos frameworks para fuzzing como Peach y w3af. En mi opinion, le falto detenerse un poco mas en algunos puntos pero a nivel contenido estuvo muy bien.

En particula lo que mas me gusto de esa charla fue scapy que hasta ahora solo la conocia de nombre pero me parecio una muy buena libreria que nos abstrae de por ejemplo, libpcap y que permite disectar paquetes de manera muy facil, asi como enviar cosas al cable sin problema, sin siquiera tener que formar un paquete valido.

Ademas, Peach que tambien lo conocia de nombre, me parecio excelente para armar fuzzers de una manera mucho mas inteligente que solo fuzzear un par de bytes de manera random. Si bien la curva de aprendizaje puede parecer algo lenta, puesto que hay que conocer un poco el procolo o formato de file que estemos fuzzeando para poder decirle a Peach que campos fuzzear y cuales no, me parece una muy buena opcion para armarse fuzzers un pequeño grado de inteligencia y poder encontrar vulns (si tenemos suerte).

La segunda charla a la cual asisti fue: "Byte Twidding: Optimizando el manejo de (muuuuuchos) bytes" por Alejandro J. Cura.

En esta charla se discutio al respecto de algunas tecnicas o mecanismos que se utilizan para programar en python cosas relacionadas con musica, imagenes y sonido que muchas veces suelen generar overhead sobre nuestra aplicacion. Alejandro, estuvo mostrando un par de libs interesantes para trabajar con imagenes como Python Imaging Library, librerias para trabajar con numeros como NumPy, y librerias para trabajar con sonido de las cuales no recuerdo el nombre pero que podran ver en la presentacion y los slides en la web de PyCon dentro de poco.

Basicamente, lo que Alejandro comentaba era no perder tiempo en escribir una libreria en C/C++ para procesar datos de maneras mas rapida y eficiente y proxearla median, por ejemplo, PyRex, sino hacer uso de algunas librerias como las mencionadas antes para poder realizar un procesamiento mucho mas eficiente de los datos y no enlentecer nuestro programa/script en python.

La tercer charla a la cual asisti fue: "¿Sueñan las serpientes electronicas?" por Fernando Russ (o Fruss para los amigos) y Alejandro David Weil (Dave o Tenuki para los amigos :P).

Esta charla la considero una de las mas interesantes de la conferencia puesto que hablaron de una "nueva" tecnologia que Python y las aplicaciones necesitaran en algun momento que sera la de detener la ejecucion de codigo en un momento dado, guardar el estado y el contexto de ese programa de alguna manera y luego poder volver a restaurarlo con el contexto que nosotros querramos. Basicamente es un desafio y los muchachos estuvieron mostrandonos conceptos, ideas, problemas y soluciones sobre dicho tema. Todo esto desemboca en una nueva libreria escrita en pure-Python llamada dreampy (la cual no es publica todavia) pero que pretende llevar a cabo esa idea, suspender ejecucion de codigo y restaurarlo esa ejecucion en un momento dado.

Otra de las charlas que mas me gusto fue: "Juegos educativos con Pygame" por Alejandro J. Cura y Hector Sanchez.

Yo pensaba que hacer un juego era realmente un trabajo tedioso, pesado y demasiado complejo (de hecho lo es para juegos en 3d y avanzados como los hay hoy) pero realizar juegos 2-d utilizando PyGame resulta muy sencillo y divertido. Los chicos nos llevaron a traves de un par de diapositvas en las cuales nos mostraban paso a paso como armar un sencillo juego en 2-d. Obviamente no es la unica lib en python para armar juegos, tambien esta COCOS 2d, pero PyGame es la mas madura de todas, hace alrededor de 10-15 años que se mantiene por lo cual es bastante estable y la mayoria de los bugs que el resto de las librerias posee, en PyGame ya fueron reparados.

Una de las ultimas charlas a las cuales asisti el dia viernes fue: "PyCasa inside: PyGTK on glade" por Natalia Beatriz Bidart y Matias Bordese.

En esta charla, Natalia nos llevo por un paseo alrededor de PyCasa, la aplicacion para administrar los albumnes de picasa web.

Ademas de mostrarnos como estaba hecho PyCasa, nos mostro como funciona y como se compone PyGTK y como desarrollar aplicaciones utilizando PyGTK + glade (un RAD para desarrollar GUIs en python). A mi particularmente, me gusto mucho puesto que yo hasta ahora habia realizado aplicaciones utiilzando Boa Constructor, VisualWx y wxPython, pero GTK + PyGTK parece una buena opcion aunque me parecio un poco mas dificil de aprender a utilizar que wxPython.

Luego de todas estas charlas, hubo un par de charlas relampago de las cuales rescate charla de Ricardo Quesada (el creador de COCOS 2d), que hablaba de PyWeek, una competencia para realizar un juego totalmente en python desde cero en tan solo 7 dias!, lo mejor es que se puede participar en la competencia desde nuestra propia casa y tanto en grupo como de manera individual.

Luego hubo una charla plenaria dicatada por Jacob Kanplan (principal interventor en el proyecto django) pero a esta charla no pude asistir asi que no puedo comentarles que fue lo que se discutio :P

Uff, ya escribi demasiado por ahora, cuando me tome un descanso vuelvo a postear sobre las charlas del segundo dia, sabado, que estuvieron igual de interesantes que el primer dia!.

Hasta dentro de un rato!.

5 comentarios:

Yibam desde MAdrid dijo...

Que buena conferencia !!!!

Interesantisimo lo de que pare en ejecucion un proceso, como un snapshot y luego restablecer la ejecucion ... (Conozco a alguien que lo hace, je je je)

A ver si se animan por Europa !!!

Muchas gracias por la informacion, miraremos esos fuzzers...

Ahh !! por cierto que significa "realizar assesmente de aplicaciones web", perdona pero no se que significa ...

Lo dicho gracias por la informacion ..

P.D: Supongo que saldran papers ???

+NCR/CRC! [ReVeRsEr] dijo...

la palabra es "assesment" jeje y es una evaluacion sobre la aplicacion, tal vez no fue la mejor eleccion, deberia de haber dicho auditoria.

Lo mejor que vi en la conferencia fue la charla sobre suspender la ejecucion de codigo y poder restaurarla y la de Matias sobre el bytecode de python. Esas dos charlas fueron las mejores para mi punto de vista que es obviamente el relacionad con el RCE. Pero tambien hubo charlas como las que hablaban sobre toolkits para hacer GUIs que realmente me parecieron muy interesantes y ademas conoci herramientas que no conocia, jajaja.

calculo que en unos dias pondran los slides/papers.

matias dijo...

Muy buenos los comentarios de las charlas, una gran alegría saber que la conferencia cubrió las expectativas.

La verdad que estuvo muy buena! Les aviso cuando estén los slides disponibles en la página del evento.

Anónimo dijo...

si, estuvieron muy buenas todas las charlas a las cuales asisti!!! me fui muy satisfecho!!!.

Chifla cuando esten los slides de las charlas!, las estoy esperando!!!.

+NCR/CRC! [ReVeRsEr] dijo...

Ahi comenzaron a subir un par de charlas!. Calculo que en unos dias ya van a estar todas disponibles!