Python Argentina •  Planeta Full

viernes, 03 septiembre

00:25

Mariano Reingart: Se viene el PyDay 2010 Buenos Aires

Este sábado 4 de septiembre es la jornada sobre el lenguaje de programación Python "PyDay Buenos Aires 2010" organizado por PyAr:

http://www.pyday.com.ar/

Entre varias charlas agendadas estaré presentando web2py (una herramienta para desarrollo web simple y poderosa) y seguramente en los espacios abiertos y/o charlas relámpago hablaremos sobre los proyectos PyAfipWs (factura electrónica libre), PySimpleSOAP (webservices), PyFPDF, Gestión Libre, y demás temas generados desde nuestro emprendimiento "Sistemas Ágiles", sin olvidarnos de PostgreSQL y su nueva versión 9.0!

miércoles, 01 septiembre

10:16

Marcos Vanetta: Agregar resaltado de código a gedit

En un post anterior les comente sobre gedit, un excelente editor y potencialmente un gran IDE. Hace unos días atrás volví a usarlo para unos experimentos en Ruby on Rails. Pero había archivos en los que no funcionaba bien el resaltado de código (hight light code). Principalmente en los archivos de vistas ERB. Buscando encontré [...]

lunes, 30 agosto

10:24

Marcos Vanetta: ActiveRecord, a brief introduction – Part 1

Active record es un patrón de diseño. Es un enfoque al problema de acceder a los datos de una base de datos. Donde cada tabla es una clase por lo que cada fila es asociada con objetos del lenguaje de programación usado. Cuando se crea uno de estos objetos, se añade una fila a la [...]

domingo, 29 agosto

13:58

Roberto Alsina: PET: English Translation Issue 1 tiene fecha

Porque funcionó una vez, hagámoslo de nuevo. Acabo de ponerle una fecha completamente arbitraria y probablemente muy cercana para la salida del primer número en inglés de la revista "PET: Python Entre Todos".

La versión en inglés se llama PET, que significa "Python Entre Todos: English Translation".

Va a tener los mismos contenidos que el primer número en castellano... y va a ser la última que hagamos así.

De ahí en más, las dos versiones van a salir al mismo tiempo, si podemos.

Por lo tanto, va a haber un lapso muy corto entre el primer número en inglés y el segundo (ojalá que menos de un mes).

Así que , no cambien de canal


martes, 24 agosto

22:00

Juanjo Conti: Un servidor web con pocas líneas de Python

Hoy un amigo necesitaba un servidor web para engañar a un programa. Cada vez que el programa iniciaba, se conectaba con un servidor web para verificar si había actualizaciones disponibles.

El nombre del host a dónde se hacía la petición era leído de un archivo de configuración, por lo que lo podíamos cambiar. El resto solo era levantar un servidor web que responda con la información apropiada.

En la librería estándar de Python tenemos todos los elementos necesarios para realizar la tarea. Luego de probar un poco, el resultado final fue algo como esto:

PORT = 8090
 
from BaseHTTPServer import BaseHTTPRequestHandler
import SocketServer
import cgi
 
class MyHandler(BaseHTTPRequestHandler):
 
	def do_GET(self):
		self.send_response(200)
		self.end_headers()
        	self.wfile.write('1.9.1')
 
	def do_POST(self):
		form = cgi.FieldStorage(
			fp=self.rfile, 
			headers=self.headers,
			environ={'REQUEST_METHOD':'POST',
			'CONTENT_TYPE':self.headers['Content-Type'],
			})
		print form
		self.send_response(200)
		self.end_headers()
		self.wfile.write('1.9.1')
 
httpd = SocketServer.TCPServer(("", PORT), MyHandler)
 
print "serving at port", PORT
httpd.serve_forever()

Levanta en localhost y responde la cadena ’1.9.1′ al ser consultado tanto por GET como por POST y en el caso de POST, también imprime los valores recibidos.

12:48

Juanjo Conti: Twitter updates desde Twisted

