Gephi una herramienta de visualización de redes

Esta semana en el Master empezamos con una nueva materia denominada “Análisis de redes sociales”, el inicio ha sido bastante interesante, de hecho me pareció chévere, pero lo que quiero compartir con todos ustedes es la herramienta que vimos el primer día, esta se llama Gephi, es una herramienta open source hecha en Java para la visualización  de redes y pues nosotros empezamos analizando nuestra red social Facebook.

Visualización de mi red social Facebook

Visualización de mi red social Facebook

 Para que la herramienta funcione correctamente en Mac OSX hay que ser una serie de “trucos” y apaños (como ejecutarlo en Java 6) porque en caso contrario seremos incapaces de ni siquiera arrancar la aplicación. Aquí les dejo el enlace donde aparecen los pasos necesarios de configuración para poder ejecutarlo en Mac OSX.

La imagen de mas arriba es una perspectiva de todos los nodos que forman parte de mi red social Facebook. Para poder visualizar mi red de Facebook tuvimos que descargarnos un fichero de extensión .gml desde esta página donde podemos indicar que información queremos obtener de nuestra red de contactos, como sexo, lenguaje, entre otros.

Me gusto la herramienta no solo por lo versátil al momento de visualizar el diagrama y los resultados que obtuve (como las agrupaciones de nodos que son fácilmente identificables), sino porque tenia (y tengo) en mente hacer una visualización de mi red de Twitter, pero con Java y Neo4j, aunque ya compañeros del master me han hecho llegar un proyecto que genera el fichero .gml, por lo cual quizás visualice antes en Gephi mi red de Twitter. Sin mas dilación aquí les dejo el componente gigante de mi red donde señalo sus agrupaciones.

Componente gigante de mi red de Facebook

Componente gigante de mi red de Facebook

¿Alguno de ustedes ha hecho un análisis de alguna de sus redes sociales? ¿Que herramienta utilizaste? Si te animas a analizar alguna de tus redes sociales con Gephi, no dudes en compartir tu resultados con nosotros

Raspberry Pi en la industria

El día de ayer fui testigo de algo que me emociono, de hecho lo catalogue de sorprendente porque en realidad esa fue la sensación que tuve al verlo, de sorpresa, y es que vi como uno de los monitores que muestra la cartelera de películas de una cadena de cines de España se había colgado reiniciándose o algo así por el estilo (pantalla negra y logs de comandos/sentencias), pero no es que esto específicamente lo que me emociono, sino ver el logo de la frambuesa de Raspberry Pi, y di por hecho que tendría a su vez instalado un Raspbian o algún derivado de este (aunque ciertamente podría haber sido alguna otra distribución).

Monitor mostrando logo de raspberry pi

Monitor mostrando logo de raspberry pi

Antes que nada perdonen la calidad de las imágenes, pero quiero compartir con ustedes mi emoción. Me emociona saber que haya personas, compañías que se aventuren en la industria, el comercio o lo que sea con nuevas tecnologías, sobretodo de este tipo, económicas, con una filosofía DIY (Do it yourself / Hágalo usted mismo), porque esta pequeña muestra nos ratifica que Raspberry Pi (y otros mini ordenadores de la competencia) tienen cabida en el desarrollo de proyectos (por muy pequeño o simple que sean), esto me emociona porque aunque yo al igual que otros piense que esto es el inicio de nuevas cosas que vendrán en el futuro (IoT, Big Data y cloud todo junto), ciertamente ha habido momentos en que he llegado a cuestionarme a mí mismo ¿Será que su función será únicamente para prototipos o cosas caseras? Aunque el hacer prototipos no este mal, realmente me entusiasma ver ese logo de la Raspberry Pi, porque nos demuestra que forma parte de un proyecto que esta en PRODUCCIÓN, es decir, para mí esta es una prueba fehaciente de que quienes soñamos con implementar cosas útiles con la Raspberry  e incluso sacarle provecho económico tenemos una oportunidad y que si se puede.

