Cómo Usa Google Python[9]

3
¿Cómo usa Google Python? No recuerdo ahora muy bien cuál fue el twit que me llevó a los vídeos de las sesiones del Google IO 2011 . El caso es que me puse a ojearlas, y un poco decepcionante porque casi todas eran de Android y Google App Engine, dos temas que no toco. Otros años había algo más sobre arquitectura, escalabilidad y todo eso. Pero bueno, el caso es que di con una de Wesley Chun y Guido Van Rossum que era Python@Google , y ahí me picó la curiosidad para ver que contaban. Mi experiencia con Python es prácticamente inexistente, salvo unos meses trabajando con Jython para automatizar el despliegue de clusters de servidores de BEA WebLogic, allá por el 2007 ya. Supongo que muchos conocéis el lenguaje. Otros quizás no. Es un lenguaje interpretado, dinámico, orientado a objetos, y que a menudo se asocia con scripting pero que va mucho más allá. Puedes hacer cualquier tipo de aplicación en Python. Lo creó Guido Van Rossum mientras buscaba algo más sencillo para automatizar el despliegue de sistemas de lo que permitía C, ya que éste último no era nada amigable para los administradores. Su nombre viene de la afición de Guido por los Monty Python, y quizás lo que más atención llame (al menos a mi me lo llamó) a la hora de usarlo es el hecho de que no hay llaves, sino que los bloque se marcan por indentación, algo a lo que cuesta acostumbrarse. Como cuentan en la charla, el lenguaje subió en popularidad enormemente hace unos años cuando Google lo hizo el primer lenguaje soportado por Google App Engine. En esos momentos mucha gente supo que existía. Pero el lenguaje en sí es ya muy veterano, y en Febrero cumplió nada más y nada menos que 20 años. Otras curiosidades que indican un aumento de popularidad es que es el tercer término más buscado en las búsquedas de libros de programación, se mantiene entre el #6 y #7 del índice TIOBE y que es el único lenguaje que ha ganado el título de lenguaje de programación del año, también de TIOBE, en dos ocasiones. La comunidad es bastante abierta y amigable, y hay muchísimos frameworks. En el 2005 se bromeaba con que Python era el único lenguaje con más frameworks web que

description

er

Transcript of Cómo Usa Google Python[9]

Cmo usa Google Python?No recuerdo ahora muy bien cul fue el twit que me llev alos vdeos de las sesiones del Google IO 2011. El caso es que me puse a ojearlas, y un poco decepcionante porque casi todas eran de Android y Google App Engine, dos temas que no toco. Otros aos haba algo ms sobre arquitectura, escalabilidad y todo eso. Pero bueno, el caso es que di con una de Wesley Chun y Guido Van Rossum que eraPython@Google, y ah me pic la curiosidad para ver que contaban.

Mi experiencia con Python es prcticamente inexistente, salvo unos meses trabajando con Jython para automatizar el despliegue de clusters de servidores de BEA WebLogic, all por el 2007 ya. Supongo que muchos conocis el lenguaje. Otros quizs no. Es un lenguaje interpretado, dinmico, orientado a objetos, y que a menudo se asocia con scripting pero que va mucho ms all. Puedes hacer cualquier tipo de aplicacin en Python. Lo cre Guido Van Rossum mientras buscaba algo ms sencillo para automatizar el despliegue de sistemas de lo que permita C, ya que ste ltimo no era nada amigable para los administradores. Su nombre viene de la aficin de Guido por los Monty Python, y quizs lo que ms atencin llame (al menos a mi me lo llam) a la hora de usarlo es el hecho de que no hay llaves, sino que los bloque se marcan por indentacin, algo a lo que cuesta acostumbrarse.

Como cuentan en la charla, el lenguaje subi en popularidad enormemente hace unos aos cuando Google lo hizo el primer lenguaje soportado por Google App Engine. En esos momentos mucha gente supo que exista. Pero el lenguaje en s es ya muy veterano, yen Febrero cumpli nada ms y nada menos que 20 aos. Otras curiosidades que indican un aumento de popularidad es que es el tercer trmino ms buscado en las bsquedas de libros de programacin, se mantiene entre el #6 y #7 delndice TIOBEy que es el nico lenguaje que ha ganado el ttulo de lenguaje de programacin del ao, tambin de TIOBE, en dos ocasiones. La comunidad es bastante abierta y amigable, y hay muchsimos frameworks. En el 2005 se bromeaba con que Python era el nico lenguaje con ms frameworks web que palabras reservadas.

