lunes, 14 de marzo de 2011

Probar Haskell en tu navegador

Real World HaskellSiguiendo el camino que inicio _why con TryRuby.org, Chris Done creo TryHaskell.org, una página donde encontramos una consola interactiva para probar Haskell, el lenguaje puramente funcional por excelencia.

Esta consola es del tipo REPL (read, evaluate, print loop) y permite ingresar comandos y expresiones. Como en Haskell la declaración de funciones es una expresión (utilizando let) se pueden crear y ejecutar funciones dentro del entorno.

Por supuesto, como en el caso de TryRuby, se puede seguir un tutorial que va guiando al asistente secuencialmente a través de las expresiones más sencillas, manipulación de strings, manejo de listas, declaración de símbolos, etc.

La consola interpreta y muestra los resultados parciales e informa si hay situaciones de error, como puede verse debajo.

Consola de Haskell

 

Adicionalmente a los ejemplos que la misma página va proponiendo, hay también un link al libro "Real World Haskell", de Bryan O'Sullivan, Don Stewart, y John Goerzen, editado por O'Reilly Media y disponible gratuitamente en línea (en inglés), donde se pueden encontrar muchísimos más ejemplos y por supuesto un nivel de profundidad mucho mayor en la presentación del lenguaje.

Para aprovechar a fondo la combinación entre el libro y TryHaskell basta con arrancar por el capítulo 1, donde se describen muchos ejemplos iniciales utilizando ghci, que es la consola interactiva del entorno Haskell, lo que es el equivalente directo de la consola que encontramos en la página.

Para todos aquellos interesados en la programación funcional pero que no tuvieron la oportunidad (o el coraje) de acercarse a Haskell, puede ser una buena manera de entender un poco más de que se trata sin la necesidad de tener que hacer una gran inversión inicial de tiempo.

 

viernes, 11 de marzo de 2011

Ruby Meetup en Buenos Aires

Ruby Argentina

La comunidad Ruby Argentina va a tener su próximo Ruby Meetup el próximo jueves 17 de marzo a las 19:00 en Buenos Aires.

El lugar de la reunión es Urban Station, el Salvador 4588, en el barrio de Palermo (mapa).

Los interesados pueden registrarse completando el formulario.

En esta reunión se decidió que se van a hacer varias lightning talks (charlas breves de 5 a 15 minutos), en base a los temas propuestos por los asistentes.

Los interesados en más detalles sobre el grupo pueden recurrir a los siguientes recursos:

También hay un sitio a nivel global, Ruby Meetup, en el que se pueden anotar los interesados en las reuniones, para estar al tanto de las que se realizan cerca.

Busqué videos introductorios de Ruby en español y no encontré mucho, a excepción de este de un evento en Tandil, Argentina, que es interesante aunque el ángulo desde el que está grabada la pantalla no es el ideal.

Me da la impresión de que es una área en la que podemos trabajar como comunidad. Ya me pondré en campaña.

Dejo el video tandilense por ahora, que no está (que yo sepa) relacionado con el grupo que organiza el meetup.

Espero ver a muchos lectores del blog en la reunión.

jueves, 10 de marzo de 2011

Python Tools for Visual Studio

Python Tools for Visual Studio

El equipo de Technical Computing de Microsoft acaba de liberar estas extensiones gratuitas y abiertas para dar soporte a Python dentro de su IDE de cabecera (por ahora en Beta 1).

Este equipo se dedica básicamente a dar soporte a escenarios de computación científica en ambientes distribuidos, clusters de computadoras, etc. Dentro de este ambiente, en el que Python también tiene un uso bastante intensivo como lenguaje de programación para MPI (Interfaz de pasaje de mensajes) que se utiliza para procesamiento en paralelo y distribuido, y mediante el uso de librerías como NumPy y SciPy.

Este plug-in para Visual Studio es producto de estas iniciativas construidas sobre el esfuerzo que hizo previamente el equipo de IronPython (la implementación de Python sobre el framework .NET), pero en este caso el soporte cubre tanto IronPython como el CPython standard, y tiene una serie de características muy interesantes, algunas ya disponibles y otras prometidas.

  • Intellisense, editor completo con coloreo, navegación de objetos y ventana de comandos integrada
  • Depuración local y remota (incluso en clusters)
  • Perfilamiento con múltiples vistas
  • Computación en paralelo interactiva desde la ventana de comandos
  • Soporte a clusters HPC y MPI, incluyendo depuración
  • NumPy y SciPy para .NET
  • Gratuita y de código abierto (licencia Apache 2.0)