Monitor de cartelera de cine con logo de raspare pi

Monitor de cartelera de cine con logo de raspare pi

Ejecutar Aplicación de Mac OS X en otro idioma

Quizás alguno se haya visto en la necesidad de ejecutar una aplicación por ejemplo en idioma inglés pero siendo el idioma del sistema operativo el español, pues la solución para este problema existe desde hace tiempo y ha sido resuelta por una aplicación llamada language switcher.

Esta aplicación además de ser gratuita, funciona a partir de sistemas OS X 10.5+ y su funcionamiento consiste en ejecutar cualquier aplicación en un idioma especifico de antemano seleccionado, así de simple es y así de bien lo hace. A mi particularmente me ha ayudado bastante, ya que necesite trabajar con una aplicación en diferentes idiomas. A continuación les dejo algunas imagenes.

Language Switcher

 Language Switcher

Mi CV en formato mapa mental

Hacia mucho tiempo que venia con esta idea de hacer una versión de mi CV (currículum vítae) en formato mapa mental, pero no lo hice antes entre otras cosas porque no me había tomado el tiempo de buscar una aplicación que de forma sencilla me ayudara a realizarlo y porque en realmente no sabia como empezar, ya que los que había visto todos variaban entre sí no solo en estilo sino en contenido, pero esto cambio hace par de días cuando revisando algunas aplicaciones de la Mac Store vi SimpleMind (la versión gratuita) la instale y de inmediato me gusto su sencillez y que lo poco que hace a mi parecer lo hace bien y bueno lo demás fue “un tiro al piso” (quiero decir muy sencillo, imposible de fallar), fue ponerme a jugar con la herramienta y empiezo a fluir la inspiración, ese boceto de como quería que fuera mi CV y bueno he decidido no solo compartirlo con ustedes sino que he hecho una página en mi sección personal (menu “Yo”) únicamente para mostrar  el mapa con la intención de esporádicamente ir actualizandolo.

CV en formato mapa mental

CV en formato mapa mental

Sinceramente me gusto como quedo pero por momentos dude en si agregar o no, par de nodos adicionales, como “objetivos” (sobretodo educacionales, aprender nuevas tecnologías, herramientas, etc..) y “hobbies” o “intereses” (como ya he indicado antes en la página acerca de mí) donde colocaría fútbol, running, estar actualizado en cuanto a la tecnologías, pero finalmente decidí no añadirlos aunque no descarto agregar estos nodos en una actualización mas adelante.

Alguna sugerencia, ¿quitarias o pondrías algún tipo de información adicional?

MI CV en formato mapa mental

Los datos y nosotros los informáticos

Hoy quiero contarles acerca de la percepción que tengo de como los informáticos transportamos la data hoy en día, no quisiera generalizar pero esta percepción es basada en mi entorno (mi trabajo, compañeros de estudio, colegas de carrera y otros).

Si mal no recuerdo para los años 2005-2006 los pendrives eran de 512 MB y quizás lo mas de lo mas uff seria uno de unos 2 GB recién sacado de la NASA, en esa época aún yo no contaba con uno, pero si recuerdo claramente como quizás con un poquito de envidia (pero de la buena) veía como compañeros contaban con unos que además de ser memoria tenian radio y/o reproducían canciones en una pantalla led muy sencilla, dios como anhelaba uno pero sencillamente entre vivir y rumbear el presupuesto no me alcanzaba para tal inversión, eran caros y no se desperdiciaba la oportunidad de que alguien viajara al exterior (de Venezuela hacia US o Panama, por mencionar algunos) para pedirle a esa persona que te lo compara en $, era una época donde no teníamos a Dropbox o iCloud por lo cual las memorias (pendrives o flashdrives) eran una herramienta fundamental de trabajo para pasar información, sobre todo archivos de gran tamaño (para la época), hacer respaldo de archivos,  y si mal no recuerdo ya existía un Knoppix que permita tener una distribución Linux que arrancara desde el pendrive.

