miércoles, 17 de septiembre de 2014

Antigio [Leído]

Antigio es el nombre de la novela escrita por Alexander Copperwhite, el último libro que  he tenido la oportunidad de leerme, más exactamente la edición: El montaje del Director.

Portada del libro Antigio de Alexander Copperwhite
Portada del libro Antigio de Alexander Copperwhite
Básicamente se trata de una novela que combina misterio, enigmas, asesinatos, mitología, aventura, e incluso romance; en la que su protagonista - El padre Vicente Gómez - nos narra el como termina envuelto junto con sus amigos Eduardo y Emma en una aventura por cazar a un asesino en serie.

La historia se desarrolla en diferentes países y lugares emblemáticos del continente Europeo, dando una interesante visión de Europa como un único país. Cada caso de asesinato está lleno de mitología griega y simbolismo que los interconecta, lo que en mi concepto hace más atractiva la historia y logra enganchar mucho más al lector.

Por parte del autor se denota un trabajo investigativo ya que los lugares, descripciones, personajes, culturas y demás elementos se describen con gran detalle. En cuanto a la narrativa se utiliza un lenguaje muy comprensible, combinando palabras y conceptos de otros idiomas como el portugués, francés, inglés, alemán y griego, lo cual le agrega in poco más de calidad. 

Personalmente la novela fue de mi gusto, ya que combina los habituales elementos de una novela negra o de misterio como una trama, personajes y situaciones inesperados, entre otros; además de ser uno de los géneros literarios de mi total mi gusto. Si bien su final en cierta forma puede ser un poco predecible, ciertos elementos logran sorprenderte y ciertas situaciones y personajes que se consideran evidentes resultan siendo lo contrario a lo que esperabas.

Para obtener la novela sólo basta con ir al sitio web del autor y descargarla de forma gratuita, e incluso se puede obtener en Amazon en versión para Kindle.


jueves, 11 de septiembre de 2014

Matando la productividad desde la consola

Quien no haya procrastinado al menos una vez en su vida que tire la primera piedra, porque una pausa activa de vez en cuando no cae mal. 

A continuación una pequeña selección de películas y juegos disponibles desde la línea de comandos (si desde la línea de comandos), para los cuales solo necesitamos una conexión a internet para accederlos.

Películas y animaciones

Una de las películas más conocidas y taquilleras en el mundo es Star Wars, la cual no podía quedarse sin su versión ASCII para los más geeks. Para visualizarla sólo basta con conectarse vía telnet desde cualquier cliente (yo uso PuTTy) al servidor towel.blinkenlights.nl:

telnet towel.blinkenlights.nl

Y  disfrutar de la película:

Película Star Wars en ASCII
Película Star Wars en ASCII

También existe una animación llamada BB, que funciona sobre sistemas basados en UNIX como Linux, HP-UX o AIX por ejemplo; y sobre DOS. El demo es una muestra de como es posible crear aplicaciones de consola con color, sonido y animaciones haciendo uso de las librerías adecuadas.

Para instalar BB sólo basta con descargar los paquetes adecuados desde su sitio web oficial y seguir las instrucciones de instalación. En el caso de Linux muchas distribuciones lo incluyen en sus repositorios oficiales, por lo cual solo basta con instalarlo desde el gestor de paquetes de la distribución como apt-get, pacman o yum por ejemplo; para mi caso por ejemplo lo instalé con apt-get así:

sudo apt-get install bb

Para correr la animación sólo basta con ejecutar el comando bb y disfrutarla:

Animación BB
Animación BB

Juegos 

Uno de los juegos de arcade más legendarios es Space Invaders, que se encuentra disponible en los repositorios de muchas distribuciones de Linux para su instalación. En el caso de Debian y derivados solo basta con ejecutar apt-get para instalarlo:

sudo apt-get install ninvaders

Y ejecutar el comando ninvaders para entretenerse:

Space Invaders para Linux
Space Invaders para Linux

De igual forma existe una recopilación de juegos clásicos para jugar desde la línea de comandos de Linux; en cuya lista se encuentran títulos como tetris, el ahorcado, monopoly, 5 en raya, entre otros interesantes juegos cuya lista se puede consultar aquí. Para su instalación sólo basta con instalar el paquete bsdgames:


sudo apt-get install bsdgames

Y una vez instalado ejecutar el juego que deseemos llamándolo por su nombre según la lista anteriormente mencionada, por ejemplo tetris se ejecuta con el comando tetris-bsd:

Tetris desde la línea de comandos
Tetris desde la línea de comandos

Finalmente en esta página podemos encontrar una amplia lista de juegos publicados en internet y accesibles desde la línea de comandos; entre los cuales podemos encontrar juegos de rol, multi usuario, de acción y de muchos géneros más.

Huevos de Pascua y otros programas entretenidos (Linux)

