Unos amigos y yo hemos decidido experimentar sobre las posibilidades de Twitter para ver hasta donde llega y hemos creado un experimento basado en el inminente 23-F. Aquí tenéis el enlace para engancharse al evento. Sigue el 23-F minuto a minuto en Twitter La idea es retransmitir por Twitter el próximo 23-F como si aún estuviéramos en 1981. De hecho, como si en 1981 hubiéramos tenido Twitter. Minuto a minuto. Dando todos los detalles de lo que ocurrió justo en el mismo momento del día en que ocurrió y crear así una experiencia colectiva. Nuestra intención no es para nada abrir debate político sino que la experiencia sirva como plataforma para compartir un momento pasado colectivo a partir de vivencias individuales. Particularmente solo recuerdo que mi madre tenia miedo y que yo no entendía pq no iba al colegio. Cada cual tendrá sus recuerdos y todos pueden ser puestos en común utilizando Twitter. Creemos que puede ser algo interesante y solo lamentamos no haber tenido más … [Read more...] about Revivir el 23-F. Una experiencia Twitter
Desarrollo
Un nuevo año que entra
Ya se acaba este año y ha sido muy divertido y gratificante. Otro año más he tenido la oportunidad de crecer profesional y personalmente. Hemos tenido de todo. Proyectos complejos, proyectos graciosos, proyectos apasionantes, etc... pero la nota común siempre ha sido el sentimiento de emoción en cada uno de ellos. Solo por esto ya ha valido la pena pasar este año... y como nada me dice que el año que viene va a ser diferente... … [Read more...] about Un nuevo año que entra
Problemas al cambiar el tipo de un input password con Internet Explorer
Me he visto en la tesitura de intentar cambiar en dinámico el tipo de un input de tipo text a tipo password y viceversa. Algo tan sencillo como hacer lo siguiente: obj = document. getElementById('campo_password'); obj.type = 'text'; Todo funciona perfectamente con Firefox pero cuando lo he probado con Internet Explorer 7 el navegador me devuelve un error con el objeto y no hay manera. He probado a realizar el cambio desde jquery para que el framework se encargara de realizar la modificación pero tampoco ha funcionado. Internet Explorer devuelve el mismo error. Grrrrrrrrrrr Al final he encontrado este código por Internet que soluciona el problema. Hace más cosas pero seguro que un programador espabilado sabrá aislar la funcionalidad que necesite ;-) Llamandolo así convertireís el campo a tipo text donde thisInput es el objeto input changeInputType(thisInput,'text',txtLabel,false,true); function changeInputType( oldElm, // a reference to the input … [Read more...] about Problemas al cambiar el tipo de un input password con Internet Explorer
Configurar el servidor MySQL con UTF8
Siguiendo con los bricoconsejos para trabajar con MySQL y UTF8, dejo aquí los parámetros que hay que modificar en el fichero de configuración my.cnf para que todo se ejecute por defecto en UTF8. [mysqld] character-set-filesystem=UTF8 character-set-server=UTF8 default-collation=UTF8_general_ci default-character-set=UTF8 [client] default-character-set=UTF8 [mysqldump] default-character-set=UTF8 … [Read more...] about Configurar el servidor MySQL con UTF8
Pasar parámetros por defecto en Javascript
Es una lástima pero Javascript, al contrario que otros lenguajes, no permite pasar parámetros por defecto en sus funciones. Esto tiene solución mediante un pequeño truco en el código. Imaginad que tenemos esto: function test(arg) { arg = arg || 23; return arg; } Si llamamos a test() sin parametro nos va a devolver 23. Problema resuelto de forma sencilla ;-) Pero seamos más puristas. Si por ejemplo la llamamos pasándole el valor NULL nos vamos a encontrar con que también nos devolverá 23 y en algunos casos nos puede interesar manejar el valor NULL de forma diferente Si quisieramos corregirlo tendríamos que utilizar esto: function test(arg) { arg = (typeof arg == ‘undefined’) ? 23 : arg; return arg; } Con esta opción si llamamos a test() sin parámetro nos devuelve 23 pero si llamamos a test(null) nos devolvería null con lo que podriamos manejar el caso de forma diferente. … [Read more...] about Pasar parámetros por defecto en Javascript
Crear una URL friendly a partir de una cadena en PHP o como quitar los acentos a una cadena
La función en principio está pensada para convertir una cadena - el título de un post por ejemplo - en una URL amigable o URL friendly. Por ejemplo. La cadena Hola mundo! (Continuación) al pasarla por la función quedaría convertida en hola-mundo-(continuacion) Me encontré con varias funciones por ahí que hacían lo mismo pero me dieron muchos problemas porque trabajaban directamente con caracteres en vez de con el código del carácter. Por otro lado adaptar la función para que solo elimine los acentos es inmediato por eso lo he puesto en el título del post. Por eso y porque ahora en un proyecto vuelvo a ella para reutilizarla en ese sentido. Probarla y si os gusta y os funciona podéis dejarme un comentario para que lo sepa. function desaccent($string) { $string = strtolower($string) ;$string = str_replace(”?”, “”, $string) ; $string = str_replace(”¿”, “”, $string) ; $string = str_replace(”!”, “”, $string) ; $string = str_replace(”*”, “”, $string) ; $string = … [Read more...] about Crear una URL friendly a partir de una cadena en PHP o como quitar los acentos a una cadena
Generar una fecha aleatoria en MySQL
Pego aquí una query para insertar fechas aleatorias en una tabla de MySQL. update mytable set mycolumn = str_to_date( concat( floor(1 + rand() * (12-1)), /* Generate a random month */ '-', floor(1 + rand() * (28 -1)), /* Generate a random day */ '-', '2008' ), '%m-%d-%Y' ); … [Read more...] about Generar una fecha aleatoria en MySQL
PEAR DB_DataObject + MySQL + UTF8
El paquete PEAR::DB_DataObject es uno de mis preferidos. Siempre que puedo lo utilizo en mis proyectos y por ahora con muy buenos resultados. Básicamente me ayuda a clarificar el código ya que paso a tener objetos en vez de registros y propiedades en vez de campos. Por otro lado aprovecho su distribución en sistema de ficheros para codificar la capa de datos, cada método en la clase que hace referencia a la tabla o concepto. Por ejemplo, si tengo un método que marca al usuario como eliminado después de hacer unas comprobaciones previas sé que lo voy a poner en la clase que hace referencia a la tabla 'usuario' con lo que resulta muy cómodo a la hora de mantener el código legible y bien organizado. Además el paquete abstrae el acceso al servidor de forma que puedo cambiar mañana mi aplicación de MySQL a PostgreSQL sin tener que cambiar todas las llamadas a bases de datos. Genial, vaya!!! Pues este paquete tan genial tiene una pequeña carencia con la que me he encontrado … [Read more...] about PEAR DB_DataObject + MySQL + UTF8
Cambiar el editor por defecto en Ubuntu Linux
El Ubuntu me pone el editor Nano por defecto como editor de consola. No es que tenga nada en contra pero soy más de Vi. Tiro mucho de consola, sobretodo para manejarme con el SVN, y con Vi y sus comandos, la rapidez está asegurada. Os dejo aquí como modificar el editor por defecto en consola para Ubuntu Linux: Lanzamos update-alternatives como root: sudo update-alternatives –config editor Nos devolverá un menú donde tan solo hay que elegir que editor de los instalados queremos por defecto. There are 5 alternatives which provide `editor'. Selection Alternative ----------------------------------------------- * 1 /usr/bin/vim.tiny 2 /bin/ed + 3 /bin/nano 4 /usr/bin/vim.basic 5 /usr/bin/nedit Press enter to keep the default[*], or type selection number: Más fácil imposible ;-) … [Read more...] about Cambiar el editor por defecto en Ubuntu Linux
Error en parseInt de Javascript
Existe un bug en la función parseInt de Javascript i Jscript (asp) que provoca que la función devuelva 0 para ciertos valores. En concreto el error parece que tiene que ver con la interpretación del primer carácter cuando este es 0 ya que se interpreta que lo que sigue es en base octal y para aquellos números que no tienen representación en octal se devuelve erróneamente 0. Pongo un ejemplo: parseInt('07') -> devolverá 7 parseInt('08') -> devolverá 0 parseInt('09') -> devolverá 0 parseInt('10') -> devolverá 10 Imaginaros los estropicios que puede provocar esto en la conversión de cadenas a fechas, caso donde me he encontrado el error. En concreto el día '08/07/2008' que yo interpreto como 8 de Julio de 2008, el javascript me lo daba como 30 de Julio de 2008 al devolver cero la llamada parseInt('08') Para solucionarlo hay que decirle a parseInt que trabaje en base 10 y el bug desaparece inmediatamente. parseInt('08', 10) devuelve el resultado esperado. … [Read more...] about Error en parseInt de Javascript