pendrive_128MB

Pasaron los años y finalmente llego el momento en que por fin tuve el mío y así como yo casi todo aquel que conocía tenia uno y de igual manera estos seguían siendo pieza fundamental para el trabajo o los estudios. Recuerdo que el primero que tuve fue uno de 2 GB y luego me compre otro de 4 GB, ya estos formaban parte hasta de mi ocio, utilizándolos para ver películas conectándolos en el  PS3 o el TV y además existía ya un GMAIL que tenia una capacidad de 1 o 2 GB, pero de repente paso algo, y fue que algunos de nosotros empezamos a dejar de usar los pendrives y  los disco duros portátiles de 2.5″ de gran capacidad, no se si fue por el surgimiento de las  plataformas de almacenamiento en la nube donde Dropbox (a mi entender) llevaba la batuta, o por aplicaciones que permitan que nuestros celulares (móviles) fueran disco duros WiFi, pero el detalle es que siento que el pendrive o el disco duro portátil dejo de ser una herramienta fundamental.

Entonces llego el 2014 y me paso que necesite transferir grandes cantidades de datos, como VM (Virtual Machines), o hacer un respaldo importante de documentos y aplicaciones grandes, y no tuve como hacerlo y tuve que recurrir a plataformas como Dropbox donde incluso teniendo una velocidad de 100 Megas con fibra óptica, no resultaron una cosa sencilla ya que tuve restricciones de espacio en fin que algo tan sencillo de no mas de 15 min como copiar ficheros en un pendrive o disco duro portátil y pasarlo de una computadora a otra, terminaron siendo un dolor de cabeza de horas o 2 días, pero lo mas asombroso es que no solo me paso a mi, si no que vi que en mi entorno también, en el trabajo, en el master o anécdotas de colegas informáticos, pero por alguna razón dejamos de utilizar los disco duros portátiles y lo mas absurdo aun, es que en algunos casos sin razón ya que casi todos tenemos así sea en un rincón de la casa escondido un pendrive, fue común escuchar por ejemplo en el master algo como ¿Alguien tiene un disco duro para copiar la maquina virtual de 10 Gb? y lo mas extraño, en un Master de Big Data ninguno contábamos con un disco para pasarnos “la data” y no podemos obviar que cada días las aplicaciones son cada vez más grandes (ya estamos en los 64 bits) y hablamos en razones de Gigas.

Para mi fue curioso y anecdótico, y llegue a conversarlo con mis panas (compis, colegas) de la oficina, sobre todo porque me considero y los considero a ellos buenos profesionales informáticos solo que teníamos alergia de tener a mano nuestro disco duro portátil. Quiero hacer constar que también he visto como poco a poco mi entorno ha ido resolviendo esto ya sea comprando sus discos portatiles (y cargándolos encima) y /o pendrives de no menos de 16 GB.

Pero hoy finalmente me siento satisfecho porque creo que he resuelto esto de la mejor manera posible, a raíz de lo que les conté venia meditando la idea de comprar un disco duro portátil de 2.5″ con USB 3 (para gozar de buena velocidad de transferencia) o un pendrive de 64 o 128 GB, pero entonces justo hoy como caído del cielo un colega del trabajo de forma providencial me dice “Jose y si te compras un SSD SATA III de unos 120 GB y compras el respectivo cable adaptador de SATA III a USB 3” dios me pareció super acertado, cantidad suficientemente grande para transportar bastante datos, portable (ya que no pesa nada) y la ventaja de transferirlos de una computadora a otra a una tasa de transferencia rapidísima (5 Gbits/s – velocidad de USB 3 y 450 MB lectura/escritura) y me entusiasmo mas la idea cuando vi que un pendrive de la misma capacidad y con una  velocidad semejantes (o quizás un pelin mejor) salía mas caro (mas abajo les dejare los links para que le den un vistazo).

