27 marzo 2011

Generador de fondos web 2.0

Así que necesitamos un fondo moderno para una página web o un logo y no tenemos ganas de echar una hora delante de Gimp o de Photoshop. La solución es Stripe Generator.

Stripe Generator

Moviendo sus cuatro controles podremos crear un fondo a medida que se descarga en formato png listo para ser usado donde más nos convenga. Aquí hay uno que he generado en un rato.

En Technology Bytes cuentan también con una lista muy interesante con veinte herramientas de este tipo:

Web 2.0 Background Generators

En especial bgpatterns, nos permite hacer fondos diferentes con la misma sencillez.

25 marzo 2011

Cambiar apariencia de Firefox 4

Al instalar Firefox 4 en Windows XP puede que no aparezca la nueva apariencia, con las pestañas unificadas con el menú y se mantenga la antigua barra de menús.

Este comportamiento se corrige con facilidad haciendo clic con el botón derecho del ratón sobre la barra de menú y desactivando la opción Barra de menús. De ese modo obtendremos la nueva apariencia de Firefox.



En cualquier momento podemos pasar de un modelo a otro activando o desactivando esa opción.

23 marzo 2011

Unir párrafos con LibreOffice

Un problema al que nos enfrentamos en ocasiones es el de contar con un texto en el que las líneas están partidas donde no deben y tenemos saltos de línea por todo el documento. Esto sucede con frecuencia con textos copiados desde un archivo PDF, por ejemplo.

Utilizando OpenOffice o su escisión más moderna, LibreOffice, más recomendable en la actualidad es sencillo resolver este problema. Se puede descargar desde aquí:

LibreOffice 3

Una vez abierto el archivo utilizaremos la ventana de Buscar y reemplazar, que se despliega pulsando Control-B (o mediante el menú Editar). Aparecerá la imagen siguiente:

El truco para conseguir llevar a buen puerto esta tarea está en el empleo de expresiones regulares. Un método que nos permite realizar búsquedas muy completas. Por tanto, haciendo clic en Más opciones activaremos la casilla Expresiones regulares.

La solución
El reemplazo no se puede hacer directamente por algunas limitaciones existentes al reemplazar saltos de línea, pero sí que podemos hacer una serie de reemplazos que funcionan con bastante precisión.
La ventaja de este método es que en tres sencillos pasos obtenemos el resultado deseado y sin necesidad de instalar ninguna extensión o macro adicional.

Reemplazo número 1. Inserción de separadores.
En el primer paso indicaremos que busque aquellas líneas que no terminan en letras, números y comas.

En Buscar escribimos: ([^a-z|^0-9|^,])$

Y esto en Reemplazar por: $1 ####

Entre el 1 y los #### hay un espacio.
Básicamente conseguimos insertar cuatro # al final de cualquier línea que finalice en un punto o algún otro caracter similar, excluyendo letras, números y coma. Los cuatro # pueden ser reemplazados por cualquier otra secuencia que no aparezca en el texto.

Reemplazo número 2. Borrado de saltos de línea.
A continuación eliminaremos todos los saltos de línea del documento. Lo podemos hacer sin riesgo puesto que los que nos interesa conservar están ya identificados con la secuencia ####.

En Buscar escribimos: $

En Reemplazar por introducimos un simple espacio.

Reemplazo número 3. Insertar saltos de línea en los sitios correctos.
Por último, reemplazaremos las secuencia #### por los saltos de línea.

En Buscar escribimos: ####

En Reemplazar por escribimos la representación de un saltos de línea: \n

Revisión final
Ahora nos quedaría por hacer una breve revisión final del texto para asegurarnos de que ninguna línea está mal partida, pero los casos serán muy pocos.

Más sobre expresiones regulares
Las expresiones regulares nos ayudan a resolver muchos problemas de este tipo. Hay una documentación muy completa en las páginas de Openoffice y de LibreOffice.

Lista de expresiones regulares de LibreOffice
Regular Expressions in Writer

Feliz lectura.

24 diciembre 2010

La máquina de duplicar jamones

