jueves, 30 de diciembre de 2010

Proyecto de Ley: Incorporación de empleados a honorarios en la Ley de Accidentes del Trabajo

Primera entrada con algo de legislación, cada cierto tiempo estoy a punto de publicar algo de este tópico y al final no lo hago... así que inauguro con esta noticia laboral, ya era hora! :D

En Chile, todo trabajador se encuentra cubierto por el "seguro de accidentes", pero sólo aquellos que caen en alguna de las categorías detalladas en la Ley 16.744 (Ley sobre accidentes del trabajo y enfermedades profesionales). Por nombrar sólo algunas de las categorías más comunes:

- Trabajadores con o sin contrato, también conocidos como trabajador dependiente o independiente, correspondientes a trabajadores que pagan imposiciones (leyes sociales)
- Alumnos en práctica profesional (estudiantes)
- Empleados públicos

Hasta ahí pareciera que todo bien, pero ¿qué pasa con aquellos trabajadores que están trabajando con contrato de honorarios? absolutamente nada, no se encuentran cubiertos por este seguro :O




En Noviembre de este año (2010) se envió un proyecto de ley para modificar la 16744 y agregar a los empleados que caen en la categoría de trabajadores a honorarios.

Conozco a varias personas que llevan mucho tiempo trabajando con boletas de honorarios y creo que este proyecto es una muy buena iniciativa. Ahora habrá que ver cuánto tardan en promulgar esta iniciativa que beneficiará a muchas personas ;)

Referencias:

Ley Fácil - Guía sobre Ley de Accidentes de Trabajo
Ley 16744 - Normas sobre accidentes del trabajo y enfermedades profesionales

domingo, 19 de septiembre de 2010

JDownloader: Programa de descargas automáticas

Si necesitamos algún programa para la descarga de archivos publicados en sitios de DD, recomiendo el JDownloader.
La descripción que aparece en el sitio oficial, creo que está más que clara:

JD ofrece descargas múltiples paralelas, reconocimiento de captcha, extracción automática de archivos, administración de contraseñas y mucho más. Adicionalmente, soporta muchos sitios de “encriptación de enlaces”, así que solo tendrá que pegar los enlaces “encriptados” y JD hará el resto. JD puede importar archivos DLC, CCF y RSDF.
Por supuesto, JD es gratuito.


Esta aplicación no puede faltar entre aquellos que descargan mucho desde Inet, especialmente para series o anime, que son muchos enlaces :P


Su utilización no es muy complicada:
- Abrir y configurar a gusto (pestaña "ajustes")
- Para agregar enlaces, ir a la pestaña "Capturador de enlaces", ahí se deben pegar todos los enlaces copiados (se puede copiar más de uno por vez) haciendo clic en "Agregar URL(s)". Ésta es la sección previa  antes de que comience la descarga, ahí se pueden organizar los enlaces en paquetes, poner la contraseña para que se descompriman los archivos (cuando son .rar, .zip, etc), indicar la carpeta de descarga, etc. Para iniciar la descarga hay que dar clic en "Agregar todos los enlaces"... y a esperar se ha dicho ;)

Algunas de las ventajas de utilizarlo:

- Permite la descarga de los principales sitios utilizados (megaupload, rapidshare, etc)
- Detecta captchas de forma automática, no hay que estar digitando los textos que piden en la páginas de forma manual (gran punto!), de esta forma podemos dejar descargando de forma desatendida... no hay que estar mirando cada 2 por 3 la pantalla :P
- En caso de alcanzar los topes de descarga por sitio (sí, algunas veces igual queda lo del límite), el programa se autoimpone la revisión del enlace después de X segundos o X minutos, con esto la autodescarga comenzará apenas esté disponible el sitio nuevamente.
- Al utilizar Java y su máquina virtual (JVM), es un programa multiplataforma.


El detalle que he encontrado, es que tras muchas descargas y sin apagar el computador, el JD tiende a consumir mucha memoria y en algunos casos mucho procesador, para esto la solución es simple, cerrar el programa y volver a iniciarlo :P

Referencia:
JDownloader - Página oficial
JDownloader - Descarga

Aplicación en Java utilizando una base de datos embebida

Desde hace un buen rato he estado tratando de decidir qué base de datos utilizar en una aplicación en Java que estoy haciendo y luego de darle varias vueltas las opciones que quedaban eran:

