viernes, 28 de noviembre de 2008

Crear Interfaces Gráficas de Usuario en Python

En somoslibres.org se han tomado la molestia de presentar los métodos y los toolkits más populares usados para la creación de interfaces gráficas de usuario (GUIs) con Python: TkInter, wxPython, PyGTK y PyQt.

Las interfaces gráficas de usuario o GUIs en su acrónimo son las "ventanas" que muestran algunos programas y que sirven para mostrar información o hacer peticiones al programa.

Que os sean útiles y prácticas. Más info en: http://somoslibres.org/modules.php?name=News&file=article&sid=2226

miércoles, 19 de noviembre de 2008

JetBrains lanza IntelliJ IDEA 8

La última versión del innovador IDE Java de siempre centrado en la productividad, presenta ahora soporte para SQL, diagramas de tipo UML, Seam de JBoss, FreeMarker & Velocity, ademásd de mejorar la experiencia de codificación de Java

Más info: http://www.jetbrains.com/

lunes, 27 de octubre de 2008

Editor de codigo gratuito para Python (entre otros): Notepad++ 5.1

Notepad++ 5.1 es una aplicación software que no consume muchos recursos y entre todas sus ventajas destaca principalmente la de reconocer la sintaxis de aproximadamente 40 lenguajes de programación como por ejemplo: C, C++, HTML, XML, ASP, JAVA, SQL, Perl, Python, CSS.


Además presenta un sistema "syntax highlight" el cuál proporciona cambios del color de la sintaxis para adecuarse a las peculariedades de cada lenguaje.

Funcionalidades más destacables:

  • Editor WYSIWYG (What you see is what you get)
  • Permite la apertura múltiple de ficheros
  • Soporta tabs
  • Soporta plugins
  • Soporta Zoom in/Zoom out
  • Bookmarks
  • Soporte para expresiones regulares
  • Soporte drag n’drop de ficheros (arrastrar y soltar)
  • Grabación de macros y reproducción de los mismos
  • Licencia: GPL
  • Sistemas Operativos: Windows 9x/2k/XP/Vista

Descárgalo desde aquí: Notepad++ 5.1 Final (1.71MB). Más información en: http://notepad-plus.sourceforge.net/

domingo, 26 de octubre de 2008

Google App Engine soportará Java además de Python

La plataforma Google App Engine, donde los usuarios pueden hacer funcionar sus propias aplicaciones web utilizando la infraestructura de Google, presentada hace ya un tiempo.

Hasta el momento y desde sus comienzos la plataforma mantuvo como único lenguaje de programación disponible a nuestro querido Python. Sin embargo, en el Google Developers Day, celebrado el 18 de octubre pasado en Bangalore, India, Google anunció que el App Engine pronto tendrá soporte para Java.

Los motivos van desde, las peticiones de los usuarios y desarrolladores y sobre todo por la plataforma Android, la cual corre en una "máquina virtual de java", en sus siglas en ingles; JVM, propia de Google conocida como Dalvik.

De esta manera, se busca fomentar el desarrollo de aplicaciones para la plataforma multisistema Android brindándole a los programadores un entorno donde probar sus aplicaciones de manera práctica y eficaz.

jueves, 23 de octubre de 2008

Búsqueda eficiente de texto en Google App Engine

Sorprendente es que Google no soporte búsquedas de texto de manera eficiente en Google App Engine. Las funcionalidades que existen tienen importantes limitaciones y están muy poco o nada documentadas.

Sin embargo gimenete nos muestra en el ejemplo de continuación cómo utilizar las funcionalidades existentes. Como nos dice el, en el paquete google.appengine.ext.search se encuentra la clase SearchableModel, esta es la clase base que tendremos que utilizar para poder realizar búsquedas de texto en las clases persistentes, en vez de extender de db.Model extenderemos de db.SearchableModel.

Para continuar leyendo este artículo pulsa aquí.

jueves, 9 de octubre de 2008

Lanzado el Python 2.6