Quin usa Python?

En la charla ponen algunos casos de uso interesante. Como nombes de empresas salen muchos del sector de la animacin como Dreamworks, Pixar, Lucas o Disney. Organizaciones como la NSA o la NSA, distribuciones como Ubuntu o RedHat, VMWare, Netflix, Zillow, en fin como era de esperar pues mucha gente. Wesley Chun, comenta en la charla casos ms concretos e interesantes como el de Yahoo Mail, que hace 14 aos se presentaba su primera versin compltamente hecho en Python, bueno casi, eran 2/3 Python y un backend en C++. Lo construyeron un equipo de 10 personas en seis meses y esa primera versin se llamaba RocketMail (trmino que Yahoo intent relanzar hace unos aos). Wesley da tambin otros ejemplos de compaas en las que ha estado y de casos de uso como el desarollo de juegos para Facebook en Siine, software mdico para anlisis de enfermedades de mdula espinal o software embebido en hardware de Cisco para rechazar spam.

Por cierto que otra curiosidad que sale en la charla es la de como hicieron el libroPython Web Development with Django. 3 autores, que nunca se vieron, escribieron el libro en texto plano (Markdown) y utilizaron Python para compilar el libro txto del libro, enchufarle el cdigo fuente, ejecutar unit tests sobre el cdigo y finalmente generar el html/pdf.

Cmo usa Google Python?

Pero al grano. Cmo usa Google Python? Pues el caso es que parece que ya lo utilizaban antes incluso de existir, y en Python estaba hecha parte de la tesis que origin Google. Hoy por hoy, Python es uno de los lenguajes reconocidos oficialmente para uso interno de Google, es decir que los desarrolladores tienen permitido utilizar. Hoy por hoy, Python es un proyecto esponsorizado por Google, y la realidad es que muchos committers y miembros de la comunidad son empleados de Google.

Los proyectos ms destacados en Google que utilizan Python sonGoogle Code, Google App Engine, Protobufs, el formato de intercambio de datos de Google, y el caso de xito ms notable: YouTube. YouTube ya utilizaba Python antes de ser adquirido por Google. Es el ejemplo ms grande de uso de Google. En los inicios usaban Apache + mod_python + MySQL, y poco a poco fueron encontrando problemas de escalado. En la mayor parte de las veces esos problemas se solucionaban eliminando el cdigo de Python y cambindolo por rutinas en C.Aqu hay unas transparenciasen los que se entra ms en detalle en la escalabilidad de YouTube y Python.

Ms sitios donde se usa Python? Parece que en la parte de testing y QA, en el sistema de build original de Google, en la herramienta de revisin de cdigo, SWIG, y un montn de aplicaciones propias de Google y escritas en Python que corren sobre Google App Engine.

Ya para terminar con este resumen de la charla. Parece que la comunidad anda un poco enfadadilla por el hecho de que Python 3.0 no es completamente compatible con Python 2.x. En particular hay pequeos cambios pero que sin embargo afectan a la mayor parte de aplicaciones, como el hecho de pasar de print 'Hola Mundo' a print('Hola Mundo'), algo que ha generado bastantes crticas.

Un punto un poquillo tenso, dentro de la enorme jovialidad y cordialidad de la charla, es cuando uno de los asistentes (Troll!) le pregunta a Guido van Rossum que si Python es tan genial por qu en Google han escogido Java para plataformas como Android. Tras un "esa pregunta es en serio?". Guido contest con un a veces se escoge el lenguaje donde es ms fcil encontrar talento. Yo aadira el que si creas un producto enfocado a desarolladores, apuntas al lenguaje con ms desarolladores. Sea un lenguaje mejor o peor, es ms una eleccin de negocio que otra cosa.

Y eso es todo. Os lo sabais ya todo u os han sorprendido cosas como a mi?