- HSQLDB (http://hsqldb.org/)
- H2 (http://www.h2database.com/)

De las dos opciones la que más ubicaba era HSQLDB por ser utilizada por programas como el OpenOffice, JDownloader, Sockso, etc. Sin embargo, luego de leer un buen resto, le daré una oportunidad a la H2 :P... esto principalmente porque el desarrollador de ella corresponde al creador original de la HSQLDB.

La gracia de este tipo de bases de datos es que son embebidas, es decir, no es necesario instalarlas en el computador donde se ejecutará la aplicación (programa base), sino que sólo se carga una librería dentro de él y listo :)


Hablando un poco de las bases de dato que dejé cómo opción (H2 y HSQLDB): Como todo en esta vida, hay que ver lo malo y lo bueno...

Lo que siempre habrá de tenerse en mente es que ambas trabajan con archivos de texto para guardar y cargar en el inicio, dejando la información en memoria, por lo que hay que tener en cuenta la capacidad del computador donde se trabajará. De por sí la máquina virtual de java (JVM) tiende a consumir grandes cantidades de memoria con programas que se ejecutan por largo tiempo y con mucho manejo de información. Un ejemplo, la JVM se dispara cuando se descargan cosas con el jdownloader y se deja muchas horas o algunos días encendido (especialmente cuando se bajan pelis :P).

Lo bueno de este tipo de BD es que pueden ser configuradas para ser accedidas sólo por la aplicación que la carga o bien como servidor, evitamos instalar algo adicional para que nuestra aplicación funcione -a estas alturas un gran porcentaje de usuarios tiene instalada por defecto la JVM-, permite trabajar con Hibernate y lo importante es que podemos trabajar con código SQL de forma directa... además del hecho que ambas son opensource :)

Otro punto a favor de este tipo de bases de datos, es que al ser de fácil y rápido uso, nos sirven para hacer pruebas en aplicaciones que serán utilizadas para conectarse a otras bases de datos más robustas.

Ya en un próximo post hablaré un poco de cómo usar la H2 ;)

Referencias:
Wiki - Embedded database
Wiki - Comparison of relational DB
H2 Database Engine
HSQLDB - HyperSQL

domingo, 5 de septiembre de 2010

Screen: múltiples consolas en sólo una ventana

Hace mucho que quería escribir sobre este comando, pero se me había quedado en el tintero así que lo hago ahora :P

El "screen" es un comando que sirve para virtualizar consolas y guardar aquellas que se encuentren abiertas. La mejor utilidad se puede encontrar cuando uno se conecta por ssh a algún computador remoto y zas! múltiples consolas en tan solo una conexión! :D Por qué tanta alegría? cuando se trabaja desde windows por lo general se utiliza algún programa como el putty, teniendo que ejecutarlo cada vez que se necesite tener una segunda ventana, sin embargo, si utilizamos el comando screen, con una ventana nos es suficiente ;)
Para hacer una idea de lo que hablo podemos imaginar al screen como el firefox y sus pestañas, se tiene la base (firefox) y por cada página una pestaña; además, también se puede "guardar la sesión" al momento de cerrar pudiendo volver a cargarla la próxima vez.
Ya dicha la introducción ahora veamos cómo usarlo :)


Iniciar sesión por primera vez

Ejecutar el comando "screen". Hay que hacer notar que la sesión se inicia en la misma carpeta desde donde se ejecutó el comando screen, por lo que todas las ventanas que se creen en la sesión actual cargarán la misma ruta inicial. Por ejemplo, si la ruta donde se ejecuta el comando es en "/var/log/" (pwd = /var/log/), todas las nuevas ventanas que se agreguen comenzarán en "/var/log/" y no en la raíz del usuario.
Ya estando dentro de la sesión de screen, se pueden ejecutar ciertos comandos para hacer varias cosas. Todos los comandos comienzan con "ctrl+a" seguido de la opción a utilizar, es decir: presionar "ctrl" junto con la "a", soltar las teclas y luego escribir la letra que corresponda al comando.
Las combinaciones que más utilizo y algunas otras útiles son las siguientes:

* Crear nueva ventana -> ctrl+a c

* Cambiar de ventana
Acá existen varias formas de hacerlo:

- ctrl+a " <-- muestra el listado de ventanas abiertas. Para seleccionar una ventana hay que moverse con las flechas y presionar enter sobre la ventana elegida
- ctrl+a n <-- cambia a la ventana siguiente
- ctrl+a p <-- cambia a la ventana anterior
- ctrl+a [nro de ventana] <-- cambiar a una ventana específica según posición. Las posiciones comienzan en 0. Por ejemplo: ir a la tercera ventana = ctrl+a 2