Esta nueva versión incluye, entre muchas cosas, nuevas características y mejoradas, correcciones y también nuevos módulos. Además es retrocompatible con sus anteriores versiones 2.x y al mismo tiempo trae herramientas para ayudar los programadores a migrar al Python 3.0.

Python 3.0 será lanzado este mismo año y será incompatible con Python 2. A pesar de eso Python 2 y Python 3 serán soportados simultáneamente en un "futuro previsible".

jueves, 2 de octubre de 2008

debug_mode=on: La Red social de los informáticos

debug_mode=on en palabras de sus creadores:

Por Internet es frecuente encontrar páginas de una temática concreta. Sobre una plataforma, sobre un lenguaje,… Sin embargo no sólo nos interesa una plataforma o lenguaje. La informática es una ciencia multidisciplinar. Un desarrollador web debe saber de HTML, CSS, javascript, seguridad, lenguajes del lado del servidor, SEO… Un administrador de sistemas debe saber de bash, perl, python, Linux, Windows,… Por eso hemos querido hacer una página de referencia sobre programación, administración de sistemas, desarrollo web, etc. en la que puedas encontrar la información que necesitas. Por eso hemos hecho debug_mode=ON: una red social para programadores e informáticos en general.

En fin si te gusta la informática y hacer amigos informáticos, este es tu sitio. Y no te olvides de que está totalmente en CASTELLANO de Castilla.

Enlace: http://debugmodeon.com/

jueves, 18 de septiembre de 2008

Tutorial de wxPython: "paso a paso"

En esta serie de apuntes se investiga y desarrollan breves tutoriales que mostrarán algunas de las librerias de Python en suficiente profundidad como para conocer sus prestaciones basicas.

En principio la libreria de widgets wxPython y en entregas futuras otras opciones como TKInter, QT, etc. Tambien se prentende presentar una metodologia basica de programacion de interfaces de usuarios graficas e introducir en las buenas practicas de programacion.

Accede al tutorial en: http://www.retronet.com.ar/?q=node/148

SQLMAP contra las vulnerabilidades SQL en aplicaciones web

Recientemente ha sido lanzado SQLMAP, una herramienta automática enteramente desarrollada en Python y cuyo objetivo es detectar vulnerabilidades de inyección SQL en aplicaciones del ambito web.

Descargas: http://sourceforge.net/

martes, 9 de septiembre de 2008

Django 1.0 para todo el mundo

Finalmente, ha sido liberada la versión estable 1.0 de Django, uno de los framework libres más famosos basados en Python.

Según se puede e en el blog del proyecto, este logro se debió en gran medida a la gran comunidad de usuarios y desarrolladores del proyecto Django y resaltan el gran esfuerzo realizado con estadísticas como 4000 commits y 2000 bugs corregidos desde la última versión estable.

Django es "el web framework para perfeccionistas con fechas de entrega". Pueden sondear un poco su poder en esta revisión.

Anuncio de Django

Revisón de esta versión

sábado, 30 de agosto de 2008

El software libre tuvo su fiesta en Argentina

La semana pasada, en el marco de las octavas Jornadas Regionales de Software Libre, estuvieron presentes en (la) Argentina algunos de los principales exponentes del movimiento.

En el soitu.es nos cuentan las últimas novedades de Firefox y Python, presentadas por Chris Hoffman y Raymond Hettinger, respectivamente.

También exponen las interesantes ideas de Jon "Maddog" Hall acerca del TCO y el valor del software libre y, de la mano de Rik Van Riel, los trucos que utiliza el kernel de Linux para hacer que los ordenadores modernos tengan un mejor rendimiento.

¿Qué paso allí? Más info en: http://www.soitu.es/participacion/2008/08/29/u/mackenzie_1219979656.html

martes, 19 de agosto de 2008

La española GMV mejorará el sistema de control de satélites de la mayor operadora de América del Sur con Python

GMV ha resultado seleccionada por Star One, la mayor operadora de satélites de Suramérica, para mejorar el sistema de control de satélites Brasilsat para los satélites Brasilsat B1, B2, B3 y B4.