Vamos a ir despidiendo el año con el imperdible corto de la máquina de duplicar jamones.



Da para más de una reflexión....

Visto en Microsiervos, que también reflexiona sobre ello.

21 diciembre 2010

Mysql. Entradas con un salto de línea

Una sentencia rápida para buscar caracteres Intro (salto de línea) dentro de un campo determinado:

SELECT *
FROM tu_tabla
WHERE tu_campo LIKE '%\r\n%'

Así podemos eliminar caracteres innecesarios en determinados campos.

08 diciembre 2010

Descargar AVG Antivirus gratuito

Nota: Este artículo está obsoleto. Consulta este otro.

AVG Antivirus en un antivirus para Windows que cuenta con una versión gratuita que que podemos tener instalada sin cometer ninguna ilegalidad y que se actualiza periódicamente.

En los próximos días la versión actual se va a dejar de actualizar para que la sustituyamos por la nueva versión AVG 2011. El programa es uno de esos que descargan una parte y luego descarga el resto.

Si quieres descargarte el programa para instalarlo en uno o varios ordenadores que no tengan conexión a Internet puedes hacerlo desde esta dirección:

http://free.avg.com/es-es/download-free-all-product

Debes coger uno de los archivos más grande, que ronda los 140 mb, en la versión 32 o 64, dependiendo de tu sistema operativo (normalmente será la versión de 32 bits).

Y al instalarlo recuerda que puedes desactivar la instalación de la barra de navegación, que no aporta gran cosa y ralentiza tu navegación por internet.

Y bueno, si usas Linux, nada de esto te preocupa.

18 noviembre 2010

Javascript y JQuery: Ejecutar una acción al abandonar una página web

Con Javascript y JQuery es bastante sencillo hacer que suceda algo al abandonar una página web. Contamos para ello con el evento unload. Así podemos, por ejemplo, mostrar un cuadro que indique que se está realizando una operación y hacer que ese cuadro se oculte al abandonar la página.

El sentido de esta opción es evitar que si el usuario pulsa la tecla de volver a la página anterior se encuentre con el cuadro de carga del que hablábamos. La función podría quedar así:

$(document).ready(function() {
    $(window).unload( function () { $('#precarga').hide('slow'); } );
});

En la página tenemos un div oculto con display:none que contiene un mensaje del tipo "Cargando...". Por ejemplo:

<div id='precarga' style='display:none;'>Accediendo a la base de datos. Puede llevar unos segundos.</div>

Así, cuando alguien pulsa en un botón para acceder a otra página mostramos la capa oculta llamada #precarga mediante

$('#precarga').show();

Con la tranquilidad de que el mensaje se ocultará en el preciso instante en el que el navegador abandone la página actual.

12 noviembre 2010

Comprobar en Javascript que se ha activado una casilla de un conjunto

Una pequeña solución rápida para cuando tenemos una página web con un conjunto de casillas de verificación (chebox) y necesitamos comprobar que al menos se ha activado una de ellas.

Los campos en la página html serían como estos:

<input type="checkbox" name="coleccion" value="1">Texto1
<input type="checkbox" name="coleccion" value="2">Texto2
<input type="checkbox" name="coleccion" value="3">Texto3

La función que podría controlarlo sería algo así:

function Hay_Elementos(nombre_campos) {
var hay=false;
elementos = document.getElementsByName(nombre_campos);
for (i=0;i <elementos.length;i++) {
if (elementos[i].checked) hay=true;
}
return (hay);
}

Por último la llamada a esa función se haría así:

if (!Hay_Elementos('coleccion'))
alert("Debe activar al menos una casilla.");

Si no se ha activado ninguna casilla obtendremos el mensaje. En caso contrario el script seguirá su camino.

Y aquí lo dejo para que no se me olvide.

17 octubre 2010

VoiceThread. Aprendizaje cooperativo

He tenido ocasión de trabajar un poco más a fondo con VoiceThread para un proyecto en el que ando liado. Desde luego la impresión que produce es excelente con cada nueva aproximación.