* Guardar la sesión actual y salir -> ctrl+a d
La utilidad de guardar una sesión viene dada por el hecho de que al guardar la sesión se guardan todas las ventanas y lo que ahí se estuviera ejecutando.
Al recargar una sesión guardada se carga todo tal cual como estaba al momento de guardar. Esto es especialmente útil cuando se están editando varios archivos, dado que nos evitamos el tener que volver a abrir todo la próxima vez que sigamos trabajando en ellos.

Iniciar una nueva sesión sin perder alguna existente
Sólo hay que iniciar sesión desde cero con el comando "screen"
$ screen

Finalizar sesión
Para finalizar la sesión, sin guardar, sólo hay que cerrar todas las ventanas abiertas. Ejecutar "exit" o "logout" en cada una.


Cargar sesión previamente guardada
Parar cargar cualquier sesión, se debe ejecutar el comando más la opción "r".
$ screen -r
En el caso de que se encuentren varias sesiones guardadas, aparecerá un listado con todas las existentes. Un ejemplo de sesiones creadas sería:

$ screen -r
There are several suitable screens on:
17818.pts-0.box220 (Detached)
19712.pts-0.box220 (Detached)
Type "screen [-d] -r [pid.]tty.host" to resume one of them.

Tal como sale ahí, para iniciar una sesión específica del listado habría que ejecutar la recuperación + el nombre de la sesión a cargar. Por ejemplo:

$ screen -r 19712.pts-0.box220

Soltar sesión que se encuentra "tomada"En el caso de que exista algún corte de conexión y se nos corte la comunicación con el servidor no perdemos lo que teníamos abierto, pero al volver a conectarse y tratar de recuperar la sesión con screen -r nos aparecerá un mensaje de error ya que la sesión "aparentemente" se encuentra en uso... es en estos casos donde aparece la opción "-d".
La opción -d nos sirve para liberar una sesión que se encuentra tomada, pero su mayor uso es en combinación con la opción -r.
Para recargar la sesión en la que nos encontrábamos antes de que se produjera el corte sólo debemos escribir:

$ screen -dr

En el caso de que exista más de una sesión abierta, se debe utilizar los mismo que detallo en la parte de "cargar una sesión guardada" (ver más arriba).

Otras cosas útiles

- ctrl+a A <-- asigna un nombre a la ventana actual
- ctrl+a [ <-- copiar texto en el bufer de screen
Con esta opción se puede copiar algún texto desde el editor que se esté utilizando y luego pegarla en otra ventana (si es que es muy práctico esto!). Para comenzar a copiar hay que moverse con los cursores por la pantalla y presionar la barra espaciadora justo en el punto desde dónde se iniciará la copia, luego para finalizar hay que presionar enter en el punto "hasta" donde se quiere copiar.
- ctrl+a ] <-- pegar el texto del bufer de screen

Configurar la carga de screen

Aparte de lo que comenté anteriormente, es posible configurar varias cosas para "screen" ingresando comandos en el archivo llamado ".screenrc" que se debe dejar en la raíz de la cuenta del usuario que ejecuta el comando.
No me acuerdo qué significa cada comando, así que copiaré como ejemplo el contenido de un archivo que utilizo algunas veces:

startup_message off
hardstatus alwayslastline '%{= wk}%?%-Lw%?%{r}(%{k}%n*%f%t%?(%u)%?%{r})%{k}%?%+Lw%?%?%= %m/%d %C%A'
activity ''

Ese código deja una línea fija en la parte de abajo, mostrando el listado de ventanas abiertas, cuál se está utilizando actualmente y la fecha y hora del servidor.


Lo que encuentro excelente de todo esto, es que es posible conectarse por ssh, iniciar una sesión screen, trabajar todo lo que se pueda, guardar la sesión, cerrar el ssh y después podemos cargar nuevamente la sesión de screen desde donde queramos: otra sesión ssh, el mismo computador, etc.
Es más, si estamos trabajando con screen y se corta internet o la luz, no importa! podemos recargar la sesión de screen cuando nos volvamos a conectar :D
También es práctico cuando se cargan las X, evitas tener muchas ventanas de consolas en la pantalla (xterm, gnome-terminal, etc), pudiendo tener sólo una cargada ocupando espacio y todas las demás de forma virtual.

martes, 17 de agosto de 2010

//Nota mental: Comentarios y límites de consultas en SQL

