Python en las 8JRSL

http://jornadas.cafelug.org.ar/8/programa/modules/myconference/program.php

Miércoles 20/Ago/2008

  • Entendiendo Unicode (Facundo Batista) - Aula 3.5, 11hs
  • Introducción a Python (Facundo Batista) - Aula 10.1, 14hs
  • PyExPsiN: Python para Experimentos en Psicología y Neurociencias (Sergio Damián Vernis) - Aula 3.7, 15hs
  • ORM en Python (Luis Tomas Wayar) - Auditorio Roca, 16hs
  • ArchGenXML Haciendo Plone sin saber Plone (Horacio Francisco Sebastian Durán Barrionuevo) - Aula 10.1, 16hs

Jueves 21/Ago/2008

  • Python 3000 (Raymond Hettinger) - Auditorio Sarmiento, 11hs
  • Introduccion a w3af - Un framework para conquistar la web (Andrés Riancho) - Auditorio Roca, 11hs
  • PyGTK usando Glade (Natalia Beatriz Bidart) - Aula 3.5, 12hs
  • Introducción al desarrollo en Plone (Emanuel Sartor) - Aula 13.1, 14hs
  • Descriptor tutorial (Raymond Hettinger) - Auditorio Sarmiento, 15hs
  • PloneGetPaid, estilo, calidad e ecommerce en un solo paquete (Horacio Francisco Sebastian Durán Barrionuevo) - Aula 3.4, 16hs

Viernes 22/Ago/2008

  • Desarrollando Plone Batch dentro de Google Summer of Code (Javier A. Mansilla) - Aula 3.1, 10hs
  • Taller: Actividades y juegos educativos para la OLPC (Héctor Sanchez / Alejandro J. Cura / Manuel Kaufmann) - Aula 3.3, 10hs
  • Como colaborar con Python (Manuel Kaufmann) - Aula 3.6, 14hs
  • cocos2d, un framework para hacer juegos 2D (Ricardo Quesada / Lucio Torre) - Aula 3.4, 14hs
  • Core containers - Under the hood (Raymond Hettinger) - Auditorio Sarmiento, 15hs
  • /dev/wiimote > Experimentando con un wii remote en Gnu/Linux (Juan Manuel Schillaci / Héctor Sanchez / Christian Andres) - Aula 3.1, 15hs
  • Hacer un juego es fácil (Daniel F. Moisset) - Aula 3.6, 16hs
  • Usando Python para integrar mis datos con GoogleMaps, y viceversa (Anthony Lenton) - Aula 3.4, 16hs

Descripcion de charlas

System Message: SEVERE/4 (<string> line 61)

Title level inconsistent:

Entendiendo Unicode
~~~~~~~~~~~~~~~~~~~

(Facundo Batista) - Aula 3.5, Miércoles 11hs

La charla muestra de forma teórica/práctica qué son Unicode, las planillas de códigos, los caracteres, y las codificaciones, entra en detalle en las distintas codificaciones, para saber cómo usarlas, ejemplifica las reglas de oro para utilizar Unicode en nuestros programas, y termina mostrando algunas funciones útiles para el manejo de esa tecnología.


System Message: SEVERE/4 (<string> line 72)

Title level inconsistent:

Introducción a Python
~~~~~~~~~~~~~~~~~~~~~

(Facundo Batista) - Aula 10.1, Miércoles 14hs

Esta charla se orienta a programadores, principiantes o avanzados, que desean conocer este lenguaje, de manera de aprender sus principios básicos. Se presentan las características generales del lenguaje y su biblioteca estándar, su parte social, y se recorren los tipos de datos, los controles de flujo, y las diversas maneras de encapsular código, terminando con algunos detalles que muestran la expresividad, sencillez y poder de Python.


System Message: SEVERE/4 (<string> line 83)

Title level inconsistent:

PyExPsiN: Python para Experimentos en Psicología y Neurociencias
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

(Sergio Damián Vernis) - Aula 3.7, Miércoles 15hs

Introducción a un modulo de Python para experimentos en psicología y neurociencias. Existen varios módulos escritos en Python, este hace fuerte énfasis en la facilidad de programación de experimentos predeterminados. A medida que aparecen nuevos tipos de experimentos se los va agregando. También es posible la escritura de experimentos que no estén dentro de los predeterminados, pero eso ya no es tan automático, pero tampoco es tan difícil gracias a Python. Y se puede hacer uso de las optimizaciones hechas en la precisión en la toma de tiempos y respuestas, así como la capacidad para guardar los datos automáticamente independientemente de la plataforma.