Y prometidos para dentro de poco (esperemos que en la próxima Beta):

  • Soporte para Windows Azure
  • Soporte para Dryad (la implementación .NET de Linq para Map/Reduce)

Aunque en general en Python estamos acostumbrados a no usar Intellisense, hay que reconocer que el analizador que utilizan es bastante astuto, y es capaz de inferir los tipos de datos en contextos complejos, como se ve en el ejemplo:

Inferencia de Tipos

Otras características interesantes es la capacidad de saltar directamente entre fuentes, clases y métodos seleccionando de una lista que los agrupa correctamente, o saltar directamente a la definición de cualquier elemento desde algún uso en otra parte del código.

 

miércoles, 9 de marzo de 2011

Code & Beyond: más de 10.000 páginas vistas

El primer post de hoy (tras un fin de semana largo en Argentina) está dedicado a festejar una barrera: pasamos las 10.000 páginas vistas (pageviews).

Como siempre, es un número más, pero en honor al sistema decimal, vamos a revisar un poco las estadísticas del blog para entender qué pasó desde aquel primer post del 25 de octubre del año pasado (menos de 5 meses atrás):

Los post más leídos hasta ahora fueron:

¿Cómo llega la gente al blog?

A esta altura no debería sorprender mucho, pero la mayoría de las referencias iniciales son via Twitter y Google. Twitter.com aparece primero en la lista, aunque si sumamos los diferentes dominios, Google siempre gana. Primeros cinco puestos:

Referring Sites

¿De dónde vienen los lectores?

La mayoría son de mi país, Argentina, aunque imagino que el segundo puesto para USA probablemente mezcla gente hispano-parlante de allí con gente de otros sitios que por diversos motivos usan direcciones IP de USA, algo que es común.

Distribución por países

Me encantaría entender porque me leen desde Holanda y Corea del Sur. Si alguien tiene alguna teoría (no demasiado conspirativa) me encantaría leerla.

¿Qué navegador y sistema operativo usan los lectores?

Siendo seguramente una mayoría de la audiencia desarrolladores, como era esperable, más de la mitad usan navegadores con mejor soporte para desarrollo y más al día en cuanto a estándares, como Firefox y Chrome.

Por Navegador

Y en cuanto a los sistemas operativos, Windows sigue estando a la cabeza, pero es interesante ver más de un 10% de lectores usando Mac, como yo mismo, y casi la misma cantidad de otros Unix y Linux (todavía tengo un servidor con BSD). Espero poder seguir generando contenido que sea útil para todas esas comunidades. Me pareció interesante que haya gente que al parecer lee el blog desde el IPhone. Espero que la edición móvil sea cómoda de usar para ellos, y también espero leer feedback.

Por Sistema Operativo

Finalmente, agradezco a todos los lectores y espero que el contenido siga siendo relevante. Estoy seguro que el objetivo ecléctico hace que no todos los posts sean del mayor interés para todos, pero mientras que pueda canalizar algunas noticias o tendencias, me doy por hecho.

Como mencioné antes, me encantaría recibir feedback, para lo que pueden utilizar los comentarios o contactarme en Twitter (@CodeAndBeyond).

 

viernes, 4 de marzo de 2011

Joomla Buenos Aires 2011 (video)

Joomla BairesComunidad Joomla ha organizado el primer evento sobre esta plataforma en Buenos Aires, Argentina.

Joomla es un CMS (sistema de administración de contenidos) gratuito y de código abierto creado en PHP, y uno de los más populares del mundo. Es usado tanto por diseñadores o grupos no técnicos, gracias a la flexibilidad de configuración y la enorme cantidad de extensiones, como por desarrolladores que lo utilizan como plataforma.

Aunque en el mercado argentino también se lo utiliza con frecuencia, no se había hecho una reunión masiva todavía, y ha llegado el momento.

El evento es el lunes 14 de Marzo a las 18:40 hs en la UAI (Universidad Abierta Interamericana), sede central de Av. San Juan 983. En el sitio del evento hay instrucciones sobre cómo llegar.

Algo fuera de lo común para la comunidad PHP es el hecho de que Microsoft apoya el evento, y uno de los oradores será Drew Robbins, quien estará presentando WebMatrix, una herramienta para desarrollo web que soporta PHP y Joomla (además de otras plataformas).

Otro orador será Leandro D'Onofrio que presentará Joomla 1.6. También estará presente Gustavo Raúl Aragón, fundador de Comunidad Joomla, explicando como funciona el grupo (que abarca todo el mercado hispano-parlante) y las actividades que realizan.

Dejo un video introductorio de Joomla en español generado por la comunidad.