ssd_120GB

Ya lo único que falta es que me llegue mi nueva adquisición y dejar la alergia de cargarlo encima y aunque a uds. quizás les parezca obvio mi compra, créanme que de las miles de cosas que pienso al día esta no se me había ocurrido y por eso aprovecho de contárselos porque de paso me gustaría saber su opinión y también preguntarles ¿Creen ustedes que nos hemos malacostumbrado a las plataformas de almacenamiento en la nube?

Disco SSD de 128 GB

Pendrive 128 GB

Sabias que el uso de la annotation override nos advierte de errores en el código

Seguramente muchos de ustedes se habrán preguntado ¿que hace? o ¿para qué sirve esa @Override que nos coloca automáticamente el IDE al momento de implementar una interfaz? ¿Tendrá algún beneficio?.

Bueno para aquellos con esa interrogante les traigo la respuesta.

Pues si, si nos da un beneficio  cuando codificamos y consiste en advertirnos de posibles errores de lógica o compilación en los siguientes casos:

  • Cuando no estemos sobrescribiendo o implementando ningún método de la interfaz o superclase.
  • Cuando nos hemos equivocado en la firma del método a sobrescribir.

 Es por estos beneficios que deberíamos asumirlo (sobretodo aquellos que venimos de la vieja escuela de Java 1.1, 1.2 o 1.4) como una convención al momento de programar. Ahora bien vayamos a un ejemplo para ver de lo que estamos hablando.

EL siguiente código consta de una super clase la cual vamos a extenderla pero a propósito de este ejemplo sobrescribiremos erróneamente los métodos de la clase de tal forma que no coincidan en su firma con el original (el de la súper clase) o sencillamente no coincida el nombre del método, de tal forma de poder ver como al usar @Override, esta nos indica que hay algo mal, en nuestro código.

A continuación les dejo par de imágenes donde el IDE nos indica el error

IDE error al sobrescribir el método IDE error al sobrescribir el método

 

Como pudieron darse cuenta el Editor (en este caso eclipse), nos indica que hay un error en los métodos que estamos intentando sobrescribir.

Ya conocemos el significado de @Override y sus ventajas, ahora lo que resta es que hagamos uso de ella y lo asumamos como una buena practica de programación en Java.

Introducción a la clase Objects

Hace algunos meses atrás estudiando para la certificación de java 7, me entere de la existencia de la clase java.util.Objects, esta es una clase utilitaria compuesta en su totalidad de métodos estáticos que aunque lucen bastante simples, si que resultan de ayuda ahorrándonos algo de trabajo (tedioso), entre estos encontramos algunos para realizar comparaciones así como para el calculo del hash de un objeto, o también para evitar asignar null a objetos.

En este caso creo que no hay mejor forma que verlo en el código para que podamos apreciar su utilidad.

Si ejecutamos el main de esta clase obtendríamos el siguiente resultado

Además de los métodos utilizados existen un par más que son para calcular si dos (2) objetos son profundamente iguales y para realizar comparaciones.

¿Qué te ha parecido esta clase? ¿Ya la conocías? ¿La utilizas en tus desarrollos? y sino a que esperas.

Mi receta para aprobar la Oracle Certified Professional, Java SE 7 Programmer

Ayer presente el examen 1Z0-805 de Oracle para obtener la Oracle Certified Professional, Java SE 7 Programmer y con mucho orgullo (producto de muchas horas de estudio) puedo decirles que la he aprobado con 80%. Llevaba preparandome unos 8 meses, con alguno que otro descanso bien merecido en navidad y semana santa, pero en general fui constante y cada semana dedicaba al menos una (1) o dos (2) horas a hacer ejercicios y/o leer al respecto.