http://sourceforge.net/projects/pyexpsin/


System Message: SEVERE/4 (<string> line 96)

Title level inconsistent:

ORM en Python
~~~~~~~~~~~~~

(Luis Tomas Wayar) - Auditorio Roca, Miércoles 16hs

El software libre cada dia ocupa mas espacios en la pequeñas y medianas empresas, este fenómeno crea nuevas fuentes de trabajo para desarrolladores de aplicaciones de plataformas libres. A la hora de seleccionar la tecnología y herramientas adecuadas para cada necesidad se presentan un sin-número de alternativas que van desde el lenguaje de programación hasta el motor de bases de datos pasando por las librerías y técnicas a utilizar, esta charla pretende presentar a la audiencia un conjunto de aplicaciones y tecnologías para el desarrollo rápido de aplicaciones de gestión, esta fuertemente basado en el uso de ORM, el mapeo objeto-relacional es una técnica de programación para convertir datos entre el sistema de tipos utilizado en un lenguaje de programación orientado a objetos y el utilizado en una base de datos relacional. En la práctica esto crea una base de datos orientada a objetos virtual, por sobre la base de datos relacional. Esto posibilita el uso de las características propias de la orientación a objetos (básicamente herencia y polimorfismo), tambien se presentan librerias de interfaz de usuario y herramientas de desarrollo.


System Message: SEVERE/4 (<string> line 107)

Title level inconsistent:

ArchGenXML Haciendo Plone sin saber Plone
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

(Francisco Sebastian Durán Barrionuevo) - Aula 10.1, Miércoles 16hs

Plone es un Content Management System que ofrece una amplia cantidad de opciones y tipos de datos que pueden ser ampliados y combinados de diferentes formas para poder obtener un sistema a medida sin necesidad de muchos conocimientos.

ArchGenXML es una aplicacion que nos permite convertir archivos xmi obtenidos de exportar diagramas UML a productos Plone.

Si bien plone es muy maleable sin modificaciones es posible que queramos extenderlo un poco mas de lo que podemos como usuarios comunes.

La idea de esta charla es mostrar los pasos necesarios para, usando algun programa grafico para hacer diagramas uml en combinacion con ArchGenXML, podemos hacer tipos de datos compliejos para nuestro sitio Plones y agregar funcionalidades algo mas desarrolladas que las que se logran desde la interfaz del usuario y sin la necesidad de aprender como funcionan las capas mas inferiores de Plone y, en algunos casos, sin la necesidad de escribir ni una linea de codigo.


System Message: SEVERE/4 (<string> line 124)

Title level inconsistent:

Python 3000
~~~~~~~~~~~

(Raymond Hettinger) - Auditorio Sarmiento, Jueves 11hs

Code written for Py3.0 is much the same as that for Py2.5, but it has a different flavor and texture. With the removal of accumulated cruft, the new version of Python feels lighter and cleaner. We discuss what was removed and why. In their place, some new features were added. We discuss how the new tools elegantly overcome issues that have long challenged the language. Besides removals and additions, some aspects of the language were redesigned by changing their underlying concept.

Those deep conceptual changes give the language its new flavour. We discuss the new concepts, why they arose, their benefits, and how to alter your world view accordingly. Lastly, we discuss the plan for how to migrate existing code so you can enjoy the benefits of Python's rebirth.


System Message: SEVERE/4 (<string> line 137)

Title level inconsistent:

Introduccion a w3af - Un framework para conquistar la web
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

(Andrés Riancho) - Auditorio Roca, Jueves 11hs

El movimiento Open Source está revolucionando la forma en la cual se diseña, desarrolla y prueba el software del futuro. Particularmente el proyecto w3af, desarrollado por Andrés Riancho y colaboradores de todas partes del mundo, está cambiando la forma en la cual se detectan y explotan las vulnerabilidades en aplicaciones web. La presentación estará enfocada en introducir al espectador al mundo de la seguridad en aplicaciones web y el framework w3af, por medio de demostraciones prácticas de las funcionalidades principales del proyecto, así como también las que lo diferencian de otras herramientas comerciales y de código abierto. Se analizará además el futuro del proyecto y se realizará una reseña sobre las muy positivas experiencias adquiridas durante el desarrollo del proyecto.


System Message: SEVERE/4 (<string> line 148)