Los sistemas GMV para dinámica de vuelo de satélites geoestacionarios focusGEO y de telemetría y telecomando hifly serán adaptados a los satélites Brasilsat. Los procesos estarán controlados por el software "autofly" el cual utiliza el lenguaje Python, para su automatización.

Noticia original: http://www.cibersur.com/

aMSN2 reescrito de nuevo, esta vez en Python

La nueva versión de aMSN ha sido reescrita desde cero y no estará escrita en Tcl/Tk, sino en Python, utilizando EFL (Enlightenement Foundation Libraries) para la interfaz gráfica.

La vista está separada del resto del código para que cualquiera pueda desarrollar o utilizar cualquier otro tipo de interfaz. Además aMSN2 contará con el respaldo de varios desarrolladores y ex-desarrolladores de emesene, una gran aplicación cliente para Linux.

VIsto en: http://mundogeek.net/
Más info en: http://www.amsn-project.net/index.php

viernes, 15 de agosto de 2008

Cursos gratuitos este verano

El i-Math comienza este lunes a impartir su Curso intensivo i-MATH de Software Libre orientado a Ciencias e Ingeniería. Estos cursos son gratuitos para miembros de los centros organizadores: USC, UDC, UVigo, UC, UCA, CESGA. Los cursos a impartir serán Software Matemático Básico, Diseño Asistido por Ordenador, Simulación Termomecánica de Procesos, Simulación en Multifísica, Entorno Estadístico, Software en Matemática Discreta. Para ello los cursos se basarán las siguientes herramientas libre: Octave, Maxima, Python, Salome, Code-Aster, Elmer, R, GAP, Singular, CoCoA y SAGE. Aún quedan plazas libres de las ediciones de los cursos en julio y septiembre.

Más info: http://mathematica.nodo.cesga.es/content/view/76/37/

Desde el e-ghost (grupo de Software Libre de la Universidad de Deusto) han organizado unos cursillos de verano en la Facultad de Ingeniería de misma universidad. La asistencia a cursillos y charlas es gratuita. Serán cursos cortos, de 2 ó 3 días y se colgará en la red el material utilizado al finalizarlos. Animaos a poneros al día en temas como GNU/Linux, aplicaciones libres desde Windows, Python, Blender, OpenGL, Ajax, VoIP, Moodle, LaTeX, etc.

Más info: http://www.e-ghost.deusto.es/cursillosjulio/

Múltiples vulnerabilidades en Python 2.x

Se han detectado múltiples vulnerabilidades en python causadas por desbordamientos de búffer que podrían ser explotadas por un atacante remoto para causar una denegación de servicio o ejecutar código maligno.

La vulnerabilidades están confirmadas para las versiones anteriores a la 2.5.2-r6.
Se recomienda actualizar a la versión 2.5.2-r6 o superior de python, disponible desde la web del fabricante:

http://www.python.org/

miércoles, 13 de agosto de 2008

Codepad: Comprueba tu código desde la web

Codepad es una aplicación web que nos va a permitir probar nuestros códigos para conocer si realmente funcionan desde el propio navegador web.

Muestra los errores de sintaxis cometidos y admite más de 13 lenguajes de programación diferentes entre los que podemos encontrar a C, C++, PHP, Python, Ruby, etc.

Cuando compile el código te dará una URL a la que te puedes conectar por chat o email.

Más info: http://codepad.org/

Autodesk presenta un software de animación de personajes 3D con soporte para comandos Python

Autodesk presentó hoy el software Autodesk MotionBuilder 2009, la última versión de su aplicación para la animación de personajes en 3D y tiempo real para proyectos de videojuegos, cine y televisión.

Esta nueva versión 2009 ofrece visualizaciones de alta calidad dentro de la ventana gráfica 3D, un equipo de herramientas intuitivo para la simulación en tiempo real y capacidades ampliadas de scripting para una integración más ajustada del proyecto.

El lenguaje de secuencias de comandos Python incluye ahora un editor de guión completo con revisión sintáctica y subrayado de comandos. También está disponible un soporte mejorado para los flujos de trabajo involucrados en MotionBuilder y en el sistema Biped de la aplicación Autodesk 3ds Max o la manipulación de personajes con cinemática inversa de cuerpo completo (FBIK) de Autodesk Maya.

