Archive for the 'Python' Category

FeedJack: Ya está disponible

Ya había comentado acerca de ésta aplicación en la entrada FeedJack: Un Planet con esteroides, resulta que hace pocos días Gustavo Picón anunció la salida de la versión 0.9.6 bajo licencia BSD. Algunas de las características más resaltantes de esta aplicación son:

Soporte de virtual hosts
Esto quiere decir que desde la misma instalación y la misma Base de Datos e interfaz de administración, se manejan múltiples planetas. Si hay feeds en común estos se bajan una sola vez para optimizar recursos.
Temas (Themes)
Cada sitio (virtual host) puede tener temas distintos.
Soporte de folcsonomías (etiquetas o tags)
Muy popular en las aplicaciones de la Web 2.0, se ha optimizado el algoritmo.
Generación de páginas o feeds por folcsonomías
Ejemplo: http://www.chichaplanet.org/tag/django/
Generación de páginas o feeds por miembros
Ejemplo: http://www.chichaplanet.org/user/1/
Generación de páginas o feeds de una categoría en especial de un miembro particular
Ejemplo: http://www.chichaplanet.org/user/1/tag/django/
Generar un feed general.
Ejemplo: http://www.chichaplanet.org/feed/
Histórico de entradas
Entre muchas otras cosas. La principal ventaja frente a Planet es el soporte de un histórico de entradas o posts, por el uso de una Base de Datos.

Para conocer los detalles acerca de los requerimientos, el proceso de instalación, configuración y la modificación de los temas lea con detenimiento la entrada Feedjack - A Django+Python Powered Feed Aggregator (Planet).

Ya que le he quedado un poco mal a Gustavo con la ayuda que me pidio en cuanto al desarrollo de un tema (theme) para FeedJack, invito a mis dos ó tres lectores a colaborar con el proyecto.

Por mi parte solo me queda felicitar a Gustavo Picón por el estupendo trabajo que ha realizado. Además, amigo, aprovecho el momento para decirte que cuentas con mi ayuda para el desarrollo de un theme, solo dame tiempo mientras me desocupo de las actividades en la Universidad, estas últimas semanas han estado muy ocupadas. Entre las asignaturas: Redes de Computadoras, Programación Paralela y Distribuida, Compiladores (menos mal al profesor de Inteligencia Artificial no le ha dado por colocarnos un parcial), si a eso le sumas, el estudio de Haskell y Alex, están contribuyendo sistemáticamente en mi demencia.

Breve reseña del FLISOL 2006, Capítulo Mérida-Venezuela

Al llegar a eso de las 9:30 a.m. (hora local) estaban transmitiendo el video Trusted Computing (subtítulos español), un excelente video en donde nos muestran cuan peligroso puede ser la “mala interpretación” que tiene la industria acerca del concepto “Trusted Computing”, modelo en el cual la industria no le permite a los usuarios (comunidad) elegir entre lo que ellos consideran malo o nó, el problema es que ya deciden por tí, simplemente porque la industria no confía en nosotros.

Después de mostrar el video, Hector Colina, uno de los coordinadores del evento, procedió a dar la bienvenida a los asistentes al II Festival Latinoamericano de Instalación de Software Libre, capítulo Mérida, Venezuela. De inmediato, Hector continúo hablando y nos sorprendió con una charla denominada Software Libre y Libre Empresa, en donde nos hablaba de la interesante filosofía detrás del modelo de Software Libre, algunos piensan equivocadamente que bajo el esquema de Software Libre no se es posible generar ganancias, se demostró que es posible hacerlo. También hablo sobre las ventajas técnicas que brinda el Software Libre frente al Software Privativo.

Posteriormente se dió comienzo a las demostraciones de LTSP (Linux Terminal Server Project) por parte de José David Gutierrez, quien también coordinó el evento y es miembro de la Cooperativa AndiNuX, no recuerdo en este instante cuales eran las características que poseía el servidor, pero recuerdo que el cliente sobre el cual se hizo la demostración tenía apenas 40 MB de RAM (sí, leyo bien, 40 MB) y se logró levantar el entorno de escritorio KDE y ejecutar algunas aplicaciones, José comentaba que los requisitos mínimos de memoria RAM eran 16, mientras que lo óptimo erán 32 MB de RAM, así que amigo, si usted esta leyendo esto, no bote su potecito (equipo de bajo recursos de hardware), bajo el esquema de Software Libre podemos recuperarlo, quizá podría donarlo y regalarle una sonrisa a un niño que reciba educación en una escuela con pocos recursos.

Posteriormente comenzaron a colocar algunos videos a los asistentes, entre los cuales recuerdo haber visto Revolution OS, en paralelo, se realizaba el proceso de instalación desde tempranas horas de la mañana, al final de la jornada se lograron contabilizar más de 20 máquinas a las cuales se instaló GNU/Linux, incluyendo potecitos de 32 MB de RAM hasta máquinas de escritorio con procesadores de 64 bits, por supuesto, a una que otra portátil también se le instaló GNU/Linux, además, se regalaron CDs de Debian, Ubuntu, entre otros.