Title level inconsistent:

PyGTK usando Glade
~~~~~~~~~~~~~~~~~~

(Natalia Beatriz Bidart) - Aula 3.5, Jueves 12hs

PyGTK es un wrapper escrito en Python a la librería GTK+ (toolkit multiplataforma para desarrollo de interfaces gráficas de usuario -GUI-, escrito en C: http://www.gtk.org/).

PyGTK provee una potente capa de abstracción sobre GTK+ para escribir programas en Python; se encarga de lidiar con el manejo de memoria y con el casteo de tipos.

Otras ventajas que obtenemos al utilizar PyGTK para el desarrollo de GUI's es la simplicidad e integrabilidad que ofrece Python (lenguaje interpretado, dinámico y orientado a objetos: http://www.python.org/), más la posibilidad de construir la interfaz utilizando Glade (http://glade.gnome.org/).

Glade es un constructor de interfaces de usuario para GTK+ y Gnome (http://www.gnome.org/). Glade guarda nuestros diseños en archivos XML, con lo cual obtenemos versatilidad pues éstos pueden ser usados en diversos lenguajes de programación (C, C++, Java, Perl, Python, y más), y la posibilidad de cargarlos dinámicamente a medida que se necesitan.


System Message: SEVERE/4 (<string> line 165)

Title level inconsistent:

Introducción al desarrollo en Plone
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

(Emanuel Sartor) - Aula 13.1, Jueves 14hs

Plone es un producto que provee una plataforma para el desarrollo de aplicaciones web centradas en contenidos. Plone es software libre y está desarrollado sobre Zope, un servidor de aplicaciones web programado en Python. En el desarrollo de aplicaciones web orientadas a contenido convergen varias tecnologías con las que el programador debe estar familiarizado. En esta charla se hará una breve reseña de las tecnologías involucradas en el desarrollo web usando Plone; se darán ejemplos de tareas típicas que debe enfrentar el desarrollador de una aplicación web construida sobre Plone; y se expondrán ejemplos del uso de Plone en proyectos reales.


System Message: SEVERE/4 (<string> line 176)

Title level inconsistent:

Descriptor tutorial
~~~~~~~~~~~~~~~~~~~

(Raymond Hettinger) - Auditorio Sarmiento, Jueves 15hs

Most of Python's advanced features are implemented with descriptors. Learning the descriptor protocol is the key to an advancedunderstanding of the language.

Learn the descriptor protocol, see how it is invoked, examine real examples from the language, and learn to write your own.

Walk away with a sound understanding of methods, properties, super, classmethods, and staticmethods.


System Message: SEVERE/4 (<string> line 191)

Title level inconsistent:

PloneGetPaid, estilo, calidad e ecommerce en un solo paquete
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

(Horacio Francisco Sebastian Durán Barrionuevo) - Aula 3.4, Jueves 16hs

Plone es un Content Management System que ofrece una amplia cantidad de opciones y tipos de datos que pueden ser ampliados y combinados de diferentes formas para poder obtener un sistema a medida sin necesidad de muchos conocimientos.

GetPaid da a una instalacion de Plone la opcion de convertirse en un portal de ecommerce manteniendo la calidad de Plone y sin perder su simplicidad.

Daremos un recorrido por las funcionalidades que nos provee GetPaid y veremos en un paneo general de como este simple proceso puede proveernos de una completa solucion de ecommerce para nosotros o nuestros clientes.


System Message: SEVERE/4 (<string> line 206)

Title level inconsistent:

Desarrollando Plone Batch dentro de Google Summer of Code
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

(Javier A. Mansilla) - Aula 3.1, Viernes 10hs

Plone es un sistema de gestión de contenidos hecho en python 100% libre con una amplia comunidad de usuarios y desarrolladores. Hasta hace poco, algo tan útil como básico le estaba faltando: editar un conjunto de objetos al mismo tiempo sin terminar con artritis de tanto usar el mouse. La idea de la charla es mostrar cómo se desarrolló la primera versión de un producto que permitirá hacer eso y que será parte del core de Plone en su próximo mayor release. Al mismo tiempo, la idea es contar lo fácil que es involucrarse con la comunidad Plone, y cómo funciona por dentro el programa que propulsa Google y que está dando ayudando a numerosos proyectos de software libre.


System Message: SEVERE/4 (<string> line 217)

Title level inconsistent:

Taller: Actividades y juegos educativos para la OLPC
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

(Héctor Sanchez / Alejandro J. Cura / Manuel Kaufmann) - Aula 3.3, Viernes 10hs

En este taller mostraremos como hacer juegos y actividades educativas, en muy poco tiempo, usando el lenguaje python y la biblioteca pygame. Para esto nos basaremos en Falabracman, un juego educativo hecho en 30 horas, y ganador del OLPC Game Jam 2008 en Porto Alegre. Este taller está orientado a gente que nunca hizo un juego, pero los asistentes deberán tener conocimientos básicos de programación. Los juegos resultantes podrán ser usados tanto en Linux, como en muchas otras plataformas, y mostraremos también como adaptarlos a la OLPC.


System Message: SEVERE/4 (<string> line 228)

Title level inconsistent:

Como colaborar con Python
~~~~~~~~~~~~~~~~~~~~~~~~~

(Manuel Kaufmann) - Aula 3.6, Viernes 14hs

La charla consiste en alentar a los oyentes a corregir bugs de Python mostrando lo sencillo que es y que no se requiere de grandes conocimientos para realizar los parches correspondientes. Se mostrará todo el proceso de corrección, desde la descarga del código fuente de Python hasta la creación de parches y su posterior envío, dando a conocer distintas formas de pedir ayuda en el proceso intermedio. Finalmente se dejará un espacio para preguntas.


System Message: SEVERE/4 (<string> line 239)

Title level inconsistent:

cocos2d: un framework para hacer juegos
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

(Ricardo Quesada, Lucio Torre) - Aula 3.4, Viernes 14hs

cocos2d es un framework para hacer juegos 2d, demos, y otras aplicaciones gráficas/interactivas. Posee varios features tales como: control de flujo, sprites, acciones, efectos, transiciones, menues, mapas tipo mosaico, labels, sistema de partículas, primitivas independientes de la resolución, aceleración por hardware (OpenGL), documentación, basado en pyglet (100% python), licencia BSD. En esta charla se describirán y se mostraran en "vivo" esos features.


System Message: SEVERE/4 (<string> line 250)

Title level inconsistent:

Core containers - Under the hood
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

(Raymond Hettinger) - Auditorio Sarmiento, Viernes 15hs

Look under-the-hood at the implementation of Python's container classes. Understand their performance implications. And walk away with a sound basic understanding of how they work and when to use them.


System Message: SEVERE/4 (<string> line 261)

Title level inconsistent:

/dev/wiimote > Experimentando con un wii remote en Gnu/Linux
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

(Juan Manuel Schillaci / Héctor Sanchez / Christian Andres) - Aula 3.1, Viernes 15hs

La charla intenta dar a conocer tecnicamente el dispositivo wiimote (que se encuentra en las consolas de wii de nintendo). Como implementarlo en Linux, conocer las librerias disponibles, ejemplos, juegos y desarrollos multimedia y 3d que se estan llevando a cabo por los disertantes usando python como lenguaje de desarrollo.


System Message: SEVERE/4 (<string> line 272)

Title level inconsistent:

Hacer un juego es fácil
~~~~~~~~~~~~~~~~~~~~~~~

(Daniel F. Moisset) - Aula 3.6, Viernes 16hs

Gran parte de los aficionados a la programación también juegan, y a casi todos ellos les gustaría programar juegos. Muchos no inician un proyecto por incerteza de como empezar, y muchos proyectos empezados suelen acabar inconclusos por falta de tiempo o conocimiento. Esta charla trata de promover el desarrollo amateur de juegos. Para ello muestra, a través de un ejemplo concreto, que hoy en día hay excelentes herramientas (por supuesto, libres), que hacen que sea fácil convertirse en un programador de videojuegos. En la charla se mostrará casi por completo la programación de un juego simple.


System Message: SEVERE/4 (<string> line 283)

Title level inconsistent:

Usando Python para integrar mis datos con GoogleMaps, y viceversa
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

(Anthony Lenton) - Aula 3.4, Viernes 16hs

En versiones recientes, la API de Google para mapas nos permite superponer al mapa de Google todo tipo de datos, no solo polígonos y lineas simples. En esta charla exploraremos las posibilidades de combinar los datos de Google con nuestros propios datos tomados de aplicaciones GIS de escritorio, y fuentes de datos geográficos tradicionales obteniendo una experiencia web interesante.

Luego continuaremos viendo de qué manera podemos hacer el camino inverso, incorporando los datos de Google a nuestra aplicación de escritorio.