Python - El Inicio

Durantes este año me comenzó a agradar bastante este lenguaje cuando me dio la necesidad de aprender un nuevo lenguaje que sea multipropósito, así que debido a los buenos comentarios que recibe en varias webs, así como el hecho de que puede realizarse desarrollo web con éste, me enamoró al instante.

print "Hello, Python"

Empezemos con la pregunta clásica

¿Qué es Python?
Python es un lenguaje de programación de propósito general que muchas veces es usado para scripts, por lo cual se le llama muchas veces lenguaje de script. Es orientado a objetos, pero también permite trabajar en forma procedimental. El creador de este lenguaje es Guido van Rossum quien actualmente labora en Google, su cuenta de twitter es Gvanrossum

¿De dónde proviene el nombre Python?

El creador coloco este nombre debido a que era muy fanático de los humoristas Monty Python

¿Python es interpretado o compilado?

Python se considera un lenguaje interpretado, pero existen algunas implementaciones del lenguaje que compilan el código para volverlo más eficiente (debido a diferencias entre compilado e interpretado) como es el caso de IronPython


¿Qué implementaciones existen de Python?

Jython, CPython IronPython y PyPy. Jython es la implementación Java de Python. IronPython es la implementacion de Python para .Net (la versión 2.0.1 es la estable actualmente)

¿Qué organizaciones utilizan este lenguaje?

Las empresas que usan Python no son cualquier compañía que experimenta con lenguajes, sino que son empresas muy importantes como: Google, Intel, Cisco, HP, NASA, iRobot, BitTorrent, OLPC, entre otros. Creo que el punto es obvio, Python tiene bastante fuerza en empresas grandes, así como en pequeñas que buscan innovar.

¿Qué se puede hacer con Python?

Es una pregunta algo difícil de responder, no porque no hayan casos donde se puede usar, sino porque son demasiados:
- Sistemas Operativos
- GUIs

- Scripts de Internet

- Integración de componentes (Integración con librerías de C, componentes COM, Corba, entre otros)
- Programación con Base de Datos (Su Api permite comunicarse con cualquier BD)
- Programación científica y numérica (Con la potente librería NumPy se pueden hacer maravillas)

- Juegos

- Procesamiento de Imágenes
- Inteligencia Artificial
- Programación de Robots
- Jugar solitario (no es broma, es en serio xD)


¿Cuáles son las características principales de Python?
- Es un lenguaje orientado a objetos
- Es libre, es decir puedes usarlo libremente, modificarlo y, si se gusta, hasta venderlo junto a los productos que uno haga

- Portable, corre en casi todos los SO, en PDAs, celulares con Symbian, Ipods, entre otros - Poderoso, debido a la cantidad de librerías de terceros que ya hacen muchas cosas que uno necesita, aparte de las librerías que ya posee Python, y cabe mencionar su administración automática de memoria.
- Mixto, es decir se puede integrar de manera "fácil" con otros lenguajes de programación como C o C++ - Fácil de usar =) (Eso es lo que más me gusta)
- Legible para cualquier persona que haya desarrollado


¿Dónde puedo encontrar una guía inicial para desarrollo web con Python?

Se puede encontrar una guía muy interesante en
Python Web . Ahí podrán encontrar la lista de frameworks que llegan a recomendar para el desarrollo web.

¿Algo interesante que pueda ver que se haya hecho en Python?

-
MythPyWii
- Python + Wiimote + 15 toneladas
- Mobile Python

¿Qué libro se recomienda leer para empezar con Python?

Particularmente recomiendo Learning Python y A byte of Python.


¿Algún curso que pueda llevar para aprender Python?

Curso de Python

¿Existe en el Perú alguna comunidad dedicada a incentivar el uso de Python?

Sí, hace poco nació Python-Perú, y todos son bienvenidos a integrarse e incentivar el uso de Python


Esa es toda la información que les puedo dar por ahora, la mayor parte de la información la obtuve del libro Learning Python de O'Reilly, lo recomiendo en verdad para quien desee empezar con Python y vea que es todo un mundo este lenguaje, además que te obliga a cumplir con estándares de programación.

Proximamente lanzaré un tutorial de IronPython y espero les llegue a agradar a todos y los incentive a meterse más con este lenguaje.

Saludos a todos y espero sus comentarios al respecto.


ShinjiDev