Más info: http://usa.autodesk.com/

sábado, 2 de agosto de 2008

Microsoft se vuelve patrocinador oficial de Apache

Recientemente, Microsoft anuncio que se unirá a Google y Yahoo para convertirse en patrocinador oficial de la Fundación Apache Software. Como parte del acuerdo la compañía donará por lo menos $100.000 al año para financiar el proyecto.

Esta noticia se dio a conocer por el director de estrategia de Microsoft, Sam Ramji, que dejó claro que esto no significaba que la compañía tenía planes de abandonar su tecnología IIS para servidores. Además, se mencionó que están contribuyendo con código ADOdb – una base de datos para PHP y Python – y también prometieron ofrecer especificaciones para Windows Server y protocolos .NET Framework libres.

Más info y visto en: http://www.techspot.com/

disponible la versión 1.0 de openSUSE Build Service

openSUSE Build Service acaba de salir de la fase beta para convertirse en una aplicación más estable. Este servicio, orientado a desarrolladores, permite gestionar el código fuente y crear paquetes para las diferentes distribuciones soportadas de forma que las aplicaciones creadas pueden ser distribuidas de una forma muy fácil y cómoda.

Además de la interfaz web accesible desde la página principal del proyecto openSUSE, los usuarios de este servicio también tienen a su disposición una herramienta en línea de comandos basada en Python, y una serie de API's que permiten enlazar este servicio con otros similares cómo por ejemplo SourceForge, un servicio de almacenamiento de código que también ofrece otras funciones extra para programadores. Incluso puede crearse clientes a medida gracias a estas API's.

Permite la gestión y construcción de paquetes de software para varias distribuciones entre las que se cuentan todas las de Novell/openSUSE además de Fedora, CentOS, Debian, Ubuntu o Mandriva.

Visto en: http://www.imatica.org/bloges/2008/07/220715922008.html

martes, 29 de julio de 2008

Django, un Framework desarrollador de webs para Python

Django es un Framework para el desarrollo web, escrito, claro está, en el lenguaje Python. Además es de código abierto y según cuentan en elcodigok, cumple en algún aspecto el paradigma de programación por capas, dejando así por separado el Modelo, las Vistas y el Controlador.

Fue liberado al público bajo licencia BSD en Julio de 2005, algunas de sus características son las siguientes:
  • Un mapeador objeto-relacional.
  • Una API de base de datos robusta.
  • Un sistema incorporado de “vistas genéricas”
  • Un sistema extensible de plantillas basado en etiquetas y con herencia de plantillas.
  • Un "despachador" de URLs basado en expresiones regulares.
  • Soporte de internacionalización, incluyendo traducciones incorporadas de la interfaz de administración.
  • Documentación incorporada accesible a través de la aplicación administrativa (incluyendo documentación generada automáticamente de los modelos y las librerías de plantillas añadidas por las aplicaciones).

Para su funcionamiento necesitamos tener instalado Python 2.3 No necesitaremos contar con un servidor web propio, ya que Django trae incorporado consigo uno muy ligero, así como un servidor de Bases de Datos para interactuar con nuestra aplicaciones tipo PostgreSQL, MySQL o SQLite3

Vía: http://www.elcodigok.com.ar

Conoce además:
Requisitos de sistema para utilizar Django

viernes, 18 de julio de 2008

PyQT Desarrollando Aplicaciones de Escritorios

PyQt, Desarrollando Aplicaciones de Escritorio es el segundo eBook ofrecido por elcodigok.com.ar, se trata de una pequeña guía que nos va a permitir entender como integrar de manera muy simple el lenguaje de programación Python con las librerías gráficas Qt, el mismo se encuentra bajo licencia Creative Commons.

El documento es bastante simple y puedes descargarlo desde aquí. Además está disponible el código fuente del ejemplo.

Más info en: http://www.elcodigok.com.ar/