En la tarde el profesor Francisco Palm comenzó su charla Carpintería del Software Libre: un enfoque desde el lenguaje de Programación Python, en ella se nos hace reflexionar acerca de nuestra realidad actual en Venezuela, presentamos poca penetración de internet en nuestra sociedad. Bajo el esquema de Software Privativo, no se le brinda apoyo a la comunidad, no se presenta una innovación alguna.

El profesor Palm también converso sobre puntos interesantes acerca de la Ingeniería de Software Libre, como la Fundación Apache, Debian o Mozilla no presentan certificaciones y no les importa éste hecho en particular, puesto que su desarrollo es robusto, de hecho, muestran como funcionan por dentro. Entre otras cosas bastante interesantes.

Enseguida comenzaron otra charla 2 pupilos del profesor Palm, Diego Díaz y Freddy López, en donde se expuso el Proyecto SIGMA: Soluciones Libres para el mundo Científico, en esta charla pudimos observar una serie de demostraciones del sistema estadistico R. El proyecto SIGMA resulta de una iniciativa de los miembros de la Escuela de Estadística y el Instituto de Estadística Aplicada y Computación (IEAC) de la Universidad de Los Andes.

Sin mucho receso, Leonardo Caballero comenzó su charla acerca de Desarrollo Web con Mozilla FireFox, aca se explicó acerca de las extensiones que resultan muy útiles al desarrollador de páginas web, como por ejemplo, la extensión Web Developer, de manera adicional, se demostró cuan personalizable (desde utilizar temas hasta incluso simular comportarse como otro navegador) puede ser Firefox para un usuario particular, desde extensiones para el clima (ForecastFox) hasta herramientas de blogging.

Particularmente, para el desarrollo web utilizo más extensiones de las que mencionó Leonardo, entre ellas puedo mencionar: CSS Validator, ColorZilla, entre otras. Prefiero no continuar mencionando la lista de extensiones que poseo, se supone que sea una breve reseña, quizá en otro artículo hablaremos acerca de las extensiones de Firefox.

Un poco más tarde, el licenciado Axel Pizzi, quien pertenece a la agencia de traducción y servicios lingüisticos translinguas, conversó acerca del uso de herramientas CAT (Computer aided Translation) bajo el esquema de Software Libre, simplemente se mostraba las bondades de la traducción asistida por computadora, es una manera de traducir contenido en donde el ser humano (traductor) utiliza software diseñado para brindar soporte y facilitar ésta ardua tarea.

Algo nervioso se encontraba Jesús Rivero (no confundir con neurogeek, ok?), pues se estaba haciendo tarde para su charla, Cooperativismo y Software Libre, en donde Jesús mostró como el esquema de desarrollo colaborativo es sumamente útil en las Cooperativas.

Y ya para finalizar la jornada, comence mi charla sobre Desarrolo Web en Python utilizando el framework Django, a manera de introducción, comence a hablar del lenguaje de programación Python, sus bondades, que empresas le utilizan actualmente y que proyectos han desarrollado, entre dicha lista se incluyen las siguientes: Google, Yahoo!, empresas farmacéuticas (AstraZeneca) de gran escala mundial, Industrial Light & Magic (sí, esa misma que está pensando, es la empresa iniciada por George Lucas en el año de 1.975, la encargada de los efectos especiales de la saga “Star Wars”, no solo eso, en su lista se incluyen películas como “Forrest Gump”, “Jurassic Park”, “Terminator 2”, entre otros).

Posteriormente comence a adentrarme ya en el tema que me interesaba, Desarrollo Web, en mi caso particular, hable sobre como utilizar el framework Django, desde la instalación del framework, la instalación de PostgreSQL (recomendada) y del adaptador a dicha base de datos en python, psycopg, hasta la construcción de la aplicación. Para mayor detalle acerca de esta presentación solo esperen un próxima entrada, quisiera ampliar algunos tópicos para dejarlos un poco más claros.

Si desean ver algunas fotos que logré tomar del II Festival Latinoamericano de Instalación de Software Libre (FLISOL), Capítulo Mérida - Venezuela, pueden revisar el set de fotos FLISOL 2006 de mi cuenta en flickr.

Debo confesar que estaba bastante nervioso al principio porque era mi primera charla. Espero que todo haya salido bien y les haya gustado.

Bueno, finalizamos las actividades como a las 7:30 p.m. (hora local), luego de ello ayudamos a los muchachos a acomodar las cosas y guardarlas en las oficinas de Fundacite Mérida.

Desde mi punto de vista, ha sido una grata experiencia, cualquier corrección a la reseña es bienvenida, pido disculpas si he dejado a alguien por fuera, esta reseña no estaba anotada en ningún medio escrito, solo he comenzado a describir las situaciones que recuerdo, lo más seguro es que olvide algún detalle importante, andaba un poco distraído instalando Debian y Ubuntu en el Festival.