VoiceThread es un espacio colaborativo en el que un grupo de personas o de alumnos ( :-) ) pueden establecer una coversación asíncrona mediante texto escrito, dibujando, voz o videoconferencia sobre algún recurso que se comparta como eje de la charla.

La mejor forma de entenderlo es con un pequeño ejemplo. Y es que VoiceThread también permite la incrustación de sus contenidos.



Espero que os haya gustado. Da gusto ver cómo manejan las TIC nenes tan pequeños.

11 octubre 2010

Joomla 1.5.21

Nueva actualización de Joomla, que ya va por la 1.5.21. Si tienes un Joomla lo mejor es actualizarlo.

Descargar Joomla

Y aquí para pasar de la versión 1.5.20 a la 1.5.21.

29 septiembre 2010

Colocar dos imágenes a la misma altura usando estilos y html

Diseñando una barra corporativa para una página web me he encontrado con una tarea que me ha llevado un rato hasta que he caido en la solución. La anoto aquí por si le es de utilidad a alguien. Se trata de colocar una barra que crezca o decrezca al cambiar el tamaño de la pantalla manteniendo en su parte izquierda un logotipo y otro en la parte derecha.

Esto es lo que buscabamos hacer:


Al redimensionar la pantalla, el espacio se reduce también y no se nota ningún salto.

La edición de las imágenes se basa en tomar los dos logos por un lado y luego una imagen que hace de fondo a lo largo del resto de la barra, con un degradado de color vertical.

Y a la hora de montarlo en HTML utilizaríamos algunos div para recogerlos:

<div id="ja-preheader">
<div id="ja-preheader_inner_left"></div>
<div id="ja-preheader_inner_right"></div>
</div>

El primer div tendrá como fondo la imagen que se va a repetir, mientras que los otros dos div tendrán cada uno el logo correspondiente.

Los estilos que hacen que funcionen son los siguientes:

#preheader {
    display: block;
    background: url(../images/ce_top_bar_back.png) repeat-x top right;
    height: 67px;
    position: relative;
    top: 0;
}

#preheader_inner_left {
    background: url(../images/ce_top_bar_01.png) no-repeat top left;
    height: 67px;
    width:260px;
    top: 0;
    left:1;
    float:left;
}

#preheader_inner_right {
    background: url(../images/ce_top_bar_02.png) no-repeat top right;
    height: 67px;
    width: 290px;
    top: 0;
    float:right;
}

La conclusión es que el truco para que funcione consiste en asignarle un ancho fijo a cada uno de los div interiores y utilizar la propiedad float para colocar cada logo en su sitio.

Y después de montar este circo uno podría pensar ¿no habrías acabado antes con una tablita? Y eso daría para un largísimo debate, pero en resumen se trata de hacer páginas web modernas, usables y accesibles.

13 septiembre 2010

Recuperar archivos después de formatear un disco duro

Hard disk dissection
Estos días he estado echando una mano para intentar recuperar unas fotos de un ordenador con las peores condiciones posibles.

El caso

Era un ordenador que tenía Linux (Ubuntu) instalado, sin particiones y en el que se realizó una instalación nueva de Ubuntu encima de la existente, por lo que se formateo la partición y se instaló de nuevo Ubuntu. Tras unos días funcionando el propietario se percató de que no había hecho copia de seguridad de las fotos, que estaban en una carpeta diferente.

Intentar recuperar ese material de un ordenador que ya llevaba un tiempo funcionando es una tarea complicada, aunque al final tuvimos suerte y conseguimos recuperar casi todas las fotos, unas 15.000.

Primeros pasos

Realmente es impresionante la cantidad de herramientas disponibles para recuperar información a través de Linux. Lo primero que deberíamos hacer es montar un pequeño laboratorio de recuperación con uno de estos dos métodos:

a) Tomar una versión Live de Ubuntu o cualquier otra versión de Linux para evitar que el ordenador vuelva a arrancar desde el disco duro. Cuanto menos operemos con el disco duro original, más posibilidades tendremos de recuperarlo todo.