Como hace mucho que no publico nada por falta de "unión de computadores" -la info en uno y yo en otro xD-, hago una publicación rápida para comenzar con mis entradas del tipo "nota mental", que en realidad son sólo recordatorios de cosas que voy utilizando y que cada cierto tiempo se me olvidan teniendo que volver a buscar cómo se hacía por no usarlas durante un buen rato... lo sé, memoria de pez :P.
Dejando la intro de lado, ahora lo que venía ;)

Comentarios en SQL
  • MS SQL Server: Agregar "--" antes de la línea o utilizar /* ... */ para textos de más de una línea.
  • Oracle: Agregar "--" antes de la línea o utilizar /* ... */ para textos de más de una línea.
  • MySQL: Agregar "#" antes de la línea (este es el método seguro y menos complicado), o bien, utilizar /* ... */ para textos de más de una línea.
Un detalle a agregar, en MySQL también se aceptan los comentarios del tipo "--", pero eso puede traer algunos problemas con algunas sentencias matemáticas. Ver Empezar comentarios con "--" (MySQL)

Limitar consultas en SQL

  • MS SQL Server: Utilizar sentencia "TOP"
Ejemplo: Seleccionar los primeros 5 registros de una tabla

SELECT TOP (5) *
FROM tabla
;
  • MySQL: Utilizar sentencia "LIMIT"
Ejemplo: Seleccionar los primeros 5 registros de una tabla


SELECT *
FROM tabla
LIMIT 5
;


Referencias:
Sintaxis de comentarios - MySQL
Sintaxis de comentarios (--) - SQL Server
Sintaxis de comentarios (/* */) - SQL Server
Uso de LIMIT en consultas - MySQL
Uso de TOP en consultas - SQL Server (Transact-SQL)
.
Editado para agregar formato de comentarios en oracle.
.

domingo, 23 de mayo de 2010

Google celebra los 30 años de Pac-Man

Este año Google recordó la celebración del aniversario de Pac-Man de una forma muy entretenida. Como es sabido google cambia su logo con alguno referente a la celebración del día, pero en esta oportunidad fueron un poco más allá y pusieron el primer logo interactivo del que tengo memoria... una versión de pac-man para jugar! :D
Así es como se ve:

Según leí por ahí el logo estará durante dos días -lo habitual es sólo uno- esto para que más de alguno recuerde viejos tiempos, por mi parte ya caí y lo jugué un par de veces xD

Si se fijan, el botón de "voy a tener suerte" fue reemplazado por "insertar moneda", con esa opción pueden jugar hasta 2 usuarios a la vez, uno con las flechas y el otro con las teclas "wasd".

Mis felicitaciones a google por este entretenido logo ;)

Referencias:
Alt1040 - Google celebra el 30 aniversario de Pac-Man
WikiPedia - Pac-Man

PD: Interesante esto, revisando wikipedia me acabo de enterar que el nombre de "Pac-Man" proviene de "Pakku Man" por una onomatopeya japonesa... más info en el enlace de wikipedia ;)

sábado, 15 de mayo de 2010

Cortometraje: La dama y la muerte

Acá un cortometraje que vi hace un tiempo atrás y que encontré muy bueno, se titula "La dama y la muerte" donde una de las empresas productoras es la de Antonio Banderas -si hasta sale en los créditos y todo xD-. Corto ganador de un Goya en la versión de este año (2010), muestra la muerte de una anciana con un toque de humor claro.
Vale la pena verlo, eso sí, esperen hasta el final ya que hay una escena tras los créditos ;)



La dama y la muerte, ganador del goya 2010

PD: En esta entrada no hay nada en el botón leer más :P

It's Magic!

Hoy no toca una publicación de algo relacionado con informática, hoy le toca el turno a la música :D
Hace un tiempo me enteré que la canción "It's Magic" que canta Selena Gómez, en realidad es un cover. Hasta ayer no pude recordar cuál era el grupo original, así que busqué un poco y chan chaaaaan... la canción original se llama "Magic" y es del grupo escocés "Pilot", fue lanzada en el 1974 (!!) y fue bastante pegajoza de acuerdo a los comentarios que encontré, además de haber sido utilizada y "covereada" (si es que existe esa palabra :P) en más de una oportunidad a lo largo del tiempo... impresionante.
Obviamente debo reconocer que primero conocí la versión de Selena Gómez , utilizada en la banda sonora de "Los Hechiceros de Weverly Place - La Película" ("Wizards of Waverly Place The Movie") por ser el último cover, pero fue entretenido escuchar la versión original.

Acá el video de "Magic" a cargo de los "Pilot" :)