domingo, 13 de julio de 2008

Convertidor de bytecode de Ruby a Python

Se ha publicado un convertidor del bytecode de Ruby 1.9 a bytecode de Python 2.5, que además también es capaz de decompilar a Python.

Más info y descargas: http://hackety.org/
Repositorio: http://github.com/why/unholy/tree/master

¿Existe Python para móviles?

Python for S60 es un SDK de Python para la serie 60 de Nokia.

Puedes encontrar más información sobre este tema en el wiki de Nokia. También puedes existe un tutorial de Pys60.

Sacado de las preguntas frecuentes sobre Python

martes, 24 de junio de 2008

TinyP2P, un programa P2P en 15 líneas de código

TinyP2P es el programa de Peer 2 Peer más pequeño del mundo. Con sólo 15 líneas en Python, su autor, Ed Felten lo creó para ilustrar lo sencillo y simple que puede resultar un programa P2P, y por lo tanto, la dificultad con la que se encontrará cualquier organismo defensor de los derechos de autor al intentar regularlo.

http://mundogeek.net/archivos/2005/01/08/tinyp2p-un-programa-p2p-en-15-lineas/

Traducción al castellano de "Code Like a Pythonista: Idiomatic Python"

La siguiente traducción ha sido realizada por Raúl González Duque sobre el tutorial "Code Like a Pythonista: Idiomatic Python" de David Goodger.

En este tutorial interactivo cuyo nombre traducido es "Programa como un Pythonista: Python Idiomático" trataremos en profundidad algunos modismos y técnicas esenciales de Python, añadiendo así algunas herramientas útiles a la caja de herramientas.

Enlace al tutorial traducido: http://mundogeek.net/traducciones/python-idiomatico/

Si estás aprendiendo Python, también te pueden interesar el tutorial de Python del mismo traductor y la guía de estilo oficial.

martes, 17 de junio de 2008

Toda una revolución de en un fragmento de video




Este video se trata de una muestra de "visualización orgánica" en la que, según su autor, Michael Ogawa, estudiante de informática de la Universidad de Davis (EE UU), es posible apreciar cómo reacciona una comunidad de desarrolladores cada vez que alguien realiza una aportación o cuando se produce un cambio importante.

Su objetivo es estudiar como funcionan las interacciones que se producen entre las personas que participan en estos proyectos.

Para mostrar el funcionamiento de la herramienta que ha desarrollado, llamada Code Swarm, Ogawa tioma como ejemplo proyectos emblemáticos del software libre, como Python o Apache. Y crea vídeos en los que se muestran los objetivos conseguidos, los nombres de los programadores, y las imágenes y piezas de software que van aportando al proyecto.

miércoles, 14 de mayo de 2008

¿Necesitas tutoriales de Python?

  • Guía de estilo del código Python Guía de estilo de Guido van Rossum, creador de Python, y Barry Warsaw donde se listan distintas convenciones utilizadas en el código Python comprendido en la librería estándar de la distribución principal de Python.
  • Python Tutorial por Guido van Rossum, el creador de Python. Está en inglés.

  • Python instantáneo: Es es un curso intensivo de introducción mínima al lenguaje de programación Python.

lunes, 12 de mayo de 2008

El intérprete interactivo

¿Qué es el intérprete interactivo?

Es un intérprete para scripts que puede ejecutar desde la línea de comandos o como aplicación si hace doble clic veces sobre su icono. Pero también es un intérprete interactivo que puede evaluar sentencias y expresiones arbitrarias.

Es es muy útil para la depuración, programación rápida, pruebas y aprendizaje. A continuación se muestran casos prácticos de uso de esta flexible herramienta, como prodreis observar su manejo se parece al de una calculadora:

(en negrita se representan los carácteres introducidos por el usuario)

  • El intérprete interactivo de Python puede evaluar expresiones arbitrarias, incluyendo expresiones aritméticas básicas.
>>> 1 + 1
2
  • También puede ejecutar sentencias de Python arbitrarias, incluyendo la sentencia print.
