Archive for julio 2014

Programar en el navegador: Python

Como vimos en los casos de Scratch (Snap!) y Ruby en artículos anteriores también es posible aprender a usar lo básico de Python sin instalar nada, existen muchos tutoriales guiados que permiten resolver los ejercicios en el navegador Web sin instalar absolutamente nada y de forma gratuita. En muchos casos incluso todo el material y el código son libres por lo que se podría adaptar el tutorial para traducirlo al español o adaptarlo a otros lectores. En todos los casos en algún punto del recorrido se usa software libre.

Existen varios tutoriales interactivos de Python:Learn Python

https://www.learnpython.org/ (*) tutorial que lleva al lector desde un hola mundo, hasta temas como introspección y decoradores pasando por clases y excepciones. Mientras se recorre el tutorial, en la parte inferior de la pantalla, muestra una terminal con ejemplos que se pueden modificar y ejecutar para ver los resultados.

https://pythontutor.com permite ejecutar un script Python paso a paso mientras se van dibujando en un diagrama las estructuras de datos que se crean y los nombres que hacen referencia a esas estructuras. Los scripts se pueden editar con el link que aparece abajo del código. Este recurso puede llegar a ser de interés para todo aquel que quiera crear un tutorial o curso online de Python.

https://www.codecademy.com/es/tracks/python es un tutorial con ejercicios muy cortos similar a tryruby.org. Este tutorial tiene una versión en español, pero la misma tiene al momento de escribir este artículo algunos problemas con los caracteres que no son ASCII (se puede usar si se eliminan las tildes, eñes, ‘¡’ y ‘¿’ de los ejemplos).

https://www.afterhoursprogramming.com/tutorial/Python/Overview/ otro tutorial paso a paso, en particular este tutpythontutororial permite probar código pero no verifica que la respuesta sea válida.

https://interactivepython.org provee distintos libros interactivos de los cuales hay 3 de Python, los ejemplos de los libros se pueden modificar y ejecutar en el navegador, cuenta con videos y audios explicando distintos temas y provee ejercicios a resolver codificando en el navegador o por medio de multiple-choices. «How to Think Like a Computer Scientist» es un buen punto de inicio.

Para hacer pruebas sencillas repl.it cuenta con una consola interactiva de Python (al igual que de muchos otros lenguajes) en la misma se pueden probar scripts razonablemente complejos, la limitación única limitación es el número de módulos disponibles. Esta consola interactiva es (a la fecha de escribir este artículo) un intérprete de Python 2.7 compilado con emscripten usando un script de construcción llamado emptyhoned.

También existen 2 implementaciones que no dependen del intérprete oficial de Python:

Skulpt es un intérprete de Python escrito en Javascript. En la página de Skulpt se pueden encontrar links a más libros y tutoriales interactivos.

Brython es otro intérprete de Python escrito en Javascript, el foco de este proyecto es ser lo más fiel que se pueda al lenguaje original.

Tanto Skulpt como Brython permiten interactuar con la página Web que contiene los scripts usando DOM y eventos tal como se haría con Javascript, además se pueden embeber scripts Python en el código HTML.pilasweb

Por último pilasweb es un prototipo del framework pilas-engine portado al navegador utilizando Brython. El uso de pilasweb es idéntico al de la versión de escritorio y es ideal para enseñar programación a los más chicos.

* En realidad en learnpython.org el código no se ejecuta en el navegador sino que lo hace en un servidor, por lo que el entorno es más realista y completo.