Para ver el de Selena Gómez, presiona "leer más" ;)

Cover de "Magic" por Selena Gómez



Wikipedia: Magic - Pilot Song

jueves, 29 de abril de 2010

Imagemagick: editor de imágenes desde la consola

Imagemagick es un paquete con herramientas para la edición de imágenes directamente desde la consola y como bien sabemos todo lo que se pueda hacer por consola sirve mucho más cuando lo hacemos de forma remota :D.
Como bien dice su lema, imagemagick sirve para "convertir, editar y componer imágenes". Se puede revisar la lista de herramientas con una breve descripción del uso de cada una en este enlace "Imagemagick - command line tools".


Por lo general las que más utilizo son: display, identify y convert (o mogrify). Otra herramienta útil es "montage", pero nunca he trabajado con ella :P.
Este paquete de utilidades para trabajar con imágenes es más práctico y útil de lo que puede parecer a primera vista,  por ejemplo: se puede crear un script para trabajar un conjunto de imágenes de forma automática y no tener que hacerlas una por una, también crear alguna página en php para trabajar con imágenes, etc. De hecho, por lo general las cosas que he visto en web casi siempre trabajan utilizando imagemagick o lo tienen como opción :)
Ahora a lo que iba... una descripción rápida de las que utilizo:

  • display
Ésta realmente no es para usar con la consola ya que sirve para visualizar una imagen :P, más bien es cuando se tiene acceso a las X en vivo y en directo o por ssh con la opción de replicación de X como lo vimos en la publicación anterior ;).
Más info y opciones: Documentación display
  • identify
Con esto podemos tener información sobre alguna imagen, tal como el formato (algunas veces las extensiones están mal puestas), las dimensiones y el peso. También es posible obtener mucha más información agregando la opción "-verbose".
Más info y opciones: Documentación Identify
  • convert o mogrify
La única diferencia entre ellas es que con mogrify se trabaja directamente sobre la imagen, en cambio con convert se crea una copia. Dependiendo del caso es la que se usa, por ahora me centraré en "convert" :P. Estas herramientas son las que más sirven en la parte de edición de imágenes en sí.
Una lista con ejemplos rápidos de uso:

(*) Redimensionar una imagen, achicándola a un 80% del original
convert imagen.jpg -resize 80% imagen2.jpg 
Para redimensionar sin crear otro archivo sería: mogrify -resize 80% imagen.jpg
 

(*) Redimensionar muchas imágenes
mogrify -resize 80% *.jpg

(*) Redimensionar de forma no proporcional
convert -resize 650x480 imagen_original.jpg imagen_final.jpg

(*) Cambiar calidad de una imagen
convert -quality 85 imagen_original.jpg imagen_final.jpg

(*) Agregar texto a la imagen (esto sí que es práctico para marcar)
convert -font verdana -fill yellow -pointsize 16 -draw "text 10,15 'www.miweb.com'" imagen_original.jpg imagen_texto.jpg