>>> print 'hola mundo'
hola mundo
  • También puede asignar valores a las variables, y estos valores serán recordados mientras el intérprete siga abierto.
>>> x = 1
>>> y = 2
>>> x + y
3

¿Entiendes ahora por que lo llaman interactivo?

Instalación de Python

Lo primero que debes hacer para empezar con Python es: instalarlo. Esta lista se corresponde con los procedimientos habituales para instalar Python en los respectivos Sistemas Operativos:
  1. Python en Windows
  2. Python en Mac OS X
  3. Python en Mac OS 9
  4. Python en RedHat Linux
  5. Python en Debian GNU/Linux
  6. Instalación de Python desde el código fuente
Ten en cuenta que Python es compatible con una gran cantidad de Sistemas en los que se incluyen todos los relacionados con UNIX, como Sun Solaris, OS/400, Amiga, OS/2, BeOS. Puedes ver las versiones disponibles para los diferentes Sistemas (que no son pocas) en el siguiente enlace [aquí]

Para poder descargar los archivos de instalación para cada Sistema Operativo, puedes visitar la siguiente página: http://www.python.org/download/
Para descargar un instalador de terceros, puedes visitar la siguiente página:http://www.activestate.com/Products/activepython/?_x=1

Dependiendo de la plataforma, puede que tengas más de una versión de Python instalada. Si se da el caso, debes poner atención en las rutas. Si escribes simplemente python en la línea de comandos no ejecutarás la versión de Python que hayas instalado. Es posible que necesites introducir la ruta completa hasta tu versión preferida.

A disfrutar de Python!

jueves, 8 de mayo de 2008

El tutorial de Python 'Python para todos' para descargar en PDF

El tutorial 'Python para todos' se distribuye bajo licencia Creative Commons Reconocimiento 2.5 España, lo que supone que puedes distribuirlo, modificarlo, traducirlo a otros idiomas, ... siempre que indiques el autor original (Tutorial de Python 'Python para todos').

El libro cuenta con 108 páginas, que se irán actualizando, en las que se tratan los siguientes temas:

  • Tipos básicos
  • Control de flujo
  • Funciones
  • Orientación a objetos
  • Programación funcional
  • Excepciones
  • Módulos y paquetes
  • Entrada / Salida
  • Expresiones regulares
  • Sockets
  • Interacción con webs
  • Threads
Acceso y descarga del tutorial: http://mundogeek.net/tutorial-python/
Otros enlaces sobre Python: Guía de estilo del código Python Modismos y Anti-Modismos en Python

miércoles, 7 de mayo de 2008

El blog del Python

Hola amigos, si estais en este blog es, seguramente, porque ya conoceis Python o por lo menos os suena su nombre o os ha llamado la curiosidad.De un modo o de otro habreis llegado aquí por que tenías ganas de conocer algo más sobre Python o por lo menos descubrir que es, o que ventajas aporta.

Yo, el autor de estas lineas también deseo aprender algo más sobre este lenguje que nos promete servir de ayuda a la hora de programar y que además parece ser, que se le dá muy bien.

El nombre del lenguaje proviene de la afición de su creador original, Guido van Rossum, por los humoristas británicos Monty Python. El principal objetivo que persigue este lenguaje es la facilidad, tanto de lectura, como de diseño.

Y de hecho parece ser muy sencillo dada su síntexis, como la separación de bloques por tabuladores, o los componentes básicos modificables que aporta mucha claridad y legibilidad a los códigos.

Además Python es un lenguaje interpretado, con lo que se ahorra un tiempo considerable en el desarrollo del programa, pues no necesitaremos compilar ni enlazar. El intérprete se puede utilizar de modo interactivo, lo que facilita experimentar con características del lenguaje, escribir programas desechables o probar funciones durante el desarrollo del programa.

Python permite dividir el programa en módulos reutilizables desde otros programas. Viene con una gran colección de módulos y scripts estándar y otra gran cantidad que se puede descargar, úsalas como base de los programas o como ejemplos para empezar a aprender.

En esta página podrás descargar las últimas versiones de Python: http://www.python.org/download/