Debo admitir que aunque consideraba que habia repasado bastante, el examen fue mas dificil de lo que yo esperaba, pero como ya ven no es imposible. Los objetivos a evaluar en el examen en resumen son los siguientes:

  • Language Enhancements (Mejoras en el lenguaje), que no es más que el project coin: diamond operator (operador <>), try-with-resources, sentencia swith con variables tipo String, etc…
  • Design Pattern (Diseño de patrones): Comprensión del concepto de cohesión, asi como también de los patrones Factory,  Singleton, DAO, diferencia entre un objeto de negocio (Bussiness Object) y un objeto de transferencia de datos (Data Transfer Object o DTO) y Entender los conceptos de herencia, composición y encapsulamiento.
  • Database Applications with JDBC (Desarrollo de aplicaciones utilizando JDBC): Características y métodos de un ResultSet, conocer los distintos tipos de RowSet, poder crear una app de tipo CRUD (Create, Read, Update and Delete) utilando JDBC.
  • Concurrency (Concurrencia): manejo de entorno multihilos, el framework for/join, colecciones seguras para el manejo con hilos, entender los conceptos de starvation, deadlock, liveness.
  • Localization (Localización): Todo lo necesario para poder hacer una aplicación multidioma o como también se le dice, soporte i18n.
  • NIO 2: Conocer las nuevas clases y métodos para el manejo de archivos, tales como la clase Path, FileStore, FileSystem, entre muchas otras.

Ahora bien no perdamos mas tiempo y vayamos al grano ¿Cual es la receta?… Bueno al empezar a preparar esta certificación me tope con que habia un único libro enfocado en la aprobación de la certificación y me refiero a esos libros a los que nos tiene o tenia acostumbrados Kathy Sierra y este era el libro Oracle Certified Professional Java SE 7 Programmer Exams 1Z0-804 and 1Z0-805: A Comprehensive OCPJP 7 Certification Guide (Expert’s Voice in Java) que al revisar por internet los comentarios y opiniones de la gente con respecto al mismo lo que hicieron fue desanimarme a comprarlo asi que opte por yo mismo recabar mi material aunque esto me tomara mas tiempo para preparar la certificación, a continuación se los detallo:

  • The Well-Grounded Java Developer: Es un magnifico libro, en mi opinion digno a estar en la biblioteca de todo buen programador Java, por supuesto es un libro que yo denominaría de nivel intermedio, ya requiere conocimientos fundamentales en Java, pero toca desde cosas basicas del lenguaje (nuevas para Java 7) como el project coin hasta aspectos más avanzados como la concurrencia y el framework fork/join para el trabajo con hilos y otros lenguajes de la JVM tales como Groovy, Scala y Clojure. De este estudie project coin, NIO2 y concurrencia.
  • Java 7 New Features Cookbook: Este libro repasa con bastante detalle las novedades de NIO2, de hecho dedica 5 capítulos del libro a este tema, un libro a recomendar para aquellos que quizás sientan que están un poco desactualizados (digamos que se quedaron en Java 1.4 o Java 5) y quieren de una forma bastante light ir empapandose de las novedades del lenguaje, de este libro estudie los mismos objetivos que del libro anterior (project coin, NIO2 y concurrencia), realmente en mi opinión se complementan muy bien para estudiar.
  • Tutoriales Java de Oracle, específicamente internacionalización, JDBC, Concurrencia, además pueden descargarse en formatos para libro electrónico.
  • Java Practice Questions: Upgrade to Java SE 7 Programmer, este es un libro que consta unicamente de preguntas tipo certificación de todo los objetivos a evaluar en la certificación, por supuesto con sus respectivas respuestas y explicación, a mi este libro me vino muy bien para evaluarme una vez consideraba que ya había cubierto un objetivo especifico y así poder ver si tenia algún tema falto por cubrir.
  • Al final opte por comprar el paquete de whizlabs para actualización a Java 7, no puedo decir que me haya ido mal, porque me permitió hacer simulacros de examen pero si esperaba que tuviese mas preguntas (solo tiene 243) y que estuvieran clasificadas por objetivo/tema, ya que en algún momento tuve interés de solo evaluarme en un tema en especial y no pude.
  • Por ultimo encontre un simulacro de examen gratuito y que sinceramente esta muy bien que de paso se ejecuta mediante JNLP, la página en cuestión es Java Quiz Player.
  • NOTA: Es muy importante programar, programar y seguir programando, sinceramente no conozco otra forma de poder internalizar los conocimientos sobretodo cuando se trata de tantas clases y cada una de ellas con sus respectivos métodos, además de ser una especie de abogado del diablo y plantearse uno mismo interrogantes, intentar conocer en detalle cuando y/o por que un determinado método arroja una exception en particular. En este orden de ideas les diría por ejemplo, ¿Que sucede si a una sentencia switch le paso un String null? ¿Alguna vez han ejecutado un switch donde el case “default” sea el primero de la lista? y así sucesivamente.