Tenés un servidor escrito en Twisted? Tenés eventos críticos o importantes que mandás por mail o a celulares? Qué tal publicarlos en Twitter?

Usando Twitty Twister podemos implementar este feature de forma muy sencilla.

Dentro de tu servidor Twisted:

from twittytwister import twitter
twitclient = twitter.Twitter(username, password)

y donde se produzca un evento:

twitclient.update(mensaje)

Cual es la diferencia con hacerlo a mano o usar una de las tantas librerías que vienen para Twitter/Python? Postear una actualización en Twitter o cualquier otra petición a un servidor externo tiene una naturaleza bloqueante y en un framework de concurrencia colaborativa, como es Twisted, no podemos darnos ese lujo. Las llamadas a update y otros métodos de este objeto retornan un objeto Deferred al cual se le pueden añadir callbacks o errbacks.

Muy cheto.

lunes, 23 agosto

11:00

Marcos Vanetta: Preparando mi entorno Python en Ubuntu 10.04

Ubuntu trae instalado python por defecto: malev@dell:~$ python -V Python 2.6.5 Primero instalamos pip, pero para esto necesitamos python-setuptools: sudo apt-get install python-setuptools Bajamos pip de aquí [1], descomprimimos y hacemos: sudo python setup.py sudo ln -s /usr/local/bin/pip-2.6 /usr/bin/pip Algunos intérpretes “bonitos”: sudo apt-get install ipython bpython Bazaar Ya he hablado de este fantástico CVS [...]

domingo, 22 agosto

11:41

Andrés Gattinoni: PET: Python Entre Todos, primera revista de Python

A esta altura ya es una noticia vieja, pero quizás alguno no se haya enterado de que la semana pasada salió publicada la revista PET: Python Entre Todos.

La revista es una producción colaborativa de la Comunidad PyAr, con artículos de muy alto nivel de distintos participantes de la lista y el esfuerzo especial de sus dos editores, Roberto Alsina y Emiliano Dalla Verde Marcozzi.

PET: Python Entre Todos Num. 1

PET: Python Entre Todos Num. 1

Los artículos incluidos en la revista son:

  • PET First Shot
  • Cómo contribuir a PET
  • PyAr, la historia
  • from gc import commonsense – Finish Him!
  • Concurrencia Indolora: el módulo processing
  • Introducción a Unit Testing con Python
  • Taint Mode en Python
  • Dinamismo Aplicado
  • Decorando Código (Parte 1)
  • Web2Py Para Todos
  • ¿Cómo Está Hecha Esta Revista?
  • Desafío PET
  • Un poco de xkcd

La publicación fue todo un éxito porque se dinfundió rápidamente por Internet con la ayuda de diversos medios: blogs, twitter, barrapunto, etc. En mi opinión esta buena recepción se debió dos factores clave: la calidad del contenido que es realmente muy alta y que gracias a las tecnologías de software libre utilizadas para la edición de la revista, la misma pudo ser publicada en múltiples formatos: HTML online, PDF en distintos layouts y para e-book readers en ePub y Mobi. A todos ellos se puede acceder en la página del primer número de la revista.

Además, al poco tiempo de publicada la revista, Roberto descubrió que PET es la primera revista de Python… en el mundo!. Esto animó a la comunidad a crear una versión en inglés para poder difundirla a un mayor público. Personalmente tuve la opotunidad de colaborar traduciendo dos artículos, “PyAr, la historia” de Facundo Batista y “¿Cómo Está Hecha Esta Revista?” de Roberto Alsina. De esta manera, si no puedo aportar con un artículo interesante, por lo menos puedo colaborar para que las cosas interesantes que escriben otros puedan llegar a un público más amplio.

Así que seguramente pronto estemos anunciando la versión en inglés del número 1 de PET. Y en el futuro, según entiendo, la idea es poder incorporar artículos de colaboradores internacionales en ambas versiones de la revista.

sábado, 21 agosto

