Cómo averiguar la versión de Node.js que estás utilizando

Hace unos días se lanzó la nueva y esperadísima versión 4.0.0 de Node.js que ofrece novedades muy interesantes y añade estabilidad a la plataforma.

Sobre todo en bibliotecas reutilizables (módulos), en ocasiones puede ser interesante averiguar la versión exacta de Node.js en la que se está ejecutando tu código de modo que puedas hacer uso de algunas características o no en función de la versión actual. Vamos a ver cómo puedes averiguarlo.

En primer lugar vamos a ver cómo puedes ver qué versión de Node.js tienes instalada en tu máquina. La forma más sencilla es abrir la línea de comandos y utilizar el propio ejecutable node.exe con el parámetro "-v", así:

Node-version-01

En esta imagen vemos lo que devuelven la nueva versión 4.0.0 y una más antigua (la 0.12.2 que viene con las herramientas de Apache Cordova de Visual Studio, que es del 31 de marzo ¡muchos cambios desde entonces!

Vale, esto está bien pero realmente lo que necesitamos es poder averiguar esta información desde nuestro código, y a ser posible de manera mucho más detallada. Por ejemplo, ¿qué versión del motor V8 de JavaScript tenemos disponible?.

EN ESTE ENLACE te cuento cómo hacerlo…

Cómo leer discos de Mac OS X desde Windows (sin instalar utilidades y gratis)

Hace unos días un amigo me pidió ayuda con un problema para él bastante grave: tenía muchos GB de fotografías guardados en un disco duro externo que usaba con un ordenador Mac viejo y no podía leerlas desde su nuevo ordenador con Windows: el disco ni siquiera le aparecía. El caso es que el Mac ya le iba muy mal (era muy antiguo) y necesitaba poder leer las fotos desde Windows: toda su vida en imágenes estaba allí.

Una posible solución al problema era pinchar de nuevo el disco al Mac y conectarse a éste desde el sistema con Windows, pasando todo el contenido del disco por la red local. Una operación tediosa, larga y además poco práctica pues el disco no le serviría para nada (¿tendría que volver a formatearlo y copiar de nuevo las fotos desde Windows?).

La mejor solución, por tanto, era poder leer ese disco desde Windows directamente, como un disco más.

El problema

El sistema de archivos de los ordenadores Mac es HFS (Hierarchical File System), siendo sus sucesores HFS Plus y HFSX (una versión reciente de HFS Plus con nombres que distinguen mayúsculas de minúsculas), que es el que utilizan estos sistemas por defecto. En Windows, sin embargo, el sistema de archivos utiliza NTFS.

Mac incluye soporte para leer discos NTFS (aunque no es algo directo), pero sin embargo Windows no incluye ninguna manera de leer discos de Mac con HFS (supongo que por cuestiones de copyright).

La solución

En el mercado existen varias utilidades para poder leer y escribir discos HFS desde Windows.  Las hay de pago, que funcionan muy bien, y gratuitas que funcionan también bastante bien pero tienen sus pegas… Y luego existe la solución que yo adopté que consiste en "gorronear" los drivers nativos de Apple para instalarlos directamente en Windows.

PULSA AQUÍ para leer la solución paso a paso.

Las 5 cosas más molestas de Windows 10 y cómo solucionarlas

Windows 10 ya está aquí en toda su gloria. En sus primeras 24 horas ya tenía 14 millones de usuarios, y en unos pocos meses estará en un porcentaje muy alto de los ordenadores de todo el mundo.

Dado que formo parte del programa de Windows Insiders, he estado probando el nuevo sistema durante unos cuantos meses ya, y el día que estuvo disponible la versión definitiva lo actualicé en todos mis equipos.

Inciso: Permitid que me queje un poco. He actualizado todos los equipos a excepción de mi tablet, que es donde más partido seguramente le podría sacar. El motivo es que este dispositivo, como otras muchas tabletas de hace un par de años, tiene un procesador Intel Atom que lleva una tarjeta gráfica integrada de Intel (Intel Media Graphics Accelerator). El caso es que Intel no ha sacado drivers actualziados para Windows 10 y no lo puedes instalar. Un fallo imperdonable por parte de Microsoft haberlo permtido ya que deja fuera de la actualización a muchísimas tablets :-(

El caso es que Windows 10 está muy bien pero no es para tanto porque Windows 8.1 ya estaba muy bien. Quiero decir, la prensa, los "usuarios", y todo el mundo en general lo ponen por las nubes y dicen que mejora mucho Windows 8, pero en mi opinión es todo puro "postureo", y ahora tocaba versión buena. La gente que echaba pestes de Windows 8 ahora dice que Windows 10 es una maravilla, cuando en el fondo es más o menos lo mismo de cara a un usuario a excepción de cambios cosméticos y pequeñas mejoras. Pero esto siempre pasa: una versión de Windows toca buena y la siguiente mala. Es tradición.

Nota: Windows 10 ofrece un cambio importante de filosofía para desarrolladores, ahora ya por fin con aplicaciones Universales, y es estratégico para Microsoft. Pero con el comentario anterior me estoy refiriendo a los usuarios normales del sistema, a los que realmente no les impacta nada de esto. Que un simple usuario diga que Windows 8 era muy malo y Windows 10 es maravilloso, de un extremo al otro, no lo puedo comprender.

A pesar de lo mucho que me gusta también Windows 10, tiene algunas pequeñas cosas nuevas que trae que no me convencen e incluso me molestan. Y es probable que le pase lo mismo a muchos "power users". Así que ahí van las principales y cómo solucionarlas.

SIGUE LEYENDO para saber cómo hacer estas 5 cosas:

1.- El menú de inicio grande otra vez

2.- Quitar el cuadro de búsqueda de Cortana

3.- Cambiar el buscador por defecto en Edge

4.- Ubicación por defecto del explorador de archivos

5.- Evitar que todo lo nuevo se te vaya añadiendo al grupo de Acceso Rápido

Microsoft Band: review después de varios meses de uso

El año pasado, en noviembre, el lanzamiento de la Microsoft Band nos pilló a todos por sorpresa pues nunca habían hablado de ella ni se sabía nada. Su éxito fue brutal: Yo llegué a EEUU dos días después de que la pusieran a la venta y estaba ya agotada en todo el país (el único en el que se vendía. Ahora se vende también en UK desde el mes de abril de 2015). Por culpa de eso y de que luego la fueron soltando a cuentagotas, no pude hacerme con una hasta hace 4 meses.

El modelo que yo tengo es comprado en Estados Unidos, pero no creo que haya diferencia alguna con el modelo que puedes adquirir en Reino Unido, así que mi revisión valdrá para cualquiera que tenga intención de comprarla.

Antes de seguir creo que es importante destacar que este modelo es la primera versión del dispositivo, y de hecho es el primer “wearable” que lanza Microsoft desde hacer más de una década (tras aquel casi inadvertido SPOT de 2004, que usaba señales de radio FM para recibir datos).

microsoft-band-sensor-pulsaciones

SIGUE LEYENDO para aprender sobre sus:

  • Hardware y sensores
  • Las funciones básicas
  • Aplicaciones complementarias
  • Comodidad
  • Calidad de materiales
  • Batería
  • Cuestiones molestas diversas

Desinstalar una versión concreta de PHP en IIS

Si instalas PHP en Internet Information Server usando un instalador automatizado te ahorras mucho trabajo de configuración. Lo malo es que no sabes qué ha hecho realmente por debajo y por lo tanto a la hora de hacer algún ajuste o de desinstalarlo, tienes un problema. En el caso concreto de que lo hayas hecho con el Web Platform Installer de Microsoft es aún peor, ya que entonces no tienes siquiera una entrada en la herramienta de "Desinstalar programas" del sistema. Tienes que hacerlo todo a mano. pan para hoy, hambre para mañana.

A medida que vas actualizando PHP a las últimas versiones que van saliendo, tiendes a acumular variantes de lo mismo una y otra vez, Está bien dejar la versión anterior unos días o semanas por si acaso aparece un conflicto o un bug, y así poder volver atrás. Pero en cuanto pase ese periodo de seguridad lo mejor es librarse de ellas.

¿Cómo puedo deshacerme de una versión concreta de PHP que tenga instalada en mi servidor?

SIGUE LEYENDO para averiguar el proceso paso a paso…

Cómo solucionar el error 500 de PHP 5.6 con FastCgiModule en IIIS

Aunque PHP se asocia habitualmente con Apache y Linux, lo cierto es que funciona muy bien bajo Windows Server con Internet Information Server.

Personalmente no me gusta mucho PHP, pero a veces no me queda más remedio que montarlo en algún servidor porque los diseñadores/webmasters me demandan WordPress o algún producto similar (que tampoco me gusta demasiado). Ya que tengo que montarlo, al menos que sea en Windows: lo que me faltaba es tener un servidor Linux para administrar. Bastante tengo con pegarme de vez en cuando con mi Linux de escritorio.

Así que ni corto ni perezoso monto un MySQL y un WordPress con PHP en unos minutos (lo cierto es que es muy fácil).

La manera más sencilla de hacerlo es utilizar el Web Platform Installer de Microsoft (WebPI). Lo descargas, lo lanzas, escoges lo que quieres instalar (por ejemplo WordPress) y se te instala junto con todas sus dependencias (MySQL, PHP, Wincache…) sin que apenas tengas que hacer nada.

Sin embargo no te recomiendo usar WebPI para esto, y yo al menos prefiero instalarlo todo a mano. ¿Por qué? Pues fundamentalmente porque te instala versiones de todo que no son las últimas y, de hecho, en el caso de WordPress usa un PHP muy antiguo (el 5.1) así como una versión bastante vieja de MySQL también. Además los instala en carpetas por defecto, con nombres atados a la versión (es decir, con el número de versión en el nombre de la carpeta, ver captura de más abajo) que cuando luego actualices no ayudan a gestionarlo adecuadamente.

Por eso, en mi opinión, aunque de algo más de trabajo mejor instalarlo todo a mano.

Bien, el caso es que si instalas PHP 5.6, la última versión disponible en el momento de escribir esto, en cuanto intentes ejecutar alguna página de prueba para ver si todo ha ido bien, obtendrás un error 500 y una página como la siguiente:

PHP-IIS-Error500
Pulsa para aumentar

HTTP Error 500.0 – Error interno del servidor
C:Archivos de Programa (x86)PHPv5.6php-cgi.exe – El proceso FastCGI se cerró de manera inesperada

La verdad es que no da muchas pistas, más allá de que está fallando el módulo FastCGI, que es la implementación del protocolo FastCGI para Internet Information Server.

SIGUE LEYENDO para ver la solución a este problema…

HTML: Sobre idiomas de contenido, traducciones y cómo controlar todo esto

Mala-traduccion-ExtintorEl inglés es el idioma más hablado del mundo, la lingua franca que todos usamos para viajar y hacer negocios en todo el mundo. Es como el Arameo en tiempos de Jesucristo, vamos. No hablarlo o entenderlo al menos al leerlo es una gran barrera para multitud de puestos de trabajo y en especial para los programadores y demás técnicos, ya que la mayor parte de los documentos están en este idioma, siendo predominantes las empresas estadounidenses en el mundo del software y el hardware, y adoptando este idioma todas las empresas que se quieren internacionalizar.

Por suerte, aunque no lo entiendas, la propia Internet te ofrece la solución en forma de traductores on-line, el más utilizado de los cuales es Google Translator.

Permiten traducir entre varias decenas de idiomas permitiéndonos, por ejemplo, leer una página en Chino traduciéndola por completo al español o al inglés en unos instantes. Las traducciones aún dejan bastante que desear en muchos casos (ver figuras varias en este artículo como ejemplo), pero está mejorando cada día y al menos sirve para enterarnos de qué va la cosa.

Google Chrome lleva integrada de serie la traducción de esta herramienta, de modo que en cuanto detecta una página que no está en alguno de los idiomas que hemos declarado como propios en el navegador, te ofrece automáticamente si quieres traducirla:

Chrome_Traductor

De este modo lo tenemos tan fácil como pulsar un botón.

Otras herramientas y extensiones para otros navegadores ofrecen una funcionalidad parecida.

Aunque esto es estupendo en la mayoría de los casos, puede ofrecer varios problemas, tanto desde el punto de vista de los usuarios como de los desarrolladores de páginas y aplicaciones web.

Vamos a aprender cómo podemos controlar el posible proceso de traducción de una página desde nuestro código.

SIGUE LEYENDO para aprender:

  • Control de traducciones en Chrome, como usuario
  • Problemas de las traducciones como programador
  • Controlando el idioma de nuestras páginas
  • Mayor control sobre el proceso de traducción, mediante código en nuestras páginas
  • Soporte de traductores

Repositorios Git privados gratuitos en VS Online – Credenciales alternativas

Git es un sistema de control de código fuente distribuido de gran popularidad. Ésta se debe no solo a que es un sistema objetivamente muy bueno (aunque más complejo de utilizar que otros como Subversion, si bien Git es más potente), sino también a que el proyecto GitHub lo ha hecho grande. Github es el centro neurálgico del Open Source mundial, habiendo desplazado a proyectos históricos como SourceForge y similares, y es realmente donde se "cuece" todo lo que tiene que ver con código fuente abierto. Y GitHub, como su propio nombre indica, se basa en Git.

Github ofrece una serie de características interesantes por encima de Git, como son la revisión de código colaborativa, la gestión integrada de bugs o el famoso "fork" (que consiste básicamente en clonar un repositorio para jugar con él o para proponer cambios sin afectar al original). Github es gratuito para proyectos públicos (o sea, Open Source), pero si quieres mantener repositorios privados y que solo tú y tu equipo podáis acceder a ellos, entonces debes pagar (lo cual está bien, pero deberían ser más transparentes al respecto: esa página de precios no es nada directo poder encontrarla).

Aunque no es lo primero que viene a la cabeza para mucha gente, una gran opción alternativa para trabajar con Git en empresas de forma privada y gratuita es Visual Studio Online.

La verdad es que personalmente el nombre de "Visual Studio Online" me horroriza. Para empezar, mucha gente al escucharlo piensa que es una versión en la nube del editor de Visual Studio, para programar, y nada más lejos de la realidad. Muchas más personas piensan que se trata de unas herramientas atadas por completo a la tecnología de Microsoft, lo cual tampoco es cierto en absoluto. Por eso ese nombre me parece muy poco adecuado.

SIGUE LEYENDO para saber:

  • Qué te ofrece Visual Studio Online de manera completamente gratuita (¡son muchisimas cosas!)
  • Cómo puedes usarlo sin problemas desde Eclipse, VSCode, la línea de comandos o cualquier herramienta para Git disponible en cualquier sistema operativo.

Cómo reducir el tamaño de una máquina virtual en VirtualBox

Desde hace unos meses estoy probando las diferentes versiones de Windows 10 Preview así como otros productos que instalo dentro de este nuevo sistema operativo. Para ello, y dado que es una versión no definitiva, utilizo una máquina virtual  desde la que puedo hacer el bruto lo que quiera y probar sin miedo a que se cargue algo de mi sistema operativo principal.

Mi entorno de virtualización de escritorio favorito es VirtualBox, que es gratuito, Open Source, trabaja con todos los tipos de discos virtuales de otras marcas, y se actualiza constantemente. Llevo usándolomuchísimos años, yo creo que desde que salió, y la única pega que tiene es que desde hace un tiempo tiene a Oracle detrás (lo compró junto con Sun Microsystems).

Bien, el caso es que Windows 10 se actualiza bastante a menudo con nuevas cosas, y más si estás en el "Fast ring" de las actualizaciones, que entonces caen cada dos por tres. Cada vez que se actualiza el sistema completo crea una copia de seguridad del sistema anterior, lo cual hace que tras varias actualizaciones tengas muchísimos GB de espacio ocupados en el disco solo por si acaso quieres volver a lo anterior. Esto hace que el disco crezca mucho y que te quedes sin espacio bien en el disco virtual o, peor, en el disco físico que lo alberga. En mi caso, por ejemplo, lo tengo albergado en una unidad SSD que va rapidísima, pero que tiene más máquinas virtuales y un espacio limitado. Por ello llega un punto en que necesito reducirlo para que no me ocupe todo el disco.

¿Cómo puedo hacer para reducir el tamaño del disco duro virtual?

Los pasos son sencillos, pero hay que conocerlos y no es evidente:

..SIGUE LEYENDO…

Cómo reiniciar un servidor desde escritorio remoto / Terminal Server

Cuando manejas varios servidores Windows lo habitual es conectarse a través de escritorio remoto a éstos para gestionarlos. Con la propia licencia de Windows se incluye gratis la posibilidad de conectarse en remoto con usuarios que pertenezcan al rol de "Administradores" (un máximo de 2 a la vez) para poder gestionar la máquina como si estuviésemos sentados delante de ella. Esto mismo vale para las versiones cliente de Windows (como Windows 7 o Windows 8), así que yo por ejemplo me suelo conectar constantemente a mi equipo de sobremesa de la oficina cuando estoy de viaje o desde casa. Es cuestión de abrir un puerto en el cortafuegos y poco más. Las conexiones son encriptadas, es fácil de securizar y es un protocolo estable, sólido y con relativamente pocos problemas de seguridad.

Cuando te conectas mediante escritorio remoto a una máquina solo tienes dos opciones para dejar la sesión actual: desconectarte (que es lo mismo que cerrar la ventana del escritorio remoto) o cerrar la sesión.

No se ofrecen las opciones habituales de reiniciar y apagar el equipo, ponerlo en modo "sleep" y similares.

El motivo supongo que es que no apagues por error una máquina remota y que pierdas el acceso a la misma. Y es que si no hay nadie para reiniciarla tienes un problema grave.

Sin embargo existen muchas ocasiones en las que forzar un reinicio (o incluso un apagado) puedes estar justificado y ser necesario. ¿Cómo podemos hacer en estos casos?

Por suerte para nosotros, en el sistema operativo se incluye una utilidad para hacer precisamente eso.

…SIGUE LEYENDO…