Donde:
-font [nombre de la fuente] es la fuente (tipo de letra) que se usará.
-fill [color] es el color con el que se escribirá dicha fuente, por defecto creo que es el negro (no me acuerdo xD).
-pointsize [numero] es el tamaño de la letra
-draw "[text posicion,posicion] 'texto'". Acá hay que dejar claro que el parámetro va encerrado completo entre comillas dobles (") y el texto a escribir va dentro de esas comillas y encerrada entre comillas simples ('). Creo que hay otras formas de hacerlo, pero ahí sería cosa de probar los parámetros, si alguien ya lo probó de otra manera me avisan :P

(*) Rotar una imagen
convert -rotate 90 imagen.jpg imagen_rotada.jpg o convert -rotate -90 imagen.jpg imagen_rotada2.jpg

Más info y opciones: Documentación Convert

Y para finalizar acá dejo ejemplos --> Imagemagick - ejemplos

Referencia:
Imagemagick 

domingo, 25 de abril de 2010

Ejecutar programas de forma gráfica por SSH usando Xming

Más de alguna vez he querido ejecutar algún programa cuando estoy conectada por ssh desde windows y no puedo por falta de una interfaz gráfica (también conocida como "X"). Al ejecutar alguno de esos programas se recibe el error ": [...] cannot open display".
¿Es posible ejecutar algún programa que necesita de interfaz (o X), cuando estamos conectados por ssh? ¡Por supuesto!, es acá cuando entra en juego la opción "X11 forwarding" del ssh y el programa Xming :D



Para llevar esto a cabo necesitamos algún programa para conexión por SSH, por lo general con el que trabajo es con el famoso "Putty" así que será éste el que use como referencia.

Lo primero es descargar el "Xming" e instalarlo. Viene con un wizard bastante entendible así que no es mucho lo que se debe hacer más que elegir las opciones que más nos acomoden y "siguiente siguiente siguiente", con esto ya lo tenemos instalado (versión corta xD).
Lo siguiente es ejecutar el putty, es acá donde debemos poner ojo en las opciones a utilizar, no hay que olvidar activar la opción del "x11 forwarding". Dentro del menú que está en la izquierda, ir a "Connection" -> "SSH" -> "X11" -> X11 Forwarding, activar la casilla "Enable X11 forwarding".
De paso, de preferencia activar el protoco 2 del ssh ("Connection" -> "SSH" -> Preferred SSH protocol version: "2").
Si habitualmente tenemos algún perfil guardado, sólo hay que editarlo agregando la opción del forwarding indicada más arriba.
Ya con esto estamos listos. Ejecutar el Xming, que vendría a ser algo como el "intermediario", y luego el putty para conectarse al sitio en el que trabajarán.
Para probar ejecuten algún programa rápido como la calculadora o algún calendario.

Luego de tanta maravilla hay que hacer un recordatorio, al ejecutar de esta forma estamos aumentando el tráfico en la red por lo que algunas cosas pueden demorarse en cargar o verse un poco lentas, dependiendo de la velocidad de la red utilizada esto puede ser normal: a red con mayor velocidad, menor tiempo de respuesta de los programas (se ven casi en tiempo real).

Ya tenemos funcionando lo que queríamos... ahora a probar! :D

Referencias:
Putty - download
Xming - download

Recuperar archivos borrados

Más de alguna vez nos ha pasado que por error borramos archivos que no deberíamos. Ayer me pasó que sin querer borré del notebook un respaldo de todas las fotos que había tomado con la cámara en los últimos paseos (muchas fotos ^^U) , después del espanto inicial me puse en campaña de recuperarlas directamente desde la memoria de la cámara, desde donde ya las había borrado también... así que manos a la obra :P
Cuando de recuperación de archivos se trata, por lo general ocupo el programa "PC Inspector File Recovery" (ver enlace de referencia más abajo) el cual siempre me ha ayudado, especialmente con aquellos discos que ni el sistema operativo reconoce. Como en este caso estaba algo apurada y no quería instalar nada, encontré un programa que no necesita instalación, perfectamente se puede usar desde el computador o desde un pendrive, hablo del "DiskDigger". Es una versión reducida del programa que utilizo siempre, pero no se queda atrás en lo que a su función se trata "busca, encuentra y guarda" fácil y sencillo :D
Para utilizar este programa sólo se debe descargar, ejecutar y seguir los pasos:

1) Indicar qué disco debe analizar (en mi caso era la tarjeta de memoria de la cámara), 
2) Seleccionar el tipo de búsqueda. Si la búsqueda rápida (primera opción) no resulta, ir con la segunda, corresponde a una búsqueda profunda. El único detalle de la opción de búsqueda profunda es que los nombres de los archivos serán del tipo "sectorxxxx.xxx"... hay que tener en mente que "antes que perder el archivo es mejor que nada" xD.
3) Esperar que termine la búsqueda, seleccionar los archivos que se quieren guardar y presionar el botón para guardar.

Eso sería todo, archivos recuperados y contentos nuevamente :D

Algunas recomendaciones cuando se borran archivos y quieren recuperarlos:

- Si el archivo eliminado está en el disco duro del computador, conviene "NO" instalar nada y tratar de no ejecutar programas para no crear nuevos archivos, esto para evitar que se sobreescriba la parte del disco donde estaba guardado el archivo borrado. En caso de que suceda la desgracia de que el sistema operativo ocupe todo o parte del sector de memoria donde estaba el archivo que se borró, no es muy probable que se pueda recuperar el archivo :(. Por lo anterior, hay que escanear el disco desde otro computador para evitar perder algo ;)

- Si el archivo eliminado está en el disco duro del computador y no tenemos opción de escanearlo desde otro lado, tratar de instalar un programa de recuperación de archivos apenas ocurre el problema y escanear de forma inmediata. A menor tiempo de espera y uso del computador, mayor son las probabilidades de recuperar lo que queremos :).