Por supuesto, cualquier corrección, crítica constructiva acerca de la charla que dí se los agradecería, todo sea por mejorar dicho material y publicarlo, por supuesto, manteniendo una licencia libre.

FeedJack: Un Planet con esteroides

FeedJack es una mejora hecha por Gustavo Picon (a.k.a. tabo) del muy conocido Planet, la mejor muestra de la funcionalidad de este software se puede apreciar en el planeta peruano ChichaPlanet.

Gustavo Picon, autor del reemplazo del Planet en Django, afirma que el código fuente todavía no está disponible, pero piensa hacerlo público bajo el esquema de código abierto tan pronto logre depurarlo un poco y redacte cierta documentación, coincido con el autor cuando éste afirma que: si un software no posee documentación, no existe.

FeedJack ofrece algunas características que le dan cierta ventaja sobre el Planet, algunas de ellas son:

  • Maneja datos históricos. Por lo tanto, usted puede leer entradas antiguas.
  • Realiza un análisis más exhaustivo de las entradas, incluyendo sus categorías.
  • Es capaz de generar páginas de acuerdo a las categorías de las entradas.
  • Brinda soporte al sistema de folcsonomías (etiquetas), opción muy popular en la Web 2.0.
  • Utiliza el lenguaje de plantillas de Django

Mayor información y detalle en la entrada Django powered chicha planet with feedjack, de Gustavo Picon.

Charla sobre el lenguaje de programación Python

La ingeniera Andrea Muñoz me notifica que el día Jueves 23 de Febrero se estará llevando a cabo la charla Carpintería del Software Libre, un enfoque desde el lenguaje de programación Python, en donde el ponente será el profesor Francisco Palm, seguramente estará muy interesante.

La cita es el día 23 de Febrero, a las 8:30 a.m. en el Núcleo La Hechicera, Facultad de Ingeniería, Nivel Patio, Ala Sur, Labtel II, Estado Mérida (Venezuela).

La invitación es realizada por el Consejo de Computación Académica (CCA) de la Universidad de Los Andes, gracias al espacio que ofrecen para la difusión del Software Libre, “Jueves Libre”

Desgraciadamente hasta ahora no puedo asistir a la charla, debo presentar un examen de Ingeniería del Software el mismo día, a la misma hora. Trataré de hablar con Jesús Molina o Andrea Muñoz para ver si puede grabarse en algún medio permanente esta charla.

Clientes BitTorrent

Desde mi punto de vista Azureus es un cliente BitTorrent que cae en los excesos, aparte de ello es demasiado lento y por si fuera poco consume una gran cantidad de recursos del sistema.

Si usted es usuario de Ubuntu Linux, seguramente estará preguntándose, ¿por qué buscar un cliente BitTorrent si Breezy incluye uno? , bueno, si le soy sincero, ese cliente apesta, tiene muy pocas opciones.

En los siguientes párrafos veremos dos alternativas, que desde mi punto de vista tienen ciertas virtudes, las cuales muestro a continuación.

  • No caen en los excesos.
  • Son rápidos.
  • No consumen gran cantidad de recursos del sistema.
  • Ofrecen muchas opciones.

Sin mas preámbulos, les presento a Rufus y freeloader, clientes BitTorrents alternativos de gran envergadura.

FreeLoader

Freeloader, es un manejador de descargas escrito en Python y brinda soporte a torrents.

Para instalar freeloader debemos seguir los siguientes pasos en Breezy.

sudo aptitude install python-gnome2-extras python2.4-gamin

Seguidamente diríjase al sitio oficial de freeloader y descargue las fuentes del programa, para la fecha en la cual se redactó este artículo la versión más reciente de este programa es la 0.3.

wget http://www.ruinedsoft.com/freeloader/freeloader-0.3.tar.bz2

Luego de haber descargado el paquete proceda de la siguiente manera:

$ tar xvjf freeloader-0.3.tar.bz2
$ cd freeloader-0.3
$ ./configure
$ make
$ sudo make install

Recuerde que para poder compilar paquetes desde las fuentes necesita tener instalado previamente el paquete build-essential

Rufus

Rufus es otro cliente BitTorrent escrito en Python.

Vamos a aprovecharnos del hecho que existe una versión estable (0.6.9) compilada * para Breezy, los pasos son los siguientes:

$ wget http://strikeforce.dyndns.org/files/breezy/rufus.0.6.9/rufus_0.6.9-0ubuntu1_i386.deb
$ sudo dpkg -i rufus_0.6.9-0ubuntu1_i386.deb

* Esta versión ha sido compilada por strikeforce, para mayor información lea el hilo Rufus .deb Package.

Python Sidebar

Para aquellos que al igual que yo comienzan en el mundo de la programación en Python, siempre es recomendable tener un acceso rápido y sencillo a la documentación de referencia, esto es posible realizarlo a través de la utilidad Python Sidebar.

Además, con Python Sidebar, podrá realizar búsquedas en sitios relacionados con Python y listas de correo.

Esta herramienta está disponible para la familia de navegadores de la Fundación Mozilla.