Raphaël.js bajo Internet Explorer 8

Hace poco estuve utilizando la librería Raphaël para realizar unos pequeños trazados en SVG con la librería Raphaël. En un momento quise verificar la compatibilidad con Internet Explorer 8 y saltaba el siguiente error:

‘vml’ is null or not an object.

La causa de esto (enlace a discusión en Google Groups) es que la versión 1.5.2 comprimida que está para descargar en el sitio tiene este defecto (unicamente en IE). Por lo tanto la solución es descargarla sin comprimir y comprimirla uno mismo.

Links

Netbeans + Ruby + Debugger en Windows

Para aquellos que quieran utilizar el plugin de Ruby en Netbeans y tener la posibilidad de debuggear sus proyectos Ruby on Rails bajo Windows, aquí va una lista de pasos que fueron muy útiles. Se asume que tienen instalado Netbeans, Ruby y Ruby on Rails. En mi caso era NetBeans 6.9, Ruby 1.9.2, RoR 3.0.3, sobre Windows 7.

  1. Descargar DevKit desde http://rubyinstaller.org/downloads/
  2. Instalarlo siguiendo estas indicaciones: http://github.com/oneclick/rubyinstaller/wiki/Development-Kit
  3. Ejecutar los comandos ruby-debug19 –platform=ruby y gem install ruby-debug-ide19 –platform=ruby
  4. Editar el archivo (Ruby)/lib/ruby/gems/1.9.1/gems/ruby-debug-ide19-0.4.12/bin/rdebug-ide.rb y cambiar esta línea:
    Debugger::PROG_SCRIPT = ARGV.shift

    por

    script = ARGV.shift
    Debugger::PROG_SCRIPT = (script =~ /script([\\\/])rails/ ? Dir.pwd + $1 : '') + script

Luego, en el proyecto Rails:

  1. Editar el archivo (Proyecto)/Gemfile y habilitar el debugger:
    # To use debugger
    # gem 'ruby-debug'
    gem 'ruby-debug19'
  2. Borrar el archivo (Proyecto)/Gemfile.lock
  3. Ejecutar el comando bundle update

Fuente: http://noteslog.com/post/netbeans-6-9-1-ruby-1-9-2-rails-3-0-0-debugging/

Manejo de fechas en PHP5

Una búsqueda rápida sobre manejo de fechas en PHP dan como resultado documentación y tutoriales sobre la función date(). Si bien es extremadamente útil para los casos en que queremos mostrar fechas rápidamente, hay veces que se utiliza en conjunto con otras funciones, para realizar cálculos con las fechas y no es lo más apropiado ni lo más fácil.

En parte la culpa es de PHP, que introdujo el objecto DateTime y DateTimeZone recién en la versión 5.2, luego de soportar el paradigma orientado a objetos.

Van algunos ejemplos de como utilizar la clase DateTime para crear objetos tipo fecha, realizar algunas operaciones y formatearlo para mostrar por pantalla.

<?php

//Setear la zona horaria.
date_default_timezone_set('America/Montevideo');

$ahora = new DateTime("now");

//format: utiliza los mismos formatos que la función date().
echo $ahora->format(DATE_RSS); //Formato de fecha RSS.
echo '<br/>';
echo $ahora->format('d/m/Y'); //Formato local d/m/a
echo '<br/>';

//Crear una fecha según un formato especificado. PHP >= 5.3.0
$feb = DateTime::createFromFormat('j-M-Y', '5-Feb-2010');

//Diferencia entre dos fechas. Devuelve un objeto DateInterval. PHP>=5.3.0
$diferencia = $ahora->diff($feb);

echo $diferencia->format('%d días'); echo '<br/>';

//Añadir cantidad de días/meses/etc a una fecha. PHP>=5.3.0
$ahora->add(DateInterval::createFromDateString('10 days')); //resta 10 días.

echo $ahora->format('d/m/Y'); echo '<br/>';

//Otra alternativa para modificar la fecha. PHP>=5.2.0
$ahora->modify('+5 days');
echo $ahora->format('d/m/Y'); echo '<br/>';

Descargar ejemplo: [download id=”5″]

Enlaces

Clementine Music Player

Ayer leyendo OMGUbuntu! me entero que salió la versión 0.6 del reproductor de audio Clementine. Clementine es la evolución de la rama Amarok 1.4.x, que como muchos saben, eran excelentes. Lamentablemente, con la versión 1.4.10 se terminó esta familia de versiones y dieron el salto a la 2.0, con un rediseño interesante, pero con mucha funcionalidad faltante o defectuosa.

Clementine versión 0.6 r2402 sobre Ubuntu 10.10/GNOME
Clementine versión 0.6 r2402 sobre Ubuntu 10.10/GNOME

Clementine nació a principios de este año y ya van 5 versiones mayores publicadas.  Hoy en día está muy estable y con suficiente funcionalidad como para servir de reproductor a diario.

Algunas de las funcionalidades destacadas en el sitio son:

  • Búsqueda y reproducción de librería local.
  • Radio Internet desde Last.fmSomaFMMagnatuneJamendoIcecast.
  • Listas de reproducción dinámicas.
  • Listas de reproducción en pestañas, importar y exportar M3U, XSPF, PLS and ASX.
  • Visualizaciones de projectM.
  • Letras, biografías de artistas y fotos.
  • Conversión de pistas en MP3, Ogg Vorbis, Ogg Speex, FLAC o AAC.
  • Edición de información de pistas MP3, OGG.
  • y más.

Sin embargo, aún tiene alguna cosa por corregir y agregar. Entre ellas, soporte para plugins.

Descarga/Instalación

En el sitio de descargas se puede encontrar compilados para Ubuntu, Mac OS X, Windows, Fedora y Debian.

Alternativamente, podemos instalarlo desde el repositorio oficial:

sudo add-apt-repository ppa:me-davidsansome/clementine
sudo apt-get update
sudo apt-get install clementine

Fuentes

  • http://www.omgubuntu.co.uk/2010/12/music-player-clementine-hits-0-6-release-with-features-features-features/
  • http://www.clementine-player.org/