No puedo negarles que estoy muy contento de hecho tenia como 3 años que no presentaba un examen de certificación, pero mas que por el resultado del examen, lo que me  contenta y que de hecho considero que es lo más importante de todo este proceso es que “HE APRENDIDO”, y eso haya o no un papel que lo avale es lo que mas me llena y es por eso que por ahora seguiré invitando a la gente a que lo intente ya que siempre todo lo que conlleva la preparación para presentar una certificación entre estudiar, plantearte interrogantes, programar, nos deja conocimiento y el saber, es PODER.

Otros enlaces de interés:

– Sitio Web en Amazon de Esteban Herrera, este ha publicado libros (de preguntas y respuestas) para los exámenes de certificación 1Z0-803, 1Z0-804 y 1Z0-805, este ultimo es el que les mencione arriba llamado Java Practice Questions: Upgrade to Java SE 7 Programmer.

– Página de enlace a los tutorales de preparación para las certificaciones de Oracle.

– Guia para el examen de certificación (la actualización) 1Z0-805 de Mikalai Zaikin, quien ya lleva un largo recorrido preparando guías de certificación para casi todas las certificaciones Java.

Entonces, quien se anima a preparar esta certificación o para aquellos que están haciéndolo, ¿qué tal les va en la preparación? ¿Añadirían algún otro recurso a la lista que les he detallado anteriormente?

BlogStack generando Sinergia

¿Qué es Sinergia? quizas todos sino muchos hemos oido este termino, pero puede que no todos sepamos su significado. Según aparece en Wikipedia “quiere decir literalmente trabajando en conjunto. Es un vocablo acuñado por el diseñador, arquitecto, visionario e inventor Richard Buckminster Fuller, refiriéndose al fenómeno en el cual el efecto de la influencia o trabajo de dos o más agentes actuando en conjunto es mayor al esperado considerando a la suma de las acciones de los agentes por separado“. Esto es justo lo que esta generando el nuevo sitio web BlogStack, el cual es un agregador, o fuente de información de contenido de blogs sobre distintos topicos relacionados con la tecnología, una interesante iniciativa ya que su creador ha puesto a disposición todo su diseño y arquitectura (software libre), que en estos días resulta bastante util ya sea para fines didacticos asi como también para aquellos que quieren emprender un desarrollo de software poder contar con código que sirva como referente.

Pero volviendo con la sinergia, ¿Dónde está? ¿Cómo? ¿Cuándo? La respuesta a estas interrogantes esta en el hecho de que todos los involucrados (Blogueros/Bloggers, lectores y BlogStack) nos beneficiamos de este tipo de iniciativas. Los Blogueros contando con un portal donde poder dar a conocer a mas gente el contenido que generamos aunado a los esfuerzos que hagamos nosotros mismos para la difusión de los mismos (redes sociales, labor de SEO, etc…), lo cual se traduce en mas visitas o visibilidad de nuestras entradas (que puede que hayan sido canalizadas en un principio por el contenido ofrecido por otro Blog dentro de la misma plataforma).  Los lectores teniendo a su disposición un sitio que concentre información de su interés, en este caso focalizado en la tecnología y por el último el propio sitio BlogStack, ya que ofreciéndonos una plataforma para la difusión de nuestros contenidos hace que a medida que se añada un nuevo blog, el sitio Web empezará a ofrecer cada vez mas y mas contenido, lo cual le hará ganar más visitas por ser un sitio dinámico, además de poder beneficiarse de las menciones de otros sitios Web no solo por el simple hecho de darse a conocer en la comunidad sino mejorando su puntuación más rápidamente en los algoritmos de búsqueda de los buscadores (ya sea Google, Bind, etc…).