NOTA:
Ahora que buscaba info de los programas que menciono, acabo de notar que el "PC Inspector File Recovery" sólo funciona hasta Windows XP, lo he instalado sólo en ese sistema operativo así que no puedo complementar mucho al respecto. El "Disk Digger" lo probé en Windows 7 y funcionó sin problemas ;)

Referencias:
PC Inspector File Recovery
DiskDigger

domingo, 28 de marzo de 2010

Visual Editor y Eclipse

Retomando la sana costumbre de programar por gusto (xD), me dio por querer programar algo en java, pero para hacer algo completo tenía que incluir una parte gráfica... obvio :P
Para hacer eso, se me ocurrió probar una herramienta que no había utilizado anteriormente, el "Visual Editor" que viene como plugin del Eclipse.
Para aquellos que no lo conocen, el programa Eclipse es un "entorno de desarrollo integrado" más conocido por su sigla en inglés "IDE" (integrated development environment) que brinda todo un escenario para programar tranquilamente. Originalmente lo conocí sólo para java, pero con los plugins se puede configurar para programar hasta PHP. La descripción de este programa en sus colores y sabores lo dejáre para alguna otra publicación, por ahora me centraré en la instalación del plugin "Visual Editor" -que harto dolor de cabeza me dio :P-
La versión resumida de instalación es:

Para evitar conflictos y tener el Visual Editor funcionando hay que usar:
- Eclipse 3.5 SDK (no JEE, no Java)
- Visual Editor 1.4 usando el asistente de instalación del Eclipse

Si quieres revisar la instalación completa sigue leyendo, de lo contrario puedes quedarte hasta acá y a programar se ha dicho :D

La instalación misma no es lo complicado, lo que hace perder tiempo son los problemas de compatibilidades.
Actualmente la versión 3.5 del Eclipse (conocida como "Galileo") presenta algunos problemas al instalar el plugin en algunas de sus versiones. Por ahora sólo he probado las versiones JEE y Java, donde aparece un mensaje de error y la instalación se detiene. El mensaje de error comienza con:

Cannot complete the install because of a conflicting dependency.

Y luego detalla una lista de supuestas incompatibilidades que impiden la instalación.
Para evistar eso hay que utilizar la versión SDK del Eclipse 3.5 y listo. Para instalar el plugin hay que seguir el camino habitual:

- Ejecutar Eclipse
- Menú "Help" -> Install new software...
- En "work with" poner: http://download.eclipse.org/tools/ve/updates/1.4/
- Se puede agregar la dirección de forma permanente, presionando el botón "Add" y escribiendo:
Name: VE 14 (o cualquier nombre que les guste)
Location: http://download.eclipse.org/tools/ve/updates/1.4/
- Marcar todas las casillas que aparecen en la parte baja de la ventana (la que dice "hide items that are already installed" es opcional).

Como comentario final, la versión SDK del Eclipse no presenta ningún problema de instalación, pero para evitar inconvenientes mejor instalar el VE apenas se instala el Eclipse y luego el resto de los plugins deseados.

Espero que esto ayude a alguien más a no tardar para probar el visual editor ;)

Referencias:
Proyecto Visual Editor - http://www.eclipse.org/vep/
Guía instalación VE 1.4 - http://wiki.eclipse.org/VE/Update
Bug 301766 - https://bugs.eclipse.org/bugs/show_bug.cgi?id=301766

jueves, 25 de febrero de 2010

Controlador de dominio bloqueado o no disponible (Windows)

En alguna oportunidad podemos encontrarnos con un error al tratar de iniciar sesión en un computador que se encuentra conectado a un dominio X, apareciendo un mensaje que dice "Windows no puede conectarse al dominio porque el controlador de dominio está bloqueado o no disponible o porque no se encontró la cuenta de su equipo [...]", incluso utilizando una cuenta que ya se encuentra configurada para trabajar de forma local. Tras eso lo primero es poner cara de espanto :P, pero a respirar y tomarlo con calma, por lo menos no es tan difícil de solucionar como parece.
Una solución que he probado y resulta es sacar el computador del dominio y volver a agregarlo... sí, tan sencillo como eso :D.

Consideraciones al respecto:
- Para sacar del dominio un computador y para volver a agregarlo se deben tener permisos en el dominio que se trabajará (en caso de no saber como hacerlo, presionar el enlace "leer más").
- Se debe tener una cuenta local en el computador con permisos de administrador.

¿Por qué se produce el error?
- El computador que presenta la falla por algún motivo no fue reconocido por el servidor de dominio y no pudo autentificarse.
Cada computador posee un ID y al conectarlo a la red entrega dicha información al controlador para decir "hey, me estoy conectando y me llamo juanito", sin embargo, el controlador de dominio no lo reconoce como "juanito" así que no deja que el usuario inicie su sesión.