b) Extraer el disco duro del ordenador y conectarlo a otro ordenador, ya sea abríendolo y conectándolo como un disco secundario más o conectándolo mediante alguna carcasa externa de las disponibles en el mercado. En este caso debemos asegurarnos de que contamos con los conectores necesarios, ATA o SATA.

Documentación

Lo siguiente es seleccionar la herramienta adecuada. La primera opción que encontré fue el uso de Testdisk, mediante esta magnífica guía:

¿Cómo recuperar datos después de formatear con Ubuntu?

Este método no fue válido porque la partición que se creo en la segunda instalación iba justo encima de la otra, no se trata de una partición eliminada de datos, como en el ejemplo, además con un nombre específico. Aquí todas las particiones se llamaban igual y era casi imposible encontrar nada útil.

Antes de tirar la toalla investigué algúnos métodos más. Ubuntu cuenta con un documento perfecto para comprobar todas nuestas opciones.

Data Recovery en Ubuntu

De estas alternativas, dos herramientas (Foremost y Scalpel) pueden revisar el disco duro sector a sector buscando cabeceras de archivos conocidas y a partir de ellas recuperar los archivos. Ambos vienen a ser versiones de los mismo, por lo que opté por Foremost.

Instalar foremost

Tras arrancar con la versión Live o con un segundo equipo con el disco conectado, en Ubuntu se hace escribiendo
sudo apt-get install foremost
 Foremost, la salvación

Una vez instalado, la línea que lo pone en marcha es
sudo foremost -d -t jpg -i /dev/sde1 -o /home/antonio/restore

El -d es fundamental, ya que sino encontrará un montón de archivos pero estarán todos corruptos o incompletos. Ese parámetro hará que siga los bloques para completar las imágenes y no se quede sólo en el bloque que contiene la cabecera.

El -t jpg hace que sólo se busque ese tipo de archivos. En mi caso sólo buscábamos imágenes, aunque hay una lista amplia de extensiones que podemos probar. Cuantas más extensiones comprobemos más tardará el proceso. Se pueden poner una detrás de otra (p.e. -t jpg,gif,doc) o directamente todas con -t all

El -i /dev/sdb1 indica el disco duro que vamos a explorar. El sdb1 cambiará probablemente para el disco en cuestión. Si no sabes en qué /dev te ha montado el disco podrás encontrar alguna pista mirando el archivo /etc/mtab

El -o /lacarpetaquesea es el lugar dónde se soltarán los archivos que se encuentren. Es fundamental que no sea en el mismo disco duro que estamos intentando recuperar, claro.

Otro aspecto fundamental es que la carpeta donde vamos a recuperar los archivos debe tener suficiente espacio libre como para terminar el proceso completo. Vamos a buscar en un disco duro, por lo que seguramente necesitaremos mucho espacio.

Este proceso tardará bastante, dependiendo del sistema de conexión del disco duro, de nuestro ordenador y del número de archivos a recuperar. Con un poco de suerte al finalizar encontraremos una carpeta por cada tipo de extensión y en su interior el material perdido. En mi caso al menos así fue.

Posteriormente sólo me quedó utilizar una herramienta para renombrar archivos y ordenarlos por su fecha de toma de la imagen, organizando así las fotos por meses.

Mucha suerte.

25 agosto 2010

Creación de vídeo multicámara con Premiere Pro CS5

Desde hace ya algunas versiones Premiere Pro nos permite coger el material generado con diferentes cámaras de vídeo y mezclarlas entre si para simular un pequeño estudio en el que vamos decidiendo qué material de cada cámara se mostrará.

En este proceso lo más complejo puede ser la sincronización correcta de las cámaras, sobre todo si no se ha grabado el evento completamente y sólo se han ido tomando partes con cada una de las cámaras.

En este vídeo de Lear Premiere Pro CS5 explican, en ingles, todo el proceso de sincronización, creación de secuencia multicámara y posterior selección de escenas de una forma muy sencilla.

Learn Premiere Pro CS5 - MultiCam editing

19 agosto 2010

Joomla 1.5.20

Tras la vuelta del verano es normal encontrarse algún portal que otro desactualizado. Joomla ha sacado actualizaciones hasta llegar ya a la versión 1.5.20, recomendando su actualización a esta versión para tapar varios agujeros de seguridad.