Así que no me queda  mas que agradecer a su creador por la iniciativa, además de darme la oportunidad de compartir el contenido de mi Blog en esta plataforma e invitarles a todos los Blogueros en que se unan y así seguir generando Sinergia en nuestra comunidad tecnológica.

Mejorando mi blog WordPress, Parte II

Revisando un articulo sobre como mejorar la velocidad de un blog WordPress encontré un enlace donde listaban un conjunto de herramientas online gratuitas que realizan una serie de pruebas (tests) y de acuerdo a los resultados emiten unos informes y dan en algunos casos sugerencias a mejorar. He realizado pruebas con 3 de ellas con el plugin W3 Total Cache inhabilitado y luego de nuevo con el plugin habilitado para poder observar si hay mejoras en cuanto a rendimiento. A continuación los resultados de los tests con el plugin inhabilitado:

Pingdom

pingdom_antes

 

 

 

Google Page Insights

page_movil_antes page_desktop_antes

Gtmetrix

gtmetrix_antes

 

 

 

 

 

Ahora voy con los resultados una vez habilitado el plugin W3 Total Cache

pingdom_despues

 

 

 

page_desktop_despues page_movil_despues

 

gtmetrix_despues

 

Conclusión

Esta verificado que el plugin me proporciona mejoras en cuanto a rendimiento, ya que de hecho en mayor o menos medida las 3 diferentes herramientas así lo han corroborado, lo cual es positivo, aunque hay algo que les confieso me ha dejado aun un poco inconforme y ha sido el resultado arrojado por la aplicación de google, ya que incluso cuando he habilitado la minimización del Javascript, de las CSS y del HTML además de la compresión en los ajustes del plugin de WordPress, el test de velocidad de google me sugiere llevar a cabo lo antes citado (minimización de los js, css y html). Supongo que quizás es alguna afinación en los ajustes que me falta por hacer y de hecho espero que así sea. De todas formas si logro hallar la manera de solventar ese inconveniente lo compartiré con ustedes como una actualización de esta entrada, por otro lado si ustedes conocen la respuesta POR FAVOR HAZMELA LLEGAR!, pero independientemente de eso lo importante es que he podido (y espero que ustedes también) llevar a cabo una mejora en cuanto al rendimiento del blog.

Actualización

He descubierto, que las sugerencias que me planteaba la herramienta Google PageSpeed Insights, que consistían en minimizar el JS (JavaScript), HTML y CSS de la página tanto para la versión de escritorio (que alcanzaba una valoración de 80/100), como para la versión para móviles (con una nota de 74/100), se deben a lo siguiente:

En la versión de escritorio se debe casi en su totalidad a código proveniente de los anuncios de amazon que aparecen en mi página, mientras que en la versión de móviles se debe al JavaScript utilizado para mostrar el mensaje de las cookies al cargar la página y al plugin WPtouch Mobile, el cual es el encargado de mostrar una versión algo minimalista de la página para dispositivos móviles, pero que a su vez me permite conseguir una nota de 99/100 en experiencia de usuario en móviles (razón que me hace compensar el por ahora no tener un mejor rendimiento), lo cual ahora que conozco la razón no me preocupa, ya que no me extrañaría que pronto salga una actualización en alguno de los plugins involucrados (WPtouch Mobile y W3 Total Cache) que permita mejorar la compresión del Javascript y CSS de la página.