Programando con Node-Webkit. 3: cliente-servidor

nodewebkitHace unos días hablaba de montar una aplicación cliente-servidor rápidamente usando ssh para ejecutar comandos remotos.

Bueno, funcionar funciona, pero tiene algunos inconvenientes como por ejemplo depender de usuarios de sistema con los que hacer login. Disponiendo de tiempo y ganas sería mejor desarrollar nuestro propia app de servidor con nuestro propio sistema de autenticación, y mejor aun si además con ello conseguimos que nuestra aplicación sea totalmente portable.

Puede haber mil formas de hacerlo, pero ya que estamos metidos con node-webkit le daremos una vuelta a una de sus alternativas en la vertiente de server: express.js.

Sigue leyendo

Error con ssh2 en Node-Webkit

nodewebkitPongamos que quieres desarrollar rápidamente una aplicación cliente-servidor en node-webkit, y que precisamente por la parte de “rápidamente” quieres centrarte en el cliente sin liarte con la comunicación con el servidor.

Una opción sencilla es usar ssh, ejecutando de forma remota en el servidor lo que necesitemos y capturando y parseando las respuestas.

Además querremos que nuestro cliente sea multiplataforma, así que buscando librerías de ssh en javascript encontraremos el módulo ssh2 de npm. Todo perfecto, estás a cinco minutos de tecleo de tener tu aplicación funcionando…

…Y entonces resulta que la conexión falla 4 de cada 5 veces sin tener ni idea de por qué.

Sigue leyendo

Programando con Node-Webkit. 2: build

nodewebkitEn el artículo anterior sobre node-webkit nos habíamos quedado con una aplicación de prueba sin más contenido que una cadena de texto, pero que ya podíamos ejecutar a través de nw y ver que efectivamente la cosa funcionaba.

Bien, pongamos que ya le hemos echado unas horas a nuestro programa y queremos distribuirlo a más gente… lo de decirles que se descarguen el node-webkit y usen “nw ./” desde la carpeta no es muy atractivo, mucho mejor si les damos un ejecutable sobre el que sólo necesitan hacer click para arrancarlo, verdad?

Para ayudarnos con esto está Grunt.

Sigue leyendo

Programando con Node-Webkit. 1: empezando

nodewebkitPodría inventarme excusas más técnicas sobre por qué me ha dado por probar a desarrollar con node-webkit, pero la realidad se reduce a “porque puedo”.

Por eso, y porque siempre me ha picado la curiosidad de diseñar interfaces de escritorio con CSS, y aunque node-webkit no es la única opción para ello (ni seguramente la mejor) sí tiene un cierto interés particular por lo rebuscada que es.

A fin de cuentas programar una aplicación de escritorio con funciones asíncronas es un poco como partir el filete con el tenedor y comerlo con el cuchillo: un desafío absurdo de consecuencias potencialmente interesantes.

Sigue leyendo

El F2P bien hecho es posible

Encontré hace tiempo en Google Play un juego llamado Giant Boulder of Death, de Adult Swim (el canal de televisión con series tan estrafalarias como Metalocalipsis).

No voy a hablar sin embargo de que sea un juego entretenido (que lo es) ni de que esté bien hecho (que lo está) ni de que tenga una mecánica de juego absurdamente simple que sin embargo es capaz de engancharte durante horas (que la tiene).

De lo que quiero hablar es de que este juego es F2P (Free to Play) y paradójicamente, en contra de todo a lo que estamos acostumbrados, no es un sacacuartos en el que intenten exprimir tu bolsillo para conseguir progresar en el juego.

Sigue leyendo

Sobre Telegram y el absurdo estado actual de la mensajería instantánea

telegramSupongo que a estas alturas la mayoría habréis oído hablar de Telegram, la aplicación de mensajería instantánea “estilo Whatsapp” creada por los propietarios de la red social vk.com que ofrece como puntos fuertes un protocolo abierto y una mayor seguridad.

También estaréis todos ya algo cansados de oír eso de “nueva aplicación de chat! el futuro sustituto de Whatsapp!”… y es que han sido ya unos cuantos de estos, e incluso ese LINE que empezó tan fuerte acabó también en la cuneta.

Lo que yo me pregunto es: ¿no estáis ya un poco hasta los huevos de tantas apps de chat incompatibles entre si?

Sigue leyendo

The land of the free

A la sombra del caso Snowden están ocurriendo otras cosas que no aparecen en los medios con tanto bombo y platillo (si es que aparecen en absoluto).

Hace unos días el proveedor de correo electrónico Lavabit cerraba sus puertas como única forma de negarse a una orden de registro de la NSA para permitir las escuchas a sus usuarios, así como una “gag order”  (“orden mordaza”, por decirlo de alguna forma, o quizá más correctamente “secreto de sumario”) que le impedía notificárselo a los mismos.

Recientemente también el periódico inglés The Guardian recibió una orden de “entregar o destruir” toda la documentación relacionada con el caso Snowden. Poco después de dicha orden las autoridades británicas se personaron en las oficinas del periódico para destruir físicamente los discos duros y equipos.

Un detalle curioso de este intento de silenciar a la prensa es la guasa y prepotencia con que se notificó la orden. Cuando The Guardian argumentó que sin los documentos no podría seguir investigando y publicando artículos sobre el caso Snowden, la (anónima) autoridad británica respondió que “ya habéis tenido vuestro debate, no hace falta que sigáis escribiendo”.

Y aun hay más: David Miranda (pareja del periodista de The Guardian Glen Greenwald) fue retenido e interrogado durante nueve horas en Heathrow bajo el amparo de las leyes antiterroristas, y dejado después libre sin cargos pero requisando su ordenador, móvil y discos.

Hoy mismo Pamela Jones ha publicado un artículo en Groklaw anunciando el cierre definitivo de la web, dedicada desde hace años al seguimiento y documentación de casos judiciales. Según PJ, tras el cierre de Lavabit y la imposibilidad manifiesta de mantener correspondencia privada con sus colaboradores no ve sentido ni medios a la continuación de la página.

Es posible, tal vez, que su explicación y cierre repentino sin permitir siquiera comentarios al artículo sean una forma de decir que al igual que Lavabit (y seguramente tantos otros servicios) también ha recibido una orden de la NSA y la consiguiente “gag order” que le prohíbe informar a nadie de que todas las comunicaciones con los colaboradores estarían intervenidas.

“Si la tiranía y la opresión llegan a esta tierra, será bajo el disfraz de la lucha contra un enemigo extranjero.”
— James Madison (4º presidente de EEUU)

 

Lo más triste, señor Madison, no es que la tiranía y la opresión lleguen a EEUU. El problema es que por extensión nos llega también a todos los demás.