• Problema con dos discos duros externos en USB3

    dos_discos_duros

    De repente, llegan a mis manos dos discos duros externos de 2.5″. Ambos USB3, enchufados a un HUB USB3.0 como el de la foto de más abajo, y tengo que copiar información entre ellos (varios Gb de datos, por lo que, cuanto más rápida sea la copia mejor). Como mi ordenador sólo dispone de un puerto USB3.0, el HUB era necesario. Cuidado, en muchos ordenadores que tienen varios puertos USB3.0, en realidad tienen un HUB interno y estamos en las mismas.… Leer artículo completo

    [Leer más...]
  • Revolución tecnológica, ciencia ficción y software libre

    2019666143_22e1499cc4_o

    La situación

    El mundo de la tecnología evoluciona al ritmo de Usain Bolt. Y es que, parece que fue ayer, cuando Internet era libre, cuando casi nadie sabía lo que era Facebook, cuando comprábamos un pendrive de 128Mb y nos costaba lo mismo que comer dos semanas, o cuando instalábamos Windows 95 en disquetes (13 disquetes, y el último nunca lo pedía).

    Bueno, actualmente, Internet no es libre, y pongo el caso de España, aunque es cierto que muchos países lo tienen peor.… Leer artículo completo

    [Leer más...]
  • Programación a lo “Monaguillo”… y todos lo hemos hecho.

    16378234577_bf1602f3ef_k

    Antes de nada, vamos a poner antecedentes. Para los que no conozcáis a este humorista:


    Bueno, que este hombre tiene un estilo muy particular, es nervioso y dice las cosas como le vienen y personalmente me río mucho con él, por lo que ya podéis estar siguiéndole en Twitter.

    En programación, es una cosa que suelo hablar con amigos y colegas de trabajo y es un concepto que se puede aplicar a muchas áreas de conocimiento.… Leer artículo completo

    [Leer más...]
  • Scripts multilingües en bash con gettext / Traducciones en scripts


    Hace tiempo, empecé un proyecto en el que comparto algunos scripts que utilizo para hacerme la vida un poco más fácil. En esta colección, encontramos algunos scripts que ejecutaremos desde consola, y otros que, suelo tenerlos vinculados a una tecla rápida para ejecutarlos más rápidamente. El caso es que, los mensajes que se muestran en pantalla a través de diálogos suelo ponerlos en español, pero me gusta compartirlos con el mundo, y comprendo que cada uno quiera verlo en su idioma.… Leer artículo completo

    [Leer más...]
  • Pausar aplicaciones haciendo click en la ventana correspondiente

    Todo empezó un caluroso día del mes pasado. Cuando, estando trabajando, utilizando Firefox como navegador encuentro información interesante acerca de mi actual proyecto. Aunque no era el único programa en ejecución, el hecho es que tenía toda la RAM llena, y unas 20 ventanas abiertas. De repente, recibo una llamada de teléfono y tengo que ponerme inmediatamente con otra cosa. La página que tengo en mi navegador, es muy pesada, y el ordenador empieza a ir un poco lento, además, el ventilador de la CPU se pone en marcha, muy rápido y de manera muy ruidosa, haciendo que, hasta mi interlocutor se da cuenta de ello.… Leer artículo completo

    [Leer más...]
  • Novedades en la web – Galerías de imágenes y glosario

    1907336_874205642620282_3480663536337230787_n
    Este fin de semana ha sido productivo, en cuanto a contenidos se refiere. He abierto una sección nueva de imágenes en la que he querido poner cosas de humor (me aburro mucho) y algunos documentos interesantes. También, he querido empezar a meterle mano a la enciclopedia, una sección con la que llevo amenazando un montón de tiempo y no saco un rato para ponerme a redactar. Por ahora no hay mucho, pero poco a poco iremos completándola (se admiten sugerencias).… Leer artículo completo

    [Leer más...]
  • Grave fallo de seguridad en Skype para Windows / IOS / Android en lo más simple


    Veo en varios medios, como este, (Venturebeat), la existencia de un grave fallo de seguridad en Skype.
    El caso es que cuando a alguien con Windows, IOS o Android (los dos últimos no los he probado) recibe este mensaje: “http://:” podemos ver cómo la aplicación se cuelga. En ese momento deja de responder y nos obliga a cerrarla.

    Lo más grave es que cuando la reinicias, vuelve a pasar y pasará hasta que se reinstale (o se borre el historial).… Leer artículo completo

    [Leer más...]
  • Servidor web seguro (HTTPS) en C usando openSSL (pruebas)

    Hace unos días veíamos un ejemplo de un cliente web SSL con ayuda de openSSL. Ahora vamos a hacer un servidor al que se pueda conectar. Se trata sólo de una prueba de concepto, nada que podamos utilizar en el mundo real, pero está bien para ver cómo funciona la biblioteca.

    Creando un certificado auto-firmado

    Lo primero que vamos a hacer es crear una llave y un certificado para utilizarlos.… Leer artículo completo

    [Leer más...]
  • Conexión segura a un servidor web (HTTPS) en C usando openSSL

    Bueno, el código no tiene mucha más explicación. El objetivo es poder conectar a un servidor web a través de un protocolo seguro y recibir datos, pero también que podamos ver si hay algún problema con el certificado, verificar el algoritmo de cifrado y los datos del certificado, verificar los certificados intermedios, etc.

    Si ignoramos SSL, lo que tenemos que hacer es conectar con un servidor a través de un puerto determinado (como estamos en web, sería el puerto 80, por defecto), y mandarle una serie de datos:

    GET / HTTP/1.1[CRLF]
    Host: openssl.org[CRLF]
    User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:37.0) Gecko/20100101 Firefox/37.0[CRLF]
    [CRLF]

    Por ejemplo.… Leer artículo completo

    [Leer más...]
  • Usando SQLite en nuestros programas en C/C++ (II): Nueva interfaz v2 y prepared statements

    Hace unos días empezamos a programar utilizando SQLite para gestionar nuestra información usando SQL de toda la vida.

    Bien, SQLite tiene la interfaz clásica, que vimos en el post anterior: sqlite3_open(), sqlite3_close(), sqlite3_exec()… con utilidades básicas para trabajar.

    Por un lado, podemos tener más control sobre la base de datos, por ejemplo, podemos definir cómo abirmos la base de datos, tenemos códigos de error extendidos, ventajas con respecto al tratamiento interno de la memoria y algunas cosas más.… Leer artículo completo

    [Leer más...]