Las actualizaciones se pueden descargar desde esta página:

Joomla Download

Y en esta otra las diferentes versiones para actualizar de una versión específica a otra. Por ejemplo, si tu versión actual es la 1.5.17 (se puede ver en el backend de Joomla, en la esquina superior derecha) deberías descargar la versión 1.5.17 to 1.5.20.

Actualizaciones de una versión a otra

16 agosto 2010

Darse de baja de Viadeo

Vuelta de unas largas vacaciones del blog. Hacía falta un poco de tiempo para coger fuerzas y ganas.

En este caso quería  explicar como darse de baja de una red social. Después de un rato buscando al final encontré como dar de baja la cuenta de una amiga que se había dado de alta accidentamente en Viadeo con una dirección erronea. Me costó encontrarlo, quizás sea la edad, quizás estaba un poco escondido. Estos meses se habla mucho de lo que cuesta darse de baja de algunos espacios que ya no nos interesan o en los que nos dimos de alta por curiosidad y luego invaden nuestro buzón de correo. Lo primero que hay que entender es que la culpa no es de la red en cuestión, claro.

En el caso de Viadeo, la forma de hacerlo es la siguiente:
1. Accede a tu cuenta. Si no recuerdas la clave puedes pedirle que te la recuerde mediante un correo electrónico.
2. Haz clic en Mi perfil.
3. En el primer bloque de la parte izquierda haz clic en Mis datos.
4. En el lado izquierdo encontrarás un enlace denominado Eliminar Mi Cuenta

Ahora haremos clic en ese enlace y seguiremos los pasos. Espero que os sea de utilidad a los que como a mi, os haya llevado un rato encontrarlo.

Con Viadeo parece que también te das de alta en UNIK, por lo que si no utilizas esa red también tendrás que darte de baja allí (es más sencillo: Mi cuenta>Eliminar mi cuenta).

05 julio 2010

Uso de clases de documento en Flash

Este vídeo muestra algunos conceptos fundamentales en el uso de ActionScript 3. Se trata de un preloader que gira mediante una clase de documento. La clase está creada en un archivo externo, un archivo .as y muestra lo sencillo que puede ser algo tan aparentemente complejo como es la programación en Flash desde la versión CS3 hasta Flash CS5.

Cómo crear un clase Documento con ActionScript 3.0

Básicamente insertamos en una escena algunos símbolos, indicándo el nombre de cada uno de ellos y posteriormente los manipulamos desde el archivo que contiene a la clase. Para vincular ambos archivos los guardamos en la misma carpeta y en las Propiedades del documento especificamos el nombre de la clase, es decir, del archivo .as.

Además es de un autor español, con lo que se le entiende todo. :-)

25 mayo 2010

Comprueba tu privacidad en Facebook

Vía wwwathsnew encuentro esta página (hay otras similares) que nos permiten ver hasta qué punto es pública nuestra información de Facebook. Es bueno comprobarlo y ver si nuestros datos están más o menos ocultos a las implacables búsquedas de Google y compañía.

ProfileWatch

Una vez en ella hay que introducir la dirección que nos aparece en Facebook al entrar en la sección Perfil. Será algo parecido a esto:

http://www.facebook.com/profile.php?id=xxxxxxxxxxxxxxx

En la página siguiente podremos ver la información que mostramos, las páginas que seguimos, fotos, etc. dependiendo de nuestro nivel de privacidad. En la esquina de arriba a la derecha se muestra una valoración sobre la seguridad de nuestro perfil.

Luego si quieres vas y lo twitteas.

17 mayo 2010

Islandia

Quince días sin aparecer por aquí. Aquí va un vídeo que muestra Islandia en todo su esplendor, grabado con la técnica de Time Lapse, cómo no.


Iceland, Eyjafjallajökull - May 1st and 2nd, 2010 from Sean Stiegemeier on Vimeo.

 Visto  en el blog de Davprocom.

Por cierto que ya se puede descargar para probar la versión en español de Adobe Premiere CS5.