Eso sería todo ;)

Eliminar el dominio de un computador:

1) Clic derecho sobre el ícono de "Mi PC" -> Nombre del equipo -> presionar el botón "Cambiar" (en la descripción pone: Para cambiar el nombre de este equipo o unirse a un dominio, haga clic en Cambiar).
Ya en este punto estamos viendo los datos del computador y el nombre del dominio en el que se encuentra (o debiera encontrarse).
2) Activar la casilla "Grupo de trabajo" y poner algún nombre en el cuadro de texto, dar clic en aceptar. Aparecerá una ventana pidiendo los datos de un usuario con permisos para hacer el cambio de dominio. Luego de ingresar los datos solicitados y dar clic en aceptar, nos pedirá que reiniciemos el computador.
3) Luego de reiniciar el computador ya se encontrará fuera del dominio.

Activar computador en un dominio:

1) Idem que el anterior
2) Activar la casilla "Dominio" e ingresar el nombre del dominio al que se agregará el computador. Aparecerá una ventana pidiendo los datos de un usuario con permisos para hacer el ingreso al dominio. Luego de ingresar los datos solicitados y dar clic en aceptar, nos pedirá que reiniciemos el computador.
3) Luego de reiniciar el computador ya se encontrará dentro del dominio.

domingo, 21 de febrero de 2010

Error al instalar IE 7 u 8 en Windows XP

Para no perder la opción de cambiar entre versiones del Internet Explorer (en adelante IE), desde hace un tiempo opto por instalar la versión 7 de forma manual y luego de eso permitir la actualización por parte de Windows al IE 8. Esto porque según he leído por ahí, al tener instalada la versión 6 y luego pasar a la 8, no es posible bajar a la versión 7 en caso de llegar a quererlo. No he tenido que bajar del 8 al 7, pero no me gusta el que me limiten las opciones... sí, una de tantas manías :P.
En una de las instalaciones del IE 7 me encontré con un error que finaliza la instalación sólo indicando "La instalación de Internet Explorer no se completó" (ver imagen). Al parecer este error se presenta especialmente al tener el Service Pack 3 (SP3) ya instalado, pero eso no evita que podamos instalar de todas formas :).


Para ver cuál fue el problema preciso de instalación, se debe revisar la información que quedó registrada en el log de instalación "ie7.log" (C:\WINDOWS\ie7.log).
Habitualmente el error corresponde a que el instalador no puede escribir en la clave de registro de windows:

HKEY_CLASSES_ROOT\Interface\{34A715A0-6587-11D0-924A-0020AFC7AC4D}

(el error dirá algo como: Unwriteable key HKCR\Interface\{34A715A0-6587-11D0-924A-0020AFC7AC4D})

Para solucionarlo hay que editar los permisos asociados a dicha clave en el registro de windows y dar control total al grupo de administradores
Los pasos son los siguientes:

- Ejecutar "regedit"
- Ir a la clave indicada más arriba (HKCR\Interface\{34A715A0-6587-11D0-924A-0020AFC7AC4D})
- Clic derecho sobre la clave y seleccionar Permisos
- De la lista seleccionar "Administradores" y activar la casilla "Control total"


Con eso ya es posible ejecutar nuevamente el instalador sin problemas ;)

martes, 26 de enero de 2010

Fotografix, un editor de imágenes ligero

Hace bastante que no escribo así que comento un programa de edición de imágenes que me sorprendió por lo ligero que es, hablo de Fotografix.



Fotografix es un programa gratuito que permite trabajar con capas, aplicar filtros, trabajar los colores, etc., no necesita instalación (sólo descomprimir y ya)... con la gracia que pesa tan solo 720 KB tras descomprimir (370KB comprimido).

Tal como comentaba antes, permite trabajar con capas y máscaras, ya con eso tenemos para hacer bastantes cosas. También tiene algunos filtros por defecto, como el desenfoque por nombrar alguno. Es claramente más poderoso que el básico paint que tiene windows, por lo que no está demás tenerlo para casos rápidos.
Lo he probado hasta la versión de windows 7 y trabaja sin problemas (a 32 bits).
Una alternativa para aquellos que necesitan hacer alguna modificación no tan básica a una imagen y están en algún netbook o computador con recursos limitados... recomendable para probar ;)

Referencias:
Página oficial Fotografix (para descargar y leer un poco más)
-