En el mundo de la informática se conoce como Huevo de Pascua a cualquier funcionalidad o mensaje ocultos en el software o contenido digital. A continuación algunos huevos de pascua disponibles en muchas distribuciones de Linux.

Con el programa sl podemos visualizar un tren en movimiento, para instalarlo sólo basta con ejecutar:

sudo apt-get install sl


Con el programa cowsay podemos hacer "hablar" una vaca ASCII. Primero instalamos el programa con:

sudo apt-get install cowsay


Y luego ejecutamos el programa dándole como parámetro el texto que mostrará la vaca, por ejemplo al ejecutar cowsay hola se mostrará a la vaca saludando:

Vaca ASCII
Vaca ASCII

Incluso podemos hacer "hablar" a tux utilizando el parámetro -f tux:

Tux ASCII
Tux ASCII

Y si queremos otra vaca pero sin instalar software adicional, podemos acudir a la vaca que incorpora el gestor de paquetes apt-get:

sudo apt-get moo

Conlcusiones


Existen muchos huevos de pascua no solo en la terminal sino también en programas como Mozilla Firefox, Open Office e incluso en Google. De igual forma existen juegos muy vistosos, elaborados y que ofrecen una excelente experiencia al jugador; sin embargo, estos pequeños programas y trucos no están mal para distraerse un rato.

miércoles, 10 de septiembre de 2014

Obteniendo información del hardware en un sistema Linux

A la hora de administrar un sistema es importante conocer todos lo relacionado con su entorno y funcionalidad como sus usuarios, servicios que presta, reglas del negocio y componentes. Entre las competencias básicas de un administrador de sistemas debe estar el tener la capacidad de conocer cada uno de los componentes que en conjunto componen el o los sistemas de cómputo que administra.

Linux desde su consola provee múltiples comandos que nos permiten obtener información del hardware instalado así como su estado, a continuación vamos a ver algunos de los comandos más útiles.

Obtener información de la CPU y Memoria

Si necesitamos conocer en detalle la información de la(s) CPU del sistema, solo basta con darle una mirada al archivo /proc/cpuinfo apoyándonos de los comandos cat y more para visualizarlo más cómodamente:

cat /proc/cpuinfo | more

Así podremos visualizar información detallada de nuestra CPU como fabricante, modelo, arquitectura, cantidad de núcleos, entre otros datos. De igual forma, para obtener información de la memoria física del sistema podemos consultar el archivo /proc/meminfo del que obtendremos información detallada de la memoria física usada y libre:

cat /proc/meminfo | more

Con el mando free -m se obtiene de manera más detallada información sobre la memoria libre del sistema, la opción -m muestra las cantidades en MB.

Si en algún momento necesitamos saber que procesos se están consumiendo los recursos de procesamiento y memoria, no está demás utilizar los comandos para administrar procesos de los cuales se ha hablado con anterioridad.

Obtener información de los periféricos

También es posible obtener información de los diferentes periféricos conectados al computador, con el comando lspci podemos obtener información detallada de los dispositivos PCI, y con lsusb de los dispositivos USB. Con la opción -vv se puede obtener la mayor información posible:

Obteniendo información de los periféricos en Linux
Obteniendo información de los periféricos en Linux

Obtener información de los discos duros

Para conocer que discos se encuentran instalados y cuales son sus particiones podemos utilizar el comando fdisk con la opción -l, esta operación requiere permisos de administrador por lo cual podemos recurrir a sudo:

Información de los discos en Linux
Información de los discos en Linux

fdisk también permite manipular las particiones de los discos, para conocer sus opciones solo basta con ejecutarlo con la opción -h.Una vez se conoce los discos duros instalados es posible obtener información más detallada de sus características físicas con el comando hdparm, el cual se debe ejecutar con permisos de root tambien:

hdparm -I /dev/sda

Con el anterior comando obtengo información detallada del disco como fabricante, modelo, cilindros, sectores, entre otros datos.

Información del hardware en general

Finalmente con el comando dmesg podemos conocer los mensajes generados durante la etapa de arranque del sistema, con lo cual podemos conocer que hardware se detectó y cual posiblemente presentó conflictos; con el comando lsdev podemos ver información un poco más detallada del hardware que está instalado en la máquina.

domingo, 10 de agosto de 2014

Obtener la hora actual en Excel

Supongamos que necesitamos la hora actual para realizar algún tipo de cálculo en Excel, como por ejemplo calcular el tiempo transcurrido entre una hora inicial y el momento actual. Para obtener la hora actual solo basta con recurrir a la función AHORA() que nos retorna la fecha y hora actuales:

Función AHORA() en Excel
Función AHORA() en Excel

Y luego aplicarle a esa celda un formato de hora, como por ejemplo:

Aplicando formato a horas en Excel
Aplicando formato a horas en Excel

