Haciendo clasificaciones… y revisando códigos ISO-639 en línea de comandos.
informática
Lenguas Esquimo-Aleutianas
Como apunté hace dos días, ando «haciendo» estas lenguas, es decir, obteniendo de cada una de ellas la información relevante que almaceno en plantillas homogéneas en el Proyecto de Clasificación Filogenética de las Lenguas del Mundo.
En esta imagen se ve mejor el proceso que sigo, que es tan importante como el resultado, pues es de crucial importancia para mí que sea realizado utilizando software como el que uso, Freemind, de código abierto sobre plataforma Linux, generando o manejando archivos cuyo contenido puede ser modificado por un sencillo editor de texto plano. En este caso, genera archivos XML con extensión .mm
Un ejemplo de lo que contiene uno de estos archivos sería el correspondiente a la Rama Yukagira de las lenguas Uralo-yukagiras, incluida en la macrofamilia de lenguas uralo-siberianas
www.carmendelarosa.com
La semana pasada dedicamos varios días a rehacer la web de Carmen de la Rosa.
Es un trabajo que suele resultar cansado y tedioso, aunque los resultados han sido bastante satisfactorios. Ha quedado una web moderna y profesional, seria y sutil, delicada y dulce… como ella.
Sigo programando HTML con mi muy querido editor VI, sobre, por supuesto, Linux (Mint), y como habitualmente, he tenido problemas de codificación de las páginas. Nuestras queridas Ñ/ñ, por no hablar de los Euros (€) que están contenidos sin problema en UTF-8, resulta que no lo están tan fácilmente en ISO-8859-1, así que a veces las páginas no tienen ni idea (porque yo no lo incluyo) el conjunto de caracteres que las construye.
Esto es así porque yo solía programar en aquella época en la que solo había ASCII… 256 caracteres y había que apañarse… pero en estos tiempos modernos (jejejeje) las cosas pueden simplificarse si se saben algunas nociones como incluir un «tag» meta en las cabeceras de cada una de las páginas web estáticas que manejamos diciéndole cuál es el tipo de caracteres con el que está hecho ese fichero.
Eso puede hacerse de diversas maneras:
< meta http-equiv="Content-Type" content="text/html; charset=utf-8" >
que se puede abreviar como:
< meta charset="UTF-8" >
Para indicar que el conjunto de caracteres es de tipo UTF-8, pero también dejándolos en iso-8859-1 añadiendo la siguiente metainstrucción:
< meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" >
Para ver qué tipo de codificación contienen los archivos existe el comando file y un ejemplo de su utilización sería:
giusseppe@PCTACENS /media/GSPDISK/jmdomin/web-sites/carmendelarosa $ file -i es_*html
es_bio.html: text/html; charset=utf-8
es_clases.html: text/html; charset=iso-8859-1
es_contacto.html: text/html; charset=utf-8
es_contacto.iso-8859-1.html: text/html; charset=iso-8859-1
es_fotos.html: text/html; charset=iso-8859-1
es_frames.html: text/html; charset=utf-8
es_main.html: text/html; charset=utf-8
es_nclave.html: text/html; charset=utf-8
es_videos.html: text/html; charset=us-ascii
Y, por último, la posibilidad de convertir archivos de un formato a otro, mediante el comando iconv, en este caso incluido en un script que convierte todos los archivos de un determinado directorio pasado en la línea de comandos, de un formato (UTF-8) a otro (ISO-8859-15).
#!/bin/bash
DIRECTORIO=$1
cd $1
for file in *.txt
do
iconv -c -t ISO-8859-15 -f UTF-8 "$file" -o "${file%.txt}.iso8859-15.txt"
done
Cambiando *.txt por *.html, podría cambiar todos los archivos html de una web y así hacer que tuviesen el mismo tipo de codificación, invirtiendo el orden de -t (to-format) y -f (from-format), para tenerlos todos en UTF-8, en lugar de tener variedad de formatos.
Ayer descubrí WhatsApp Web
Es una forma interesantísima de utilizar WhatsApp.
La app de mensajería por excelencia de la era smartphone, ha desarrollado un avance singular que siempre eché en falta: una aplicación web que permite acceder a la app de manera que se puedan enviar mensajes desde cualquier ordenador, o cualquier dispositivo, que tenga un teclado y un navegador.
Esto la convierte en la herramienta idónea para seguir comunicándose con quienes están en esta modernez de smartphonelandia y tienen una conexión a Internet (se puede no tener ¿!!?) desde casa mientras se trabaja, por ejemplo.
Es posible que el problema sea esta misma onmipresente disponibilidad de la app, que puede conllevar una agobiante sobrecarga de mensajes innecesarios en momentos en los que se requiera concentración o «enfoque».
Esto, de nuevo, me lleva a cierta necesidad que cada día veo más acuaciante de diferenciar el uso profesional que se hace de la telefonía y las redes en general de telecomunicaciones y el uso personal que se hace de las mismas.
Es decir, quiero poder recibir un mensaje de whatsapp de un alumno mientras estoy trabajando, pues sé que lo que quiere decirme puede ser «urgente» o requerir mi intervención, o informarme de algo que puedo querer saber con prontitud, pero, por el contrario, durante esa parte de mi tiempo, puedo querer estar desconectado (salvo emergencias) de mensajes de amigas o familia.
También (durante las vacaciones o fiestas de guardar y en otras franjas horarias) puede darse justo la situación contraria: no estar para el trabajo y sí para los amigos íntimos o la familia.
Surge más de un problema cuando ambos círculos se mezclan, como suele ser habitual, pero al menos es minimizar el problema a algún tipo de intersección y no a una maximalista unión de conjuntos que acaba por englobar al mundo mundial.
De momento, mientras no sea demasiado molesto, estoy contento de haber descubierto la posibilidad de usar WhatsApp vía Web y haberla estrenado con unos mensajes a mi querida Aída B.
De confidencialidad y datos personales
Ayer, durante una agradable reunión en torno al cumpleaños de una amiga de Carmen, surgió el debate sobre la confidencialidad de nuestros datos en Internet y me di cuenta de que mucha gente confunde algunas cosas:
Un cuestión es regular cómo viaja la información por los canales de Internet (cifrada, no cifrada, etc) que genera posibles espionajes por parte de terceros en medio de los destinos (ya sean los ISP, gobiernos con más o menos autorización…).
Otra cuestión bien distinta es regular quién tiene acceso a nuestros datos personales (fotos, nombres, aficiones…) que, cifrado o no cifrado, damos a unas cuantas empresas (Google/Android/Gmail, Microsoft/Windows/Hotmail, Apple/Mac/iPhones, FaceBook, Twitter…), todas ellas, por cierto, residentes en un único país.
Y un tema adicional, nuestro acceso a los servicios que ofrecen estas empresas ocurre viajando a través de múltiples países, generalmente, de modo que ¿qué legislación aplica?
Con respecto a las leyes «antipiratería», que ya he escrito en otras ocasiones, hay regulaciones más o menos oficiales que reducen el ancho de banda para servicios de internet determinados, como la disminución de la velocidad del ADSL para servicios P2P, por ejemplo, sin diferenciar (algo relativamente difícil si no imposible) la naturaleza de lo compartido/descargado, así se limita de igual manera una descarga de una película con protección que un software opensource.
Somos todos los que estamos haciendo un gran regalo a la «Tyrell Corporation«. No nos exigen dar los datos a estas empresas, pero es tan cómodo hacerlo que es mejor no pensar en alternativas.
La esperanza no se acaba de perder y el otro día me enteré de que BQ ha sacado un móvil con UBUNTUPHONE, es decir, aún queda algo de idealismo pugnando por ofrecer alternativas.
Quizá con este primer paso, el manejo del hardware (de los móviles) volverá a estar un poco en las manos de los usuarios, algunos de los cuales puede que se esfuercen lo suficiente como para dejar de usar herramientas que condicionan nuestra privacidad, nuestros datos, haciendo que los «regalemos» o cambiemos por un poquito de comodidad.
Al menos, con los PCs ya hubo evolución similar cuando se comenzó la bifurcación tras las clonaciones. La década de los 80 fue un mar de variedades… muy bien retratado en la serie Halt and Catch Fire.
Aprende a programar en 2 horas
Sí, sí, así como suena lo anuncia un anuncio en una red social. Sabemos que es demencial esto de la publicidad, pero esto ya se lleva el gato al agua.
¿Quién puede aprender a programar (aprender algo en general) en 2 horas?
A eso súmale la mirada de la modelo del anuncio. ¿De verdad que se trata de aprender a programar? ¿en HTML? ¿Es eso programar?
Menos mal que si me apunto hoy es gratis. Eso significa que en otras ocasiones no es gratis. Esto es terrible. Terrible porque quien pincha en el anuncio es idiota o tan ambicioso como vago. O se le ha ido la mano detrás de esos senos insinuantes.
No acabo de entenderlo… Repito: ¿alguien puede creerse que puede aprender algo digno de ser aprendido en 2 horas?
Pero sabiendo, según el anuncio, que esa es la profesión del futuro (¿de qué futuro? ¿dónde? ¿En España no era la hostelería o el toreo?) cómo no lanzarse raudo y veloz (tan veloz como eyaculador precoz) a pinchar sobre esa imagen… El deseo…
Y se habla de publicidad subliminal, pero esto es mucho menos sutil que todo eso: esto es carnaza de la vulgaris vulgaris para consumo inmediato (¡¡¡de 2 horas!!!).
Sobre si podría haberse hecho esa misma imagen con un gallardo muchacho mostrando abdominales, por supuesto, pero lo curioso/machista no está en la objetivización del cuerpo femenino, tanto como en la suposición de que el público objetivo de esa publicidad (programación, tecnología) son hombres y, preferiblemente, heterosexuales. Está en el hecho de asumir que las mujeres no están hechas para programar… para fregar suelos sí, para procrear, también… ¿pero programar?
O quizá esa utilización (voy a ser naïf y bienpensado) sexista y superficial de modelos femeninos en anuncios de aprender a programar en 2 horas se deba a que ninguna mujer (de las que conozco) es tan sumamente tonta como para haber caído en una publicidad, digamos, simétricamente tratada.
Dicho esto, la modelo me parece bellísima. Y puede que además sepa programar algo más serio que HTML. (O quizá el HTML5)
Sostengo que a Microsoft Windows le quedan dos telediarios
Parece controvertido afirmar esto tan categóricamente, sobre todo si tenemos en cuenta que sigue imponiendo su sistema operativo a sangre y fuego en la mayoría de los PCs del mundo, preinstalándolo hasta hacerlo casi imposible de desinstalar o hacer convivir con otros sistemas (he ahí el temita de UEFI y la instalación de otros sistemas operativos, como Linux).
No es que, como algún iluminado, pretenda afirmar que Linux, más concretamente el software libre, va a desplazar al oscurantismo de los de las ventanas… es que la guerra ya no está en ese campo de batalla: ese frente está cerrado y cerrándose: el futuro es mucho más portable, más ligero, Box, tablphone… o widget o wearable… o lo que sea, pero menos PC.
Sigue sacando versiones de sistema operativo a ritmo entre frenético y lento (a la vez), anclando a los usuarios conservadores en un muy estable Windows 7 (después de los quebraderos de cabeza que generó el maldito Windows Vista, que era más o menos un virus que venía preinstalado…). Por otro lado, se empeña en competir en el mercado de las pantallas táctiles, fomentando la aparición de sistemas operativos orientados a tablets como el Windows 8 (y su enorme corrección correspondiente: W 8.1).
Saltándose el Windows 9 (por razones que desconozco) se aventuran con el Windows 10 que puede que sea mejor que el 8.1 (puede) y que seguro necesitará más y más recursos, pero eso ya no es importante, en esta era de despilfarro y más madera…
Pero se sigue obviando algo: la batalla de Internet y la de los dispositivos móviles (tablets / smartphones y lo que está por llegar) está ganada por otras empresas más arriesgadas, más dispuestas a afrontar las filosofías de, incluso, financiación, contemporáneas, del siglo XXI, que fomentan el desarrollo sencillo de aplicaciones para esas plataformas y su pago o su compra-venta con modelos de negocio que el gigante de Micro$ no acaba de entender.
Y digo esto sorprendido de que los precios de la suite de Microsoft Office hayan bajado de los 100€. Algo ridículo si tenemos en cuenta que Whatsapp cuesta la tontería de 0,89€/año.
Sus aplicaciones siguen lastrando una filosofía pre-internet. Pre-(multi/mega)-distribución. Las aplicaciones del siglo XXI aspiran a llegar a tantos usuarios como jamás tuvo ni en sus mejores días la compañía de Gates, y por supuesto parten de ofertas de gratuidad, versiones de prueba con publicidad, versiones limitadas, pero usables, o directamente, versiones que demuestran que hay otros productos laterales de la compañía fabricante en venta que así se da a conocer.
Google va ganando esta guerra por la superioridad en la fabricación de software, por supuesto, incluyendo su megaexitoso Android (por cierto, un linux, para quien no lo sepa), pero ya aventuraba su victoria con aplicaciones que, con razonables buenas conexiones a internet (vaya, el siglo XXI otra vez), desbancaban a las de Richmond: ahí queda el maravilloso paquete de aplicaciones de Google Docs, limitado, se dirá, pero es que para la inmensa mayoría de los usuarios de esta década, no es tan importante las posibilidades que les dé un procesador de textos, posibilidades que, en casi cualquiera de los casos no va a usarse por desconocimiento o por innecesidad. Por no hablar de calendar, youtube (de google), blogspot…
Donde Microsoft se hizo dependiente de su sistema operativo y la consabida preinstalación en el hardware, Google se hizo dependiente del single-sign-on (SSO) que hacía que un usuario contraseña (el de gmail/G+) sea útil y casi necesario para sincronizar todos nuestros equipos o nuestras aplicaciones que ahora (2015) están más en Internet que un dispositivo físico con uno u otro sistema operativo.
Microsoft está teniendo lo que podríamos denominar «la enfermedad IBM«, recordando cómo decayó su imperio tras el auge (bien aprovechado) de los clónicos y la parcial independencia que demostró entonces Bill Gates de su paraguas azul.
El futuro cercano es Google. (Apple seguirá en su burbuja hipster, demostrando que tienen y tuvieron visión para ser considerados «cool» de por vida, sin importar los costos). Microsoft (y especialmente Windows) tiene los días contados, salvo que sigan comprando empresas que hagan lo que ellos no son capaces (véase el caso de Skype, entre otras) y acaben por convertirse en la sombra de una que pegue el pelotazo (ya sea social, FaceBook, o de almacenamiento en la nube o lo que sea).
Sus batacazos sucesivos han sido tan notorios como olvidados:
MSN: aquel pueril intento de hacer una red de Internet monopolizada por una empresa… (algo que, casi sin proponérselo (quizá está fue la clave) ha logrado Google.
Messenger (luego Windows Live): un programa que prentendía comunicar usuarios pero que nunca acabó por estar disponible en cualquier plataforma, no así Skype, que se impuso sobradamente (para luego ser comprada por M$) que así podía cerrar su episodio vergonzoso con un Messenger que ya no quería usar ni el más viejuno de los usuarios.
MySpace: jajajajaja… era una presunta red social. Pero FaceBook/Twitter y las modernas (basadas tan solo en imágenes, selfies, etc) al modo Instagram han hecho de MySpc un recuerdo, ya no vintage, sino simple y llanamente obsoleto y fallido desde su nacimiento.
Internet Explorer: después de décadas siendo el navegador de referencia, ha acabado por asumir que su futuro es la muerte, aunque pasen por una larga agonía llamada Proyecto Spartan, dejando el campo libre a Firefox (qué curioso, heredero del derrotado por IE Netscape) y, sobretodo, al líder incuestionable de Internet y los dispositivos móviles: Google y su Chrome.
W Vista: Bufff… mejor ni hablar de aquello. Después de un tiempo de notoria estabilidad con W XP, después o basado en un equilibrado W 2000, se pegaron la mayor con un sistema operativo in-operativo. Pero estaba claro que tenían que ir pensando en fabricar un sistema más moderno, más de este milenio, algo así como Windows 7, para lanzarse después a la conquista (muy muy tardía) de otros dispositivos con el mentado Windows 8. Pero en estos dispositivos no venían ni jugaban con la ventaja de la preinstalación… y ¿entonces qué? Pues que Android (e incluso iOS) les están dando por donde más duele: el sistema operativo, su núcleo duro, su dependencia máxima.
Ni hablar de Bing (ese buscador que se intenta imponer en redes sociales decadentes, pero que no acaba de cuajar) ni Hotmail/OutLook…
Y así se acercan a un ocaso casi irreversible salvo que den un giro radical, muy difícil de dar para un camión con trailer enorme y a la velocidad que nos movemos.
Pero quien sabe, aún son capaces de vincularse con algún gigante de la fabricación de smartphones e imponer su prometedor Windows Phone… pero sin soporte multiplataforma… van listos. Esos tiempos ya pasaron. Y no se han enterado.
De ahí que sostengo que a Microsoft Windows le quedan dos telediarios.
consulta.sh
Si ayer hablaba del programa que hice para el proyecto La Consulta que me ha sugerido Jaime Vallaure, esta vez escribo o comparto el shell script que he programado para enviar emails de manera que pudiera ejecutarlo sin supervisión.
Curiosamente, no sé si quiero usarlo, pues el proyecto, de alguna manera, sé que implica mi participación humana regular… pero me ha parecido muy interesante desarrollarlo puesto que puedo utilizar esta herramienta para otros proyectos como el que tengo desde hace tiempo de enviar emails regularmente con los Adagio de Wallace Stevens, o para enviar a los posibles subscriptores de este diario un digest o algo parecido cada cierto tiempo.
## La Consulta.sh #!/bin/bash ## 1.- DATOS DEL REMITENTE server_smtp="mail.giusseppe.net:25" usuario_mail="jmdomin@giusseppe.net" usuario_nombre="Giusseppe Domínguez" contras_mail="S0mEPaxW0rd" ## 2.- FICHERO con el CUERPO DEL MENSAJE username="$(whoami)" f_mensaje="/home/$username/bin/consultadata/consulta-$(date +%Y%m%d)" # Si existe el fichero es que ya se ejecutó este programa hoy if [ -s $f_mensaje ] then echo "El fichero ya existe. En algún momento se creó, así que ya no es necesario" exit fi ## 3.- CREAR MENSAJE (Asunto y CUERPO) asunto="$(basename $0): La Consulta" mensaje="El número para La Consulta de hoy (M-$(date +%Y%m%d)) es:" echo "$mensaje" > $f_mensaje consulta >> $f_mensaje echo "Un abrazo grande y hasta otro día" >> $f_mensaje ## 4.- DATOS DEL DESTINATARIO destinatario="jmdomin@giusseppe.net" ## 5.- ENVÍO DEL EMAIL (Usando mailx) env MAILRC=/dev/null from="$usuario_mail ($usuario_nombre)" \ smtp-use-starttls= ssl-verify=ignore smtp=$server_smtp \ nss-config-dir=/home/$username/.pki/certs \ smtp-auth=login smtp-auth-user=$usuario_mail \ smtp-auth-password=$contras_mail \ mailx -n -s "$asunto" $destinatario < $f_mensaje
consulta.c
/*****************************************
consulta.c
Programa para La Consulta
Me han propuesto lo siguiente:
Necesitaríamos cada día una serie de SIETE números del uno al seis -se pueden repetir cifras –Ej: 2451223–. Sin pensártelo demasiado, los primeros que te vengan a la cabeza.
Pero esto me parece tremendamente difícil de lograr
pues escribir siete números sin pensarlo (demasiado) me resulta imposible,
así que he escrito el siguiente programa para obtener 7 dígitos
del 1 al 6 sin pensarlo en absoluto… aunque no es lo mismo, lo sé.
*****************************************/
#include
#define NUM_DIGITOS 7
#define CIFRA_MAX 6
#define CIFRA_MIN 1
main()
{
int cifra;
char numero[NUM_DIGITOS] = "1234567";
srand (time(NULL));
for (cifra = 0; cifra < NUM_DIGITOS; cifra++) { numero[cifra] = rand() % (CIFRA_MAX-CIFRA_MIN+1) + (CIFRA_MIN); // Convierto cada dígito a caracter para tratarlo como una cadena numero[cifra] = '0' + numero[cifra]; }; printf("%s\n", numero); }