19:48

Martín Cerdeira: VbAutodoc: Auto documentando VB

Qué lindo sería contar con una herramienta que, lea el código fuente (en este caso en VB) y me arme un archivo de documentación sobre las funciones y sub rutinas (preferentemente en html).
Cómo soy programador y me gusta python =) decidí hacerla. La bautizé vbautodoc (muy original) y está disponible una muy precoz temprana versión.

Próximamente, voy a mejorar aspectos en cómo se construyó, por ejemplo, el pedazo de html que uso como base, lo metí dentro del código, y sólo funciona para documentar VB, cuando, si se parametriza podría servir para cualquie lenguaje.

Web del proyecto
Descargas

15:21

Andrés Gattinoni: Una vueltita por las Charlas Abiertas de Python en La Tribu

Charlas Abiertas de Python en La Tribu

Hoy pude darme una vuelta, por primera vez, por las Charlas Abiertas de Python en La Tribu. Le robé un tiempo al estudio y me dirigí a Lambaré 873 junto a un amigo, a ver qué tal estaban esas charlas.

No esperaba encontrar grandes revelaciones porque la charla a la que iba era la de Introducción al Desarrollo Web I, a cargo de Alejandro Cura, y yo ya trabajo en el rubro hace algunos años. Sin embargo me interesaba verle las caras a algunos miembros de la comunidad por quienes tengo un gran respeto.

Me encontré con un ámbito muy amigable, lleno de gente deseosa de aprender. Me alegró mucho encontrar algunas personas “mayores” (por lo menos mayores al tipo de gente que uno suele conocer en este acotado segmento del mercado laboral), muy interesadas y participativas. La charla estuvo muy bien, era una introducción para quienes no tienen idea de en qué consiste hacer un sitio web (y preparatoria para la próxima charla que dará algunos conceptos básicos de Web2Py). Me pareció muy copado que se le diera un poco de bola al protocolo HTTP y cómo funciona, porque en mi experiencia laboral me he encontrado con desarrolladores que pueden manejar muy bien algunos lenguajes como PHP, Javascript o HTML pero no tienen idea de cómo llegan esas cosas “a la mesa” del browser.

Incluso me encontré aprendiendo una cosita de CSS que no sabía y era la posibilidad de incluir tipografías externas (que quisiera ver qué tan compatible es con la bosta de IE, pero que me resultó muy útil).

Me hubiera gustado quedarme a la charla siguiente del eminente Roberto Alsina, pero lamentablemente tenía que volver a la cueva a estudiar.

Felicito desde este humilde lugar el enorme trabajo que está realizando la comunidad PyAr organizando estas charlas que permiten acercar herramientas a la sociedad para conocer y apropiarse de las nuevas tecnologías asociadas a la informática e Internet.

Administración y hosting cortesía de Net Managers SRL

Tema por Andrés Antista

Banner por Joaquín Sorianello

Grazr OPML - FOAF - RSS - Log

Blogs

Alejandro Santos
Anthony Lenton
Manuel Muradás
Gonzalo Sainz Trápaga
Marcos Vanetta
Alberto Paparelli
Santiago Peresón (Yaco)
Margarita Manterola
Santiago Bruno
Paul M. Dorr
Esteban Ordano
Evita
Joaquin Sorianello
Marcelo Fernández
Roberto Alsina
Juan Pedro Fisanotti
Gabriel Patiño
Guillermo Heizenreder
Marcos Dione
Humitos
Mauro Lizaur
Mariano Guerra
Nicolás Miyasato
Martín Gaitán
Pablo Alejandro Costesich
Sebastián Bassi
PyAr en la OLPC
Carlos Joel Delgado Pizarro
Mariano Reingart
Ramiro Morales
San Cayetano
Martín Cerdeira
Mariano Draghi (cHagHi)
Juanjo Conti
Héctor Sánchez (Karucha)
Pablo Benjamín Arroyo
Andrés Gattinoni
Facundo Batista