Así ya podemos realizar operaciones de suma, resta, comparación, concatenación, entre otras con esa hora siempre y cuando respetemos los formatos. Es importante tener en cuenta que cada vez que realicemos algún cambio o intento de cambio en una celda de la hoja ésta hora se actualizará automáticamente, si necesitamos actualizarla en determinado momento solo basta con presionar F9.

Si por algún motivo lo anterior no nos funciona, podemos obtener la hora jugando un poco con las demás funciones que nos provee Excel, por ejemplo extrayendo las horas y minutos que nos da la función AHORA() y concatenándolos:

=CONCATENAR(HORA(AHORA());":";MINUTO(AHORA()))

Es probable que existan más manera de hacerlo combinando diferentes fórmulas, sin embargo estas dos son las que frecuentemente uso y me funcionan.

miércoles, 30 de julio de 2014

Como realizar búsquedas más avanzadas en Google

Aunque existen diversos buscadores en internet como Yahoo, Bing, u otros más interesantes como DuckDuckGo por ejemplo; Google es sin duda el líder en su especie gracias a su simplicidad, rapidez y capacidades.

El uso de Google es fácil e intuitivo, pero tal vez muchos ignoran que se pueden ampliar sus capacidades para obtener resultados más precisos en la búsqueda ya sea utilizando su página de búsquedas avanzadas o ya sea con el uso de operadores y comandos que veremos a continuación.

  • "": al incluir los términos de búsqueda entre comillas simples Google buscará las páginas que contengan literalmente dicha frase, por ejemplo al buscar "el arte de la guerra" me arrojará en los resultados únicamente las páginas que literalmente tiene dicha frase.
  • +: el símbolo más nos permite indicarle a Google que incluya términos que por ser muy comunes no son incluidos en las búsquedas. Por ejemplo si deseo buscar el arte de la guerra (sin comillas), el artículo "el" se excluye por ser un término común, por lo cual para indicarle a Google que deseo hacer una búsqueda más precisa incluyéndolo hago la búsqueda +el arte de la guerra.
  • -: el símbolo menos produce el resultado contrario al símbolo más ya que excluye un termino de las búsquedas. Por ejemplo si quisiera buscar vuelos a Medellín baratos pero no quiero ver los resultados de la aerolínea aeroxyz ingreso como términos de búsqueda: vuelos a medellin baratos -aeroxyz.
  • ~: al precder un término con la virgulilla se le indica a Google que busque los sinónimos del mismo, por ejemplo si busco ~compañía x la búsqueda también incluirá resultados de la organización x por ser sinónimos.
  • OR: es el equivalente a una disyunción lógica, es decir, si ingreso dos criterios de búsqueda me arroja resultados si se cumple uno o ambos criterios. Por ejemplo "Vuelos baratos a Medellín" or "Vuelos baratos a Cartagena".
  • AND: es el equivalente a un conjunción lógica, es decir, si ingreso dos criterios de búsqueda me arroja resultados si se cumplen ambos.
  • site: le indica a Google que solo arroje resultados de un sitio o dominio web determinado. Por ejemplo la búsqueda manuales linux site: juanchorua.blogspot.com solo nos mostrarán resultados que contengan las plabras clave manuales linux en el sitio juanchorua.blogspot.com
  • link: le indica a Google buscar las páginas que tengan links al dominio especificado. Por ejemplo link: juanchorua.blogspot.com arrojará como resultados las páginas que tengan links apuntando al dominio juanchorua.blogspot.com.
  • related: le indica a Google que busque sitios que tengan contenido similar a una página indicada. Por ejemplo related: juanchorua.blogspot.com arrojará como resultado páginas con contenido similar a este blog.
  • info: arroja información de una página como por ejemplo como la versión de la página almacenada en caché, páginas similares y páginas que dirijan al sitio. 
  • filetype: le indica a google que busque la informacipon solicitada solo en el tipo de archivos que especifiquemos. Por ejemplo "Hoja de vida Pepito Pérez" filetype: pdf buscará la hoja de vida de Pepito Pérez solo en archivos PDF.

En general estos son los comandos más conocidos y utilizados, sin embargo existen más y mucho más expeficos como por ejemplo para búsquedas de imágenes, noticias, grupos de Google, entre otras opciones que podemos consultar aqui y aqui.

Conclusiones

Google es una inmensa fuente de información que puede ser utilizada con fines buenos o malos, por eso es importante que seamos cocientes del contenido que publicamos en internet porque queriéndolo o sin querer estamos atentando contra nuestra propia privacidad.

Si somos webmasters podemos limitar a los buscadores el acceso a cierta información haciendo uso del archivo robots.txt, que con las reglas adecuadas nos permite mejorar notablemente la seguridad de la información que se alojamos en los sitios web que construimos y administramos.