$ pipx install jetforce
-$ jetforce --dir build/gmi/
+$ jetforce --dir build/gmi/ --host 0.0.0.0
$ amfora localhost:1965
#!/usr/bin/env python3
+import datetime
import os
import shutil
+import textwrap
-def build():
- shutil.rmtree("build", ignore_errors=True)
- os.makedirs("build/gmi")
+class Post:
+ def __init__(self, slug, content):
+ self.content = content
+ self.slug = slug
+
+ @property
+ def title(self):
+ return self.content.splitlines()[0][2:]
+
+ @property
+ def posted(self):
+ return datetime.date.fromisoformat(self.content.splitlines()[1])
+
+ @property
+ def uri(self):
+ yyyy = self.posted.strftime("%Y")
+ mm = self.posted.strftime("%m")
+ return f"{yyyy}/{mm}/{self.slug}"
+
+
+ def __repr__(self):
+ return f"Post(slug={self.slug},title={self.title},posted={self.posted}"
+
+
+def load_posts():
+ posts = []
for directory, _, files in os.walk("content"):
for file in files:
if file.endswith("gmi"):
- new_dir = f"build/gmi/{directory[8:]}"
- os.makedirs(new_dir, exist_ok=True)
- shutil.copyfile(f"{directory}/{file}", f"{new_dir}/{file}")
+ with open(f"{directory}/{file}") as old_file:
+ posts.append(Post(file[:-4], old_file.read()))
else:
# FIXME
pass
+ return posts
+
+
+def create_index(posts):
+ with open("build/gmi/index.gmi", "w") as index:
+ index.write(textwrap.dedent("""
+ # El blog es mío
+
+ Hay otros como él, pero este es el mío
+ """))
+
+ for post in posts[0:10]:
+ index.write(textwrap.dedent(f"""
+ => {post.uri} {post.title}
+
+ """))
+
+ post_lines = post.content.splitlines()
+
+ index.write("\n".join(post_lines[1:]))
+ index.write("\n\n")
+
+ index.write(textwrap.dedent("""
+ # Sobre mí
+
+ => https://github.com/alexpdp7/ GitHub
+ => https://es.linkedin.com/in/alexcorcoles LinkedIn
+ => https://projecteuler.net/profile/koalillo.png Project Euler
+ => https://stackexchange.com/users/13361/alex Stack Exchange
+ => https://twitter.com/koalillo Twitter
+
+ # El resto...
+ """))
+
+
+
+ for post in posts[10:]:
+ index.write(textwrap.dedent(f"""
+ => {post.uri} {post.title}
+ """)[:-1])
+
+def create_individual_posts(posts):
+ for post in posts:
+ os.makedirs(f"build/gmi/{post.uri}", exist_ok=True)
+ with open(f"build/gmi/{post.uri}/index.gmi", "w") as post_file:
+ post_file.write(textwrap.dedent("""
+ => / El blog es mío
+
+ """))
+ post_file.write(post.content)
+ post_file.write(textwrap.dedent("""
+
+ # Volver al inicio
+
+ => / El blog es mío
+ """))
+
+
+def build():
+ shutil.rmtree("build", ignore_errors=True)
+ os.makedirs("build/gmi")
+
+ posts = load_posts()
+ create_index(sorted(posts, key=lambda p: p.posted, reverse=True))
+ create_individual_posts(posts)
if __name__ == "__main__":
build()
--- /dev/null
+# Dos pes, dos eles
+2010-04-25
+
+Ya sé que a estas alturas todo el mundo debe estar harto de las versiones a cappella.
+
+Sin embargo, me veo obligado a enlazar a Van Canto[1]. Nota, hacen muchos más grupos.
+
+
+=> http://www.youtube.com/watch?v=BEwNrjvNiYs 1: http://www.youtube.com/watch?v=BEwNrjvNiYs
\ No newline at end of file
--- /dev/null
+# Inauguración
+2010-04-10
+
+Por fin, mi blog oficial, donde si la vagancia lo permite, iré metiendo cosas de los más variopintos temas.
\ No newline at end of file
--- /dev/null
+# JCR, Modeshape, programación web en general
+2010-04-10
+
+Una cosa muy habitual requerida de un programador es realizar páginas web. La programación web, a un nivel muy alto, particularmente se preocupa de dos cosas:
+
+* Generar contenido- usualmente HTML[1]- en respuesta a una petición HTTP[2] para una URL[3]. Es decir, cuando en nuestro navegador introducimos http://www.google.com[4][5], los servidores de Google nos responden con un HTML con la página de búsqueda de Google.
+* Procesar formularios. Tecleo la entrada de este blog en el interfaz de administración; cuando le doy a "Publicar", los datos del formulario se envían al sistema de mi blog, que los procesa y los introduce en la base de datos del blog.
+
+Hoy nos ocuparemos, en parte, de lo primero.
+
+¿Cómo almacenamos el contenido de nuestra web?
+
+Una primera aproximación sencilla es guardarlo en el sistema de archivos. Algo tan sencillo como guardar el HTML en carpetas del servidor funciona casi sin esfuerzo- simplemente le decimos a nuestro servidor web que para cada petición HTTP busque un fichero con la misma ruta y nombre que la petición y lo sirva al usuario.
+
+Lógicamente, normalmente esto no es suficiente. Por ejemplo, no queremos repetirnos continuamente con la cabecera y pie de nuestra página web en cada HTML que creamos. Aquí, cosas tan sencillas como los server-side includes[6], el PHP[7] o cualquier cosa con directiva "include" puede bastar.
+
+Otro problema que plantea esta alternativa es su falta de versatilidad. Una evolución lógica (y popular) es guardar los contenidos en una base de datos, típicamente una que use SQL[8] (básicamente, una base de datos relacional[9]). Creamos un esquema de datos de la información que queremos mostrar en nuestra página (por ejemplo, entradas de blog, usuarios, categorías, etc.) y programamos una serie de páginas que, en función de la URL que nos piden, recupera la información de la base de datos y crea un HTML con esa información.
+
+Esta mecánica es profundamente popular, y una parte muy significante de la web actual está implementada de esta manera.
+
+Sin embargo, la opción más popular, las bases de datos SQL, no son apropiadas para todos los contenidos que queramos mostrar en una web. Las bases de datos suelen representar datos altamente estructurados, con esquemas rígidos (es decir, un usuario tiene un nombre, email; una entrada de blog tiene título, autor, fecha de modificación, cuerpo, etc.), y los sistemas de presentación web basados en bases de datos SQL suelen ser por consecuencia, rígidos. Esto en muchas ocasiones no es especialmente problemático, en otras es fastidioso pero soportable y en ocasiones, puede ser muy incómodo.
+
+Lógicamente surgen alternativas a las bases de datos SQL; el movimiento NoSQL[10] abandera a toda una serie de bases de datos no relacionales que se oponen a usar SQL. Normalmente, por motivos erróneos y en gran medida motivados por la existencia de MySQL[11], probablemente la menos relacional y SQLifica base de datos popular que existe.
+
+Por mucho que uno opine que la mayoría de argumentos que esgrimen los defensores del NoSQL, uno sí piensa que pueden existir cosas mejores para almacenar contenidos para web. Una tecnología interesante en este sentido es Java Content Repository[12], un mecanismo de almacenaje de información muy adecuado para el contenido web. Unas cuantas características de los repositorios JCR son:
+
+* Jerárquico. Los contenidos (nodos) de JCR se organizan en una jerarquía, directamente identificable con la jerarquización típica de las URLs del contenido web
+* Versionado/con espacios de trabajo. Podemos almacenar todas las versiones que vayan habiendo del contenido, y disponer de varios espacios de trabajo paralelos (e.g. el espacio de trabajo público, un espacio de trabajo de borradores, etc.)
+* Con metadatos. Podemos almacenar metadatos sobre el contenido (autor, fecha de publicación, etc.) de una manera flexible
+
+Así pues, en principio, JCR parece un sistema muy útil de cara a almacenar información web. Lo interesante de JCR es que es sólo una API, con varias implementaciones. Así, un repositorio JCR podría guardar su información en una base de datos SQL, en una NoSQL o en cualquier cosa que se le ocurre al implementador.
+
+Y es aquí donde aparece Modeshape[13] de JBoss[14]. Modeshape es un JCR cuyo almacenaje es flexible. Más bien, JCR es una librería para implementar JCRs. Podemos implementar JCRs que cojan los datos de una base de datos, de otro JCR, de una fuente de datos NoSQL, de lo que sea. Y también nos permite unificar varios JCRs y acceder a ellos como si fueran uno.
+
+Esto es harto interesante. Muchas aplicaciones web quieren recoger datos de diversas fuentes- algunas preexistentes y otras que se crean ad-hoc para la aplicación web en cuestión. Mediante Modeshape, podemos unificar el acceso a estas fuentes de dato, creando un adaptador a JCR que nos permita acceder a todos los datos que requerimos presentar vía web, mediante un mecanismo especialmente adecuado para su presentación web.
+
+Para completar una aplicación web- o al menos su parte de presentación de contenidos, sólo necesitaríamos añadir algo que exponga el repositorio JCR que creamos a la web, lo cual sería algo interesante a comentar otro día.
+
+
+=> http://en.wikipedia.org/wiki/HTML 1: http://en.wikipedia.org/wiki/HTML
+=> http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol 2: http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol
+=> http://en.wikipedia.org/wiki/Uniform_Resource_Locator 3: http://en.wikipedia.org/wiki/Uniform_Resource_Locator
+=> http://www.google.com 4: http://www.google.com
+=> http://www.google.com 5: http://www.google.com
+=> http://en.wikipedia.org/wiki/Server_Side_Includes 6: http://en.wikipedia.org/wiki/Server_Side_Includes
+=> http://en.wikipedia.org/wiki/PHP 7: http://en.wikipedia.org/wiki/PHP
+=> http://en.wikipedia.org/wiki/SQL 8: http://en.wikipedia.org/wiki/SQL
+=> http://en.wikipedia.org/wiki/Relational_database_management_system 9: http://en.wikipedia.org/wiki/Relational_database_management_system
+=> http://en.wikipedia.org/wiki/NoSQL 10: http://en.wikipedia.org/wiki/NoSQL
+=> http://www.mysql.com/ 11: http://www.mysql.com/
+=> http://en.wikipedia.org/wiki/Content_repository_API_for_Java 12: http://en.wikipedia.org/wiki/Content_repository_API_for_Java
+=> http://www.jboss.org/modeshape 13: http://www.jboss.org/modeshape
+=> http://www.jboss.org 14: http://www.jboss.org
\ No newline at end of file
--- /dev/null
+# La muerte del floppy
+2010-04-26
+
+> The company sold about 12 million 3.5" floppies in Japan last year, which represents 70 percent of that market (and incidentally, about 17TB of data capacity)
+Extraído del artículo de Ars Technica sobre la muerte del floppy[1].
+
+
+=> http://arstechnica.com/gadgets/news/2010/04/the-once-ubiquitous-floppy-finally-being-axed-by-sony.ars 1: http://arstechnica.com/gadgets/news/2010/04/the-once-ubiquitous-floppy-finally-being-axed-by-sony.ars
\ No newline at end of file
--- /dev/null
+# Mejoras en Google Docs
+2010-04-14
+
+Es bien conocida mi afición por las hojas de cálculo- esa herramienta de programación funcional[1] frecuentemente mal empleada como base de datos[2] que es fácilmente comprensible.
+
+Así pues, celebro profundamente las mejoras introducidas por Google recientemente en la hoja de cálculo de Google Docs[3]. Si aún no le habéis dado al botón de nueva versión (arriba, al lado de vuestro usuario)- la gran ventaja para mí es que ya no tenemos que editar y visualizar las fórmulas de las celdas en la misma celda (lo cual era harto incómodo, ya que el espacio era extremadamente reducido), sino que disponemos de un cuadro dedicado en la barra de herramientas como en el Excel.
+
+
+=> http://en.wikipedia.org/wiki/Functional_programming 1: http://en.wikipedia.org/wiki/Functional_programming
+=> http://en.wikipedia.org/wiki/Relational_database_management_system 2: http://en.wikipedia.org/wiki/Relational_database_management_system
+=> http://googledocs.blogspot.com/2010/04/preview-faster-more-feature-rich-google.html 3: http://googledocs.blogspot.com/2010/04/preview-faster-more-feature-rich-google.html
\ No newline at end of file
--- /dev/null
+# Prepartido - Ghost in the Shell 2 - Innocence
+2010-04-10
+
+Vimos y criticamos Ghost in the Shell 2[1].
+
+
+=> http://es.groups.yahoo.com/group/laspelis/message/1077 1: http://es.groups.yahoo.com/group/laspelis/message/1077
\ No newline at end of file
--- /dev/null
+# Sobre el título de este blog
+2010-04-11
+
+Según el Panhispánico de Dudas[1]:
+
+> Por lo tanto, solo cuando en una oración exista riesgo de ambigüedad porque el demostrativo pueda interpretarse en una u otra de las funciones antes señaladas, el demostrativo llevará obligatoriamente tilde en su uso pronominal. Así, en una oración como la del ejemplo siguiente, únicamente la presencia o ausencia de la tilde en el demostrativo permite interpretar correctamente el enunciado: *¿Por qué compraron aquéllos libros usados?* (*aquéllos* es el sujeto de la oración); *¿Por qué compraron aquellos libros usados?* (el sujeto de esta oración no está expreso, y *aquellos* acompaña al sustantivo *libros*).
+Así pues, cada vez que empleamos este, ese, aquel, etc., como pronombres, los amigos de la RAE esperan de nosotros que pensemos si hay ambigüedad posible; es incorrecto escribirlo con tilde si no la hay (o al menos eso interpreta un servidor).
+
+Algo parecido pasa con solo/sólo- que cuando yo estudiaba, llevaba tilde siempre que podía ser sustituido por solamente, pero ahora sigue un criterio similar.
+
+Decidí con solo/sólo rebelarme y escribir sólo con acento siempre que pueda sustituirse por solamente, y lo mismo voy a hacer con los demostrativos, y de ahí el título de este blog.
+
+
+=> http://buscon.rae.es/dpdI/SrvltGUIBusDPD?origen=RAE&lema=tilde2#321 1: http://buscon.rae.es/dpdI/SrvltGUIBusDPD?origen=RAE&lema=tilde2#321
\ No newline at end of file
--- /dev/null
+# Sonidos galácticos
+2010-04-11
+
+Una búsqueda sobre Saul Bass[1] me ha llevado al ya conocido reinvento de los créditos de Star Wars a su estilo[2], y de ahí a este interesante vídeo sobre los mejores efectos de sonido de Star Wars[3]. Si bien la elección es discutible (¿¡dónde está Chewbacca!?), celebro el reconocimiento al increíble trabajo de Ben Burtt[4], creador de algunos de los sonidos más icónicos y reconocibles de la historia.
+
+Si desean saber más, recomiendo encarecidamente Galactic Phrase Book & Travel Guide: Beeps, Bleats, Boskas, and Other Common Intergalactic Verbiage[5], un libro en dos partes ilustrado por el enorme Sergio Aragonés[6] que no sólo contiene una *muy útil* guía lingüística del universo Star Wars (la contraportada reza: "A *must have* when traveling without your protocol droid"), sino que viene seguida por un repaso a la creación de estos sonidos, donde podremos descubrir quién es Chewie, dónde está el sonido de encendido de un sable de luz y mil cosas más fascinantes.
+
+
+=> http://en.wikipedia.org/wiki/Saul_Bass 1: http://en.wikipedia.org/wiki/Saul_Bass
+=> http://www.youtube.com/watch?v=z25t-PQDn5A 2: http://www.youtube.com/watch?v=z25t-PQDn5A
+=> http://www.youtube.com/watch?v=TLmM87r1ft4 3: http://www.youtube.com/watch?v=TLmM87r1ft4
+=> http://en.wikipedia.org/wiki/Ben_Burtt 4: http://en.wikipedia.org/wiki/Ben_Burtt
+=> http://www.amazon.com/Galactic-Phrase-Book-Travel-Guide/dp/0345440749 5: http://www.amazon.com/Galactic-Phrase-Book-Travel-Guide/dp/0345440749
+=> http://en.wikipedia.org/wiki/Sergio_Aragon%C3%A9s 6: http://en.wikipedia.org/wiki/Sergio_Aragon%C3%A9s
\ No newline at end of file
--- /dev/null
+# Carta abierta a la directiva de la Cadena Ser
+2010-05-15
+
+A: redaccion@cadenaser.com[1]
+
+Muy señores míos,
+
+Me dirijo a ustedes como oyente fiel de Carrusel Deportivo. Quizá hace más de 10 años que escucho el programa, impulsado por mi madre y mi hermano, también grandes fans de Carrusel. Carrusel me ha acompañado durante todo este tiempo innumerables fines de semana, donde la voz de sus locutores ha estado a mi lado, informándome sobre el fútbol, entreteniendo y animándome.
+
+El motivo de este email, como supongo imaginarán, es la falta de Paco González en la dirección de Carrusel. Hasta donde sé, no han publicado ustedes los motivos de su destitución, así que tengo que guiarme por lo que he oído en otros medios- que se trata de una desavinencia entre Paco y un directivo de la cadena.
+
+Les invito a reconsiderar la decisión. Como todo el mundo sabe, Paco es el alma y espíritu de Carrusel. Yo no entiendo la existencia de nuestro Carrusel sin su auténtico padre. Estoy escuchándolo ahora mismo y tengo una sensación de vacío que seguro comparten conmigo muchos otros. Supongo que si esta decisión es permamente e irrevocable, acabaré acostumbrándome, pero quizás no. No sé si ustedes perderán oyentes, publicidad o si bien no tendrá mayor repercusión sobre su negocio. No sé si tienen ustedes en cuenta otros criterios no empresariales como la sensación de familia, comunidad y otros vínculos emocionales que nosotros, sus oyentes, sí tenemos. En cualquier caso, espero que, por un motivo u otro, Paco González vuelva a Carrusel si así lo desea. Yo, personalmente, quiero transmitirles mi descontento con esta situación y mi opinión que no creo que cualquiera que sea la situación, su destitución sea lo más apropiado, ni en el aspecto de negocio, ni en el humano- y si es un motivo de egos, creo que el orgullo y la tozudez nunca han llevado a nadie a buen puerto.
+
+Con la esperanza de que reconsideren sus decisiones, me despido para escuchar su programa- quién sabe si una de las últimas veces que lo hago.
+
+Un saludo cordial de un oyente,
+
+Alejandro Córcoles Briongos
+
+Barcelona, 15 de mayo de 2010
+
+
+=> mailto:redaccion@cadenaser.com 1: mailto:redaccion@cadenaser.com
\ No newline at end of file
--- /dev/null
+# En el aire esta noche
+2010-05-07
+
+Admitidlo, Love is in the Air[1] es el mejor vídeo que no habéis visto nunca.
+
+
+=> http://www.youtube.com/watch?v=VioZUDUAaMg 1: http://www.youtube.com/watch?v=VioZUDUAaMg
\ No newline at end of file
--- /dev/null
+# Literalmente, el último meme
+2010-05-30
+
+Me he perdido la última *tendencia* internetística. Tenéis la que más me ha llamado aquí[1]; el related y esta búsqueda[2] os debería servir para encontrar al resto.
+
+
+=> http://www.youtube.com/watch?v=lj-x9ygQEGA 1: http://www.youtube.com/watch?v=lj-x9ygQEGA
+=> http://www.youtube.com/results?search_type=videos&search_query=literal+video+version&search_sort=video_view_count&suggested_categories=23,10&uni=3 2: http://www.youtube.com/results?search_type=videos&search_query=literal+video+version&search_sort=video_view_count&suggested_categories=23,10&uni=3
\ No newline at end of file
--- /dev/null
+# Paradigmas y otros enigmas
+2010-05-18
+
+Ya apuntamos en otro lugar al Alan Moore manchego[1]. Supongo que sólo se podía superar con un episodio dirigido por Lars Von Trier[2]. Si hay alguna reacción estilo Gaiman[3], pueden pasar cosas inauditas.
+
+
+=> http://www.youtube.com/watch?v=OoRoE8DeQxc 1: http://www.youtube.com/watch?v=OoRoE8DeQxc
+=> http://www.youtube.com/watch?v=Aiby3rCLtrY 2: http://www.youtube.com/watch?v=Aiby3rCLtrY
+=> http://twitter.com/neilhimself/status/10996651634 3: http://twitter.com/neilhimself/status/10996651634
\ No newline at end of file
--- /dev/null
+# PS3 Metalera
+2010-05-25
+
+Supongo que soy el último en enterarme de la existencia de Brütal Legend[1], pero no podía dejar de mencionarlo aquí.
+
+
+=> http://en.wikipedia.org/wiki/Br%C3%BCtal_Legend 1: http://en.wikipedia.org/wiki/Br%C3%BCtal_Legend
\ No newline at end of file
--- /dev/null
+# Bañeras históricas
+2010-06-30
+
+Un mensaje[1] en el muy recomendable para f1riquis Joe Saward's Grand Prix Blog[2], me ha llevado a ver este vídeo[3], que me ha recordado a este otro vídeo absolutamente *épico*[4]. Ni se le acerca, pero no está nada mal.
+
+
+=> http://joesaward.wordpress.com/2010/06/30/3725/ 1: http://joesaward.wordpress.com/2010/06/30/3725/
+=> http://joesaward.wordpress.com/ 2: http://joesaward.wordpress.com/
+=> http://www.youtube.com/watch?v=6tQCXE7DDuc 3: http://www.youtube.com/watch?v=6tQCXE7DDuc
+=> http://www.youtube.com/watch?v=1_kwxzU4wL4 4: http://www.youtube.com/watch?v=1_kwxzU4wL4
\ No newline at end of file
--- /dev/null
+# Café y olé
+2010-06-27
+
+Java 4-Ever[1]. Sólo para friquis. Y friquis de Java.
+
+
+=> http://www.youtube.com/watch?v=A1zySeNpW20 1: http://www.youtube.com/watch?v=A1zySeNpW20
\ No newline at end of file
--- /dev/null
+# Casi, pero sin plátano
+2010-06-23
+
+Enumeración en la Wikipedia sobre descubrimientos múltiples[1] (a raíz de recordar que el famoso RSA[2] en realidad lo inventó Cocks[3]).
+
+
+=> http://en.wikipedia.org/wiki/List_of_multiple_discoveries 1: http://en.wikipedia.org/wiki/List_of_multiple_discoveries
+=> http://en.wikipedia.org/wiki/RSA 2: http://en.wikipedia.org/wiki/RSA
+=> http://en.wikipedia.org/wiki/Clifford_Cocks 3: http://en.wikipedia.org/wiki/Clifford_Cocks
\ No newline at end of file
--- /dev/null
+# catarsis
+2010-06-16
+
+> **catarsis****.**
+>
+> (Del gr. κάθαρσις, purga, purificación).
+> 1. f. Entre los antiguos griegos, purificación ritual de personas o cosas afectadas de alguna impureza.
+> 2. f. Efecto que causa la tragedia en el espectador al suscitar y purificar la compasión, el temor u horror y otras emociones.
+> 3. f. Purificación, liberación o transformación interior suscitados por una experiencia vital profunda.
+> 4. f. Eliminación de recuerdos que perturban la conciencia o el equilibrio nervioso.
+> 5. f. *Biol.* Expulsión espontánea o provocada de sustancias nocivas al organismo.
+O, en lenguaje fílmico, esto[1] (ojo, semi-spoiler de la muy recomendable Trabajo Basura[2]).
+
+
+=> http://www.youtube.com/watch?v=UFS06Z0CCpk 1: http://www.youtube.com/watch?v=UFS06Z0CCpk
+=> http://en.wikipedia.org/wiki/Office_Space 2: http://en.wikipedia.org/wiki/Office_Space
\ No newline at end of file
--- /dev/null
+# Citas célebres
+2010-06-17
+
+> The fundamental cause of the trouble is that in the modern world the stupid are cocksure while the intelligent are full of doubt.
+>
+> --Bertrand Russell
\ No newline at end of file
--- /dev/null
+# Cosas dignas de un auténtico musicólogo
+2010-06-30
+
+The Dynamics - 7 Nation Army[1]
+
+
+=> http://www.youtube.com/watch?v=CdAP8M7-5Ro 1: http://www.youtube.com/watch?v=CdAP8M7-5Ro
\ No newline at end of file
--- /dev/null
+# Ejercicio (1)
+2010-06-26
+
+Ida (kml[1]) (gpx[2]) (pdf[3]) (Google Maps[4]):
+
+```html
+<table><tbody><tr><td>User</td><td>Alex</td></tr><tr><td>Activity</td><td>Running</td></tr><tr><td>Route</td><td></td></tr><tr><td>Start time</td><td>26/06/2010 16:19:18</td></tr><tr><td>Duration</td><td>00:23:51.53</td></tr><tr><td>Distance</td><td>3.31 km</td></tr><tr><td>Speed avg</td><td>8.3 km/h</td></tr><tr><td>Speed max</td><td>17.1 km/h</td></tr><tr><td>Pace avg</td><td>7:11 min/km</td></tr><tr><td>Pace max</td><td>3:30 min/km</td></tr></tbody></table>
+```
+
+Vuelta (la mitad no se ha grabado por cuelgue) (kml[5]) (gpx[6]) (pdf[7]) (Google Maps[8]):
+
+```html
+<table><tbody><tr><td>User</td><td>Alex</td></tr><tr><td>Activity</td><td>Running</td></tr><tr><td>Route</td><td></td></tr><tr><td>Start time</td><td>26/06/2010 21:28:02</td></tr><tr><td>Duration</td><td>00:10:00.86</td></tr><tr><td>Distance</td><td>1.53 km</td></tr><tr><td>Speed avg</td><td>9.2 km/h</td></tr><tr><td>Speed max</td><td>23.9 km/h</td></tr><tr><td>Pace avg</td><td>6:33 min/km</td></tr><tr><td>Pace max</td><td>2:30 min/km</td></tr></tbody></table>
+```
+
+[PDF generado con uTrack[9]]
+
+
+=> http://alex.corcoles.net/ejercicio/W20100626161918.kml 1: http://alex.corcoles.net/ejercicio/W20100626161918.kml
+=> http://alex.corcoles.net/ejercicio/W20100626161918.gpx 2: http://alex.corcoles.net/ejercicio/W20100626161918.gpx
+=> http://alex.corcoles.net/ejercicio/W20100626161918.pdf 3: http://alex.corcoles.net/ejercicio/W20100626161918.pdf
+=> http://maps.google.com/maps/ms?ie=UTF8&hl=en&t=h&msa=0&msid=103974499629351874569.000489f7142486d6dcbed&ll=41.454371,2.181258&spn=0.022226,0.045447&z=15 4: http://maps.google.com/maps/ms?ie=UTF8&hl=en&t=h&msa=0&msid=103974499629351874569.000489f7142486d6dcbed&ll=41.454371,2.181258&spn=0.022226,0.045447&z=15
+=> http://alex.corcoles.net/ejercicio/W20100626212802.kml 5: http://alex.corcoles.net/ejercicio/W20100626212802.kml
+=> http://alex.corcoles.net/ejercicio/W20100626212802.gpx 6: http://alex.corcoles.net/ejercicio/W20100626212802.gpx
+=> http://alex.corcoles.net/ejercicio/W20100626212802.pdf 7: http://alex.corcoles.net/ejercicio/W20100626212802.pdf
+=> http://maps.google.com/maps/ms?ie=UTF8&hl=en&t=h&msa=0&ll=41.453438,2.183833&spn=0.022226,0.045447&z=15&msid=103974499629351874569.000489f72668126d86d28 8: http://maps.google.com/maps/ms?ie=UTF8&hl=en&t=h&msa=0&ll=41.453438,2.183833&spn=0.022226,0.045447&z=15&msid=103974499629351874569.000489f72668126d86d28
+=> http://utrack.crempa.net/ 9: http://utrack.crempa.net/
\ No newline at end of file
--- /dev/null
+# El secreto, revelado
+2010-06-09
+
+=> images/misterio_senor_de_los_anillos.jpg Impreso en papel fabricado a partir de mujeres ent [IMG]
+[1]
+
+... es un libro muy largo, para un escritor tan enamorado del medio ambiente...
+
+
+=> http://alex.corcoles.net/wp-content/uploads/2010/06/misterio_senor_de_los_anillos.jpg 1: http://alex.corcoles.net/wp-content/uploads/2010/06/misterio_senor_de_los_anillos.jpg
\ No newline at end of file
--- /dev/null
+# Grandes filósofos
+2010-06-30
+
+Hobbes & Calvin[1]
+
+
+=> http://www.thehighdefinite.com/2010/06/hobbes-calvin/ 1: http://www.thehighdefinite.com/2010/06/hobbes-calvin/
\ No newline at end of file
--- /dev/null
+# Grandes jugadores de la Juve
+2010-06-23
+
+Hoy, la máquina de Turin[1]*g[2]* original[3] hubiera cumplido 98 años.
+
+> Thousands of people have come together to demand justice for Alan Turing and recognition of the appalling way he was treated. While Turing was dealt with under the law of the time and we can't put the clock back, his treatment was of course utterly unfair and I am pleased to have the chance to say how deeply sorry I and we all are for what happened to him ... So on behalf of the British government, and all those who live freely thanks to Alan's work I am very proud to say: we're sorry, you deserved so much better
+>
+> -- Gordon Brown[4]
+
+=> http://en.wikipedia.org/wiki/Alan_Turing 1: http://en.wikipedia.org/wiki/Alan_Turing
+=> http://en.wikipedia.org/wiki/Alan_Turing 2: http://en.wikipedia.org/wiki/Alan_Turing
+=> http://en.wikipedia.org/wiki/Alan_Turing 3: http://en.wikipedia.org/wiki/Alan_Turing
+=> http://webarchive.nationalarchives.gov.uk/+/number10.gov.uk/news/latest-news/2009/09/treatment-of-alan-turing-was-appalling-pm-20571 4: http://webarchive.nationalarchives.gov.uk/+/number10.gov.uk/news/latest-news/2009/09/treatment-of-alan-turing-was-appalling-pm-20571
\ No newline at end of file
--- /dev/null
+# Jesús Gil Personal
+2010-06-07
+
+La versión de Cash de Hurt[1] venía con cara B... Depeche Mode por un yayo con marcha[2].
+
+
+=> http://www.youtube.com/watch?v=SmVAWKfJ4Go&feature=related 1: http://www.youtube.com/watch?v=SmVAWKfJ4Go&feature=related
+=> http://www.youtube.com/watch?v=jQcNiD0Z3MU 2: http://www.youtube.com/watch?v=jQcNiD0Z3MU
\ No newline at end of file
--- /dev/null
+# Vulnerabilidades en instalación por defecto de osCommerce v2.2 RC2a
+2010-06-30
+
+Una pequeña nota para compañeros del gremio:
+
+> Una instalación por defecto de la última versión de osCommerce (v2.2 RC2a) contiene agujeros de seguridad en la configuración por defecto que permiten a un atacante adquirir control sobre la tienda
+Aparentemente la práctica recomendada es aplicar los consejos de seguridad explicados en este mensaje en un foro[1], el agujero de seguridad está detallado en este otro mensaje del mismo foro[2] y como guinda, comentaré que existen consultoras que trabajan esta tienda que no están al tanto de este agujero.
+
+
+=> http://forums.oscommerce.com/topic/313323-how-to-secure-your-site/ 1: http://forums.oscommerce.com/topic/313323-how-to-secure-your-site/
+=> http://forums.oscommerce.com/topic/351671-the-major-security-hole-that-has-been-the-buzz-spam-loginphp-exploit/ 2: http://forums.oscommerce.com/topic/351671-the-major-security-hole-that-has-been-the-buzz-spam-loginphp-exploit/
\ No newline at end of file
--- /dev/null
+# El preocupante descenso de las aspiraciones académicas
+2010-07-01
+
+=> http://eucaliptus.ath.cx/~alex/marsugal/Otras/objetivo_aprobar.jpg?height=400 Libros de repaso veraniego cuyo objetivo es aprobar [IMG]
\ No newline at end of file
--- /dev/null
+# Otro preocupante descenso
+2010-07-06
+
+=> http://eucaliptus.ath.cx/~alex/marsugal/Otras/multes_per_orinar_i_defecar.jpg?height=400 multes per orinar i defecar a l'espai públic. des de 180€ fins a 1.125€ [IMG]
\ No newline at end of file
--- /dev/null
+# Peroratas balompédicas
+2010-07-13
+
+Una inquietante intriga de fútbol, Clemente y entradas por detrás; en otras palabras, los antecedentes del Iniestazo[1].
+
+Desgraciadamente, en esta época más de 140 caracteres es TLDR[2], pero les invito a que desafíen a la era contemporánea.
+
+
+=> http://www.lapaginadefinitiva.com/2010/07/13/el-parto-de-los-montes/ 1: http://www.lapaginadefinitiva.com/2010/07/13/el-parto-de-los-montes/
+=> http://en.wiktionary.org/wiki/TLDR 2: http://en.wiktionary.org/wiki/TLDR
\ No newline at end of file
--- /dev/null
+# Reseña Nokia C5
+2010-07-08
+
+Tras la muerte, resurrección y agonía de mi LG Viewty, que me hizo volver a mi querido y robusto Nokia 6234, decidí finlandizarme un poco más y hacerme con un Nokia C5[1]. El ruso ha hablado[2], al igual que GSMArena[3]- ambos tienen fotos, detalles y cosas, pero me veo obligado a aportar mi granito de arena.
+
+Para entrar en situación
+
+* Formato "candybar" con pantalla 240x320 de 2,2" y teclado numérico
+* Cámara "full-focus" de 3,2MP con flash
+* 3,5G, pero no WLAN
+* Sistema Operativo Symbian S60 3.2
+* Radio, GPS, conector de audio 3,5mm, microUSB (admite carga por USB), microSD
+
+Mi experiencia con la (supongo que inferior a la media) pantalla táctil del Viewty, me apetecían teclas físicas. Tras S40 y el límitado sistema operativo del Viewty, me apetecía algo más. Siendo un agarrado, me apetecía algo barato. Y sobre todo, quería algo ligero.
+
+El C5 es quizá la versión moderna del 6234; mejor sistema operativo (S60 en vez de S40), mejor cámara (más MP, más flash), GPS... ¡y todo por un precio inferior! Respecto a los móviles de moda, el C5 aporta bajo precio (159€) combinado con sistema operativo medianamente avanzado y teclado físico- una combinación prácticamente inexistente en el mercado.
+
+El móvil tiene un diseño sobrio, con un teclado numérico grande, una delgadez respetable y una construcción mayormente sólida, con un buen peso del aparato; la única nota discordante es que en mi ejemplar la tapa de la batería no encaja perfectamente y tiene juego, pero por lo demás, el móvil da sensación de calidad.
+
+Lógicamente por este precio el móvil ha de tener limitaciones. La pantalla no es para tirar cohetes, echo en falta un teclado QWERTY y para navegar, no iría mal una pantalla táctil. S60 no es lo más estable del mundo y la batería no dura tanto como hacían pensar las reseñas.
+
+Si no usamos datos, el móvil puede alargar su vida un par de días- con un uso ligero de internet (i.e. email, algo de navegación), podemos conseguir un día y medio. El GPS, la reproducción de audio y vídeo y un uso intensivo de internet (i.e. mensajería instantánea durante periodos prolongados) pueden hacer que se nos acabe la batería más rápido, pero aún así me parece que el C5 está un poco por encima de los teléfonos de moda que llegan a casa pidiendo la hora.
+
+El uso del móvil es muy agradable. Si no fuera por una cierta inestabilidad, el móvil es muy ágil (tiene más procesador que un N97 y mueve una pantalla de menor resolución) y S60 es espartano y muy personalizable- en especial, los atajos de teclado que podemos tener con el teclado numérico son muy, muy útiles.
+
+La entrada de texto cuenta con escritura predictiva T9, que funciona muy bien y además cuenta con dos cosas muy buenas:
+
+* Diccionario catalán
+* Idioma secundario- podemos definir un idioma secundario de entrada de texto y la escritura predictiva usará ambos diccionarios- dando preferencia al primario
+
+Si bien parece que un teclado QWERTY decente (o incluso un SWYPE táctil) es lo mejor de lo mejor, gracias a esto y buenos atajos de teclado para introducir símbolos, el teclado numérico es bastante para casi todo. En particular, el lenguaje dual hace que sólo tengamos que tirar de escritura no predictiva para nombres propios.
+
+El navegador está basado en Webkit, trae Flash y si bien no es muy rápido, funciona más que correctamente. A destacar que la versión móvil que nos ofrece Google Reader para este móvil es perfectamente utilizable. Los atajos de teclado no acaban de compensar la falta de pantalla táctil- es navegando donde más echamos de menos poder tocar los enlaces y desplazarnos a dedo.
+
+El cliente de correo también es correcto, me permite sincronizar varias cuentas IMAP y trabajar con ellas decentemente. Aunque aparentemente Nokia ofrece correo push mediante Nokia Messaging[4], he sido incapaz de hacerlo funcionar. Hay un cierto "push" mediante (creo) IMAP IDLE que funciona cuando corremos la aplicación de correo (aunque sea en segundo plano).
+
+La agenda de contactos está muy bien, se integra con Facebook y permite una sincronización bastante indolora con OVI, los servicios online de Nokia- se agradece poder gestionar y editar los contactos vía web en el PC. El calendario también sincroniza con OVI, pero echo en falta sincronización con Google Calendar que es el sistema que uso; estoy evaluando GoogaSync[5] para compensar esto.
+
+También viene una aplicación GPS, con mapas y navegación por voz para coche gratuitos. Funciona bastante decentemente, aunque supongo que la falta de pantalla táctil y la minipantalla juegan bastante en su contra para su uso para conducción. También podemos poner Google Maps y disfrutar del Street View (aunque aún no le hemos encontrado mucha utilidad).
+
+Luego vienen un puñado de aplicaciones para redes sociales y similares- en realidad sólo he probado la de Facebook, que es correcta.
+
+En el aspecto multimedia, hay un reproductor de MP3 normalillo, pero que gracias a la presencia del jack de audio de 3,5 es bastante útil, al igual que la radio que cuenta con RDS. También podremos reproducir vídeos, aunque queda al criterio de cada uno si vale la pena dado el tamaño de la pantalla.
+
+La cámara es decente y cumple lo que le pido- poder sacar fotos de las cosas curiosas con las que me voy tropezando para meterlas en este blog; ni más, ni menos.
+
+En cuanto a aplicaciones Symbian, de momento estoy usando:
+
+* Sports Tracker[6], que uso cuando corro y ando para grabar las rutas y tiempos
+* PuTTY for Symbian OS[7], un cliente de SSH más que aceptable para Symbian. Pese a la falta de teclado QWERTY, es sorprendentemente usable
+* Fring[8], un cliente de mensajería (MSN, Google Talk, etc.), con anuncios y no 100% estable, pero que funciona más o menos bien. Permite unificar varios contactos de diferentes protocolos, lo cuál es bastante práctico. La alternativa es Nimbuzz[9], que no permite esta unificación pero que soporta mensajería de Facebook, o el sistema OVI que aún no he conseguido hacer funcionar
+* Frodo[10], un emulador de C64 bastante curioso que me debería servir para suplir la falta de juegos para S60
+* Custom Dictionary[11], un útil programa de los Nokia Beta Labs[12] que permite editar las palabras que añadimos al diccionario T9- algo que siempre se echa en falta en otros móviles cuando añadimos palabras incorrectas al diccionario, algo muy molesto
+* Nokia Energy Profiler[13], una curiosa aplicación de Nokia para ver cómo está consumiendo el móvil- en el que se descubre que el móvil aguantaría meses sin necesitar de carga si no fuese por las conexiones a red.
+
+En definitiva, un móvil barato al que le podemos exprimir bastante (email, web, multimedia, GPS), siempre inferior a los modelos más lujosos pero compitiendo en cuanto a calidad/precio. Gustará especialmente a los fans de Symbian y detractores de las pantallas táctiles, así como los que miran más el precio.
+
+
+=> http://europe.nokia.com/find-products/devices/nokia-c5-00/specifications 1: http://europe.nokia.com/find-products/devices/nokia-c5-00/specifications
+=> http://www.mobile-review.com/review/nokia-c5-en.shtml 2: http://www.mobile-review.com/review/nokia-c5-en.shtml
+=> http://www.gsmarena.com/nokia_c5-review-474.php 3: http://www.gsmarena.com/nokia_c5-review-474.php
+=> http://email.nokia.com 4: http://email.nokia.com
+=> http://www.googasync.com/ 5: http://www.googasync.com/
+=> http://www.sports-tracker.com/ 6: http://www.sports-tracker.com/
+=> http://s2putty.sourceforge.net/ 7: http://s2putty.sourceforge.net/
+=> http://www.fring.com/ 8: http://www.fring.com/
+=> http://www.nimbuzz.com/ 9: http://www.nimbuzz.com/
+=> http://koti.mbnet.fi/~haviital/index.shtml?projects_frodo 10: http://koti.mbnet.fi/~haviital/index.shtml?projects_frodo
+=> http://betalabs.nokia.com/apps/nokia-custom-dictionary 11: http://betalabs.nokia.com/apps/nokia-custom-dictionary
+=> http://betalabs.nokia.com/ 12: http://betalabs.nokia.com/
+=> http://www.forum.nokia.com/Library/Tools_and_downloads/Other/Nokia_Energy_Profiler/ 13: http://www.forum.nokia.com/Library/Tools_and_downloads/Other/Nokia_Energy_Profiler/
\ No newline at end of file
--- /dev/null
+# y ni siquiera te gustan los hombres
+2010-08-26
+
+Ur So Gay[1] no es sólo una interesante tonadilla con letra descacharrante, también es un videoclip absolutamente "épico"[2].
+
+Nota, no son barbies, son fashion royalty[3].
+
+
+=> http://en.wikipedia.org/wiki/Ur_So_Gay 1: http://en.wikipedia.org/wiki/Ur_So_Gay
+=> http://www.youtube.com/watch?v=tWbLkXhGEmo 2: http://www.youtube.com/watch?v=tWbLkXhGEmo
+=> http://www.integritytoys.com/page/brands/name:fashion_royalty 3: http://www.integritytoys.com/page/brands/name:fashion_royalty
\ No newline at end of file
--- /dev/null
+# Cómo crear un escritorio Linux remoto de dominio
+2010-09-02
+
+En alguna ocasión nos puede ser útil crear un sistema que corre un entorno de escritorio y está siempre encendido. Por ejemplo, queremos que usuarios acostumbrados a un entorno gráfico puedan ejecutar tareas largas desacopladas de su terminal.
+
+Dentro del mundo Microsoft bastante dominante en las empresas, la opción sencilla es crear una máquina con Terminal Server activado y permitir su acceso remoto. Sin embargo, un Windows Server con TS y una licencia normalita (pero aún así, de coste) sólo admite dos usuarios concurrentes. Si no tenemos presupuesto o un buen acuerdo de licencias, puede salirnos bastante caro dar acceso a unos cuantos usuarios.
+
+Una alternativa que podemos usar es la siguiente:
+
+* Instalar una distribución Linux (en mi caso concreto, Ubuntu Lucid Lynx[1]- una versión LTS[2] ya que soy fan de los ciclos de soporte largos)
+* Instalar FreeNX[3], un sistema de escritorio remoto de rendimiento bastante similar al escritorio remoto de Microsoft (en mi caso concreto, esto es una buena guía para instalar FreeNX en Ubuntu[4], de muy poquitos pasos)
+
+Con esto, escribiendo una pequeña guía de configuración de un cliente de NX para los usuarios, conseguiremos lo que queremos. Si hacemos que el servidor de NX sea accesible vía Internet, nuestros usuarios podrán conectarse desde cualquier sitio, ejecutar sus programas, desconectarse y volverse a reconectar en cualquier sitio, recuperando todo en el estado en que lo dejaron.
+
+Si nuestro entorno utiliza los popularísimos dominos de Windows Server para gestionar los usuarios, podemos añadir integración al dominio de Windows para que los usuarios puedan utilizar sus credenciales del dominio para acceder al sistema. En el caso que nos ocupa, aquí explican como usar likewise-open para realizar esta tarea en muy pocos pasos en Ubuntu[5].
+
+Como bonus, los usuarios podrán acceder automáticamente a recursos de red con sus privilegios de Windows, como carpetas de red.
+
+
+=> https://wiki.ubuntu.com/LucidLynx 1: https://wiki.ubuntu.com/LucidLynx
+=> https://wiki.ubuntu.com/LTS 2: https://wiki.ubuntu.com/LTS
+=> http://freenx.berlios.de/ 3: http://freenx.berlios.de/
+=> https://help.ubuntu.com/community/FreeNX 4: https://help.ubuntu.com/community/FreeNX
+=> http://www.mabishu.com/blog/2010/07/27/joining-ubuntu-lucid-lynx-to-active-directory/ 5: http://www.mabishu.com/blog/2010/07/27/joining-ubuntu-lucid-lynx-to-active-directory/
\ No newline at end of file
--- /dev/null
+# Recuperación de archivos .pst
+2010-09-02
+
+Outlook debería morir, pero muchos se niegan a lo que es correcto. Outlook sin Exchange es una combinación particularmente letal por muchos motivos.
+
+Dicho esto, en alguna ocasión alguien puede verse en el brete de tener que recuperar un archivo .pst (donde los Outlook sin Exchange guardan correo local). Los motivos son muchos, y la herramienta scanpst.exe[1] puede resolver bastantes. A veces el asunto se complica, especialmente si se trata un .pst de formato "antiguo" y este supera los 2gb. En esta situación, es bastante sencillo verse obligado a usar esta herramienta de Microsoft para truncar destructivamente el archivo[2] y poderlo recuperar con .pst (proceso harto entretenido, ya que operar con archivos de 2gb suele ser bastante lento y podemos necesitar varios intentos de truncado antes de tener éxito).
+
+Pero, aún usando estas dos herramientas, podemos hallarnos en casos donde no funcionan y es absolutamente necesario recuperar el archivo. Existen herramientas de pago, pero las ignoro idiosincráticamente.
+
+Existe un procedimiento que he usado exitosamente una vez que consiste en lo siguiente:
+
+1. Usar el programa readpst[3] para convertir el .pst en archivos mbox
+2. Utilizar un servidor de correo IMAP como puede ser Dovecot[4] para mostrar estos mbox como una cuenta de correo IMAP
+3. Usar la interesante herramienta IMAPSize[5] para hacer una copia de seguridad de esta cuenta IMAP, lo que nos genera una jerarquía de carpetas en nuestro sistema de archivos con los mensajes individuales en formato .eml
+4. Recrear la jerarquía de carpetas en Windows Live Mail[6] y arrastrar los archivos .eml a su sitio en ésta
+5. Usar la funcionalidad de exportar de Windows Live Mail para meter estos datos en el .pst predeterminado de Outlook (que previamente habremos creado y asignado)
+
+Si seguimos estos pasos, al cabo de un buen rato (el 4 es especialmente tedioso), 4 programas diferentes y probablemente 2 sistemas operativos, y sin coste, tendremos como resultado un .pst que nos salve la vida.
+
+Nota, es probable que los pasos se puedan optimizar. En teoría, readpst puede generar archivos .eml, pero a mi no me ha funcionado (probablemente por nombres irregulares de las carpetas del pst), saltándonos varios pasos. También podríamos intentar automatizar el doloroso paso 4, pero de momento no lo he conseguido.
+
+
+=> http://support.microsoft.com/kb/287497 1: http://support.microsoft.com/kb/287497
+=> http://support.microsoft.com/kb/296088 2: http://support.microsoft.com/kb/296088
+=> http://www.five-ten-sg.com/libpst/ 3: http://www.five-ten-sg.com/libpst/
+=> http://www.dovecot.org/ 4: http://www.dovecot.org/
+=> http://www.broobles.com/imapsize/ 5: http://www.broobles.com/imapsize/
+=> http://explore.live.com/windows-live-mail 6: http://explore.live.com/windows-live-mail
\ No newline at end of file
--- /dev/null
+# Darth Vader y 19 más
+2010-10-25
+
+Por favor, desfagan el entuerto de la encuesta de la IMDb de hoy[1]. El enlace a posteriori[2] si llegan tarde.
+
+
+=> http://www.imdb.com/poll/ 1: http://www.imdb.com/poll/
+=> http://www.imdb.com/poll/results/2010-10-25 2: http://www.imdb.com/poll/results/2010-10-25
\ No newline at end of file
--- /dev/null
+# De los productores que vieron Matrix
+2010-10-19
+
+El futuro apocalíptico pronosticado por la visionaria Vivancos III[1] está aquí. El spot de TV de The Town[2] proclama "del estudio de Infiltrados[3]"...
+
+
+=> http://www.imdb.com/title/tt0283123/ 1: http://www.imdb.com/title/tt0283123/
+=> http://www.imdb.com/title/tt0840361/ 2: http://www.imdb.com/title/tt0840361/
+=> http://www.imdb.com/title/tt0407887/ 3: http://www.imdb.com/title/tt0407887/
\ No newline at end of file
--- /dev/null
+# Parejas de baile
+2010-10-30
+
+El mundial de F1 está prácticamente cerrado y, salvo debacle de última hora, el sr. Alonso se llevará su tercer campeonato. Aun a falta de dos carreras, creo que ya podemos lanzar un poco de opinión sobre los pilotos.
+
+Sólo tres equipos han conseguido ganar carreras este año; Red Bull (7), Ferrari (5) y McLaren (5), así que nos centraremos en el análisis de los pilotos de estas escuderías- de todos los demás hay poco que decir, sólo Kubica ha hecho algo digno de mención.
+
+### Las decepciones
+
+Para mi, Webber y Button. Button confirma lo que pensábamos- tiene un título gracias a Ross Brawn y su afilado ojo jurista. Sus 6 victorias en las 7 primeras carreras de la temporada 2009 son desde luego dignas de mención, pero a partir de ahí, sólo tiene dos victorias esta temporada, en dos carreras con pinchazos importantes de Ferrari y Red Bull.
+
+Webber, más de lo mismo. No nos engañemos, es el único que tiene una (mínima) posibilidad de arrebatarle el título a Alonso, pero aunque ciertamente le ha plantado cara al orden establecido de Red Bull... ¿realmente ha aportado algo en carrera? La madurez le ha servido para imponerse a Vettel, pero tengo la sensación que un Vettel con un par de años más se lo hubiese comido con patatas.
+
+### Los impedidos
+
+Vettel pese a estar en su tercera temporada en la F1 (y yo casi ni contaría su etapa en Toro Rosso) nos confirma su status de serio aspirante. En el intervalo entre el derrape de Webber en Corea y su fumata blanca, estuvo en una posición envidiable para haberse quedado totalmente favorito para el título. Lógicamente gran parte del mérito se debe a que el Red Bull es eso que se denomina técnicamente "pepino" (14/17 poles, por favor), pero creo que Vettel ha conseguido dar más muestras de talento en carrera que el veterano Webber.
+
+Massa ha quedado último de entre los seis pilotos que comento- supongo que por favoritismo le incluyo aquí, pero también porque es el que ha plantado más cara a los dos pilotos que me faltan por comentar. En 2008, ganó más carreras que el campeón Hamilton y se quedó a un punto de un mundial disputadísimo (con un par de victorias echadas por la borda por el equipo). También creo que es alguien que (irregularmente) aporta en carrera- en las ocasiones que su equipo ha salido atrás, ha remontado igual o mejor que su compañero de equipo.
+
+### Los buenos
+
+Alonso se llevará el mundial de este año. Podemos verlo en una óptica amable (el Ferrari ha estado muy flojo gran parte de la temporada) o en una desfavorable (ha tirado de órdenes de equipo [cuando al final, dudo que vayan a marcar ninguna diferencia], ha cometido errores graves y cuando ha hecho falta, ha tenido mucha suerte [¡Corea!]). Pero en todo caso, tiene 2,9 mundiales y aunque creo que su imagen está mucho más hinchada de lo que es sano, pocos actualmente están a su altura.
+
+El otro es, como no podía ser de otra manera, Hamilton. Con el, en mi opinión, coche más flojo de los tres equipos relevantes ha sacado un resultado bastante meritorio. Eso, junto con sus dos primeras temporadas de escándalo en la Formula 1 hacen que merezca estar aquí. Hamilton hace cosas en carrera, y no son tantos los que se arriesgan a hacerlas.
\ No newline at end of file
--- /dev/null
+# Cola fotográfica
+2010-11-14
+
+[caption id="" align="aligncenter" width="375" caption="Una entidad bancaria desconocida para mi"]
+=> http://eucaliptus.ath.cx/~alex/marsugal/Otras/pichincha.jpg?height=500 Foto del banco Pichincha [IMG]
+[/caption]
+
+[caption id="" align="aligncenter" width="300" caption="Llamadas felinas"]
+=> http://eucaliptus.ath.cx/~alex/marsugal/Otras/telefono_gatuito.jpg?height=400 Anuncio de compramos oro con teléfono gatuito [IMG]
+[/caption]
+
+[caption id="" align="aligncenter" width="300" caption="Me pregunto de qué estarán hechos los demás"]
+=> http://eucaliptus.ath.cx/~alex/marsugal/Otras/queso_lacteo.jpg?height=400 Foto de sobre de queso elaborado con leche [IMG]
+[/caption]
\ No newline at end of file
--- /dev/null
+# Misiones imposibles...
+2010-11-10
+
+La encuesta de la IMDb[1]. Yo he votado a nananana-nananana-nananana-nananana-nananana-nananana-nananana-nananana-nananana-¡Batmáaaan!
+
+
+=> http://uk.imdb.com/poll/results/2010-11-10 1: http://uk.imdb.com/poll/results/2010-11-10
\ No newline at end of file
--- /dev/null
+# Teorías de flechas y rayas
+2010-11-02
+
+Una nota mental: yEd es un editor de diagramas fantástico[1].
+
+
+=> http://www.yworks.com/en/products_yed_about.html 1: http://www.yworks.com/en/products_yed_about.html
\ No newline at end of file
--- /dev/null
+# Database in Depth - Relational Theory for Practitioners
+2010-12-12
+
+Database in Depth es un libro del mítico C. J. Date[1], que ha publicado una barbaridad de libros sobre bases de datos relacionales.
+
+Yo me hallaba buscando un libro para avanzar mis conocimientos de bases de datos; principalmente para mejorar los diseños de esquemas y la manera de trabajar con ellos- seguramente desde un punto de vista teórico pero aplicable a nivel práctico.
+
+En casi todos los mentideros de Internet le dirigen a uno hacia los libros de Date. La complicación es escoger uno, ya que aparentemente todos tienen temáticas y contenidos muy similares. Finalmente, me decidí por Database in Depth porque todo parecía indicar que era el que mejor ajustaba a mis intenciones.
+
+En realidad, ahora creo que no lo es.
+
+Database in Depth parte de la definición estricta del modelo relacional, enunciando y rebatiendo errores populares en la interpretación de las sagradas escrituras de Codd[2], y apuntando todos los pecados del SQL y sus implementaciones. Esto es interesante, ya que lo hace señalando las inconsistencias del SQL (por ejemplo, defiende la tesis de que NULL no debería existir, a partir de contradicciones derivadas de su uso) y sus carencias.
+
+Esto tiene un interés práctico, ya que posiblemente se puedan conseguir mejores (y sobre todo, más puros) modelos de datos intentándonos ajustar al modelo relacional verdadero, pero tiene el peligro de que, realmente, no existen implementaciones de éste. En efecto, Date defiende la intercambiabilidad de tablas y vistas, pero pocos gestores de bases de datos implementan actualizaciones sobre vistas, con lo que no se puede explotar este concepto como se debiera (e intentarlo puede llevarnos por el mal camino).
+
+Date también trata temas de normalización, y su explicación es clara e interesante, y llena de argumentos nuevos para mi contra la popular denormalización (por ejemplo, apunta a las dificultades de escribir consultas correctas sobre esquemas denormalizados que estoy seguro que se le han escapado a más de uno), y que son bastante más aplicables a las implementaciones existentes.
+
+En cuanto a la redacción del libro, Date es conciso y claro. No tiene miedo de expresar sus opiniones, pero creo que especifica muy bien cuando está siendo subjetivo. El tratamiento matemático de la teoría puede asustar a alguno, pero es completo y comprensible.
+
+A parte de esto, el libro se me ha quedado corto. El libro no trata (o al menos yo no he sabido extraerlo) temas que me interesaban como el uso de claves artificiales, las consultas y la programación en general sobre bases de datos. A pesar de ello, los 19 eurillos que cuesta son relativamente económicos para un libro técnico, y al menos el contenido teórico ya los vale.
+
+
+=> http://en.wikipedia.org/wiki/Christopher_J._Date 1: http://en.wikipedia.org/wiki/Christopher_J._Date
+=> http://en.wikipedia.org/wiki/Edgar_F._Codd 2: http://en.wikipedia.org/wiki/Edgar_F._Codd
\ No newline at end of file
--- /dev/null
+# Emergentes bibliotecas emergidas
+2010-12-07
+
+=> http://eucaliptus.ath.cx/~alex/marsugal/Otras/biblioteca.jpg?height=450 libros de informática apilados [IMG]
+
+Adelantos, el Accelerated C++[1] está al nivel del K&R[2] y C++[3] es mu complejo.
+
+
+=> http://www.acceleratedcpp.com/ 1: http://www.acceleratedcpp.com/
+=> http://cm.bell-labs.com/cm/cs/cbook/ 2: http://cm.bell-labs.com/cm/cs/cbook/
+=> http://en.wikipedia.org/wiki/C%2B%2B 3: http://en.wikipedia.org/wiki/C%2B%2B
\ No newline at end of file
--- /dev/null
+# The Mythical Man Month and Other Essays on Software Engineering - Anniversary Edition
+2010-12-12
+
+Pocos libros tienen la fama y popularidad de The Mythical Man Month. Hace tiempo ya que quería leer este libro sobre la ingeniería del software y aprovechando la destrucción de fronteras de Amazon Reino Unido, me hice con mi copia.
+
+The Mythical Man Month es una colección de ensayos sobre la construcción de programas inspirada en gran medida por el trabajo el autor, Frederick Brooks en el desarrollo de OS/360, el sistema operativo del System/360 de IBM (del paleolítico de los 60). Brooks analiza sus experiencias, las contrasta con las de otros colegas y ofrece su opinión. Por mucho que nos separan casi 40 años de la fecha de publicación de la primera edición del libro, pocas ideas del libro han quedado obsoletas (en esta edición especial de aniversario, el autor añade al libro contenido comentando estos aspectos). Las predicciones de Brooks, que parten de un análisis de qué factores de la ingeniería del software eran limitaciones de los sistemas de la época y cuáles eran problemas intrínsecos, son precisas, y son reconfirmadas en "No Silver Bullet", un ensayo suyo del 86 añadido al libro en el que postula que no existen las soluciones "milagro".
+
+Lógicamente, sí que hay muchas partes del libro que resultan ridículas hoy en día (discusiones sobre microfilms, como encajar programas en la limitada capacidad de las máquinas de los 60, etc.), y ciertas partes de sus argumentos han quedado obsoletas por las prácticas modernas- si bien es cierto que podemos rastrear los orígenes de estas novedades en propuestas de Brooks en el libro- es interesante re-analizar todas estas nuevas tendencias en el campo tras haber leído The Mythical Man Month.
+
+Otra crítica que se podría dirigir al libro (y que de hecho Brooks recibió, tal como explica en el libro), es que gran parte de él es "sentido común". Ciertamente, sí (y más en este siglo), pero sigue siendo necesario escribir el sentido común en algún sitio, y además, hay muchísimo en el libro que refuerza este sentido común- pruebas, estudios, razonamientos, etc.- que le dan más fuerza y vitalidad. Brooks también aporta mucho más que sentido común; sus ideas sobre composición de equipos son claras y razonadas, e imbuirnos de su filosofía es útil y valioso.
+
+Además, Brooks tiene estilo escribiendo. Los ensayos se enlazan naturalmente, sabe darles vida mediante sus vivencias y consigue que el libro no sea aburrido y que las ideas nos lleguen frescas a la cabeza.
+
+En definitiva, me uno al corrillo de gente que ha leído el libro y, quién sabe, puede que al de los que aplican sus ideas.
\ No newline at end of file
--- /dev/null
+# Capitán Obvio y sus aliteraciones
+2011-01-23
+
+> Scott directed an adaptation of Robin Hood titled Robin Hood, which starred Russell Crowe as Robin Hood
+(extraído de la Wikipedia[1])
+
+
+=> http://en.wikipedia.org/wiki/Ridley_Scott 1: http://en.wikipedia.org/wiki/Ridley_Scott
\ No newline at end of file
--- /dev/null
+# De tal palo, tal astilla
+2011-01-22
+
+Un salvapantallas interesante o el diseñador del próximo Batmóvil[1]
+
+
+=> http://megaswf.com/serve/102223/ 1: http://megaswf.com/serve/102223/
\ No newline at end of file
--- /dev/null
+# De yuxtaposiciones y hombres
+2011-01-28
+
+La 2 ha contraprogramado Destino Eurovisión (emitido por TVE1) con Historia de la frivolidad[1], de Chicho, en un alarde de despiporre.
+
+
+=> http://www.imdb.com/title/tt0212223/combined 1: http://www.imdb.com/title/tt0212223/combined
\ No newline at end of file
--- /dev/null
+# Django o la fábrica de churros
+2011-01-08
+
+Programar aburre, porque tendemos a programar lo mismo una y otra vez. Así, muchos caen en la tentación de buscar en exceso maneras de reducir el código. Dijo Wirth que algoritmos más estructuras de datos igual a programas; y cabe añadir que en la mayoría de programación web, poco algoritmo hay- así que con definir el esquema de datos, poco más deberíamos hacer, ¿no?
+
+Estos días me he encontrado frente a una web sencilla, pero que a mi juicio no era adecuada realizarla con un CMS (puede que en gran parte porque no he encontrado un CMS que me guste) y me he decidido a probar Django. Django es un framework Python cuyo lema es "batteries included"; alusión al hecho de que resuelve una gran parte de los problemas típicos de desarrollo web- cosa que certifico y a la que añado que los resuelve a mi gusto. El otro gran qué de Django es la interfaz administrativa que trae; mediante unas líneas declarativas, obtienes una web de gestión que permite añadir, editar, eliminar, etc. entidades del modelo de datos, reduciendo en una gran parte el trabajo que le queda a uno.
+
+¿A parte de esto, qué otras virtudes tiene Django?
+
+* Vistas genéricas. En particular, lista/detalle sobre los modelos de datos, resolviendo correctamente paginación, ordenación, filtrado, etc. Tiene también vistas y maquinaria para hacer CRUD, que supongo funcionan bien pero que no he usado
+* Usa HTML/HTTP "correcto" sin hacer cosas raras, añadir Javascripts innecesarios, serializaciones raras, etc. Todo muy limpio
+* Está documentado. No llega al nivel de Java o Spring, pero desde luego, comparado con Rails y otras estrellas de código libre...
+* No usa generación de código. Odiamos la generación de código.
+
+Pero también le encuentro algún que otro defecto:
+
+* Definimos los modelos en lenguaje "Django". Está bien, pero no es "SQL-completo". Hay modelos, restricciones, etc. que no podremos expresar en este modelo, como por ejemplo, claves primarias compuestas o "listas ordenadas" (relaciones 1-n con campo de ordenación). El lenguaje para consultas tiene las limitaciones típicas de todos los ORM.
+* No me gusta Python. Me gusta la sintaxis estilo C, y exijo grandes ventajas a los que la descartan. Me gusta el tipado estático, y no estoy seguro que haya mucha magia en Django que necesite realmente tipado dinámico. Me gusta que mi editor trabaje por mi.
+* El sistema de plantillas está muy bien, pero es "regular" y no "gramatical", con lo que no admite expresiones donde debería ni otras estructuras muy convenientes. JSP con fragmentos de tag es *muy* superior
+* Tengo la sospecha que el funcionamiento sobre JVM no será para tirar cohetes. Además, si nos interesa funcionar sobre JVM, nos tenemos que limitar a Django 1.1 y evitar 1.2 de momento.
+* En general el sistema de internacionalización está muy bien, pero no soporta internacionalización en el modelo de datos (i.e. campos multilingües en las entidades)
+* No viene con nada para hacer Javascript/AJAX, aunque seguramente no sería de mi agrado, claro
+
+A pesar de esto, creo que es el mejor "framework completo" que he visto. Como plataforma "básica", sigo prefiriendo Java + Spring + Servlets + JSP + JSTL, pero creo que Django puede tener un lugar bastante importante en el arsenal de un desarrollador web. La pregunta es, ¿cuál es ese lugar?
+
+En mi opinión, Django ofrece una velocidad de desarrollo elevadísima para proyectos pequeños y medianos (siempre que no nos topemos con alguno de sus problemas). Para cosas gordas y/o que no encajen bien en Django, es lo de siempre; ¿hacerlo de cero o partir de un framework? Hacerlo de cero lógicamente es más tiempo, pero uno acaba conociendo intimamente la plataforma que hace y está toda a su gusto; usar un framework nos puede ahorrar tiempo, pero al hurgar dentro, a saber qué nos encontramos. Sospecho que las entrañas de Django están muy bien, pero... la decisión sigue siendo difícil. Mi poco amor por Python hace que probablemente yo no vaya a a apostar por Django más que para proyectos rápidos, pero intuyo que para muchos será una decisión más que acertada.
\ No newline at end of file
--- /dev/null
+# Más palos y astillas
+2011-01-29
+
+Actualizando este post anterior[1], una versión evolucionada del evolucionador de vehículos[2].
+
+
+=> http://alex.corcoles.net/2011/01/de-tal-palo-tal-astilla/ 1: http://alex.corcoles.net/2011/01/de-tal-palo-tal-astilla/
+=> http://www.boxcar2d.com/ 2: http://www.boxcar2d.com/
\ No newline at end of file
--- /dev/null
+# Reacciones viscerales
+2011-01-22
+
+=> images/sensacion_estomago.png pinto se cae de la lista por problemas estomacales - revilla: "el barça es invencible salvo que haya comido mal" [IMG]
+[1]
+
+
+=> http://alex.corcoles.net/wp-content/uploads/2011/01/sensacion_estomago.png 1: http://alex.corcoles.net/wp-content/uploads/2011/01/sensacion_estomago.png
\ No newline at end of file
--- /dev/null
+# El hombre que dirigía demasiado
+2011-02-26
+
+Vimos y criticamos Cisne Negro[1].
+
+
+=> http://es.groups.yahoo.com/group/laspelis/message/1078 1: http://es.groups.yahoo.com/group/laspelis/message/1078
\ No newline at end of file
--- /dev/null
+# Maventuras
+2011-02-08
+
+Los que me conozcan sabrán que éste es un momento de derrota. Tras casi 9 años participando en proyectos de desarrollo Java, hoy he commitado a Subversion un pom.xml.
+
+La versión larga: voy a usar Maven profesionalmente.
+
+¿Qué es Maven, a todo esto? (los no informáticos, ya deberíais haber apagado hace tres párrafos).
+
+Maven es el estándar de facto para compilar (en moderno, hacer build-management) proyectos Java. Existe Ant (y otras cosas más modernas de las que hablaré más tarde), pero Ant es make, es una fantástica herramienta que puede hacer de todo, pero que por defecto, hace muy poco y, especialmente, no resuelve dos de las mayores pérdidas de tiempo en desarrollo Java:
+
+* Gestión de dependencias de terceros. Quieres usar Hibernate. Hibernate tiene como unas 15 dependencias directas, y algunas de esas dependencias tienen otras dependencias... resultado final, un ratito muy divertido descargando y colocando jars. Y, sobre todo, unas enormes ganas de actualizarse a versiones nuevas...
+* Dependencias entre proyectos. Uno quiere ser bueno y reusar código y modularizar. Poner las clases de utilidad que uno escribe siempre en un módulo que usen todos los proyectos. Hacer librerías de utilidad temáticas. Partir proyectos gordos en módulos separados. Pues bien, hacer un montaje que haga que el proyecto se pueda compilar automáticamente [pongamos con Ant] *y* que se integre propiamente en tu entorno [pongamos Eclipse], no es nada trivial. Queremos que al modificar una clase en un subproyecto, nos la cojan los proyectos de lo que depende. Esto, de hecho, es muy facilito de hacer en Eclipse... pero si quieres tener builds automáticos (pongamos, para hacer integración continua o barbaridades semejantes)... se complica el tema.
+
+Los primeros en solucionar esto, fueron los sres. de Maven, con dos elementos:
+
+* Un sistema para describir proyectos *declarativo* (Ant es imperativo), que contempla especificar dependencias
+* Un repositorio de librerías Java que contiene todas las librerías relevantes, con sus dependencias especificadas
+
+Con esto, yo puedo declarar que mi proyecto depende de Hibernate y Maven se descargará automágicamente todos los jars necesarios y los meterá en mi proyecto. Esto ya sería suficiente, pero Maven ofrece más cosas:
+
+* Arquetipos. Son una especie de plantillas de proyectos que te permiten crear proyectos típicos fácilmente (Eclipse ofrece algo similar, claro, pero Maven tiene más). Estos reducen, junto a la resolución de dependencias, permiten reducir bastante el coste de montar el esqueleto de un proyecto (nota: ¿más de lo que cuesta hacer funcionar Maven? No.). Estos arquetipos suelen estar bastante bien pensados (i.e. un arquetipo de proyecto web normalmente te generará un .war automáticamente, etc.).
+* Plugins. Todos esos programitas de unit testing, cobertura, análisis estático, etc. se ven traducidos en un plugin de Maven, que con añadirlo al descriptor del proyecto, ya se encarga de hacerlos funcionar casi automáticamente. Uno de estos plugins, por ejemplo, es el que te genera una mini-web de proyecto con documentación, javadocs, descargas, etc. que habréis visto mil veces si habéis visto webs de proyectos Java.
+
+Yo hasta ahora había evitado usar Maven. La primera vez, porque estaban en un momento de transición (de Maven 1 a 2, si no recuerdo mal), había poca documentación, la integración con Eclipse no parecía muy boyante y, por qué no decirlo, bastante NIH[1]. Acabé montando un sistema faraónico basado en Ant que si bien funcionaba como a mi me gustaba, era un poco pesado. Las veces siguientes, acabé reinventando mi pirámide, puliéndola a cada paso, pero haciéndola más complicada y aún no perfecta.
+
+Y hasta hoy hemos llegado. Se plantea la necesidad de compilar proyectos complejos. La diferencia esta vez es que hay menos libertad inventar cosas y poca voluntad de imponer el sistema a otros. Hora de jugar con Maven.
+
+El primer descubrimiento, parece que hay plugin de Eclipse como Dios manda. Como siempre, hay un inconveniente. Si queremos integración con sistemas de control de versiones, tenemos que instalar los extras, y hay una pequeña nota en la web que dice:
+
+> M2Eclipse extensions are available from separate "extras" update site, see Installing m2eclipse for more details. *Not all extensions are compatible with the latest M2Eclipse version.*
+Esto, lógicamente, hace que nos rompamos la cabeza hasta el infinito intentando instalar la compatibilidad con Subversive hasta leer este párrafo. La solución, instalar la versión 0.10.
+
+Hasta ahora, poco más. El descubrimiento es que la manera Maven de gestionar multiproyectos pasa por tener un repositorio propio, cuando opino que no sería estrictamente necesario (al menos en mi caso particular), así que probablemente tendremos que añadir al coste de aprendizaje y montaje de Maven el montar un repositorio (los hay desde muy simples- una carpeta compartida, a auténticos mastodontes).
+
+Para el futuro:
+
+* Ver si acierto pensando que el repositorio de Maven público es bastante caótico y problemático. Existe un repositorio de Maven de Springsource que tiene buena pinta, pero... ¿estará mucho mejor organizado? Probablemente, sí. ¿Estará todo lo que necesito allí? Probablemente no. ¿Será problemático mezclar el repositorio público y el de Spring? Seguramente.
+* Ver si la cosa funcionará como debe o si requerirá de cuidados.
+
+
+=> http://en.wikipedia.org/wiki/Not_Invented_Here 1: http://en.wikipedia.org/wiki/Not_Invented_Here
\ No newline at end of file
--- /dev/null
+# Rostros familiares
+2011-02-06
+
+15 años más tarde de hacer de "Animal Mother" en La Chaqueta Metálica[1], Adam Baldwin[2] encarnó a Jayne en Firefly[3].
+
+
+=> http://www.imdb.com/title/tt0093058/ 1: http://www.imdb.com/title/tt0093058/
+=> http://www.imdb.com/name/nm0000284/ 2: http://www.imdb.com/name/nm0000284/
+=> http://www.imdb.com/title/tt0303461/ 3: http://www.imdb.com/title/tt0303461/
\ No newline at end of file
--- /dev/null
+# Serias y caninas afecciones
+2011-02-26
+
+¿Cuál es la enfermedad que hace que uno se convierta en un doctor judío neoyorquino?
+
+La fleischmaniosis.
\ No newline at end of file
--- /dev/null
+# Sombrero blanco
+2011-02-07
+
+Los que tengáis ADSL con Movistar o Jazztel que no hayáis cambiado la clave original de encriptación del router, quizás querráis comprobar aquí[1] si vuestra clave es fácil de adivinar. La fuente, ./[2]
+
+Nota, puedo constatar que se trata de un problema real y grave. ¿Quiere saber más?
+
+
+=> http://kz.ath.cx/wlan/ 1: http://kz.ath.cx/wlan/
+=> http://espana.barrapunto.com/article.pl?sid=11/02/07/0412230 2: http://espana.barrapunto.com/article.pl?sid=11/02/07/0412230
\ No newline at end of file
--- /dev/null
+# Geek cuisine
+2011-03-19
+
+¿Existen cocineros geek por referencia? ¿Quién anda detrás de los pastelitos con temática de videojuego?
+
+Sin duda inspirado por el brillante KatHack[1], creo que debería servirse en toda fiesta geek un plato cubierto de delicias pegajosas y unas albóndigas de superficie adherente. ¿Dónde está Ferran Adrià cuando se le necesita?
+
+
+=> http://kathack.com/ 1: http://kathack.com/
\ No newline at end of file
--- /dev/null
+# Git, gitosis, gradle
+2011-03-13
+
+Dos apuntes rápidos.
+
+Uno. Los que se hayan visto atraídos por git, ese sistema de control de versiones distribuido tan molón se habrán dado cuenta que es un poco rollo montar un repositorio para que lo usen varias personas. Repositorios desnudos, autenticación UNIX, etc. ... son cosas que dan mucho palo. Resulta ser que existe una solución simple que es gitosis[1]. gitosis se instala fácilmente (está hasta en EPEL para los amigos de CentOS/RHEL) y resuelve muy rápidamente todos estos problemas.
+
+Dos. Pese a que admití que iba a usar Maven[2], como hobby me estoy mirando gradle[3]. Gradle es Ant[4], pero en Groovy[5] en vez de xml, añadiendo elementos de Maven como son la gestión de las dependencias (del famoso repositorio) y superándolo (al parecer) en asuntos como la gestión de proyectos interrelacionados. El defecto que le he visto hasta ahora es que no hay una integración obvia y potente con Eclipse como puede ser el soporte de Eclipse para Ant o ese callejon oscuro que es m2eclipse, pero por el momento parece proporcionar la potencia de Maven, pero con la sencillez de Ant y sin el cansancio del XML.
+
+
+=> http://scie.nti.st/2007/11/14/hosting-git-repositories-the-easy-and-secure-way 1: http://scie.nti.st/2007/11/14/hosting-git-repositories-the-easy-and-secure-way
+=> http://alex.corcoles.net/2011/02/maventuras/ 2: http://alex.corcoles.net/2011/02/maventuras/
+=> http://www.gradle.org/ 3: http://www.gradle.org/
+=> http://ant.apache.org/ 4: http://ant.apache.org/
+=> http://groovy.codehaus.org/ 5: http://groovy.codehaus.org/
\ No newline at end of file
--- /dev/null
+# Omniawesome
+2011-03-26
+
+Los que uséis Google Chrome y echéis en falta la *asombrosidad* de la Awesome Bar de Firefox[1], about:flags[2] y "Enable better omnibox history matching".
+
+
+=> http://blog.mozilla.com/blog/2008/04/21/a-little-something-awesome-about-firefox-3/ 1: http://blog.mozilla.com/blog/2008/04/21/a-little-something-awesome-about-firefox-3/
+=> about:flags 2: about:flags
\ No newline at end of file
--- /dev/null
+# Óscar, pero qué haces
+2011-03-25
+
+Hay gente que se sorprende que Pat Morita fuera nominado al Óscar al mejor actor de reparto en 1984 por su interpretación del sr. Miyagi en Karate Kid.
+
+La verdad, a mi me sorprende mucho más que Superdetective en Hollywood fuera nominada ese mismo año por mejor guión original.
+
+En general, por supuesto, suele sorprender mucho más mi ejemplo predilecto: las 10 nominaciones y 3 estatuillas para Rocky en 1976- incluyendo el premio a mejor película por delante de:
+
+* Taxi Driver
+* Todos los hombres del presidente
+* Network
+* Esta tierra es mi tierra
+
+... y una nominación que no llevó a victoria fue a mejor canción original por Gonna Fly Now[1], que perdió frente a Barbra Streisand.
+
+
+=> http://www.youtube.com/watch?v=ioE_O7Lm0I4 1: http://www.youtube.com/watch?v=ioE_O7Lm0I4
\ No newline at end of file
--- /dev/null
+# Una máquina según Turing
+2011-03-25
+
+Elbot[1], uno de los programas que más se ha acercado a pasar el test de Turing. Más que algunos humanos, diríase.
+
+
+=> http://www.elbot.com/ 1: http://www.elbot.com/
\ No newline at end of file
--- /dev/null
+# Alerces
+2011-04-03
+
+Nota mental:
+
+* Si queremos copiar grandes cantidades de correo de un servidor IMAP a otro, Larch[1] es la respuesta
+* Si disponemos de aún el más cutre servidor compartido donde lo podamos instalar, este tendrá más ancho de banda que nuestra ADSL doméstica y Larch irá más rápido
+
+
+=> https://github.com/rgrove/larch 1: https://github.com/rgrove/larch
\ No newline at end of file
--- /dev/null
+# Como un maldito replicante
+2011-04-21
+
+Me hallo en la enésima reorganización de mi preciado correo electrónico. Nada, abrirme un Google Apps Standard bajo un dominio propio mío, para poder gozar de algunas de las cosas de Google Apps (¿cuáles? No estoy seguro). Por supuesto, estoy aprovechando para reclasificar y agrupar correo, de manera que todos los preciosos mensajes estén almacenados centralizadamente (y duplicados).
+
+Para ello, estoy recogiendo el correo de todas mis cuentas de correo activas- que sin incluir una o dos direcciones que desaparecieron en el olvido, son:
+
+* La cuenta de correo de mi universidad, de la cuál no soy alumno desde hace más de 5 años, pero ahí sigue abierta
+* Mi cuenta personal, alex-arroba-corcoles-punto-net, en un alojamiento familiar compartido
+* Mi cuenta "secundaria" en fastmail.fm, que recién fueron comprados por Opera y siguen siendo uno de los pocos proveedores que dan cuentas IMAP gratuitas- si no podéis usar GMail por algún motivo o queréis una cuenta IMAP menos especial, los recomiendo
+* Mi cuenta en mi compañía de móvil- la cuál prometía push al móvil, pero que nunca he conseguido hacer funcionar
+* Mi cuenta de GMail, que utilizo para muchos servicios de Google, pero curiosamente uso relativamente poco para correo (en realidad, tenía mi cuenta de correo personal redirigida a GMail como archivo y para usar GMail de webmail donde no tengo Thunderbird)
+* Una cuenta alternativa de GMail
+
+Es interesante comprobar cosas como que apostar por IMAP desde el principio fue complicado, pero me ha permitido conservar correo casi sin esfuerzo- he recuperado correo hasta del 99, unos 11.000 mensajes de correo totalizando 685 megas (63kb por email). Lamentablemente, he podido cuantificar bastante correo enviado perdido- sólo conservo 2400 correos escritos por mi mismo. Los números están aquí[1], pequeña gráfica:
+
+=> https://spreadsheets.google.com/a/pdp7.net/spreadsheet/oimg?key=0Atd_0Z9UHnqJdDhzOGQ1T09PeWozX1pnVkVhNm1DMEE&oid=2&zx=2o7nzs59hs8k Uso de email anual [IMG]
+Puede apreciarse que, tras conseguir mi cuenta de Gmail (el 15/4/2004)... conservo bastante más correo y recibo más correo, in crescendo hasta hoy donde estoy de media en 6 emails diarios. En cambio desde 2004, parece ser que escribo menos; de 1,2 al día en 2004 hasta 0,8 en 2010.
+
+
+=> https://spreadsheets.google.com/a/pdp7.net/spreadsheet/pub?hl=en&hl=en&key=0Atd_0Z9UHnqJdDhzOGQ1T09PeWozX1pnVkVhNm1DMEE&single=true&gid=0&output=html 1: https://spreadsheets.google.com/a/pdp7.net/spreadsheet/pub?hl=en&hl=en&key=0Atd_0Z9UHnqJdDhzOGQ1T09PeWozX1pnVkVhNm1DMEE&single=true&gid=0&output=html
\ No newline at end of file
--- /dev/null
+# Hazañas informáticas I: Internet
+2011-04-21
+
+En los inicios, había muy poquitos ordenadores- grandes como habitaciones e increíblemente caros. Muchos de estos ordenadores tenían múltiples pantallas y teclados para que los pudiesen utilizar simultáneamente muchas personas y que se rentabilizasen mejor. Cada ordenador era un mundo en sí mismo. Algunos de estos ordenadores permitían la comunicación entre personas sentadas en diferentes terminales.
+
+Pronto, comenzaron a aparecer más y más ordenadores en el mundo. Algunos entes privilegiados podían disponer de varios ordenadores, y pronto surgió la necesidad de comunicarlos ente ellos; la capacidad de una máquina siempre nos es insuficiente y queremos realizar operaciones que aprovechen la capacidad de varios ordenadores.
+
+Éste es un problema de fácil solución; los ordenadores trabajan con impulsos eléctricos y con compartir un medio conductor (léase, un hilo de cobre conectado a dos ordenadores), estos pueden enviarse datos codificándolos como descargas eléctricas de una manera muy similar a como funciona un solo ordenador internamente.
+
+Este sistema ha funcionado perfectamente hasta el día de hoy- con no tantas evoluciones, existen hoy infinidad de redes con cientos de ordenadores comunicados a grandes velocidades entre sí mediante lo que es en esencia un hilo de cobre que pasa por todos ellos.
+
+El análogo humano es una habitación llena de personas hablando a viva voz. Todo el mundo puede oír a todo el mundo y se pueden realizar todo tipo de conversaciones- un profesor puede dar clase a cientos de alumnos que le escuchan; un montón de parejas pueden estar en una sala de baile hablando entre ellas y grupos de conversación pueden formarse y deshacerse fácilmente.
+
+Este esquema sencillo, lamentablemente, no funciona bien a gran escala. Intuitivamente vemos que compartir un solo cable de cobre entre una gran cantidad de ordenadores puede ser problemático. Nuestra sala con gente hablando deja de funcionar cuando las distancias son suficientes como para no oir- y si hay demasiada gente hablando, nace la confusión.
+
+Los genios de ARPANET no se aturullaron delante de estos problemas y encontraron una solución simple y efectiva para este problema. Las redes locales de unos cuantos ordenadores funcionan maravillosamente bien, dijeron; no hace falta abandonar ni complicar este modelo. Sencillamente, interconectemos las redes entre sí.
+
+Las comunicaciones locales pueden funcionar como hasta ahora. Lo único que tenemos que hacer es introducir unos dispositivos que tengan un pie en una red, y otro pie en otra. Cuando un ordenador en una red quiera comunicarse con otro ordenador en otra red, se dirigirá al dispositivo de su red que se comunica con otras redes y le entregará la información que quiere transmitir. Si el destinatario está en la otra red, el dispositivo no tiene más que entregárselo. Si no, lo único que tiene que buscar es otro dispositivo de este tipo que esté conectado con otra red que esté más cerca del destinatario y entregarle la información- así la información irá saltando de red en red hasta llegar a su destino.
+
+Esto, en esencia, es internet. El "inter" es de interconexión de redes. El modelo se completa con un sistema de direcciones universales, las famosas IP con las que se identifica a cada dispositivo que vive en Internet- y el sistema de puertos, que identifica en cada dispositivo varios puntos de envío y recepción de datos (un puerto para el correo electrónico, un puerto para el tráfico web, etc.). Encima de esto, el sistema DNS que hace que los humanos podamos usar nombres en vez de IPs numéricas para referirnos a los dispositivos que viven en Internet y los diferentes protocolos que rigen los diferentes servicios que funcionan sobre internet.
+
+Pese a que internet y su ecosistema asociado es infinitamente complejo, la gran virtud es que se basa en un modelo sencillo y elegante- simples redes locales interconectadas.
+
+Próximas entregas:
+
+* Hazañas informáticas II: el modelo de datos relacional
+* Hazañas informáticas III: La criptografía asimétrica
+* Hazañas informáticas IV: Las funciones hash
+* Hazañas informáticas V: Las máquinas de Turing y Von Neumann
+* Hazañas informáticas VI: el sistema UNIX
\ No newline at end of file
--- /dev/null
+# Hazañas informáticas II: el modelo de datos relacional
+2011-04-24
+
+Los primeros ordenadores se destinaron a la introducción y proceso de datos- no en vano los orígenes de IBM se remontan a la gestión del censo de habitantes de los Estados Unidos. Naturalmente, hasta el más primitivo de los sistemas de programación provee de primitivas de almacenamiento de datos, mecanismos sencillos para almacenar, organizar y acceder a datos en la memoria volátil del sistema (es decir, que estos datos se pierden al finalizar la ejecución del programa).
+
+Rápidamente, los programadores se ocuparon de implementar funcionalidades que almacenaban estos datos en algún soporte persistente, de manera que los datos se conserven entre ejecución y ejecución del programa, y diseñaron maneras de organizar los datos de manera que las operaciones que se quieren realizar con ellos se hagan de una manera eficiente.
+
+E. F. Codd, allá por 1969, planteó un sistema generalizado de almacenamiento y proceso de datos basado en unos principios muy sencillos.
+
+Codd se dio cuenta que la información que típicamente se quería procesar se podía particionar en hechos simples, del siguiente estilo:
+
+* La factura #1 es a nombre de Javier Sánchez, a fecha 3/12/2007
+* La factura #2 es a nombre de Lucía Martínez, a fecha 5/12/2007
+* ...
+* La línea 1 de la factura #32 es para "Mano de obra", precio 300€
+* La línea 2 de la factura #32 es para "Materiales", precio 450€
+
+Podemos escribir estos hechos de una manera compacta empleando dos tablas:
+
+```table
+┌───────────────────┬────────────────┬───────────┐
+│ Número de factura │ Nombre │ Fecha │
+╞═══════════════════╪════════════════╪═══════════╡
+│ 1 │ Javier Sánchez │ 3/12/2007 │
+├───────────────────┼────────────────┼───────────┤
+│ 2 │ Lucía Martínez │ 5/12/2007 │
+├───────────────────┼────────────────┼───────────┤
+│ ... │ ... │ ... │
+└───────────────────┴────────────────┴───────────┘
+```
+```table
+┌───────────────────┬───────┬──────────────┬──────────┐
+│ Número de factura │ Línea │ Concepto │ Cantidad │
+╞═══════════════════╪═══════╪══════════════╪══════════╡
+│ 32 │ 1 │ Mano de obra │ 300€ │
+├───────────────────┼───────┼──────────────┼──────────┤
+│ 32 │ 2 │ Materiales │ 450€ │
+├───────────────────┼───────┼──────────────┼──────────┤
+│ ... │ ... │ ... │ ... │
+└───────────────────┴───────┴──────────────┴──────────┘
+```
+Cuando usemos el modelo relacional, definiremos las "tablas" (relaciones) que usaremos en nuestra aplicación, especificando qué "columnas" (atributos) tendrán y qué tipo de valores podrán ponerse en cada columna (en el ejemplo anterior, números de factura, números de línea, nombres, conceptos, fechas y cantidades).
+
+Los sistemas de bases de datos relacionales nos permiten definir con precisión estas tablas, insertar valores, actualizarlos y realizar consultas sobre ellos (e.g. ¿cuál es la fecha del último pedido de Miguel Hernández?), sin preocuparnos de la implementación real de esta estructura de datos, su almacenamiento persistente ni los algoritmos de búsqueda para las consultas.
+
+El trabajo con las bases de datos relacionales se realiza a través de un lenguaje específico adaptado a ellas; el lenguaje más común se conoce como SQL (Structured Query Language) mediante el cuál podemos expresar cosas como:
+
+create table facturas ( numero_factura numero, nombre texto, fecha_factura fecha );
+
+Que define la tabla facturas con las columnas que hemos visto anteriormente, o:
+
+insert into facturas(numero_factura, nombre, fecha_factura) values (1, 'Javier Sánchez', 3/12/2007);
+
+, que nos permite insertar uno de los hechos que hemos tabulado antes y consultas como:
+
+select max(fecha) from facturas where nombre = 'Miguel Hernández';
+
+a la que nos referíamos anteriormente.
+
+Fijémonos que estas consultas son "declarativas", es decir que no hablan de cómo se deben almacenar estos datos ni realizarse estas operaciones, sino que sólo dicen "qué se quiere hacer".
+
+Un siguiente paso interesante en el trabajo con estas relaciones es darnos cuenta que podemos trabajar con varias tablas simultáneamente que comparten información. Por ejemplo, podríamos preguntarnos cuánto se ha gastado Ana Jiménez en concepto de mano de obra entre todos sus pedidos; la tabla de pedidos nos dice qué facturas corresponden a Ana Jiménez y la tabla de líneas de facturas nos dice qué líneas de factura son de mano de obra y por qué cantidad- podemos asociar las dos tablas mediante la columna número de factura presente en ambas. Mediante una sencilla abstracción matemática, podemos realizar consultas y operaciones sobre varias tablas utilizando las posibles asociaciones que haya entre ellas.
+
+Como el modelo relacional es tremendamente abstracto, es apropiado para una gran cantidad de aplicaciones. Así pues, se han desarrollado implementaciones de bases de datos que utilizan el modelo relacional que podemos usar en nuestros programas en vez de tener que "reinventar la rueda" del almacenamiento de datos constantemente. Además, resulta que toda "mejora" que se introduzca en una de estas implementaciones se aprovecha inmediatamente por todas las aplicaciones que usen la implementación. Por ejemplo, las operaciones entre varias tablas se pueden beneficiar de técnicas de optimización que hacen que las bases de datos sean muchísimo más rápidas que las implementaciones simples de estas operaciones.
+
+Adicionalmente, las aplicaciones se benefician de otras características de los sistemas de gestión de base de datos, como son:
+
+* Restricciones de integridad. Podemos definir en la base de datos restricciones que deben cumplir los datos para considerarse correctos. Por ejemplo, una factura para ser correcta debe incluir un número correcto, un nombre y una fecha válida, evitando que se puedan introducir datos inválidos. Más allá, podemos decir cosas más interesantes como que el número de factura de una línea de factura debe corresponder a un número de factura en la tabla de facturas.
+* Transacciones. Muchas veces una serie de operaciones sobre una base de datos deben realizarse en conjunto o no realizarse. Por ejemplo, una transferencia bancaria debe incluir un cargo en la cuenta origen y un ingreso en la cuenta destino; claramente si una de las dos operaciones falla, la otra no puede realizarse.
+
+Estas y otras facilidades que ofrecen las bases de datos no son triviales de implementar, y el hecho de poder aprovechar la implementación de la base de datos nos permite desarrollar nuestra aplicación más rápidamente sin tenernos que preocupar de estos complicados detalles.
+
+Hoy en día, tras más de 40 de años desde su invención, el modelo relacional es el estándar de facto para almacenamiento de datos en aplicaciones donde la integridad de los datos es vital- y es también inmensamente popular en aplicaciones menos críticas por su conveniencia, sencillez y velocidad.
\ No newline at end of file
--- /dev/null
+# Hazañas informáticas III: la criptografía asimétrica
+2011-04-25
+
+Desde el principio de los tiempos, los humanos han deseado en ocasiones mantener la privacidad de sus comunicaciones. En tiempos de los romanos ya se utilizaban técnicas de criptografía como el cifrado César para las comunicaciones militares.
+
+El cifrado César consiste en la sustitución simple de unas letras por otras, por ejemplo, sustituir la "a" por "c", "b" por "d", "c" por "e", etc. Con lo que por ejemplo, "cifrado cesar" se convertiría en "ekhtcfq eguct". Este sistema (y muchos otros) se basa en el secreto del sistema- sólo el emisor y receptor del mensaje conocen el método de cifrado y la manera en la que se realiza- en este caso, que cada letra se sustituye por la letra que existe a dos posiciones en el orden alfabético; lo que se conoce como clave secreta.
+
+A pesar de que el cifrado César no ofrece prácticamente ninguna seguridad (una persona que intercepte un mensaje puede fácilmente deducir el sistema usado y desencriptarlo), sí que existen mecanismos de encriptación muy potentes basados en el secreto de la clave (básicamente, un sistema de clave secreta fuerte es aquel en el que podemos hacer que los mensajes sean más difícilmente desencriptables escogiendo claves más complejas).
+
+Sin embargo, en muchas situaciones, los sistemas de claves secretas no son muy útiles. Para hacerlos funcionar, el emisor y el receptor deben poder compartir la clave de una manera segura antes de poder utilizarla.
+
+Pongamos por ejemplo el caso de que queramos realizar transacciones seguras por internet, por ejemplo compras online. Como internet no es un canal de comunicación seguro (es razonablemente sencillo espiar, interceptar y alterar comunicaciones), antes de realizar cualquier compra a un vendedor online, deberíamos poder quedar con el vendedor y acordar una clave secreta por un canal seguro- por ejemplo, quedando presencialmente e intercambiando la clave, algo que no parece nada práctico.
+
+Un investigador de una agencia de inteligencia británica dio en 1973 con un sistema tremendamente sencillo para resolver este problema. Lamentablemente, no lo pudo implementar ni publicar- ya que en ese momento no disponían de los sistemas informáticos suficientemente potentes como para hacerlo funcionar, y al formar parte de una agencia de inteligencia, se consideró un secreto de estado. En 1978, un trío de matemáticos- Rivest, Shamir y Adleman redescubrieron independientemente este sistema y lo publicaron con un nombre tomado de sus iniciales: RSA.
+
+El sistema se basa en un concepto sencillo. En los esquemas de clave secreta, se utiliza una única clave y dos funciones matemáticas de codificación y decodificación. Formalmente, sea un mensaje m, una clave k, y dos funciones E(m,k) y D(m,k), se cumple que D(E(m,k),k)=m; es decir, que las codificar y decodificar un mensaje con la misma clave, se obtiene de nuevo el mensaje original.
+
+El nuevo esquema RSA se basa en que las claves de codificación y decodificación son diferentes, y a pesar de que están íntimamente relacionadas, conocer una no implica conocer la otra. Con esto, yo puedo crear un par de claves; a una la llamaré clave pública y a la otra privada- siguiendo sus nombres, difundiré mi clave pública pero conservaré en secreto mi clave privada.
+
+Así, cualquiera que quiera enviarme un mensaje, podrá coger mi clave pública y codificar el mensaje con ella. Sólo yo, con mi clave privada, podré descifrarlo.
+
+Es decir, si pub es mi clave pública y prv mi clave privada, C la función de codificación y D la de decodificación, D(C(m,pub), prv)=m
+
+Una propiedad interesante de este sistema es que si las funciones se escogen de manera que este proceso funciona a la inversa (puedo "decodificar" con la clave privada primero y al "recodificar" con la clave pública recupero el mensaje original también), yo puedo coger un mensaje y codificarlo con mi clave privada. Si publico el mensaje y la versión codificada, cualquiera que conozca mi clave pública podrá decodificar el mensaje que he codificado y verificar que coincide con el mensaje original. Poder codificar el mensaje de esta manera para que la gente lo pueda verificar sólo lo puede hacer el conocedor de la clave privada- así pues esta operación permite demostrar que el mensaje proviene del propietario de la clave privada. A esta operación se la denomina firma digital y tiene todas las utilidades de una firma en papel tradicional (con la ventaja que es más difícil de falsificar).
+
+¿Cómo funciona este sistema? Pues tanto el investigador inglés como los señores RSA, tuvieron la brillante idea de realizar este esquema al ver el pequeño teorema de Fermat y/o el teorema de Euler. Estos teoremas sobre exponenciación, números primos y cocientes nos permiten encontrar una función de codificación y decodificación (exponenciación y cociente) usando como exponentes y cocientes unos números concretos basados en números primos que permiten que funcione todo esto. Las operaciones de codificación y decodificación son opuestas, y a pesar de que los números (claves) privados y públicos están profundamente relacionados, su relación no es fácilmente descubrible- para descubrirla hemos de factorizar en primos los números que lo componen, lo cuál es un problema complejo.
+
+Lo mejor de todo es que obtener claves muy muy grandes (que hacen que la descomposición sea lenta), es muy sencillo. Podemos generar números primos gigantescos con relativa facilidad, y al componerlos, obtener un número enorme cuya descomposición es infinitamente más costosa.
+
+El sistema RSA lo tiene todo: es muy, muy sencillo, podemos hacerlo tan difícilmente de romper como queramos (buscando primos mayores)... lo único que falla es que es relativamente lento; las operaciones de codificación son lentas. La solución aquí es sencilla- los esquemas de clave privada tienen a ser extremadamente veloces, así que normalmente lo que haremos es usar el sistema de criptografía asimétrica para intercambiar una clave para una codificación de clave privada; así el sistema de clave pública nos resuelve el problema de compartir la clave privada por un canal seguro: usamos la criptografía de clave pública para hacerlo, y a partir de entonces usamos los veloces algoritmos de clave privada para realizar el resto de comunicaciones.
+
+Este sistema es usado hoy en día en la mayoría de aplicaciones de seguridad informática. El criptosistema RSA basado en números primos sigue siendo la implementación más popular- existe un sistema alternativo basado en "curvas elípticas" que se considera más seguro, pero es mucho más complejo y, sobre todo, que algunas de estas curvas elípticas están patentadas y no está claro si se pueden realizar implementaciones de este sistema sin pagar a sus inventores (mientras que el sistema RSA es "libre").
\ No newline at end of file
--- /dev/null
+# Holandeses voladores, ciclos y tendencias
+2011-04-25
+
+La liga española de fútbol se fundó en 1929. El Real Madrid es el equipo que más veces la ha ganado, con 31 campeonatos, seguido del FC Barcelona con 20 y sólo en 28 ocasiones otro equipo se ha llevado el gato al agua- es decir, menos de un 40%.
+
+Desde la temporada de 1929 hasta la temporada 1952-53, el FC Barcelona llevaba una ligera ventaja al Real Madrid, 6-2; aunque la liga estaba bastante más disputada; el Athletic de Bilbao se la llevó en 5 ocasiones, el Atlético de Madrid/Atlético de Aviación 4 y el Valencia 3- un 60% de las ligas se las llevaba alguien que no era ni Barça ni Madrid.
+
+A partir de 1953-54, se da un cambio de tendencia. Hasta la temporada 87-88, el Madrid ganaría 21 ligas de 35 (el 60%), mientras que el Barça sólo ganó 4, empatado con el Atlético de Madrid y seguido del Athletic de Bilbao con 3.
+
+En 1988, sin embargo, hubo un hecho que cambió otra vez la tendencia. Un holandés llamado Johann Cruyff fichó como entrenador del FC Barcelona. No ganó la liga el primer año que estuvo, ni el segundo (las ganó el Madrid), pero ganó cuatro ligas seguidas desde la temporada 1990-91 a la 1993-94. Hasta que se marchó al final de la temporada 1995-96, con esas 4 ligas se impuso estrechamente a las 3 conseguidas por el Real Madrid- más la primera Copa de Europa conseguida por el FC Barcelona.
+
+A partir de entonces, se han disputado 14 ligas más, en las que el FC Barcelona sigue ligeramente por delante del Real Madrid con 6 títulos ligueros contra 5 del Real Madrid.
+
+Está claro que desde los años 50 hay dos grandes periodos, separados por la llegada de Cruyff al Barcelona; tomando como punto de referencia la primera liga de Cruyff, los números cantan: 23-4 para el Real Madrid primero y 10-6 para el FC Barcelona luego. De un dominio aplastante del Real Madrid (mayoría absoluta [60%] de victorias) a una ligera superioridad culé (sólo si este año gana la liga llegará al 50%).
+
+Mientras tanto, en Europa... ¿qué pasó?
+
+Pues algo parecido, hasta la primera liga de Cruyff, el Real Madrid había ganado la Copa de Europa en 6 ocasiones; las 5 primeras ediciones de la competición más una más en el 65. El FC Barcelona, ninguna.
+
+A partir del 92, año donde Cruyff ganó su segunda liga, el Barça se ha llevado 3 copas de Europa, 1991-92 con Cruyff, 2005-06 con Rijkaard y 2008-09 con Guardiola. En el mismo periodo, el Real Madrid iguala esto con las 3 del 1997-98 (entrenados por Heynckes y gol en la final de Mijatovic), 1999-2000 y 2001-02 (las dos con del Bosque en el banquillo, la 2001-02 con Zidane y los galácticos).
+
+¿Existen ciclos de dominación?
+
+Yo creo que sólo existe uno, la hegemonía del Real Madrid hasta la segunda liga de Cruyff en el 91; 6 copas de Europa y el 60% de las ligas.
+
+Tras llegar Cruyff, tras sus 4 ligas, realmente hay una igualdad a 6 ligas y 3 copas de Europa. Si consideramos que de las 4 ligas de Cruyff, la mitad se ganaron en la última jornada por cataclismos merengues en Tenerife... tenemos más argumentos en favor de esta igualdad.
+
+A parte de esto, cabe apuntar que a partir del 91, el Madrid sólo ha conseguido dos ligas seguidas una vez; 2006-07 y 2007-08- curiosamente la primera con Capello, que fue cesado tras ganar para que llegase Bernd Schuster, yo no las consideraría una racha; eran dos equipos bastante diferentes. Si acaso la racha serían las dos copas de Europa seguidas mencionadas anteriormente conseguidas por Del Bosque.
+
+En el Barcelona, algo similar. Consiguió dos ligas seguidas en 1997-98 y 1998-99, la primera con Robson y la segunda con Van Gaal; 2004-05 y 2005-06; estas sí que ambas con Rijkaard y 2008-09/2009-10 con Guardiola.
+
+Es decir, que no ha habido prácticamente continuidad.
+
+Todo esto me lleva a pensar que sí, Cruyff entrenador cambió sustancialmente la dinámica de la liga Española. De la hegemonía del Madrid hemos pasado a una hegemonía de Barça **y** Real Madrid, con una ligera, ligerísima ventaja para el FC Barcelona conseguida en la mejor época cruyffista.
+
+Hasta que no pasen unos cuantos años más, creo que no podremos decir mucho más.
\ No newline at end of file
--- /dev/null
+# Moviolas del siglo XXI
+2011-04-18
+
+Me pasan este acojonante reproductor de grandes premios[1]. No sólo es un gran ejemplo de visualización de datos (curioso, me pedí el Tufte[2] ayer), ni tampoco un gran ejemplo de lo que se puede hacer con eso de los estándares web, sino además un excelente recurso para enterarse a posteriori de lo que ha pasado en un GP.
+
+
+=> http://especiales.lainformacion.com/deportes/simulador-f1/?c=china 1: http://especiales.lainformacion.com/deportes/simulador-f1/?c=china
+=> http://www.amazon.co.uk/gp/product/0961392142 2: http://www.amazon.co.uk/gp/product/0961392142
\ No newline at end of file
--- /dev/null
+# Hazañas informáticas IV: Las funciones hash
+2011-05-14
+
+Los mayores problemas de rendimiento de un sistema informático vienen causados por tener que trabajar con volúmenes grandes de información. La mayoría de algoritmos tienen un tiempo de ejecución relacionado con el tamaño de la información que manejan. Por ejemplo, encontrar el valor máximo de un conjunto de valores es directamente proporcional al tamaño del conjunto- si duplicamos el tamaño del conjunto, tardamos el doble en encontrar el máximo.
+
+También es obvio que el tamaño de los datos afecta también a la velocidad de las comunicaciones- bajarse un fichero de dos megas normalmente cuesta el doble que uno de un mega.
+
+Así pues, parece una obviedad que reduciendo el tamaño de los datos con los que trabajamos, normalmente incrementaremos la velocidad de nuestros cálculos y/o nuestras comunicaciones.
+
+Por ejemplo, si comprimimos archivos que queremos transferir, reduciendo su tamaño, los podremos comunicar más rápidamente. Existen algoritmos de compresión que permiten reducir el tamaño de los datos sin perder fidelidad, con lo cual la mayoría de veces nos interesa transmitir datos comprimidos (sobre todo en el caso común en el que la compresión es efectiva y más rápida que la transferencia en sí).
+
+Hay algoritmos de compresión que no conservan la fidelidad con el archivo original; el popular formato de imagen jpeg permite comprimir imágenes fotográficas muchísimo, pero sacrificando la calidad de la imagen- la gracia del algoritmo es que la calidad que se pierde a menudo es imperceptible o despreciable.
+
+Los algoritmos de compresión con pérdida son muy útiles- eliminando el requerimiento de conservar toda la información, se consiguen cotas de compresión muchísimo más elevadas de lo que se pueden conseguir mediante algoritmos que preservan todos los datos.
+
+Existe una cosa parecida pero que da un paso más, que son las funciones hash.
+
+Una función hash es en cierta manera una compresión- se coge unos datos de un tamaño arbitrario y se obtienen unos datos mucho más pequeños. Un hash típico da como resultado un puñado de bytes (16, 32, etc.) a partir de entradas de cualquier tamaño.
+
+Está claro que debe haber una pérdida sustancial de información al pasar de una cosa a otra. Cierto. Es más, la mayoría de funciones hash no permiten reconstrucción alguna de los datos originales a partir del hash.
+
+¿Para qué puede servir algo que supone esta pérdida de información?
+
+La utilidad de las funciones hash viene dada por una propiedad muy simple. Una función hash debe ser determinista. Es decir, que para el mismo dato, el resultado de la función hash siempre tiene que ser el mismo.
+
+Esto nos permite, por ejemplo, hacer una cosa muy interesante. Alicia se ha bajado de internet un fichero enorme y se encuentra que al intentar utilizarlo, no le funciona. ¿Se trata de que se ha bajado el fichero incorrectamente o de que su ordenador no funciona correctamente o el fichero original no era correcto?
+
+Si el fichero fuese pequeño, la solución sería muy sencilla; se lo puede bajar más veces- cuantas más veces se lo baje, más probable será que una de las descargas sea correcta. Si se lo baja 10 veces y no funciona nunca, es poco probable que haya habido un error en la transmisión, lo más probable es que el fichero sea incorrecto en origen o ella tenga un problema usándolo.
+
+Pero claro, si el fichero es grande y tarda mucho en descargarse, es impráctico bajarlo varias veces para asegurarse que está bien.
+
+¿Cómo pueden ayudar las funciones hash aquí?
+
+La persona que tiene el fichero original, puede calcular un hash del fichero y pasárselo a Alicia. Dado que el hash es pequeño, este es rápido de transferir y es más fácil comprobar su validez.
+
+Una vez Alicia tiene el fichero que se ha descargado y su hash, puede calcular ella el hash del fichero. Si el hash que calcula es diferente al hash del fichero original, está claro que su fichero no es idéntico al fichero original- si lo fuese, el hash debería ser igual ya que la función hash debe ser determinista.
+
+¿Ahora bien, y si los dos hashes son iguales?
+
+Pues lógicamente, no podemos garantizar que los ficheros sean iguales. En la práctica, si escogemos las funciones hash cuidadosamente (básicamente, que cumpla que dos entradas parecidas tengan hashes muy diferentes y que la distribución de hashes generados sea uniforme), la posibilidad de que dos ficheros tengan hashes idénticos son muy reducidas. Si una función hash puede dar como resultado 16 hashes diferentes, la probabilidad de que dos entradas tengan un hash idéntico es de 16^2 o 256.
+
+Lo bueno aquí es que si doblamos el tamaño de las salidas del hash, reducimos a una cuarta parte las posibilidades de error.
+
+Una función hash tipica que dé hashes de 16 bytes puede dar 2 elevado a 128 posibles hashes (o 340282366920938463463374607431768211456 valores diferentes), con lo que la probabilidad de que dos hashes coincidan es microscópica (de 1 entre 2 elevado a 256, o en concreto de 1 entre 115792089237316195423570985008687907853269984665640564039457584007913129639936), con lo cuál, simplemente escogiendo una buena función hash podemos hacer comprobaciones de integridad tan fiables como deseemos con hashes muy pequeñitos.
+
+¿Tienen las funciones hash más utilidades?
+
+Pues sí, infinidad más. Programando muchas veces queremos almacenar datos y acceder rápidamente a ellos por un concepto concreto. Por ejemplo, querríamos almacenar todos los datos de los habitantes de España y poder acceder a ellos por su nombre.
+
+Una solución sencilla sería guardar los datos de todos ellos en una lista y cada vez que tuviésemos un nombre, recorrer la lista hasta encontrar a la persona que buscamos.
+
+Si hay 40.000.000 de habitantes en España, de media necesitaremos leernos la mitad de la lista (20 millones de entradas) hasta encontrar los datos de la persona.
+
+¿Cómo podemos emplear un hash para acelerar esto?
+
+Buscaremos una función hash que a partir de un nombre, nos pueda dar n posibles hashes. Crearemos n listas, y en cada una, guardaremos los datos de las personas cuyo nombre tenga un hash concreto.
+
+Si escogemos una función hash que haga que cada valor hash sea más o menos equiprobable, cada lista contendrá 40.000.000/n personas.
+
+Así pues, para localizar los datos de una persona sabiendo su nombre, calcularemos el hash de su nombre, y eso nos llevará a la lista donde están sus datos. Dentro de eso tendremos que recorrerla para encontrar sus datos, pero en vez de recorrer una lista de 40.000.000 de personas, recorreremos una lista reducida tanto como queramos.
+
+Aquí hay un pequeño balance que hay que hacer; cuantas más listas diferentes tengamos, menos eficiente será su almacenamiento y acceso, con lo cual seguramente no será efectivo escoger una función hash con 40.000.000 dde valores hash posible (con lo cual, encontrar una persona sería prácticamente inmediato), pero seguramente con funciones hash más pequeñas, sí que consigamos un aumento sustancial del rendimiento.
\ No newline at end of file
--- /dev/null
+# Más emergencias
+2011-05-04
+
+=> images/IMG_4463.jpg Libros nuevos que he comprado [IMG]
+[1]
+
+Las nuevas incorporaciones son The Data Model Resource Book: v.1: A Library of Universal Data Models for All Enterprises: Vol 1[2], 2[3] y 3[4]; Death March[5] y The Visual Display of Quantitative Information[6].
+
+Primeras impresiones:
+
+* Los Data Model están muy bien. El segundo un poco decepcionante, porque el modelo que me interesaba (E-Commerce), es un poco flojito- este segundo volumen se centra en áreas específicas (agencias de viajes, aseguradoras, etc.)... si a uno no le interesa particularmenten ninguna de estas áreas, sólo el coleccionismo justifica su compra.
+* Death March es brillante.
+* Visual Display está bien... pero yo me esperaba más
+
+
+=> http://alex.corcoles.net/wp-content/uploads/2011/05/IMG_4463.jpg 1: http://alex.corcoles.net/wp-content/uploads/2011/05/IMG_4463.jpg
+=> http://www.amazon.co.uk/Data-Model-Resource-Book-Enterprises/dp/0471380237/ref=sr_1_1?ie=UTF8&qid=1304532338&sr=8-1 2: http://www.amazon.co.uk/Data-Model-Resource-Book-Enterprises/dp/0471380237/ref=sr_1_1?ie=UTF8&qid=1304532338&sr=8-1
+=> http://www.amazon.co.uk/Data-Model-Resource-Book-Universal/dp/0471353485/ref=sr_1_3?ie=UTF8&qid=1304532338&sr=8-3 3: http://www.amazon.co.uk/Data-Model-Resource-Book-Universal/dp/0471353485/ref=sr_1_3?ie=UTF8&qid=1304532338&sr=8-3
+=> http://www.amazon.co.uk/Data-Model-Resource-Book-Universal/dp/0470178450/ref=sr_1_2?ie=UTF8&qid=1304532338&sr=8-2 4: http://www.amazon.co.uk/Data-Model-Resource-Book-Universal/dp/0470178450/ref=sr_1_2?ie=UTF8&qid=1304532338&sr=8-2
+=> http://www.amazon.co.uk/Death-March-Yourdon-Press-Edward/dp/013143635X/ref=sr_1_1?ie=UTF8&qid=1304532434&sr=8-1 5: http://www.amazon.co.uk/Death-March-Yourdon-Press-Edward/dp/013143635X/ref=sr_1_1?ie=UTF8&qid=1304532434&sr=8-1
+=> http://www.amazon.co.uk/Visual-Display-Quantitative-Information/dp/0961392142/ref=sr_1_1?ie=UTF8&qid=1304532465&sr=8-1 6: http://www.amazon.co.uk/Visual-Display-Quantitative-Information/dp/0961392142/ref=sr_1_1?ie=UTF8&qid=1304532465&sr=8-1
\ No newline at end of file
--- /dev/null
+# Atajo al infierno
+2011-06-22
+
+Me falta uno de esos sesudos artículos de investigación que analicen el coste en productividad perdido por las siguientes dos combinaciones de teclas:
+
+* alt+mayúsculas: en un Windows español por defecto, alterna entre la disposición de teclado española y la americana. Resultado: los acentos y muchas otras teclas "no funcionan" y no es obvio averiguar por qué.
+* control+alt+cursor: con drivers de tarjeta gráfica de Intel, gira la pantalla. Resultado: el texto de la pantalla de lado o boca abajo, haciendo bastante complicado la lectura de la pantalla y el manejo del ratón, dificultando bastante deshacer el cambio
+
+¿Sería tan complicado que por defecto estas teclas no hicieran nada o pidieran confirmación la primera vez que se utilizan? Son completamente inútiles para la mayoría de los usuarios, sólo sirven para que el informático presuma...
\ No newline at end of file
--- /dev/null
+# Cóctel de fármacos
+2011-06-18
+
+Apocalyptica + Rammstein + David Bowie = Helden[1]
+
+Jose González es cansino, pero Teardrop[2] y Smalltown Boy[3].
+
+
+=> http://www.youtube.com/watch?v=Q6vsD2TgQaE 1: http://www.youtube.com/watch?v=Q6vsD2TgQaE
+=> http://www.youtube.com/watch?v=9B-h1EEsKDA 2: http://www.youtube.com/watch?v=9B-h1EEsKDA
+=> http://www.youtube.com/watch?v=ENzaEGktZpc 3: http://www.youtube.com/watch?v=ENzaEGktZpc
\ No newline at end of file
--- /dev/null
+# Dinosaurios que rondan la tierra
+2011-06-15
+
+Acabo de poner un clavo más en el ataúd de una compañía canadiense de cuyo nombre nadie se acuerda.
+
+Sí, he decidido pasar a la única alternativa más moderna a mi Symbian S60 (Nokia C5, del que ya hablamos aquí[1]); una rompedora Blackberry Bold 9780 con el innovador Blackberry OS 6.
+
+¿Por qué?, que diría un sabio portugués...
+
+* No me gustan las pantallas táctiles
+* Me ha salido por 140€ + puntos del outlet Vodafone (ya están agotadas), vs. los 289€ + puntos que cuestan el Desire, el Optimus 2x, el Galaxy S, etc. o la misma Bold sin oferta de outlet
+* Me gusta ser retrógrado
+* Me gustan las baterías que duran y duran
+* Capricho
+* ... no me gustan las pantallas táctiles
+
+Ahora, con el olor aún a nuevo, es el momento de dar las primeras apreciaciones.
+
+La Blackberry me recuerda a mis Nokias. Usabilidad pulida a lo largo del tiempo. La interfaz de usuario podría calificarse de rudimentaria, pero está muy bien pensada, ejemplos:
+
+* El móvil es consciente de que está dentro de su funda. Podemos hacer cosas como cambiar las notificaciones según esté guardado o no, o configurar que nos muestre el último mensaje automáticamente al sacarlo de la funda
+* Led de aviso y dos botones estratégicamente situados para que no queden tapados por la funda
+* Muchos atajos de tecleo; por ejemplo doble espacio inserta punto-espacio y pone las mayúsculas. Podemos configurar sustitución de texto global para poder convertir "bb" en "BlackBerry" automáticamente en todas las aplicaciones. Alt+intro cambia el lenguaje de escritura.
+* Atajos lógicos de teclado por todos lados; tener un teclado físico hace que la mayoría de operaciones comunes estén a una pulsación
+* Aunque los sistemas de correo y mensajería instantánea (BlackBerry Messenger) están desactualizados en un par de aspectos, realmente son un ejemplo de libro de cómo deben implementarse estas dos funcionalidades- aunque por ejemplo, Whatsapp ya ha clonado lo más interesante de BBM (notificaciones de entrega). El resto de áreas, como calendario, contactos, etc. también son ejemplares.
+
+Respecto al teclado y trackpad, aún no me he adaptado 100%. El mecanismo de entrada de acentos (pulsar y aguantar la letra en cuestión, mover trackpad para escoger acento) no me convence del todo, y la escritura predictiva... no es perfecta (sobre todo porque al escribir "si", ¡"sí" está bastante abajo de la lista de sugerencias de completado!). Por tanto, escribir castellano y catalán "correcto" requiere un cierto esfuerzo. En mi opinión, el T9 es superior escribiendo a una mano- y siempre que no tengamos que alternar mucho de idioma. Comparado con las pantallas táctiles, sigo opinando que no hay color- en poco tiempo tecleo mucho mejor que tras bastantes intentos con un iPad, que debería tener una escritura táctil ejemplar y cuyo mayor tamaño debería hacerlo mejor que los móviles.
+
+El trackpad tiene sus incidencias, pero en general es un mecanismo muy práctico para según qué cosas (seleccionar texto, por ejemplo), pero que obviamente no es ideal para tareas como moverse por un navegador.
+
+El navegador, hablando del tema, sí, sigue siendo un problema. Se atasca bastante presentando páginas complejas, y se echa de menos la pantalla táctil, sí. Pese a ello, es perfectamente usable y las combinaciones de tecla (especialmente espacio y mayúsculas+espacio, que funcionan como en un navegador de escritorio convencional), compensan bastante la falta de uso "a dedo". Personalmente, dado que mi requisito de navegación móvil número es Google Reader y que la versión de iPhone (no la bazofia de versión web móvil eestándar) funciona de maravilla en el navegador de la BlackBerry, estoy bien contento.
+
+Más problemáticas:
+
+* Pese a que el interfaz es rápido en el 90% de las tareas, hay tareas específicas en las que sufre; instalar aplicaciones y el arrancado son particularmente sangrantes. Se nota que han optimizado todo lo optimizable, pero que el hardware no da más de sí
+* La cámara... es de 5 megapíxeles, pero poco más. Dado que yo soy incapaz de sacar una foto en condiciones con una buena cámara, flash y luz en abundancia... la verdad es que tampoco aprovecharía algo mejor
+* La batería no es fantástica... aguanta un día perfectamente, pero sospecho que no llega al segundo día de uso intenso sin cargar
+* La integración con GMail... de momento tiro con la estándar de BlackBerry para lectura de nuevos mensajes y la aplicación de Google para consultar mensajes antiguos. El problema es que con la función de correo estándar, los mensajes borrados fuera del móvil permanecen en el móvil, con lo que ocupan espacio si no los borramos una segunda vez. Aún tengo que encontrar la manera de trabajo idónea cuando estoy delante del ordenador.
+* Echo de menos una aplicación de mensajería instantánea como BBM o Whatsapp pero que pueda funcionar en el escritorio. Las notificaciones e integración con la agenda de ambos son muy útiles, pero no poder aprovechar el escritorio cuando está ahí... es un fallo
+
+Aún así, de momento estoy plenamente contento con el aparatito. Creo que se merece la fama de artefacto adictivo y a su vez productivo... y además encaja bien en las idiosincrasias de uno... pero ya les contaré.
+
+
+=> http://alex.corcoles.net/2010/07/resena-nokia-c5/ 1: http://alex.corcoles.net/2010/07/resena-nokia-c5/
\ No newline at end of file
--- /dev/null
+# Galletosquizofrenia
+2011-06-17
+
+Me complace anunciar que tras mi última actualización de la versión inestable de Google Chrome, la funcionalidad de utilizar varios perfiles simultáneamente está disponible en Linux.
\ No newline at end of file
--- /dev/null
+# Tecnocracia china
+2011-06-28
+
+Tras más de 300.000 entradas de RSS leídas, he decidido migrar mis datos de Google Reader de @gmail.com a mi cuenta de Google Apps.
+
+A parte de sacrificar tan bonito número y perder un buen montón de datos, migrar las estrellas y elementos compartidos es duro (2500+ pulsaciones de shift+s, k lo atestiguan).
\ No newline at end of file
--- /dev/null
+# Tres tristes trucos
+2011-06-07
+
+1.
+
+screen es una de esas herramientas definitivas del mundo Unix. Parece ser que tmux es la alternativa moderna[1], pero uno es conservador. En todo caso, cualquiera que use un sistema Unix, debe conocer el uso de screen (principalmente, para lanzar procesos largos remotamente). El truco es meter lo siguiente en .screenrc:
+
+# http://gentoo-wiki.com/TIP%5C_Using%5C_screen#Tab-bar[2][3] hardstatus alwayslastline hardstatus string '%H %-w %{= bW}%n %t%{-} %+w'
+
+2.
+
+De aquí[4], un alias para meter en la máquina que usamos:
+
+asc() { autossh -x -a -t "$@" 'screen -RdU' }
+
+; usando entonces asc en vez de ssh, se usará screen combiando con autossh para conectarse al sistema remoto. Con esto, si se corta la conexión ssh, el sistema reconectará automáticamente y volverá justo donde lo dejamos... haciendo que por ejemplo, trabajar con ssh en una conexión 3G de cobertura irregular sea un pelín menos demencial.
+
+3.
+
+Y para nota, instalar zssh (e incorporarlo al asc anterior). Con esto, dentro de una sesión de ssh podemos transferir ficheros del sistema local al remoto sin tener que abrir otro terminal y usar scp. Esto es harto conveniente y además gana puntos por usar ZMODEM[5] para hacer la transferencia. Desgraciadamente, los usuarios de Gnome debemos envidiar a los de KDE (o incluso los de Windows), ya que al parecer Konsole y Putty tienen un interfaz fantabuloso para hacer esto, y gnome-terminal, no.
+
+
+=> http://tmux.sourceforge.net/ 1: http://tmux.sourceforge.net/
+=> http://gentoo-wiki.com/TIP%5C_Using%5C_screen#Tab-bar 2: http://gentoo-wiki.com/TIP%5C_Using%5C_screen#Tab-bar
+=> http://gentoo-wiki.com/TIP_Using_screen#Tab-bar 3: http://gentoo-wiki.com/TIP_Using_screen#Tab-bar
+=> http://noone.org/blog/English/Computer/Shell/Perfect%20Team:%20autossh%20and%20GNU%20Screen.html 4: http://noone.org/blog/English/Computer/Shell/Perfect%20Team:%20autossh%20and%20GNU%20Screen.html
+=> http://en.wikipedia.org/wiki/ZMODEM 5: http://en.wikipedia.org/wiki/ZMODEM
\ No newline at end of file
--- /dev/null
+# Consolación en serie
+2011-07-29
+
+Con la triste excusa de que no me van muy finas las máquinas virtuales en mi servidor personal (la pantalla no se actualiza bien, con lo que es una lata crear una máquina virtual nueva), he investigado un poco cómo hacer instalaciones por consola de serie, es decir, sin teclado ni pantalla- ni siquiera virtual.
+
+El comando mágico es el siguiente
+
+> virt-install --name $VM_NAME --ram $RAM_MB --location http://ftp.es.debian.org/debian/dists/squeeze/main/installer-amd64/[1] --os-type=linux --os-variant=debiansqueeze --disk /var/lib/libvirt/images/$VM_NAME.img,size=$DISK_GB -w bridge=br0 --extra-args='console=tty0 console=ttyS0,115200n8'
+Esto nos instala Debian activando la consola de serie. Lo gracioso del método es que se baja el instalador por http, con lo que ni siquiera necesitamos una iso para poner en marcha el proceso. Eso sí, si lo queremos hacer varias veces y acelerarlo, podemos hacer algo así como...
+
+> rsync --progress -avz rsync://ftp.es.debian.org/debian/dists/squeeze/main/installer-amd64/ dists/squeeze/main/installer-amd64/
+
+=> http://ftp.es.debian.org/debian/dists/squeeze/main/installer-amd64/ 1: http://ftp.es.debian.org/debian/dists/squeeze/main/installer-amd64/
\ No newline at end of file
--- /dev/null
+# IE sin Windows
+2011-07-20
+
+Algunas personas tienen en ocasiones el impulso de usar ese navegador vintage que es IE6, por oscuros motivos. Aquí explicamos cómo hacerlo gratis.
+
+Lo primero, descargar las imágenes de compatibilidad de Internet Explorer que Microsoft graciosamente proporciona[1] (incluyen versiones de Windows de XP hasta 7, y Internet Explorer 6 a 8). Si disponemos de una instalación de Windows cualquiera, ya estamos, podemos descargar gratuitamente Virtual PC[2] y utilizar las imágenes sin ningún problema.
+
+Desafortunadamente, Virtual PC sólo funciona sobre Windows, que cuesta dinero. Si no disponemos de Windows podemos usar VirtualBox[3], disponible para Linux, OS X y Solaris. Lamentablemente, no es tan sencillo, pero se puede hacer fácilmente.
+
+Lo primero, sacar la imagen .vhd del .exe que nos habremos descargado de la web de Microsoft. Esto lo podemos hacer con unrar, por ejemplo.
+
+Siguiente, debemos crear una máquina virtual con VirtualBox, utilizando el .vhd como imagen de disco. Como es harto probable que querramos que la máquina virtual se conecte a nuestra red, deberemos habilitar una tarjeta de red en la configuración de la máquina virtual.
+
+Veremos en la configuración que se pueden escoger diversas tarjetas de red. La versión de XP que lleva la imagen de Explorer 6 lamentablemente no incluye drivers para ninguna de las tarjetas de red que podemos escoger, por lo que tendremos que introducirlos en la instalación. Esto se puede hacer de diversas maneras, la más sencilla de las cuales consiste en escoger en este paso la tarjeta de red paravirtualizada.
+
+En este momento, y antes de arrancar la máquina, puede sernos conveniente crear un snapshot del disco.
+
+Arrancando la imagen, nos pedirá activar Windows. De momento saltémonos este paso. Cancelemos todas las peticiones de instalar hardware.
+
+Es un buen momento para instalar las "guest additions" de VirtualBox, que entre otras cosas mejoran la integración de teclado y ratón con la máquina virtual y nos permiten activar el "seamless mode", que hace que el fondo de escritorio de Windows desaparezca y las ventanas de aplicación queden integradas en nuestro escritorio nativo.
+
+Tras hacer esto, es el momento de instalar los drivers de la tarjeta de red. La tarjeta de red paravirtualizada (que no emula "tontamente" una tarjeta de red física real, simplemente utiliza un poco de magia en la máquina virtual para comunicarse con la red nativa) que usa Virtualbox está soportada por estos drivers convenientemente proporcionados en forma de .iso[4]. Simplemente podemos bajarnos la .iso y usarla para simular un CD virtual dentro de la máquina. Podemos entonces realizar la instalación de los drivers de la tarjeta de red utilizando el CD.
+
+En este momento, es conveniente reiniciar. Al reiniciar, se nos volverá a pedir activar Windows. Dado que ya tenemos la red funcionando, podremos realizar la activación por Internet sin ningún problema.
+
+El último paso es ir al administrador de dispositivos y deshabilitar todos los dispositivos que no funcionan, con lo que nos evitaremos las peticiones de instalar drivers.
+
+Bonus 1: si consultáis la EULA de Windows 7 Professional OEM, veréis que es legal utilizarlo para la máquina que se compró pero virtualizado
+
+Bonus 2: en la web de VirtualBox se puede 1) encontrar una fuente apt para Debian/Ubuntu que contiene las versiones más actualizadas para instalar automáticamente y 2), "descargar el VirtualBox 4.1 Oracle VM VirtualBox Extension Pack" que habilita funcionalidades como poder utilizar en la máquina virtual dispositivos USB conectados al ordenador que corre VirtualBox (lo que por ejemplo, permite utilizar iTunes para gestionar un iPhone/iPad desde dentro de una máquina virtual). Esto último sólo es legal si la persona que instala las extensiones es la misma persona que las va a usar (i.e. no se instalan automatizadamente) o se está en un entorno académico.
+
+actualización: la última imagen proporcionada por Microsoft el 16/8 no funciona. Puede seguirse la incidencia en los foros de VirtualBox[5].
+
+actualización II: en el foro de VirtualBox hay una solución. Simplemente hay que clonar la imagen .vhd a formato VDI y todo funciona. Nota, la imagen actualizada debe activarse antes de que la máquina arranque tres veces, si no no funciona, con lo que los pasos que recomiendo son:
+
+1. VBoxManage createhd --filename wxpie6.vdi --size 65536 # para crear la imagen de disco
+2. VBoxManage clonehd --existing ~/Downloads/Windows\ XP.vhd wxpie6.vdi # para convertir el .vhd al .vdi
+3. Configurar la máquina virtual en VirtualBox, muy importante poner la tarjeta de red paravirtualizada
+4. Arrancar la máquina, instalar la tarjeta de red paravirtualizada desde el CD y activar
+5. ... instalar Guest Additions, deshabilitar dispositivos hardware problemáticos, etc.
+
+
+=> http://www.microsoft.com/download/en/details.aspx?id=11575 1: http://www.microsoft.com/download/en/details.aspx?id=11575
+=> http://www.microsoft.com/windows/virtual-pc/default.aspx 2: http://www.microsoft.com/windows/virtual-pc/default.aspx
+=> http://www.virtualbox.org/ 3: http://www.virtualbox.org/
+=> http://alt.fedoraproject.org/pub/alt/virtio-win/latest/images/bin/virtio-win-0.1-mm34.iso 4: http://alt.fedoraproject.org/pub/alt/virtio-win/latest/images/bin/virtio-win-0.1-mm34.iso
+=> http://forums.virtualbox.org/viewtopic.php?f=2&t=43940 5: http://forums.virtualbox.org/viewtopic.php?f=2&t=43940
\ No newline at end of file
--- /dev/null
+# Increpando
+2011-07-05
+
+**intimar[1].**
+
+(Del lat. intimāre).
+
+*1*. tr. Requerir, exigir el cumplimiento de algo, especialmente con autoridad o fuerza para obligar a hacerlo.
+
+
+=> http://rae.es/intimar 1: http://rae.es/intimar
\ No newline at end of file
--- /dev/null
+# Apuntes sobre Dart
+2011-10-10
+
+Google ha sacado hoy Dart[1].
+
+El apunte rápido (que seguro que otros mejoran) es que es un verdadero **Java**script. Es un lenguaje muy muy Java que compila a Javascript. Las diferencias con Java van por dos lados:
+
+* Adecuaciones para funcionar bien cuando se compila a Javascript- i.e. no hay threads, hay "isolates", etc.
+* Esas mejoras puntuales de Java que llevamos pidiendo a gritos desde hace siglos
+
+Las mejoras de Java son de ovación cerrada:
+
+* Las clases en Dart generan un interfaz equivalente a su parte pública
+* Constructores con inicializadores concisos
+* Declaraciones anónimas y concisas de funciones
+* getters y setters transparentes. De bonus, se integran con los interfaces
+* Literales para listas y mapas
+* "==" es equals y "===" es "==". Ver "===" me produce grima por traumas varios, pero creo que es la solución correcta.
+
+Siendo realistas, cubre la mayoría de "defectos" "resolubles" de Java. No, no tiene inferencia de tipos, ni lambdas con excepciones chulas, ni "final" por defecto... y quizás no es todo como uno lo había soñado, pero es una solución práctica y disponible **hoy**.
+
+Eso es lo positivo. En lo negativo, el tipado opcional me escama- y me duele que signifique sacrificios (hay ahí una cosilla un poco rara con las funciones que no devuelven valor que me deja intranquilo). Me queda la curiosidad de estudiar los isolates para saber si aportan algo o si son sencillamente la manera correcta de montar concurrencia en código que será compilado a Javascript y ejecutado por los motores de Javascript existentes.
+
+He visto otras cosas que aún no me he mirado a fondo que no sé dónde colocar: soporte en el lenguaje para factorías, "const" el sistema de librerías y que null sea un objeto; es difícil saber si serán cosas buenas o malas.
+
+En fin, cosas interesantes. No parece, sin embargo, que Dart aspire de momento a ser algo más que un sustituto de Javascript (algo que no me interesa mucho- el principal problema de Javascript no es el lenguaje en sí, en mi opinión)... con lo que **para mi**, no es muy interesante de momento. Si algún día se planta como una alternativa para desarrollo de aplicaciones y para programación, tiene la oportunidad de ser Java++, pero sin añadir la complejidad y cerradez de C#... pero ni siquiera sé si Google pretende que lo sea (ese rol lo quieren para... ¿Go? ¿Dart? ¿Java? ¿Python?) .
+
+
+=> http://www.dartlang.org/ 1: http://www.dartlang.org/
\ No newline at end of file
--- /dev/null
+# El mito de la escalabilidad
+2011-10-22
+
+Hace mucho mucho tiempo, en una galaxia muy muy lejana, existía una web de noticias informáticas llamada Slashdot[1]. Por motivos oscuros, Slashdot creció brutalmente en popularidad y por tanto, cada vez que aparecía una noticia en portada de Slashdot enlazando a una web, una cantidad elevada de personas hacía click en la noticia, dirigiendo a ésta ingentes cantidades de tráfico. En los inicios de Internet, no muchas webs estaban suficientemente bien preparadas para soportar carga como Slashdot, y por tanto este tráfico tendía a colapsar los sistemas que recibían enlaces de Slashdot- este efecto fue denominado "Slashdot Effect[2]".
+
+Avanzando un poco hacia el presente, el tráfico de internet se ha multiplicado. De los 70 millones de usuarios de Internet en el 97 (nacimiento de Slashdot), hemos pasado a los 2110 millones de usuarios actuales (fuente[3]); es decir, se ha multiplicado por 30 el número de usuarios, y muy probablemente, el uso de cada usuario de Internet también se ha intensificado- cada vez dedicamos más tiempo y hacemos más cosas en Internet.
+
+Hoy en día, sitios como Facebook presumen[4] de tener 400 millones de usuarios entrando cada día en sus servicios (¡5 veces el número de usuarios de toda Internet en el 97!) y se suben unos 250 millones de fotos diarias. En Twitter, coincidiendo con hechos como la muerte de Osama Bin Laden, llegan a escribirse más de 12 millones de tuits en una hora[5].
+
+Así pues, si en el 97 el volumen de uso podía ya suponer un problema para los servicios de Internet, con el enorme crecimiento de la red, ¿se acrecentan estos problemas?
+
+Sin duda alguna. A pesar de que la potencia de los ordenadores se ha acrecentado, esta no ha parecido contrarrestar el hecho de que cada vez queremos más datos, más rápidos y más inmediatos de la red. El mencionado Twitter ha sufrido a lo largo de su carrera para poder soportar el uso que se le da; su Fail Whale[6] ha sido enormemente popular y aún hoy se deja ver de cuando en cuando.
+
+¿Por qué es "difícil" tratar este problema?
+
+Comencemos por lo más básico. Un servidor normalito que podemos adquirir, si sabemos buscar, por 50€/mes, puede servir sin muchos problemas y sin grandes esfuerzos, unas 50 peticiones por segundo de una página dinámica sencilla que muestra información almacenada en una base de datos. Esto equivale a servir 4.320.000 peticiones en un día. Supongamos que cada usuario se pasa unos 10 minutos diarios en la página, y hace una petición nueva cada 10 segundos; eso son unas 60 peticiones. El servidor anterior podría atender a unos 72.000 usuarios/diarios, pudiendo llegar a atender a 3000 usuarios/hora.
+
+Estas cifras parecen respetables, y la buena noticia es que adquiriendo servidores más caros, obtenemos una mejor relación precio/peticiones/s, con lo que podemos fácilmente soportar más carga de este tipo simplemente echando un poco de dinero al problema.
+
+Lógicamente, nunca podríamos llegar a soportar una carga brutal- del orden de magnitud de Facebook, o incluso mucho menos buscando servidores más caros- no existen servidores de tal potencia. Pero seguimos teniendo opciones sencillas. Si en vez de coger un servidor, cogemos más de uno y copiamos toda la base de datos y todo el sistema en estos servidores, las carga se puede repartir en ellos prácticamente a la perfección; si compramos 7 servidores, multiplicaremos las peticiones que podemos atender casi por 7.
+
+Jugando con servidores más o menos costosos y en mayor o menor cantidad de ellos, podemos atender "tantas peticiones como queramos", a un coste usualmente bastante razonable.
+
+Adicionalmente, la mayor parte de "mostrar información almacenada" en la red hoy en día tiene una característica- es enormemente repetitiva; la página principal de un diario puede necesitar mostrarse a millones de usuarios, pero es esencialmente la misma para todos- así que por muy costoso que sea recuperar y formatear la información, es un trabajo que sólo tenemos que hacer la primera vez- luego podemos guardarnos el trabajo realizado y simplemente copiarlo para el resto de peticiones subsiguientes.
+
+Pero el problema es que no todo es mostrar información almacenada. El problema realmente duro es almacenar información.
+
+El primer problema es que nos surge es la persistencia. Normalmente querremos que la información que se guarde en nuestra web sea persistente; es decir, que no desaparezca. Eso nos obliga para cada escritura a realizar el trabajo duro, registrar esta información en un disco duro o un SSD. Esto es algo que no nos podemos ahorrar de ninguna manera y que de hecho, como veremos ahora, constituye un verdadero límite doloroso al rendimiento que podemos ofrecer.
+
+Un sistema básico puede perfectamente realizar 1500 transacciones de escritura por segundo. Como en el caso de las lecturas, simplemente gastándonos dinero podemos ampliar este número muy fácilmente.
+
+El problema, es que una vez alcanzado el límite del sistema, aplicar el mismo truco que antes (poner dos servidores en vez de uno)... no funciona excesivamente bien.
+
+En el caso de las lecturas, asumíamos que podíamos replicarlo todo a todos los servidores para que cualquiera de ellos pueda atender cualquier petición. Esto nos lleva a que cada escritura que realicemos se tendrá que replicar a todos los servidores, con lo que... ¡no ganamos nada! Como cada escritura tiene que "pagarse" en todos los servidores, nuestra velocidad de escritura haciendo esto nunca aumentará.
+
+Así pues, un replicado simple y obvio nos permite escalar la velocidad de lectura, pero no la de escritura. Si nos topamos con nuestro límite de velocidad de escritura... ¿cómo lo superaremos?
+
+Hay varias alternativas.
+
+Una bastante obvia es no replicar las escrituras a todos los servidores. Eso hará que cada servidor pueda escribir independientemente, con lo que combinaremos la velocidad de escritura de todos los servidores y aumentaremos nuestro rendimiento. Pero obviamente, no todos los datos estarán escritos en todos los servidores, y por tanto no podremos usar la estrategia para acelerar lecturas que comentábamos antes.
+
+Lo que podemos hacer entonces es, en vez de repartir todas las peticiones entre todos los servidores, las repartiremos de otra manera, "particionando" la información. Por ejemplo, pondremos a los usuarios de cada país en un servidor diferente. Esto obviamente nos incrementará el rendimiento, siempre y cuando podamos hallar una partición adecuada.
+
+El problema es que muchas veces, esto no es posible. Todos los usuarios de Twitter quieren acceder a los tuits de cualquier usuario, los usuarios están conectados entre sí de maneras arbitrarias, de manera que es imposible particionarlos de ninguna manera.
+
+Cuando nos hallamos en esta situación, tenemos un problema, obviamente. La solución menos costosa es sacrificar la calidad de nuestros datos. Escribamos los datos a no todos los servidores, y repliquémoslo al resto "cuando podamos". Aceptemos que algún servidor tendrá información desactualizada (pero que al menos podremos dar un servicio más o menos potable, pero rápido)... hagamos aproximaciones y aceptemos no dar datos 100% correctos e incluso aceptemos que algún dato puede perderse.
+
+Lógicamente, esto no es factible de aplicar para cosas que requieran exactitud, como compras y pagos y cosas de este tipo... ¿pero para tuits y mensajes en Facebook? Pues probablemente sí.
+
+En esto se fundamentan los sistemas NoSQL que prometen escalabilidad barata- una de las cosas en las que se fundamentan es en no proteger los datos con la paranoia habitual- hecho que debemos aceptar como sacrificio cuando los usamos como atajo a la escalabilidad.
+
+En conclusión- escalar un sistema tiene un coste razonable para las cargas de consultas y visualización de información... los sistemas cuyo punto crítico sea este se pueden escalar mucho de una manera relativamente económica. En cambio, los sistemas cuyo cuello de botella sea la escritura son mucho más complicados de escalar adecuadamente- y uno de los costes que podemos pagar es el de la integridad de esos datos.
+
+actualizado con los comentarios de mi editor habitual[7]
+
+
+=> http://en.wikipedia.org/wiki/Slashdot 1: http://en.wikipedia.org/wiki/Slashdot
+=> http://en.wikipedia.org/wiki/Slashdot_effect 2: http://en.wikipedia.org/wiki/Slashdot_effect
+=> http://www.internetworldstats.com/emarketing.htm 3: http://www.internetworldstats.com/emarketing.htm
+=> https://www.facebook.com/press/info.php?statistics 4: https://www.facebook.com/press/info.php?statistics
+=> http://mashable.com/2011/05/02/bin-laden-death-twitter/ 5: http://mashable.com/2011/05/02/bin-laden-death-twitter/
+=> http://en.wikipedia.org/wiki/Twitter#Outages 6: http://en.wikipedia.org/wiki/Twitter#Outages
+=> http://obm.corcoles.net/ 7: http://obm.corcoles.net/
\ No newline at end of file
--- /dev/null
+# Hombros de gigantes
+2011-10-13
+
+Me he levantado con la triste noticia del fallecimiento de Dennis Ritchie. Es impactante como en un mundo tan cambiante y de evolución vertiginosa como el de la informática, dos de las creaciones de este hombre han cumplido ya más de 40 años y son fundamentales en la informática moderna.
+
+Me refiero al sistema operativo UNIX (padre directo de los actuales Linux [y Android], Mac OS X [y si hemos de creer a Apple, iOS] y Solaris), de Thompson, Ritchie, Kernighan, McIlroy y Ossanna y la verdadera criatura de Ritchie, el lenguaje de programación C, con el que se han implementado gran parte de los sistemas informáticos actuales y que está en los cimientos y raices de la mayor parte del resto.
+
+Pero para mi, Ritchie siempre será la R del K&R, *el* libro sobre C, cuya significancia va más allá de la monumental importancia del C, sino que además es uno de los textos sobre informática de referencia- es sin duda alguna un perfecto ejemplo de cómo debe ser la comunicación en ámbitos ingenieriles, cuyo estilo simple, directo y comprensible y su explicación de conceptos completa y precisa transciende su propósito y llega a inspirar pasión y vocación- al menos a un servidor así le sucedió.
+
+Gracias por todo, Dennis. Te echaremos de menos, pues tus creaciones e influencia nos sobrevivirán a todos.
\ No newline at end of file
--- /dev/null
+# Notas mentales
+2011-10-29
+
+1. Si tenemos un portátil que tenía Windows XP Media Center Edition 2005 preinstalado por el fabricante (en el caso que nos ocupa, un Acer Aspire 5050), reinstalar el sistema operativo de 0 no es posible mediante coger las isos del sistema operativo que da Microsoft y reinstalar. El instalador no aceptará la clave que viene en la pegatina de autenticidad (!). Intentad usar siempre la utilidad de restauración.
+2. En esta página pública de Microsoft[1] podemos obtener los checksums SHA-1 de las isos que proporciona Microsoft de sus sistemas operativos.
+
+
+=> http://msdn.microsoft.com/en-us/subscriptions/downloads/default.aspx 1: http://msdn.microsoft.com/en-us/subscriptions/downloads/default.aspx
\ No newline at end of file
--- /dev/null
+# Superpoderes
+2011-10-25
+
+Breve aviso público:
+
+* La palabra empoderamiento no está en el Diccionario.[1]
+* empoderar.[2] 1. tr. **desus.** apoderar. Era u. t. c. prnl.
+* Véase también apoderar[3], apoderamiento[4]
+
+
+=> http://rae.es/empoderamiento 1: http://rae.es/empoderamiento
+=> http://rae.es/empoderar 2: http://rae.es/empoderar
+=> http://rae.es/apoderar 3: http://rae.es/apoderar
+=> http://rae.es/apoderamiento 4: http://rae.es/apoderamiento
\ No newline at end of file
--- /dev/null
+# ¿Eje de payos?
+2011-11-11
+
+Me he abierto una cuenta de GitHub[1]... De momento no hay nada útil, pero enumero:
+
+* https://github.com/alexpdp7/best-practices[2][3]: ejemplos de programación (de momento, creación de web service invocado mediante JSON-RPC en Java con Spring (variante Java Config, esto es, con muy poquitos XML)
+* https://github.com/alexpdp7/anoqa[4][5]: un proyecto en el que estoy experimentando (publicación de encuestas y extracción de estadísticas), de momento en pañales.
+* https://github.com/alexpdp7/f1.prediction[6][7]: código en pañales para automatizar las porras de Formula 1 al estilo del extinto F1 Wolf. De momento tiene un extractor de datos de la Wikipedia a una base de datos SQL.
+
+
+=> https://github.com/alexpdp7/ 1: https://github.com/alexpdp7/
+=> https://github.com/alexpdp7/best-practices 2: https://github.com/alexpdp7/best-practices
+=> https://github.com/alexpdp7/best-practices 3: https://github.com/alexpdp7/best-practices
+=> https://github.com/alexpdp7/anoqa 4: https://github.com/alexpdp7/anoqa
+=> https://github.com/alexpdp7/anoqa 5: https://github.com/alexpdp7/anoqa
+=> https://github.com/alexpdp7/f1.prediction 6: https://github.com/alexpdp7/f1.prediction
+=> https://github.com/alexpdp7/f1.prediction 7: https://github.com/alexpdp7/f1.prediction
\ No newline at end of file
--- /dev/null
+# Hazañas informáticas V: Las máquinas de Turing y Von Neumann
+2011-11-05
+
+¿Qué es un ordenador?
+
+A primera vista, esto parece una pregunta sencilla. ¿Es una cosa con pantalla y teclado? Si es eso, ¿es una calculadora de mesa convencional un ordenador? ¿Es una consola un ordenador? ¿Un móvil?
+
+Antes de 1936, existían bastantes máquinas bastante parecidas a ordenadores- existían calculadoras, máquinas de codificación como la Enigma, etc.; hasta los griegos construyeron máquinas que podían calcular la posición de las estrellas en el firmamento[1]. Sin embargo, ninguna de estas máquinas tenía la flexibilidad que tienen los ordenadores de hoy en día- las calculadoras pueden hacer operaciones matemáticas, Enigma podía codificar y decodificar textos, el mecanismo de Anticitera podía localizar los astros- pero ninguna de ellas podía hacer nada más que aquello para lo que estaban pensadas.
+
+En 1936, Turing[2], uno de los padres fundadores, describió una sencilla máquina teórica que consiste en un cabezal situado sobre una cinta (infinita) que contiene símbolos. El cabezal puede desplazarse por la cinta, leyendo y escribiendo símbolos. Esta máquina tiene un estado, y según lo que lee mediante el cabezal, puede alterar su estado, desplazarse y escribir.
+
+Esta construcción simple (la definición informal es de un par de líneas; la formal[3] no es mucho más larga) es sin embargo muy flexible. Dada una definición de estados y comportamientos adecuados, la máquina de Turing puede realizar, por ejemplo, cualquier cálculo que se nos ocurra; dada una cinta con símbolos que describan números, puede sumarlos, multiplicarlos, etc. y en general, realizar cualquier computación que pueda realizar un ordenador de hoy en día. Esto tiene un primer interés; la máquina de Turing puede modelizar cualquier proceso informatizable, y por tanto, nos puede servir como base teórica para analizarlos- podemos describir una máquina de Turing (sus comportamientos, símbolos, movimientos, estados, etc.) que realice cualquier cálculo.
+
+Sin embargo, podemos dar un paso más allá. Dado que podemos realizar cualquier operación computable con una máquina de Turing, esto nos lleva a decir que podríamos programar una máquina de Turing de manera que interprete los símbolos en su cinta como la descripción de una máquina de Turing- con los comportamientos del cabezal, sus estados, los símbolos etc.; y luego colocar más allá en la cinta los datos que queremos que procese. Es decir; podríamos describir el proceso de suma y luego colocarle unos números para que sume. Esta máquina de Turing podría, sin variar su programación y sólo cambiando los símbolos impresos en la cinta, realice cualquier cosa que pueda realizar una máquina de Turing- es decir, podemos obtener una máquina de Turing única "universal"- cuya programación le permite realizar cualquier cálculo computable.
+
+Este proceso mental teórico nos sugiere una cosa interesante- podemos construir una máquina que a partir de unos "datos" (en este caso, unos símbolos en una cinta) que describen el cálculo a realizar y los datos en sí, realice cualquier operación que podamos describir- en efecto, una máquina "programable".
+
+Una vez más, esto tiene un interés teórico considerable, pero obviamente una máquina que procese una cinta infinita, leyendo y escribiendo símbolos de ella no parece algo muy práctico (y de hecho no lo es).
+
+Paralelamente a las elucubraciones de Turing, otros científicos que trabajaban en máquinas de computación llegaban a ideas similares; Konrad Zuse[4] en Alemanía y Eckert y Mauchly en EEUU comenzaron a elaborar máquinas con conceptos de programabilidad; Zuse, aburrido de realizar cálculos en su trabajo como ingeniero aeronáutico, creo el Z1, de programabilidad limitada y funcionamiento problemático en 1938, seguido del Z2 en 1939 y finalmente el completamente programable Z3 en 1941. Eckert y Mauchly trabajaban en el proyecto EDVAC[5], para crear una máquina para calcular trayectorias de artillería, al que se unió John Von Neumann[6] en 1944. Se acredita a Von Neumann con la primera descripción "práctica" de una máquina programable ampliamente conocida publicada en 1945, que explica lo que ahora se conoce como arquitectura de Von Neumann.
+
+La arquitectura de von Neumann es en sí muy parecida a la máquina universal de Turing, pero con una implementación física mucho más realizable- un procesador con unidades capaces de realizar cálculos aritméticos y de almacenar pequeñas cantidades de información, una memoria que almacena datos y programas, dispositivos de entrada y salida (teclados, pantallas, etc.) y lo que une a todos; el hecho de que el procesador lee instrucciones de su memoria y las va ejecutando, leyendo y modificando datos de la misma memoria y interactuando mediante sus dispositivos.
+
+Las máquinas con arquitectura de Von Neumann eran infinitamente más versátiles que las máquinas de propósito único anteriores- eran programables y eso hacía que cualquier problema se pudiese afrontar con un programa nuevo, y que las mejoras en potencia de estas se verían traducidas en mejoras en la resolución de todos los problemas- máquinas potentes podrían resolver problemas más complejos y más grandes en menos tiempo.
+
+Pese a mejoras conceptuales, y por supuesto, una brutal evolución tecnológica, el ordenador donde estoy tecleando esto ahora mismo es esencialmente una máquina de Von Neumann según descripciones de hace 66 años, y los problemas que puede resolver no son ni más ni menos que aquellos que podía resolver teóricamente la máquina universal de Turing tal como fue descrita hace 75 años- sorprendentemente en todo esto tiempo aún no hemos inventado nada práctico que pueda resolver algo que no pudiera resolver una máquina de Turing. Además, ahora prácticamente cada dispositivo electrónico es programable- hasta las calculadoras de escritorio son por dentro máquinas de von Neumann (aunque no sean fácilmente programables)- las máquinas de un solo propósito están casi extintas.
+
+Así pues, en más de 60 años hemos visto una descomunal evolución en las máquinas programables- que han pasado de costar millones de euros y ocupar habitaciones a ser asequibles por todo el mundo y hacer cosas que nadie soñó cuando se crearon, pero por contra, aún no hemos superado los principios teóricos postulados por los fundadores de la informática.
+
+
+=> http://en.wikipedia.org/wiki/Antikythera_mechanism 1: http://en.wikipedia.org/wiki/Antikythera_mechanism
+=> http://en.wikipedia.org/wiki/Alan_Turing 2: http://en.wikipedia.org/wiki/Alan_Turing
+=> http://en.wikipedia.org/wiki/Turing_machine#Formal_definition 3: http://en.wikipedia.org/wiki/Turing_machine#Formal_definition
+=> http://en.wikipedia.org/wiki/Konrad_Zuse 4: http://en.wikipedia.org/wiki/Konrad_Zuse
+=> http://en.wikipedia.org/wiki/EDVAC 5: http://en.wikipedia.org/wiki/EDVAC
+=> http://en.wikipedia.org/wiki/John_von_Neumann 6: http://en.wikipedia.org/wiki/John_von_Neumann
\ No newline at end of file
--- /dev/null
+# Hazañas informáticas VI: el sistema UNIX
+2011-11-16
+
+Si habéis estado siguiendo esta serie de artículos[1], habréis podido percibir un notable patrón- los sujetos de los que hablo no suelen ser muy recientes. Internet se conoce como tal desde el 82, el modelo relacional se formuló en el 69, las funciones hash aparecen mencionadas en una publicación en el 53, el sistema RSA data del 78 y las máquina de Turing y von Neumann son de allá por los años 40.
+
+Es decir, la hazaña informática más jovencita es más vieja que yo con sus 33 años de edad. Pero ninguna de ellas está obsoleta- es más, todas ellas siguen vigentes y es posible que algunas sobrevivan más de un siglo (sólo es posible que el criptosistema RSA quede obsoleto si algún día la computación cuántica resulta práctica- aunque con toda probabilidad sea reemplazado por un criptosistema de clave pública similar).
+
+El que hoy nos ocupa es otro jovenzuelo- el sistema operativo UNIX nació en 1970 en un laboratorio de Bell Labs, como sistema operativo para un videojuego implementado por un equipo de programadores aburridos en el proyecto Multics. Con el pretexto de adaptarlo para el procesado de textos, Thompson, Ritchie, Kernighan, McIlroy y Ossanna asentaron una de las dos familias de sistemas operativos que aún hoy pervive con cierta popularidad (la otra sería la familia de los 360 de IBM, que es más antigua aún).
+
+UNIX se basa en conceptos sencillos- se implementa usando el lenguaje C (hijo del recientemente fallecido Ritchie) portable, simple y eficiente en un momento en que los sistemas operativos se implementaban directamente sobre el procesador, ligándolos al hardware para el cuál estaban diseñados y dificultando su desarrollo; un sistema de archivos jerárquico, cualidades de multiusuario y multitarea... todos ellos conceptos imprescindibles hoy en día. Además, introduce la filosofía Unix de programas pequeños comunicándose entre ellos- haciéndolo extremadamente versátil pero simple, una cualidad vital para ser extremadamente apropiado para gente como los programadores.
+
+Pero más allá de ello, UNIX fue "pionero" en el hecho de que su código (junto con el de los compiladores del lenguaje C) fueran distribuidos libremente- la condena de las prácticas monopolísticas de AT&T impedían su comercialización y por contra forzaban a distribuirlo a quien lo pidiera. Si hoy en día es increíblemente costoso desarrollar un sistema operativo, en esa época primitiva, lo era aún más; y los sistemas operativos de la época eran por tanto costosos y, al ser no portables, sólo funcionaban en un determinado tipo de hardware. La distribución de Unix, por tanto, permitía a cualquiera aprovechar su código, adaptarlo al hardware que tenían y disponer de un sistema operativo potente por un coste relativamente bajo.
+
+Lógicamente, mucha gente se sumó al carro- compañías comerciales que lo usaron o incluso lo extendieron y comercializaron (HP, Solaris, IBM, etc.; hasta Microsoft comercializaba su propio Unix hasta el 89). Pero el desarrollo quizás más importante se dio en universidades, particularmente en la de Berkeley en California. En el 83 AT&T quedó liberada de los corsés antimonopolistas y pudo comercializar Unix, movimiento con el cual los Unix no comerciales, y en especial el de Berkeley comenzaron a cobrar importancia, ya que eran los únicos que quedaban como libremente distribuibles.
+
+Los sistemas comerciales siguieron su camino y perduran hasta nuestros días; HPUX, AIX y especialmente Solaris aún son moderadamente populares, sobre todo en grandes entornos comerciales de computación.
+
+Por otra parte, los sistemas académicos también siguieron su evolución paralela. Del código de Berkeley surgieron sistemas operativos como NetBSD, FreeBSD y OpenBSD- el BSD es de Berkeley Software Distribution- y el nucleo de Darwin que está en las entrañas de Mac OS X (y según dice Apple, el iOS del iPhone, iPod Touch e iPad) es también un "BSD".
+
+En los 90, un estudiante de informática finlandés, frustrado por no disponer de un sistema operativo Unix viable para ordenadores personales (que en aquel entonces eran básicamente Ataris, Amigas, Macs y PCs con MS/DOS y Windows), desarrolló un sistema operativo estilo Unix, aprovechando las herramientas GNU; algo que acabo dando luz a Linux (o GNU/Linux).
+
+Llegando hasta hoy, los Unix comerciales siguen teniendo su importancia en entornos empresariales- Linux y los BSD libres han ganado una gran importancia, OS X es el segundo sistema operativo para ordenadores personales más popular; en el ámbito móvil, Android se basa en Linux y según dice Apple, el iOS del iPhone también, con lo que en realidad, gran parte de los ordenadores de hoy en día son "Unix"- las excepciones más notables son Windows, los sistemas operativos de los mainframes (básicamente los de IBM descendientes de la serie 360) y los sistemas operativos de móviles que no son Android ni iOS (Blackberry está transicionando de su sistema operativo a QNX [un Unix], Nokia aún conserva su Series 40 para móviles de bajo coste y está matando Symbian...).
+
+El mérito de Unix radica en simplemente eso- su sencillez y claridad de conceptos inicial han perdurado hasta nuestros días- siendo difícil la valoración de su repercusión frente a la serie 360, pero claramente siendo uno de los desarrollos informáticos más significativos de la historia de la computación.
+
+
+=> http://alex.corcoles.net/categoria/series/hazanas-informaticas/ 1: http://alex.corcoles.net/categoria/series/hazanas-informaticas/
\ No newline at end of file
--- /dev/null
+# Abrir links en nueva ventana en infojobs.net
+2011-12-06
+
+Si estáis hasta las narices de que no podáis usar el botón de la ruedecita para abrir ofertas de trabajo en una ventana nueva en infojobs.net[1], el siguiente script de Greasemonkey[2] os puede ser útil:
+
+> // ==UserScript==
+> // @name Open in new tab in Infojobs
+> // @namespace http://use.i.E.your.homepage/[3]
+> // @version 0.1
+> // @description enter something useful
+> // @include http://www.infojobs.net/jobsearch/search-results/list.xhtml[4]
+> // @include https://www.infojobs.net/jobsearch/search-results/list.xhtml[5]
+> // @copyright 2011+, You
+> // ==/UserScript==
+>
+> window.setInterval(function() {
+> unsafeWindow.jQuery("[id^='table_results_offer']").each(function() { this.onclick = null; })
+> }, 1000);
+Yo lo uso en Chrome con Tampermonkey[6]. Es cutre y nada correcto, pero funciona.
+
+actualización: pongo la URL https:// en el @include para que también funcione si te has identificado en Infojobs.
+
+
+=> http://www.infojobs.net/ 1: http://www.infojobs.net/
+=> https://addons.mozilla.org/en-US/firefox/addon/greasemonkey/ 2: https://addons.mozilla.org/en-US/firefox/addon/greasemonkey/
+=> http://use.i.E.your.homepage/ 3: http://use.i.E.your.homepage/
+=> http://www.infojobs.net/jobsearch/search-results/list.xhtml 4: http://www.infojobs.net/jobsearch/search-results/list.xhtml
+=> https://www.infojobs.net/jobsearch/search-results/list.xhtml 5: https://www.infojobs.net/jobsearch/search-results/list.xhtml
+=> https://chrome.google.com/webstore/detail/dhdgffkkebhmkfjojejmpbldmpobfkfo 6: https://chrome.google.com/webstore/detail/dhdgffkkebhmkfjojejmpbldmpobfkfo
\ No newline at end of file
--- /dev/null
+# Construye tu guía de TV
+2011-12-18
+
+He publicado en Github tvguide[1], un miniproyectillo que incluye un scraper de guía televisiva (la de El Mundo) y un mini-interfaz web que muestra los 5 próximos programas de los canales que recibo en mi casa que están recogidos por El Mundo (i.e. falta RAC105 y algunos locales).
+
+El proyecto utiliza Maven y debería ser fácilmente compilable y trabajable desde Eclipse. Para compilarlo antes tendréis que compilar mi librería de utilidades commons.pdp7[2].
+
+
+=> https://github.com/alexpdp7/tvguide 1: https://github.com/alexpdp7/tvguide
+=> https://github.com/alexpdp7/commons.pdp7 2: https://github.com/alexpdp7/commons.pdp7
\ No newline at end of file
--- /dev/null
+# Dilemas en la ducha
+2011-12-15
+
+Unos emails con un ex-compañero de trabajo me ha traído a la cabeza el dilema del prisionero. El artículo de la Wikipedia[1] es más completo y extenso, pero refresquemos.
+
+Dos hombres están arrestados sospechosos de un crimen. La policia les ofrece por separado testificar en contra del otro (sin que puedan comunicarse entre ellos). Depende de si ninguno delata, uno o ambos, cada uno tendrá un destino diferente.
+
+En la versión clásica del problema, si ninguno delata al otro, ambos cumplirán un mes de cárcel; si uno delata al otro, el delator queda libre y el otro cumple un año de condena. Si ambos se delatan, van a la cárcel tres meses.
+
+Lo que perjudica a ambos menos en global es, por supuesto, no delatar; cumplen 2 meses en total de condena, mientras que las otras opciones son 6 o 12 meses de condena. Pero claro, una persona que delata se asegura que no estará un año en prisión, y en el caso que el otro no delate, sale libre.
+
+Por tanto, el bien individual y el bien común llevan a comportamientos diferentes.
+
+El estudio del dilema del prisionero es harto interesante, ya que modeliza muchas situaciones "reales" y nos permite estudiarlas, comprenderlas y analizarlas. La llamada teoría de juegos estudia este problema y llega a la conclusión que en la versión clásica y con los parámetros descritos, la mejor estrategia es delatar **siempre** (dependiendo de la duración de las condenas según las delaciones, la mejor estrategia es callar siempre, claro). Incluso en la extensión común "iterativa", en la que la situación se presenta un número determinado de veces seguidas y los prisioneros "recuerdan" la historia, la mejor estrategia es delatar siempre; es lo que da el mejor resultado "egoísta"- si alguna vez callas, un oponente que delate siempre hará que pases más tiempo en prisión.
+
+Sin embargo, el resultado más sorprendente es que si jugamos iterativamente pero los prisioneros no saben exactamente cuántas partidas se van a jugar, el resultado cambia y se pueden obtener mejores resultados callando a veces (el artículo de la Wikipedia lo explica bastante bien)- las estrategías más efectivas son cosas como el "ojo por ojo" (hacer lo que ha hecho tu oponente en la partida anterior) o estrategias "cooperativas". Curiosamente, bajo ciertas condiciones, el bien común coincide con el bien propio.
+
+Este análisis se puede extrapolar a situaciones similares. Por ejemplo tomemos el caso de los atascos. En general, la gente se puede desplazar más rápido usando su coche que el transporte público, salvo si mucha gente coge su coche, lo cuál crea un atasco y el coche resulta más lento que, por ejemplo, el metro. ¿Hace la gente este tipo de análisis (implicita o intuitivamente)?
+
+Desde luego, el análisis teórico es fascinante, pero lo realmente interesante es llevarlo al mundo real y ver como interactúa el argumento lógico con el psicológico- ¿qué tiene más peso para el individuo? ¿Actuamos racionalmente? ¿Reacciona todo el mundo igual?
+
+
+=> http://en.wikipedia.org/wiki/Prisoner%27s_dilemma 1: http://en.wikipedia.org/wiki/Prisoner%27s_dilemma
\ No newline at end of file
--- /dev/null
+# Upserts...
+2011-12-17
+
+Trabajando en un pequeño experimento[1], se me ha ocurrido un insert idempotente:
+
+insert into foo (bar) (select 'bar_value' as bar where not exists (select 1 from foo where bar = 'bar_value'));
+
+(la sintaxis es de PostgreSQL, pero supongo que es adaptable a otras bases de datos). Igual intento adaptarlo a hacer upserts.
+
+
+=> https://github.com/alexpdp7/tvguide 1: https://github.com/alexpdp7/tvguide
\ No newline at end of file
--- /dev/null
+# Backups con ZFS
+2012-01-19
+
+Hasta ahora había estado usando el excelente rdiff-backup para hacer backups de mis datos (unos 700gb) a una unidad externa USB. Realmente funciona muy bien; el último backup está directamente disponible en el disco- sin necesitar usar rdiff-backup para leerlo y se guardan incrementos, con lo que es relativamente sencillo recuperar ficheros borrados (usando sus herramientas). Podemos eliminar incrementales fácilmente y en definitiva, es una solución sencilla y harto recomendable.
+
+Sin embargo, tiene en mi opinión un par de defectos. No es sencillo comprimir los backups convenientemente (se puede hacer usando un sistema de archivos que soporte compresión, pero no hay muchos) y si renombras o mueves archivos grandes, pagas su espacio doble (una vez en su estado anterior, otra vez en el nuevo). A parte, la gestión de incrementales es lenta y los backups también tienden a alargarse.
+
+Por ello se me ocurrió usar ZFS. ZFS es el sistema de archivos "futurista" de Sun Microsystems (ahora Oracle). Incluye snapshots baratos, deduplicación y compresión transparente. Así pense que si sincronizaba los datos que quería preservar a un volumen ZFS y tomaba un snapshots, tendría backups (podría usar los snapshots para recuperar archivos antiguos). Gracias a la deduplicación, un mismo archivo que en varios snapshots tuviese nombres diferentes sólo sería almacenado una vez. Y de bonus, compresión.
+
+El problema es que el futuro de ZFS es incierto. Lógicamente Oracle seguirá soportándolo sobre Solaris, pero lógicamente no estoy dispuesto a pagar por ello habiendo sistemas operativos gratuitos perfectamente usables. Actualmente ZFS (y Solaris) son open source, y por ello ZFS funciona en otros sistemas operativos, pero no está claro lo que pueda suceder a partir de ahora.
+
+En todo caso, me lancé a la piscina. En Linux existen dos implementaciones, ZFS on Linux[1], de reciente aparición- pero no es del todo agua clara (probablemente no se pueda distribuir dentro de Debian y se debe compilar contra el kernel- nada irresoluble pero desde luego inconveniente), así que me decidí por ZFS-Fuse[2], que está en Debian y parece más "estable".
+
+Una vez instalado mediante apt-get o similares, simplemente tenemos que hacer algo así como:
+
+zpool create zfs /dev/sdx zfs create zfs/backup zfs set dedup=verify zfs/backup zfs set compression=on zfs/backup
+
+, donde /dev/sdx es un dispositivo externo. Dedup y compression tienen varias opciones que vale la pena investigar. Una vez esto, uso un script como este para el backup:
+
+#!/bin/sh
+
+/etc/init.d/zfs-fuse start zpool import -a rsync -ax --delete --exclude ... --exclude ... / /zfs/backup/julius/root/ zfs snapshot zfs/backup@$(date +%Y%m%d%H%M) zfs list -t snapshot zpool export zfs /etc/init.d/zfs-fuse stop
+
+; la mayor parte del follón es que exporto e importo el sistema ZFS para poder desconectar el dispositivo USB.
+
+El rendimiento de ZFS bajo Fuse y mi disco USB es horripilante (3Mb/s), probablemente una confabulación de FUSE, lentitud de USB, mal disco duro externo, compresión y deduplicación, pero una vez pasa el interminable primer backup, el incremental me parece hasta más rápido que el de rdiff-backup. La deduplicación y compresión no dan muchos réditos de momento, pero es un sistema interesante.
+
+
+=> http://zfsonlinux.org/ 1: http://zfsonlinux.org/
+=> http://zfs-fuse.net/ 2: http://zfs-fuse.net/
\ No newline at end of file
--- /dev/null
+# Mi tema de Wordpress
+2012-01-04
+
+.assistive-text, .screen-reader-text, .menu, #nav-above, #colophon { display: none; }
+
+#page { margin-left: auto; margin-right: auto; max-width: 1000px; }
+
+#primary { max-width: 720px; min-width: 320px; float: left; margin-left: 15px; margin-right: 15px; }
+
+#secondary { min-width: 175px; width: 240px; float: left; }
\ No newline at end of file
--- /dev/null
+# Stumblr
+2012-01-05
+
+Me he abierto un Tumblr en koalillo.tumblr.com[1]. Sustituirá a mi uso de Google Plus para compartir cosas cortas (principalmente del Google Reader). Crosspostea a mi @koalillo[2], Facebook[3] y el lateral de este blog.
+
+
+=> http://koalillo.tumblr.com/ 1: http://koalillo.tumblr.com/
+=> http://twitter.com/koalillo 2: http://twitter.com/koalillo
+=> http://www.facebook.com/alex.corcoles 3: http://www.facebook.com/alex.corcoles
\ No newline at end of file
--- /dev/null
+# Minirreseña : Sansa Clip + 2GB
+2012-02-10
+
+Tras un breve interludio, he podido recuperar la costumbre de escuchar música mientras trabajo. Raro que es uno, en vez de usar el ordenador donde trabajo o el móvil, me he decidido a comprarme un reproductor de MP3. Principalmente por:
+
+* No tengo ninguna radio portátil y me gusta escuchar Carrusel DeportivoTiempo de Juego. Puedo escucharlo en streaming con el móvil, pero sólo es viable cuando tengo wifi a mano y además, funde batería
+* La batería de la Blackberry me aguanta bastante (con un uso intenso he llegado a casa con un 50%), pero no me gusta despilfarrarla inútilmente
+* No me gusta tener mi colección de música en ordenadores ajenos
+
+Con ello, me puse a buscar reproductores. Criterios:
+
+* Radio FM
+* 20GB+ de capacidad; paso de tener que seleccionar música
+* Debe poderse usar para almacenar ficheros arbitrarios (Zune 120 que me cedían, eliminado [nota: los iPod requieren el uso de iTunes para gestionar música, pero puedes usarlos como mass storage para guardar ficheros. El Zune, hasta donde yo he podido ver, no)
+* Conector estándar. Bonus si se enchufa sin cable (como una memoria Flash USB) [nota: podría considerarse que el conector de los iPod es estándar de facto]
+* Carga por USB
+* Sencillez de gestión. Tengo una máquina virtual con Windows, pero en general uso Linux. Usar cosas que se basan en protocolos cerrados no me gusta (puede funcionar *ahora*, pero igual mañana no). MTP me parece aceptable (aunque no le veo la utilidad y toca un poco las narices- pero al menos es un protocolo publicado). Zune fuera otra vez (usa un MTP especial sin documentar [y ni existen implementaciones alternativas]) y iPod (iTunes, simplemente di no).
+
+Inicialmente pensaba que encontraría dispositivos que cumpliesen todo esto a porrillo, pero la verdad que al final tuve que irme al famoso Sansa Clip+[1] de 2GB con tarjeta MicroSD de 32GB. El aparato está por 36€ en amazon.es, junto con la tarjeta de memoria y gastos de envío se queda todo en unos 60€ (una auténtica ganga, en mi opinión).
+
+El único requisito que no cumple es que tiene conector para cable MiniUSB cuando hubiera preferido que fuese "macho" y se pudiese conectar directamente a un puerto USB: posibilidad de gestionar música, ficheros y cargar sin tener que tener un cable a mano. Los cables MiniUSB son suficientemente comunes como para que no me parezca algo insuperable.
+
+El funcionamiento del aparato es correcto- cumple las 15h de batería anunciadas con bastante precisión (me da para dos días sin cargarlo, pero mi intención es cargarlo mientras me voy a comer- al parecer las baterías de ion litio son amigas de las cargas frecuentes). El interfaz es de botoncitos con d-pad, todos muy correctos y se puede usar perfectamente dentro de un bolsillo (pausa, volumen, siguiente canción...), aunque lógicamente no es muy bueno para navegar (buscar un artista por nombre, por ejemplo, es un rollo en un d-pad; sería mejor algo "analógico" como la rueda de un iPod o una pantalla táctil). La funcionalidad de radio es un poco limitada (pocos presets, la navegación por presets es unidireccional).
+
+En cualquier caso, el aparato cumple con su función más que aceptablemente y con fallos perfectamente tolerables.
+
+El bonus es que es uno de los reproductores mejor soportados por Rockbox[2], un popular firmware para reproductores MP3. Este podría en principio corregir algún defectillo (supongo que la funcionalidad de radio será mejor) y mejorar el interface, a la par que ofrecer alguna funcionalidad extra (viene con bastantes juegos). Sin embargo, a pesar de que el proceso de instalación para sencillo y seguro, de momento no lo he intentado- igual cuando el aburrimiento se apodere de uno...
+
+
+=> http://www.sandisk.com/products/sansa-music-and-video-players/sandisk-sansa-clipplus-mp3-player 1: http://www.sandisk.com/products/sansa-music-and-video-players/sandisk-sansa-clipplus-mp3-player
+=> http://www.rockbox.org/ 2: http://www.rockbox.org/
\ No newline at end of file
--- /dev/null
+# La guía del autoestopista galáctico a la administración de sistemas (I)
+2012-03-18
+
+Tradicionalmente se divide el campo de la informática en dos grandes áreas: programación y administración. El programador idea software nuevo o modifica el existente para cumplir con requisitos que no cubre ningún sistema disponible, mientras que el administrador utiliza software existente para cubrir estos requisitos. El entusiasta informático (o pringado de turno) a veces adquire alguna de estas (o ambas) funciones, aunque con mayor frecuencia suele desempeñar la segunda.
+
+Mantener nuestro equipo funcionando e instalar el software que queremos es, por supuesto, administración de sistemas, así como otros temas de hardware doméstico, como mantener una red local. Esta serie de artículos, sin embargo, se centrará en la administración de sistemas no doméstica.
+
+Mucha gente desea tener un blog, una web, un sistema de correos propio, etc. por los más diversos motivos. Por supuesto, para la mayoría de cosas se pueden encontrar proveedores que por un módico precio (o en ocasiones, incluso gratis) podrá proporcionarnos estos servicios fácilmente, pero en ocasiones no encontraremos a alguien que cumpla nuestros requisitos, no querremos depender de un tercero o simplemente querremos experimentar.
+
+Cabe decir, que salvo la última situación o variantes, probablemente estemos cometiendo un error. Pero si estás leyendo esto, probablemente sea tarde para disuadirte. Así que, sigamos adelante (nota: iré recordándote esto periódicamente).
+
+Lo primero es determinar tus requisitos. ¿Queremos tener un blog? ¿Quizás unos foros? ¿Queremos almacenamiento online? ¿Un servidor de correo?
+
+Especifiquemos. ¿Cuánto espacio necesitamos? ¿Qué software cumple con nuestros deseos? Todo esto debería ser fácil de articular- estamos emprendiendo este viaje porque ninguna de las soluciones que hemos investigado cumple nuestros requisitos: ¿cuáles son?
+
+Los requisitos no están aislados, forman una cadena de dependencias. Si quiero usar Wordpress, necesitaré un servidor web capaz de ejecutar PHP de una determinada versión, una base de datos MySQL de otra versión, etc. Tomemos un momento para intentar enumerar en la medida de lo posible todos nuestros requisitos.
+
+Típicamente, necesitaremos un sistema con el que podamos satisfacer los requisitos. Hay básicamente dos alternativas, escoger un sistema gestionado o no gestionado.
+
+Un sistema gestionado es lo que comunmente se conoce por estos lares como "hosting compartido". El proveedor nos da un sistema con PHP, MySQL en unas determinadas versiones al cual no tenemos acceso completo. En cambio, un sistema no gestionado en general nos da un sistema operativo al que tenemos acceso prácticamente completo- esto es lo que en general se denomina VPS o servidor dedicado (dependiendo de si el sistema es una máquina virtual o física).
+
+En general, cuanto más gestionado el sistema, menos trabajo para nosotros pero también menos control. Si el hosting compartido cumple nuestros requisitos, seguramente será más barato y nos requerirá menos tiempo hacer funcionar lo que queremos. Muchas veces estos hostings compartidos ofrecen software conocido (i.e. Wordpress, etc.) con sencillos instaladores que lo ponen en marcha sin esfuerzo. Es poco probable, sin embargo, que quien lea estas líneas se vea satisfecho por estas opciones, pero cabe valorarlas y (una vez más), poder señalar qué requisito no cumplen.
+
+Los sistemas no gestionados son un poco más complicados. Nuestro primer paso probablemente sea escoger uno. El precio y fama son factores importantes, pero también debemos considerar otros.
+
+El sistema operativo es probablemente la decisión clave. Muchas veces nuestros propios requisitos nos forzarán a escoger uno- un software puede funcionar sólo sobre Windows o sobre alguna versión específica de Linux. Si no, la cosa es un poco más complicada.
+
+Por temas de coste, los sistemas Linux suelen ser una elección natural- Windows en general es más caro y representa una parte sustancial del coste de un alojamiento, y además muchas aplicaciones populares no están tan probadas y rodadas sobre Windows. Existen otros sistemas operativos fuera de estos dos, por supuesto, pero para las situaciones en las que nos encontramos no suelen ser muy populares ni adecuados.
+
+Dentro de las distribuciones Linux hay un vasto elenco de opciones, y resulta poco viable evaluarlas todas. Mi sugerencia se reduce a escoger sólo entre dos: CentOS/RHEL y Debian.
+
+RHEL (Redhat Enterprise Linux) es la distribución comercial de Linux más popular. Su interés se centra en dos puntos principales:
+
+* Algunos programas comerciales están pensados para RHEL
+* Su largo ciclo de vida
+
+Si deseamos ejecutar algo que requiere RHEL, raramente hay otra opción viable, así que nuestra elección está realizada. Sin embargo, esto cada día es menos habitual, así que el motivo principal para usar RHEL es su prolongado ciclo de vida. Redhat se compromete a dar actualizaciones exclusivamente de corrección de bugs y de seguridad durante mucho tiempo- concretamente de hasta 10 años.
+
+¿Por qué es importante esto? Pues porque los servicios que expongamos a Internet deben ser seguros. Nuestro servicio no funcionará si un ente hostil lo ataca con éxito y lo deja inoperativo. Existe una poderosa motivación económica que hace que sea rentable atacar sistemas, lo que se traduce en un riesgo más que significativo. Así pues, deberemos ser proactivos en la corrección de defectos de seguridad, y eso prácticamente siempre implica la instalación de nuevas versiones del software que usamos.
+
+La ventaja de RHEL es que nos proporcionan estas actualizaciones sin ningún otro tipo de cambio. Es decir, sin mejoras de funcionalidad. Esto que parece contraproducente es en cambio a menudo una gran ventaja. Una nueva funcionalidad puede introducir bugs o cambios en el funcionamiento del software que nos fuercen a trabajar; actualizar configuraciones, instalar otro software, etc. Si nuestro sistema cumple nuestros requisitos, es probable que esto no nos dé ningún beneficio y sí nos haga perder el tiempo.
+
+Una instalación con RHEL puede ser mantenida al día con correcciones de seguridad casi sin esfuerzo, lo cual es un gran beneficio.
+
+Eso sí, hay tres inconvenientes.
+
+El primero es que RHEL es un producto comercial (y bastante costoso, de hecho). Pero existe una solución sencilla- RHEL es prácticamente completamente open source, con lo que Redhat distribuye libremente el código fuente de RHEL (excepto unas partes específicas que no son open source, pero que en general no nos interesarán), con lo que existen ciertas entidades que cogen este código fuente y construyen clones de RHEL libremente distribuibles. El más popular actualmente es CentOS. La gran diferencia, más allá de las partes no open source, es que estos proyectos no suelen tener las actualizaciones listas a la misma velocidad que la propia Redhat.
+
+El segundo es que esta garantía sólo es aplicable al software incluido dentro de RHEL- cada software que necesitemos que entre dentro de nuestos requisitos que no esté en RHEL nos irá restando de la facilidad de mantenimiento. Con un poco de suerte, el software que querremos estará en repositorios de calidad como EPEL, repositorio mantenido por gente de Fedora que funciona bien y está bien actualizado- existen algunos repositorios de este tipo. Alternativamente, hay software que dispone de repositorios propios de RHEL que funcionan bastante bien. Pero añadir estos repositorios de terceros siempre añade algo de entropía al sistema e incluso podemos encontrarnos que el software que queramos no esté empaquetado para RHEL y lo tengamos que instalar desde el código fuente... haciendo de los procesos de actualización un proceso manual.
+
+El tercero es que el proceso de actualización de una versión de RHEL a otra no está soportado. Un sistema instalado con RHEL 6 (la versión más reciente), no podrá ser actualizado fácilmente a RHEL 7 cuando este salga a la luz (salen cada dos-tres años). Podremos usarlo sin problemas hasta que acabe su (largo) ciclo de vida de 10 años, pero cuando acabe o necesitemos actualizar a RHEL 7, lo mejor será construir un nuevo sistema con RHEL 7.
+
+Si el motivo para escoger RHEL es la facilidad de mantenimiento y actualización, todo requisito que se salga de los paquetes de RHEL es un motivo más para no usar RHEL.
+
+Y si el software que queremos no está en RHEL, ¿qué hacemos? Pues la otra alternativa es Debian. Debian es la distribución completamente open source más relevante del mercado. Sus objetivos incluyen el de ser "el sistema operativo open source universal", algo que incluye la voluntad de empaquetar todo software libre existente (y de hecho, también parte del no libre), algo que se refleja en el descomunal número de paquetes; si es open source, lo más probable es que esté en Debian.
+
+Sin embargo, esta gran cantidad de paquetes hace más complicado ofrecer un ciclo de vida largo como el de RHEL. Debian tiene una versión estable que sale cada más o menos un par de años (las últimas versiones estables son de 2011, 2009, 2007, 2005, 2002) y tiene actualizaciones de seguridad hasta la siguiente versión estable, así que si con RHEL podíamos estar hasta 10 años actualizando con mínimo esfuerzo, en Debian sólo podremos estarnos 2. Eso sí, Debian sí soporta actualizar entre versiones y al cabo de dos años podremos (con un poco de esfuerzo) pasarnos a la siguiente versión estable.
+
+Debian también nos ofrece testing, una versión constantemente actualizada donde van entrando paquetes nuevos a medida que van saliendo. Testing puede tener más esfuerzo de actualización (pueden entrar paquetes que introducen cambios significativos que nos obliguen a trabajar), pero dispone de software relativamente actualizado y moderno.
+
+En general, la vida con Debian es algo menos cómoda que un RHEL donde nos mantengamos dentro de los paquetes estándares, pero no mucho peor. Y si nuestros requisitos no están cubiertos por los paquetes estándar de RHEL, seguramente viviremos mucho mejor con un servidor Debian. Para ayudaros a tomar esta decisión, podéis usar los índices de paquetes de ambas distribuciones. Podéis consultar en el FTP de Redhat la lista de paquetes disponibles para RHEL 6[1] y Debian ofrece packages.debian.org donde podéis ver qué software hay en stable y testing[2].
+
+Más allá de esto, hay otras diferencias entre ambas; documentación, herramientas administrativas, etc. son diferentes y cada cuál preferirá una u otra (a mi en general me gusta más Debian, pero la documentación de RHEL es muy interesante, por ejemplo). Antes de tomar una decisión también es conveniente que las probemos- con la facilidad hoy en día de usar virtualización es muy muy sencillo instalar ambas distribuciones en máquinas virtuales y hacer pruebas.
+
+actualizado: correcciones del sospechoso habitual[3]
+
+
+=> http://ftp.redhat.com/redhat/linux/enterprise/6Server/en/os/SRPMS/ 1: http://ftp.redhat.com/redhat/linux/enterprise/6Server/en/os/SRPMS/
+=> http://www.debian.org/distrib/packages#view 2: http://www.debian.org/distrib/packages#view
+=> http://obm.corcoles.net 3: http://obm.corcoles.net
\ No newline at end of file
--- /dev/null
+# La guía del autoestopista galáctico a la administración de sistemas (II)
+2012-04-22
+
+Si seguisteis la entrega anterior de esta saga[1], deberíais estar con una lista de requerimientos y una decisión más o menos en firme de qué distribución de Linux usaremos para cumplir nuestros requerimientos (seguramente Debian o CentOS).
+
+El paso siguiente es lanzarse a la piscina. Como dijimos anteriormente, una herramienta muy interesante a utilizar es la virtualización. La virtualización nos permite poder hacer instalaciones de sistemas operativos dentro de nuestro ordenador habitual, completamente aisladas del resto de nuestro entorno y con posibilidad de crear tantas instancias como queramos, de los sistemas operativos que queramos y crearlas, eliminarlas, arrancarlas y pararlas con total libertad. El único requisito duro que necesitamos es memoria; una máquina virtual consume en general tanta memoria como la que tenga la máquina que estemos virtualizando. A pesar de ello, hasta los ordenadores modernos más asequibles cuentan con respetables cantidades de memoria, y para muchas cosas, nos bastará para los habitualmente modestos requerimientos de lo que queramos montar (los ordenadores de hoy en día vienen con 4gb de RAM o más, y para una típica máquina con Linux, Apache, MySQL, etc. nos pueden bastar 256 o 512mb). Otro punto a tener en cuenta es la CPU- si bien en general no necesitaremos una CPU muy potente (una vez más, los requerimientos de CPU de los montajes habituales son bastante modestos), es interesante que nuestra CPU cuente con las extensiones de virtualización, que nos pueden facilitar la vida. Por último, en disco con unos 20-30gb libres por máquina virtual que deseemos suelen ser más que suficientes.
+
+Respecto a los sistemas de virtualización, ciertamente existen muchos, pero cuando quiero virtualizar sistemas "de prueba" a los que quiero acceder desde mi ordenador de escritorio, me decanto por VirtualBox[2], un excelente sistema de virtualización de Sun Oracle, totalmente gratuito y perfectamente funcional, que cubre perfectamente todo lo que le podamos pedir a un sistema de virtualización "de escritorio".
+
+Con VirtualBox instalado y la ISO del sistema operativo que queramos instalar, nos podemos poner en marcha; creamos la máquina virtual, le conectamos la ISO y nos ponemos con el proceso de instalación. La instalación de sistemas operativos Linux se ha simplificado mucho en los últimos tiempos y, especialmente en una máquina virtual donde prácticamente no hay problemas de hardware, la instalación tiende a ser extremadamente sencilla. Unos puntos a tener en cuenta:
+
+* Particionado. A pesar de que muchas distribuciones nos pueden sugerir un particionado complejo, si no tenemos muy claro lo que hacer, o aceptamos la opción por defecto de la distribución o usamos una simple partición para todo. Usar particiones puede tener algunas ventajas, pero muchas veces nos hacen "predecir" erróneamente el uso de disco que haremos y causarnos dolores de cabeza. Con una partición única nos ahorramos estos problemas
+* Usuarios. Es siempre preferible acostumbrarse a usar un usuario no privilegiado personal y usar sudo para escalar privilegios. También es interesante tener un usuario de root, con una contraseña guardada en lugar seguro para posibles emergencias. Por supuesto, toda contraseña debe ser aceptablemente segura (que no sea fácil de acertar; yo recomiendo memorizar una frase de unas cuantas palabras, usar las iniciales de las palabras y añadir algún que otro dígito; e.g. cogiendo el título de este artículo, lgdagalads2)
+* Reloj. La hora de un sistema es más importante de lo que parece para su funcionamiento correcto y pese a que un reloj mal configurado puede no causar problemas, nos simplifica mucho la vida que el reloj sea fiable (por ejemplo, a la hora de revisar logs es importante que estos "digan la verdad" respecto a la hora). Si la distribución no nos ofrece sincronizar el reloj con un servicio como ntpd, es conveniente que lo configuremos nosotros.
+
+En todo caso, ya durante la instalación debemos aplicar una mecánica imprescindible para que todo sea correcto. Se trata de documentar. Debemos ser capaces de reproducir **exactamente** todo lo que realicemos para poner nuestros servicios en funcionamiento. Tras el proceso de instalación y configuración, debemos obtener un documento que contenga todo lo que hacemos y que nos permita instalar otra máquina exactamente igual. Esta documentación es extremadamente útil:
+
+* Nos permite reconstruir la máquina en caso de necesidad, o crear un clon para hacer pruebas
+* Es una guía estupenda para saber cómo está configurada la máquina
+* También nos sirve de punto de partida para hacer copias de respaldo de la máquina
+
+Esta guía no tiene que ser algo más complicado que un fichero de texto plano elaborado a base de copiar y pegar con el bloc de notas. Recomiendo incluir enlaces web a la documentación que hayamos usado (manuales, HOWTOs, etc.), pero aún así incluir lo que hemos hecho (el referente puede desaparecer o cambiar). Personalmente utilizo Redmine[3], un sistema de gestión de proyectos que incluye un correcto wiki, que hace bastante cómodo mantener esta documentación.
+
+Con la guía podemos tranquilamente instalar en nuestra máquina virtual, hacer pruebas, etc. y luego ser capaces de reproducir el proceso (sin pasos en falso) en nuestra máquina en producción. Una herramienta útil que nos proporciona la virtualización son los snapshots. Fácil y cómodamente podemos guardar estados de la máquina y volver a ellos posteriormente. Esto nos permite experimentar y luego volver atrás rápidamente; así pues podemos experimentar sin miedo a "ensuciar" la máquina, tomando un snapshot antes de comenzar.
+
+Tras instalar, y en cuanto tengamos la guía para configurar nuestros servicios en producción, podemos realizar estas operaciones en nuestro entorno de producción y obtener un sistema limpio que cumple los requisitos.
+
+Una vez aquí, tenemos que ser capaces de:
+
+* Crear copias de respaldo. Fácilmente podemos programar copias del sistema con herramientas como cron, rdiff-backup, tar, etc. Partiendo de la documentación del sistema, debemos ser poder capaces de crear copias de toda la información del sistema que nos permitan restaurar el sistema en caso de desastre. Es conveniente que existan copias almacenadas de la manera más independiente del sistema original; física y geográficamente, pero también bajo otro "responsable"- si bien nuestro proveedor de hosting puede ofrecernos un sistema de copias de seguridad, puede ser conveniente almacenar copias también bajo nuestra propia propiedad o la de otro proveedor. También es importante verificar ocasionalmente las copias- un buen sistema es intentar reconstruir el sistema a partir de la documentación y las copias de seguridad en una máquina virtual
+* Actualizar. Debemos introducir en el sistema las actualizaciones (especialmente de seguridad) que vayan apareciendo, de la manera más simple posible. Existen sistemas que nos notifican o incluso pueden instalar las actualizaciones tal como aparecen automatizadamente. En un sistema muy estable tipo RHEL, puede ser válido instalarlas automáticamente dado el poco riesgo que suelen entrañar las actualizaciones. En otras situaciones es mejor recibir las notificaciones e instalar las actualizaciones manual y controladamente
+* Monitorización. Más allá de saber si los servicios están funcionando correctamente (algo a veces más problemático de comprobar de lo que parece), es interesante que recibamos notificaciones de los problemas y de ciertas métricas. Recomiendo siempre una herramienta como logwatch que nos envía un resumen diario de la actividad de la máquina. Una métrica muy interesante de monitorizar es el espacio en disco- si este se llena es un gran problema y es conveniente no dejar que suceda. Por supuesto, los errores en las copias de respaldo son otro punto muy importante. Estos temas se simplifican enormemente si podemos configurar el sistema para que pueda enviar correo con las herramientas estándar
+
+Con estos puntos cubierto, podemos dar un servicio que, pese a no ser completamente profesional, sin un uptime perfecto y sin redundancias, puede ser más que adecuado para la mayoría de los propósitos.
+
+
+=> http://alex.corcoles.net/2012/03/la-guia-del-autoestopista-galactico-a-la-administracion-de-sistemas-i/ 1: http://alex.corcoles.net/2012/03/la-guia-del-autoestopista-galactico-a-la-administracion-de-sistemas-i/
+=> https://www.virtualbox.org/ 2: https://www.virtualbox.org/
+=> http://www.redmine.org/ 3: http://www.redmine.org/
\ No newline at end of file
--- /dev/null
+# Un PC enchufado a la tele
+2012-05-27
+
+Como todo buen informático que se precie, llevo un tiempo trabajando en un proyecto "PC enchufado a la tele". Detallo aquí un poco mi montaje actual.
+
+El punto de partida es uno de estos PCs pequeñitos con Atom. En mi caso escogí por disponibilidad un Giada SLIM-N10[1], con chipset Nvidia ION, que en teoría debería compensar la poca potencia del Atom para reproducir vídeo- dispone de descodificadores de vídeo que permiten reproducir ciertos formatos de vídeo por hardware, permitiendo ver vídeos 1080p suavemente.
+
+A este aparato le añadí un pequeño dongle Bluetooth y un teclado inalámbrico Bluetooth para controlarlo. Adicionalmente, amplié mi red con un par de dispositivos Powerline (los más baratos que encontré, 50€ el par); mi red inalámbrica no llega muy bien a la zona del televisor y la antena del Giada parece ser bastante horrible; la conexión no era nada estable y el ancho de banda bastante lamentable- el powerline, aún en malas condiciones, me da entre 3-5 megabytes/s de transferencias sostenidas sobre NFS. Esto no siempre da para streaming perfecto, especialmente de vídeos en HD, pero al menos permite copiar un vídeo para reproducción local rápida e indoloramente. Añadimos también una sintonizadora USB barata.
+
+Finalmente, conectamos el PC al televisor vía HDMI, lo que nos da 1920x1080 + audio y añadimos unos altavoces de escritorio conectados por jack de audio; esto nos da una segunda salida de audio que usaremos más adelante.
+
+En el software, escogimos Mythbuntu. MythTV parece ser la solución estándar para mediacenter con TDT (XBMC tiene arreglos para reproducir TDT, pero no parecen muy soportados). Dado que MythTV no está en Debian, parece apropiado usar Mythbuntu para instalarlo sobre Ubuntu, pues parece bastante usado y con una buena comunidad detrás.
+
+La instalación es indolora, lo único complicado fue la configuración de la sintonizadora, pues el modelo concreto que encontramos no está soportado directamente por Linux, pero existen instrucciones para hacerlo funcionar e integrarlo con DKMS[2] (con lo que se actualiza automáticamente con las actualizaciones del kernel). Hace falta un poquito de trasteo con MythTV para que el audio vaya por defecto por la salida HDMI y no por la salida de audio estándar y que utilice el ION para tratamiento de vídeo.
+
+A partir de aquí, añadimos MythWeb que nos da un interfaz web que permite ver la programación y programar grabaciones de programas con un interfaz muy práctico.
+
+Otra funcionalidad que añadimos es un servidor de MPD[3]. MPD es un reproductor de audio controlable por red, del que existen varios controladores; web, móvil, escritorio, etc. Configurándolo para que envíe su audio por la salida minijack, podemos encender los altavoces, usar nuestro PC/móvil/tablet para controlar la música sin tener que encender el televisor.
+
+También configuramos Mame, un emulador de máquinas recreativas que pese a la limitada potencia del procesador Atom funciona bastante bien.
+
+Otro añadido es configurar Flash para que utilice VDPAU, un interfaz que permite la reproducción de vídeo por hardware. Con esto, usando Chrome de escritorio podemos, por ejemplo, ver vídeos 1080p de Youtube suavemente; el teclado inalámbrico que usamos dispone de un minijoystick que podemos usar de ratón, con lo que podemos navegar sin mucho problema.
+
+Cosas de futuro en las que hay que investigar más:
+
+* Un mando inalámbrico que permita jugar a Mame sin usar el teclado Bluetooth. Podemos usar el mando de la PS3, pero sólo por USB- inalámbrico vía Bluetooth parece complicado de configurar e impráctico (al encender el mando se enciende automáticamente la PS3, etc.)
+* Un mando a distancia "normal" para controlar MythTV
+* x2vnc/Win2VNC para usar un PC normal como teclado y ratón, truco muy chulo y conveniente
+
+
+=> http://www.giada.com.au/store/SLIM-N10-B.php 1: http://www.giada.com.au/store/SLIM-N10-B.php
+=> http://linuxtv.org/wiki/index.php/Mygica_T1800B 2: http://linuxtv.org/wiki/index.php/Mygica_T1800B
+=> http://mpd.wikia.com/wiki/Music_Player_Daemon_Wiki 3: http://mpd.wikia.com/wiki/Music_Player_Daemon_Wiki
\ No newline at end of file
--- /dev/null
+# Desarrollo web como Dios manda
+2012-06-23
+
+Con la cantidad de faena a hacer en el mundo del desarrollo web, es natural preguntarse cosas como qué tecnología elegir y por dónde comenzar si uno quiere dedicarse a esto.
+
+No son preguntas triviales- la espectacularidad diversidad de plataformas, filosofías y frameworks intimida y lleva a pensar que no es posible tomar una buena decisión- es impracticable probar todas las alternativas y en las etapas iniciales de aprendizaje es difícil formarse una opinión razonada.
+
+En este post pretendo dar unos apuntes que espero sirvan para colocar a alguien en el buen camino.
+
+Una manera fácil de comenzar es por el lenguaje. Es conveniente que escojamos un lenguaje que cumpla las siguientes características:
+
+* Popular
+* Con tracción para el desarrollo web
+* De calidad
+
+Comenzando por el principio, un buen punto de partida es mi querido TIOBE[1]. El TIOBE es un ránking de la popularidad de los lenguajes de programación calculado a partir de su presencia en la web. La metodología es inevitablemente discutible, pero el ránking está bastante alineado con mi percepción, así que para mi, es una opción cómoda.
+
+En el top 20 (a junio de 2012) encontramos tan solo 8 lenguajes utilizados comunmente para el desarrollo web: Java, C#, PHP, Python, Perl, Ruby, Javascript y Visual Basic .NET. Fuera del Top 20 encontramos muy poquitas opciones (Haskell, Scala y poco más), así que nos ceñiremos a estos.
+
+Vamos a descartar unos pocos:
+
+* PHP[2]: pese a ser un lenguaje explícitamente diseñado para el desarrollo web, en mi opinión PHP nunca debe usarse para desarrollar un proyecto desde 0- a no ser que lo que queramos desarrollar sea extremadamente mínimo- ya sea porque se trate de un desarrollo extremadamente pequeño o bien que pretendamos reutilizar completamente un desarrollo existente como Wordpress o Magento. Desarrollar grandes bases de código en PHP es un ejercicio frustrante ya que, sencillamente, no está pensado para ello. Sus limitaciones en cuanto a modelo de ejecución, estructura y modularidad son motivo suficiente para descartarlo, pues el resto de lenguajes que consideramos lo superan ampliamente en estos aspectos, ofreciendo PHP muy poco para compensar (su velocidad para proyectos mínimos).Puede sernos útil conocer PHP, pues existe mucho trabajo manteniendo código PHP (sin embargo, no se trata de un trabajo especialmente gratificante) y en algún momento nos puede ser útil. Pero debe ser erradicado lo antes posible.
+* Perl[3]: durante mucho tiempo fue una de las mejores opciones disponibles, en realidad, una de las pocas viables. Una vez más, el resto de lenguajes de la lista le superan en virtudes sin que Perl ofrezca muchas ventajas propias. El mercado de Perl decae lentamente y cada vez se inician menos proyectos que lo utilicen.
+* JavaScript[4]: si bien deberemos conocer JavaScript para desarrollar efectivamente sobre la web, aún no lo considero una opción viable en el lado servidor. Tendremos que aprender JavaScript, pero el grueso del proyecto deberá ser siempre en otro de los lenguajes. Soy anti-aplicaciones web 100% Javascript, creo que su campo de aplicación es extremadamente limitado y presentan desventajas considerables, pero hay quien les encuentra virtudes
+
+C#[5] y Visual Basic .NET[6] son dos opciones que el lector mismo puede escoger descartar o considerar- desarrollar razonablemente en ambos supone unos costes que yo prefiero no asumir (se necesitan licencias de Windows para el desarrollo y despliegue y las versiones gratuitas de Visual Studio tienen bastantes limitaciones)- a parte de que soy un firme creyente en que las herramientas de desarrollo deben ser libres y gratuitas. Si eso no supone un impedimento para el lector, puede aplicar mi opinión sobre Java, ambas plataformas son extremadamente similares; quizás .NET goce de herramientas más sencillas de utilizar inicialmente, el sistema base es más completo que el de Java pero el ecosistema goza de menor vida.
+
+Por tanto, nos quedamos con Java, Python y Ruby. Los dos factores más diferenciales entre los tres para mi son:
+
+* Python[7]cuenta con el framework Django[8], que a su vez goza del "Admin". El Admin es un desarrollo genérico que implementa un sistema de gestión de modelos web genérico muy sofisticado, que nos permite definir las entidades con las que trabaja nuestra aplicación (e.g. en una web de contenidos, artículos, categorías, etc.) y obtener prácticamente sin esfuerzo una interfaz de gestión bastante buena que permite a los usuarios gestionar los objetos, añadiendo un sistema de permisos más que aceptable (i.e. podemos decir que los reporteros pueden crear y editar sus artículos y que los administradores pueden crear y gestionar secciones). Dado que en la mayoría de los proyectos se necesita una funcionalidad así y Django nos la proporciona sin dedicarle apenas tiempo (y desarrollar algo de ese calibre es considerablemente costoso), para muchos proyectos Django nos puede ahorrar muchísimo tiempo de desarrollo tedioso, dándonos una gran ventaja.Puede parecer que otras plataformas cuentan con cosas similares (e.g. Roo en Java, el scaffolding de Rails), pero no están a la altura.
+* Java[9]es el único de los lenguajes que cuenta con tipado estático. El tipado estático (deber declarar explícitamente el tipo de las variables) parece un problema (debemos "perder tiempo" especificando tipos), pero en realidad no lo es (uno ya razona sobre el tipo que debe tener una variable, escribirlo explícitamente no es costoso) y en cambio permite la existencia de herramientas sofisticadas que trabajen sobre el código. En los lenguajes dinámicos, por poner un ejemplo, es extremadamente laborioso localizar dónde se utiliza un determinado trozo de código, algo necesario para tareas como eliminarlo (debemos asegurarnos que no exista otro código que lo utilice y adaptarlo si existe) o modificarlo (debemos asegurarnos que adaptamos el código que lo utilice), tenemos que buscar las referencias por todo el código y esto puede ser extremadamente problemático si la búsqueda no es muy específica (i.e. si tenemos un campo llamado "página" en un objeto concreto, una búsqueda de texto nos reportará usos de "página" en clases no relacionadas, o que contengan "página"), pues podemos tener una cantidad de falsos positivos muy elevada fácilmente.Esto propicia que los cambios en el código sean mucho más trabajo del que debiera. En cambio, en un lenguaje estático es posible implementar búsquedas muy exactas gracias a la presencia de tipos en el código fuente (básicamente, la herramienta puede discernir si la referencia que buscamos es la que encuentra con exactitud). En Java el compilador nos avisará si un cambio/eliminación rompe código, y las herramientas nos pueden localizar exactamente todas las referencias a un trozo de código. Adicionalmente, las herramientas no se quedan aquí, sino que implementan funcionalidades similares mucho más avanzadas y potentes que no pueden ser implementadas efectivamente sobre lenguajes dinámicos.
+
+En mi opinión, ambas herramientas deben estar en el arsenal de un desarrollador web. Python + Django para proyectos sencillos o en los que el Admin de Django suponga una gran ventaja, y Java para proyectos grandes y complejos. Python nos da agilidad y el Admin y Java nos da la potencia para desarrollar sistemas complejos.
+
+Por supuesto, la cosa no se queda aquí. El desarrollo web requiere unos conocimientos de base; más allá de los conocimientos de programación estándar (que obviamente son necesarios), necesitaremos conocer:
+
+* El protocolo HTTP, el "alma" de las comunicaciones web
+* HTML + CSS, con los que desarrollamos la capa visual de la aplicación
+* JavaScript para las funcionalidades que lo requieran (con jQuery[10])
+
+Seguramente también necesitaremos un mecanismo de persistencia (donde SQL es la opción más popular, yo recomendaría usar PostgreSQL y evitar el popularísimo MySQL pero infame) y conocimientos básicos de sistemas (deberíamos saber hacer funcionar un servidor web, la base de datos, etc.).
+
+Con todo esto podríamos desarrollar alguna web sencilla con Django, que nos proporciona una plataforma bastante completa y bien documentada con la que podremos implementar bastantes proyectos.
+
+Una vez asentados los fundamentos del desarrollo web, podemos comenzar a investigar Java. Java no es como Django, que incluye prácticamente todo lo necesario en un sencillo paquete y, una vez más nos plantea unos problemas de decisión importantes. Lamentablemente, desconozco una buena referencia completa y vertical de desarrollo Java que ofrezca un stack completo comparable al de Django. Mi recomendación sería partir de Java, añadir Spring (el mecanismo de inyección de dependencias, su librería de JDBC y el motor MVC) y JSP, todo corriendo sobre un contenedor como Jetty o Tomcat (que se integre en nuestro entorno de desarrollo), utilizando Eclipse y Maven para la compilación. Desgraciadamente es una solución más compleja para la parte inicial (y muchas de ellas se deben aprender prácticamente simultáneamente, incrementando la dificultad), pero adoptando todas estas tecnologías tendremos una base similar a la de Django. El camino es mucho más largo, pero nos ofrece una alternativa más apropiada para grandes proyectos.
+
+Lógicamente, esta es una vía "ideal". Quizás no debe completarse completamente, si no hemos de trabajar en proyectos muy complejos Java es una exageración, o bien la vida nos lleve a sumergirnos en otras tecnologías, pero es un recorrido completo. Si no llegamos a Java (o incluso si llegamos), puede ser conveniente pasar tiempo usando algún microframework que no nos dé un stack completo como el de Django, Django nos lo da casi todo mascado y seguramente hay detalles interesantes de conocer a bajo nivel que nos perdamos. Hacer desarrollo web sin un stack completo ciertamente puede ayudarnos a completar nuestras habilidades. Podemos hacer esto tanto en Python (usando un microframework de los muchos existentes, o incluso desarrollando el nuestro) como en Java (programando directamente servlets en vez de usar el MVC de Spring) o en cualquier otro lenguaje.
+
+nota: más ediciones y sugerencias del de siempre[11].
+
+
+=> http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html 1: http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
+=> http://www.php.net/ 2: http://www.php.net/
+=> http://www.perl.org 3: http://www.perl.org
+=> http://en.wikipedia.org/wiki/JavaScript 4: http://en.wikipedia.org/wiki/JavaScript
+=> http://msdn.microsoft.com/en-us/vstudio/hh388566.aspx 5: http://msdn.microsoft.com/en-us/vstudio/hh388566.aspx
+=> http://msdn.microsoft.com/en-us/vstudio/hh388568.aspx 6: http://msdn.microsoft.com/en-us/vstudio/hh388568.aspx
+=> http://www.python.org/ 7: http://www.python.org/
+=> https://www.djangoproject.com/ 8: https://www.djangoproject.com/
+=> http://www.oracle.com/technetwork/java/index.html 9: http://www.oracle.com/technetwork/java/index.html
+=> http://jquery.com/ 10: http://jquery.com/
+=> http://obm.corcoles.net 11: http://obm.corcoles.net
\ No newline at end of file
--- /dev/null
+# Grandes responsabilidades
+2012-06-05
+
+Con el megapelotazo que ha supuesto los Vengadores (ya sólo a la zaga de Avatar y la inalcanzable Titanic- James échame una limosna, anda) quizás sea el momento de echar la vista atrás y soltar una sesuda reflexión sobre el "género".
+
+¿Son las pelis de superhéroes un "género" siquiera?
+
+Lo mismo supongo que se preguntarán los que piensan demasiado sobre los westerns; entre una con un John Wayne bonachón, una de Leone, Sin Perdón o Arma Joven, es difícil encontrar nada en común que no sea la época- y aún así no nos es difícil encontrar westerns como Atmósfera Cero o Firefly/Serenity ambientados en el espacio o pensar que si Yojimbo y Por Un Puñado de Dólares son básicamente la misma película, ambos deberían ser westerns, ¿no?
+
+Con las pelis de superhéroes pasa lo mismo. Yo calificaría Los Vengadores como la primera peli de superhéroes de divertimento relevante- quizás la forma verdadera de las pelis de superhéroes... ¿pues no es decir "Hulk, machaca" la auténtica esencia de los cómics de superhéroes? (Quizás otras películas, en particular Green Hornet, de Gondry, o incluso la reciente Thor, se inscriben en esta corriente, pero son sin duda obras menores). No es casual que Joss Whedon, al mando del cotarro, sea guionista habitual de Marvel y DC y haya sido precisamente él quien nos haya brindado una experiencia que hasta el momento se les había escapado a todos. Lamentablemente, la cinta cojea en ocasiones, en mi opinión sobre todo por un exceso de escala que se le escapa en ciertos momentos a Whedon y quizás una cierta falta de ritmo a ratos (quizás por el desigual elenco de personajes).
+
+Otras cintas, de tanto o mayor calado, han ido por otros derroteros. La que es para mí la mejor película de superhéroes, X-Men 2 de Brian Singer (Sospechosos Habituales), pese a enseñarnos a mucha gente con trajes de superhéroes, no tiene apenas escenas de acción (aunque sus dos piezas principales, la introducción con Rondador Nocturno y el asalto a la Mansión de Xavier, son absolutas obras maestras del cine de acción) y se desenvuelve entre el thriller, la cinta de acción prácticamente convencional (recordemos que mucha acción está poblada de gente sin superpoderes y que, desde luego, la escala es mucho menor que Los Vengadores) y la vertiente social típica de los X-Men. Por supuesto la guinda son unos personajes perfectamente dibujados gracias a las excelentes interpretaciones de Ian McKellen, Brian Cox (Stryker) e incluso un acertadisimo, aunque secundario, John Allerdice (Pyro).
+
+Hellboy (Benicio del Toro) en cambio, parte de un cómic más atípico (Hellboy es más un detective de lo oculto que un tipo con mallas que vuela). Como en X2 las interpretaciones (merecidísimo triunfo de Ron Perlman con excelentísima contrapartida de Selma Blair) son el atractivo principal de la cinta, así como una narración y un estilo propio que combinan muy bien un cine "de autor" con cine de acción más que correcto.
+
+En otra nota, Watchmen parte de una obra que tiene superhéroes, pero que se encuadra en un género más reflexivo y analítico; Watchmen sí es descaradamente un estudio sobre la condición humana que utiliza los vigilantes enmascarados y un superpoderoso tal y como Asimov usa a los robots para hablar de las personas (y de pasada, de los superhéroes, sí). Curiosamente Watchmen ya era prácticamente más storyboard que tebeo y estoy indeciso a la hora de valorar el trabajo de Zack Snyder e incluso de los actores- ¿hacen algo más que darle movimiento a la obra de Moore y Gibbons?
+
+Aparte queda alguna rareza- yo destacaría el Hulk de Ang Lee, un preciosista experimento de montaje y fotografia que, pese a que seguramente es insostenible, representa quizá el más acertado acercamiento visual a los cómics; deja a Watchmen en el aspecto visual al nivel del betún. La peli, desgraciadamente, salvo este superlativo montaje de viñetas, poco más tiene que ver con los cómics o los superhéroes. Complejo de Edipo + Super Mario Bros como argumento más unas interpretaciones poco inspiradas lastran mortalmente la película.
+
+¿Es casual que dentro de las pelis más destacables encontremos reconocidos autores? Tim Burton, Christopher Nolan o incluso Kenneth Branagh (¡sí, amigos, recuerden que firmó Thor!) se han metido en el género con desiguales resultados: no, no todas las pelis de superhéroes son bazofia (y desde luego, pocas son realmente buenas). Sí, es un "género" de estos denostados, como los westerns lo pueden haber sido en ocasiones, o la ciencia ficción o las pelis de tiros o de patadas voladoras, pero desde luego que no merece ser despreciado. Por suerte para los aficionados, con los éxitos comerciales y la abundancia de material por adaptar, tendremos películas para rato...
+
+De bonus, un ránking. Yo consideraría The Punisher (1989, la de Dolph Lundgren) como la frontera entre lo aceptable y lo malo (más que nada porque a día de hoy no sé si me gusta de lo mala que es, no es tan mala como parece o si simplemente es mala).
+
+1. X2
+2. Iron Man
+3. Hellboy
+4. Watchmen
+5. The Dark Knight
+6. The Avengers
+7. Hulk (2003)
+8. Batman
+9. Spider-Man 2
+10. X-Men
+11. Batman Begins
+12. Spider-Man
+13. Batman Returns
+14. X-Men Origins: Wolverine
+15. X-Men: The Last Stand
+16. The Punisher (1989)
+17. Thor
+18. Blade
+19. Elektra
+20. The Green Hornet
+21. Fantastic Four
+22. The Green Lantern
+23. Daredevil
+24. Superman Returns
+25. The Incredible Hulk
+26. Superman
+27. Spider-Man 3
+
+(correcciones y retoques importantes del de siempre[1], que como siempre evita que escriba sin ninguna revisión)
+
+
+=> http://obm.corcoles.net 1: http://obm.corcoles.net
\ No newline at end of file
--- /dev/null
+# Porqué Django no es La Solución Definitiva
+2012-06-02
+
+Hace tiempo ya explicaba por aquí las virtudes de Django[1]. En resumen, se trata de un framework de desarrollo en web Python que implementa un interfaz de administración prácticamente automático a un esquema relacional. Vaya, que defines tus tablas y genera un interfaz dinámico para editar registros que te ahorra una barbaridad de tiempo (como podrá atestiguar cualquiera que haya tenido que hacerse uno).
+
+Tras llevar más tiempo trabajando con Django, sigo convencido que en estos momentos es la mejor solución que existe para desarrollo web basado en CRUD sobre bases de datos; el admin no tiene equivalente alguno que yo conozca, y desarrollarse un sistema similar es extremadamente costoso.
+
+Sin embargo, creo que he aislado unos cuantos defectos clave que hay que tener en cuenta antes de comenzar a usarlo.
+
+1.
+
+Si usamos un esquema donde queramos que la edición de un registro tenga más de un nivel de indirección, el admin no soluciona esto. Pongamos por caso que tenemos una entidad "Empleado" , otra entidad "Proyecto" y una entidad intermedia que nos representa las asignaciones de Empleados a Proyectos (por ejemplo, en esta relación intermedia podríamos querer almacenar el tiempo durante el cual el Empleado está asignado al Proyecto, su porcentaje de dedicación a él, etc.). Podremos añadir un fantástico TabularInline que nos muestre las asignaciones de Empleados dentro de la vista de detalle de Proyecto, pero no hay manera de que se pueda editar el Empleado desde la vista detalle de Proyecto; podremos editar la relación intermedia (primer nivel de indirección), pero la segunda ya no.
+
+Esto nos limita bastante el interfaz sobre esquemas de datos moderadamente complejos que nos podemos encontrar fácilmente en el mundo real; cuando tengamos estos esquemas tendremos que...
+
+1. Hackear el admin como podamos para que nos permita hacer las ediciones
+2. Buscar a alguien que haya implementado algún plugin que nos añada en esto
+3. Ignorar el admin e implementarlo nosotros mismos
+4. Simplificar nuestro esquema
+
+Ninguna de las tres soluciones es mínimamente satisfactoria
+
+2.
+
+El admin necesita más hipervínculos. En particular, la fantástica funcionalidad de los raw_id_fields, nos permite hacer que los campos clave foránea de nuestras entidades se puedan editar con un popup selector excelente, pero no nos permite saltar a la entidad enlazada. Una de las grandes virtudes de usabilidad de la web son los enlaces, y nos serían extremadamente útiles en más lugares del admin
+
+3.
+
+Django no proporciona suficiente potencia en el SQL subyacente a su ORM. En particular, sería harto conveniente poder disponer de, o bien un inspectdb más potente que nos permita trabajar continuamente con él (añadir campo en nuestra base de datos y que inspectdb añada dinámicamente el campo al modelo), o un mecanismo para poder personalizar automatizadamente el esquema generado; esto principalmente nos debería permitir implementar una "estrategia" de nombrado de tablas y columnas que nos permita, por ejemplo, que los nombres de tablas sean plurales o cambiar el nombre de las claves primarias surrogadas que Django añade automáticamente.
+
+Si no nos gustan los esquemas que genera Django automáticamente (y no deberían gustarnos), las alternativas son o aguantarnos, o especificarle repetidamente los nombres de tablas y columnas que debe usar o hackear Django para que haga lo que queramos. Una vez más, esto no es del todo satisfactorio.
+
+4.
+
+A un nivel más profundo, el código de Django no es muy amigable a la extensión. Es bastante complicado añadir funcionalidad derivando de las clases de Django; el código no siempre es fácil de seguir (ya que usa bastantes metaclases y otras pythonicidades de las que no soy muy fan) ni tiene un diseño orientado a objetos muy elaborado- se echa en falta que ciertas funcionalidades estén, como mínimo, aisladas en un propio método que podamos sobreescribir para cambiarlas (o utilizar el patrón estrategia, idealmente). Siempre nos queda la opción de forkear, pero esto no es muy mantenible, o hacer monkey-patching, lo que tampoco es muy recomendable ni mantenible.
+
+Pese a todos estos puntos, sigo pensando que el admin de Django es realmente algo único que nos puede ahorrar muchísimo trabajo y proporcionar un resultado de gran calidad para muchos, muchísimos proyectos. Pero aún es mejorable- y con unas pocas mejoras localizadas podría mejorar muchísimo.
+
+
+=> http://alex.corcoles.net/2011/01/django-o-la-fabrica-de-churros/ 1: http://alex.corcoles.net/2011/01/django-o-la-fabrica-de-churros/
\ No newline at end of file
--- /dev/null
+# What if... PHP y MySQL nunca hubieran existido?
+2012-06-09
+
+Marvel tenía (o tiene, estoy tremendamente desactualizado) un cómic titulado "What if...?" que trataba de qué pasaría en los universos Marvel si algún acontecimiento clave hubiese seguido otro curso. Así pues, podíamos leer cosas como qué hubiese pasado si Spider-Man hubiese sucumbido al simbionte o Gwen Stacy no hubiera muerto.
+
+Yo, la verdad, prefería "What the...?", que trataba de situaciones absurdas, pero bueno.
+
+El ejercicio que me propongo hoy es "What if... PHP y MySQL nunca hubieran existido?"
+
+PHP y MySQL fueron en su momento las estrellas del desarrollo web. PHP[1] surgió de un proyecto personal de Rasmus Lerdorf[2] inicialmente publicado en 1995, que según el TIOBE[3], comenzó a dispararse en popularidad allá por 2002 y gozó de su mejor momento entre 2005 y 2010, donde inició un aparente declive (seguramente por el ascenso de otros lenguajes/frameworks para la web menos demenciales). MySQL[4] empezó como proyecto en 1994 y su primera publicación fue (la Wikipedia no es muy específica en este asunto) entre 1995 y 1998—no encuentro buenas fuentes sobre su ascenso a la fama, pero yo lo situaría aproximadamente por la misma época que el de PHP, y sin que se atisbe una caída en su popularidad (si no contamos su adquisición por parte de Oracle en 2010 y la relativa proliferación de forks).
+
+No es casual, claro, que la web explotara justo en ese momento, entre 1996 y 1998, y que los dos estuvieran en el sitio exacto, en el momento exacto para formar la MP de LAMP[5]. En un momento en el que no había una abundancia de herramientas de desarrollo web decentes (Perl[6] era probablemente la alternativa abierta más popular; los servlets de Java son del 97, pero por ejemplo hasta 1999 no existió Tomcat; ASP[7] de Microsoft data de 1998... no había muchas más cosas y por supuesto, gran parte de lo que hoy está de moda en aquella época ni existía), PHP/MySQL era una tupla muy accesible para desarrollo web —fácil de instalar, fácil de comenzar y fácil de obtener resultados rápidos— y sin mucha competencia que hiciese destacar sus defectos. Esto llevó a que prácticamente todo el segmento "no profesional" y una parte importante del profesional se volcasen en esta plataforma (las "MS Shops", por supuesto, apostaron por ASP y mucha gran empresa se fue a Java) y posteriormente, como suele suceder, el sector no profesional arrastrase al profesional.
+
+Sin embargo, hoy en día PHP está bastante denostado. Se le sigue reconociendo como vía "rápida y sucia" y goza de una inercia considerable (sobre todo, por la abundancia de mano de obra y código existente a mantener), pero puede decirse que ha pasado de moda y que sus abundantes defectos le están pasando factura; prácticamente podría decirse que Facebook es su único usuario de gran perfil (y con importantes peros). MySQL, en cambio, sigue relativamente saludable, sigue siendo extremadamente popular y, pese a que el sector crítico parece crecer día a día, no parece que vaya a ser eclipsado en breve.
+
+¿Qué hubiera pasado si Rasmus Lerdorf se hubiera avergonzado de su pequeño monstruo y hubiese decidido mantenerlo en el sótano oscuro y lúgubre que nunca debió abandonar? ¿Y si MySQL no hubiese tenido su vertiginosa aceptación, quizás por una mala fama alimentada por alguna deflagración especialmente notable?
+
+Probablemente, el mundo web hubiese sufrido algún retraso. Perl, Java o ASP no eran suficientemente accesibles en ese momento como para tomar el relevo (por diversos motivos: de coste en el caso de ASP, de accesibilidad para Java y Perl). Lo más probable es que Perl hubiese ganado bastante terreno y hoy en día gozase de más popularidad, incluso entre los imberbes. ¿Se hubiese adelantado algún framework como el popular Ruby on Rails[8]? Yo creo que no; Rails surge ya en 2005 y no creo que se hubiese acelerado mucho su aparición en caso de haber existido un vacío. Simplemente, hubiésemos visto otros frameworks nuevos sobre algún lenguaje existente, o quizás algún framework que el tiempo olvidó habría sido adoptado masivamente. Apostaría por que Python[9], que explotó en popularidad en 2004, hubiera cubierto el vacío de PHP con algún framework.
+
+¿Consecuencias? Sí, la web retrasada 2-3 años. Probablemente los titubeos propios de PHP se hubiesen trasladado a su sustituto (algún framework sucio y bizantino de Python se habría impuesto), o quizás (Dios no lo quiera) Perl hubiese arrasado y hoy en día estaríamos condenados a prefijar todo con sigilos (pero seguramente con un framework elegante). La versión optimista (para mí) es que la web como plataforma de aplicaciones no hubiese tenido su auge y nos hubiéramos quedado mayormente en la web de contenidos y el modelo de aplicaciones de escritorio... y con toda probabilidad esto habría supuesto un buen bofetón para Linux y en menor medida para Apple (las aplicaciones web son prácticamente automáticamente multiplataforma). ¿Sería esto positivo? Por una parte, uno es de los que suscribe que nunca debimos apostar por la web para aplicaciones (sí, desde luego, para contenidos) y que quizás buen número de informáticos no tendrían que haber lidiado con los problemas de la web para este propósito y destinado su tiempo a cosas más útiles: siendo optimistas, quizá hoy tendríamos aplicaciones de escritorio multiplataforma de despliegue indoloro (e.g. Java y Web Start, pero bien) y todo sería más de color de rosa. El reverso de la moneda sería un monocultivo Microsoft y todos estaríamos desarrollando en Visual Basic (y no, no el .NET), claro está.
+
+A un nivel más elevado y más del mundo real, igual las burbujas web y sociales no hubieran nacido ni estallado nunca. Habría más desarrollo informático empresarial tradicional con el aburrimiento y la solidez consiguientes.
+
+Por otra parte, creo que la historia no habría cambiado sustancialmente sin MySQL. PostgreSQL[10] seguramente ocuparía su lugar, llevándonos a un mundo con más integridad referencial y donde nuestros datos serían un pelín menos volátiles. Defiendo que el movimiento NoSQL hubiera dado un pequeño paso atrás. Sí: con o sin web de aplicaciones y todo eso, Google hubiera existido y hubiese necesitado BigTable[11]/MapReduce[12] (es el contenido lo que es difícil de indexar). Pero parte de la necesidad de NoSQL viene de las deficiencias de MySQL y no del modelo relacional (adicionalmente, este no estaría tan desprestigiado y probablemente serían más de cuatro gatos los que sabrían sacarle partido). Y es que resulta difícil encontrar una implementación peor de SQL que MySQL (si no contamos SQLite[13], claro, pero ese juega en otra liga).
+
+Cuesta imaginar un efecto real de la no existencia de MySQL: quizás eso quiera decir que pese a que PHP haya caído antes, quizás éste haya sido más instrumental y relevante en el mundo real. MySQL simplemente ofrecía "funciona en Windows y no hay otro popular" (lo de la velocidad son historias); PHP era "tu web, ahora y sin complicaciones". Uno pensaría también que los deméritos de PHP son menores que los de MySQL: pese a que ambos son sucios y volátiles, opino que PHP es más sucio que volátil, mientras que MySQL es más volátil que sucio... y en informática, lo sucio es doloroso pero inevitable, mientras que lo volátil puede causar daños corporales permanentes.
+
+(correcciones, ediciones y sugerencias del de siempre[14])
+
+
+=> http://www.php.net/ 1: http://www.php.net/
+=> http://es.wikipedia.org/wiki/Rasmus_Lerdorf 2: http://es.wikipedia.org/wiki/Rasmus_Lerdorf
+=> http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html 3: http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
+=> http://www.mysql.com/ 4: http://www.mysql.com/
+=> http://es.wikipedia.org/wiki/LAMP 5: http://es.wikipedia.org/wiki/LAMP
+=> http://www.perl.org/ 6: http://www.perl.org/
+=> http://es.wikipedia.org/wiki/Active_Server_Pages 7: http://es.wikipedia.org/wiki/Active_Server_Pages
+=> http://rubyonrails.org/ 8: http://rubyonrails.org/
+=> http://www.python.org/ 9: http://www.python.org/
+=> http://www.postgresql.org/ 10: http://www.postgresql.org/
+=> http://es.wikipedia.org/wiki/BigTable 11: http://es.wikipedia.org/wiki/BigTable
+=> http://es.wikipedia.org/wiki/MapReduce 12: http://es.wikipedia.org/wiki/MapReduce
+=> http://www.sqlite.org/ 13: http://www.sqlite.org/
+=> http://obm.corcoles.net/ 14: http://obm.corcoles.net/
\ No newline at end of file
--- /dev/null
+# ¿Cuánto rato se tarda en montar un entorno de desarrollo web Java?
+2012-07-07
+
+Una de las quejas más comunes sobre desarrollar en Java es lo complejo que resulta montarse el entorno de desarrollo. Ciertamente, la situación hace años era un poco rollo; grandes descargas del JDK perdido entre las tinieblas, Eclipse por piezas difícil de instalar...
+
+¿Cuál es la situación actual? ¿Sigue siendo tan complejo? ¿Los anchos de banda más anchos de hoy en día ayudan?
+
+Para el propósito de este ejercicio, cogeré un Windows sin nada instalado e instalaré todo lo necesario para poder desarrollar un servlet "Hola, Mundo", con Eclipse (el entorno de desarrollo gráfico gratuito para Java más común).
+
+Los pasos que deberemos realizar son los siguientes
+
+1. Ir a la página de Oracle, Downloads, Popular Downloads, Java for Developers, JDK, Aceptar la licencia y escoger la versión adecuada (en mi caso Windows x64)... 1 minuto
+2. Descargar los 92mb... 7 minutos
+3. Ejecutar el instalador... 3 minutos (+2 minutos de JavaFX que instala por defecto)
+4. Ir a la página de Eclipse, Download Eclipse, Eclipse IDE for Java EE Developers, escoger la versión adecuada (Windows 64 bits)... 1 minuto
+5. Descargar los 221mb... 16 minutos
+6. Abrir el .zip y extraerlo (en mi caso, a mi carpeta de usuario c:\users\alex, creándose una carpeta dentro c:\users\alex\eclipse)... 4 minutos
+7. Arrancar Eclipse (en mi caso c:\users\alex\eclipse\eclipse.exe), escoger la ubicación por defecto del workspace (y marcar que no vuelva a preguntar), crear un "dynamic web project", escoger crear un nuevo runtime de Tomcat 7.0 (y darle una ruta, se lo baja y lo instala [unos 8mb]), decirle que nos genere un web.xml, hacer un click con el botón derecho y sobre la sección de servlets y decirle que nos cree uno, todo por defecto, implementar el método doGet haciendo un response.getOutputStream().print("Hello world");, hacer click derecho en el proyecto, run as, run on server, hacer que corra en el Tomcat 7 que hemos creado anteriormente, editar la URL del navegador que se nos abra para que se corresponda a la ruta donde hemos mapeado el servlet y cargarlo ... todo unos 7 minutos
+
+En total, unos 40 minutos de los que unos 25 son unos 320mb de descargas. Lógicamente con una conexión más rápida (tengo una de 3 megabits) y sin la virtualización, que obviamente penaliza el rendimiento, podría reducirse un poco.
+
+A destacar que el proceso tradicionalmente más complejo, instalar el Tomcat y configurarlo para que se pueda usar desde el Eclipse, ha sido simplificado por la gente de Eclipse haciendo que instalarlo y autoconfigurarlo directamente al crear un proyecto sea bastante sencillo (el interfaz no es 100% intuitivo y me ha costado un pelín entenderlo, pero bueno).
+
+Por supuesto, este es un proceso mínimo usable; yo preferiría añadirle:
+
+* Instalación de egit, que sorprendentemente en la versión Java EE de Eclipse no viene cuando otras variantes de Eclipse lo traen por defecto (4 minutos de instalación desde Eclipse Marketplace, incluyendo un reinicio)
+* Instalación de m2eclipse y su plugin para WTP, que nos permite configurar proyectos usando Maven, un sistema bastante estándar de gestión de dependencias (6 minutos de instalación desde Eclipse Marketplace, con otro reinicio)
+
+, y por supuesto, que esto nos instala un sistema de desarrollo "pelado" sin framework, cuando lo recomendable es no desarrollar servlets "a pelo" si no usar algún framework como Spring. Pero esto lo trataremos en otra entrega...
+
+O sea, que podemos montar un entorno de desarrollo, con servidor de aplicaciones y entorno gráfico integrado en menos de una hora. ¿Es mucho, poco? ¿Cuánto se tarda con otras plataformas de desarrollo? ¿Es realmente un factor que eche para atrás de desarrollar con Java? ¿O son otros factores?
\ No newline at end of file
--- /dev/null
+# Sí, sigo usando una Blackberry
+2012-07-04
+
+Hace eones apunte por aquí[1] que me pasaba a Blackberry, esa compañía que en aquel momento estaba apunto de extinguirse y ahora lo está mucho más. Allí indicaba las razones por las que escogía y por qué en aquel momento estaba muy contento.
+
+Sorprendentemente, y supongo que en gran parte porque me encanta llevar la contraria, un año después sigo muy contento.
+
+Sí, es básicamente el teclado. Sigo detestando cada palabra que tengo que aporrear sobre un cristal; he usado iPads, iPhones y todo tipo de Androids esporádicamente y sigue siendo una experiencia frustrante. Es harto probable que haya un prejuicio ahí y que si me sumergiese en el mundo táctil, me acabaría acostumbrando; pero, ¿por qué debería someterme a tal tortura?
+
+Indudablemente, la Blackberry tiene una larguísima lista de defectos, pero al fin y al cabo cubre mis necesidades a la perfección:
+
+* Puedo usar mensajería/redes sociales de todo tipo sin problemas; tengo los clientes que importan (Whatsapp, Twitter, Facebook, Google Talk y email) que funcionan perfectamente y que se benefician inmensamente del teclado
+* El navegador soporta el Google Reader de iPhone perfectamente, lo que cubre el 80% de mis necesidades de navegación (y en general me permite leer lo que quiero leer perfectamente adaptado a móvil desde el mismo Google Reader. La gente con feeds incompletos a veces me fuerza a ir a páginas que se le atragantan al navegador... no es frecuente pero sucede, pero se resuelve rápido con una estrellita). El resto, la mayoría del tiempo son sitios que tienen versión móvil (webs de noticias, Wikipedia, etc.).
+* GPS entre la app de Blackberry y la de Google es aceptable. El Google Maps de Blackberry tiene una búsqueda lenta y lamentable, pero se sobrevive
+* La cámara no es como para hacer fotografía profesional, ni mucho menos, pero lo suficiente como para sacarle fotos al gato y a las chorradas que uno ve por ahí
+* Es cierto, casi no hay apps, pero hay las que me importan (Tumblr, Wordpress, cartelera, Endomondo, lista de la compra, ...)
+* El frikismo ocasional (y gratuito) se ve complacido por poder tener un ssh como Dios manda y un teclado que permite meter símbolos, no-palabras y combinaciones de teclas que causarían frustración infinita en un teclado táctil
+
+Además, la ergonomía no se limita al teclado. El trackpad es superior a la pantalla táctil para muchas cosas; copiar y pegar, darle a enlaces pequeños en páginas web, moverse por listas, etc. Los atajos de teclado y búsquedas incrementales son la guinda.
+
+Por supuesto, si existiese un Android (e incluso un iOS, pero lo veo menos probable que suceda) con teclado y touchpad, que los aprovechase bien (i.e. que las aplicaciones y el sistema operativo tengan atajos de teclado y sean navegables por touchpad), cuya batería aguantase y que no tuviera serias incompatibilidades... Pues probablemente no dudaría en cambiar, pero de momento, sólo hay un fabricante que se dedica a este segmento; segmento que cada vez parece más pequeño y que me temo que acabe desapareciendo...
+
+
+=> http://alex.corcoles.net/2011/06/dinosaurios-que-rondan-la-tierra/ 1: http://alex.corcoles.net/2011/06/dinosaurios-que-rondan-la-tierra/
\ No newline at end of file
--- /dev/null
+# A meternos con Java
+2012-08-30
+
+Es deporte olímpico desde hace tiempo meterse con Java. Como plataforma es lenta, insegura e inútil. Como lenguaje, causa daños cerebrales irreparables a los programadores que lo utilizan. Para colmo, ahora ya no es propiedad de Sun (que era bastante molona), sino que ha sido absorbida por la malvada Oracle.
+
+Pues para mi sigue siendo una de las herramientas más útiles que tenemos a nuestra disposición; potente, gratuita y open source.
+
+Comencemos por la última moda. Java es inseguro.
+
+Vaya por delante que servidor navega con *todos* los plugins desconectados por defecto. Ni Flash, ni Java, ni incluso el lector de PDFs de Chrome cargan si no hago click explícito en ellos. Los navegadores son probablemente el programa de mayor riesgo de seguridad, siendo los banners de publicidad y las webs invadidas los mayores riesgos; innumerables webs sufren ataques que inyectan código malicioso en ellas y los banners de publicidad son una manera relativamente viable de colar código malicioso en webs "de confianza". Poco software más procesa más datos potencialmente hostiles de Internet.
+
+Todo el código expuesto a Internet ha sufrido vulnerabilidades; los clientes de correo, todos los navegadores y, especialmente, todos los plugins, han sufrido vulnerabilidades graves.
+
+Java no es la excepción, ni mucho menos.
+
+Dos incidentes recientes han sido especialmente notables. En abril, una vulnerabilidad de Java que *sólo* afectaba a ordenadores con OS X ejecutando la máquina virtual Java *distribuida por Apple* fue harto comentada al ser uno de los primeros malware afectando en masa a Macs. Gran parte de los medios cargaron contra Oracle por hacer de los ultraseguros Macs un coladero (por ejemplo, tras una rápida búsqueda en Google, podemos leer esto[1]).
+
+En general, estos artículos convenientemente omiten el hecho de que la vulnerabilidad había sido solventada meses antes por Oracle y había distribuido el parche. ¿Por qué no a los Macs? Pues sencillamente porque Oracle y Apple tenían un acuerdo mediante el cual es Apple la responsable de distribuir Java a los Macs (esto probablemente está vinculado a que Apple había escogido Java como una de las plataformas "oficiales" de desarrollo de aplicaciones oficiales para OS X tiempos atrás). Apple por supuesto era consciente de la vulnerabilidad y había escogido no distribuirla.
+
+En mi opinión, es completamente irracional culpar a Oracle/Java de este problema- la culpa reside plenamente en Apple; los agujeros de seguridad son inevitables y lo importante es cómo se gestionan. En este caso, mal gestionado por Apple. Podemos argumentar que Oracle hizo mal en ceder la responsabilidad de seguridad a Apple (porque en efecto, hemos visto que no ha sido buena ídea), pero al menos Oracle a partir de esto ha asumido esta responsabilidad de nuevo.
+
+El segundo incidente que tiene lugar estos días no es así, es una vulnerabilidad de Java. Según se dice, unos investigadores polacos habían alertado a Oracle de ella meses atrás y paralelamente, programadores maliciosos la habrían descubierto también y comenzado a explotar. Si esto es así, podemos cuestionar la diligencia de Oracle en tapar el agujero. Podríamos darles el benefici0 de la duda, pues otros agujeros reportados por el grupo polaco fueron parcheados diligentemente, y uno podría pensar que existe un motivo razonable por el que ese agujero en concreto se haya demorado más- pero creo que no es un argumento sólido. Yo valoro negativamente la actuación de Oracle en este incidente.
+
+Pero en definitiva, dos incidentes de notoriedad; el mayor incompetente en esta fiesta es claramente Apple, seguido de Oracle (a bastante distancia en mi opinión). Creo que es deshonesto intelectualmente machacar a Oracle sin criticar a Apple por encima- y más aún si ignoramos que los agujeros son inevitables, que el histórico del manejo de los agujeros de Java ha sido siempre bastante correcto.
+
+Pero vaya, si sólo hemos de aprender una única cosa de todo esto, es a navegar con los plugins desconectados.
+
+Por otra parte, como siempre que se oye la palabra Java, sale un coro de programadores maltratados alegando que Java les ha jodido la vida. Complejo, pesado, incómodo, etc.
+
+El problema es que para lo que se usa Java, pocas alternativas hay. Sí, para escribir programas pequeños existen bastantes soluciones mejores, como Python o Ruby; Haskell, C++, Matlab, Erlang, R, bash son claramente mejores en otras áreas más específicas.
+
+Pero para escribir aplicaciones "administrativas" grandes, no existe nada mejor. Python y Ruby son dinámicos, lo cual impide de entrada que existan herramientas suficientemente potentes como para poder refactorizar y analizar código con un mínimo de fiabilidad- en un proyecto suficientemente grande esto supone un coste en tiempo suficiente como para compensar cualquier otra ventaja que se pudiera tener. Herramientas como Eclipse son extremadamente valiosas para el desarrollo a gran escala y simplemente no pueden existir tal cual para un lenguaje dinámico (nótese que por ejemplo Google hace análisis sobre lenguajes dinámicos, pero lo hace añadiendo información de tipos al código- con lo cual se gana en herramientas, pero se pierde la supuesta ventaja de los lenguajes dinámicos).
+
+La única alternativa de calado viable es .NET. Sin embargo, es una herramienta con costes que impone unas restricciones bastante duras (e.g. nos obliga a pagar caras licencias en el servidor, lo cuál supone un impedimento importante a los escalados horizontales). Para algunos serán aceptables, para otros lo hace inviable.
+
+Sí, Java como lenguaje sufre muchas carencias; falta de lambdas y una API muy potente pero poco amigable (básicamente, para hacer cosas sencillas, es muy muy fastidioso- y uno quiere hacer cosas sencillas casi siempre); las lambdas suponen un serio inconveniente bastante insalvable (hay cosas que se expresan con mayor concisión y claridad con ellas), pero lo de la API es salvable; uno siempre puede escribir sus fachadas para las APIs complejas y olvidarse del problema (o usar las de otros; Spring en gran parte es eso).
+
+Lo otro es el ecosistema. Sí, existen librerías y frameworks con graves excesos de ingeniería. Sí, Java EE no es la plataforma más sencilla del mundo. Pero eso no es un problema de Java- especialmente porque existen frameworks y librerías bien diseñados y con una complejidad adecuada. Java + Spring MVC no será la plataforma de desarrollo web más sencilla que existe, pero su complejidad está bien alineada con su potencia.
+
+En resumen; sí, Java tiene sus defectos. Pero tiene muchos más "defectos ajenos" que propios. Y es preocupante la cantidad de detractores que no ven la viga en su propio ojo, o que critican con desconocimiento de causa. Yo ciertamente estoy contento de disponer de Java para ciertas tareas, tal como le veo muchos defectos y nunca lo usaría para todo.
+
+
+=> http://allthingsd.com/20120406/whats-this-a-mac-virus-no-actually-its-a-weakness-in-java/ 1: http://allthingsd.com/20120406/whats-this-a-mac-virus-no-actually-its-a-weakness-in-java/
\ No newline at end of file
--- /dev/null
+# MATE + xmonad
+2012-09-07
+
+Aunque Gnome 3 no me desagrada tanto como a otros, llevo un tiempo trasteando con xmonad[1], MATE[2] y otras alternativas. Tras jugar un poco hoy con el multimonitor de xmonad, he decidido lanzarme a la piscina con una combinación de MATE y xmonad.
+
+xmonad mola. Es un gestor de ventanas "tiling"; es decir, por defecto no solapa ventanas y las encaja como mosaicos, de manera que podemos visualizar fácilmente varias ventanas simultáneamente. A parte, tiene unos atajos de teclado bastante bien pensados por defecto y un soporte multimonitor bastante interesante.
+
+El problema es que es excesivamente minimalista. Uno espera un panel con un reloj, notificaciones de programas, control de redes inalámbricas, etc.; y en xmonad hay que currárselo; instalar utilidades para cada cosa, escribir scripts para arrancarlos, tunearlo todo... en fin, tiempo que te permite crearte algo 100% a medida, pero demasiado tiempo.
+
+Lo que hace bastante gente es usar un entorno de escritorio (que trae todo eso de serie) y sustituir su gestor de ventanas por xmonad. Inicialmente había trasteado con Gnome 3 para esto, pero no parece sencillo montarlo sobre la versión completa, y el "Classic" o "fallback mode" es feo y tampoco funciona muy bien.
+
+Finalmente he optado por MATE. MATE es un fork de Gnome 2, para mi enormemente familiar y que me da todas las funcionalidades que necesito. Tiene un repositorio apt para Debian y añadir un
+
+xmonad --replace
+
+al inicio es trivial. Lo único que nos queda es un mínimo tuneo para que xmonad:
+
+* use la tecla Windows en vez de alt para sus atajos
+* maneje correctamente los paneles de MATE
+
+Mi config es tan sencilla como:
+
+import XMonad import XMonad.Hooks.ManageDocks
+
+main = xmonad defaultConfig { manageHook = manageDocks manageHook defaultConfig, layoutHook = avoidStruts $ layoutHook defaultConfig, modMask = mod4Mask }
+
+Luego mi última personalización es dejar un solo panel inferior y llenarlo de applets. Ya sólo nos queda aprendernos los atajos por defecto de xmonad[3].
+
+
+=> http://xmonad.org 1: http://xmonad.org
+=> http://mate-desktop.org/ 2: http://mate-desktop.org/
+=> http://www.haskell.org/haskellwiki/Image:Xmbindings.png 3: http://www.haskell.org/haskellwiki/Image:Xmbindings.png
\ No newline at end of file
--- /dev/null
+# Programación declarativa contra funcional
+2012-10-06
+
+Creo que la gran parte de programadores han dado sus primeros pasos con la programación imperativa tradicional. En esta, se utilizan lenguajes de programación que reflejan más o menos directamente el funcionamiento de los ordenadores típicos; instrucciones ejecutadas secuencialmente con variables que vamos modificando y control de flujo. Por ejemplo, un problema básico de "sumar los números entre n y m" se podría implementar primitivamente de la siguiente manera:
+
+sumar ( valor inferior, valor superior) es acumulado = 0 i = valor inferior mientras i <= valor superior acumulado = acumulado + i i = i + 1 el resultado es acumulado
+
+Declaramos un acumulador en el que iremos recogiendo el valor intermedio de la suma (esto es, si sumamos los números entre 1 y 10, primero contendrá 1, luego 1+2=3, luego 6, etc.) y realizamos un bucle en el que i va cogiendo los valores entre n y m, ambos inclusive, que vamos sumando en el acumulador.
+
+Lógicamente, la mayoría de los entornos de programación cuentan con funciones estándar y estructuras de control de flujo más elaboradas que nos permiten expresar este algoritmo de una forma más concisa y clara, pero al final son equivalentes a las que usamos en esta implementación u a otras más complicadas.
+
+Aparentemente, el programa no alberga mayor dificultad, especialmente a ojos de un programador medianamente experimentado. Sin embargo, comprender la ejecución del programa pasa por saber visualizar la ejecución del algoritmo; su flujo y su estado. Para un algoritmo de 5 líneas y 2 variables esto no es excesivamente complejo, pero tampoco trivial para quien no esté acostumbrado. Creo que gran parte de la dificultad que encuentran los que aprenden a programar es en esta visualización; antes de inventar uno sus propios algoritmos creo que debe ser capaz de entender uno ya hecho- y para inventar uno posteriormente también necesitará esta habilidad de "visualización".
+
+Esta primera "valla" con la que uno se topa al aprender a programar es especialmente problemática; no la podemos rodear ni trepar progresivamente, la debemos saltar de golpe y considero que para muchos es una primera valla demasiado fuerte y que, en ocasiones, se rodea inicialmente dañando todo el proceso posterior de aprendizaje.
+
+¿Podemos mejorar esto? Consideremos la siguiente implementación del algoritmo:
+
+sumar ( valor inferior, valor superior): el resultado es: si valor inferior es igual a valor superior, valor inferior si no, valor inferior + sumar (valor inferior + 1, valor superior)
+
+Observemos que aquí no hay estado. Comprender la ejecución de este algoritmo (obviando la implementación de las llamadas a funciones, que si bien es necesaria para comprender cómo el ordenador **ejecuta** el algoritmo, **no** es necesaria para comprender cómo **funciona**) es fácil pensando en una expansión algebraica:
+
+> suma de 7 a 23 = 7 + suma de 8 a 23 = 7 + 8 + suma de 9 a 23 = ... = 7 + 8 + 9 + ... + 22 + suma de 23 a 23 = 7 + 8 + 9 + ... + 22 + 23
+, con la que estará más familiarizado cualquiera que haya tenido una formación matemática media.
+
+Esta implementación, de una aproximación más funcional/declarativa, a mi entender es más sencilla de comprender y puede permitir al programador novel comenzar a implementar sus primeros algoritmos sin tener que visualizar flujo/estado sino mediante expansiones algebraicas.
+
+Pero la cuestión que se nos plantea en este punto es: ¿ayuda esto a la posterior comprensión de la programación imperativa? Es una pregunta importante, ya que si bien la programación funcional es potente, la programación imperativa es más adecuada para muchos programas que uno tendría que desarrollar (particularmente en un entorno comercial) y modela mucho mejor puntos tan importantes como son la entrada/salida.
+
+Ésta es una cuestión abierta, pero creo que como mínimo, una enseñanza inicial funcional puede ayudar al alumno a elaborar algoritmos medianamente complejos por sí solo y darle una confianza para afrontar el, más complicado a mi entender, mundo imperativo- al menos podrá haber realizado tareas complejas y no sentir la frustración que puede uno sentir al intentar implementar algoritmos iterativos simples y tener muchas dificultades a la hora de visualizar su ejecución.
\ No newline at end of file
--- /dev/null
+# Dineropelota
+2012-11-17
+
+El éxito de Nate Silver prediciendo las últimas elecciones en USA ha sido todo un acontecimiento público. Los medios se han hartado de comentar los métodos que le han permitido acertar correctamente el resultado en **todos** los estados con un margen de error mínimo, humillando a la legión de comentaristas políticos que extienden un dedo, lo levantan y miran de dónde sopla el viento para hacer sus predicciones.
+
+Pero para mi lo realmente interesante ha sido indagar en su biografía. A parte de haberse ganado la vida jugando al póker, Nate trabajó durante mucho tiempo en el campo de estadísticas en el béisbol.
+
+Tradicionalmente, el béisbol ha sido siempre un deporte con estadísticas al milímetro; como descendiente del cricket (que ya por el XVIII generaba bastantes datos), desde el siglo XIX durante cada partido se lleva un registro cuidadoso de todas las jugadas. El hecho de que sea un deporte con jugadas aisladas con inicio, final y resultado concreto hace que sea relativamente sencillo anotar una ingente cantidad de anotaciones sobre cada partido.
+
+Así pues, no es raro que ya hace mucho tiempo los equipos intentasen emplear las estadísticas para mejorar el rendimiento de su equipo mediante el análisis de datos para determinar táctica y estrategia o incluso para fichar jugadores. Las estadísticas de cada partido son públicas y los almanaques que recogen éstas son abundantes y populares, el uso avanzado de las estadísticas no se límita a los equipos y los comentaristas, sino que los mismos aficionados suelen estar muy familiarizados con los números.
+
+En 2002, los Oakland Athletics y su manager Billy Beane, consiguieron ensamblar un equipo extremadamente competitivo pese a no contar con unos ingresos comparables a los titanes tradicionales del deporte (su presupuesto para ese año era un tercio del de los Yankees). Para ello, bebieron de una corriente de pensamiento estadístico originada en los 50 que reanalizaba las estadísticas disponibles y creaba unas nuevas métricas que servían para valorar mejor el rendimiento de un jugador. Pasaban de estadísticas simples y evidentes como el porcentaje de bolas que conseguía batear un jugador a otros indicadores más complejos que tenían en cuenta más factores.
+
+Mediante el uso de estos indicadores, los Athletics conseguían encontrar buenos jugadores cuyas estadísticas tradicionales no eran excelentes y por tanto no estaban muy valorados, pero que sus métricas (denominadas sabermetrics) los destacaban como jugadores que podían aportar mucho a un equipo. Estos resultados también iban en direcciones opuestas, como en el caso de Silver contra los comentaristas de sillón, del olfato de los ojeadores.
+
+De esta manera, mediante el uso de estadísticas, los Athletics pudieron fichar jugadores baratos cuyo rendimiento estaba infravalorado y conseguir un éxito deportivo.
+
+Todo esto se plasmó en la película Moneyball con Brad Pitt, basada en el libro del mismo nombre, que explica la temporada de explosión de los Athletics.
+
+Por supuesto, el éxito de los Athletics llevó a otros equipos a utilizar los mismos métodos y seguir estas vías de investigación. El resultado fue el obvio; los jugadores con buenos números de sabermetrics subieron de valor, impulsando todo hacia el antiguo status quo- los equipos con dinero son los que pueden fichar a mejores jugadores según las sabermetrics, y se establece una carrera armamentística para ver quién puede encontrar métricas más efectivas que permitan descubrir a más jugadores infravalorados.
+
+Así pues, tenemos que un análisis estadístico concienzudo nos lleva a unos resultados deportivos tangibles y un cambio sustancial en la operativa de los equipos deportivos y una validación del método analítico en un terreno aparentemente tan caótico y subjetivo como el deporte.
+
+¿Es esto aplicable a otros deportes? ¿Podemos medir y optimizar el rendimiento deportivo?
+
+Seguramente sí. Sin embargo, está clarísimo que hay muchos y populares deportes que están en pañales estadísticamente. El fútbol, deporte rey, prácticamente no tiene estadísticas. Su naturaleza fluida y continua no parece proporcionar muchas oportunidades de generar datos; aún hoy tras los partidos no vemos más que un puñado de estadísticas muy genéricas, de las cuáles muchas no parecen tener mucho valor. Se han hecho esfuerzos analíticos y ahora vemos estadísticas como los kilómetros recorridos por cada jugador, pero al menos no se han hecho públicas ninguna métrica que parezca útil. Así pues, sigue en la época de los analistas de sillón que dictaminan sobre la cualidad de los jugadores y muy probablemente, existe una ventana de oportunidad para que un analista logre un salto cualitativo que cambie el fútbol moderno. Seguramente dentro de las casas de apuestas (que cuentan con unos sofisticados métodos de análisis que estiman probabilidades en tiempo real durante el desarrollo de los partidos), ya haya quien esté trabajando en ello.
+
+Por otra parte, observando el campo del motor vemos un caso bien distinto. Los equipos disponen de sofisticados datos telemétricos que permiten analizar hasta el más mínimo detalle de los movimientos del coche sobre la pista. Los sistemas de medición generan una cantidad de datos que seguramente hacen palidecer en cuanto al volumen a los datos de un partido de béisbol. Los datos de telemetría se utilizan extensivamente para analizar el rendimiento del coche y afinar su configuración, y para analizar la conducción de los pilotos y hallar puntos de mejora. Sin embargo, estos datos son coto privado de cada equipo y no circulan. Desgraciadamente, estos datos quizás nos permitirían responder a preguntas como quiénes son los mejores pilotos, que dado el gran peso del rendimiento del coche sobre el del piloto, a día de hoy son muy difíciles de contestar y quedan con un análisis muy superficial.
\ No newline at end of file
--- /dev/null
+# ¿Qué es el RPC?
+2012-11-28
+
+Aunque ciertos conceptos de programación son más viejos que yo, hay ciertas técnicas muy potentes que son desconocidas o ignoradas por mucha (demasiada) gente.
+
+A principios de los 80 (la Wikipedia cita un RFC de 1975 y, cómo no, Xerox) se hizo la formulación obvia que la comunicación entre sistemas se podía modelar como una llana y simple llamada a una función que se ejecuta en otro sistema y nos devuelve el valor.
+
+El mecanismo que se utilice para ello debe ser irrelevante, nosotros sólo queremos ser capaces de escribir:
+
+> resultado = suma(a,b)
+y que la suma se realice en el sistema remoto. A esto le llamaron llamada de procedimiento remoto o Remote Procedure Call en inglés.
+
+Sun implementó uno de los primeros sistemas de RPC para implementar el sistema de archivos distribuido NFS, y a lo largo del tiempo han ido apareciendo diferentes mecanismos de RPC para diferentes plataformas y necesidades.
+
+Con la popularización de la WWW, el protocolo HTTP y Javascript en los 90, pronto la gente comenzó a implementar comunicaciones entre sistema utilizándolos. Por ejemplo, una web podía exponer algunos de sus contenidos y funcionalidades en HTML para consumo humano, pero también exponerlos para consumo de otros sistemas. Mecanismos simples como poner una URL en la que si hacemos un POST http con unos argumentos, nos devuelve el resultado de una operación en un formato fácilmente parseable.
+
+Pronto, uno de los padres fundadores del HTTP, procesó los principios fundamentales del HTTP y la WWW, en concreto que todo era una cuestión de URLs y acciones como GET/POST/PUT/DELETE que soporta el protocolo HTTP; cada URL representa un recurso y podemos expresar acciones mediante los "verbos" HTTP. A esto le llamó REST y supuso una perspectiva limpia y poderosa de lo que es la WWW.
+
+De allí se pasó a los RESTful Web Services, maneras de exponer servicios en Internet utilizando los principios del REST.
+
+Típicamente, los desarrolladores de servicios web utilizan técnicas similares a las del desarrollo de aplicaciones web para publicar servicios REST, y los desarrolladores de servicio ejecutan las llamadas HTTP correspondientes para utilizarlos. Los formatos se intercambian en cualquier formato de intercambio de datos; desde texto plano, a XML u otros formatos como JSON, YAML o lo que se le ocurra la persona, teniendo que codificarse en origen y decodificarse e interpretarse en destino.
+
+Pero paralelamente, otros desarrolladores recordaron el RPC y desarrollaron sistemas de RPC sobre HTTP. Uno de los primeros fue XMLRPC, que posteriormente evolucionaría hacia el denostado SOAP. Muchas implementaciones de RPC sobre HTTP inicialmente eran malas; en parte por ser nuevas y primitivas, pero principalmente por la interoperabilidad. Mucho RPC anterior era entre sistemas muy homogénenos, con el mismo lenguaje en cliente y en servidor y desarrollados por las mismas personas, pero en el mundo de la WWW, son comunes entornos más heterogéneos, con lo que el RPC es mucho menos sencillo; diferentes modelos de datos y convenciones en cada extremo de la comunicación trae muchas dificultades y muchos RPC primitivos tenían grandes problemas de interoperabilidad.
+
+La visión de la transparencia entre sistemas no se daba. A veces, incluso, utilizando el mismo lenguaje pero diferentes implementaciones del mismo protocolo se tenían muchos problemas.
+
+Queda claro que una idea, por buena que sea, está limitada por sus implementaciones, y el pobre estado de los RPC sobre http ha impulsado muchísimo el uso de REST en vez de RPC. Eso es malo, porque en general REST te da más trabajo que RPC; mientras que en REST uno debe definir el formato de datos de intercambio e implementar la codificación y decodificación de estos, los mecanismos RPC realizan todo el trabajo sucio sin que el programador se tenga que preocupar de nada.
+
+Además, para invocar un servicio REST, simplemente has de usar las librerías de HTTP y de codificación que hayas escogido (parseo de texto plano, XML, JSON, etc.); con un sistema de RPC has de aprender a usar la librería, que si bien te puede ahorrar código, es más complicada conceptualmente.
+
+Esto llevó a que SOAP fuese condenado por gran parte del mercado (la interoperabilidad era siempre problemática, las librerías complejas, etc.) y el REST se popularizase mucho e incluso fuese en la práctica la mejor opción en muchos casos.
+
+Sin embargo, el RPC ha avanzado mucho. Disponemos de librerías decentes de SOAP, XML-RPC y otros protocolos como JSON-RPC para la mayoría de lenguajes, y hoy en día ya no me sorprende consumir un servicio implementado en un lenguaje desde otro sin ningún problema.
+
+Por otra parte, gente como Facebook y Google han inventado protocolos nuevos que son decididamente interoperables y multilenguaje, como Thrift de Facebook (ahora Apache) y los protobuf, que resuelven el RPC de una manera limpia y eficiente.
+
+Con RPC nos podemos ahorrar mucho código repetitivo de comunicación que supone REST, con el consiguiente aumento de productividad.
+
+¿Deja de tener sentido REST y sólo debemos comunicarnos mediante mecanismos RPC, por tanto?
+
+No, desde luego que no. Aún pueden existir problemas de interoperabilidad entre algunas plataformas poco populares, o los mecanismos de RPC puede que no sean buenos. REST es siempre un mínimo común denominador y la verdadera manera de asegurarnos que nuestros servicios pueden ser utilizados universalmente- incluso yo recomendaría que aunque implementemos RPC, ofrezcamos también REST para quien no pueda utilizarlo (recordemos igualmente que puede ser sencillo exponer un mismo servicio tanto con XML-RPC, como con JSON-RPC simultáneamente sin mucho esfuerzo, ampliando horizontes), y REST sigue siendo útil para exploración y "descubribilidad".
+
+Pero, cuando sea posible y adecuado, ahorrémonos escribir código de más.
\ No newline at end of file
--- /dev/null
+# X-Men: La vieja generación
+2012-12-28
+
+X-Men: Primera Generación es la nueva entrega de la saga mutante marcada por el regreso de Bryan Singer. Tras Batman Vuelve en el 92, las pelis de superhéroes habían quedado relegadas a Spawns, Blades y Batmans infames, hasta que en 2000, con un presupuesto de mínimos acorde con la crisis del género, Singer encontró un enfoque moderno y verosímil e hizo una peli de calidad aprovechando las posibilidades de los poderes, sembrando la semilla que llevaría a Spider-Man un par de años más tarde, que reventaría los records de taquilla del género y puso en marcha la maquinaria comercial que hoy nos bombardea continuamente.
+
+Tras la primera entrega, Singer firmó X2, en mi opinión una obra maestra que ya con medios respetables conseguía aprovechar al máximo el potencial de los superhéroes, dentro de una excelente película sin apenas puntos flojos, nos dejó por ejemplo con dos memorables escenas de acción (Rondador Nocturno en la Casa Blanca y el asalto a la mansión Xavier) que son dos joyas del cine.
+
+El traspiés vino en la siguiente entrega- los cantos de sirena llevaron a Singer a intentar reflotar la franquicia de Superman con nefastos resultados, y lo peor es que dejó su saga en manos del incompetente Brett Ratner, que firmaría la mediocre X3 cuyos únicos momentos de brillo serían meramente inerciales. Paralelamente, un spinoff bastante olvidable con Lobezno pasaría sin pena ni gloria por las pantallas.
+
+Pero el hijo pródigo ha vuelto, aunque sólo en calidad de productor. X-Men: Primera Generación es una precuela que narra los orígenes del Profesor Xavier y Magneto. La historia se enmarca dentro del conflicto de los misiles de Cuba, claramente una estratagema de Sebastian Shaw (Kevin Bacon) y su Hellfire Club de mutantes selectos, que Xavier y el sr. Imán deberán detener.
+
+El guión quizá sea el elemento más débil de la película- juega demasiado entre la consistencia con entregas anteriores, fidelidad a los cómics y un argumento extremadamente ambicioso y no acaba de cuajar en ningún aspecto; hay agujeros e incongruencias, en ocasiones los personajes se separan demasiado de sus orígenes de papel y la historia no conduce demasiado hábilmente la película.
+
+Pero como contrapartida, tenemos los actores. Especialmente, algunos de ellos. Por qué no decirlo, el Magneto de Michael Fassbender está ahí ahí con el Magneto del magnífico Ian McKellen. Fassbender atraviesa todos los sentimientos con una facilidad y realidad pasmosa, en una interpretación absolutamente espléndida y sobresaliente. Ciertamente el personaje de Magneto da para muchísimo y especialmente en sus orígenes como amigo del que posteriormente sería su némesis, el Profesor X. Sus conflictos internos, sus giros y su tragedia son el punto fuerte de la película. Desgraciadamente, James McAvoy está meramente correcto tirando a bien como el profesor telépata- no queda claro si por el personaje o por la interpretación- como todos los buenos, se nos antoja un poco soso al lado de un goloso villano. Una lástima porque de haber igualado a Fassbender, es posible que muchas de las debilidades de la película hubiesen quedado totalmente eclipsadas por las interacciones entre ambos.
+
+Kevin Bacon como Sebastian Shaw también destaca, así como la mayoría de secundarios; especialmente Rose Byrne como Moira MacTaggert, la humana asociada/ayudante/amante de Xavier (aquí agente de la CIA en vez de genética con Nóbel) y Jennifer Lawrence (la prota de Los Juegos del Hambre) como Mística. Quizá cojea un poco el personaje de Emma Frost, que ya venía un poco cojo de los tebeos y que además se ve lastrado por los peores efectos especiales de toda la película.
+
+En cuanto a la acción y los efectos, en general muy bien. Ninguna escena de acción llega a las alturas de X2- no están tan bien pensadas y no utilizan los poderes a su nivel, y lo más destacable en ellas es, como no, Magneto, seguido de un demoníaco Azazel que está muy aprovechado.
+
+En definitiva, una peli de superhéroes decente y correcta, e impulsada a mayores cotas por el sublime trabajo de Fassbender como Magneto, que nos demuestra, como hizo hicieran antes Hugh Jackman como Lobezno, Robert Downey Jr. como Iron Man, Ian MacKellen como Magneto y un escaso puñado de actores más, lo que se puede hacer con estos personajes.
+
+El ránking quedaría así:
+
+1. X2
+2. Iron Man
+3. Hellboy
+4. Watchmen
+5. The Dark Knight
+6. The Avengers
+7. **X-Men: Primera Generación**
+8. Hulk (2003)
+9. Batman
+10. Spider-Man 2
+11. X-Men
+12. Batman Begins
+13. Spider-Man
+14. Batman Returns
+15. Iron Man 2
+16. X-Men Origins: Wolverine
+17. X-Men: The Last Stand
+18. The Punisher (1989)
+19. Thor
+20. Blade
+21. Elektra
+22. The Green Hornet
+23. Fantastic Four
+24. The Green Lantern
+25. Daredevil
+26. Superman Returns
+27. The Incredible Hulk
+28. Superman
+29. Spider-Man 3
\ No newline at end of file
--- /dev/null
+# Conecte el teclado al televisor
+2013-01-17
+
+Mi madre disfruta contando la historia de cómo el día que mi padre trajo el primer ordenador a casa, un flamante Commodore C64, mi padre, mi hermano y yo no comimos y nos quedamos enganchados al aparato. Ese día se trastocó el mundo: a la televisión, el medio masivo de comunicación, le había salido un teclado que invertía su característica principal, la pasividad. El teclado y el mando de plástico manipulaban lo que salía por la tele. El primitivo muñeco que representaba a un futbolista respondía al mando y, lo que quizás resultaba más mágico, si pulsabas las letras dibujadas en el teclado, estas reaparecían en el televisor.
+
+Poco más tarde (y si se me permite introducir otra anécdota materna), tecleamos un programa de una revista. Como resultado, si nuestra madre nos decía una fecha, el ordenador respondía en qué día de la semana había caído nuestro nacimiento, o lo que fuese. El teclado no sólo permitía interactuar con lo que salía en pantalla, sino que nos permitía enseñar al aparato a hacer cosas que para nosotros eran bastante laboriosas y complejas (no para mi madre que, por supuesto, recordaba exactamente en qué día habían caído las efemérides).
+
+Un poco alejados del nido, y un poco más tarde, nuestro padre nos llevaba a su oficina a jugar con un ordenador con módem. Después de escuchar durante unos segundos unos sonidos un tanto extraños, en la pantalla aparecían cosas tecleadas por otros en otros lugares. La experiencia evolucionaría poco después en la universidad, donde los ordenadores estaban constantemente conectados a una red en la práctica infinita que era la biblioteca más alucinante del mundo (a mediados de los 90 esto era tan alucinante en el concepto como ahora, pero mucho, muchísimo más sorprendente). En la biblioteca podías encontrar un montón de libros molones, pero en Internet había material escrito que nunca podías encontrar en una biblioteca; discusiones y análisis sobre cualquier tema que te gustase, por poco “culto” que fuera. Ríos y ríos digitales sobre juegos de rol, literatura fantástica, música... pero también sobre la misma tecnología que impulsaba todo aquello.
+
+Muy poco después, entre asignaturas y mis prácticas como becario, dispuse de mi propio espacio en Internet, y con un poco de HTML pude publicar mi propia página personal con los contenidos que yo quería, que cualquiera podía leer. El conocimiento resultaba mucho más accesible y era extremadamente sencillo publicar contenidos propios.
+
+El ordenador, en un periodo relativo corto de tiempo, había derrotado a la televisión con su interactividad, había introducido la programación y luego, había sido el punto de acceso a la redes de la información.
+
+Irónicamente, creo que los pasos siguientes están yendo en el paso contrario.
+
+A algunos ordenadores se les está cayendo el teclado. Sin él, al igual que el televisor antes de conectarle un teclado, reducimos nuestra interacción y nuestra capacidad de crear. Sí, interactuamos con juegos (juegos que a menudo nos remiten a los simples juegos del Commodore C64), y en ocasiones tecleamos, pero la mayor parte del tiempo miramos y, si acaso, hacemos scroll, seguimos enlaces y otras cosas sencillas como expresar nuestra aprobación a un mensaje.
+
+Además, atrás quedan también los tiempos en el que el ordenador estaba a dos pasos de un entorno de programación o incluso al encenderse directamente interpreta lo que escribimos como un programa. Más allá de eso, cada vez se ponen más barreras a que programemos y distribuyamos nuestras creaciones. Hasta nuestras creaciones más sencillas escapan a nuestro control y grandes empresas privadas se reservan el derecho de hacer con ellas lo que quieran: principalmente, venderlas al mejor postor.
+
+Sí, los avances tecnológicos son notables y las posibilidades de hacer cosas son cada vez mayores, pero como con la televisión, cada vez adoptamos un papel más pasivo, y cada vez parece más complicado hacer lo que anteriormente casi podía ser más sencillo que consumir.
+
+Si bien es difícil valorar si globalmente estamos evolucionando o viendo una regresión, creo que es obvio que en ciertas áreas estamos retrocediendo. Y lo que es peor, este retroceso puede frenar los avances que se hacen por otros frentes. ¿Habrá tanta gente ahora a la que le dé por crear y programar? ¿Podremos seguir con el ritmo de evolución si menos gente se quiere dedicar a avanzar y prefiere sentarse en el sofá a consumir lo que hagan otros? O por el contrario, el hecho de que se reduzca la proporción de gente que quiere crear y no consumir será irrelevante porque aún así serán más dado que la tecnología ahora está al alcance de muchos más.
+
+No es fácil predecir el futuro. Pero es preocupante cómo volverle a quitar los teclados a las pantallas en nombre de la comodidad y poner vallas a la distribución de contenidos y software en nombre de la seguridad puede hacernos dar pasos atrás en una de las áreas más importantes de los últimos tiempos.
\ No newline at end of file
--- /dev/null
+# Los Simpson en A3
+2013-01-02
+
+En 2012 A3 emitió 677 episodios de los Simpson y Neox 955 (1,85 y 2,6 diarios) (la Fox de satélite los deja por los suelos, echan casi 6 al día, pero les ignoraré a partir de ahora).
+
+En esas 1632 emisiones, sólo se han emitido 480 episodios diferentes; es decir, cada episodio se ha emitido de media 3,4 veces. El más emitido es "Nos vamos a Homérica" con 9 emisiones en 2012, aunque 167 episodios sólo se han visto 1 vez.
+
+Hoja de cálculo aquí[1].
+
+
+=> https://docs.google.com/spreadsheet/ccc?key=0Atd_0Z9UHnqJdFF5bE4yajdXS3R4TElUTTV6RUtPb3c 1: https://docs.google.com/spreadsheet/ccc?key=0Atd_0Z9UHnqJdFF5bE4yajdXS3R4TElUTTV6RUtPb3c
\ No newline at end of file
--- /dev/null
+# Google Apps es de pago
+2013-02-20
+
+(llego muy tarde a esto, disculpas)
+
+Hace mucho mucho tiempo, Google sacó Google Apps con su edición gratuita. Nos daba una posibilidad de usar las aplicaciones de Google (GMail, Docs [ahora Drive], etc.), bajo un dominio propio y con administración centralizada de usuarios. ¡Y gratis!
+
+Y hubo gran regocijo y cantidad de gente con dominio propio se hizo la cuenta gratuita, migró su correo y demás a Apps (perdiendo datos o con gran trabajo- yo tengo pesadillas de cuando pasé mis estrellitas de Google Reader...) y contempló maravillada la nueva realidad.
+
+Inicialmente, Apps era gratuito hasta 25 usuarios, y a parte de ese límite, las características de la versión de pago no eran tan atractivas (si no recuerdo mal, más espacio, herramientas para migrar correo e integración con directorios, básicamente). Naturalmente, no sólo particulares se hicieron esto sino que empresas (sospecho que **muchas**) se pasaron a Google Apps.
+
+Puedo entender la frustración que sintieron en Google al comprobar cómo empresas con ingresos para las que tendría todo el sentido del mundo contratar la versión de pago por un coste ínfimo (40€/usuario/año es ridiculo comparado con, pongamos, lo que cuesta el empleado- imaginad como os sentiríais si os aumentasen en 40€ el sueldo bruto anual...), utilizaban la versión gratuita (que Google vendía como para pequeñas asociaciones, familias y otras entidades no precisamente con ánimo de lucro). Obviamente no se trata de nada ilegal, e incluso si pensamos que Google es una empresa enorme con unos beneficios inimaginables, podemos defender que no se trata de algo inmoral siquiera... pero insisto, puedo comprenderles.
+
+Así pues, fueron recortando. La versión gratuita se iba ocultando más y más, luego se redujo el límite de 25 a 10 usuarios y finalmente, se eliminó completamente.
+
+Dos apuntes:
+
+Uno, es posible que las empresas que "abusaron" (insisto en las comillas), hayan hecho que los verdaderos destinatarios del invento lo hayan perdido.
+
+Dos, para los friquis que lo echamos de menos... ¿realmente aporta tanto? Lo más visible es el dominio personalizado para los emails, pero con las opciones de accounts y forwarding, se puede simular bastante bien con el GMail tradicional. La gestión centralizada de usuarios... vaya, si la necesitas es porque tienes bastantes usuarios (probablemente, más de 25).
\ No newline at end of file
--- /dev/null
+# Unos apuntes rápidos sobre Vagrant
+2013-02-20
+
+En las últimas semanas he estado jugando bastante con Vagrant[1]. Se trata de una herramienta para automatizar el uso de VirtualBox (de momento).
+
+Básicamente, uno define en un Vagrantfile un conjunto de máquinas virtuales, basándose en unas máquinas virtuales plantilla (boxes, en su terminología), especificando los parámetros de virtualización (configuración de red, principalmente) y un mecanismo de provisionado (soporta Puppet y Chef, pero también podemos usar scripts de shell de toda la vida, por ejemplo).
+
+Hacer boxes nuevos es bastante sencillo (básicamente, hay que usar unos usuarios y contraseñas establecidos, instalar las Guest Additions de VirtualBox y poco más), si bien un poco laborioso, aunque existen repositorios como www.vagrantbox.es[2] que tienen bastantes boxes listos para descargar.
+
+Con los boxes y el Vagrantfile, podemos arrancar rápidamente templates de, pongamos, Centos 6.3 con la red configurada y una carpeta compartida con el host (por defecto, la carpeta donde está el Vagrantfile se ve como /vagrant en la máquina virtual), algo que realmente no ahorra muchísimo tiempo respecto a hacerlo con VirtualBox desde cero, pero que es más conveniente.
+
+Mediante el provisionado o el uso de boxes "tuneados", podemos resolver bastante bien el típico problema de montar entornos de desarrollo en proyectos complejos. Podemos empaquetar un entorno ya configurado como box o box + script de provisionado, junto con un Vagrantfile que se puede editar fácilmente para adaptarlo a la máquina de cada desarrollador en concreto, con el que levantar la máquina ya configurada será cuestión de minutos, cuando anteriormente podían ser horas o llevarnos a la tentación de tener entornos de desarrollo más sencillos y menos parecidos que el de producción.
+
+Pero yo el uso que le veo más interesante es para la administración de sistemas, pues nos permite adoptar un modelo bastante parecido al de desarrollo de software con test unitario. Podemos "desarrollar" nuestros sistemas como Vagrantfiles + scripts de provisionado; idóneamente con esto deberíamos conseguir levantar el sistema desarrollado completamente automatizadamente. Si conseguimos esto, el Vagrantfile y el script de provisionado es una documentación "perfecta" de lo que es el servidor; recoge al detalle cómo se configura todo e incluso podemos ejecutar el provisionado en el sistema "de producción" y asegurarnos entonces que disponemos de una máquina virtual y un sistema de producción idénticos. Tras tener esto, podemos hacer todas las pruebas que queramos en el entorno virtual, como instalar actualizaciones, probar cambios de configuración, sustituir programas... y las podemos probar simplemente destruyendo el entorno y recreándolo a partir del Vagrantfile y el provisionado. Podemos hacer pruebas una y otra vez de scripts para actualizar la configuración en el entorno virtual y luego lanzarlas en producción con un gran nivel de seguridad.
+
+Lo único que le faltaría sería soportar algún mecanismo de verificación automático, pero es un detalle pequeño.
+
+Aún así, Vagrant no es perfecto. Al parecer, ahora mismo sólo soporta VirtualBox (en teoría están trabajando en abstraer el código que trata con el sistema de virtualización, pero no queda claro su status); sería fantástico que se integrase con sistemas de virtualización más "de servidor" como VSphere o KVM, para poder pasar los sistemas montados con Vagrant a producción más automatizadamente (y poderlos probar sobre el hipervisor "final"). También echaría de menos un mecanismo para automatizar la actualización de boxes (e.g. hacer un yum update periódicamente a los box y que se reempaquetase, de manera que estuviesen siempre al día).
+
+También cabe argumentar que realmente Vagrant es una capa muy fina sobre VirtualBox, y que se podría conseguir algo similar mediante las herramientas de línea de comandos de VirtualBox, pero aún así considero que más allá del detalle técnico, los desarrolladores de Vagrant han conseguido una herramienta muy *usable* y que resulta atractiva... algo que muchas veces es un gran factor a la hora de adoptar una herramienta nueva que te permite hacer cosas de una manera nueva.
+
+En definitiva, ánimo a que probéis Vagrant, tanto para desarrollo como para administración de sistemas. Seguramente para lo segundo no aporte demasiado en entornos "serios", pero para el "aficionado" puede ser muy interesante.
+
+
+=> http://www.vagrantup.com/ 1: http://www.vagrantup.com/
+=> http://www.vagrantbox.es/ 2: http://www.vagrantbox.es/
\ No newline at end of file
--- /dev/null
+# Amigo lector
+2013-03-20
+
+Se han escrito ríos de tinta sobre la muerte de Google Reader. Una de las mayores víctimas silenciosas, son los usuarios de Blackberry. Hasta el momento, yo usaba la web de iPhone; un vestigio raro ya que hay "app", pero que era la mar de usable en mi móvil.
+
+De entre todos los reemplazos de Google Reader que se barajan, aún no he encontrado ninguno que me solucione el uso móvil en la Blackberry- no parece haber nadie que tenga una web móvil usable [la de Netvibes ya os digo yo que no se puede usar] y de momento no se huele ninguna aplicación (y por mucho que esto me estigmatice, preferiría no pagar si es necesario [aunque en el caso del lector de feeds, podría hacer una excepción]).
+
+Explorando alternativas, me he puesto un poco en plan hágaselo usted mismo. Feedly dice que implementará Normandy, un clon del backend de Google Reader[1] y de momento apostaré por esta reimplementación. De hecho, Google Reader no tiene API "oficial", pero mucha gente la ha destripado y documentado, y de hecho goza de cierta popularidad. Así pues, me he puesto a buscar librerías que implementen la API.
+
+Dado que uno trabaja mayoritariamente Python/Django y Java, esto me ha limitado un poco la búsqueda. Para Java, el mejor candidato parece greader-unofficial[2], pero parece estar un poco muerto con tan solo 47 commits en su repositorio, el último de octubre de 2011. En cambio, naturalmente parece que para Python existe libgreader[3], con commits de anteayer y con mucha mejor pinta.
+
+Así pues me he puesto manos a la obra y he iniciado un proyecto Django publicado en Github, GROLM[4] (Google Reader on Lightweight Mobile). Es un proyecto Django 1.5[5] estándar sobre una base de datos PostgreSQL.
+
+libgreader proporciona cuatro alternativas a la hora de manejar la autenticación contra Google Reader:
+
+* proporcionarle el usuario/contraseña de la cuenta Google y que él mismo autentique
+* OAuth
+* OAuth2
+* una variante de OAuth para Google App Engine
+
+; obviamente la menos usable y/o poco segura es la de la contraseña, y tampoco quiero desarrollar sobre App Engine, así que me he decantado por OAuth2 (al ser más moderna obviamente que OAuth). El mecanismo de autenticación de OAuth2 de libgreader parece completo, pero deseaba integrarlo con el sistema de autenticación de Django para ahorrarme faena.
+
+Para ello, he localizado django-social-auth[6], que integra en el sistema de autenticación de Django diversos mecanismos de login social entre los que se incluye OAuth2. La configuración de django-social-auth con OAuth2 es relativamente sencilla, simplemente tenemos que añadir el siguiente fragmento a nuestro settings.py[7]:
+
+> INSTALLED_APPS = (
+> # ...
+> 'social_auth',
+> )
+>
+> AUTHENTICATION_BACKENDS = (
+> 'social_auth.backends.google.GoogleOAuth2Backend',
+> )
+>
+> GOOGLE_OAUTH_EXTRA_SCOPE = [
+> 'https://www.googleapis.com/auth/userinfo.email[8]',
+> 'https://www.googleapis.com/auth/userinfo.profile[9]',
+> 'https://www.google.com/reader/api/[10]',
+> ]
+>
+> LOGIN_URL = '/login/google-oauth2'
+> LOGIN_REDIRECT_URL = '/logged-in/'
+> LOGIN_ERROR_URL = '/login-error/'
+>
+> GOOGLE_OAUTH2_CLIENT_ID = 'xxxx'
+> GOOGLE_OAUTH2_CLIENT_SECRET = 'xxxx'
+, donde los dos últimos parámetros los podemos obtener de la Google API Console[11] (donde también deberemos añadir las URLs de nuestra aplicación para validar el proceso de login)
+
+Con esto, con anotar una vista como @login_required, al visitarla se nos redirigirá a la página de autenticación de las cuentas Google donde haremos login y se nos redirigirá de nuevo a la vista ya autenticados (se creará un usuario de Django correspondiente al usuario de Google y se vinculará a la sesión del usuario).
+
+Finalmente, para "propagar" esta autenticación a libgreader, el mecanismo que he encontrado es extraer el token de acceso que recoge django-social-auth y almacena en una base de datos y pasárselo a libgreader, algo que he encapsulado en un módulo[12], pero que en realidad es bastante sencillo:
+
+> usa = UserSocialAuth.objects.get(user=user)
+> auth = OAuth2Method(settings.GOOGLE_OAUTH2_CLIENT_ID, settings.GOOGLE_OAUTH2_CLIENT_SECRET)
+> auth.authFromAccessToken(usa.extra_data['access_token'])
+> reader = GoogleReader(auth)
+, donde user es el usuario (que desde una vista podemos obtener por ejemplo haciendo request.user). Una vez tenemos esto, ya obtenemos el objeto GoogleReader que constituye el punto de acceso a la API.
+
+El resto de código implementado por el momento tan sólo obtiene la reading-list (los elementos sin leer) y muestra sus 20 primeras entradas.
+
+
+=> http://blog.feedly.com/2013/03/14/google-reader/ 1: http://blog.feedly.com/2013/03/14/google-reader/
+=> https://code.google.com/p/greader-unofficial/ 2: https://code.google.com/p/greader-unofficial/
+=> https://github.com/askedrelic/libgreader 3: https://github.com/askedrelic/libgreader
+=> https://github.com/alexpdp7/grolm.pdp7 4: https://github.com/alexpdp7/grolm.pdp7
+=> http://www.djangoproject.com/ 5: http://www.djangoproject.com/
+=> https://github.com/omab/django-social-auth 6: https://github.com/omab/django-social-auth
+=> https://github.com/alexpdp7/grolm.pdp7/blob/master/grolm.pdp7/src/grolm/settings.py 7: https://github.com/alexpdp7/grolm.pdp7/blob/master/grolm.pdp7/src/grolm/settings.py
+=> https://www.googleapis.com/auth/userinfo.email 8: https://www.googleapis.com/auth/userinfo.email
+=> https://www.googleapis.com/auth/userinfo.profile 9: https://www.googleapis.com/auth/userinfo.profile
+=> https://www.google.com/reader/api/ 10: https://www.google.com/reader/api/
+=> https://code.google.com/apis/console 11: https://code.google.com/apis/console
+=> https://github.com/alexpdp7/grolm.pdp7/blob/master/grolm.pdp7/src/grolm/main/reader_service.py 12: https://github.com/alexpdp7/grolm.pdp7/blob/master/grolm.pdp7/src/grolm/main/reader_service.py
\ No newline at end of file
--- /dev/null
+# Ensaladilla de tiros: Frozen Synapse
+2013-06-22
+
+Hace unas días me llegó el anuncio de un nuevo Humble Bundle[1], el célebre pack de juegos "paga lo que quieras" que sale ocasionalmente. Le eché un vistazo al listado y me llamó la atención uno, Frozen Synapse[2], una especie de simulador de tiroteos estratégico. Es de los que necesitas pagar más que la media para obtener, pero siendo la media ahora mismo menos de 4€, me lancé (puse $10, de hecho).
+
+La premisa es sencilla, controlas una pequeña escuadra de agentes en escaramuzas contra otros grupos. El juego consta de turnos de 5 segundos, en los que puedes dar órdenes a tus hombres: moverse, apuntar, cubrirse, etc.; le das al play y se desarrolla el turno según las instrucciones.
+
+Las órdenes son relativamente simples y dispones de un modo de previsualización que facilita bastante el diseño de las órdenes... no hay munición, energía, habilidades ni nada; incluso prometen que la simulación es determinista y exenta de azar. Se puede jugar en modo "luz" o "oscuro", lo que determina si eres omnisciente y ver a tus oponentes siempre o sólo cuando tus agentes tengan contacto visual. Yo sólo he jugado con luz, entiendo que el oscuro lo complicará todo bastante y le añadirá emoción, pero de momento quiero cogerle el truco fácilmente.
+
+Para el aspecto visual, podéis echarle un vistazo al trailer:
+
+```html
+<iframe src="http://www.youtube.com/embed/BOlV_9DYnOw?feature=player_embedded" height="360" width="640" allowfullscreen frameborder="0"></iframe>
+```
+
+, los gráficos son sencillos y atractivos (y como bonus, ¡funciona aceptablemente hasta en mi netbook!).
+
+Debo decir que sólo he echado unas cuantas escaramuzas, las primeras misiones del modo campaña y una partida rápida online, pero de momento me parece un juego fantástico.
+
+Ni cuando tenía mucho tiempo para jugar me atraían los juegos complejos, y ahora que dispongo de pocos ratos para los videojuegos, más aún. Los juegos con mil tipos de unidades, opciones, recursos a gestionar, etc. me cansan y me hacen sentir como si estuviese trabajando de contable más que jugando. Frozen Synapse, en cambio, con muy pocas variables y mecanismos de juego en los que pensar, consigue mucha profundidad táctica. El sistema de turnos le da bastante emoción a la cosa, y de momento parece todo bastante equilibrado. Me recuerda mi parte favorita del UFO: Enemy Unknown[3], los tensos tiroteos, sin los (para mi) tediosos interludios de gestión de recursos.
+
+Si buscáis un juego táctico sin complicaciones pero con dosis de emoción, creo que Frozen Synapse es una excelente opción... y es tan barato que casi no entraña riesgo.
+
+
+=> http://www.humblebundle.com/ 1: http://www.humblebundle.com/
+=> http://www.frozensynapse.com/ 2: http://www.frozensynapse.com/
+=> http://en.wikipedia.org/wiki/UFO:_Enemy_Unknown 3: http://en.wikipedia.org/wiki/UFO:_Enemy_Unknown
\ No newline at end of file
--- /dev/null
+# Esquemas de datos explícitos e implícitos
+2013-06-06
+
+Hablando de bases de datos relacionales, es común referirse al esquema de datos como la definición de las tablas, vistas, funciones, etc. que conforman la base de datos*. El esquema es sumamente importante, por supuesto, nos define qué datos admitimos y nos condiciona todo código que accede a la base de datos.
+
+Este es un esquema explícito; está ahí, podemos enumerar los objetos de los que se compone y conocer milimétricamente su estructura; podemos saber qué tablas hay y qué columnas tienen, etc.
+
+Ahora bien, supongamos que cogemos una aplicación que usa una base de datos y de repente, ocultamos el esquema. Asumamos por un momento que no podemos saber qué tablas hay, ni qué columnas, ni nada. Aún haciendo este gran cambio, nuestra aplicación seguirá funcionando**. Aún más, si desconectamos todas las restricciones de integridad y admitimos que se inserten valores en columnas que no existen (e incluso los almacenamos)... nuestra aplicación muy probablemente seguirá funcionando correctamente.
+
+La primera observación interesante que podemos hacer es que aquello a lo que llamábamos el esquema de datos puede que no esté ahí, pero los datos que tenemos almacenados seguirán siguiendo el anterior esquema de datos. La programación seguirá condicionada por ese mismo esquema; seguiremos insertando en las tablas y columnas que definía el esquema.
+
+El esquema de datos original que habíamos declarado explícitamente ya no existe, pero el esquema de datos implícito sigue ahí. Los datos continuan cumpliéndolo y el programa sigue regido por él. Existe, por tanto, un esquema implícito que podríamos deducir con bastante certeza observando los datos almacenados y el código que los manipula.
+
+Siguiendo con este experimento, podríamos preguntarnos... ¿no hemos perdido nada, verdad?
+
+Aparentemente, no. En cuanto a funcionamiento, quizá ocultemos y amplifiquemos algún defecto que ya existía (la base de datos aceptará datos inválidos cuando antes los rechazaba, y muy probablemente, no nos daremos cuenta), pero realmente no habremos perdido mucho.
+
+Pero cuando nos llegue el momento de modificar o ampliar el código, sí tendremos un problema: al no poder consultar el esquema, se dificultará mucho nuestra labor. El esquema explícito era eso: explícito, claro, fácil. El esquema implícito sigue ahí, pero está oculto. Lo duro es que antes bastaba con ajustarnos al esquema explícito de los datos, que estaba delante de nuestros ojos, pero ahora seguimos teniéndo que seguir un esquema de datos implícito, mucho más críptico. Tendremos que mirar los datos almacenados o el código para saber cómo se llamaba cada tabla y cada columna, y esta información muy probablemente no esté centralizada.
+
+Por supuesto, hay un caso en el que sí seguirá disponible. Si usamos un algo como un ORM, podremos contar con otro esquema explícito de datos; la definición del ORM -e incluso en algunos casos podremos reconstruir perfectamente el esquema a partir de la definición del ORM- claramente son conceptos si no equivalentes siempre, muy cercanos***. Si este esquema es suficientemente bueno, podría suplir perfectamente al esquema explícito de las bases de datos (e incluso mejorarlo: podría permitirnos expresar un esquema de datos más restringido).
+
+Podríamos decir que el esquema de datos explícito de la base de datos no es estrictamente necesario, pero ciertamente, **un** esquema de datos explícito es una herramienta muy útil, quizás no tanto para el funcionamiento de las aplicaciones como para su codificación y mantenimiento.
+
+Adicionalmente, es bien cierto que puedan existir datos que no se ajusten al modelo relacional -cuya estructura o restricciones sean sumamente especiales (normalmente por ser extremadamente laxos), pero aunque esto fuera cierto, seguirían teniendo un esquema implícito (o incluso explícito, si la herramienta que usáramos en sustitución de la base de datos lo permitiera o requiriera, o si nosotros decidiéramos escribirlo) y, igual que en el caso relacional, no disponer de un esquema explícito nos entorpecería las labores de mantenimiento y extensión del código.
+
+Así pues, aunque es posible que un esquema relacional no sea lo más adecuado para nuestros datos, es falaz concluir que la ausencia de un esquema explícito es una ventaja -el esquema implícito sigue existiendo y nos debemos ajustar a él- y es más fácil ajustarse a algo explícito y claro que a algo implícito y oculto.
+
+* en algunos gestores de bases de datos, el término se confunde un poco porque se pueden separar los objetos de la base de datos en "esquemas" para gestionarlos mejor
+
+** las bases de datos permiten a las aplicaciones consultar el esquema [explícito]; hay aplicaciones que utilizan esta funcionalidad (para permitir su personlización mediante la creación de nuevas tablas, etc.); en este poco frecuente caso, dejarían de funcionar, claro
+
+*** lo que nos debería llevar a pensar que uno de los dos es redundante e innecesario
+
+corregido por el de siempre[1]
+
+
+=> http://obm.corcoles.net 1: http://obm.corcoles.net
\ No newline at end of file
--- /dev/null
+# Scott Pilgrim de los anillos
+2013-07-10
+
+Según la Wikipedia:
+
+> Tolkien first began working on the stories that would become The Silmarillion in 1914,[8] intending them to become an English mythology that would explain the origins of English history and culture*[1]
+Reflexionando tras ver la adaptación al cine del cómic de Scott Pilgrim[2] voy llegando a la conclusión que Bryan Lee O'Malley[3] pretendía algo parecido con su historieta. Ya el argumento, en el que Scott Pilgrim debe derrotar a los siete ex de su pretendida para poder salir con ella, parece sacado con alguna libertad de una historia de dioses griegos si no directamente paralela a las doce labores de Hércules u otras muchas epopeyas. Pero al contrario que Tolkien, la mitología de Scott Pilgrim pretende reflejar el lenguaje e iconografía de su audiencia, bebiendo así de cómics, videojuegos y demás cultura pop. La misma estructura argumental alude a los monstruos de fin de nivel de los videojuegos, y las batallas con ellos están filmadas siguiendo claramente el patrón de los videojuegos de lucha; letrero de versus, barras de energía, combos y demás mandangas. En un plano más profundo, pese a que el cómic pasa un poco de puntillas por las alusiones al limbo que constituye un punto argumental importante del tebeo, observamos curiosamente como Scott Pilgrim trata el tradicionalmente religioso concepto de la resurrección- por supuesto con las vidas extra de los videojuegos como mecanismo.
+
+La adaptación cinematográfica va un paso más allá y traslada el lenguaje visual del cómic a la pantalla; bocadillos, planos y montaje compiten con el Hulk de Ang Lee para ver quién hace la película más comiquera. Edgar Wright se aleja un pelín de la lírica del taiwanés (que por otra parte, tampoco acababa de encajar en la historia de un destructivo hombretón verde) y es más fiel a los coloridos destellos pop del cómic tradicional. Wright sale bastante airoso del desafío y si bien no alcanza la sofisticación del preciosista montaje de Hulk, sí es sumamente efectivo pese a que es ambicioso y arriesgado.
+
+Más allá de lo argumental y visual, Scott Pilgrim contra el Mundo tiene más bien pocos puntos flojos. Quizá el protagonista, el ubicuo Michael Cera no parece el actor más apropiado para el papel protagonista, aunque su interpretación es bastante digna. El resto del reparto es bastante sólido- a destacar el inusual papel de Kieran Culkin, que se hace con la mayoría de las escenas en las que sale, y el ex interpretado por Brandon Routh, el Superman de la insípida Superman Returns de 2006, cuyo supervillano infundido de poderes veganos nos brinda la probablemente mejor batalla de la cinta.
+
+Por último, destacar que O'Malley que admite abiertamente que el manga, y en concreto, la superlativa Ranma 1/2 fue de sus mayores influencias- hecho que no se aprecia mucho visualmente en la película, pero que en el aspecto argumental y, sobre todo, humorístico, queda bastante patente.
+
+En definitiva, una peli entretenida, arriesgada, divertida y... mitológica.
+
+
+=> http://en.wikipedia.org/wiki/The_Silmarillion#Concept_and_creation 1: http://en.wikipedia.org/wiki/The_Silmarillion#Concept_and_creation
+=> http://en.wikipedia.org/wiki/Scott_Pilgrim 2: http://en.wikipedia.org/wiki/Scott_Pilgrim
+=> http://en.wikipedia.org/wiki/Bryan_Lee_O%27Malley 3: http://en.wikipedia.org/wiki/Bryan_Lee_O%27Malley
\ No newline at end of file
--- /dev/null
+# Lucha temática
+2013-08-07
+
+Esto de tener una base de datos con la programación televisiva (desde diciembre de 2011), lleva a uno preguntarse cosas como "¿repiten mucho las pelis en los canales temáticos de cine?". Pues...
+
+De 3232 emisiones de películas de Paramount, las 10 más emitidas son:
+
+```html
+<table border="0" cellspacing="0"><colgroup width="356"></colgroup><colgroup width="73"></colgroup><tbody><tr><td align="LEFT" height="18">Película</td><td align="LEFT">Emisiones</td></tr><tr><td align="LEFT" height="16">1. Shiner</td><td align="RIGHT">22</td></tr><tr><td align="LEFT" height="16">El cuarto ángel</td><td align="RIGHT">22</td></tr><tr><td align="LEFT" height="16">El gran azul</td><td align="RIGHT">22</td></tr><tr><td align="LEFT" height="16">4. Funeral en Berlín</td><td align="RIGHT">19</td></tr><tr><td align="LEFT" height="16">Desmembrados</td><td align="RIGHT">19</td></tr><tr><td align="LEFT" height="16">El principito</td><td align="RIGHT">19</td></tr><tr><td align="LEFT" height="16">7. Alfie</td><td align="RIGHT">18</td></tr><tr><td align="LEFT" height="16">Hasta que llegó su hora</td><td align="RIGHT">18</td></tr><tr><td align="LEFT" height="16">La versión Browning</td><td align="RIGHT">18</td></tr><tr><td align="LEFT" height="16">10. Contacto sangriento</td><td align="RIGHT">16</td></tr></tbody></table>
+```
+
+En total se han emitido 699 películas diferentes. El 10% de las emisiones son de sólo 20 películas diferentes, y sólo hay 128 películas que no hayan repetido.
+
+En cambio en laSexta3 se han hecho 3989 emisiones, el top 10 es:
+
+```html
+<table border="0" cellspacing="0"><colgroup width="481"></colgroup><colgroup width="82"></colgroup><tbody><tr><td align="LEFT" height="18">Película</td><td align="LEFT">Emisiones</td></tr><tr><td align="LEFT" height="18">1. Ace Ventura: Operación África</td><td align="RIGHT">24</td></tr><tr><td align="LEFT" height="18">Ace Ventura, un detective diferente</td><td align="RIGHT">24</td></tr><tr><td align="LEFT" height="16">3. Ring Ring</td><td align="RIGHT">15</td></tr><tr><td align="LEFT" height="18">Atrapada en el hielo</td><td align="RIGHT">15</td></tr><tr><td align="LEFT" height="18">5. Nacida para triunfar</td><td align="RIGHT">14</td></tr><tr><td align="LEFT" height="16">6. Big box</td><td align="RIGHT">13</td></tr><tr><td align="LEFT" height="18">Famoso y seductor</td><td align="RIGHT">13</td></tr><tr><td align="LEFT" height="18">8. Corazones robados</td><td align="RIGHT">12</td></tr><tr><td align="LEFT" height="18">9. Una mujer en la liga</td><td align="RIGHT">11</td></tr><tr><td align="LEFT" height="18">El último golpe</td><td align="RIGHT">11</td></tr></tbody></table>
+```
+
+, con 1458 películas diferentes; el 10% de emisiones lo copan 46 películas y hay 461 pelis no repetidas.
+
+Excel completo, aquí[1].
+
+
+=> https://docs.google.com/spreadsheet/ccc?key=0Atd_0Z9UHnqJdGh6WXBXbnVNTVJnTm9OTVBzRjVfaWc&usp=sharing 1: https://docs.google.com/spreadsheet/ccc?key=0Atd_0Z9UHnqJdGh6WXBXbnVNTVJnTm9OTVBzRjVfaWc&usp=sharing
\ No newline at end of file
--- /dev/null
+# Robohostias como panes
+2013-08-15
+
+=> images/BRtBugTCYAAO2la.jpg entradas para Pacific Rim en IMAX 3D [IMG]
+
+Tras seguir alguna discusión en Twitter sobre el decepcionante status del IMAX en Barcelona (mientras que en otros países se usan sus mayores pantallas para proyectar estrenos, aquí sólo vemos insípidos documentales), me enteré que en una de las salas IMAX de Madrid (el Parquesur[1]) echaba Pacific Rim.
+
+Aprovechando algunas coyunturas, me hice con las entradas de ahí y me dispuse a disfrutar con esta cerebral cinta de robots repartiendo mamporros.
+
+La primero fue una pequeña decepción- el Parquesur es un IMAX, sí, pero la pantalla es, a mis ojos, como una pantalla de cine normal. La peli era en 3D, sí, y creo que de mejor calidad que la otra peli que he visto en 3D (La invención de Hugo), pero eso podría achacarse a otros factores.
+
+Pero bueno, la peli comenzó y pronto me olvidé de todo. Es lo que dice en general la gente; un poco más de dos horas en las que uno experimenta una regresión y disfruta como un enano viendo como robots de 80 metros de altura sueltan hostias (en ocasiones impulsadas por jets) a monstruos primos de Godzilla.
+
+Hay poco más que decir, realmente. La peli cumple perfectamente con su premisa y es difícil encontrarle fallos o puntos a mejorar. Las luchas son absolutamente memorables y, a diferencia de la moda en escenas de acción actuales, están filmadas de manera que se puede apreciar el más mínimo detalle de cada puñetazo- no hay cortes rápidos ni movimientos borrosos, casi se pueden ver las tuercas saltar por los aires.
+
+Todo lo demás, que es realmente secundario, está más que correcto. Los actores tienen personalidad y le aportan sentimiento a la película. Del Toro le aporta sus toques, y el... ermmm... toque cómico que aportan Ron Perlman (Hellboy), Santiago Segura y los científicos está bien y no rompe mucho el ritmo. También se ahorra bastantes topicazos hollywoodienses molestos que le dan un golpe de aire fresco a la película (aunque al final, los americanos inevitablemente son los primeros delante de ingleses, australianos, japoneses, chinos y rusos).
+
+A destacar la banda sonora, de Ramin Djawadi, más conocido por la cabecera de Juego de Tronos y Tom Morello, guitarrista de Rage Against the Machine. Guitarrera, metalera y apocalíptica, tiene pistas como "2500 Tons of Awesome" y "Canceling the Apocalypse" que son tan metaloépicas como sus títulos apuntan.
+
+En fin, poco más que decir. Si la idea de robots aporreando chulúes os suena bien, id a verla en la pantalla más grande que podáis encontrar. Si no, no.
+
+
+=> http://www.imax.com/theatres/t/cinesa-parquesur-imax/ 1: http://www.imax.com/theatres/t/cinesa-parquesur-imax/
\ No newline at end of file
--- /dev/null
+# Recopilatorios de grandes éxitos
+2013-09-14
+
+Indudablemente, una de las asignaturas coco de cuando yo estudiaba informática era Compiladores- compis, para los amigos. No porque hubiese una tonelada de apuntes que memorizar, ni porque los profesores fuesen particularmente estrictos sino porque, simplemente, era tremendamente complicada.
+
+Implementar un lenguaje de programación es seguramente una de las labores más complicadas que hay en el campo de la programación pura. Tanto intérpretes como compiladores son fieras complejas que necesitan el uso de técnicas bastante sofisticadas para poder ser programadas efectivamente.
+
+Tanto intérpretes como compiladores tienen que leer los programas escritos en su lenguaje- algo no trivial que en general se resuelve usando herramientas descendientes de los venerables lex[1] y yacc[2]; que en conjunto convierten una descripción de un lenguaje (un listado y definición de los átomos del lenguaje; palabras clave, separadores, sintaxis de literales, etc.; y una descripción de cómo se combinan para formar las estructuras del lenguaje) y que típicamente generan código en el que incrustamos nuestro compilador e intérprete.
+
+Estas herramientas, básicas para el desarrollo, no son tampoco precisamente simples. Definir gramáticas de lenguajes es algo que se complica rápidamente- si no estamos hablando de lenguajes simples, no es sencillo encontrar una sintaxis y gramática no ambigua y, curiosamente, que no sea exponencialmente compleja de procesar. Lenguajes como C++ y Perl son notorios por sus particularmente enrevesadas gramáticas- en ambos casos son de tal complejidad que ellas mismas son, en cierta manera, lenguajes de programación.
+
+Una vez podemos tenemos un mecanismo que nos permite pasar del código fuente de nuestro lenguaje a algo tratable por un programa (que es aún más complicado de lo que hemos descrito, ya que las herramientas comentadas, a parte de su complejidad teórica, nos plantean dificultades prácticas porque suelen ser, en general, bastante inaccesibles y poco amistosas), nos queda lo peor.
+
+Los intérpretes deben, como su nombre indica, interpretar el código ya dispuesto en una estructura tratable (aunque probablemente compleja) y ejecutarlo. Para ello, debemos coger la representación del código e ir ejecutándolo paso a paso igual que haríamos si quisiesemos verificar la ejecución del código manualmente. Esto tampoco es sencillo, ya que características del lenguaje tales como los distintos alcances de los identificadores, los sistemas de objetos, la comprobación de tipos, etc. son en general problemas de por sí complejos.
+
+Pero quizás el hueso más duro de roer es la compilación. En un problema algo relacionado con la traducción de lenguaje natural, un compilador debe coger el código una vez procesado y presentado de una manera estructurada y convertirlo en código de otro lenguaje. Esto, tal como es la traducción de lenguaje natural, es harto difícil.
+
+En general, los compiladores suelen ser de lenguajes de mayor nivel a menor nivel; solía ser que los lenguajes se compilaban directamente al lenguaje ensamblador propio de las CPU- lenguaje ensamblador que es mucho más simple, poco expresivo y limitado que la mayoría de lenguajes de alto nivel, y por tanto esta traducción es compleja- en cierta manera debemos coger Dublineses y explicarlo de manera que un niño de cuatro años pueda entenderlo perfectamente.
+
+En estos casos, la cosa se suele complicar mucho más porque una implementación naíf de un compilador a ensamblador suele redundar en programas que al ejecutarse son espectacularmente ineficientes. Conseguir ejecutables eficientes es un problema completo en sí mismo sobre el que se han escrito toneladas de libros.
+
+Sin embargo, recientemente son más habituales los compiladores que compilan lenguajes a cosas que no son ensamblador- por diversos motivos entre los que destaca que un compilador a ensamblador sólo es útil para una familia de CPUs, y pese a que la familia x86 de Intel y los ARM copan la mayor parte del mercado, sigue habiendo muchos otros procesadores en uso hoy en día. Por otra parte, plataformas como la máquina virtual Java, LLVM o incluso Javascript también son populares como destinos de los compiladores- en el caso de Java o LLVM por ser más simples para la generación de código sin sacrificar eficiencia, y en el caso de Javascript, por ser un destino particularmente útil ya que nos permite ejecutar el código compilado en un navegador.
+
+Tanto la JVM como la LLVM han sido diseñadas especialmente para este propósito, con lo que tienden a simplificarnos el proceso de compilación. En el caso de Javascript, pese a estar pensado con otros propósitos, proyectos como GWT o Emscripten han hecho grandes esfuerzos para hacer funcionar compiladores sobre Javascript. Mozilla incluso ha lanzado la iniciativa asm.js para definir un subconjunto de Javascript que sea práctico como plataforma a la que compilar de una manera eficiente.
+
+El proceso no se queda aquí, ya que una vez tenemos un lenguaje funcional con intérprete o compilador, siempre hay un interés en acelerarlo- tanto el proceso de compilación como la ejecución de los programas. Una vez más, se trata de un área complicada y sutilezas- se han llegado a técnicas extremadamente sofisticadas que incluso "aprenden" de la ejecución del programa y modifican su funci0namiento para adaptarse y mejorar "en vivo".
+
+Como decíamos, una de las áreas de la informática pura más complejas y duras. Si bien en inteligencia artificial, bases de datos, proceso de imágen, etc. existen problemas duros, no suelen ser tan duros en cuanto a programación, sino a las matemáticas y otras áreas no estrictamente informáticas que tocan. También en programación empresarial existen sistemas extraordinariamente complejos, pero en este caso suelen serlo por el tamaño y la cantidad de entidades y conceptos interactuando entre sí del negocio. Pero son los compiladores probablemente una de las hazañas de programación más sofisticadas que hay y, así mismo, primordial para la programación en sí.
+
+
+=> http://en.wikipedia.org/wiki/Lex_programming_tool 1: http://en.wikipedia.org/wiki/Lex_programming_tool
+=> http://en.wikipedia.org/wiki/Yacc 2: http://en.wikipedia.org/wiki/Yacc
\ No newline at end of file
--- /dev/null
+# Y por esta vez la gravedad tira hacia arriba
+2013-10-06
+
+Que Alfonso Cuarón, cuya Hijos de los Hombres me parece un nuevo clásico de la ciencia ficción, se lance con una peli de dos astronautas flotando por el espacio me pareció una prometedora idea hasta que el nombre de Sandra Bullock apareció por ahí a la deriva.
+
+A pesar de la adversidad, y tras el aluvión de críticas orgásmicas, uno tenía que valorar de primera mano este tour de force de la conductora de buses más famosa del cine.
+
+Vaya por delante que sí, claustrofóbicos y mentes sensibles mejor abstenerse o ir con las biodraminas en mano. Es hora y media de inmersión espacial, donde no se sabe si son más opresivos los angostos recovecos de las estaciones espaciales o el casi infinito espacio. Los larguísimos planos secuencia de Hijos de los Hombres se multiplican con mil, con giros sin control y angustia máxima que te sumergen completamente en el vacío que hay ahí arriba.
+
+Técnicamente, una vez más, la peli es perfecta de principio a fin. Es probable que más del 90% de los fotogramas sean mentira, pero una mentira imposible de discernir. La edición es absolutamente prodigiosa y la "fotografía" es absolutamente preciosista- a todos nos impactan esas imágenes que publica regularmente la NASA y en esta cinta, se recrean en amaneceres, luces de ciudades durmientes y demás juegos de puntitos luminosos.
+
+A destacar también la música- salvo en el tramo final sutil pero efectiva, y perfectamente mezclada con el sonido que permite el espacio.
+
+Con todo esto, y lo arriesgado de la premisa, sí, Gravity es por motivos propios una película que llega a lugares a los que ninguna otra película ha llegado antes.
+
+¿Es, sin embargo, el no va más?
+
+Creo que no. Prejuicios aparte, la Bullock ha dañado en exceso su credibilidad y aunque su interpretación está prácticamente libre de pecado, no acaba de darle verosimilitud a su personaje- lo que es una lástima porque la doctora Stone, pese a faltarle dos o tres pinceladas más de profundidad, tenía un potencial enorme. Clooney está meramente correcto.
+
+A parte de esto, el guión es excesivamente secundario. El único giro es previsible y simplón, y la peli se queda en mero documental sin articular nada más que obstáculo tras obstáculo. Quizá sea mejor dejarnos llevar y envolvernos en las sensaciones primarias de angustia, desesperación, inmensidad y desolación, pero uno echa de menos alguna otra dimensión a la cinta.
+
+Dicho esto, sí, hay que verla porque estamos ante una apuesta arriesgada que consigue tantos méritos que le podemos perdonar que descuide algún aspecto. Pero vayan preparados como para meterse en la madre de todas las montañas rusas.
\ No newline at end of file
--- /dev/null
+# Dinosaurios niponizados
+2013-11-02
+
+Ver una peli japonesa siempre es algo especial. Principalmente, uno nunca se entera de nada. Esto que puede parecer un grave problema, en general no lo es. Toda película se apoya en una cultura, iconografía y mitología, y los occidentales no entendemos las orientales (sospecho que los orientales entienden algo mejor las nuestras, pero tampoco completamente).
+
+20th Century Boys no es una excepción a esto. Más al tratarse de tres películas que hilvanan un thriller conspiranoico futurista homenaje al rock. La trama creo que es algo así como unos amigos de la infancia descubren que "Amigo", líder de una secta apocalíptica va siguiendo un plan que parece sacado de una historia inventada por uno de ellos. El grupo, por supuesto, tratará de detenerlo y salvar el mundo.
+
+La cinta se basa en un manga serializado de Naoki Urasawa, que a muchos les sonará a chino, pero cuya creación Ginger (o Yawara) la judoka sonará a alguno más. Curiosamente, no es anime sino acción real- curiosa elección dado el nivel de efectos especiales que requiere el argumento (y que creo que se quedan cortos).
+
+Como decíamos, no se entiende una mierda, pero esto tampoco detrae mucho del entretenimiento. Si que sabe algo mal que algún momento dramático nos hace más gracia que otra cosa, y nos queda la curiosidad de saber cómo percibirá la peli alguien que la entienda, pero aún así la peli tiene emoción, intriga y un ritmo bastante bueno. Las referencias al rock son bastante agradecidas; la canción homónima sirve de leit motif y recurso argumental, y el protagonista firma una curiosa tonadilla sobre sus croquetas favoritas también con cierta importancia para la historia (y malévolamente pegadiza).
+
+El resto también es bastante japonés; las interpretaciones, puesta en escena y efectos son teatrales y caricaturescos, pero nada de esto se hace pesado ni doloroso y, francamente la peli entretiene. Así pues, recomendable para los que no tengan prejuicios. Siempre nos quedara, eso sí, la duda de saber cómo se percibe la peli si te enteras de todo.
\ No newline at end of file
--- /dev/null
+# El cinco
+2013-11-11
+
+Rockstar se mantiene fiel a su cita de revitalizar los inacabables debates sobre videojuegos; que si violencia, que si nueva forma de arte, que si el entretenimiento del siglo XXI... con su entrega periódica de la saga Grand Theft Auto. Hace unos días y tras treintaypocas horas de juego me acabé la historia principal del juego, con lo que me veo en el derecho de comentar mis impresiones aquí.
+
+Pocos se preguntarán a estas alturas qué es el GTA. Pero por si acaso, lo repetiré aquí. El GTA es una saga de juegos surgida hace unos no despreciables 16 años en los que encarnamos a un criminal en un mundo abierto, con una historia que consiste en una serie de misiones a completar que nos permite ir avanzando el argumento. Yo me enganché en la primera entrega "3D", el GTA III para PS2; me completé toda esa era, junto al Vice City y el San Andreas, pequeñas evoluciones que destacaron respectivamente por la ambientación y guión del Vice City (Miami, tomando como referencia El Precio del Poder de Brian de Palma) y un mundo gigantesco en el caso del San Andreas (el Liberty City/Nueva York del III y la Vice City/Miami del Vice City son ridículas comparadas con el condado de San Andreas/California del San Andreas, con su Los Santos/Los Ángeles, San Fiero/San Francisco y Las Venturas/Las Vegas, más una extensa campiña). Los 3D siguen al personaje principal en vista de tercera persona, mientras se mueve a pie o en diversos vehículos, peleando, disparando y saltando por, mayormente, las calles de una ciudad (algunos interiores hay, pero relativamente pocos).
+
+El IV en PS3 volvería a Liberty City, pero por algún motivo, no me enganchó y casi no lo jugué. Pese al salto a la nueva generación de consolas, los gráficos me parecieron... grises y entre eso y un par de mecánicas de amigotes traídas del San Andreas, quizá un nivel de dificultad más alto y alguna cosa más, olvidé el bluray en un cajón.
+
+Todo esto daría un vuelco con el V. Unos tráilers conseguidísimos, una historia que bebe de Heat sin vergüenza y la promesa de mejores controles me puso a tono para comprármelo el día del lanzamiento.
+
+Y no me decepcionó. Quizá con un poco de trampa, rebajando el nivel de dificultad, el GTA V destaca por lo satisfactorias que son las escenas de acción. La conducción de vehículos, siempre un poco deficiente en anteriores entregas es mucho más... arcade y divertida. Y los tiroteos, oh los tiroteos. Los mecanismos de ponerse a cobertura, disparar, apuntar, cambiar de arma... son mucho más fluidos y sencillos de llevar a cabo. Apuntar con los controladores de consola es bastante frustrante respecto al uso de teclado y ratón de los shooters de PC, pero gracias a la acertada dificultad, participaremos en tiroteos grandiosos.
+
+El juego asímismo introduce una novedad respecto a entregar anteriores. Los protagonistas anteriores (el silencioso del III, Tommy Vercetti del Vice City, CJ del San Andreas y Niko del IV) se ven reemplazados por el imaginativo trío protagonista. Comenzamos con Franklin, un pandillero muy similar a CJ que también se da cuenta que la ambientación de pandilleros es de lo más sosa, lo que nos lleva a Michael. Michael es un ex-atracador de bancos retirado que se verá arrastrado una vez más a una vida criminal, mayormente por eventos relacionados con Trevor, el último personaje en entrar, un demente que hacía equipo con Michael.
+
+Trevor es el que más se ha enfatizado de todos- su locura, psicopatía y demás excentricidades dan mucho juego, hacen gracia y sirven de excusa (innecesaria) para la ultraviolencia propia de la serie. Pero mi favorito es sin duda, Michael- sin duda el personaje más multidimensional de la saga. Tras una exitosa carrera criminal, al lado de Trevor y otros variopintos personajes, se retira en sospechosas circunstancias con su mujer e hijos a una pequeña mansión en Beverly Hills. La dinámica de la riqueza le conduce a una familia inaguantable y a un vacío existencial que le lleva al psicólogo. Michael recorre los puntos entre el sarcasmo, la compasión, el instinto maternal y el crimen con elegancia y gracia, y sin duda alguna es el mejor interpretado del juego.
+
+Pero es precisamente con Michael donde se exacerba el desequilibrio propio de la saga- Grand Theft Auto a veces es una peli muy seria de gángsters, a veces hace crítica social... y a veces se dedica a hacer chistes de caca-culo-pedo-pis. De hecho cuando los GTAs van en serio, lo hacen muy bien- las versiones GTA de Blackwater, el FBI... el comentario social, etc. pueden estar muy bien encontrados a veces, pero de repente da un volantazo hacia la caricatura y aunque a veces acierta, muchas veces descarrila completamente. El humor es además muy endógeno y poco accesible- chistes recurrentes que se remontan a las 14 entregas anteriores de la saga entre todas las diferentes versiones y un punto de vista bastante constante entre ellas, que puede gustar pero también aburrir.
+
+El otro punto característico de los GTA es el famoso mundo abierto que popularizaron. En esta entrega se vuelven a superar una vez más- quizás el entorno sea menor en metros cuadrados que en el San Andreas, pero es desde luego más detallado y grandioso. Los gráficos son sencillamente espectaculares y es sorprendente comprobar hasta qué nivel se ha cuidado hasta el menor detalle. En esta ocasión hasta el entorno submarino está mapeado con horas y horas de trabajo añadiendo elementos que uno no podrá apreciar completamente aunque se dedicase siglos a ello. El monte Chiliad tiene teleféricos. Hay un campamento hippie. Una secta en las montañas. Infinidad de pueblecitos. Un sistema de autopistas en el que es fácil perderse.
+
+Es, sencillamente inacabable y, como en entregas anteriores, la tentación de explorar se sobrepone muchas veces a que avancemos la historia.
+
+Historia por otra parte que resulta interesante y que, aunque un poco predecible en ocasiones, hará que queramos llegar al final para ver cómo acaban.
+
+Las misiones en sí acaban sufriendo de un poco de falta de variedad como en los anteriores, aunque se han esforzado más en dos aspectos en particular. Uno, los tiroteos, que son más complicados y elaborados que antes. Dos, los "heists"/golpes, misiones donde tenemos que planear asaltos, equiparnos, escoger entre dos alternativas, etc. que le aportan bastante novedad al limitado número de estereotipos de misión anteriores.
+
+En fin, un juego imprescindible en todos los aspectos. La reducida dificultad lo hará accesible a todos- lo único que nos puede echar para atrás son las idiosincrasias de la serie, su humor infantil y otros puntos pueriles en lo que, por lo demás, es una obra de entretenimiento de primer orden.
\ No newline at end of file
--- /dev/null
+# Entre ronquido y ronquido
+2013-11-02
+
+Siguiendo la racha nipona, confiamos en los valores de Studio Ghibli y nos pusimos a ver Cuentos de Terramar.
+
+Craso error.
+
+La peli es una adaptación de una parte del ciclo de Terramar de la aclamada Ursula K. Le Guin (una de esas personas que collecionan Hugos y Nébulas), una serie de novelas y cuentos fantásticos, que según la Wikipedia va de cosas tipo Freud y Jung. Comentan que la sra. Úrsula había rechazado varias propuestas de adaptar Terramar, pero tras ver Mi Vecino Totoro de Miyazaki, aceptó. El problema es que el encargado fue el Miyazaki equivocado, su hijo Goro. A Hayao no le hizo mucha gracia que se encargase Goro y Úrsula... se desentendió del resultado, comentando que la película sólo coincidía con sus libros en el nombre de los personajes y poco más.
+
+Malos presagios para la película que en efecto se cumplen. La cinta narra una historia muy plana en una ambientación aparentemente muy rica, pero de la que sólo recibimos pinceladas aquí y allá. El príncipe mata al rey en medio de una crisis que ríase usted de la económica, con plagas y decadencia mágica, y huye junto con el archimago Gavilán (sí, sí, el tío se hace llamar Gavilán). Luego pasan cosas malas, nos encontramos con personajes aparentemente muy importantes y entre ronquido y ronquido (el que escribe tuvo que luchar por mantener la consciencia), todo acaba al parecer bien.
+
+Yo diría que esto es como todo lo malo de La Princesa Mononoke, quitándole las pocas cosas que la salvaban y alargándose hasta el infinito. La animación lleva el sello Ghibli, pero tampoco es que emocione como otras. Realmente hay pocos sitios por donde recomendar la peli... quizá si quiere uno ver todos los títulos de Studio Ghibli, pero poco más.
\ No newline at end of file
--- /dev/null
+# Entretenimientos finales
+2013-11-11
+
+Con cierta controversia por las posturas del autor del libro, llega a las pantallas la adaptación de El Juego de Ender- doble ganadora del Hugo y del Nébula, así que ciencia ficción de peso.
+
+La cinta trata sobre la guerra con los insectores, unos alienígenas que estuvieron a punto de exterminar a la humanidad, para la cual el ejército terrestre se prepara adiestrando niños para la batalla, supuestamente por sus superiores capacidades cognitivas. El Ender del título es el superdotado de los superdotados y será seleccionado para encabezar la ofensiva.
+
+Me leí el libro hace un cierto tiempo y tenía bastante curiosidad por ver qué tal la adaptación. El libro se balancea hábilmente entre trozos de acción y trozos de pensar, y ofrece al lector adecuados momentos de reflexión, pero personalmente a trozos me pareció algo inverosímil y complicado de adaptar.
+
+La película supera estos miedos sin demasiados problemas- e incluso diría que es más creíble que el libro. Recorta correctamente para quedarse un pelo por debajo de las dos horas y no me parece que se tome unas libertades excesivas (el autor como siempre, no se queja pero presume de inadaptable) y supera la atípica estructura narrativa manteniendo un ritmo más que loable (el argumento tiene una distribución bastante peculiar).
+
+En los terrenos típicos, los actores están bastante bien. Ninguno de los jóvenes actores chirría en ningún momento, lo cual es un gran logro en sí mismo. Asa Buttercup sorprende en el papel de Ender, mucho más difícil que su papel en Hugo en el que estaba meramente correcto. Harrison Ford y Ben Kingsley están bien en sus papeles, aunque se lamenta que el papel de Kingsley no aproveche su potencial (el libro sufre de lo mismo- podría ser un personaje excelente pero se queda en normalito).
+
+Los efectos, música y otras categorías técnicas son intachables. Las escenas de acción son claras y épicas- es refrescante ver como últimamente se abandonan las escenas de acción que no dejan ver nada para que podamos disfrutarlas a tope, como en Pacific Rim.
+
+Quizá lo único que queda a debate es la interpretación de la película, en la que hay lugar para el disenso. A primera vista parece que esta podría condenar los horrores de la guerra y la xenofobia, pero como toda buena historia de ciencia ficción que se precie, hay matices. No sin motivos, es una lectura recomendada de los marines norteamericanos, por ejemplo. Puede que algunos no transijan con la postura que interpreten adopta la película, pero para los demás, será fuente de interesante debate.
\ No newline at end of file
--- /dev/null
+# Jugando en 2013
+2013-12-28
+
+Mis hábitos videojueguiles se han incrementado sustancialmente recientemente. Sin más, a qué he estado jugando últimamente:
+
+## Humble Bundles
+
+Me enganché ahí por septiembre de 2012 con el Humble Indie Bundle 6 por Bit.Trip Runner[1], el Gratituous Space Battles[2], Shatter[3] y SPAZ[4] (aunque este último no me tiraba inicialmente en Linux). Sobre todo al que más le di fue al Bit.Trip, hasta que llegué al límite de mis reflejos.
+
+En junio de 2013 le di al Humble Bundle with Android 6, atraído por el prometedor Frozen Synapse, que cumplió sus promesas como ya explique en una entrada anterior[5]. Luego estas navidades han caído casi consecutivamente:
+
+* Humble Bundle: PC and Android 8, por el genial AaaaaAAaaaAAAaaAAAAaAAAAA!!! for the Awesome[6]
+* Humble Jumbo Bundle, por el Serious Sam 3: BFE, al que aún no he jugado mucho
+* y la Humble Weekly Sale: Puppy Games, un pack de jueguecillos retro de Puppy Games[7] la mar de gracioso, que incluye un Galaga, un Robotron y algo parecido al Paradroid, entre otros
+
+## Steam
+
+En un arranque de nostalgia, y en parte por premiar el compromiso de Valve con Linux, me he pillado dos FPS clásicos.
+
+El primero, por supuesto, mi querido Quake II, al que le dediqué muchas horas gloriosas en su momento y del que quiero recuperar el disfrute descerebrado de batallas al límite con legiones de bots. La verdad está siendo una odisea por ahora inacabada, ya que primero sólo está disponible en Windows, con lo que hay que instalarlo en Steam para Windows (en máquina virtual en mi caso) y traspasar los archivos de juego para usarlo con un cliente Linux (Yamagi[8], en mi caso). Con esto ya he podido jugar (por enésima vez) a los primeros niveles del modo de un solo jugador (aunque a 1920x1080 y unos gráficos que no disfruté en su época). Pero la clave está en hacer funcionar LMCTF[9], el mítico capturar la bandera con el "off-hand hook", un gancho que puedes disparar al más puro estilo Spider-Man para columpiarte por el mapa mientras disparas, una mecánica de juego absolutamente gloriosa... y luego sumarle un bot (el Ultra, creo).
+
+El otro es el Counter-Strike clásico. Ha sido genial comprobar como los servidores de un juego que salió en el 99 (¡el 99! ¡hace 14 años!) siguen llenos de jugadores matándose en el Dust. Yo no era muy de Counter en aquella época, pero estaba de oferta y es disfrutar de una pieza de museo.
+
+## PS3
+
+Tenía la Playstation un poco olvidada- el GTA4 no era muy de mi agrado, el GT5 lo tenía ya muy visto y sólo le daba con cierta frecuencia al último Pro. Pero en esta última parte del año salió el GTA5, que me acabé y describí por aquí[10], y hace unos días le he echado mano al GT6. Cuando tenga un poco más de rodaje ya escribiré unas líneas, pero de momento sí, decir que es el 5 con sus mayores defectos corregidos- es decir, excelencia sobre ruedas.
+
+## En definitiva...
+
+Sí, le doy más a los videojuegos que antes. Con los Humble Bundles y Steam, la barrera de preferir Linux se reduce bastante y puedo jugar cómodamente en el PC, con el complemento de la PS3. Vienen otras sorpresas, claro... y quizá tendría que hacer otras intentonas de MESS, UAE, Frodo y demás, pero el tiempo es limitado y uno no puede dedicar tanto tiempo como quisiera a los aspectos lúdicos. Pero da gusto gozar de las maravillas modernas y recuperar los clásicos que se demuestran imperecederos.
+
+
+=> http://www.bittripgame.com/ 1: http://www.bittripgame.com/
+=> http://positech.co.uk/gratuitousspacebattles/ 2: http://positech.co.uk/gratuitousspacebattles/
+=> http://www.shattergame.com/ 3: http://www.shattergame.com/
+=> http://spacepiratesandzombies.com/ 4: http://spacepiratesandzombies.com/
+=> http://alex.corcoles.net/2013/06/ensaladilla-de-tiros-frozen-synapse/ 5: http://alex.corcoles.net/2013/06/ensaladilla-de-tiros-frozen-synapse/
+=> http://www.dejobaan.com/awesome/ 6: http://www.dejobaan.com/awesome/
+=> http://www.puppygames.net/ 7: http://www.puppygames.net/
+=> http://www.yamagi.org/quake2/ 8: http://www.yamagi.org/quake2/
+=> http://www.lmctf.com/ 9: http://www.lmctf.com/
+=> http://alex.corcoles.net/2013/11/el-cinco/ 10: http://alex.corcoles.net/2013/11/el-cinco/
\ No newline at end of file
--- /dev/null
+# Mi carta de navidad a los reyes
+2013-12-28
+
+Mi querida Blackberry 9780 cada día está un paso más cerca de la muerte, y con ello se repite insistentemente la pregunta... ¿y cuando muera, qué?
+
+Pues lo que quiero es:
+
+1. El formato Blackberry Bold. Quiero un teclado físico. He tecleado y tecleado en pantallas táctiles y sigue siendo un agobio. No sólo porque soy perceptiblemente más lento, sino porque es frustrante. Tampoco quiero un móvil enorme. Suelo llevar el teléfono en el bolsillo de los pantalones y no quiero chistes sobre estar contento de ver a nadie. La pequeña pantalla de mi Bold (2,44") nunca me ha supuesto un impedimento para nada.
+
+Un slider QWERTY sería aceptable, pero es mucho, mucho más preferible "candybar"
+
+
+2. También quiero un touchpad táctil. Insisto, no me gustan las pantallas táctiles. El touchpad de la Bold es fantástico para seleccionar texto y mover cursor- cortar y pegar es un sufrimiento en una pantalla táctil, pero ágil y rápido con el touchpad.
+
+
+3. Android. Los sistemas operativos de Blackberry están muertos. Soy bastante de ecosistema Google (GMail, Google Calendar, etc. sobre Google Apps) y sus servicios cada vez van peor sobre Blackberry. No soy muy de apps, pero necesito el mínimo imprescindible
+
+
+4. Pero con atajos de teclado. Dada la falta de Androids QWERTY, no estoy seguro que estén muy soportados. Comenzar a teclear algo para buscar contactos desde la home, teclitas para responder y borrar rápido mails, espacio y shift-espacio para paginar en el navegador, t y b para saltar al principio y final de algo (¡imprescindible para páginas web!)... son cosas que te hacen mucho más ágil.
+
+
+5. Batería, batería, batería. Quiero un móvil que sólo necesite cargarse durante la noche. Dado que he pedido una pantalla pequeña (y un móvil comparativamente grande), no debería ser complicado. Soy fan de las baterías intercambiables, pero si el móvil puede vivir años y conservar la batería para aguantar un día de uso intenso, puedo renunciar a ello.
+
+Mi Blackberry inicialmente lo soportaba todo muy bien, pero mis patrones de uso (hasta 2h de uso intenso diario en el metro con mala cobertura, casa y trabajo con zonas de baja cobertura, etc.) pueden con todo
+
+
+6. RAM. Creo que cuando los móviles lleven 4Gb de RAM el mundo será un lugar mejor. Mi Netbook con 1Gb de RAM aguanta todo lo que le echen, lo cual me lleva a pensar que aún queda optimización de memoria en los sistemas operativos móviles (pendientes siempre de ver cómo tira Kit Kat en dispositivos de poca memoria). Quiero tener varias aplicaciones abiertas y muchas pestañas de navegador sin que se cierren por falta de memoria
+
+
+7. CPU/optimización. Como todo el mundo, quiero una experiencia de usuario suave. Sobre todo, cambio de aplicación rápido, navegador rápido y pocas pausas.
+
+
+8. Cámara. Con 5mpx, autofocus y flash me conformo. Pero que sea rápida. Quiero meter la mano en el bolsillo, sacar el móvil y sacar una foto ágilmente. Quiero un enfoque rápido. Mi gata no se está quieta.
+
+
+9. Conectividad. Pues yo con 3G y wifi mínimo ya hago
+
+
+10. Control remoto. El día que pueda instalar un software en los ordenadores que uso (Linux, básicamente) y cuando el móvil esté en la misma wifi (por 3G/bluetooth también molaría), me aparezcan las notificaciones del móvil en el ordenador, pueda hacer clic y tener control remoto del móvil, seré feliz (y compensará un poco deficiencias en el siguiente punto). Si el móvil comparte su sistema de archivos por SMB, de manera que puedo entrar en él desde el PC y gestionar archivos, ya será la leche.
+
+
+11. Mensajería instantánea. Quiero un sistema de mensajería eficaz. Pensado para móvil (notificaciones de entrega, robustez, estilo Whatsapp/BBM), pero multidispositivo (e.g. si atiendes una notificación en el escritorio, desaparece del móvil; paso fluido de conversación de dispositivo a dispositivo, etc.). Si es abierto y puedo tenerlo como plugin de Pidgin y en versión web, ya sería la releche. Por supuesto, un punto clave es que sea popular.
+
+
+
+¿Tanto pido? ¿Nadie se animará a hacer un kickstarter para fabricármelo?
\ No newline at end of file
--- /dev/null
+# Código y sensibilidad
+2014-01-10
+
+Cada persona, y los programadores no dejan de ser personas, desarrolla a lo largo del tiempo diferentes sensibilidades. A base de cometer errores y sufrir por ellos, nos hacemos especialmente perceptivos a los síntomas que nos causan dolor. Un programador de lenguajes de la familia de C es capaz de notar la ausencia de un ; para terminar una sentencia en una pantalla plagada de símbolos. Alguien que trabaje con SQL habitualmente desarrolla un sexto sentido para no lanzar un DELETE que no lleve WHERE (normalmente tras el tercer incidente grave). Y así, cada uno enumerará sus ejemplos favoritos en los que ha desarrollado una aptitud sobrehumana para evitar inacabables pérdidas de tiempo.
+
+Es esto, por encima de otros factores, lo que nos hace expertos en algo. Saberse de pe a pa todos los comandos UNIX habituales no te convierte en experto- es saber que nunca debes ejecutar killall en Solaris, pese a lo útil que resulta este comando en Linux lo que demuestra que has vivido tus propios vietnames- y has aprendido de ellos.
+
+Una observación curiosa sobre las sensibilidades es que estas no se adquieren así como así. Uno de los motivos por los que creo que las enseñanzas en materias de programación deben ser eminentemente prácticas y rehuyo la formación por exposición- sean cursos, sea un compañero que escriba un documento descriptivo sobre un área funcional/librería/arquitectura, ya que en general son una pérdida de tiempo. Saber cómo funciona algo es relativamente fácil- se puede acelerar pero raramente es el problema. El problema es que cuando no tenemos sensibilidad en lo que hacemos, todo nos cuesta un orden de magnitud más. Lo que necesitamos es ponernos manos a la obra y tener alguien con la sensibilidad que nos hace falta mirándonos por encima del hombro y arreándonos un sopapo cuando vayamos a hacer algo estúpido, o que nos desatasque cuando seamos incapaces de ver el bosque.
+
+La sensibilidad no es más que un atajo heurístico que nos permite ser eficaces antes de haberlo aprendido y comprendido todo en el más absoluto detalle (algo frecuentemente necesario, pero no siempre), y que aún cuando somos expertos en algo, seguimos aplicando por su efectividad.
+
+Seamos sensibles. Transmitamos nuestras sensibilidades. No perdamos el tiempo de entrada, lancémonos de cabeza- démonos golpes que desarrollen nuestra sensibilidad o aprovechemos los golpes que se han dado otros antes.
\ No newline at end of file
--- /dev/null
+# Integración, APIs y no me toques los bezos
+2014-01-10
+
+Según Steve Yegge, un día Jeff Bezos, el capo de Amazon, envió un memorándum interno que venía a decir:
+
+> 1.
+> All teams will henceforth expose their data and functionality through service interfaces.
+>
+> 2.
+> Teams must communicate with each other through these interfaces.
+>
+> 3.
+> There will be no other form of interprocess communication allowed: no direct linking, no direct reads of another team's data store, no shared-memory model, no back-doors whatsoever. The only communication allowed is via service interface calls over the network.
+>
+> 4.
+> It doesn't matter what technology they use. HTTP, Corba, Pubsub, custom protocols -- doesn't matter. Bezos doesn't care.
+>
+> 5.
+> All service interfaces, without exception, must be designed from the ground up to be externalizable. That is to say, the team must plan and design to be able to expose the interface to developers in the outside world. No exceptions.
+>
+> 6.
+> Anyone who doesn't do this will be fired.
+Este puñetero memo, y toda la gente que lo ha leído y ha aplicado el silogismo falaz de "En Amazon son unos cracks, en Amazon siguen este credo ergo si yo sigo este credo seré un crack" son un maldito dolor de cabeza.
+
+Conste que no es que considere que las APIs sean una plaga a exterminar, ni mucho menos, pero debería olernos mal las sentencias absolutistas y los razonamientos de talla única. No todos los entornos son iguales, ni se enfrentan a los mismos problemas- y por tanto lo que funciona para unos, no funciona para otros. Adicionalmente, es difícil razonar que la aplicación ciega de esta doctrina es lo que ha llevado a Amazon al éxito y estoy seguro que no en pocas ocasiones mejor les hubiera ido siendo un poco más críticos.
+
+La realidad, maldita ella, siempre se interpone a los ideales. Implementar una API tiene un coste en tiempo que no siempre es amortizable por sus beneficios. Conste que el hecho que no se vaya a usar la citada API tampoco es un argumento tan fuerte en contra de estas- el hecho de añadir una API usable nos fuerza a hacer el código modular lo cual es un valioso beneficio en sí mismo que si puede valer la pena- aunque es perverso el argumento de ser modulares porque tenemos que implementar una API: seamos modulares porque está bien ser modular sin necesidad de dichosas APIs.
+
+Pero más allá del coste de implementar la API, la imbezosidad esta muchas veces lleva a auténticos pantanazos donde dos departamentos de la misma empresa fuerzan que dos sistemas se comuniquen a través de una API. API a la que muchas veces no se le dedica el tiempo necesario y que no permite alcanzar todo lo que se necesita de una forma eficiente y efectiva, que fuerzan a implementar soluciones chapuceras que no benefician a nadie, cuando habría alternativas perfectamente efectivas.
+
+Bezos prohibe explícitamente, por ejemplo, el acceso a base de datos entre aplicaciones- quizá la situación más común en el que la gente se arma del memorándum para tomar decisiones insensatas. "¡Os daremos una API maravillosa!", "¡Permitirá que saquéis toda la información que necesitéis!", "¡La extenderemos rápidamente con vuestras nuevas necesidades!". Mentiras y más mentiras. Cuando yo te podría escribir un par de selects que me sacan todos los datos que necesito fácil y eficientemente, tú me darás una API castrada en la que tendré que hacer numerosas llamadas de API para obtener los mismos resultados y que se tendrá que extender cada vez que surja un nuevo requerimiento. Eso si lo extiendes, porque "oh, lo siento, ahora estamos liados con otra cosa" hará que no se pueda implementar tal requerimiento en no pocas ocasiones.
+
+Sí, desde luego, esto no es algo universal tampoco- como tampoco lo es la doctrina de las API. Si son los mismas personas las que implementan la API y la consumen, o hay una suficiente coordinación de objetivos, esto no tiene por qué ser un problema. Sin embargo, muchas veces lo es. Y es precisamente para levantar vallas entre vecinos uno de los motivos con los que se esgrime el credo- consciente o inconscientemente.
+
+¿La solución? No sigas ninguna regla ciegamente. Como siempre.
\ No newline at end of file
--- /dev/null
+# La absoluta grandiosidad de Rompe Ralph
+2014-01-10
+
+Es indiscutible que el cine de animación ha observado un gran resurgimiento en los últimos tiempos y muchos de sus pelotazos han sido universalmente aclamados como grandísimas películas para niños y adultos. Un servidor debe admitir que siempre se ha sentido un poco al margen de esto y que salvo honrosas excepciones (casi que me limitaría a WALL-E, el primer acto de Up y si me he de estirar cual Elasti-girl, los Increíbles) me deja en general bastante frío.
+
+Obviamente en su momento vi los trailers y promociones de ¡Rompe Ralph! en su momento, y por supuesto secuencias como la reunión de villanos anónimos con un fantasma de Pacman, Zangief, Bowser y otros me atrajeron como un bicho a la luz, pero por un motivo u otro acabé no viéndola en el cine. Posteriormente, por casualidades del destino, Renfe se dignó a ofrecerme a Ralph en vez de una tercera proyección en dos semanas de Star Trek: en la oscuridad.
+
+¡Y qué feliz coincidencia!
+
+Pocas veces me he quedado tan enganchado a una butaca mirando una pantalla minúscula forzando el cuello. ¡Rompe Ralph! es una maravilla de principio a fin. Parte de la más que jugosa premisa de que los personajes de los juegos de un salón recreativo tienen vida propia y se ocupan de sus asuntos fuera de sus "horas de oficina"- en este caso el Ralph del título es el malo de "Repara Félix Junior", cansado de su rol como villano que decide ser el bueno por una vez. Este argumento, que podría haber resultado plano y simplón se transforma en toda una epopeya gracias a un trabajadísimo guión que si bien tampoco es que sea un laberinto inacabable de giros y sorpresas, es más elaborado de lo que uno pensaría y consigue aprovechar todo el potencial del planteamiento y de las generosas licencias que permiten que aparezcan multitud de personajes de videojuegos reales.
+
+La historia combina los personajes de tres juegos inventados- el "Repara Félix Junior" de Ralph, "Hero's Duty", un shooter de marcianitos y "Sugar Rush" un Mario Kart aún más almíbarado si cabe- hilvanandos las historias de sus personajes con habilidad, tirando de clichés y dejes videojueguiles y con alguna que otra hábil subversión. Además los personajes tienen unas personalidades más que tridimensionales que ayuda a darle una tremenda dimensión humana a la película- Ralph en toda su apariencia caricaturesca tiene toda una dimensión trágica y una humanidad que ya quisieran para sí muchos personajes de sesudos dramas- él y los demás dotan a la película de una emotividad sorprendente y poderosa.
+
+En el aspecto técnico, la animación es absolutamente sobresaliente y destaca en su completa virtuosidad en el paso a las tres dimensiones de los juegos bidimensionales. Cada videojuego tiene una estética trabajadísima que se combinan con fluidez con el estilo visual de otros tantos videojuegos reales; los personajes de juegos más retro se maravillan de los gráficos de los juegos de última generación, pero encajan perfectamente conservando cada uno su propia personalidad sin mayor problema.
+
+La banda sonora así mismo recorre con gracia todos los lugares habituales videojueguiles, e incluso las dos canciones-estrella-invitada, una de Rihanna y la de los créditos de Owl City en VO y Auryn en España no desentonan.
+
+En definitiva, una película sobresaliente a la que es muy difícil no querer colocar en los olimpos cinematográficos. Hasta los no videojueguistas disfrutarán de lo lindo y los rompe-joysticks sobra decir que alcanzarán en el extásis (y hay un par de guiños ahí que sacarán ovaciones cerradas). Peliculón.
\ No newline at end of file
--- /dev/null
+# ¿Por qué el CRUD es importante?
+2014-01-10
+
+No sé si se vislumbra completamente por aquí, pero llevo mucho, mucho tiempo prácticamente obsesionado con encontrar **la** solución para el CRUD. Ya desde mi primer curro, allá por el 2001-2002, donde usaba el jurásico ATG Dynamo- que pese a primitivo ya se enfrentaba al CRUD bastante frontalmente pude apreciar que en un significativo número de trabajos por los que te pueden pagar, el CRUD es vital.
+
+No sólo porque sí, los programas informáticos suelen servir para eso, para manejar información. **C**reate, **R**ead, **U**pdate, **D**elete es lo que uno puede hacer con los datos, y lo hace muy a menudo, y si lo implementas rápido, ahorras dinero.
+
+La verdadera importancia de esto reside en que si implementarlo es farragoso, eso te lleva por mal camino. Si **necesitas** un esquema de datos complicado e implementar el CRUD necesario para mantenerlo es costoso y tedioso, existe la poderosa tentación de simplificar el esquema. Denormalizamos, quitamos funcionalidad y en definitiva, guarreamos, porque hacerlo bien nos cuesta. Si hacer CRUD es costoso, tendemos a evitar la base de datos para guardar cosas y las metemos en el código- lo que podrían ser tablas de soporte editables por el usuario se convierten en configuración incrustada en el código que sólo puede cambiar el programador.
+
+Por último, pero no menos importante, cuanto más cuesta implementar el CRUD, peor lo implementamos. Interfaces inflexibles, que no permiten ordenación y paginación, que distribuyen la información que nos interesa entre varias páginas que hacen que editarlo sea un suplicio, con desplegables inacabables y sin función de búsqueda... son males que se pueden evitar si nos vienen gratis.
+
+Es por eso que es importante disponer de frameworks que simplifiquen el CRUD. Es frustrante que sólo Django tenga un CRUD potente y bien implementado, y que todos los demás estén uno o varios pasos por detrás. Es por este motivo que detrás de muchas aplicaciones de negocio lo que hay detrás en realidad es un framework CRUD, y que la calidad de éste es uno de los mayores factores que determinan la calidad del producto.
+
+¿Qué necesita un buen CRUD? En mi opinión:
+
+* Poder crear fácilmente pantallas de listado de entidades, con filtrado, ordenación, paginado y búsqueda; que dé la opción de edición directa sobre el listado y que permita mostrar/editar información de entidades relacionadas
+* Poder crear fácilmente pantallas de edición de entidades, que tengan widgets adecuados para los tipos de datos que necesitamos, y que permita editar directamente entidades relacionadas, dando un interfaz adecuado a las claves foráneas y relaciones de todo tipo de cardinalidad y complejidad
+* Poder navegar ágilmente entre entidades relacionadas
+* Un sistema de permisos completo que permita restringir con granularidad por grupos de usuario hasta los niveles de columna y fila (i.e. qué registros puede editar cada usuario, y de cada uno, qué atributos)
+* Un sistema de workflows que permita manejar diversos estados para cada entidad, aplicar permisos sobre las transiciones y disparar eventos sobre los cambios de estado
+* Un sistema de auditoría de cambios que permita ver los históricos de modificaciones y si es factible, restaurar versiones anteriores
+* ... y sobre todo, que todo lo anterior sea extensible, ya que siempre, siempre, necesitaremos más de lo que está previsto
+
+Con esto, tenemos gran parte del camino recorrido en muchos proyectos. Sin embargo, el hecho de que aún Django, el primero de la clase, esté bastante cojo en algunos aspectos, me hace pensar que o bien esto no puede existir, o que los que lo han implementado no lo van a publicar o que me pierdo algo...
\ No newline at end of file
--- /dev/null
+# Ad nauseam, que en latín quiere decir ad infinitum
+2014-02-23
+
+Anteriormente nos preguntábamos sobre las repeticiones de los episodios de Los Simpson[1]. Hoy, presa del aburrimiento, me preguntaba en general qué serie se repetía más veces.
+
+Los canales infantiles son los reyes del mambo, con Hora de Aventuras al frente y sus 87 emisiones del episodio "Pánico en la fiesta de pijamas"- entre diciembre de 2011 y junio de 2013 fue emitido más de una vez por semana. De los 113 episodios que se han visto por aquí, 24 han sido emitidos más de 50 veces y sólo 15 no han sido repetidos.
+
+Fuera de los infantiles, Castle (emitido por FDF, Cuatro y Divinity) se lleva la palma. "Derribo", "Nikki Heat" y "Última Ronda" han sido emitidos 27 veces cada uno (repartidos entre Cuatro, FDF y Divinity 17-7-3, 18-7-2 y 17-7-3, respectivamente). En general los episodios de Castle se emiten como una vez al mes desde su primera emisión.
+
+La Que Se Avecina, Aquí No Hay Quién Viva, Dos Hombres y Medio también cuelan un episodio (no 3) con 27 emisiones.
+
+Los Simpson, por supuesto, son los primeros en cuanto a series de animación "para adultos", con "El infilBartado" y sus 25 emisiones, dejando a las series de Seth McFarlane en ridículo (el episodio 66 de Padre made in USA y Vivir y morir en Dixieland de Padre de Familia se quedan en 9 repeticiones).
+
+Los datos cubren más o menos desde mediados de diciembre de 2011 hasta hoy, con un hueco en agosto-octubre de 2013 por problemas técnicos.
+
+
+=> http://alex.corcoles.net/2013/01/los-simpson-en-a3/ 1: http://alex.corcoles.net/2013/01/los-simpson-en-a3/
\ No newline at end of file
--- /dev/null
+# Ella está ahí
+2014-02-23
+
+Ayer nos fuimos a ver "Her", la supuesta comedia romántica de chico conoce a inteligencia artificial que está arrasando con la crítica y llevándose un buen puñado de galardones.
+
+La peli va de eso, de Theo (Joaquin Phoenix), un depresivo escritor de cartas íntimas que se instala una inteligencia artificial con la que va intimando a lo largo de la película. Se trata de la cuarta película de Spike Jonze (¡sí, sólo cuarta!), un especialista en virguerías visuales (véanse sus videoclips para Bjork) que dio el salto al cine con la rarísima Cómo Ser John Malkovich cuya particularísima premisa desembocaba en una cinta más que sorprendente.
+
+Her parece ir con derroteros similares- su idea inicial no es tan original (vaya, ha sido hasta el argumento de un episodio de Big Bang Theory) pero tiene un obvio potencial del que aún se pueden sacar unas cuantas películas interesantes. Lamentablemente, mientras que anteriormente Spike contaba con Charlie Kaufman para el guión de Malkovich, en Her se lanza a escribir su primer guión y, en mi opinión, fracasa estrepitosamente. Una lástima, dado que Kaufman fue el guionista de la impecable Olvídate de Mi, y uno no se imagina hasta dónde había podido llevar esta cinta.
+
+Her malgasta su premisa interesante más que nada porque... no sabe qué hacer con ella. El drama y el conflicto vienen y van caprichosamente y sin explicación. Las cosas pasan un poco porque sí, de una manera inconexa e incoherente, torpemente introduciendo situaciones y diálogos que esporádicamente funcionan, pero que no cuajan en ningún momento, dejando un argumento completamente artificioso y torpe.
+
+Esto lastra la película mortalmente- el resto de sus virtudes y defectos son bastante irrelevantes. Joaquin Phoenix sostiene bien la película a pesar de que su mostacho está en primer plano algo así como el 75% del metraje. Pese a lo caricaturescamente patético que pintan a su Theo, aguanta bien el tipo y no pierde la credibilidad más que en un par de ocasiones (y vaya, a todos nos pone muy nerviosos las actualizaciones del sistema operativo). No oímos a Scarlett, sino a su dobladora, que no creemos que le ande muy a la zaga- Samantha pese a ser una voz incorpórea es un personaje perfectamente creíble sólo lastrado por los volantazos que tiene que dar para seguir el irregular guión.
+
+La factura de la película es más que correcta- gran parte de la película es el anuncio de Apple más largo de la historia, que posiblemente ayudará a algunos a comprender por qué los usuarios de iPhones y demás están tan enamorados de sus aparatitos; puede gustar o no gustar pero innegablemente está todo muy bien hecho. La peli recuerda a ratos a Lost in Translation, la mencionada Olvídate de Mi y otros pelotazos del cine moderno, y evoca cuando debe evocar- soledad, amor y desamor son sensaciones que la peli consigue transmitir a través de imágenes, una virtud más que valorable y no tan habitual como debería.
+
+Lamentablemente, como dijimos, todo esto da igual por lo chapucero del argumento- la peli plantea preguntas interesantes, pero lamentablemente las responde (cuando podría no hacerlo) de una manera bastante pobre, y la peli vaga sin rumbo de una manera que al que escribe se le hizo interminable mientras pensaba qué podría haber hecho un buen guionista con ella.
+
+En definitiva, para mi, sobrevaloradísima (venga hombre, ¿nominada a tres Globos de Oro y se lleva precisamente sólo el de mejor guión?) pero bueno, habrá quien la disfrute.
\ No newline at end of file
--- /dev/null
+# NO quiero construir algo hermoso
+2014-02-02
+
+El proyecto con más estrellitas ahora mismo en Github[1] es el famoso Bootstrap (con más del doble de estrellas que su más inmediato perseguidor, jQuery), ese framework CSS *beautiful* y *awesome* que nos asegura que nuestra web tenga un aspecto único e individual como un extraordinario copo de nieve.
+
+Viendo esto, me entra la sensación de que de alguna manera hemos abandonado el pasado sombrío donde los proyectos de software fracasan a raudales, que se pasan en costes y tiempos y que no tienen la mitad de la funcionalidad que requieren sus usuarios. Que encontrar la perfecta combinación de iconos, tipografías y widgets es la mayor preocupación ahora mismo- el backend es un problema resuelto y el frontend es donde tenemos que enfocar nuestros esfuerzos.
+
+O eso, o somos seres simples e importar Bootstrap en nuestro proyecto (¡oh, no, perdón! Usar un framework que nos trae Bootstrap y media docena de *opinionated awesomeness* en una simple operación) y asegurarnos que todo tenga un borde redondeado es más entretenido y fácil que poner una funcionalidad de búsqueda en nuestra aplicación que sirva de algo. Implementar un wireframe de un autoproclamado experto en UI/UX nos dará mucha más usabilidad que asegurarnos que nuestro interfaz reporte errores al usuario de una manera clara y entendible.
+
+Es una preocupante tendencia ahora mismo dedicar unas cantidades desproporcionadas de tiempo a la parte visual en detrimento de hacer cosas que funcionen, sean robustas y rápidas. Nuestra web cargará a toda pastilla en nuestra conexión de fibra con el flamante y bonito portátil recién estrenado- ¿a quién le importa el tipo que tira de 3G con un móvil de hace un par de años? Estamos lejos aún de que el desarrollo de hasta aplicaciones moderadamente simples sea rápido, eficiente y barato, pero hemos pulido hasta el infinito las técnicas para darle un bonito aspecto.
+
+Sé perfectamente que soy un caso extremo- el CSS de este blog son 20 líneas (y son 20 líneas más de las que me gustarían), y hasta hace poco tenía un sistema en producción moderadamente popular cuyo backend tenía **0** CSS (de cuya austeridad, por cierto, en una empresa artística, no se quejaba nadie). Soy consciente de la necesidad de vender y que la apariencia es una de las claves para ello, pero me temo que en 10 o 20 años nos preguntaremos por qué narices le dedicamos tanto tiempo a inflar la burbuja y no dedicarnos a resolver los problemas de verdad.
+
+
+=> https://github.com/search?o=desc&q=stars%3A%3E1&s=stars&type=Repositories 1: https://github.com/search?o=desc&q=stars%3A%3E1&s=stars&type=Repositories
\ No newline at end of file
--- /dev/null
+# Números son números
+2014-03-04
+
+Por hacer algo, he anotado el calendario de La Liga que queda para los 3 primeros y la clasificación de sus rivales aquí[1].
+
+Cada uno lo interpretará como quiera. Yo opino que el que venza el Real Madrid - Barça se lleva la liga, pero quien quiera inventarse fórmulas, que se entretenga.
+
+* nota, sé que restar dos porcentajes no tiene sentido...
+
+
+=> https://docs.google.com/spreadsheet/ccc?key=0Atd_0Z9UHnqJdGhSQnpDNnhJWmd5WE5qZUZiS2NsQkE&usp=sharing 1: https://docs.google.com/spreadsheet/ccc?key=0Atd_0Z9UHnqJdGhSQnpDNnhJWmd5WE5qZUZiS2NsQkE&usp=sharing
\ No newline at end of file
--- /dev/null
+# El viento renquea, pero remonta
+2014-04-28
+
+Uno tiene una relación irregular con Studio Ghibli. Si bien creo que Porco Rosso es una obra maestra del cine y soy bastante fan de Chihiros y Totoros, otras como La Princesa Mononoke me dejan frío (por no hablar de Cuentos de Terramar, de Goro hijo de Hayao, que me deja profundamente dormido).
+
+Esta “El Viento se Levanta” trata la historia de Jiro Horikoshi, el diseñador del caza Zero que hizo estragos en las filas aliadas en la Segunda Guerra Mundial. Con mis antecedentes con películas aéreas de Miyazaki, pintaba bien la cosa.
+
+Curiosamente, a mi me funciona más la parte romántica (la historia de Jiro con su esposa) que lo de los avioncitos. Los avioncitos es más místico que otra cosa, intentando establecer una conexión entre Jiro y un diseñador de aviones italiano de nombre Caproni. La animación marca Ghibli le da atractivo a la cosa, pero le falta algo para acabar de emocionarnos. La peli, dentro de una controversia sobre una supuesta falta de mensaje antibelicista, retrata los diseños de Jiro en poco más que vuelos de prueba, apenas mostrando escenas de combate.
+
+Quizá esto sea para mejor, aunque parece que mucha gente no capta igualmente el mensaje pacifista de la película.
+
+Para mi el hilo argumental de Jiro con su mujer es el que consigue mayor emotividad. Si bien el argumento es un poco surrealista (y curiosamente, parece que se desvía bastante de los hechos reales, que a mi me hubiesen parecido más interesantes para adaptar), el tratamiento de Miyazaki de la historia es realmente fantástico y alcanza momentos de una lírica y dulzura realmente entrañables.
+
+La suma de estas dos desiguales partes equivale a una película que está bien pero se nos antoja un poco corta para la despedida de Miyazaki. Técnicamente es sublime como toda su obra, y ya sólo por eso merece la pena pagar por verla en pantalla grande, pero le falta un pelín para volverse imprescindible.
\ No newline at end of file
--- /dev/null
+# Tengo dos móviles
+2014-04-12
+
+En junio de 2011 me compré una Blackberry Bold 9780. En aquel momento, el iPhone 4 era el iPhone a la venta, Nokia sacó el N9 con Meego y Gingerbread era la última versión de Android para teléfonos. La Blackberry me costó 139€ (a base de puntos), sustituyendo un Nokia C5 que me encantaba pero que comenzaba a quedarse atrás.
+
+Mi experiencia táctil anterior con un LG Viewty (modelo de 2007, coetáneo del primer iPhone) me hizo decantarme por un teléfono con teclado. No tardé en acostumbrarme a él y disfrutar de mi primer smartphone real.
+
+Hace unas semanas, Feedly rompió el interfaz web que me permitía usarlo con relativa comodidad en mi Blackberry- unos ajustes en el comportamiento del viewport lo hicieron completamente inusable, con lo que perdí mis dos horas de metro diarias como mecanismo para ponerme al día de noticias y novedades.
+
+Habiendo jugado bastante con un Nook y un Xperia Mini Pro, me resigné a reconocer que vivir sin un dispositivo Android o iOS (o incluso quizá Windows Phone) era una lucha cuesta arriba. La verdad que mi Blackberry de casi 3 años de edad seguía cumpliendo mis necesidades ampliamente pese a sus defectos, así que estuve bastante tiempo valorando alternativas.
+
+Estaba bastante claro que la mejor opción era un dispositivo Android- no soy un gran fan de Apple y Windows Phone no fue una opción que consideré demasiado (¿está maduro ya? ¿Google le hace caso?). Me plantée algún tablet pequeño (7” es demasiado para llevar en mis bolsillos), haciendo tethering con la Blackberry, pero el tethering Bluetooth (BB OS 7 soporta tethering wifi, pero mi dispositivo es BB OS 6 y por tanto la única opción es Bluetooth) es frágil y en cualquier caso, la batería de mi Bold no creo que se lo tomase muy bien, así que me incliné por algo con SIM. Realmente no hay muchas opciones, y al final se redujo a un Galaxy S III rebajado o al Moto G- seguramente los mejores móviles en la franja alrededor de los 200€ (el S III estaba por 229€ con un cupón de Rakuten recibiendo además 45€ en puntos, el Moto G comienza en 150€ por la versión con 8Gb).
+
+El Moto G me gustaba más por su tamaño, pero a nivel de especificaciones el S III se impone en casi todo lo demás, especialmente cámara y batería, así que no con muchas dudas, me lancé a ser un zombie de Samsung más.
+
+Provisionalmente, le he puesto una SIM nueva de Yoigo (tarjeta, 7€/mes, 600Mb) y sí, soy un pringao que lleva dos móviles encima. Tengo dudas sobre las capacidades de comunicación de un dispositivo con pantalla táctil y prefiero no saltar al vacío.
+
+Las impresiones del S III son las que uno esperaría. Enorme, pero delgado. Usar un Android potente (el S III tiene dos años, sí, una barbaridad en móviles, pero recordemos que fue el buque insignia de Samsung) es una revelación acostumbrado a BB OS- un navegador que puede con todo (el de BB OS es muy bueno con páginas adaptadas a móviles, pero le puede cualquier cosa página no móvil con una tonelada de anuncios e imágenes) y con soporte de primera línea de aplicaciones.
+
+Sí, aplicaciones. Realmente debo decir que las aplicaciones importantes para mí (mensajería, redes sociales, mapas [aunque el soporte de Google Maps empezaba a preocuparme], etc.) están para Blackberry, y que no estoy tirando casi nada de aplicaciones en el S III (salvo Feedly, claro- pero hasta que lo rompieron, la versión web me iba aceptablemente bien), pero se nota que las apps de Blackberry están… descuidadas.
+
+La cámara también se nota- con mi pésimo pulso sacar una foto con la Blackberry decente era un desafío- con el S III es todo mucho más sencillo.
+
+Por último, aunque cuando lo compré la batería de la Blackberry era fantástica (un día de uso intensísimo sin problemas, fines de semana de uso ligero sin recargar), dos horas de uso intensivo en el metro con poca cobertura durante tres años destruyen cualquier batería (tanto, que me compré una sin marca- pero da más o menos el mismo rendimiento que la batería de marca usada). El S III tira de su enorme batería y no sufre para acabar el día, mientras que la Blackberry la tenía que cargar durante el día para que no me dejase tirado volviendo a casa (como curiosidad, ahora que no le doy tanto tute a la Blackberry, aguanta mucho mejor).
+
+Pero…
+
+Sí, teclear en cristal sigue siendo un despropósito. No tanto como pensaba, pero entre la Blackberry donde puedes teclear lo que quieras sin mirar a la pantalla, alternando idiomas, metiendo puntuación compleja, etc. y el agónico teclado táctil, sigue habiendo un mundo de diferencia. El swipe que lleva el teclado por defecto y el buen soporte multi idioma ayuda bastante, pero tiene puntos bastante débiles- sobre todo la puntuación y cuando te apartas mínimamente del diccionario. La Blackberry aguantaba hasta usos muy exigentes como usarla de terminal SSH- algo que requiere del uso de modificadores, combinaciones de teclas y palabras “raras” era algo que soportaba de maravilla, mientras que con un teclado táctil se puede hacer algo… pero es muy incómodo.
+
+También se nota, y mucho, la atención que requiere teclear en pantalla táctil. Mientras que con la Blackberry puedes escribir andando por la calle casi sin prestarle atención, el S III dificulta muchísimo esto.
+
+Por otra parte, el tamaño, que sí importa. No tengo las manos grandes, pero tampoco pequeñas, y el uso a una mano es terriblemente poco práctico. El ridiculizado trackpad de la Blackberry es realmente una virguería ergonómica. Se usa perfectamente con una mano, tiene muchísima precisión y para ciertos movimientos (e.g. scroll continuo), es mucho más cómodo. El S III a una mano es harto incómodo y a dos manos, hay tareas en las que pierde claramente contra el cutre trackpad. Quizá el más pequeño Moto G hubiese sido mejor en este sentido, pero…
+
+Sí, la anticuada Blackberry es mucho más… cómoda. El teclado ayuda enormemente en la faceta “comunicativa” y alguna más esotérica, y el trackpad resuelve algunas mecánicas muy bien (selección y movimiento dentro de texto, etc.). Los atajos de teclado y búsqueda son la guinda- es mucho más cómodo teclear calc y hacer click con el trackpad que ir al menú aplicaciones, hacer swipe hasta encontrar la calculadora y pulsar el icono.
+
+Combinar las ventajas de ambos dispositivos parece el camino a seguir, al menos de momento, aunque me costará 7€/mes (e igual los 600Mb se me hacen cortos).
+
+Lo curioso del tema es que mi netbook sí ha sufrido un inesperado desplazamiento en su “uso en el sofá”. El S III es un digno contrincante: tiene más resolución de pantalla (¡1280x720 contra 1024x600!), 1Gb de RAM (mi netbook ahora tiene 2Gb, pero durante mucho tiempo tuvo 1Gb) y hasta reproduce mejor vídeos de Youtube. Obviamente, el teclado del netbook apabulla aún más que el de la Blackberry, pero aún así… hay días que no arranco el netbook.
+
+La conclusión es que por favor, que alguien saque un móvil Android con el formato Blackberry clásico. Tenía esperanzas en que Lenovo comprase Blackberry, pero la política se ha puesto en medio. Igual ahora que Lenovo tiene Motorola, sacan un móvil Thinkpad con teclado, pero eso parece un sueño ahora mismo. Aunque la nueva directiva de Blackberry parece que se ha dado cuenta que sus nuevos formatos cojean (los BB OS clásicos siguen vendiendo más que los nuevos), veo muy complicado que le den la vuelta a su situación, e impensable que adopten Android.
+
+Mientras, seguiré en esta curiosa vida con dos móviles esperando a ver como se desenvuelven los acontecimientos.
\ No newline at end of file
--- /dev/null
+# Pseudorebujitado: Frozen
+2014-06-15
+
+La compañía famosa por leyendas urbanas criogénicas saca Frozen, un cuento infantil sobre princesitas Disney gay-friendly que lanzan chuzos de hielo por la mente que se torna megapelotazo. El mal sabor de boca de Brave no me auguraba mucho, pero...
+
+El argumento de Frozen es un poco irregular. Por una parte, es original; los temas subyacentes sorprenden dentro de lo que es Disney línea dura (Pixar es Disney pero no es Disney, no sé si me entienden) y no sorprende que se le hayan dado las lecturas que se le han dado- si es lo que pretendían sus creadores no sé si lo podremos saber. Es refrescante que no sea la enésima repetición de lo de siempre y se agradece. Por otra parte, el argumento es a menudo incoherente y sirve de mero vehículo para la película; va cogido por los pelos para llevarnos a situaciones y escenas concretas y el recorrido hasta ellas flojea un poco.
+
+Sin embargo, y a diferencia de Brave donde los puntos álgidos del itinerario no eran tan álgidos y los transbordos eran soberanos bodrios, aquí las atracciones turísticas son fabulosas y los intermedios, completamente soportables.
+
+La aurora boreal de Frozen es Let It Go, un temazo desatado que lógicamente arrasó al Happy de Mi Villano Favorito II y la cancionucha de Her en los Óscar. Es una de esas canciones que la Disney hace para llevarse a casa la estatuilla y en este caso, se salen. No sólo la canción en sí y la interpretación (la tal Idina Menzel colecciona premios de musicales, y se nota), sino que el numerito palacio de hielo es una exhibición del mejor 3D que el dinero puede comprar.
+
+La animación es impecable como debe ser. Los programadores encargados de dibujar hielo y modelar nieve deben haber costado dinero, pero están más que amortizados. La estética nórdica y toda esa cantidad de hielo y nieve funcionan de maravilla- el hielo captura la luz virtual y le da a la película el toque sobrenatural que necesita.
+
+Los personajes no acaban de cuajar. Los protagonistas son algo sosos y los villanos no dan mucho miedo, pero bueno, supongo que la película no va de eso. Los dos secundarios que destacan son el muñeco de nieve que quería ir a la playa y Oaken, el comerciante (encarnado por un animador de la peli), que están metidos un poco con calzador, pero que dan las secuencias más graciosas de la cinta.
+
+En fin; si bien no es una cinta completamente redonda, Frozen vale el precio de la entrada sólo por poder desafinar a gritos Let It Gooo al acabar. Recomendable.
\ No newline at end of file
--- /dev/null
+# Los centinelas siderales
+2014-08-17
+
+Los Guardianes de la Galaxia es una nueva entrega del grandilocuente "Marvel Cinematic Universe", es decir, la serie de pelis producidas por Marvel Studios, hasta el momento formada de Los Vengadores y pelis sobre sus miembros. Recordemos que los derechos a producir películas de superhéroes Marvel están pelín dispersos- la Fox tiene a la Patrulla X, los 4F y Daredevil, Columbia tiene a Spidey y hay alguna migaja más repartida por ahí.
+
+Guardianes se basa en un grupo (relativamente desconocido para el Marvel Zombie que escribe esto), con ambientación futurista espacial ciertamente particular- sí, uno de los miembros del grupo es un mapache de destrucción masiva y el prota y líder venera los ochenta. Vamos, que le han subido el volumen al humor de Iron Man todo lo que han podido. El responsable de todo esto es un tal James Gunn, del que no hay que decir mucho más que es un ex-Troma (guionista de Tromeo y Julieta, por poner un ejemplo), aunque su entrada en la Wikipedia[1] es la mar de entretenida como portal a un mundo de cosas extrañas.
+
+Al ochentero y al mapache hay que sumarles a un ser arbóreo de limitado vocabulario, a un forzudo galáctico que se lo toma todo literalmente y a una sosa repartidora de patadas voladoras. Estos se verán unidos por inconexos eventos contra el curiosamente denominado "Ronan el Acusador" en una trama de dimensiones galácticas, artefactos destruyemundos, chascarrillos a docenas y una banda sonora de grandes éxitos de los setenta y ochenta.
+
+¿Funciona esta curiosa mezcla?
+
+Pues a ratos. La acción es impecable y trepidante, con unos efectos visuales deslumbrantes (que resulte verosímil un mapache parlante vaciando cargador tras cargador es algo que realmente no se ve con frecuencia) y un ritmo bastante acertado- sólo por eso creo que ya vale la pena irse al cine a verla. Por otra parte, la peli cojea a ratos. El argumento es flojillo, y a parte del mapache, el ochentero, el arbolillo y el forzudo literal, el resto de personajes deja bastante que desear- vale que muchas pelis no tienen 4 personajes buenos como tiene esta, pero se echa de menos algo de carisma en los villanos y resto de secundarios.
+
+El humor de la película igual me pilló un poco descolocado. Cuando su improbable composición funciona, funciona muy bien. Las referencias a la cultura pop son un éxito casi seguro, sí, pero la cantidad de apuestas arriesgadas de la cinta es digna de admiración; el uso de la música, el humor físico (los fans de la somanta de palos de Hulk a Loki en Los Vengadores tendrán que contener las lágrimas de la risa en una escena bastante similar), los desajustes mentales de los protagonistas y un sinfín de recursos humorísticos provocan numerosas carcajadas. Eso sí, más de un gag me pareció algo forzado y disonante. En particular, Chris Pratt que interpreta al prota y que es de los pocos que no está enterrado en maquillaje o es directamente un efecto especial, tiene una interpretación bastante irregular en cuanto a su faceta cómica- a veces clava con naturalidad su personaje, pero en bastantes ocasiones le sale algo forzado, aunque quizás sea todo fruto de alguna situación extremadamente ambiciosa o que uno tenía las expectativas por las nubes.
+
+En fin, que sí, que hay que verla. Creo que los que dicen que es La Guerra de las Galaxias de esta era se pasan un poco, pero es ciertamente un plato bastante único dentro del género de los superhéroes y aunque uno le vea demasiados defectos como para considerarla el segundo advenimiento, creo que lo original de su propuesta y el puro deleite que ofrece a ratos bastan para perdonarle cualquier cosa.
+
+
+=> http://en.wikipedia.org/wiki/James_Gunn_(filmmaker) 1: http://en.wikipedia.org/wiki/James_Gunn_(filmmaker)
\ No newline at end of file
--- /dev/null
+# Monos y más monos
+2014-08-17
+
+Hace relativamente poco me pegué una sesión semidoble de El Origen del Planeta de los Simios (2011) y El Amanecer del Planeta de los Simios (2014) que, como mínimo, deberían servirnos para quitarnos el mal sabor de boca de la infumable entrega de 2001 de Tim Burton.
+
+Se trata, como no, de un nuevo reboot que ignora todo lo que vino antes y que ofrece una reimaginación de la idea de los simios alzándose sobre los monos sin pelo- que hay que admitir que es una premisa ultraatractiva que a todos nos apetecería desarrollar. Hemos visto las dos primeras entregas de esta supuesta trilogía, que reseñaremos juntas por economizar.
+
+En El Origen, se nos da el origen la historia, la investigación de un científico (acertado James Franco) para curar el Alzheimer que ataca a su padre (el prolífico John Lithgow) que desencadena los acontecimientos- el salto de inteligencia para los simios y una plaga que 10 años más tarde ha diezmado la población humana en el arranque de El Amanecer. En esta, un reducto de supervivientes humanos liderado por Gary Oldman lanza una expedición para intentar recuperar una central hidroeléctrica en territorio simio.
+
+Como es de esperar, la serie hace una transición de thriller científico con toque simiesco a peli de acción/aventuras centrada en los primates, con bastante gracia. La primera entrega se sostiene inicialmente en el trabajo de Franco y Lithgow y la posterior introducción del simio interpretado por Andy Serkis, todo un experto en dar vida a personajes 3D. Los tres forman una dinámica perfectamente equilibrada con grandes dosis de emotividad. El conflicto que dirige el argumento es por otra parte algo forzado y a menudo inverosímil- los humanos malos son caricaturescamente malos y estúpidos, resultando unos villanos un tanto flojos, quedando relegados por el debate interno de César, el mono inteligente protagonista y en menor medida por el atormentado Koba, que pese a no contar con mucho metraje, se apodera de gran parte de la película.
+
+La primera parte acaba con el inquietante avance exponencial de la plaga, lo que nos lleva a la segunda película. La parte primate de la primera entrega se conserva y amplia; César y los suyos han establecido una población que lleva un par de años al inicio de la peli sin ver un humano y que comienzan a pensar que se han extinguido. El reparto humano es completamente nuevo, centrado en los supervivientes de un San Francisco apocalíptico que intentan poner en marcha una central hidroeléctrica, obviamente llevando a otro conflicto. Aquí la parte simia ya es clara protagonista central y la parte humana queda relegada- no sé si deliberadamente o accidentalmente, ya que el reparto humano es bastante flojo. Mientras que los simios gozan de un amplio abanico de registros, los humanos o son buenos muy buenos, o malos muy malos, o irrelevantes. El protagonista es un buenazo blandengue, acompañado de una mujer e hijo no menos pánfilos que tienen que comportarse como tontainas para que el argumento siga su curso- que los humanos muy malos se piquen con los simios y se líe parda.
+
+César es, a la espera de la tercera parte, el protagonista principal, y Andy Serkis nos ofrece un personaje matizado y con unos conflictos irresolubles y muy verosímiles. Koba y el científico de James Franco le dan muy buena réplica, así como el variado reparto de primates. El argumento aprovecha bastante bien la jugosa premisa, aunque los conflictos y sus desarrollos se ven bastante forzados en ocasiones, y nos encontraremos en innumerables ocasiones preguntándonos ysíes y yporqués... que se juntan con el lastre de ser un reboot que resulta bastante pesado a veces.
+
+A pesar de todo ello, y de las ganas que tengo de condenar a este Hollywood que abusa del reciclaje, debo decir que me tragaré la tercera cuando salga y que vale la pena verse las dos primeras.
\ No newline at end of file
--- /dev/null
+# Mi lenguaje de programación favorito
+2014-10-11
+
+A todos nos gusta meternos en disquisiciones filosóficas inútiles, generalmente de la forma de "escoger el mejor X". Para esta aburrida mañana de sábado, voy a hablar de mi lenguaje de programación preferido- un tema nada original.
+
+Para empezar, ¿cuál es el criterio subjetivo para definir "favorito"?
+
+Pues voy a escoger "productividad en su ámbito"; es decir, lo rápido que me permite resolver problemas en un área específica. Por supuesto este criterio está influenciado por los ámbitos en los que uno trabaja y requiere esta productividad.
+
+Dentro de estos criterios, cada vez me es más difícil no responder "el bash". Con el paso del tiempo he descubierto que para una amplia gama de situaciones, la mejor respuesta es indudablemente abrir un terminal y vomitar una sarta de bash y, muy frecuentemente, observar como funciona a la primera.
+
+Podéis quejaros de que es un argumento un poco tramposo. Cuando uno habla de bash, nunca habla del bash en aislamiento- lo que hace realmente útil al bash es la infinidad de comandos que puede combinar- ya sea herramientas estándar como cut, grep, find, etc. como otras más evolucionadas como el curl u otras más esotéricas como el genial xmlstarlet- o incluso herramientas que son lenguajes de programación a escondidas, como el sed o el awk.
+
+Pero argumentaré que el resto de lenguajes también son inútiles sin sus librerias- es sólo que el bash tiene una librería estándar descomunal que resulta ser cualquier cosa que se pueda ejecutar desde una línea de comandos.
+
+El bash también cuenta con el concepto del pipe- presente en todos los shells pero sorprendemente ausente de la mayoría de los demás lenguajes de programación. El pipe es el pegamento perfecto para combinar cosas en el bash- la mayor parte de bashismos son cosas del tipo:
+
+cat fichero | grep foo | cut -d , -f 3,5 | sed "s/^/foo:/" >resultado
+
+; con esta sencilla primitiva combinamos sin fisuras cuatro comandos distintos- e infinitos más.
+
+El conjunto del bash y el conjunto de herramientas estándar es tan armonioso que la mayor parte de manipulaciones de ficheros de texto, operaciones entre ficheros, etc. pueden resolverse con unos cuantos pipes y unos cuantos grep. Bash también nos permite definir funciones bastante ágilmente, cuenta con estructuras de flujo de control bastante majas, nos permite un primitivo control de errores y lo mejor de todo, permite reciclar nuestro código en scripts fácilmente reutilizables.
+
+Si tuviese que escoger otro lenguaje favorito, por motivos similares escogería el SQL. SQL pelado, sí. Si puedes meter tu información en una base de datos relacional (y a menudo ya vive allí, porque las bases de datos son los mejores hogares para los datos), el SQL te permite con la misma brevedad que bash aplicar cualquier transformación a esos datos, extraer los que te interesan y sumarizarlos a gusto. En mi carrera profesional, pocas cosas se me han valorado más que la habilidad de extraer datos en minutos de una base de datos.
+
+Lo más sorprendente de SQL es que, a diferencia del bash, es un lenguaje profundamente declarativo: raramente le decimos a SQL cómo tiene que hacer las cosas, sino que le decimos lo que queremos y él se preocupa de ejecutarlo de una manera eficiente (siendo capaz de realizar operaciones complejas sobre enormes conjuntos de datos en un periquete).
+
+Detras del bash y SQL vendrían otros; Python por ser un lenguaje de propósito general claro y productivo (que además cuenta con Django- el framework para CRUD más productivo que he encontrado nunca)- Java por similares motivos, pero contando además con un rendimiento espectacular y características y herramientas esenciales para construir programas de gran tamaño, o Haskell, cuya elegancia matemática y su sorprendente modelo siempre me deja boquiabierto.
+
+Pero antes de todos estos lenguajes populares siempre están esos dos- que muchos ni tendrían en cuenta como lenguajes de programación (pues son de ámbitos reducidos), pero que ejecutan funciones (específicas, eso sí- pero muy comunes) a la perfección.
\ No newline at end of file
--- /dev/null
+# Interestelar, iintereeestelaaar, cabróoooon
+2014-11-23
+
+Con ganas de emular a Kubrick, el batmanesco Nolan se empolla todo lo que puede de la relatividad esa y pone al trudetectivesco McConaughey como ingeniero espacial.
+
+Probablemente sea de las primeras películas en montar medio argumento en torno a la dilatación del tiempo; un experimento interesante pues si ya es costumbre habitual jugar con la cuarta dimensión en el cine (cinco minutos nunca son cinco minutos), con esto se puede buscar nuevos dramas a explorar.
+
+La peli gira entorno de la búsqueda por parte de una NASA en la sombra de un planeta al que la humanidad pueda escapar de una Tierra moribunda. McConaughey encarna al héroe perfecto pero imperfecto que deja mucho atrás para lanzarse en una aventura suicida. La Hathaway y Michael Caine encarnan a hija y padre que le apoyarán- y por supuesto ese reparto sorpresa que a mi me dejó bastante frío.
+
+Empezaré por lo bueno. Visualmente Interstellar es una auténtica maravilla. Desde los fantásticos fenómenos cósmicos, pasando por las trepidantes descargas de acción y acabando con en fascinante diseño de los robots, es una gozada verla. Estos últimos son dignos herederos de HAL (el guiño de la escotilla, lo mejor de la película) y también del kevinespeisiesco ordenador de Moon- no tremendamente originales (en cuanto a personaje- su formato es un hallazgo), pero protagonizan algunos de los mejores momentos de la película.
+
+Pero. Pero la peli no sobrevive a su complejidad. Tanta relatividad y tanta leche redundan en eternos diálogos de exposición. Será manía mía pero no puedo evitar pensar en ellos como un fracaso cinematográfico: si no lo puedes explicar en imágenes es que no sabes. En los silencios del 2001 que tanto se quiere emular, yo veo maestría; en los inacabables parloteos interestelares, yo veo torpeza. La verdad es que yo no sabría narrar esto sin tanta palabra... pero eso quizá quiera decir que Interstellar deba ser un libro (que podría haber firmado Clarke perfectamente) que nunca pueda ser adaptado al cine. Lo otro, y seguramente relacionado con lo anterior, es el abuso de deus ex machinas, de cosas cogidas por los pelos, de apariciones súbitas y inexplicables y, sobre todo, de intentos lamentables de tapar todo esto (me viene a la cabeza un monólogo de la Hathaway que a ratos me pareció que estaba avergonzada de pronunciar). Por cada momento bueno hay otro que te lo puede estropear.
+
+Pero. Pero a pesar de ello vale la pena ver Interstellar. Merece ser recompensada por arriesgar e intentar explorar galaxias desconocidas. Igual los que caminen este camino cuando otros muchos lo hayan caminado serán infinitamente mejores- pero le deberán mucho a este pionero, que nos habrá familiarizado con nuevos recursos argumentales para que la próxima vez no nos los tengan que deletrear. Y a pesar de todo, la peli sigue siendo espectacular, cuenta con buenas escenas y transmite emoción (esto último con éxito desigual).
\ No newline at end of file
--- /dev/null
+# Cuentos del Triángulo Verde
+2014-12-20
+
+(un relato chorra para un concurso de relatos cortos humorísticos... que no tuvo muy buen resultado :))
+
+1.
+
+Nadie recordaba ya nada de la antigua civilización, pero Grub estaba bastante seguro de que el templo de suministros había sido uno de sus pilares. Entre polvo y escombros, el templo se alzaba majestuoso desafiando al sol y a las tormentas de arena.
+
+Su tribu anhelaba los extraños artefactos que atesoraba, pero muchos de sus guerreros habían sido diezmados intentando asaltarlo o interceptando los convoys fuertemente armados que lo abastecían periódicamente.
+
+Recordaba el salvoconducto que había encontrado su abuelo cuando Grub era apenas un cachorro. El esqueleto se aferraba a su posesión más valiosa, pero apenas un tirón bastó para arrancarle el pequeño rectángulo plastificado. Casi no pudo contener la emoción cuando su abuelo se lo enseñó al guardia y éste les invitó a entrar.
+
+No sabían qué magia iluminaba el lugar, ni qué extraña fuerza impulsaba las vías a las plantas superiores, ni de dónde salía ese frescor que al principio te hacía olvidar el infierno exterior, pero que luego te helaba hasta los huesos.
+
+Pasaron varias horas recogiendo tesoros, que los propios guardias les colocaban en alforjas de plástico simplemente presentando el salvoconducto.
+
+El día acabó cuando un guardia se quedó con el salvoconducto a cambio del último artefacto y les escoltó hacia la puerta, pero fue una jornada gloriosa de la cual seguían hablando cada noche al caer el sol, aunque ni siquiera eran capaces de comprender su botín.
+
+Esos borrosos recuerdos emergían en la mente de Grub mientras se dirigía al templo. Como explorador, le correspondía introducirse e interpretar los auspicios regularmente. Esto era más complicado de lo que parecía e infinitamente más peligroso. Habían descubierto que la actitud exacta, con un preciso equilibrio de interés y desinterés, podía mantener a los guardias a raya. Si no mirabas lo suficiente, te conducían a empujones hasta la entrada. Pero si demostrabas mucho interés por un artefacto, tu destino era mucho peor. El guardia se acercaba y entablaba conversación. Nadie conocía el lenguaje ni las encantaciones apropiadas, sólo arrodillarse y ofrecerles un salvoconducto los apaciguaba. Nunca descubrieron qué hacían con los cadáveres.
+
+Grub deambulaba entre las estanterías. De vez en cuando añadía su toque personal, cogía algo y hacía ver que interpretaba sus escrituras, mientras controlaba al guardia por el rabillo del ojo. Esto parecía satisfacerles.
+
+Las miradas de los guardias eran cada vez más insistentes y cuando Grub estaba a punto de dar por concluida su incursión, lo vio. Cayó de rodillas donde se encontraba. Su padre le había enseñado a interpretar los cuatro auspicios, igual que su padre antes que él, y aquel era el peor de todos.
+
+El árbol de frutos redondos y brillantes, el hombre de rojo y los abrigos de animales.
+
+En dos o tres lunas nuevas, llegaría el frío y la desolación. Su abuelo le había explicado cómo el anterior invierno prácticamente acabó con ellos. Grub escuchó una voz, pero no supo interpretarla. Sus sollozos acabaron de ahogar la locución mística y la tétrica melodía.
+
+«Ya es Navidad en El Corte Inglés.»
+
+2.
+
+—No lo queremos.
+
+—¿Cómo?
+
+—Que no lo queremos.
+
+El robot se encogió de hombros. No era algo habitual, pero esto había excedido su programación.
+
+—Tendrán que hablar con mi supervisor.
+
+Eva y Lucas se acomodaron en sus asientos.
+
+—De acuerdo.
+
+El robot se levantó, dio la vuelta, se dirigió al hombre del despacho y le explicó todo. Antes de salir a hablar con ellos, el supervisor convirtió su cara de sorpresa en su mejor sonrisa.
+
+—Buenos días. RA21 me ha comentado su caso y creo que no le he entendido del todo bien.
+
+—Que queremos devolverlo.
+
+—Ya —enterró la vista en los papeles que había en la mesa—. Pero veo que no tiene ningún problema, ningún defecto de fábrica.
+
+—Eso es técnicamente cierto, desde luego —dijo ella.
+
+—Pero queremos devolverlo —dijo él.
+
+—No lo comprendo.
+
+—No forma parte de su… ¿política?
+
+—Sé lo que quieren decir, pero esto es del todo irregular. Cubrimos los defectos de fabricación, pero…
+
+—Pero es que no nos gusta. Es un… pesado.
+
+—Y un cabroncete.
+
+—¿Cómo? —A pesar de su amplia experiencia, no pudo evitar la sorpresa. Se recompuso rápido.
+
+—Mire, al principio éramos comprensivos. No nos dejaba dormir, pero… pensábamos que era normal. Pero iba pasando el tiempo y no mejoraba.
+
+—Lo que mi mujer quiere decir… pues sí, crecía con normalidad, dentro de lo esperado. Pero…
+
+—Es un gamberro. Y no para de tocarnos las narices.
+
+El supervisor, bajo una mueca de atención absoluta, no daba crédito. En un mundo saturado de contaminación, la tecnología que los chicos del supermercado habían inventado no sólo producía unos filetes excelentes, sino que resultó ser la mejor manera de tener hijos sanos y perfectos, completamente libres de la plaga de las mutaciones. Buscando atender todas las necesidades de sus clientes, abrieron el departamento de reproducción asistida hacía apenas seis años.
+
+—Pero todo esto son criterios subjetivos. El niño no presenta ninguna mutación. Su ADN es —Alzó los papeles y les enseñó los marcadores— completamente armonioso. El fenotipo... admitirán que el parecido es notable.
+
+—Sí, pero el crío es un maldito caprichoso e insoportable.
+
+—Debe disculparla, ayer volvieron a expulsarle del centro educativo. Es que no hay manera.
+
+—Mire, nos da igual el dinero. Sólo queremos que… que se lo queden. Ustedes siempre insisten en eso, ¿no?
+
+El supervisor suspiró sonoramente. «La política que ha sobrevivido una guerra nuclear», pensó. Entonó la letanía con resignación.
+
+«Si no quedan satisfechos, les devolvemos su dinero.»
+
+3.
+
+Se sentó delante del ordenador. Era un tipo bajito, algo barrigón y bastante calvo. Sudaba.
+
+Abrió el navegador e introdujo la dirección.
+
+«Instalando el plugin Mindterest 3.5 para una perfecta experiencia de compra», decía la pantalla, mientras el hipnótico círculo giraba en su danza infinita.
+
+Golpeteó nerviosamente el ratón.
+
+La página cargó, con el habitual listado de categorías. Vio la muchacha tridimensional en la parte derecha de la pantalla. «Haga clic aquí si desea saber más sobre su nueva experiencia de compra.» Era bastante atractiva, pensó, y le echaba una mirada inquisitiva. Sonrió levemente.
+
+«Me temo que no ofrecemos ese tipo de servicios.» Había desaprobación en ese cuadro de texto.
+
+Enrojeció levemente. Clic, clic, cancelar.
+
+«En nuestra sección de psicología encontrará títulos como ‘Superar el ridículo’ y ‘Conteniendo sus deseos’, haga clic en los títulos para más información.»
+
+Una gota de sudor recorrió su frente. Clic, clic, cancelar.
+
+Se echó una ojeada rápida, avergonzado.
+
+«El departamento de alimentación tiene una amplia selección de comida dietética preparada por nuestros especialistas en nutrición.”
+
+CLIC, CLIC…
+
+«... programas de ejercicios...», los *popups* emergían más rápido de lo que podía cerrarlos.
+
+¡CANCELAR!
+
+Joder con el *plugin*, era peor que el Flash de los antepasados. Su vida era una mierda, pero no necesitaba que un avatar impoluto se lo recordase.
+
+«Quizás podrían interesarle nuestros nuevos servicios de psicología, haga clic aquí para obtener detalles.»
+
+Alzó una ceja. En aquel momento tampoco le pareció tan mala idea. Quizás le haría bien.
+
+Clic, clic.
+
+La página cargó lentamente. Sin pensarlo, se desplazó hasta la parte inferior para ver los precios. «Puf, prohibitivos», pensó, y vio su desilusión reflejada en la pantalla.
+
+«En el supermercado encontrará una promoción 3x2 en cuchillas de afeitar. Bueno, en realidad sólo necesitará una…»
+
+Reparó con resignación en el eslogan en el pie de la página y se quedó mirando al infinito.
+
+«Especialistas en ti.»
\ No newline at end of file
--- /dev/null
+# Detente y préndete fuego
+2014-12-28
+
+La subcultura, friquismo, cosa geek, etc. parece estar de moda últimamente. La tecnología cobra cada vez más importancia y se infiltra hasta puntos insospechados hasta hace poco en el día a día de la gente corriente. Famosos de la informática como Jobs o Zuckerberg son celebridades del calibre de muchos deportistas, actores y músicos. Como no podía ser de otra manera, esto hace que las artes- literatura, cine, televisión... cada vez beban más del mundo tecnológico en sus obras. Sin embargo, hasta el momento (y hasta donde yo he visto), esto ha sido un fenómeno parcial- cultos de personalidad, referencias... poco más.
+
+Halt and Catch Fire, sin embargo, es de las primeras obras relevantes para el gran público centrada argumentalmente en el mundo tecnológico- específicamente en la época de los clones del PC de IBM en los 80. Pese a tomarse licencias artísticas con la historia (la Cardiff Electric de los protagonistas es en gran parte Compaq, pero con bastantes cambios), HaCF no sólo puede considerarse histórica en el sentido que un biopic de Napoleón lo sería, sino que además entreteje la tecnología en el argumento (y además, con grandísimo acierto).
+
+La historia se centra en un ex-comercial de IBM, Joe MacMillan (genialmente interpretado por Lee Pace... sorprendentemente el Thranduil del Hobbit o el villano de Guardianes de la Galaxia) que aterriza en una pequeña empresa de informática de Dallas planeando un producto clave de la época. Su personaje, magnético como debe ser, bascula entre lider carismático y traidor deleznable- de impecable traje caro pero con misterios y bagaje personal, se rige como el eje alrededor del cuál gira la historia. Le acompañan la programadora Cameron Howe (una tal Mackenzie Davis que no me suena de nada) y Gordon Clark [¿Gordon por Gordon Moore de Intel y de la ley epónima? Por Clark sólo me sale un fundador de SGI y Netscape], el experto en hardware (Scoot McNairy- al parecer sale en 12 Años de Esclavitud y Argo). En las dinámicas entre los tres rápidamente cobra protagonismo Donna, la esposa de Gordon, (una magnífica Kerry Bishé- al parecer es la segunda vez que interpreta a la esposa del mismo actor) que es mucho más multidimensional que el otro par (Cameron es excesivamente punk-manzanil para mi gusto- Gordon es un personaje más interesante pero que a mi no me llama mucho) y se lleva una buena cantidad de momentos estelares.
+
+En el aspecto técnico (no hablo de la fotografía, ambientación, edición... todo impecable) no es sólo que HaCF capte la esencia de una época de la industria informática y trace un drama bastante sólido con ello, sino que además los aspectos informáticos se incorporan con total naturalidad y muchísimo acierto en el argumento. No es que HaCF no contenga gazapos técnicos de esos que me levantan del sofá con indignación (yo no he cazado ninguno al vuelo- indudablemente tiene alguno pero ninguna "licencia artística para matar") sino que grandes éxitos del mundillo son puntos claves de los episodios (una educativa historia sobre los backups, hacer ingeniería inversa de la BIOS de IBM con un osciloscopio, abrir un disco duro y recuperar datos con acertadas alusiones a la FAT, ...), haciendo que salte de mi asiento para aplaudir.
+
+Con todo esto, HaCF nos cuenta una historia de pioneros y de los riesgos y daños personales que conlleva. Una historia con personajes trabajados, con sus claros y sus oscuros... con un argumento emocionante que hace que al acabar un episodio quieras ver inmediatamente el siguiente (por no hablar de la larga espera hasta la recientemente anunciada segunda temporada- parece que ha triunfado más allá de los ordenadorfílicos). Y además, ya era hora que alguien hiciese una serie para *nosotros*.
\ No newline at end of file
--- /dev/null
+# Igual debería comprarme una Blackberry Classic
+2015-01-17
+
+Si siguieron entregas anteriores (1[1], 2[2], 3[3] y 4[4]) soy un enajenado mental que usa una Blackberry Bold 9780 comprada hace casi 4 años y un Samsung Galaxy SIII comprado en abril del año pasado. Recientemente, la Bold se ha deteriorado aún más (se reinicia varias veces al día [un proceso horripilantemente lento] y ha dejado de reconocer tarjetas MicroSD [lo cuál es un fastidio muy grande de cara al uso de Whatsapp- salta un error cada vez que entro en la aplicación y por algún extraño motivo, hace que recibir fotos sea una odisea]), haciendo empeorando una situación que ya no era muy ideal (tener que preocuparme de dos teléfonos y que el principal sea una antigualla).
+
+Y justo por estas fechas, esos canadienses decadentes han sacado la Blackberry Classic, la nueva Blackberry pensada para los desequilibrados como yo.
+
+¿Qué hacer? Hablemos por pros y contras...
+
+# Pros
+
+La Classic es prácticamente la Blackberry que yo querría. Formato Bold (pelín más grande, pero con trackpad y surtido de botones físicos), batería no intercambiable pero decente (GSM Arena le da 62h[5]- lejos de las 101h que le da al Z3 Compact, pero más que suficiente) y si bien no usa Android como yo querría, es compatible con algunas aplicaciones Android (básicamente lo que quiero es Feedly, que es lo que me llevó al SIII. Parece ser que se pueden meter las aplicaciones Google de maneras turbias, lo cuál sería la leche).
+
+Es decir, que sobre el papel han sacado un móvil que se acerca (realistamente) mucho a lo que yo querría[6], pero...
+
+# Contras
+
+En EEUU cuesta $450 que parece caro pero al cambio son 389€, un precio no exorbitante para un móvil que uno quiere (está lejos de los 700€ del iPhone 6 más barato, debajo de los 450€ de un S5 o un Z3 Compact), pero en España cuesta unos 430€ de momento. Esos 40€ por vivir en un país pobre duelen, y duelen más cuando una Blackberry Classic es prácticamente el mismo hardware que la Blackberry Q10 de 2013 que ahora se vende por 280€. Es decir, que me están vendiendo hardware a un precio muy elevado.
+
+Por otra parte, es una Blackberry. Sigue siendo muy complicado que Blackberry remonte el vuelo y hay bastantes números de que desaparezca en un futuro no muy lejano y me haya gastado los dineros en un móvil huérfano que seguramente tenga mucho de los problemas que tiene mi Bold ahora (soporte insuficiente de operadores y aplicaciones importantes). Y desde luego ahora mismo ni aplicaciones Google (las chapuzas no cuentan), ni smartwatches que lo soporten, ni nada... lo mínimo que necesito (Whatsapp, Twitter, Facebook, etc.) está, pero duele ser ciudadano de segunda categoría aunque eso no te afecte realmente mucho. La compatibilidad con aplicaciones Android es relativa y muchas reseñas dicen que se arrastran (normal- es hardware más bien poco potente).
+
+# Pero
+
+Llevo usando el SIII casi un año y... las pantallas táctiles siguen siendo un problema. Cuando tengo que teclear algo, por mucho Swiftkey que haya... cada cambio de idioma, palabra fuera de diccionario, puntuación que no entiende y cada símbolo (y ya no hablemos de usarlo en un terminal SSH, totalmente impracticable) me hace querer cada vez el maravilloso teclado Blackberry. Hay gente que imagina los futuros apocalípticos con inviernos nucleares, desiertos sin agua y ruinas; yo me imagino un mundo de pantallas táctiles donde ni móviles ni ordenadores tengan teclados físicos... y eso me da escalofríos. Si Blackberry se hunde, los terroristas habrán ganado y los pocos que apreciamos teclear estaremos condenados. Antes algún fabricante sacaba terminales Android con teclado físico... malos... pero ahora ya ni eso. En mi desesperación, hasta Typo era una opción.
+
+La única esperanza es que ya sea por un cambio de rumbo o una adquisición, Blackberry (u otro fabricante) comience a sacar móviles decentes Android con formato Blackberry. Igual porque Blackberry esté a punto de la quiebra, o porque los rumores de que Samsung la compre sean ciertos y decidan hacer algo arriesgado. ¿Pero quién haría eso si no se compran móviles QWERTY?
+
+En fin, una decisión dura. Les mantendremos informados.
+
+
+=> http://alex.corcoles.net/2011/06/dinosaurios-que-rondan-la-tierra/ 1: http://alex.corcoles.net/2011/06/dinosaurios-que-rondan-la-tierra/
+=> http://alex.corcoles.net/2012/07/si-sigo-usando-una-blackberry/ 2: http://alex.corcoles.net/2012/07/si-sigo-usando-una-blackberry/
+=> http://alex.corcoles.net/2013/12/mi-carta-de-navidad-a-los-reyes/ 3: http://alex.corcoles.net/2013/12/mi-carta-de-navidad-a-los-reyes/
+=> http://alex.corcoles.net/2014/04/tengo-dos-moviles/ 4: http://alex.corcoles.net/2014/04/tengo-dos-moviles/
+=> http://www.gsmarena.com/blackberry_classic-review-1186p3.php 5: http://www.gsmarena.com/blackberry_classic-review-1186p3.php
+=> http://alex.corcoles.net/2013/12/mi-carta-de-navidad-a-los-reyes/ 6: http://alex.corcoles.net/2013/12/mi-carta-de-navidad-a-los-reyes/
\ No newline at end of file
--- /dev/null
+# Clásicos de ayer y de hoy
+2015-03-02
+
+Tras toda una saga (1[1], 2[2], 3[3], 4[4] y 5[5]), hace casi un mes desembolsé unos dolorosos 400€ y pico euros (menos 5% de descuento directo y 5% de indirecto aprovechando un día especial FNAC) y me hice con la ansiada Classic.
+
+El resumen para los que no quieran tragarse la parrafada:
+
+* ¿Debo comprarme este móvil? Si te sientes limitado en los móviles táctiles y te gustaría llevar encima un dispositivo pelín más parecido a un portátil y aceptas conscientemente las limitaciones del ecosistema Blackberry, deberías al menos plantearte una BlackBerry Passport o una Classic.
+* ¿Es este el móvil que rescatará de la ruina a BlackBerry? No lo creo, su negocio de vender móviles lleva tiempo condenado y no creo que pueda hacerse nada. Yo me lo compro en un intento desesperado de salvar los móviles con teclado físico.
+
+La versión larga...
+
+La BlackBerry Classic es básicamente la Q10 de mediados de abril de 2013 con el "belt" de las BlackBerries antiguas (botón de llamada y colgar, menú, atrás y trackpad)- que pagas a precio de oro (la Q10 está bien por debajo de 300€ ahora mismo, la Classic por encima de 400€). Lo más llamativo, a parte del teclado made-in-BlackBerry es la pantalla cuadrada de 720x720 que va en contra de todo en la época actual. Junto con la Passport, ese aparato de dimensiones extrañas, los dos modelos más importantes de BlackBerry son dos móviles que no se parecen en nada a ningún dispositivo que tenga otro fabricante.
+
+Lo más sorprendente al coger la Classic es el peso; sus casi 180g son notables y dan una sensación de cazabombardero ruso- arcaico, pero bien construido y fiable. No parece haber nada en el cacharro que explique el peso- personalmente creo que han metido algo pesado para conseguir este efecto, y no me parece mal.
+
+Físicamente, la pantalla de 720x720 se ve muy bien y aún con el brillo al mínimo se puede usar perfectamente al sol, algo que a mi particularmente me encanta- muchos móviles hoy en día parecen ser diseñados para su uso en interiores, algo que no tiene sentido. Debajo de la pantalla hay un estupendo teclado Blackberry, tipo Bold pero recto. Los que no hayáis usado nunca un teclado BlackBerry... es una experiencia la mar de satisfactoria. En bastantes condiciones, un teclado de pantalla táctil tipo Swiftkey puede permitirte entrar texto a una velocidad comparable, pero el clic-clic de las teclitas físicas es extremadamente gratificante. Para situaciones de tecleo más complicadas (querer usar puntuación correcta, mezclar idiomas, introducir cosas tipo comandos en un terminal...), el teclado físico se desmarca a años luz de cualquier sistema táctil: si quieres usar un móvil como terminal de SSH, por ejemplo, con un móvil táctil vivirás la frustración y con un teclado BlackBerry disfrutarás.
+
+Cabe decir que BlackBerry le ha incorporado al teclado funcionalidades predictivas de su supuestamente excelente teclado táctil. Estas están desactivadas por defecto, pero recomiendo encarecidamente activarlas; esto hace que el móvil introduzca acentos cuando no hay ambigüedad y que para ciertas palabras podamos utilizar el autocompletar, que es bastante espabilado y multiidioma (a veces mezcla un poco castellano y catalán- y dado lo poco que escribo en este último estoy tentadísimo de desconectarlo).
+
+Con todo, con este móvil se puede escribir sin siquiera mirar a la pantalla- sólo colocar algún acento ocasionalmente puede romper el flujo (en modelos anteriores tenías que mantener la letra pulsada y usar el trackpad para seleccionar el acento- aquí mantienes la tecla apretada y luego seleccionas el acento en la pantalla táctil- ninguno de los dos modos es perfecto)... todo lo demás puede hacerse mediante memoria muscular- puntuación y combinaciones de teclas pueden memorizarse.
+
+Viene por aquí otro aspecto destacable de la experiencia BlackBerry: los atajos de teclado. En los PCs de escritorio los usuarios intensivos aprendemos rápido combinaciones de teclas que nos permiten concentrar acciones en el teclado y evitar el lento ratón. En la BlackBerry, igual. Pulsar espacio para saltar de página, pulsar k y u en el navegador para ir a los favoritos y a la barra de direcciones, t para responder un correo, etc. son cosas que nos evitan las ineficiencias de las pantallas táctiles y que nos llevan a una experiencia más "de escritorio". Los dispositivos táctiles se están imponiendo, sí, pero los teclados siguen siendo el mecanismo de entrada más ágil y veloz para usuarios intensivos y si bien usar una BlackBerry dista mucho de la ergonomía de un ordenador de escritorio, está muy por encima de la experiencia táctil.
+
+Junto con el teclado y los atajos, tenemos el trackpad. Es quizá el motivo de ser de la Classic- la Passport permite usar la superficie del teclado como panel táctil (algo que me intriga sobremanera), así que los dos nuevos buques insignia de BlackBerry recuperan esta forma de entrada. El trackpad permite un comportamiento más similar a los cursores de un teclado de ordenador. Para moverse por listas de elementos y cuadrículas ofrece una alternativa más que viable a la pantalla táctil con ventajas e inconvenientes- particularmente yo me siento un poco estúpido con los gestos amplios de hacer scroll en pantalla táctil y el trackpad me permite hacer lo mismo con mucho menos movimiento. En el navegador, el trackpad nos permite seleccionar pequeños elementos en páginas web no adaptadas para móvil con agilidad, permitiéndonos evitar el continuo pinch-to-zoom (y alternativos) de los navegadores táctiles. Y por último, editando texto nos permite ahorrarnos los ultrafrustrantes mecanismos de desplazamiento y selección de texto- algo que quizá no sea algo muy frecuente, pero que yo cada vez que tengo que hacer me tiro de los pelos. Con el trackpad es posible moverse con precisión por texto y combinándolo con la tecla shift, podemos marcar texto ágilmente.
+
+Es ciertamente extraña la combinación de panel táctil y trackpad, y hay aspectos del interfaz (y muchísimas aplicaciones, especialmente las de Android) que no están adaptados al trackpad. Puede parecer que tener dos mecanismos de entrada parecidos es redundante y tonto, pero para ciertos escenarios, es una bendición disponer de ambos (en parte, sí, porque la pantalla táctil es relativamente pequeña, pero principalmente porque para que según que cosas el trackpad es superior).
+
+Estos tres elementos (teclado, trackpad y atajos) son el principal argumento a favor de la Classic: un intento de superar las limitaciones de los dispositivos móviles y ofrecer una experiencia más rica. Personalmente, creo que es algo fantástico que cambia la manera de usar el móvil- la mensajería instantánea y el email se ven inmediatamente mejorados y potenciados- escribir una respuesta larga a un email deja de ser una experiencia frustrante que posponemos hasta estar cerca de un ordenador, dejamos de pervertir el lenguaje con el feo lenguaje abreviado propio de los móviles y podemos darle usos al teléfono, como de terminal de SSH que serían una tortura si tuviésemos que teclear sobre una pantalla táctil.
+
+¿Y por lo demás?
+
+Pues comenzando por lo bueno, BB10 es un sistema operativo la mar de majo. El sistema de multitarea es muy interesante, los gestos para cambiar de aplicación y demás son un poco marcianos, pero una vez uno se acostumbra son naturales y rápidos. Pese a la CPU poco potente, los dos 2gb de RAM con los que cuenta hacen que todo vaya fluido y el navegador sea tremendamente rápido hasta con páginas no adaptadas para móvil. Las aplicaciones básicas tipo Whatsapp, Twitter, Facebook, etc. están muy bien integradas, y el cacareado hub que unifica todas las comunicaciones funciona realmente bien. Es un sistema operativo centrado en la productividad y se nota.
+
+BB10 introduce un par de características de integración con ordenador muy llamativas. Blend es una aplicación para Windows, Mac, iOS y Android que permite controlar la BlackBerry desde esos dispositivos, usando el correo y datos de la aplicación, transferir archivos, etc. La verdad que como usuario de Linux probé Blend en una máquina virtual y esto hizo que no me fuera nada conveniente- quizás los usuarios de un sistema operativo soportado por Blend lo vean más práctico, pero yo en principio lo vi limitadillo (no se integra con todas las aplicaciones, por ejemplo- nada de responder a un mensaje de Whatsapp por Blend). Pero la otra sí me resultó más cómoda- con un par de clics se puede activar un servidor de CIFS en la BlackBerry. CIFS es el protocolo de compartir archivos en red de Windows, soportado por la mayoría de sistemas operativos. Con esto activado, podemos acceder transparentemente y sin cables a los archivos guardados en la BlackBerry- algo que requiere aplicaciones adicionales en otros dispositivos móviles. Aunque es un pelín lento, es fantástico poder copiar archivos de un sitio a otro rápidamente sin tener que trajinar cables y sin tener que usar herramientas- podemos arrastrar archivos sin problemas.
+
+Adicionalmente, salvo que los primeros días tuve un par de sustos con la batería, a partir de entonces la batería me ha ido fenomenalmente bien. Mi patrón de uso actual es un stress test en toda regla de la batería: me paso dos horas diarias en el metro de Barcelona haciendo uso intenso de datos; dada la pobre cobertura del metro, esto tortura la batería intensamente. Así, en cada trayecto me como un 20-25% de la batería. Adicionalmente, paso alrededor de media hora llamando. Y para acabarlo de adobar, no utilizo wifi en la oficina sino que sigo con conexión móvil, lo cuál es evitar un importante ahorro de batería. Con todo esto, tras casi 12h fuera de casa suelo llegar con 20-40% de batería, lo cuál debería significar que aunque la batería de la Classic no es extraíble, debería permitirme usar el móvil cómodamente durante bastante tiempo (crucemos los dedos).
+
+Los problemas viene por otro lado.
+
+Las aplicaciones. Sí, los cacareados ecosistemas importan. La verdad, yo personalmente sólo tengo que tirar de un par de aplicaciones Android (Feedly, Moovit, VX ConnectBot y Our Groceries [lista de la compra]). De esta sólo Feedly me molesta por no estar muy adaptada (si se pudiese usar el trackpad ganaría muchísimo), el resto tiran bien y hasta se adaptan bien. Pero el gran problema viene con Google.
+
+GMail y Google Calendar más o menos bien. El mayor problema es con GMail, ya que el cliente de correo BlackBerry no tiene noción de archivar. Podemos configurarlo de manera que al borrar un mensaje quede archivado si queremos, pero entonces no podremos borrar. Puede que para otros no sea problema, pero a mi me gusta borrar el correo no importante (listas, notificaciones, etc.) y archivar todo lo demás, y en la Classic es imposible (y tenemos que recurrir al PC). Los grandes ausentes son Google Maps y Hangouts. Google Maps no está y si bien la versión web es mejor de lo que uno imaginaría, no está al nivel de la aplicación- yo al final acabo tirando de Moovit que no es ideal (se supone que Nokia Here es la leche y está en la appstore de Amazon, pero a mi no me sale por ningún lado). Hangouts... BlackBerry nos da un cliente de Google Talk, pero el futuro de Google Talk es incierto y además, no tiene la "adaptación a móvil" de Hangouts (o Whatsapp, o BBM, etc.), y usar mensajería instantánea no adaptada a móvil es un ejercicio frustrante (el check y el doble check de BBM, popularizado por Whatsapp, es esencial). Tampoco hay Chromecast :(
+
+La verdad que fuera del ecosistema Google no echo en falta mucho más, pero... no tener Google Maps duele (lógicamente tampoco hay Google+, pero sinceramente, es Google+). Es posible que vuestro caso sea diferente al mío- por ejemplo yo paso de Instagram, pero para los fans de Instagram, sólo hay clientes no oficiales.
+
+Lo otro gordo es "la multimedia". Sí, la pantalla cuadrada no es ideal para ver vídeos. Yo la verdad que para ver el vídeo esporádico me apaño perfectamente, el reproductor coge los formatos habituales, soporta subtítulos y está bastante bien. Y si quiero ver algo más grande, uso el televisor que tengo en el salón, que ve mucho más grande que hasta el más grande de los "phablets" (eso sí, sin Chromecast ahí se pierden puntos).
+
+La cámara también es bastante meh. Yo tengo un pulso horrible y es difícil sacar fotos decentes- o la tiro con flash y sale flasheada o la tiro sin flash y sale movida. La aplicación de cámara trae una pijada de timeshift que pinta muy bien (detecta caras, saca varias fotos y para cada cara te permite escoger entre las diversas fotos- así es posible sacar una foto de grupo y poder evitar individualmente guiños o muecas extrañas), pero que no no he sido capaz de usar satisfactoriamente (una vez más, cuestión de templeque manual). La cámara es lentita enfocando y tampoco tiene más. Dicen que tiene un muy buen HDR, pero yo no lo he visto.
+
+En definitiva y resumiendo un poco:
+
+* Teclado, trackpad y otros elementos que me eliminan muchas experiencias frustrantes en dispositivos móviles
+* Sistema operativo cuidado y fluido pese al hardware relativamente caduco. Navegador sobresaliente
+* Aplicaciones básicas proveídas por BlackBerry bastante decentes
+* Transferencia de archivos a PC exquisita de fábrica
+* Batería sobrada para aguantar un día de uso muy intenso, pero no extraíble
+* No tiene Google Maps nativo (sólo web, que no va tan mal como parece), cliente de Google Talk pero no Hangouts, nada de Hangouts y en definitiva, pobre "experiencia Google".
+* Pantalla pequeña para los que les gusta ver vídeos en móviles grandes cuya pantalla es varios órdenes de magnitud más pequeña que una tele
+* Cámara mediocre
+
+Para mi, la Classic está muy cerca de ser el móvil ideal. Si BlackBerry se hubiese decidido por una experiencia más Google (usar Android de base, acatar las condiciones de Play Store), probablemente sería casi perfecto. Los otros fallos son la cámara (que es pasable) y la batería no extraíble, que podría no ser problema. No es un móvil para todos los públicos, pero para su público es un móvil excelente. El mayor problema, sin embargo, es el futuro incierto de BlackBerry...
+
+
+=> http://alex.corcoles.net/2011/06/dinosaurios-que-rondan-la-tierra/ 1: http://alex.corcoles.net/2011/06/dinosaurios-que-rondan-la-tierra/
+=> http://alex.corcoles.net/2012/07/si-sigo-usando-una-blackberry/ 2: http://alex.corcoles.net/2012/07/si-sigo-usando-una-blackberry/
+=> http://alex.corcoles.net/2013/12/mi-carta-de-navidad-a-los-reyes/ 3: http://alex.corcoles.net/2013/12/mi-carta-de-navidad-a-los-reyes/
+=> http://alex.corcoles.net/2014/04/tengo-dos-moviles/ 4: http://alex.corcoles.net/2014/04/tengo-dos-moviles/
+=> http://alex.corcoles.net/2015/01/igual-deberia-comprarme-una-blackberry-classic/ 5: http://alex.corcoles.net/2015/01/igual-deberia-comprarme-una-blackberry-classic/
\ No newline at end of file
--- /dev/null
+# Debian GNU/Windows
+2015-04-11
+
+Aunque muchas veces digo que soy usuario de Linux (desde 2002 en casa, 2011 en el trabajo), la verdad es que lo que soy es usuario de Debian (también uso CentOS en algunos servidores).
+
+Debian aspira a ser el sistema operativo universal- su versión "testing" contiene la friolera de 58.000 paquetes de software, que incluyen un entorno tipo UNIX y el kernel de Linux, todo en un formato fácilmente instalable. Cantidad no equivalente siempre a calidad, pero al menos para mi, Debian cubre prácticamente todas mis necesidades informáticas con un coste mínimo en tiempo y dinero: en un momento tengo acceso a la mayoría del software que necesito en un entorno eficiente y agradable.
+
+Sin embargo, el mundo de la informática de escritorio sigue dominado por Microsoft Windows. Es un sistema que he usado bastante y realmente tiene muchas virtudes, pero para mi su mayor defecto es que no es Debian. Windows dispone de mucho software interesante que no se puede usar en un sistema Debian, sí- pero Debian también tiene mucho software que es una lata utilizar en Windows- especialmente el que compone el entorno "UNIX" de GNU (los shells y utilidades, que uso intensivamente).
+
+Son dos filosofías completamente diferentes. Debian aspira a empaquetar todo el software libre del universo (e incluso no libre) y Windows te proporciona un sistema operativo y unas migajas de software para que te busques la vida.
+
+¿No podemos tener lo mejor de cada mundo?
+
+Hasta ahora, obtener los beneficios de Windows y Debian suponía mantener dos sistemas. Yo personalmente tengo máquinas virtuales Windows que utilizo para acceder a software que sólo está disponible en Windows- como Microsoft Office, pero en general evito en la medida de lo posible usar Windows porque es un tostón trabajar dentro de una máquina virtual y por tanto aprovecho poco todo el software disponible para Windows.
+
+Ahora bien, Microsoft está cambiando y comienza a contemplar Linux como algo diferente a un enemigo a destruir. Curiosamente, Microsoft parece escoger Debian cuando comienza a acercarse a Linux (sin ir más lejos, han sacado un contenedor Docker para ejecutar aplicaciones de ASP.NET que es Debian Wheezy[1]).
+
+Por otra parte, Debian está preparada para correr bajo otros sistemas operativos. Sin ir más lejos Debian GNU/kFreeBSD es Debian corriendo sobre FreeBSD. También anda por ahí un intento de ejecutar Debian sobre Hurd, el kernel de GNU que quizá algún día sea relevante.
+
+¿Por qué no Debian GNU/Windows?
+
+Existen "distribuciones" para Windows, como por ejemplo Cygwin y MinGW/MSYS, que traen mucho del software GNU y del que incluye Debian, pero que palidecen en comparación con Debian- mucho menos software y mucho menos cariño en su mantenimiento.
+
+No existen imposibles para correr Debian sobre Windows- se requeriría un enorme esfuerzo y hay aún muchas diferencias políticas a limar, pero un Windows, con su enorme soporte de hardware y el acceso a mucho software importante, con un entorno Debian encima sería un entorno que me tentaría seriamente a abandonar Linux.
+
+En este mundo extraño con un Microsoft desconocido que saca software para sus competidores y que emplea Linux... no es algo completamente descabellado.
+
+...
+
+Postdata: soy plenamente consciente que OS X sería una alternativa a Windows en un escenario así. Sin embargo, debo decir que prefiero Windows. Apple y su entorno comienza a disgustarme más de lo que me disgustaba Microsoft. Y desde luego, creo que Apple sería infinitamente menos cooperativa.
+
+
+=> https://github.com/aspnet/aspnet-docker/blob/master/nightly/Dockerfile 1: https://github.com/aspnet/aspnet-docker/blob/master/nightly/Dockerfile
\ No newline at end of file
--- /dev/null
+# Mi opinión sobre unos cuantos lenguajes de programación
+2015-08-14
+
+(sobre el TIOBE de Agosto 2015, básicamente).
+
+Java: junto con PHP, uno de los lenguajes más denostados del mundo. A diferencia de PHP, probablemente una de las mejores opciones disponibles para hacer software grande y complejo y no morir en el intento. Hay una escasez de lenguajes de tipado estático populares en el mundo y si no nos queremos ir a Microsoft, Java cuenta con un ecosistema brutal, da un rendimiento sobresaliente y se aprende fácilmente. Pero no es chachi.
+
+C: el lenguaje que todos adoramos hasta que lo tenemos que usar en serio. Afortunadamente es el siglo XXI y la mayoría de nosotros no tenemos que recurrir a él. Eso sí, le debemos todo y aunque ya no domina el mundo, sus descendientes han heredado el trono.
+
+C++: uno de esos lenguajes que siempre quiero aprender pero con el que nunca me pongo. El C++ auténtico se desliza entre la elegancia y potencia y el jeroglífico más ofuscado. Lamentablemente, no hay tiempo en esta vida para aprender todo lo que se necesita para programar bien en C++.
+
+C#: el Java mejorado de Microsoft. Pero aunque lo estén abriendo, para disfrutarlo plenamente aún cuesta dinero. Sí, sé que cuesta poco para lo que vale, pero habiendo opciones gratuitas, ¿por qué molestarse?
+
+Python: de los débilmente tipados, mi favorito. Un diseño bastante sencillo y ortogonal, alguna rareza por ahí pero en principio la mejor herramienta en muchas situaciones. Y si uno desarrolla web, el admin de Django es lo más disruptivo que existe en el terreno.
+
+Objective-C: hasta Apple ya se ha dado cuenta que debe morir.
+
+PHP: el horror. Cada característica de PHP cuenta con un problema fundamental, pero la gente insiste. Pero existe Wordpress, Magento y tantos CMSs que es inevitable caer en sus redes de cuando en cuando.
+
+VB.NET: C# con sintaxis de BASIC. No, gracias.
+
+JavaScript: el lenguaje más accidentalmente popular del mundo. En realidad no es tan malo (salvo los callbacks en callbacks de callbacks) pero tampoco es bueno, y mucho menos como para que se intente que conquiste el mundo.
+
+Perl: aguanta ahí, así como sus fieles. Excelente para ofuscar, confundir y compactar- aún no le he encontrado otra virtud.
+
+Ruby: el sucesor de Ruby. Tiene su propio estilo de ofuscación- la maleabilidad es como la etimología indica, mala.
+
+Haskell: posiblemente, el lenguaje más académico que es medianamente conocido y que goza de un buen ecosistema. Sus virtudes son incontestables, pero las profundidades teóricas en las que hay que sumergirse para entender sus conceptos más básicos es aterradora. La evaluación "perezosa" permite a su vez expresar algoritmos de maneras inimaginablemente elegantes pero hace que razonar sobre el tiempo y espacio de ejecución de un algoritmo sea doloroso.
+
+Bash: posiblemente el mejor lenguaje de propósito específico que existe. Lo que se puede conseguir con unos comandos y unos pipes en un par de líneas y el mejor REPL del mundo hace que sea la herramienta más rápida para un número no despreciable de problemas. Eso sí, el lenguaje que peor escala del mundo.
+
+SQL: el único lenguaje con un movimiento anti oficial. El modelo relacional es de momento el mejor sistema modelado que existe, las bases de datos relacionales de las plataformas más evolucionadas y eficientes del mundo y sin embargo... nadie quiere escribir SQL, todo el mundo prefiere escribir 10 veces más código en lenguajes menos apropiados para lo que necesitan.
\ No newline at end of file
--- /dev/null
+# Por qué no uso productos Apple
+2015-12-19
+
+En un mundo en el que el iPhone es el modelo de teléfono más vendido y parece que una inmensa cantidad de desarrolladores de software utiliza ordenadores Apple, a veces uno se siente necesitado de justificar por qué no usa ningún producto de esta compañía. Aquí va, para facilidad de referencia.
+
+## La censura no mola
+
+Apple desea controlar lo que el usuario de sus dispositivos puede ver y no ver. El ejemplo más claro es la prohibición de pornografía en la App Store. Si bien es su tienda y pueden poner sus reglas, y puede parecer una política respetable, sigue siendo censura y control. Me parece perfecto que se etiqueten los contenidos que pueden ser malignos (obviamente no digo que la industria pornográfica sea un nido de virtud, más bien al contrario) e incluso los que puedan ofender la sensibilidad de unos pocos- y incluso creo que es levemente defendible que el responsable de un menor pueda intentar bloquear el acceso de ciertos materiales a éste [aunque personalmente no esté de acuerdo], pero estoy firmemente opuesto a que una empresa intente restringir lo que puedo hacer con su dispositivo.
+
+Entiendo que los dispositivos iOS disponen de navegadores que hacen que estas restricciones sean más bien un brindis al sol, pero temo que Apple no haya extendido estas restricciones a la totalidad del dispositivo no por falta de ganas sino por la imposibilidad de hacerlo.
+
+Si bien los inicios de la censura suelen ser por motivos loables, el uso de ella es incorrecto de por sí por más de acuerdo que podemos estar con la indeseabilidad del material bloqueado, ya que la voluntad de usar la censura se extiende fácilmente a otros materiales cuya indeseabilidad es mucho más relativa o incluso incorrecta. El hecho de que dispongamos alternativas que nos permitan sortear esta censura tampoco las justifica- la censura es malvada y la única manera de que avance es cortándola de raíz antes de que sea inevitable.
+
+## La libertad de desarrollo
+
+Como desarrollador de software, creo que los dispositivos programables son uno de los grandes avances de la humanidad, quizá no a la altura del agua corriente o la higiene, pero sin duda con el potencial de hacer del mundo un lugar mejor. Recuerdo con cariño el Commodore 64 de mi infancia que arrancaba directamente a un interprete de BASIC y que permitía distribuir el software que uno mismo desarrollaba grabándolo en una cinta de cassette de coste mínimo.
+
+Si bien los ordenadores Apple con OS X hasta vienen con herramientas de desarrollo incluidas, la punta de lanza de Apple son sus dispositivos más vendidos, los que usan iOS donde la situación de desarrollo es totalmente diferente. Para desplegar las aplicaciones que desarrollamos sobre hasta 100 iPhones, debemos ser desarrolladores registrados por Apple, lo que tiene un coste y requiere aprobación (dudo mucho que rechacen muchas solicitudes, pero aún así, pueden hacerlo). Si queremos que use nuestro software más de 100 personas, debemos pasar inevitablemente por la App Store y que Apple examine y apruebe nuestra aplicación.
+
+Es decir, no podemos desarrollar software para iPhone y que sea usado por más de 100 personas si este software no es del agrado de Apple- según unos criterios que además son poco transparentes- para lo cual deben tener acceso completo a él.
+
+Esta restricción de la libertad de desarrollo de software me parece completamente draconiana e inaceptable- y extremadamente dañina si se extendiese, por lo cuál una vez más creo que debe ser cortada de raíz.
+
+## Apple ya tiene suficiente dinero
+
+Apple gana mucho dinero. Muchísimo. Tiene un margen comercial más amplio que sus competidores. A igualdad de condiciones, si la empresa A tiene un margen del 15% y la empresa B tiene un margen del 30%, voy a comprar el producto de la empresa A. Si bien la eficiencia en la producción de Apple muchas veces significa que los precios de Apple son competitivos (durante mucho tiempo, el Macbook Air de 13" era imbatible en calidad/precio, y sigue dando mucha guerra), en muchas ocasiones los precios de Apple coloca a sus productos en el segmento de lujo que yo no puedo justificar.
+
+## Apariencia sobre utilidad
+
+Con la famosa batería del iPhone, el cargador del Magic Mouse y el lapiz del iPad Pro, últimamente se hace mucho cachondeo sobre la supuesta caída en picado del diseño de Apple. La verdad, no creo que sea algo nuevo.
+
+Hace mucho, mucho tiempo que me compré mi primer producto Apple, un Mighty Mouse que en vez de ruedecilla tenía una bolita que permitía hacer scroll en dos dimensiones, una idea que me intrigaba sobremanera. Sin embargo, al cabo de muy poco tiempo descubrí que el mecanismo de la bolita acumulaba suciedad sin que hubiese un mecanismo razonable para limpiarla, con lo que el ratón murió prematuramente. Una idea cojonuda pero mal ejecutada.
+
+Veo en los productos de Apple pantallas ultrabrillantes con insoportables reflejos, portátiles innecesariamente delgados (el peso de un portátil importa mucho, que sean finos no aporta nada) que tienen teclados sin profundidad (el teclado del nuevo Macbook es realmente terrible), insistencia en los touchpad cuando los ratones y trackpoints son superiores, teclados a los que les faltan teclas vitales (reemplazando la útil "suprimir" por una peligrosísima tecla de apagado), etc. etc. Apple sacrifica constantemente la utilidad por la apariencia, y yo uso los ordenadores, no los contemplo.
+
+## El camino de la verdad y la virtud
+
+Apple tiene claro cómo quiere que el usuario interactúe con sus dispositivos. Más allá de su deseo de controlar los contenidos y software que se pueden experimentar, también tiene una idea clara de los patrones de uso. Si bien debo decir que seguramente su visión sea de las más claras y coherentes del mercado y que su persecución de la simplicidad es acertada en la mayoría de los casos, uno no puede evitar pensar que para usar adecuadamente un producto Apple uno debe convertirse a su verdadera religión y su manera de hacer las cosas.
+
+Creo que diferentes personas prefieren interactuar con los ordenadoras de diferentes maneras, y que cada uno puede encontrar la manera de trabajar más eficiente para él. Puede que lo haga para fastidiar, pero uso un entorno de escritorio muy peculiar (un "tiling window manager"), utilizo un móvil con teclado físico, prefiero las líneas de comandos y adoro los trackpoints. Apple reduce su diversidad al máximo y si quisiese adoptar sus productos, tendría que renunciar a muchas de estas cosas, ya que Apple nunca se dedicará a ellas. Y si bien su visión es completa y poderosa, a mi no me convence.
+
+## Prefiero el software libre
+
+Como programador creo que el software libre es una alternativa muy atractiva al software propietario. Los intereses comerciales raramente se alinean con los de los usuarios (podría parecer que sí, y a veces coinciden, pero no), mientras que si el usuario puede participar activamente en el desarrollo del software, esta alineación es más probable. Mis experiencias en este sentido han sido muy positivas- he conseguido influir en el desarrollo de software que utilizo para obtener arreglos y mejoras que me han beneficiado directamente, algo que creo es muy complicado con el software propietario.
+
+Adicionalmente, también me he beneficiado de poder estudiar y analizar código publicado por terceros, y creo que es una poderosa herramienta de aprendizaje para los nuevos desarrolladores de software.
+
+Así pues, en la medida que sea posible utilizo software libre. Si bien Apple coopera con el software libre en ocasiones, lo hace a regañadientes y primando su interés comercial por encima de todo- y por supuesto, la mayoría del software que desarrolla no es libre.
\ No newline at end of file
--- /dev/null
+# Han aprendido a llevar los calzoncillos por dentro
+2016-04-10
+
+Comentando por un colega, mi ránking de pelis de superhéroes necesita una actualización:
+
+1. X2
+2. Iron Man
+3. Hellboy
+4. Watchmen
+5. **Deadpool**
+6. The Dark Knight
+7. The Avengers
+8. X-Men: Primera Generación
+9. Hulk (2003)
+10. Batman
+11. **X-Men: Días del Futuro Pasado**
+12. Spider-Man 2
+13. X-Men
+14. Batman Begins
+15. Spider-Man
+16. Batman Returns
+17. Avengers: Age of Ultron
+18. Iron Man 2
+19. X-Men Origins: Wolverine
+20. X-Men: The Last Stand
+21. The Punisher (1989)
+22. Thor
+23. Blade
+24. Elektra
+25. The Green Hornet
+26. Fantastic Four
+27. The Green Lantern
+28. Daredevil
+29. Superman Returns
+30. The Incredible Hulk
+31. Superman
+32. Spider-Man 3
+
+Si añadimos series de TV la cosa está parca, así que:
+
+1. Jessica Jones
+2. Daredevil
+3. Agents of S.H.I.E.L.D
+4. Heroes S01
+5. Heroes S02-S04
+6. Heroes Reborn
+
+y me estoy temiendo que ahora que Hunter/Morse ya no están en S.H.I.E.L.D tendré que considerar S.H.I.E.L.D pre-Most Wanted y post-Most Wanted.
\ No newline at end of file
--- /dev/null
+# ¿Quién me convenció para que fuese a ver una peli del Capitán América?
+2016-05-08
+
+Pues yo mismo, la verdad. Me comí eso de que todo el mundo proclama que es el segundo advenimiento con patatas.
+
+Lo bueno es bueno; pese a ser una especie de Los Vengadores Light (sin Hulk, sin Thor y, sobre todo, sin S.H.I.E.L.D., me falta Fury, Coulson o incluso la agente Robin Sparkles- los agentes siempre animan cualquier cotarro), la acción supera por momentos a las entregas anteriores de los Vengadores- la escena del aeropuerto combina la buena variedad de poderes con mucha gracia, especialmente los de Ant-Man y Spider-Man que dan mucho juego. También sale Pantera Negra que, aunque no explota todo su potencial, resulta efectivo y aporta algo nuevo.
+
+Pero.
+
+Pero lo de Guerra Civil se queda un poco en partido de solteros contra casados- es cierto que el hecho de que le falta dramatismo porque el hecho de que el malo quiera arrancarle los ojos al bueno le da cierta tensión a la cosa, y si ni la mismísima Viuda Negra (que a priori es la que tiene más potencial de hacer cosas no precisamente heroicas) se ablanda a las primeras de cambio...pues esto le quita un poco de emoción al asunto. A parte de que uno ya se va acostumbrando a ver en el cine superpeleas y cada vez necesita algo más grande para saltar del asiento.
+
+Sobre la aparición de Spider-Man soy un poco ambivalente. En una peli con tanto superhéroe es difícil sacar al Peter Parker del gran poder conlleva una gran responsabilidad con un poco de coherencia, con lo que la versión adolescente flipado es probablemente la aproximación más apropiada y cabe decir que consigue infundirle el humor y desparpajo del cómic que el resto de pelis del trepamuros no habían conseguido sacar. Eso sí, sigo pensando que los guionistas de Deadpool realmente serían capaces de clavar el Spider-Man cachondo que es tan peligroso por sus cabriolas como por sacar al malo de turnos de sus casillas con dos chascarrillos hábilmente colocados. Habrá que ver cómo salen las siguientes películas (la verdad, las dos primeras de Tobey Maguire me gustaron, pero no me mataron. La tercera me mató y no me he atrevido a ver las de Andrew Garfield).
+
+En fin, que sí, que se puede ver Civil War. Pero id con las expectativas ajustadas.
+
+El ránking queda:
+
+1. X2
+2. Iron Man
+3. Hellboy
+4. Watchmen
+5. Deadpool
+6. The Dark Knight
+7. The Avengers
+8. X-Men: Primera Generación
+9. Hulk (2003)
+10. Capitán America: Civil War
+11. Batman
+12. X-Men: Días del Futuro Pasado
+13. Spider-Man 2
+14. X-Men
+15. Batman Begins
+16. Spider-Man
+17. Batman Returns
+18. Avengers: Age of Ultron
+19. Iron Man 2
+20. X-Men Origins: Wolverine
+21. X-Men: The Last Stand
+22. The Punisher (1989)
+23. Thor
+24. Blade
+25. Elektra
+26. The Green Hornet
+27. Fantastic Four
+28. The Green Lantern
+29. Daredevil
+30. Superman Returns
+31. The Incredible Hulk
+32. Superman
+33. Spider-Man 3
\ No newline at end of file
--- /dev/null
+# El retorno (demorado) del Thinkpad
+2016-07-31
+
+Allí por 2005, enamorado por los portátiles negros que pululaban por la oficina fuera de mi alcance, me compré un hermoso Thinkpad T42 por unos significantes 1400€. Un hermoso aparato, de los últimos en ser fabricados por IBM, con una espectacular pantalla 4:3 de 1400x1050 y que le daba mil vueltas al portátil Dell que sustituyó (carísimo por tener una tarjeta gráfica, pero en todos los demás aspectos, bastante mediocre). En aquella época, las prestaciones de los ordenadores aún progresaban rápidamente, así que unos 5 años después decidí pasarme a una combinación de sobremesa y un netbook, que me ofrecía un sistema más potente para el trabajo serio y para usar de servidor 24x7 y un sistema ultraligero (1,1kg, la mitad de los 2,2kg del Thinkpad- y con 5 horas de batería que superaban la muy deteriorada batería de 5 años del T42) para el uso fuera de casa o en el sofá- por un precio muy económico.
+
+Pero, unos 6 años después de eso, la progresiva obsolescencia del EEE y las prometedoras reseñas del Thinkpad 13 me llevaron a volver a dar una vuelta a mi parque informático.
+
+Es glorioso volver a tener un portátil de verdad. Es glorioso volver a usar tener un Thinkpad.
+
+El Thinkpad 13 es un portátil de gama media, sí- el mío cuesta 680€, por encima de los 200-400€ que cuestan los ultraportátiles que heredan la tradición de los netbooks (pero al parecer menos infrahumanos) y de los 300-500€ de los tochos de 15", pero por debajo por ejemplo de los 1100€ del Macbook Air de 13", espacio por donde deambulan la mayoría de portátiles que comienzan a valer la pena.
+
+Sin embargo, el 13 es un Thinkpad con puntos de gama alta. Tiene opción de pantalla 1920x1080 en vez de los mediocres 1366x768 de los portátiles de gama baja. Pesa 1,4kg y tiene una batería generosa (11 horas según Lenovo, 9 horas según reseñas) que lo hacen realmente portátil y no portable. Y por supuesto, tiene el glorioso diseño Thinkpad, que incluye un delicioso teclado y el sobresaliente Trackpoint entre las teclas G, H y B.
+
+Así pues, espoleado por el hype, puse mi pedido en lenovo.es. La primera en la frente fue el tiempo de entrega, que de las 1-2 semanas prometidas paso a casi dos meses, al parecer por escasez de paneles Full HD. En mi caso sólo fue maltrato psicológico y me supuso un descuento de 35€ (¡reclamadlo!), pero en el caso de que hubiese necesitado el portátil con cierta urgencia, me hubiese abocado a una cancelación.
+
+Pero finalmente llego. Sobre el modelo base, con la pantalla Full HD, 8gb de RAM (en un módulo- se puede abrir y meter otro para subirlo a 16gb), SSD de 128gb (tengo almacenamiento en otros sistemas, pero para muchos pueden ser escasos) y un i3 (el base es un Celeron).
+
+La primera impresión es... de contundencia. Es mucho más grueso que el típico ultrabook de 13", pesa más y "abulta" más; parece mucho más tocho de lo que es si lo pones al lado de otro portátil, por tener un diseño muy cuadrado. Sin embargo, es cómodamente portátil y realmente no pesa tanto como para que moleste.
+
+Además, su grosor le permite tener un teclado con un recorrido generoso que aunque quizá no sea el segundo advenimiento que prometen las reseñas, es ciertamente de lo más ergonómico que uno podría desear en un portátil. Teclear es rápido, preciso y sobre todo, placentero. La disposición del teclado es bastante digna, salvo algunos detalles:
+
+* La tecla Fn está en la esquina inferior izquierda del teclado y Ctrl a su derecha, al revés que en la mayoría de portátiles. Dado que tengo que usar a diario otro portátil con la disposición normal, tuve que intercambiarlas en la BIOS para no volverme loco, aunque quizás la disposición que trae sea más cómoda
+* Las teclas de avance/retroceso de página están encima de los cursores laterales y son muy fáciles de pulsar accidentalmente
+* La disposición de los Thinkpads clásicos con 7 filas de teclas en vez de 6[1] es claramente superior
+
+Pero aún con eso, es mucho más agradable teclear en el Thinkpad que en el más que decente teclado de mi Toshiba Z30 laboral, los Air de 13" o el terrorífico teclado de los nuevos Macbook.
+
+Completando el teclado, tenemos el trackpoint, que para muchas funciones es más práctico que el touchpad, por el hecho de no tener que apartar las manos del teclado para usarlo y un touchpad bastante potable. Yo soy un fan de los trackpoint (aunque a menudo uso el touchpad para hacer scroll) y para mi es un punto muy a favor del portátil- creo que todo el mundo debería usar uno durante un tiempo prolongado para apreciarlos.
+
+La nota negativa es el botón de encendido, que todas las reseñas apuntaban como terrible y que confirmo. No es fácil de pulsar y hay que acostumbrarse a un movimiento bastante específico para pulsarlo. Obviamente no es algo crítico, pero sí una pequeña mancha que desentona el elevado nivel general del aparato.
+
+Luego viene la pantalla, culpable de la terrible demora en poder tener el juguete en mis manos por sus 1920x1080. Debo decir que desde que disfrutaba del 1400x1050 en 14" de mi añorado T42 debo haber perdido agudeza visual, porque he tenido que ampliar tamaños de letra para trabajar con comodidad, perdiendo un poco la mayor densidad de información que permiten los 1920x1080 en 13". Pero bueno, la ampliación no era muy costosa, así que aunque no la aproveche al máximo, la nitidez extra de la imagen ya vale bastante la pena.
+
+En cuanto a puertos tiene 3 USB normales (uno a la izquierda, dos a la derecha) que al parecer son always-on (puedes cargar el móvil aunque el portátil esté apagado), un HDMI tamaño completo, auriculares (con micrófono), un USB-C y un conector propio de Lenovo para dock. Tengo curiosidad por las prestaciones del USB-C; no queda claro si puede usarse para sacar displays y carga simultánea, lo que daría pie a interesantes soluciones de docking de bajo coste y, en un futuro cercano, usar un único cargador para portátil y móvil, pero aún no lo he podido estudiar (e internet no es clara respecto a este punto). El dock propietario es una opción interesante, pero que de momento tampoco voy a explorar.
+
+En uso el sistema es lo que uno esperaría- no tiene ningún problema destacable y cumple su función. Linux funciona sin demasiados problemas, aunque la pureza ideológica de Debian hace que instalar el firmware propietario de la tarjeta de red inalámbrica no sea inmediato (la operación es sencilla, pero hay que hacerla. Al parecer la mayoría de otras distribuciones incluyen el firmware de serie e incluso hay un instalador de Debian no completamente oficial que lo trae). La construcción del sistema no es tan lujosa como los Air o los Thinkpad de gama alta, pero da bastante sensación de solidez y robustez, aunque obviamente no lo he puesto a prueba- dice el fabricante que ha pasado certificación militar y pruebas de estrés, pero otra cosa es lo que pasa si se te cae al suelo...
+
+En resumen, si queréis un portátil que esté un paso por encima de los portátiles baratos, pero no os queréis gastar la pasta que cuesta un Macbook Air o equivalente, el Thinkpad 13 es una opción espléndidamente equilibrada. Es muy portátil, potente y de calidad. Si además sois fans de los Thinkpad, por el trackpoint o el distintivo diseño, más puntos a favor.
+
+
+=> http://www.studentbuyingguide.com/wp-content/uploads/2011/04/img-04971.jpg 1: http://www.studentbuyingguide.com/wp-content/uploads/2011/04/img-04971.jpg
\ No newline at end of file
--- /dev/null
+# El más acá de Star Trek
+2016-09-04
+
+Vaya por delante que uno es de Star Wars y que muchas cosas de Star Trek le cansan. Pero "la de las ballenas" (Star Trek IV: Misión Salvar la Tierra, para que la busquéis los que aún no la habéis visto) me parece un clasicazo del cine y una de las mejores comedias de ciencia ficción que he visto.
+
+Es decir, que sí, que a mi me va el kitsch de Star Trek y me aburren un poco cuando se ponen serios. Las dos anteriores de este reboot me parecieron bien, sin más- ni un insulto a todo lo que es sagrado, ni la octava maravilla, ni nada de nada. Un par de pelis de acción funcionales, con algún momentillo que recuperaba la química de los Kirk, Bones y Spock originales, pero que el gamberrismo de un Kirk supongo que intentando atraer a una nueva generación a mi no me decía nada.
+
+Y Star Trek: Más Allá es un poco más de eso, PERO...
+
+Pero por un momento el rápido y furioso Justin Lin consigue un fugaz destello de lo que **a mi** me gusta de Star Trek. Una inverosímil combinación ridícula de molonidad y estupidez que me tuvo sonriendo hasta el final de la película. Una auténtica gamberrada que nos habían telegrafiado en el trailer[1] y que en su momento a mi me había hecho murmurar "vaya, sólo les falta poner a Vin Diesel de Spock"... pero que vista en pantalla grande con un cubo de palomitas se convierte en DIVERSIÓN con mayúsculas para los amantes de la música "clásica".
+
+Por lo demás, aunque hay otros momentos rápidos, furiosos y motorizados que sí me chirriaron o incluso derraparon (con una de las peores sobreimpresiones de esta era que recuerdo), la peli se deja ver. Una vez más Éomer, digo Karl Urban como Bones, es el que mejor capta el espíritu del inolvidable DeForest Kelley y suelta las mejores frases de la cinta. Pine como Kirk sigue pareciéndome cansino, Quinto como Spock me parece funcional y Simon Pegg sigue pareciendo algo perdido y sin acabar de encajar.
+
+¿Hay que ver Star Trek: Más Allá? Pues yo creo que hay cosas mucho peores que hacer, y vale la pena el experimento para ver si la ESCENA os arranca la misma sonrisa imborrable que a mi.
+
+
+=> https://www.youtube.com/watch?v=XRVD32rnzOw 1: https://www.youtube.com/watch?v=XRVD32rnzOw
\ No newline at end of file
--- /dev/null
+# A regañadientes, desde el cine sin ley a la ciudad de los ángeles
+2017-01-16
+
+¿Cuál es el propósito de una crítica de cine?
+
+Aunque a veces parezca que sea demostrar que tienes un buen diccionario de sinónimos y que has visto pelis que no le importan a nadie, supongo que es hacer saber a alguien si le valdrá la pena ir a ver algo.
+
+En ese caso, sí, id a ver La La Land. Siendo un musical, supongo que sólo estarán leyendo aquellos que acepten los musicales o que no sepan que lo es. Fuera de eso es difícil precisar más, la peli tiene tantas cosas buenas y bastantes cosas malas como para que salgáis del cine haciendo claqué o echando espumarajos por la boca.
+
+Visualmente, La La Land es un trabajo impecable. Desde el larguísimo plano secuencia inicial al imaginativo acto final, hay poquísimos momentos que no asombren y sólo un par de cosillas que chirrían un poco (por mucho que avancen los efectos especiales, aún quedan cosas sencillas que no se pueden hacer). Sentarse y absorber todo ese derroche ya vale el precio de la entrada y las dos horas que dura.
+
+Musicalmente, a mi no me convenció tanto. Vaya por delante que mi mente tararea en bucle el repertorio de Hair pero que la mayoría de canciones de musical me suelen parecer olvidables, y La La Land no es una excepción. La Stone y el Gosling dan un esfuerzo más que admirable, pero no son cantantes y en especial la garganta de éste último no está hecha para llevar la voz cantante. Eso sí, en baile para mí sí que dan totalmente el nivel. En cualquier caso, creo que en una semana ya no recordaré las canciones.
+
+Lo otro es el guión. Aunque contiene un par de ideas buenas, no las aprovecha casi nada y cuando lo hace es un poco atropelladamente. No consigue meter al espectador en la vida de los personajes y no se sabe muy bien por qué; hay elementos de tensión y drama, pero nunca parece que vaya a pasar nada.
+
+Aún así, sí que la peli goza de unos cuantos aciertos- la escena de **la** fiesta es una auténtica gozada que me dejó una sonrisa difícil de borrar. Hay destellos por toda la película que dejan ver que de alguna manera podía haber sido mucho más- creo que también porque a veces intenta abarcar demasiado, explicar todos sus amores y homenajear todo lo homenajeable, con aciertos y fallos por igual (aunque aprovechar que ruedas en la meca del cine como hacen en La La Land es algo que deberíamos ver mucho más a menudo).
+
+Pero vedla. Puede que en un par de años no nos acordemos de ella, pero es uno de los acontecimientos de año y hay material para disfrutar un rato. Si Damien Chazelle es el segundo advenimiento o un niño mimado y sobrevalorado es una pregunta que tendrá que esperar un par de películas más; Whiplash tenía la carga de diez megatones que todo debut debe tener y La La Land tiene el ansia de aprovechar todo recurso disponible y se le pueden perdonar sus vicios derivados. Habrá que ver si cuando se estabiliza puede cuajar cintas totalmente redondas o seguirá con estallidos irregulares.
\ No newline at end of file
--- /dev/null
+# Al cine se va los viernes - Guardianes de la Galaxia Vol. 2
+2017-05-06
+
+La versión corta: la segunda entrega de Guardianes de la Galaxia es *lo que tiene que ser*. Si os gustó la primera, vedla. Si no os gustó, no la veáis. Si no la visteis, os gustan los 80 y no le hacéis ascos a la idea de un mapache parlante manejando armamento de alto calibre y soltando gracietas, os veis la primera y volvéis aquí.
+
+La larga:
+
+Las secuelas son siempre complicadas- especialmente si la primera parte tuvo un éxito inesperado y uno no está seguro de repetir suerte. James Gunn (guionista de Tromeo y Julieta, con eso está dicho casi todo) lo afronta con una estrategia clara: disparar contra todo lo que se mueva. Durante las dos horas y cuarto que dura, se practica una acumulación de gags, referencias, acción a raudales, momentos sentimentales y excentricidades que si bien acaban agotando un poco (me costó aguantar hasta la quinta- sí, quinta- escena post-créditos), se aseguran que todo el mundo encuentre algo de su gusto para salir satisfecho.
+
+Muchos gags no acaban de cuajar, se abusan de algunos recursos, los momentos "sentimentales" a mi no me acabaron de funcionar y hay bastantes oportunidades desaprovechadas; Kurt Russell especialmente, que padece como nadie algunas flojeras del guión (y curiosamente, prácticamente no tiene oportunidad de soltar chascarrillos)... parece como si se asumiese que su presencia basta por sí sola y que no era necesario que hiciese nada más que estar ahí.
+
+Sin embargo, me parece difícil que nadie (a excepción de esos que nunca disfrutan de películas de este tipo) salga del cine sin ganas de hablar de *ese* momento en el que casi se le saltan las lágrimas de la risa, que no quiera un pequeño Groot como amigo arbóreo o que no haya disfrutado una referencia ochentera.
+
+Así pues, id con las pilas puestas, que puede hacerse un poco larga, pero id.
\ No newline at end of file
--- /dev/null
+# HDMI-CEC, algunas cosas que se enchufan a la tele y complementos
+2017-06-25
+
+He estado remozando mi montaje de cosas conectadas a la tele y quería aprovechar para recoger unos cuantos pensamientos sobre el tema.
+
+Uno, destacar ese gran desconocido que es el HDMI-CEC (que cada fabricante renombra, no sea que la gente se pueda entender lo práctico que es). Es un protocolo de señalización sobre el cable HDMI que permite cosas como que el mando a distancia conectado al televisor pueda controlar otros dispositivos conectados al televisor (como una Playstation o una Raspberry Pi) o que dispositivos conectados al televisor puedan encender el televisor cuando se activan (como un Chromecast que al recibir un vídeo de un móvil puede conectar el televisor y saltar a su canal). Sin demasiados problemas, permite reducir el uso de mandos a distancia y aumentar la comodidad de ciertos dispositivos.
+
+Mi televisor ahora mismo tiene conectados:
+
+* Una PS3 (mentira, porque no tengo entradas suficientes, pero bueno), que desgraciadamente es el único dispositivo que tengo para reproducir Movistar+ en la TV (a ver si algún día se ponen y le añaden Chromecast, por dios). El mando de la PS3 permite encender la tele y, curiosamente, se puede controlar la PS3 con el mando de la tele sin muchos problemas (obviamente no para jugar pero sí para usar aplicaciones de streaming).
+
+
+* Un Steam Link[1] con Steam Controller[2]; el Steam Link es un curioso aparato, que por 30€ (muy rebajado, ojo a los costes de envío) permite jugar a los juegos del PC en la TV en streaming. Lo complemento con el Steam Controller (40€ muy rebajado), que es un curioso mando que dispone de 1 stick analógico (no 2) y los típicos botones "Playstation", pero también dos touchpads y dos paletillas en la parte trasera del mando que permiten esquemas de control bastante curiosos, que permiten una personalización brutal que hace que hasta se pueda jugar a juegos de ratón/teclado con el mando bastante decentemente- aunque no tan bien como se controlan en el PC y cabe decir que para juegos pensados para mando es peor que un mando de consola tipo el de la PS3.
+
+Cabe decir que este hardware de Steam me ha dejado bastante boquiabierto, por su audacia y por lo bien pensado que está; son muy muy fáciles de hacer funcionar, de momento no les he encontrado ningún problema de usabilidad y hasta tienen un par de sorpresas ocultas (se puede añadir un mando de PS3 al Steam Link en un periquete y funciona casi perfectamente, y por supuesto, soporta HDMI-CEC).
+
+
+* Una Raspberry Pi 3 con LibreElec[3]. Si bien es un desperdicio, ya que el propósito de la Raspberry Pi es trastear, hay que admitir que es un dispositivo de streaming para el televisor ideal; no sólo es muy barata sino que soporta HDMI-CEC, a diferencia de la mayoría de PCs (hay accesorios para añadir soporte a los PC, pero es un poco oscuro), con lo que no hace falta un mando adicional. Yo además le he enchufado un sintonizador de DVB-T, que con TVHeadEnd permite ver y grabar la tele (aunque de momento, no permite hacer timeshifting). LibreElec lo hace todo trivial de montar y aunque tengo algún problemilla (se me queda colgado/apagado con frecuencia y a menudo al intentar usarlo tengo que desconectarlo y volverlo a conectar), es perfecto para reproducir vídeos de un PC y además, su funcionalidad de TV es mucho mejor que la de mi televisor
+
+
+* Y un Chromecast, otro dispositivo baratillo que además fue el que me descubrió el mundo del HDMI-CEC. Para los que no lo conozcan, es un aparato la mar de ingenioso que sólo funciona controlado por un móvil o PC; nos permite traspasar un vídeo que estemos viendo en el móvil (como una peli de Netflix) al televisor de una manera casi transparente (la tele se enciende y cambia a la entrada del Chromecast y vemos el vídeo en un santiamén. Además, podemos pausar y demás desde cualquier móvil/PC conectado al Chromecast).
+
+
+
+Todo esto aderezado con una regleta que encontré en Amazon con 8 tomas de corriente y 5 USB[4], que me permite alimentar el Chromecast y la Raspberry por USB sin un cargador adicional, a parte de cargar los mandos de la Play y demás de una manera muy práctica.
+
+El único problema es que tengo cuatro dispositivos HDMI y mi televisor sólo tiene 3 entradas, con lo que ahora mismo el montaje me cojea un poco (tengo sin conectar la PS3 que es lo único que reproduce Movistar+), pero todo se andará.
+
+
+=> http://store.steampowered.com/app/353380/Steam_Link/ 1: http://store.steampowered.com/app/353380/Steam_Link/
+=> http://store.steampowered.com/app/353370/Steam_Controller/ 2: http://store.steampowered.com/app/353370/Steam_Controller/
+=> https://libreelec.tv/ 3: https://libreelec.tv/
+=> https://www.amazon.es/gp/product/B01E4X7CKY/ 4: https://www.amazon.es/gp/product/B01E4X7CKY/
\ No newline at end of file
--- /dev/null
+# La maravillosa mujer maravilla
+2017-06-25
+
+Vaya por delante que uno es fan de Marvel y detesta DC. Quizá por desconocimiento, pero siempre me han interesado más los Spider-mans más terrenales que los alienígenas de poderes cósmicos como Superman (que sí, Marvel tiene sus Thors y sus 4F contra Galactus, pero eso nunca me ha interesado mucho). Así que cuando digo que Wonder Woman es la mejor película de DC desde los Batmans de Tim Burton de los 90 (que realmente son películas tan distintas que hace que las comparaciones sean casi imposibles), que conste que yo de DC sólo he visto:
+
+* Los Superman de los 80, que creo que son (junto con Los Goonies) las pelis que menos me gustan del gran Richard Donner
+* Los mencionados Batman de Tim Burton, que Kevin Smith explica en el 4:30 de este vídeo que todo el mundo debería ver[1]- una teoría bastante razonable sobre cómo me puede gustar una peli de Batman si Batman me parece bastante odioso
+* Algunos Batmans de Nolan, que están bien, pero que ejemplifican bastante bien lo que no me gusta de DC
+* Superman Returns de 2006, que era rematadamente mala
+* Linterna verde, que me atrapó en un tren y casi me destruye
+
+(no cuento V de Vendetta, Watchmen, que sí, técnicamente son de DC, pero **no** son de DC). Pero vaya, creo que está bastante aceptado que Suicide Squad y Batman contra Superman son escoria, así que...
+
+En cualquier caso, Wonder Woman si no es lo mejor de superhéroes de DC, es de lo mejor.
+
+Pese a que Di, la Wonder Woman del título, es la más molona de las molonas Amazonas, Gal Gadot y las partes buenas del guión le dan un carisma que está totalmente fuera del alcance del kriptonita y del murciélago; si bien su personaje tiene bastantes topicazos, tiene gracietas, momentos entrañables y heroicos y carga la peli sobre los hombros sin demasiado esfuerzo, apenas un par de derrapes- especialmente un diálogo que me recordó a lo peor de lo peor de Interestelar que hizo que me retorciese en un segundo. Afortunadamente, son deslices aislados.
+
+Eso sí, Di está bastante sola, porque el resto del reparto es flojillo. James T. Kirk es de lo mejor, porque tiene un par de momentos buenos, pero ni su banda de inadaptados, ni el confuso elenco de villanos (una Elena Anaya desorientada, ni el casi siempre efectivo Danny Huston [hijo de John Huston, por cierto], ni el otro), ni casi nadie en la película le dan una buena réplica a la buena de Di... una lástima que hace que la peli sea simplemente buena y no totalmente maravillosa como debería ser.
+
+El guión es irregular- es bueno e incluso muy bueno en los espacios cortos (el chiste del reloj es de los diálogos mejor buscados del cine reciente y no desmerecería en un Billy Wilder moderno), pero flaquea en lo más amplio- el argumento no es muy allá y el desenlace desmerece de los muy destacables introducción y nudo.
+
+Eso sí, la estopa está muy bien repartida. Desde la secuencia inicial, titulada "Somos las Amazonas y las playas son para dar hostias, no para broncearse", hasta "Vosotros tenéis metralletas pero yo tengo estilo y clase heroicos", el machacamiento de alemanes es totalmente satisfactorio y gratificante; si bien la sombra de Zack Snyder nos trae un poco de abuso de la cámara lenta, la acción es nítida y épica como debe ser, acompañada de una destacable y llamativa banda sonora. Sólo al final cuando todo se pone en niveles mitológico se le empiezan a salir un poco las costuras al invento, pero hasta entonces las palomitas entran solas y a ratos dan ganas de aplaudir.
+
+Así pues, sí, pese a sus defectos, si a uno de gustan las hostias bien dadas, hay que ir a ver Wonder Woman aplasta a los alemanes. Eso sí, me sigo quedando con Frozen como la mejor película protagonizada por una superheroína (y a la que no ponían a ningún hombre al lado para que los pobres varones no se sintiesen desorientados).
+
+
+=> http://www.dailymotion.com/video/x2osneo 1: http://www.dailymotion.com/video/x2osneo
\ No newline at end of file
--- /dev/null
+# Los (dan) defensores
+2017-09-17
+
+Gracias a la magía de los aviones y de los tablets baratos (Kindle Fire HD 8, de momento encantado, a ver si un poco más adelante escribo algo), me he acabado de ver la S01 de The Defenders, la reunión de los cuatro neoyorquinos dicharacheros de Netflix; Daredevil, Jessica Jones, Luke Cage y sí, Iron Fist. Veo que no he posteado nada sobre ellos, así que voy a reseñarlo **TODO**.
+
+### Daredevil
+
+Primero fue Daredevil, que es el único de momento con dos temporadas. El abogado ciego con superpoderes y trauma por padre boxeador asesinado por la mafia, con una dosis de torturada fe católica es un clásico de Marvel (50 años lleva combatiendo el crimen, suerte de la compresión temporal del universo Marvel). En líneas generales, la serie retrata bastante bien lo que es Daredevil, sólo que el bueno de Matt y sus coleguis Foggy y Karen son un poco... sosos. La serie deambula un poco por la oscuridad de Daredevil y sus problemas de consciencia, pero Charlie Cox y Elden Henson no acaban de funcionar bien en los aspectos más dramáticos. Deborah Ann Woll como Karen Page sí tiene una actuación más acertada, pero por contra, el guión de su personaje se nos antoja un poco insuficiente (y muy diferente a los cómics, que no espoilearé aquí- no creo que la serie vaya por esos derroteros, pero por si acaso...).
+
+Pero lo bueno de Daredevil son los villanos y antagonistas. La serie empieza con un superlativo Kingpin- el mafioso supremo de los cómics que aquí Vincent D'Onofrio (¡el recluta Patoso de La Chaqueta Metálica! Joder, no me había dado cuenta hasta ahora) clava con un ángulo muy interesante y que además viene acompañado de su ayudante personal Wesley (actor desconocido para mi, salía en Dollhouse del Whedon), un secundario memorable que acaba por completar la excelente profundidad humana del Kingpin. En la segunda temporada llega el Castigador, personaje que contrasta muy bien con Daredevil. Mientras Matt Murdock es un abogado que reparte justicia a patadas, Frank Castle la reparte con balas entre las cejas. El conflicto entre ambos se examina bastante bien, pero Jon Bernthal consigue en su relativamente mínimo tiempo en escena mostrarnos más matices de su personaje que Charlie Cox en dos temporadas como protagonista. Los algoritmos de Netflix deben coincidir bastante conmigo, porque el Castigador tendrá su serie propia en un par de meses.
+
+La segunda temporada también incide más en el "rollo" ninja de Daredevil, apareciendo su maestro Stick (Scott Glen, el comandante del submarino yanqui de La Caza del Octubre Rojo y el superior de Clarice Sterling en El Silencio de los Corderos), Elektra y la Mano, de la mano de la encantadora viejecita oriental Madame Gao. Esta temática no me llamaba mucho en los cómics, y aquí es tolerable- Elektra es un poco sosa y su química con Daredevil no funciona demasiado, pero Stick, pese a lo trillado del personaje viene bien compensado por un buen actor. Madame Gao es el punto álgido en mi opinión- me saco el sombrero ante el director de cásting que ha sacado a esta señora con apenas cuatro películas que borda el papel de bruja mística oriental. Casi agradezco que luego hayan seguido con la Mano como villano recurrente para poder disfrutar más de ella.
+
+En fin, que Daredevil funciona muy bien, pero más por mérito de su acertadísimo elenco de villanos que por los buenos. Buenas dosis de acción, investigación y misterio y... superheroísmo, sí.
+
+### Jessica Jones
+
+Luego vino Jessica Jones, que a diferencia de Daredevil es un personaje mucho más moderno- de este siglo para ser exactos, y con ello viene un planteamiento más actual de superhéroe. Jessica tiene superpoderes, sí, pero es ante todo investigadora privada de moralidad dudosa y alcohólica (pero corazón de oro, sí, tranquilos). Krysten Ritter (la chati heroinómana de Jesse de Breaking Bad) compone un personaje con toda la complejidad que le falta a Daredevil, y con unos diálogos mordaces con unos secundarios que le dan buena réplica. Más allá de Luke Cage (protagonista de la siguiente serie de este barullo), el secundario destacable de la serie es Trish Walker- la "hermana adoptiva" de Jessica, estrella de la tele infantil reciclada en presentadora de su programa de radio "Trish Talk", cuya relación con Jessica y sus desventuras le da profundidad a la serie.
+
+Jessica Jones es un noir en toda regla, que desde su estilosa cabecera pasa por el villano de la serie... un David Tennant algo volátil que es escabroso y terrorífico, pero que por algún motivo no acaba de funcionar tan bien como debería.
+
+Es decir, que a diferencia de Daredevil, aquí son los buenos los que aportan la calidad. La Jessica Jones de la serie es un personaje fresco incluso dentro de los antihéroes- es un Lobezno realista y muy creíble, con el que podemos identificarnos y que hace que nos metamos en la historia, junto con Trish y los otros secundarios. JJ es para mi lo mejorcito de todo este tinglado- no es sólo una buena serie de superhéroes, es una buena serie y punto.
+
+### Luke Cage
+
+Tras una fugaz aparición en JJ, Luke Cage entra como el héroe de Harlem; un interesante personaje que bebe de la blaxploitation pero que ha sido acertadamente modernizado.
+
+Luke Cage es una serie un poco más irregular que las anteriores. A diferencia de DD y JJ, aquí tanto buenos y malos son harto interesantes, pero desafortunadamente la serie pierde mucho gas a mitad de recorrido tras un desafortunado giro de acontecimientos y la llegada de un nuevo villano.
+
+En la primera mitad, Mahershala Ali (Óscar al mejor secundario por Moonlight) y Alfre Woodard (extensísima filmografía y muy premiada, pero la verdad, yo no la tenía en la cabeza) encarnan a los que creo que son la primera pareja de primos villanos de la historia- un gangster dueño de un estiloso club de jazz y a una política local de Harlem que tienen una dinámica interesantísima que incluso quita protagonismo a los buenos- encabezados por la majestuosa presencia física de Mike Colter como Luke Cage que consigue darle la nobleza necesaria al personaje y que está secundado por una Rosario Dawson cuya Claire Temple gana protagonismo aquí (salía en las anteriores clavando a su enfermera de superhéroes) y a otro acierto de cásting con una desconocidísima Simone Missick encarnando a la detective afrobaloncestística Misty Knight.
+
+Y hay más personajes interesantes, pero lamentablemente el guión de la serie avanza muy bien al principio pero se va arrinconando, desembocando en un giro argumental en mitad de la serie que lleva a que la segunda parte desmerezca en gran medida de la primera, lo cuál es una verdadera lástima. Si hubiesen conseguido un segundo acto acertado, podríamos estar hablando de temas mayores- sin embargo, se queda en una muy buena primera mitad y poco más.
+
+### Iron Fist
+
+Pero bueno, eso no es nada comparado con el despropósito de Iron Fist. Ya viene de una premisa bastante ridícula de kungfu místico que no acaba de cuajar muy bien en el universo Marvel, pero es que la adaptación es totalmente terrible. Es probable que sea todo culpa de un nefasto guión que parece firmado por un niño de primaria, en el que nada parece creíble, pasan cosas sin ton ni son y es todo terriblemente cutre- todo esto se lleva por delante todo lo demás. Es posible que Finn Jones (el Caballero de las Flores de Juego de Tronos) no sea **tan** mal actor como parece aquí, y creo que el resto de actores tampoco lo hacen del todo mal. Ni la aparición de personajes cañeros de las otras series salva nada. Sólo Colleen Wing (la Nymeria Sand de Juego de Tronos) salva un poco los muebles (aunque en algún momento se ve engullida por la catástrofe de serie), pero no basta.
+
+Lamentablemente, gran parte del transfondo de The Defenders viene de Iron Fist, así que es ugh, útil, tragársela para disfrutar la serie.
+
+### The Defenders
+
+Y esto nos lleva a The Defenders, el complicado ejercicio de encajar cuatro series bastante diferentes entre sí. Los cuatro de arriba se las ven con La Mano, la organización místico-maligna oriental que ya tienen bastante lío con Daredevil y Iron Fist, pero que poco tienen que ver con mi querida Jessica y el bueno de Luke Cage.
+
+La serie lo resuelve bastante bien- incluso lleva el lastre de Iron Fist con gracia (con unas cuantas pullas bien envenandas). Se establecen dinámicas interesantes entre los cuatro y se exploran adecuadamente sus diferencias y puntos en común. Los malos están bien- la jefa de La Mano resulta ser una correcta Sigourney Weaver, aunque yo sigo prefiriendo a la entrañable Madame Gao. Luego viene un japonés olvidable y un "Bakuto" que ya venía tocadillo por salir en Iron Fist.
+
+Aunque la serie empieza un poco floja, y aunque no soy muy fan del temita de La Mano (salvo Madame Gao, claro) ni de Elektra ni de Stick (que Scott Glenn interpreta muy bien y es bastante oscurillo, pero es que lo del maestro mentor de artes marciales es algo que está tan trillado...), la serie se va acelerando y hacia el final estaba bastante enganchado.
+
+Vale la pena verla- igual no tanto como Jessica Jones, pero sí es un interesante ejercicio de televisión y superhéroes que entretiene como debe ser.
\ No newline at end of file
--- /dev/null
+# Los adorables perturbados que me leen la mente mientras duermo
+2017-10-18
+
+Me disculparéis, pero mi última salivación en estos lares por Halt and Catch Fire pronto cumplirá 4 años[1], así que creo que tengo derecho a recrearme ahora que ha acabado y me ha dejado huérfano y desamparado.
+
+Hay dos señores misteriosos en EEUU, de nombres Christopher Cantwell y Christopher C. Rogers, que ni siquiera tienen entrada en la Wikipedia, que disponen de un medio para entrar en mi cabeza mientras duermo y sacarme gustos y opiniones. Afortunadamente, aunque podrían usar eso para torturarme con sadismo, lo que han decidido es regalarme con la serie de televisión que ni siquiera sabía que deseaba.
+
+Halt and Catch Fire son cuatro temporadas; el boom de los PC, las BBS, el nacimiento de la "Internet comercial" y la llegada de la web y los buscadores, en cuya cresta de la ola siempre se encuentran los cuatro (o cinco) protagonistas.
+
+Durante los primeros episodios, la serie parecía girar alrededor de Joe MacMillan, ex-comercial de IBM, carismático, visionario y psicópata (mayormente funcional y socialmente aceptable) a partes iguales, un Lee Pace en estado de gracia dispuesto a comerse la pantalla y fabricar un portátil. Para ello, cuenta con Gordon Clark, un ingeniero de hardware todoterreno y Cameron Howe, una programadora punk inadaptada.
+
+Pero la serie pronto cambia de rumbo levemente y adquiere mayor protagonismo Donna Clark, la esposa de Gordon pero sobre todo ingeniera, que, interpretada por una deslumbrante Kerry Bishé (la protagonista de la última temporada de Scrubs y también configurando el mismo matrimonio de actores en Argo) y sus extraordinariamente elásticas facciones, pronto toma una parte central del escenario y completa una serie de complejas relaciones sobre las que gira el argumento.
+
+No sólo Donna y Gordon son un matrimonio con unas dinámicas que van de lo entrañable a lo preocupante, también está la maravillosa relación llena de extremos entre Cameron y Donna, que en la segunda temporada se establecen como una pareja de emprendedoras pioneras de la comunicación online, y la relación sentimental, siempre en el filo del precipicio entre Joe y Cameron. Por no hablar de la relación cuasipaternofilial entre Cameron y Bos (el comercial dicharachero tejano que está en el borde entre protagonista y secundario) o las dos hijas de Donna y Gordon, que colman todo el potencial genético de frikismo y drama que les corresponde. Trace usted una línea entre dos personajes de esta serie y hallará usted una relación fascinante y muy humana que le tendrá enganchado a la pantalla.
+
+Estas relaciones atraviesan todo tipo de situaciones al hallarse siempre en la vanguardia del avance tecnológico que conduce a la revolución social online. Cada paso no es sino preparación para el siguiente paso, el ciclo inexorable que hace que lo que ayer era magia hoy sea mundano- "the thing that gets you to the thing".
+
+Luego está el desfile de Sparcstations, XTs caídos de camiones, mainframes variados, cúbicos NeXT y otros oscuros objetos de deseo informáticos, y especialmente una segunda temporada donde la exhibición constante y casi pornográfica de mi ordenador de la infancia, el Commodore 64 que conquistó el mundo. La serie no los deja de atrezzo precisamente, y los hace pieza central de algunas escenas que jamás soñé ver en pantalla, desde la ingeniería inversa de la BIOS de un IBM PC a base de osciloscopio, pasando por odas varias a las copias de seguridad y por supuesto, la metafórica sucesión de momentos de "Donna Arreglando Cosas", una verdadera miniserie dentro de la serie que comienza con el Speak and Spell de TI y acaba con un desaparque de cabezal de disco duro cuyo chirrido aterrador te encoge el alma.
+
+Para una criatura de mi época, este es un gancho absolutamente irresistible y profundamente adictivo que me ha llevado a convivir cuatro años con esta extraña familia disfuncional y digital que me han llevado por la montaña rusa de la historia y el sentimiento. Quizá esté cegado por ser quizá la primera serie sobre este pequeño mundo al que muchos llamamos nuestro hogar de silicio, pero creo que Halt and Catch Fire es una serie imprescindible para todos- y no sólo porque educa como pocas en algunos aspectos fundamentales de la época moderna, sino que además cuenta con unos personajes fascinantes que te ayudan a sumergirte en unos momentos claves que cambiaron el mundo.
+
+Mis queridos Chrises, que sé que me leeréis la mollera cuando me acueste esta noche, hacedme otra serie, por favor.
+
+
+=> http://alex.corcoles.net/2014/12/detente-y-prendete-fuego/ 1: http://alex.corcoles.net/2014/12/detente-y-prendete-fuego/
\ No newline at end of file
--- /dev/null
+# Nena, enciende mi fuego: Kindle Fire HD 8 (7ª Generación)
+2017-10-08
+
+Con motivo de fechas señaladas me he hecho con un Kindle Fire HD 8 (7ª Generación), que viene más o menos a reemplazar a un iPad pre-Air con la pantalla rota heredado y a complementar una BlackBerry Classic (que cuando salga la BlackBerry KEYone Black a la venta en España...).
+
+Los que me conozcan puede que sepan que no soy muy fan de las tabletas y se preguntarán por qué tengo dos. Pues hay que pensar en la relación coste/utilidad. Mi opinión es que las tabletas aportan muy poca utilidad si uno tiene un móvil decente y, por ejemplo, los 400€ que cuesta el iPad más barato me parecen un desperdicio en general (aunque seguro que hay casos en los que tiene sentido). El problema viene porque las tabletas de bajo coste son un campo de minas, en los que el compromiso puede ser inevitable.
+
+Marcas desconocidas, fabricación barata, software cutre, falta de soporte, etc. siempre hay algo que no nos cuadrará en una tableta barata y que tendremos que aceptar si queremos obtener su utilidad.
+
+En este caso concreto, el Kindle Fire HD 8 podría contar con los siguientes puntos negros:
+
+* Es Amazon, que es anti-Google; no hay Play Store de serie, aunque se pueden hacer hacks no soportados. Esto es, no hay app de GMail, Youtube, etc. Como cliente de Google Play Music esto es especialmente sangrante.
+* Además, no todos los servicios Amazon están disponibles en España; notablemente Alexa
+* Hay que escoger entre pagar 15€ o ahorrártelos y ver anuncios en la pantalla de bloqueo
+* El hardware está bien, pero no es para tirar cohetes. Las dos cámaras podrían ser perfectamente de un móvil de inicio de siglo. Intuyo que podrían ser útiles para hacer videoconferencias si uno no es especialmente exigente, pero poco más
+
+Pero en mi opinión, son todo puntos que podemos aceptar y que aún nos proporciona bastante utilidad por 110€. Para mi esta utilidad es:
+
+* Visionado de vídeo. Uso un móvil con una pantalla cuadrada de 3,5" y probablemente me pase a un 4,5" 3:2. Aunque para mi es suficiente para ver vídeos, una pantalla de 8" 16:10 con una resolución de 1280x800 es una mejora apreciable. Adicionalmente, tiene cliente de Netflix oficial
+* Un procesador 4x veces más potente en el benchmark Kraken de Mozilla que el móvil que uso, que redunda en que para cosas como navegar por Internet, se engancha bastante menos que mi teléfono
+
+Para mí, los 110€ están más que justificados en poder ver vídeos en la cama o en el tren cómodamente y como dispositivo de navegación de andar por casa.
+
+Pero entremos en detalle.
+
+Físicamente, es una tableta de 8", que pesa menos que un iPad de 10" (que para mí es ligeramente poco manejable) pero más que un iPad mini del mismo tamaño. Para mí es un peso más que manejable y que no se me hace incómodo en ningún momento. La pantalla no es destacable en ningún sentido- ni maravilla ni molesta, es perfectamente razonable pese a no ser de altísima resolución o brillo. Tiene un par de botones para volumen, un botón de encendido, un conector micro-USB y jack de auriculares, todo en el borde superior, lo cual no es ideal, pero tampoco supone una gran molestia.
+
+El software es Android, pero sin servicios Google y con Amazon. El interfaz es correcto, aunque el ecosistema Amazon está muy presente; no sólo por los anuncios en la pantalla de bloqueo, sino porque en la pantalla inicial, con un gesto nos vamos a pantallas de libros, música y aplicaciones de Amazon. Obviamente también viene precargada con todas las aplicaciones de Amazon (las disponibles en España, claro).
+
+Amazon destaca su navegador "Silk", que aparentemente descarga parte del trabajo a la nube de Amazon- como el clásico Opera móvil que renderizaba las páginas externamente para funcionar mejor en dispositivos de poca potencia. Es difícil saber cuán importante es este aspecto- si ayuda muchísimo o si el procesador es simplemente suficientemente potente, pero la navegación con Silk es buena; es ágil con mi patrón de uso (que no es intensísimo), pero me ha bastado para poder depender de la página web de Twitter, Facebook, etc. y no instalar ninguna app de servicio que tenga versión para web móvil.
+
+Así pues, sólo he instalado unas pocas aplicaciones:
+
+* Netflix
+* VLC (porque el reproductor de vídeo de Amazon no soporta subtítulos)
+* F-Droid (porque tengo algo de paranoia a la appstore de Amazon)
+* Ghost Commander (gestor de archivos que soporta el compartir archivos de Windows)
+
+Para todo lo demás, web. Los únicos problemas notables son las versiones web de Feedy y GMail, que no funcionan demasiado bien en modo vertical y que tengo que usar en horizontal (donde por cierto, desearía tener un control de orientación físico- aunque la detección de orientación del Kindle funciona muy bien, un interruptor físico es la mar de práctico), y el hecho de perder la funcionalidad típica de compartir con para compartir a la versión web de Twitter o Facebook, por ejemplo, que para las webs que no disponen del widget adecuado, implica hacer cortar y pegar (al parecer pronto saldrá un estándar para tener una funcionalidad de compartir de navegadores, veremos si llega al Kindle).
+
+Con Ghost Commander se resuelve adecuadamente la transferencia de archivos (otra alternativa, si bien algo friki, es usar el servidor web incorporado en Python[1], que mediante un comando permite compartir una carpeta accesible por el navegador), aunque echaría de menos el soporte nativo de BlackBerry OS para el compartir archivos de Windows (que permite pasar archivos al revés; es decir, desde el PC acceder a la carpeta compartida y transferir archivos- suele ser más cómodo dirigir el proceso desde el PC), pero esto no está en Android sin rootear el dispositivo, algo que preferiría no tener que hacer.
+
+Creo que poco más queda por decir. La batería es suficiente- en ningún momento me siento esclavizado por cargarlo, y eso compartiendo cargador con mi teléfono. Proporciona sobradamente entretenimiento en trayectos de tren de tres horas y media (aunque ahora disponen de cargador). No juzgo los altavoces porque siempre lo uso con auriculares.
+
+En definitiva, una tableta barata que da una buena pantalla para ver vídeos y un navegador que cumple prácticamente todas las funciones de ocio doméstico. En muchas circunstancias, supongo que será mejor compra que cambiarse a un teléfono más grande y potente, aunque para muchos también una buena tele con Chromecast o dispositivo similar y un buen móvil pueden ser mejor opción.
+
+
+=> https://docs.python.org/3.6/library/http.server.html 1: https://docs.python.org/3.6/library/http.server.html
\ No newline at end of file
--- /dev/null
+# Teclado uno, ¿alguien cero?
+2017-11-27
+
+Mañana se cumplirán dos semanas desde que llegó a mis manos la BlackBerry KEYone Black, que sustituye a mi querida BlackBerry Classic (pero condenada por WhatsApp a muerte el 31 de diciembre de 2017) y que es mi tercer cacharrito de esos entrañables canadienses (no cuento el PlayBook que casi no usé, pero sí la acojonante Bold 9780).
+
+Intentaré ser breve.
+
+El primer y más importante punto: los dos mayores problemas que tienen las KEYone ahora mismo son dos:
+
+* Son MUY caras. La Black cuesta 649€ + portes en la tienda oficial[1], la no Black 600€ (también está en Amazon). Si comparamos en función del Snapdragon 625 que llevan dentro, un Xiaomi Mi A1[2] cuesta 229€ (y lleva 4Gb de RAM como la versión Black de la KEYone) —salvo el glorioso teclado QWERTY— una comparativa es deprimente[3].
+* La versión Silver que cuesta 50€ menos tenía numerosos defectos de fabricación que a mí me acongojaron y me hicieron esperar a la Black. Se supone que los han resuelto, pero me quedo más tranquilo pagando un poco más (y con 1gb de RAM extra, además).
+
+Lamentablemente, creo que estos dos puntos ahora mismo condenan a este teléfono —a no ser que sea uno un fanático creyente en los teclados físicos en móviles, son dos escollos muy difíciles de digerir— y muy difíciles de ignorar aunque te pueda atraer mucho más que móviles que son aún más caros.
+
+Pero yo me lanzo en un intento desesperado de que esto venda lo suficiente para que venga un KEYtwo o un KEYthree, igual a un precio que no me duela pagar. Igual soy el único que cree que es importante poder teclear en un móvil sobre algo que no sea un cristal liso —y probablemente esto sea un suicidio económico— pero igual no y puedo prorrogar un poco más el sufrimiento de los autocorrectores y otros dolores.
+
+Si me permitís seguir esta reseña imaginándome que sólo me he gastado 300€, diré que es un móvil cojonudo. Las otras críticas que se le podrían hacer es que una pantalla 3:2 de 4,5″ y 438ppi no es ideal para ver vídeos, pero yo digo que una tele o un tablet me cumple esa función en la mayoría de casos, y en el resto, dos barritas negras y ver las cosas un pelín más pequeñas es algo que dista bastante de caminar sobre brasas; y que los teclados virtuales son pasables, pero para mí no lo son (especialmente si hay varios idiomas de por medio, sesiones SSH y otros usos probablemente marginales). Lo otro es que aunque probablemente se actualice a Oreo, seguramente el ciclo de vida no será tan largo como en otros móviles (y ojo, no creo que se vaya a poder rootear ni que vaya a haber ROMs alternativas).
+
+El resto para mí son todo virtudes. Los dos días de batería para mí no son tan importantes (y que creo que sólo se consiguen en condiciones no extremas: he pasado un día 5h en llamadas y otro 3h en un tren y no creo que hubiese aguantado dos días enteros), pero sí me dan cierta confianza en que, durante mucho tiempo, aunque la batería pierda capacidad, no me tendré que preocupar de quedarme sin pilas. La cámara es buena, pero no sobresaliente (lamentablemente, aunque comparte sensor con el Google Pixel, no tiene el mismo software). El rendimiento es más que aceptable (recordad que en este párrafo aún vivo en la fantasía de que esto cuesta 300€).
+
+Por completitud diré que echo de menos cosas de BlackBerry 10 (aunque vosotros seguramente no, claro). La navegación por gestos era mucho más ágil. El truquito del teclado táctil que tiene la KEYone es chulo (aunque le falta algo para transcender), pero el touchpad de BlackBerry era algo sublime: daba un uso a una mano brutal y para ciertas operaciones era tremendamente ergonómico (no tener que hacer zoom en el navegador para darle a enlaces/botones pequeños es algo que recuerdo con nostalgia a menudo). Ojalá que se dé una extraña carambola y BlackBerry pueda recuperar algunas de las cosas en las que se adelantó a su tiempo o pueda ofrecernos alguna innovación nueva y única, pero me queda ese regustillo amargo de las oportunidades perdidas (y por supuesto, esto tiene sus ventajas—un móvil que no tiene ni WhatsApp no es viable ni para los ascetas—y joder, es una gozada volver a un ecosistema que no está en avanzado estado de descomposición).
+
+En cualquier caso, si sufrís con los interfaces totalmente táctiles, añoráis épocas mejores y estáis dispuestos a pagarlo, sí, este es vuestro móvil. También lo es si queréis experimentar con algo diferente. Y si algún día BlackBerry resucita como marca de móviles y hay gran regocijo, dadme un par de palmaditas en la espalda.
+
+Correcciones: @chechar[4]
+
+
+=> https://eustore.blackberrymobile.com/eu/keyone-blackberry.html 1: https://eustore.blackberrymobile.com/eu/keyone-blackberry.html
+=> http://www.mi.com/es/mi-a1/ 2: http://www.mi.com/es/mi-a1/
+=> https://www.gsmarena.com/compare.php3?idPhone1=8508&idPhone2=8776 3: https://www.gsmarena.com/compare.php3?idPhone1=8508&idPhone2=8776
+=> https://twitter.com/chechar 4: https://twitter.com/chechar
\ No newline at end of file
--- /dev/null
+# Señor, qué castigo
+2017-12-19
+
+Marvel Comics parece ser que saca unos 50 tebeos al mes y a la gente aún le extraña la cantidad de TV y cine que pueden producir. La última muestra es The Punisher, planteado como spin-off de Daredevil tras supongo una buena recepción del personaje interpretado por Jon Bernthal- opinión que comparto.
+
+Frank Castle es uno de los primeros intentos de la empresa de los superhéroes de apuntarse al carro de los antihéroes, con un marine que tras perder su familia decide emprender una cruzada unipersonal contra el mal. Castle no tiene superpoderes per se y su aproximación a la justicia es, por decirlo de alguna manera, más pragmática que la de Spider-Man.
+
+Quizá no es correcto decir que es arriesgado apostar por un antihéroe- la violencia y las visceras venden, después de todo- pero creo que sí lo es decir que es más *difícil* que te salga bien. El Castigador es un personaje que es propenso a quedar unidimensional y requiere un guión algo más elaborado que otros superhéroes para mantener el interés y no caer en la monotonía (es un tipo con pistolas, al fin y al cabo).
+
+Pero lo consiguen. Sobre todo por un magistral Jon Bernthal que se diluye en su personaje y le dota de varias capas- no sólo con sus prodigiosos gruñidos viscerales sino también por saber mantener el equilibrio entre dos o tres Frank Castles que aparecen y desaparecen bajo su impactante presencia.
+
+Y a diferencia de otras series de Marvel, aquí tanto buenos como malos están equilibrados. No es el Daredevil de fantásticos antagonistas, ni la Jessica Jones y su supervillano flojillo- hay un completísimo elenco que le da buena réplica.
+
+El argumento es un thriller al uso pero efectivo, con traiciones, dobles traiciones, señuelos y demás juegos de espías que aunque no llega a brillante, si que sostiene adecuadamente la serie de principio a fin. La acción es variada y está bien resuelta, pero llega a las cotas de intensidad que requiere el personaje- lo que es más de lo que algunos tolerarán.
+
+En definitiva: si soportáis la sangre, una serie la mar de entretenida con acción y tensión, y algo que se aparta un poco de lo que nos había dado Marvel hasta ahora.
+
+El ranking (de series) queda así:
+
+1. Jessica Jones
+2. The Punisher
+3. Legion
+4. Heroes (S01)
+5. Luke Cage (hasta S01E07)
+6. Daredevil (sección Kingpin, Punisher, Madame Gao)
+7. Agents of S.H.I.E.L.D. (S01, S02, S03 primera mitad)
+8. The Defenders
+9. Agents of S.H.I.E.L.D. (mitad S03 en adelante)
+10. Daredevil (sección Elektra/Stick)
+11. Luke Cage (S01E08 en adelante)
+12. Inhumans
+13. Heroes (el resto)
+14. Iron Fist
+
+(nota: Runaways aún no sale porque llevan pocos episodios. The Gifted la dejé a los dos episodios)
\ No newline at end of file
--- /dev/null
+# Wakanda Tours
+2018-03-05
+
+Si por algo se me conoce es por llevar la contraria, así que os lo adelanto: Black Panther está bien, pero tiene un pero.
+
+El pero es el Black Panther.
+
+Tenemos un villano cojonudo, un Michael B. Jordan que lo peta ahora mismo, que nos ofrece un villano con matices, motivaciones y fuerza.
+
+Tenemos a la guardia pretoriana de Wakanda, un grupo de señoras con la cabeza rapada que son de lo más molón que ha pasado por una peli de Marvel. En un mundo justo, no haría falta la nueva peli de los Vengadores porque estas se bastan y se sobran para darle de hostias a Thanos sin despeinarse.
+
+Tenemos un constante homenaje a las pelis de 007, desde la potente secuencia del casino hasta la hermanita del prota, que hace de Q mejor que John Cleese (no es que sea mi secundaria favorita, pero es que al pobre John le tocó sentarse al lado de la alargadísima sombra de Desmond Llewelyn, de esa nadie sale bien parado).
+
+Tenemos el rollo afrofuturista que está muy bien traído, con intrigas wakandianas, politiqueos y disquisiciones sobre el papel de una nación molona en el mundo.
+
+Pero con toda esta molonidad, se torna injusto que el soso T'Challa, no sea sólo el cabeza de estado de la todopoderosa Wakanda, ni el Elegido para el Poder Más Místico para el Mejor, sino que además sea el Protagonista cuando hay media docena de personajes con más gracia que él (fijaos como está la cosa que salen Angela Bassett y Forest Whitaker y todavía no les he mencionado). Al único que gana es al pobre Martin Freeman, que no solo causa una perturbación en la fuerza haciendo de Felix Leiter en su faceta de damisela en peligro (es inexplicable que haga de agente de la CIA; no les costaba nada hacerle del MI y algo) al que tienen que dar cuota de heroicidad para no ofender sensibilidades o caer en riesgos demográficos de una manera muy forzada (y digo yo que no era necesario, Andy Serkis como villano secundario está más que bien).
+
+Si podéis aceptar que Black Panther sea una peli que va de Black Panther, lo fliparéis por todo lo que no es Black Panther, que es de lo mejorcito que ha hecho Marvel. Si sois unos tiquismiquis como yo... pues yo creo que os gustará igual, pero que anhelaréis como yo vivir en el universo paralelo donde la peli se titula "Okoye y las Dora Milaje lo petan" y va de precisamente eso.
\ No newline at end of file
--- /dev/null
+# Codamancia
+2018-09-26
+
+Por fin me ha llegado la invitación a la beta de coda[1] (aunque creo que muy selecta no es, puedo invitar a quien quiera, diría). Cuando vi un anuncio original me sorprendió porque parecía encarnar bastante algunas ideas que me recorren la cabeza de cuando en cuando.
+
+El impacto de la hoja de cálculo y el procesador del texto es tan grande que se hace casi difícil de cuantificar (o de imaginar la vida antes de). Pero ambas ideas son bastante antiguas (Wordstar y Visicalc son de mi misma quinta, y uno no es precisamente joven) y sus limitaciones y problemáticas ya son por todos bien conocidas.
+
+La hoja de cálculo es quizá de las dos la idea más potente, pero más peligrosa. Una hoja de cálculo pone al alcance de todos funcionalidades de manejo de datos que de otra manera son bastante inaccesibles si uno no quiere dedicar una cantidad muy significativa de tiempo a aprender a programar, pero a su vez, está basado en un concepto un tanto primitivo (una rejilla sin estructura implícita) que por mucho que se le apilen funcionalidades encima, acaba padeciendo por estar carente de funcionalidades más propias de las bases de datos relacionales, por ejemplo.
+
+Por otra parte, el concepto de procesador de textos resulta a menudo limitado por estar orientado (accidentalmente, en mi opinión) a obtener una versión impresa de los documentos. Vivimos en un mundo donde el papel es mucho menos predominante de lo que era hace un par de décadas y, sin embargo, los procesadores de texto aún viven esclavizados a la paginación.
+
+Seguramente haya habido otros intentos de renovar estas dos herramientas, sin embargo no recuerdo ninguna (probablemente por ignorancia) tan ambiciosa como coda. Coda unifica proceso de textos y hoja de cálculo, y acerca la hoja de cálculo a la base de datos relacional como todos- consciente o inconscientemente- siempre habíamos deseado.
+
+Las "tablas" de coda no son espacios ilimitados y desestructurados que vagan libres por el espacio; son tablas con columnas definidas y que viven incrustadas en documentos. Los documentos tienen una estructura jerárquica no continua y paginada. Podemos crear "vistas" sobre tablas, que pueden ser tableros tipo Kanban, gráficas, subtablas, etc. y que viven incrustadas en los mismos documentos.
+
+A pesar de sus obvias limitaciones (el interfaz tiene algún defectillo, me parece que no tienen nada para ver documentos en móviles, no veo manera fácil de hacer "pivot tables", etc.), creo que por fin tenemos un verdadero competidor para el vetusto estado del arte ofimático. Creo que sus creadores han sabido adoptar un alcance sabiamente limitado, con lo que hoy nos pueden entregar un producto ya útil para multitud de escenarios, pero que a su vez es suficientemente simple como para que la gente se pueda arrojar sobre él sin miedo.
+
+¿Será coda el heraldo de un cambio de paradigma? Pues la verdad, desearía que sí, lo que pasa es que conseguir algo así es algo que requiere una espectacular carambola de condiciones que uno puede buscar con ahinco, pero que al final depende de tener suerte. Quizá en un tiempo miremos atrás y veamos que si bien no fue precisamente coda el que se llevó el gato al agua, puede que podamos encontrarlo en el linaje de los vencedores.
+
+Probadlo.
+
+
+=> https://coda.io/welcome 1: https://coda.io/welcome
\ No newline at end of file
--- /dev/null
+# De rápsodas, niñeras y arañas
+2018-12-29
+
+Una inusual racha de palomitas merece un inusual post.
+
+La nota breve para El Regreso de Mary Poppins (hubiese preferido Mary Poppins Harder); Rob Marshall decepciona (dirigió Chicago a parte de una larga carrera en Broadway), Lin-Manuel cansa (la primera vez que le vi fue en Modern Family y fue extremadamente premonitorio), Meryl Streep sobra y... el resto hace lo que puede con un guión flojo flojo. Igual es que me han extirpado la infancia, pero yo creo que me ponen la original otra vez y la disfruto bastante más que esto.
+
+Sigue Bohemian Rhapsody; disfrutar de la música de Queen en unos altavoces de cine durante la mayor parte de dos horas y cuarto asegura el disfrute, y el resto tampoco está nada mal. Lástima de verla doblada (sospecho que en VO gana bastante), que haya visto horas y horas de Rami Malek interpretando otro papel (el resto de intérpretes, para mi desconocidos excepto Meñique y Mike Myers, desaparecen en sus papeles), y que al parecer tuvo una accidentada producción (Bryan Singer fue despedido a media producción- seguro que si hubiese seguido hubiesen habido aún más gatos), porque probablemente estaríamos ante palabras mayores. Igualmente, si no tenéis un sistema de sonido acojonante en casa, aprovechad el del cine.
+
+Por último, "Spider-Man: Un nuevo universo" (en original "Spider-Man: Into the Spider-Verse", mucho más descriptivo), de los notables Lord y Miller[1].
+
+El cómic y la animación son medios mágicos donde todo es posible y, pese a los progresos de los efectos especiales, todas las películas de acción de real basadas en cómics tienen un gran obstáculo inicial en pasar del papel a la carne y hueso. Curiosamente, el medio más natural, la animación, siempre se ha visto relegado a adaptaciones menores a televisión, y nunca ha tenido los presupuestos astronómicos del cine.
+
+No sabemos muy bien por qué, alguien en Sony (y más curiosamente aún, no en Disney), ha tenido la idea de hacer una peli del trepamuros con animación, poniéndole medios y más medios hasta parir este brutal viaje ácido cuántico, metafísico y chiripitifláutico donde la (magnífica) animación se estira para, por fin, que los héroes del cómic cobren vida en la gran pantalla sin concesiones. No sólo sin concesiones, sino a lo grande, con una historia ya inverosímil en los cómics: Spider-Man es una entidad multidimensional que se manifiesta en muy diversas formas en diferentes universos paralelos, desde un cerdo que habla (Peter Porker, The Amazing Spider-Ham) hasta en una niña anime con un mecha arácnido (pasando por anodinos Peter Parkers), que por supuesto pueden confluir espectacularmente. Algo que muy, muy probablemente hubiese sido un descarrilamiento épico en acción real aquí se vuelve un espectáculo visual que si bien sigue siendo inverosímil y sospechoso, nos deja pegados a la butaca.
+
+Quizá la peli tiene sus defectos (los que como yo estéis anclados en otras épocas musicales, dejaos llevar un poco), quizá hace falta que se hagan unas cuantas más como esta para pulir la fórmula y transcender, pero quizá nos hallemos ante un espectáculo único e imprescindible. Id a disfrutarla en la pantalla más grande que encontréis e intentad apagar el espíritu crítico un rato para gozar el resto al máximo.
+
+
+=> https://en.wikipedia.org/wiki/Phil_Lord_and_Christopher_Miller 1: https://en.wikipedia.org/wiki/Phil_Lord_and_Christopher_Miller
\ No newline at end of file
--- /dev/null
+# El futuro ya está aquí
+2018-12-15
+
+Problemente algún amigo de Spike Jonze le enseñó un prototipo de unos auriculares "verdaderamente inalámbricos" y le vino la inspiración para la terrible "Her" de 2013. Luego vendrían el Moto Hint en 2014, los Bragi Dash de 2015 y finalmente los AirPods de Apple en 2016 que trajeron la verdadera inalambricidad a las masas.
+
+Yo he esperado hasta que los Jabra Elite 65t tuvieran estupendas reseñas y estuviesen de oferta (130€) para subirme al carro de una tecnología intrigante. No estoy muy puesto en el tema, pero al parecer conseguir dos miniauriculares inalámbricos es bastante complicado, así que seguro que hay todavía más avances por delante. Espero especialmente los AirDots de Xiaomi, que seguro que son usables a un precio mucho menor de los otros auriculares de los que hablo.
+
+En cualquier caso, es una tecnología incipiente, pero los Elite funcionan la mar de bien, aunque:
+
+* ¡No tienen botón de mute! No es tanto problema, pero no te libera totalmente del dispositivo emparejado
+* El truco de conectar dos dispositivos a la vez no funciona con dispositivos que no tengan Bluetooth 5. No sé si con que uno de los dispositivos sea 5 basta o han de serlo ambos, con lo que los cambios de dispositivo son bastante incómodos (mantener el botón del auricular derecho pulsado unos 10s y darle a emparejar en el dispositivo).
+* Que sean dos aparatitos pequeños sin cuerda tiene sus limitaciones. No se pueden dejar colgando del cable y esas cosas
+* La aplicación de móvil no es completamente fiable y a veces se cierra, causando pequeños problemas de funcionalidad (deja de funcionar el modo "dejar pasar audio externo al pulsar el botón del auricular derecho dos veces"). En general es bastante mejorable
+
+Por contra, tienen cosas interesantes:
+
+* Los controles son la mar de intuitivos. Siempre he tenido problemas con los auriculares Bluetooth, pero estos son absolutamente fáciles de usar
+* La calidad de sonido es excelente (al menos para oídos muy poco sofisticados)
+* Los modos de dejar pasar sonido y de "escuchar tu propia voz en una llamada" funcionan bastante bien, aunque el "dejar pasar el sonido" introduce un perceptible ruido blanco de fondo
+* La caja cargadora es la mar de práctica (aunque no es USB-C)
+
+y mi mayor preocupación, que los auriculares con silicona no me funcionan muy bien, no es para tanto. El ajuste es bastante bueno y aunque dan un poco de calor y cansan en usos prolongados, son bastante cómodos.
+
+Creo que la tecnología aún no está del todo a punto, y que hace falta que se extienda más el Bluetooth 5 y estos aparatos bajen de precio para que rompan el mercado, pero aún así, los más inquietos pueden lanzarse a la piscina con bastante tranquilidad.
\ No newline at end of file
--- /dev/null
+# Notificaciones en la muñeca
+2018-12-14
+
+La vida es dura cuando a uno le gusta ser discreto, pero a menudo no se entera que hay algo vibrando en su bolsillo. Para subsanar esto, hace un año comencé a usar una Mi Band 2; otro cacharrito de Xiaomi que resuelve problemas a una fracción del coste de su competencia.
+
+La Mi Band 2 me ofrecía una funcionalidad primordial: vibración en la muñeca cuando recibo una notificación del móvil. Tiene funcionalidades de eso de la vida sana; pulsímetro, pedómetro y contabilidad del sueño, que uso casualmente (me hace gracia mirar los datos de tanto en cuando, pero poco más), así que realmente para mi tienen poca importancia. Sin embargo, a pesar de que resuelve el tema un poco... la solución se queda un poco corta.
+
+Sólo las llamadas de teléfono ofrecen alguna información contextual (el contacto que te llama). Todo lo demás, casi nada; para ciertas aplicaciones se muestran iconos específicos, pero no hay manera de saber quién te envía un Whatsapp o qué alarma está sonando. Aparentemente existen soluciones para mejorar esto, pero yo sólo probé las gratuitas sin éxito.
+
+La Mi Band 3, en cambio, promete texto de las notificaciones, así que entró en mi wishlist rápidamente, pues sigue teniendo un precio muy inferior a cualquier otro producto "fiable" comparable (e.g. tampoco me voy a liar a pedir cosas a Aliexpress de marcas desconocidas).
+
+Y cumple. Pero como la 2, con limitaciones. Principalmente:
+
+* El interfaz es muy poco ágil. Sólo tiene "swipes" en cuatro direcciones, pulsación corta y pulsación larga, lo que hace que cualquier interacción sean bastantes pasos. Por ejemplo, descartar notificaciones anteriores es: pulsación corta, un swipe arriba, swipes a la derecha hasta leerlas enteras, pulsación larga.
+
+No es terrible, pero...
+
+
+* Además, no hay más posibilidad que descartar. Todas estas modernidades de los productos que cuestan dinero, pues no
+
+
+
+Por lo demás, es un producto que cumple su función, tiene algún bonus, te puedes despreocupar del consumo de batería (al menos ahora que está nuevo) y... de nuevo, cuesta muy poco dinero- poniéndola en la categoría de "si sale mal no pasa nada", que es una categoría la mar de interesante.
\ No newline at end of file
--- /dev/null
+# ¿Faltan cinco maravillas? ¿Cuatro?
+2019-03-23
+
+Mucho se ha estado hablando estos días de cómo la vigésima película del MCU es la primera protagonizada por una mujer (Brie Larson, para ser precisos, exhibiendo un carisma prácticamente ilimitado), pero dejadme apuntar que hay un precedente de una película Disney muy reciente protagonizada por una ¿mutante? prima hermana de Bobby Drake. Me refiero por supuesto a Frozen, que es la peli de animación Disney (Disney Disney; Walt Disney Animation Studios) que más dólares ha generado para los del ratón (soy tramposo, sí. Según Box Office Mojo podría ser la duodécima que más gente ha visto en un cine, con aproximadamente la mitad de espectadores que Blancanieves. No es mi culpa que el único ránking de taquillas del que se habla es erróneo).
+
+¿Ha descubierto Disney que tienen un grupo demográfico muy importante que quiere verse con superpoderes en la gran pantalla muy... abandonado?
+
+Sea como sea, aquí tenemos a la Capitana Marvel- otro personaje del rollo cósmico que, salvo jamesgunadas aparte, en general me aburre.
+
+Pero nada de eso. Aunque la película tiene elementos galácticos de los que me aburren, en general es una road movie entre una superlativa Brie Larson y un entretenido Samuel L. Jackson, atiborrado de referencias noventeras y un atrevido sentido del humor que sólo chirría en un par de ocasiones.
+
+Además, el argumento tiene su miguilla y hay bastantes escenas de acción la mar de entretenidas (que cojean cuando se ponen más boladedragonescas, eso sí, pero afortunadamente no hay mucho de eso). En comparativa con la otra película de género (de superhéroes), no llega a la épica ese par de escenas de Wonder Woman (la de la playa y la de las trincheras), aunque el flojo acto final de Wonder Woman lastra a Diana y la pone detrás de la mucho más consistente Carol.
+
+¿Qué más se puede pedir? Pues no sé. Es de las pelis de Marvel que más me ha gustado (X2, Spiderverse, los Deadpools, los GotG son las que creo que he disfrutado más, y la diversión de los Ant-Man y Thor 3 no está mucho más lejos...). Así que id a ver a la Capitana Maravilla (y sobre todo, esperad a las *dos* escenas post créditos).
\ No newline at end of file
--- /dev/null
+# Jessica Jones y sus fabulosos amigos
+2019-07-01
+
+Tras tres tremendas temporadas, el malvado ratón echa el cierre a Alias Investigations y me deja sin una de mis series preferidas de los últimos tiempos.
+
+A tres años de poder beber en su país, la Jessie es un personaje reciente y fresco de Marvel creado por Brian Michael Bendis, que tiene cinco premios Eisner en su casa. Quizá de ahí deriva el frescor de la serie (en comparación, Spider-Man está a punto de cumplir los sesenta pero, oh maravilla de las cronologías tebeísticas, iba al cole con la susodicha). Jessica Jones está dotada de superfuerza, alcoholismo y voz en off que (supongo que por este último elemento) se mete a detective privado.
+
+Tras el prometedor éxito de Daredevil, Netflix se lanzó a la piscina de montar un miniuniverso neoyorquino con Iron Fist, Luke Cage y Jessica, todos en una escala de poder bastante baja (y por tanto, que requieren menos presupuesto) y lejos de la popularidad de los Iron Man de turno.
+
+Jessica Jones fue la segunda y como no podía ser de otra manera, de las artes marciales combinadas con la abogacía de Matt Murdock, nos vamos a la novela negra tirando a escabrosa con pinceladas de superpoderes. Para ello se fueron a buscar a la novia heroinómana de Breaking Bad, una estupenda Krysten Ritter que podría pasar por agente de la Continental si no fuera por la misteriosa ausencia de humo de cigarrillos en el Nueva York contemporáneo que habita.
+
+Pero por lo demás, nos hallamos ante un noir en toda regla con investigaciones, deducciones, interrogatorios y el ocasional trastorno psicopático violento que hace que si bien Jessica Jones no sea la sangría visceral de The Gruñisher, sí sea en episodios perturbador, tanto a un nivel psicológico como físico.
+
+Con todo esto, sorprendentemente, a diferencia de lo que vemos en Dan Defensor, donde los buenos son aburridos y todo el interés recae en los villanos (aún no he podido digerir que el Recluta Patoso sea el Kingpin), aquí es el elenco que acompaña a la Jones el que centra el argumento. Los villanos no son más que vehículos del cambio para los héroes, antihéroes o recontrahéroes, que incluyen a su hermana adoptiva, una ex-estrella infantil metida a locutora de radio; la madre de ambas (hasta que no acabé la serie no vi que esta es Rebecca de Mornay, muy cambiada desde su prostituta en 1983 de Risky Business), una despiadada abogada de altos vueltos (Carrie-Anne Moss; es decir, Trinity), un vecino drogadicto y unos cuantos más que se ven inmersos en las peligrosas tramas en las que Jessica se ve envuelta cual insecto atraído por la luz.
+
+A lo largo de tres temporadas que empiezan todas ellas pausadamente, introduciéndonos a buenos, malos y colocando todas las piezas ordenadamente, se desarrollan varios arcos de los personajes, que resultan interesantes por su guion y creíbles por las fantásticas interpretaciones de todos ellos. Hacia la mitad de todas las temporadas se comienzan a desatar eventos que hacen que sea la mar de complicado impedir que Netflix nos reproduzca todo el segmento final de la temporada non-stop.
+
+Por todo esto Jessica Jones es una serie que sólo los estómagos delicados deberían evitar. Hay suficientes elementos entre thriller, investigación, drama que hay algo para todo el mundo. Incluso las escenas de acción son interesantes ya que consiguen mantener el interés (la Jessie reparte hostias como panes y es dura de pelar- dura de pelar- pero no es absurdamente superpoderosa como para que sea complicado ponerla en un aprieto) y no aburren.
+
+Por tanto, son 3x13 episodios que debéis ver. Eso sí, hay que planificarlo bien para poder ver la parte final de cada temporada seguida… por si acaso.
\ No newline at end of file
--- /dev/null
+# El Guasón
+2019-11-28
+
+Hace como unos veinte años escuché un deliciosamente pedante chascarrillo; el sueño de todo aquel al que le gusta criticar lo popular para resaltar su inteligencia: "esta película contiene cosas nuevas y cosas buenas. El problema es que las cosas buenas no son nuevas y las cosas nuevas no son buenas".
+
+Desgraciadamente, creo que seguiré sin poderla usar, ya que creo que no hay suficientes cosas nuevas en Joker como para soltarla.
+
+Como podéis intuir, esa peli ultrapopular que lo ha petado en la taquilla me ha parecido una soberana pérdida de tiempo y he venido aquí a explicaros por qué.
+
+El Joker es el villano clásico de Batman con lo que a priori no parece descabellado hacerle una película- especialmente si es necesario saturar el mercado con películas de Marvel y DC. Pero en contra de muchos, no creo que sea un problema hacer una película sobre un psicópata violento con sangre y vísceras. Aburre la insistencia en interpretar que toda película es un entusiasta abrazo del ideario del protagonista. El problema es lo poco que se ofrece al espectador en dos horas.
+
+Sí, Joaquín Phoenix compensa el sufrimiento de quedarse en los huesos pasándoselo teta en pantalla y luciendo sus clases de interpretación corporal de la escuela Kate Bush. Sí, con millones de dólares puedes tener una excelente fotografía. Sí, hay estilosa violencia sin sentido. Pero la película carece de cualquier otro punto de interés que los que os he resumido en dos líneas. El argumento es completamente lineal. Los recursos narrativos se reducen básicamente a narración no fiable- algo completamente inesperado en compañía de gente que está como unas maracas. Nada, absolutamente nada que justifique las pretensiones del cerebro detrás de Resacón en las Vegas.
+
+Podría argumentarse que es cine de superhéroes, palomitero y poco más. Que pongamos las pelis de Los Vengadores no funcionan demasiado bien como arte y ensayo. Pero si bien en estas podemos adivinar siempre el final (buenos y Hollywood, poco más hay que decir), en Joker se avanza lentamente con un monótono GPS hacia un destino sin más drama que ver a alguien desperdiciar su talento intentando tapar carencias de guión (no estoy muy puesto en la filmografía de Joaquín Phoenix- sólo puedo recomendarle en "Todo por un sueño". Evitad Gladiator y Her). Yo diría que esto no es cine de superhéroes- es un estudio de la enfermedad mental, una arena donde tienes que competir con cucos y Kubricks que te lo van a poner muy difícil para no quedar completamente mediocre.
+
+Si no habéis visto unas diez veces La Naranja Mecánica, vale más la pena revisarla y encontrarle algún puntito más que se nos había pasado por alto. Y una vez hecho eso, poco más que indignación os sacará esto.
\ No newline at end of file
--- /dev/null
+# Asuntos gregorianos
+2019-12-16
+
+Llevo cierto tiempo manteniendo un par de calendarios de Google Calendar que eran un poco tostón, así que para 2020 he creado:
+
+https://github.com/festivus-es/festivus[1][2]
+
+
+=> https://github.com/festivus-es/festivus 1: https://github.com/festivus-es/festivus
+=> https://github.com/festivus-es/festivus 2: https://github.com/festivus-es/festivus
\ No newline at end of file
--- /dev/null
+# Huyendo a la oscuridad
+2019-12-26
+
+Aprovechando estar atrapado a 300 kilómetros por hora, un par de notas sobre las dos últimas series de Marvel finiquitadas.
+
+Tanto Cloak and Dagger como Runaways son dos series dirigidas a adolescentes- creo que esto se puede detectar no porque estén protagonizadas por jóvenes, sino por los interminables interludios con música pop dramática que cortan el rollo al menos una vez por episodio.
+
+Cloak and Dagger adapta la historia de un dúo de superhéroes con poderes complementarios- Tyrone y sus poderes de oscuridad y Tandy con sus poderes de luz. Aún con la herencia recibida de haber sido creados a principios de los ochenta (os dejo elucubrar cómo decidieron quién tendría qué poder entre un muchacho de tez oscura y una rubia blanca), en esta adaptación se subvierten un par de clichés y la ambientación en Nueva Orleans le da cierto colorido.
+
+Por su parte, Runaways se basa en un tebeo más moderno (sólo 16 años)- supongo que por eso los protagonistas se dejan un dineral en Ubers (espero que a cambio de una módica compensación por product placement). A destacar el pelotazo de cabecera.
+
+Ambas series se vienen abajo si miramos fijamente el guion, pero proporcionan entretenimiento fácil y rápido. Ambas completan bastante bien sus arcos (dos temporadas de diez para Cloak and Dagger, tres de diez para Runaways), aunque ciertamente es cierto lo que muchas reseñas comentan de Runaways- parece que en la tercera temporada deciden cambiar completamente de dirección, resolver todo lo que se había planteado en las dos primeras y tirar por un camino nuevo- algo que no es problemático, sino sorprendente.
+
+En cualquier caso, dos entretenimientos ligeros que quizá hagan las delicias de los más jóvenes, pero que sólo deberíamos ver una vez vistas todas las series buenas de Marvel y nos encontremos con ganas de más.
\ No newline at end of file
--- /dev/null
+# A caballo drogado...
+2020-02-10
+
+Aunque siempre defenderé que siempre ha habido televisión de calidad, es innegable que ahora mismo es imposible evaluar toda la producción de series y que hablar de "la mejor serie según tal o tal condición" es un sinsentido, con lo que las críticas deberían hiperventilar un poco menos y limitarse a ofrecernos suficiente información para que decidamos si invertimos nuestro precioso tiempo en un programa u otro.
+
+Pero la verdad que ya me costó no soltar muchos superlativos con The Good Place y ahora me está costando con BoJack. Quizá sea la vergüenza de no saber evaluar objetivamente su transcendencia; ¿son dos reflexiones profundas sobre la vida, el universo y todo lo demás? ¿o son vulgares intentos de pasar conceptos básicos por sesudos idearios?
+
+BoJack Horseman es otra serie de animación con tintes surrealistas (animales y personas antropomórficas conviven) tirando cargas de profundidad a los 90 y a Hollywood (dos personas son estrellas de sitcoms familiares de la época) que intenta indagar en la moralidad y ética (uno de ellos, el protagonista, es un drogadicto que mantiene relaciones tóxicas con todo su entorno- la serie básicamente se fundamenta en rodearlo de personajes interesantes y ver cómo interaccionan) con toques de comedia surrealista. Es posible que sea una de las producciones con mayor densidad de temas delicados por hora (yo diría que 2 o 3), que trata sin demasiados tapujos y de una manera que yo por lo menos no he visto muy frecuentemente.
+
+Si a esto juntamos unos guiones trabajados, con diálogos metralleta y ganas de experimentar narrativamente (hay bastantes episodios temáticos, entre los que destaca uno sin diálogo), tenemos una serie sólida en todos los aspectos que aunque en ocasiones puede dejarnos un poco tocados, creo que ofrece muchos elementos para los que gusten de estudiar la condición humana.
\ No newline at end of file
--- /dev/null
+# ¿Dejando en un buen lugar a Un Buen Lugar?
+2020-02-02
+
+En mi opinión, el propósito de una crítica de una serie de televisión es ayudar a decidir al lector si debe invertir su tiempo en ver una serie, o no. Esperar a que acabe una serie para criticarla es entonces una apuesta más segura (no corre uno el riesgo de que la serie decaiga justo después y luego le vengan a uno con reclamaciones), pero menos útil (si alguien no ha visto una serie en todos esos años, ¿la va a ver ahora?).
+
+Pero aun así, sospecho que The Good Place (2016), a pesar de contar con una ruidosa legión de seguidores (entre los que me incluyo), ha pasado desapercibida para el gran público.
+
+Y es una lástima, porque nos ofrece cosas que pocas otras series tratan.
+
+Si llamamos ciencia ficción a las historias que nos hablan sobre la realidad presente utilizando futuros inventados como metáfora, quizá deberíamos decir que The Good Place es "cielo ficción", pues utiliza un supuesto indemostrable (hay algo después de la muerte) para hablarnos de la moralidad y ética humanas.
+
+La protagonista, una espléndida Kirsten Bell, se encuentra un día en The Good Place tras una muerta ridícula que completa una vida poco recomendable. Allí, un "Arquitecto" (un Ted Danson con la vis cómica totalmente en forma pese a su blanca cabellera), le explica que va a pasar la eternidad junto con su media naranja mística ideal, un profesor de filosofía moral (William Jackson Harper- desconocido para mí... debió pillarme entre bostezo y bostezo de Patterson).
+
+Con esta premisa, se exploran todo tipo de conceptos morales- incluida alguna recreación animada del dilema del tranvía- y metafísicos (cómo decidir quién va al "cielo" y quién al "infierno", etc.). Dentro de que lo más natural es que la serie realmente no aporte mucho al tema (llevamos literalmente milenios rompiéndonos la cabeza sobre estas cuestiones), debo decir que al menos opino que la serie consigue integrar muy bien estas discusiones dentro del hilo argumental y a partir de ellas extrae un número significativo de carcajadas, pero quizá para ese tipo de personas que lo analizan todo al dedillo y en tiempo real les pueda resultar predecible.
+
+A destacar las excelentes interpretaciones de la mayoría del reparto, pero en especial de D'Arcy Carden, que encarna a Janet, algo así como la Siri del cielo que en 51 episodios completa un impresionante tour de force de sutileza y diversidad de registros realmente notable. Manny Jacinto interpreta a otro de los personales principales, del que realmente no se puede hablar sin desvelar importantes puntos argumentales que mejor quedan sin desvelar, pero basta decir que lo borda.
+
+Si nos pusiésemos un poco finos, quizá la relación entre Eleanor (Kirsten Bell) y Chidi (William Jackson Harper), que intenta ser uno de los puntos focales de la historia, a mí me dejó un tanto indiferente, pero a parte de eso, The Good Place me parece una refrescante pequeña maravilla televisiva, fundamentada en un trabajadísimo guion, un reparto principal que no decae a lo largo de cuatro temporadas y, en ocasiones, una inventiva visual no desbordante, pero sí muy notable.
+
+Creo que The Good Place puede ofrecer bastante a todo el mundo, sin caer en ninguna trampa de mínimos comunes denominadores ni subestimar en ningún momento al espectador, así que si no la habéis visto... ¡deberíais!
\ No newline at end of file
--- /dev/null
+# A simple syntax for complex argumentation
+2020-06-30
+
+https://argdown.org/[1][2]
+
+
+=> https://argdown.org/ 1: https://argdown.org/
+=> https://argdown.org/ 2: https://argdown.org/
\ No newline at end of file
--- /dev/null
+# Destinos oscuros
+2020-06-27
+
+Seguimos con los viajes en el tiempo, esta vez dentro de la saga #1 del género; es decir, las pelis donde Linda Hamilton encarna a Sarah Connor.
+
+Casi 30 años después de Terminator 2, una película que aún se me antoja absolutamente redonda y que sigue petándolo desde el milenio pasado, James Cameron produce y el irresponsable de Deadpool ¿dirige? en una extraña combinación que lamentablemente no sale lo bien que podría salir, pero la verdad es que también podría haber salido mucho peor.
+
+La premisa es ingeniosa (sí, en Terminator 2 cambiaron el futuro. Pero total, ¿para qué? La humanidad no tiene remedio), vuelven Gobernator y la auténtica Sarah Connor, pero poco más. Pese a tener un argumento interesante, la narración se queda corta y los actores están entre aburridos y perdidos; con Arnie y Sarah Connor siendo meras sombras de lo que fueron en T2; al igual que las escenas de acción que si bien son imaginativas y no tienen mayores defectos, se quedan a años luz de, por ejemplo, la secuencia en los canales de Los Ángeles.
+
+A destacar cómo consiguen colar Madrid por México (ejercicio comparativo para el lector con ese episodio de El Equipo A, ese otro episodio de MacGyver y la descacharrante secuencia del dos caballos de "Sólo para sus ojos" de 007). Por lo demás, una peli que gustará en gran medida según las expectativas que tengamos. Quizá si habéis visto las otras películas y son tan fiasco como dicen, pues quizá os deje mejor sabor de boca, pero como secuela directa (que parece la intención) de una de las mejores películas de acción de la historia, pues hay que tomárselo con filosofía.
\ No newline at end of file
--- /dev/null
+# Disquisiciones sobre envolturas donde los gusanos se tornan crisálidas
+2020-06-21
+
+"The No Asshole Rule" es un libro sobre desgraciadamente quizá la mayoría de entornos sociales en los que participamos; es decir, uno de esos donde hay personajes (mayoritariamente en posiciones de poder) que amargan la vida a los demás.
+
+Me cuesta decidir si recomendarlo. Pese a tratar un par de temas incómodos (¿no serás tu el capullo? ¿puede ser útil un capullo?) y resultar ameno y cortito, el libro parece aportar poco más allá del sentido común y un montón de anécdotas y estudios de esos de comportamiento que sospechosamente dicen exactamente lo que queremos oír.
+
+Pero puede que el valor de este libro sea tenerlo a mano para regalar/recomendar/prestar a alguien que lo necesite, pues a veces 200 páginas escritas por un profesor de Stanford pueden resultar más efectivas que lo que podamos improvisar nosotros mismos (por no hablar del esfuerzo que supone).
+
+Dentro de ese contexto, puede ser una buena inversión dedicar un par de tardes a leerlo y familiarizarnos con su contenido para poderlo prescribir con conocimiento de causa; así que sin ser un libro brillante ni mucho menos, seguramente haya cosas mucho peores a las que nos podemos dedicar en vez de a su lectura.
\ No newline at end of file
--- /dev/null
+# El fin de los tiempos
+2020-06-26
+
+Se hace difícil escribir sobre El Ministerio del Tiempo sin la certeza de saber si el episodio emitido el pasado martes habrá sido el último y definitivo.
+
+Pero asumiremos que sí, porque todo parece indicar que así ha sido.
+
+Los viajes en el tiempo, en prácticamente todas sus modalidades, son un recurso narrativo muy atractivo, pero a la vez muy arriesgado. Como mínimo, provoca cefaleas (véase Primer[1]); algo que no es de extrañar cuando se juega con algo que los seres humanos no entendemos como la naturaleza del tiempo.
+
+La experiencia nos dice que la mejor manera de salir airoso en estos asuntos es aprender a tirar por la ventana cuando conviene la coherencia cuando esta no es más que un obstáculo a la hora de contar una buena historia.
+
+El Ministerio del Tiempo adopta esta sana estrategia, pero diríase que se pasa varios pueblos con ella. La verdad que lo aceptamos, porque la idea de la serie es la sugerente mezcla de un concepto como el funcionariado con los susodichos viajes en el tiempo, en forma de puertas que permiten acceder a distintos momentos que son controladas por un ministerio secreto del gobierno de España.
+
+La premisa se completa con la misión de proteger la historia (que a menudo no queda muy claro de qué). De esto se encarga el ministerio con sus patrullas y sus misiones, lo que da pie a todo tipo de aventuras (acción, thriller, etc.) a lo largo de varios siglos.
+
+Esto suena a idea cojonuda, y de hecho lo es, y la serie a menudo lo borda; especialmente gracias a grandes dosis de sentido del humor y momentos de gran inventiva. Sin embargo, la serie cojea a menudo- el que escribe diría que por falta de tradición en la industria televisiva española en hacer series de este estilo- no estoy muy puesto en el tema, pero comparen los siete párrafos sobre ciencia ficción y TV española[2] con su homólogo yanqui[3].
+
+Esto se ve sobre todo en que la mayoría de los elementos de la serie están bastante bien, pero encajan poco. El guion flojea a menudo y el reparto no consigue taparlo.
+
+Pero a pesar de todo ello, creo que El Ministerio del Tiempo es una serie imprescindible (al menos en su mercado. Es un producto muy poco exportable, pero al parecer sí adaptable). Como mínimo, la exposición histórica es bastante divulgativa y ya por ello merece la pena sentarse a verla, pero es que además, cuando dan en el clavo, lo clavan de verdad.
+
+Además, está gratis entera, ¿no? Pues háganse ministéricos.
+
+
+=> https://www.imdb.com/title/tt0390384/ 1: https://www.imdb.com/title/tt0390384/
+=> https://es.wikipedia.org/wiki/Ciencia_ficci%C3%B3n_espa%C3%B1ola#La_televisi%C3%B3n 2: https://es.wikipedia.org/wiki/Ciencia_ficci%C3%B3n_espa%C3%B1ola#La_televisi%C3%B3n
+=> https://en.wikipedia.org/wiki/U.S._television_science_fiction 3: https://en.wikipedia.org/wiki/U.S._television_science_fiction
\ No newline at end of file
--- /dev/null
+# Google pushes “text fragment links” with new Chrome extension
+2020-06-19
+
+https://arstechnica.com/gadgets/2020/06/google-pushes-text-fragment-links-with-new-chrome-extension/[1][2]
+
+Todo lo que sea intentar purgar los pantallazos de la web (inaccesibles, no "responsives", etc.) tienen mi apoyo.
+
+
+=> https://arstechnica.com/gadgets/2020/06/google-pushes-text-fragment-links-with-new-chrome-extension/ 1: https://arstechnica.com/gadgets/2020/06/google-pushes-text-fragment-links-with-new-chrome-extension/
+=> https://arstechnica.com/gadgets/2020/06/google-pushes-text-fragment-links-with-new-chrome-extension/ 2: https://arstechnica.com/gadgets/2020/06/google-pushes-text-fragment-links-with-new-chrome-extension/
\ No newline at end of file
--- /dev/null
+# Designing Data-Intensive Applications
+2020-07-05
+
+Creo que una métrica fundamental de un libro técnico es su periodo de vigencia, especialmente en contraste con su precio y tamaño.
+
+Aunque me parece poco probable que este "DDIA" tenga una vida tan larga como pongamos "The Mythical Man-Month", que a sus 45 años muchos aún deberían leer, creo que es un libro que puede ser útil durante quizá más de una década. Proporciona una visión bastante general sobre el mundo del almacenado y procesado de datos, con el nivel de detalle suficiente para poder evaluar y comparar las diferentes tecnologías existentes para poder tomar decisiones informadas.
+
+El libro está razonablemente escrito, y puede leerse tanto secuencialmente como ser usado como referencia, o incluso como índice para localizar material más detallado gracias a las extensivas bibliografías de cada capítulo.
+
+Quizá lo que más he echado en falta es un análisis más claro sobre los límites y carencias de algunas tecnologías, confiando mucho en que el lector sabrá deducir y contextualizar. A pesar de esto, recomendaría este libro a todo aquel que trabaje con sistemas que necesitan almacenar datos para tener una visión general a la hora de escoger tecnologías.
\ No newline at end of file
--- /dev/null
+# Enchufe familiar
+2020-07-28
+
+http://informatica.blogs.uoc.edu/2020/07/28/halt-and-catch-fire/[1]
+
+Mi hermano escribe sobre Halt and Catch Fire. Yo dije la mía sobre el tema por aquí anteriormente[2].
+
+
+=> http://informatica.blogs.uoc.edu/2020/07/28/halt-and-catch-fire/ 1: http://informatica.blogs.uoc.edu/2020/07/28/halt-and-catch-fire/
+=> https://alex.corcoles.net/2017/10/los-adorables-perturbados-que-me-leen-la-mente-mientras-duermo/ 2: https://alex.corcoles.net/2017/10/los-adorables-perturbados-que-me-leen-la-mente-mientras-duermo/
\ No newline at end of file
--- /dev/null
+# Fabríquese un KVM IP por 100€
+2020-07-23
+
+https://mtlynch.io/tinypilot/[1][2]
+
+A base de una Raspberry Pi, una capturadora de vídeo y el soporte de Linux de OTG.
+
+
+=> https://mtlynch.io/tinypilot/ 1: https://mtlynch.io/tinypilot/
+=> https://mtlynch.io/tinypilot/ 2: https://mtlynch.io/tinypilot/
\ No newline at end of file
--- /dev/null
+# ISOs y USBs
+2020-07-01
+
+Acabo de instalar un Windows mediante Ventoy[1]. Ventoy te formatea un USB te mete una partición con su bootloader y te deja una partición vacía. El bootloader detecta ISOs botables en esa partición y te saca un menu al arrancar para escoger una.
+
+Esto te permite tener varios ISOs en el mismo USB y no tener que reformatear e instalar cada instalador nuevo que queramos usar.
+
+Ya existían otros sistemas que permiten hacer esto, pero generalmente son sólo para Windows, son complicados o no funcionan bien, pero Ventoy funciona también en Linux y me ha funcionado todo a la primera y sin complicaciones.
+
+
+=> https://www.ventoy.net/ 1: https://www.ventoy.net/
\ No newline at end of file
--- /dev/null
+# Me he quedado sin carné
+2020-07-28
+
+https://twitter.com/enriquelavigne/status/1287754432839659520[1]
+
+Aunque admiro profundamente a Jackie Chan, debo confesar que no conozco muy bien su filmografía. Pero es de juzgado de guardia no saber que Los Supercamorristas está filmada a la vuelta de la esquina[2].
+
+
+=> https://twitter.com/enriquelavigne/status/1287754432839659520 1: https://twitter.com/enriquelavigne/status/1287754432839659520
+=> https://www.elconfidencial.com/cultura/2020-07-25/jackie-chan-raval-rodaje-supercamorristas_2641636/ 2: https://www.elconfidencial.com/cultura/2020-07-25/jackie-chan-raval-rodaje-supercamorristas_2641636/
\ No newline at end of file
--- /dev/null
+# Memoria infinita
+2020-07-30
+
+https://es.aliexpress.com/item/4001217873190.html[1][2]
+
+Parece ser que en Aliexpress ya hay PCs de refrigeración pasiva (véase The Scooter Computer de Jeff Atwood[3]) con 64gb de RAM.
+
+Son unos 750€; 32gb salen sobre los 500€. Súmese el canguelo (y potenciales problemas) de gastarse una cantidad significativa de dinero en importar algo desde tan lejos.
+
+Pero sería un laboratorio bastante potente para experimentar. El servidor más o menos equivalente en Hetzner va a 40€/mes (y si uno va por subasta, no hay inversión inicial). Falta investigar la opción tienda local, eso sí.
+
+
+=> https://es.aliexpress.com/item/4001217873190.html 1: https://es.aliexpress.com/item/4001217873190.html
+=> https://es.aliexpress.com/item/4001217873190.html 2: https://es.aliexpress.com/item/4001217873190.html
+=> https://blog.codinghorror.com/the-scooter-computer/ 3: https://blog.codinghorror.com/the-scooter-computer/
\ No newline at end of file
--- /dev/null
+# Muerte por monocultura
+2020-07-28
+
+No sé cuánta pasta habrán sacado los que consiguieron controlar un puñado de cuentas de tuiteros de alto alcance, pero creo que está claro que Twitter (y Facebook, Instagram, etc.) son un blanco muy jugoso.
+
+Con todo el mundo enganchado a un puñado de redes sociales, el impacto de una brecha de seguridad en estas es mayor que en otros muchos blancos. No, probablemente no nos van a robar dinero directamente como si robasen un banco, pero si ya es preocupante el uso de la influencia de estas plataformas por parte de las compañías que las controlan, bajo el escrutinio de gobiernos y grandes empresas(1), ¿cuán preocupante es cuando asumen el control agentes declaradamente malignos?
+
+Ciertamente Twitter puede permitirse mucha mejor seguridad que la que me puedo permitir yo en este blog, pero ¿cómo funcionan los números de coste/beneficio cuando resquebrajar un poquito Twitter te permite suplantar de un plumazo las publicaciones de algunas de las personalidades con más alcance del mundo?
+
+Es especialmente flagrante cuando esta monocultura letal es innecesaria. Estuvimos ahí rozando con los dedos una época en la que todo tenía RSS y la muerte de Google Reader tuvo un impacto significativo en el mundo. Aún a día de hoy muchos medios disponen de RSS (aunque los medios de noticias generalistas en general, no[1]) y es razonablemente fácil meterse en el mundillo (Feedly gratis hasta 100 fuentes de RSS. Yo soy un exagerado y tengo 106 fuentes vivas en mi Miniflux).
+
+Quizá el fediverso, la IndieWeb o lo que sea esta semana aún no están listos del todo para reemplazar las redes sociales cerradas por un hermoso mundo distribuido y federado (yo, que tengo bastante obsesión por estos temas, aún no lo veo del todo claro para uso propio y aún estoy lejos de tener una recomendación para uso en general), pero hoy mismo se pueden dar pequeños pasos en la buena dirección
+
+(1) ¿Qué le da más insomnio a Zuck? ¿Los monstruos gigantes pero lentos que son los gobiernos o que Coca-Cola decida retirar su publicidad de Facebook?[2]
+
+
+=> https://alex.corcoles.net/2020/07/noticiarios-y-documentales/ 1: https://alex.corcoles.net/2020/07/noticiarios-y-documentales/
+=> https://www.theverge.com/21307454/unilever-verizon-coca-cola-starbucks-microsoft-ads-facebook 2: https://www.theverge.com/21307454/unilever-verizon-coca-cola-starbucks-microsoft-ads-facebook
\ No newline at end of file
--- /dev/null
+# No me sigas
+2020-07-25
+
+https://fedilab.app/wiki/untrackme/[1][2]
+
+Siguiendo con lo de siempre, me he topado con esta curiosa aplicación que enlaza a tres interesantes "proxies" para Twitter, Instagram y YouTube.
+
+
+=> https://fedilab.app/wiki/untrackme/ 1: https://fedilab.app/wiki/untrackme/
+=> https://fedilab.app/wiki/untrackme/ 2: https://fedilab.app/wiki/untrackme/
\ No newline at end of file
--- /dev/null
+# Noticiarios y Documentales
+2020-07-12
+
+Muchos lloran la muerte de Google Reader, pero yo lloro más la estúpida muerte de Google News en España[1].
+
+Google News, que sigue operando fuera de España[2], agrega noticias de diversos medios, las categoriza y aglutina (es decir, presenta una misma noticia de varios medios como una, enlazando a las "variantes"). Además, proporciona bastantes feeds RSS.
+
+Pero aunque a uno le guste considerarse ciudadano del mundo, ciertamente es práctico incluir la geografía en la ponderación de la importancia de una noticia, y además los feeds de RSS de Google News no acaban de funcionar bien en mi lector de RSS actual[3].
+
+Mi gran esperanza es algo como Scroll[4], con los que Mozilla estaba maquinando[5]. Mi ideal es poder construirme RSS de las temáticas de noticias que me interesen y poder leerlas cómodamente (quizá porque el cuerpo de la noticia entero está en el RSS, aunque me atraía la idea de la agregación de Google News y poder escoger qué medios leer para cada noticia). Creo que tampoco me importaría pagar para poder leer según qué contenidos y no tener que soportar tormentas de anuncios que doblegan al navegador (vale, AMP puede ser maligno, pero...).
+
+Lo podéis llamar el Spotify de las noticias o como queráis, pero creo que de momento no existe esto con la relevancia geográfica que necesito.
+
+El panorama de los medios individuales tampoco es genial. Muchos medios tienen unos RSS francamente nefastos. Además que cada vez más, al que prefiere usar varios medios, los pagos por medio no le salen nada rentables (al igual que nadie querría pagar una suscripción musical de cada major).
+
+Como experimento, temporalmente estoy haciendo pruebas piloto con... ¡Microsoft News[6]! El contenido promocionado es francamente indignante y la selección es bastante pobre, pero parece saciar temporalmente mis necesidades. Si miráis bien la URL, veréis que "internamente" es Bing, lo cual me ha llevado rápidamente a descubrir que Bing News parece estar cascado ahora mismo[7]... Al menos tiene una consideración geográfica adecuada, es relativamente personalizable y no funciona mal.
+
+
+=> https://support.google.com/news/publisher-center/answer/9609687?hl=es 1: https://support.google.com/news/publisher-center/answer/9609687?hl=es
+=> https://news.google.com/topstories?hl=en-US&gl=US&ceid=US:en 2: https://news.google.com/topstories?hl=en-US&gl=US&ceid=US:en
+=> https://miniflux.app/ 3: https://miniflux.app/
+=> https://scroll.com/ 4: https://scroll.com/
+=> https://support.mozilla.org/en-US/kb/firefox-better-web 5: https://support.mozilla.org/en-US/kb/firefox-better-web
+=> https://play.google.com/store/apps/details?id=com.microsoft.amp.apps.bingnews 6: https://play.google.com/store/apps/details?id=com.microsoft.amp.apps.bingnews
+=> https://www.bing.com/news/ 7: https://www.bing.com/news/
\ No newline at end of file
--- /dev/null
+# Soy un ser determinista
+2020-07-12
+
+Me recuerda un compañero que me repito más que el ajo:
+
+https://twitter.com/javier%5C_tejero/status/1282208442686603265[1]
+
+Javi supongo que se refiere al periodo en que trabajábamos en una pequeña consultora que hacía desarrollos centrados en redes sociales que había desaparecido de mi mente. Ahora se me aparecen vagos recuerdos del que probablemente fue el inicio de mi descontento con las redes, en especial, Facebook.
+
+He revisado un poco mis publicaciones recientes y extrañamente no he pontificado sobre estos temas últimamente por aquí, así que os fastidiáis.
+
+No me las voy a dar ahora de haber acertado de pleno ni de ser un adelantado, después de todo sospecho que la cosa iba más por las APIs de Facebook (aunque recuerdo que me parecían de un REST ejemplar) y de sus oscuras reglas (bueno, ahí sí que DHH se ha dado cuenta tarde[2] :). Pero sí me fascina mi determinismo en que al retomar la batalla una década después, me haya ido a exactamente la misma estrategia.
+
+Francamente creo que en la comunicación unipersonal, es tan fácil enviar un e-mail (o incluso más fácil si queremos tener una conversación mínimamente elaborada) como usar la red social de turno para comunicarnos. Quizá perdemos la facilidad de que la conversación sea semi-pública, pero sinceramente, creo que salvo el bueno de Javi y yo, más gente (probablemente, sólo una, ciertamente :) verá este post que el tuit de Javi. Y qué más da.
+
+Para comunicación pública yo tengo mi blog, y creo que hoy en día siguen existiendo servicios gratuitos para ello más que potables. Perdemos la dopamina de los likes y los retuits y la madre que los parió, sí. Hoy en día el tema RSS ha perdido tanta inercia que parece que virtualmente nadie usa lectores de RSS, con lo que lo más probable que el tuit en el que enlazaré esta publicación tenga mucho más alcance que el post en sí.
+
+Volviendo al mensaje de Javi, tiene más razón que un santo: "Hoy en día otras RRSS han ganado mucho terreno al e-mail, muy a nuestro pesar. Obviamente, no pinta bien.". No pinta bien, pero resistid. No creo que nadie haya comenzado a usar un lector de RSS después de que dijera que mis tuits no iban a ser más que enlaces a este blog. No creo que vaya a causar un efecto de red perceptible, así que igual sólo estoy haciendo activismo de sofá. Yo voy a seguir mirándome el Fediverse, Lemmy, Mastodon, etc. y al menos me entretendré a ratos.
+
+
+=> https://twitter.com/javier%5C_tejero/status/1282208442686603265 1: https://twitter.com/javier%5C_tejero/status/1282208442686603265
+=> https://twitter.com/dhh/status/1273748071298392065 2: https://twitter.com/dhh/status/1273748071298392065
\ No newline at end of file
--- /dev/null
+# The New Economics for Industry, Government, Education
+2020-07-05
+
+No sé dónde vi recomendado este curioso libro de William Edwards Deming, un sr. creo que desconocido para el gran público, pero famoso en círculos económicos y que al parecer podría ser el bisabuelo de todas las modas ágiles/lean/etc. que están en boga últimamente.
+
+La redacción es lo que más llama la atención del libro. Deming no podría ser más imperativo y técnico, incluso dentro de lo que suele ser un libro técnico, y eso distrae.
+
+El contenido del libro es interesante y aunque a veces parece sentido común, es de ese que no es tan común como debería. Sí que está formulado en unos términos pelín grandilocuentes ("The Deming System of Profound Knowledge", vaya) y puede resultar un tanto reiterativo como otros tantos libros que nos venden una idea una y otra vez con distintos ejemplos.
+
+Me es difícil decidir a quién recomendar el libro; supongo que a los que quieran profundizar en los orígenes de todo lo que vemos hoy en día, aunque quizá existan materiales más fáciles de leer y didácticos.
\ No newline at end of file
--- /dev/null
+# The Vast of Night
+2020-07-04
+
+El a menudo infravalorado catálogo de Amazon Prime a veces depara sorpresas, como The Vast of Night, una peli que ha tenido bastante éxito en festivales, pero de la que probablemente no hayáis oído hablar.
+
+Se trata de un homenaje experimental a los OVNIs, la vida rural estadounidense, la radio y las centralitas telefónicas (y yo diría que en el orden inverso al que he usado).
+
+La hija de la operadora de la centralita y el DJ del pueblo fluyen en una noche llena de misterio, labrado sobre el uso de los medios.
+
+El primero y más espectacular, una centralita cableada, al parecer reconstruida hasta ser funcional para el rodaje, que permite que la actriz protagonista luzca espectacularmente un fluido manejo de los cables en una interpretación física extremadamente destacable. El funcionamiento de la centralita se establece como un sorprendente elemento dramático y narrativo que por sí solo, ya merece sentarse a ver este experimento.
+
+También destacan la emisora de radio y una grabadora; en particular la película juega con la imagen (o más bien, la falta de ella) para ponernos en la piel de los personajes invisibles y mudos que siguen la acción de la noche. Estos juegos se combinan con una realización muy atrevida llena de contrastes entre planos secuencia inverosímiles y diálogos radiofónicos en plano fijo que misteriosamente te mantienen enganchado.
+
+The Vast of Night no acaba de explotar en sus 90 minutos, en gran parte porque pone en un lejano segundo plano detalles como el argumento, que pese fluir adecuadamente y gozar de despliegue de recursos narrativos, no da mucho de sí. Pero es una película diferente, refrescante y que sorprende y enriquece a partes iguales, que merece que nos sentemos a oscuras para juzgar el éxito del experimento.
\ No newline at end of file
--- /dev/null
+# Viernes de seguimiento
+2020-07-17
+
+Dentro de mis planes para reconquistar al mundo... Un poco de contenido que podéis añadir a vuestro (¿nuevo?) lector de RSS...
+
+* The Universe of Discourse[1], el blog Mark Dominus, que ahora descubro que aparentemente es conocido por un libro de programación funcional para Perl. Aunque su verdadera joya es Content-Type: text/shitpost[2]. Todo son curiosidades que divagan entre la matemática, literatura y historia.
+* dangermouse.net[3], el blog de David Morgan-Mar. Un clásico de los webcómics, sobre todo por Irregular Webcomic!, hecho con Lego desde tiempos inmemoriales. Quizá es mejor seguir sus webcómics, pero hace un post diario en su blog con sus vivencias y enlaces a los webcómics del día.
+* Fabien Sanglard's Website[4], del autor de esos libros cojonudos sobre la implementación de los primeros juegos de id Software. Postea poco, sobre todo artículos sobre gráficos de videojuegos.
+* jwz[5], el blog de JWZ. Un sr. muy raro que postea cosas muy raras. Pero claro, qué se podría esperar del autor de XScreenSaver y contribuidor histórico de XEmacs y Netscape Navigator.
+* otro blog más[6], el blog de mi hermano, otro que debería tuitear menos y escribir más.
+
+
+=> https://blog.plover.com/ 1: https://blog.plover.com/
+=> https://shitpost.plover.com/ 2: https://shitpost.plover.com/
+=> https://www.dangermouse.net/ 3: https://www.dangermouse.net/
+=> https://fabiensanglard.net/ 4: https://fabiensanglard.net/
+=> https://www.jwz.org/blog/ 5: https://www.jwz.org/blog/
+=> https://obm.corcoles.net/ 6: https://obm.corcoles.net/
\ No newline at end of file
--- /dev/null
+# El universo recursivo
+2020-08-30
+
+http://www.amandaghassaei.com/blog/2020/05/01/the-recursive-universe/[1][2]
+
+Aunque me parece intuitivo que es posible, no sabía que se había conseguido implementar el juego de la vida usando el juego de la vida.
+
+
+=> http://www.amandaghassaei.com/blog/2020/05/01/the-recursive-universe/ 1: http://www.amandaghassaei.com/blog/2020/05/01/the-recursive-universe/
+=> http://www.amandaghassaei.com/blog/2020/05/01/the-recursive-universe/ 2: http://www.amandaghassaei.com/blog/2020/05/01/the-recursive-universe/
\ No newline at end of file
--- /dev/null
+# Gastronomía oscura
+2020-08-15
+
+https://www.atlasobscura.com/articles/how-to-find-historic-cookbooks[1][2]
+
+
+=> https://www.atlasobscura.com/articles/how-to-find-historic-cookbooks 1: https://www.atlasobscura.com/articles/how-to-find-historic-cookbooks
+=> https://www.atlasobscura.com/articles/how-to-find-historic-cookbooks 2: https://www.atlasobscura.com/articles/how-to-find-historic-cookbooks
\ No newline at end of file
--- /dev/null
+# La agencia maravillas
+2020-08-16
+
+Tras siete temporadas, más de 100 episodios y pasar por Aranda de Duero, el primer serial de acción real del MCU toca a su fin.
+
+La serie sigue las aventuras de, como su nombre indica, un conjunto de agentes de S.H.I.E.L.D, la omnipresente organización benévola secreta del universo Marvel.
+
+No intentaré resumir el argumento (superhéroes y espías) ni entrar en detalle. Hay temporadas más fuertes y más flojas; en particular la última deja un excelente sabor de boca con una serie de episodios con viajes en el tiempo en la que se lo pasan pipa con topicazos de varias décadas (por supuesto, los 80 son lo mejor, pero el homenaje setentero a los uniformes clásicos de S.H.I.E.L.D en los tebeos es francamente destacable). Como todo lo Marvel, inevitablemente el rollo cósmico acaba por cansar y creo que la serie funciona mejor cuando se deja de grandilocuencias y combina con gracia el humor con los espías y los superpoderes.
+
+El reparto es irregular; soy fan absoluto de Phil Coulson (espléndido y destacable en las películas, aquí protagonista), Melinda May (interpretada por... la Chun-Li de la peli de Street Fighter del 94) y secundarios como Enoch (el más carismático de los inexpresivos Cronicoms) o el dúo Lance Hunter/Bobbi Morse (tan buenos que los sacaron de la serie para hacer un spin-off que no fue a ningún sitio). Quizá el exceso de buenismo (y sosismo) de los buenos y la falta de villanos carismáticos son lo que impide a los agentes competir en la misma liga que Jessica Jones/El Castigador de Netflix, pero aun así, Agents of S.H.I.E.L.D ha sabido entretenernos durante unas buenas temporadas.
+
+Sospecho que la estrategia televisiva de Marvel seguirá apostando por series de pocas temporadas, pero creo que los agentes demuestran que es posible seguir el modelo de los cómics impresos, con series que pueden mantenernos enganchados durante mucho tiempo y encadenar arcos argumentales, e ir mutando. Eso sí, no sé si el mundo está preparado para culebrones de superhéroes de 10.000 episodios (no es una exageración, Coronation Street va por el 10.107).
+
+Pero para los que quieren aventuras con superhéroes y espías, vale la pena ver Agents of S.H.I.E.L.D.
\ No newline at end of file
--- /dev/null
+# La saltarina monarquía persa
+2020-08-16
+
+En lo que quizá podría ser un récord, este fin de semana me he pasado un juego que salió hace 31 años.
+
+El ultrafamoso Prince of Persia salió para el Apple II en 1989, pero aunque hubo versión para Amiga y MS-DOS, nunca había jugado, hasta que vi anunciado una versión para RetroFW y decidí jugar en la RG 300 de las que os hablé recientemente[1]. Jordan Mechner, el autor, publicó el código fuente en Github hace ya tiempo[2], y existen infinidad de maneras de jugar (en Google se encuentran rápido maneras de jugar en un navegador).
+
+Aunque yo no soy mucho de plataformas, la verdad que el juego engancha desde el primer momento. Lo primero que llama la atención es la fantástica animación, a base de rotoscopia del hermano del autor y de una peli de Robin Hood del 38. Yo diría que pocos sprites de la época se debían mover con la fluidez del príncipe dando brincos por ahí.
+
+El juego combina plataformeo con niveles donde hay que encadenar endiabladas secuencias de saltos que pueden acabar con la paciencia de cualquiera, con duelos a espada sorprendentemente entretenidos (cada villano tiene una "personalidad" distinta que yo he tenido que descifrar a base de muchas muertes) y algún puzzle que me ha costado bastante sacar.
+
+Es realmente notable como a partir de un conjunto muy limitado de elementos (carrera, pasos, saltos y dos movimientos de espada) se construye un juego tan variado, entretenido y adictivo. Debo confesar que he tenido que consultar Youtube dos o tres veces para salir de algún atolladero, pero el juego es bastante "descubrible" y progresivo, complicando las mecánicas poco a poco con mucho acierto.
+
+Jordan Mechner pretendía un juego cinematográfico y creo que, con las limitaciones del Apple II, entre la animación, un buen guion de secuencias de acción (a parte de poder estocar a nuestros enemigos, les podemos hacer caer hasta su muerte) y alguna sorpresa que, a pesar de tener 30 años, prefiero no desvelar... aunque obviamente no puede obrar milagros, consigue un juego que supera a muchos, muchísimos juegos hechos por pequeños ejércitos y que corren plataformas con las que ni se soñaba en 1989.
+
+Para los pacientes (la verdad que el juego me ha parecido la mar de difícil y me ha costado mucho acabármelo) que no hayan gozado de esta pequeña maravilla, vale la pena escarbar para encontrar la manera de jugar al Prince of Persia.
+
+
+=> https://alex.corcoles.net/2020/08/sistemas-oxidados/ 1: https://alex.corcoles.net/2020/08/sistemas-oxidados/
+=> https://github.com/jmechner/Prince-of-Persia-Apple-II/ 2: https://github.com/jmechner/Prince-of-Persia-Apple-II/
\ No newline at end of file
--- /dev/null
+# Las historias sobre elefantes que se emborrachan podrían no ser leyendas urbanas
+2020-08-12
+
+https://www.snopes.com/news/2020/08/12/elephants-get-drunk-because-they-cant-metabolize-alcohol-like-us/[1]
+
+
+=> https://www.snopes.com/news/2020/08/12/elephants-get-drunk-because-they-cant-metabolize-alcohol-like-us/ 1: https://www.snopes.com/news/2020/08/12/elephants-get-drunk-because-they-cant-metabolize-alcohol-like-us/
\ No newline at end of file
--- /dev/null
+# Lucha eterna
+2020-08-10
+
+https://arstechnica.com/gaming/2020/08/how-the-mugen-community-built-the-ultimate-fighting-game-crossover/[1][2]
+
+ArsTechnica sobre Mugen, quizá el creador de juegos más importante.
+
+
+=> https://arstechnica.com/gaming/2020/08/how-the-mugen-community-built-the-ultimate-fighting-game-crossover/ 1: https://arstechnica.com/gaming/2020/08/how-the-mugen-community-built-the-ultimate-fighting-game-crossover/
+=> https://arstechnica.com/gaming/2020/08/how-the-mugen-community-built-the-ultimate-fighting-game-crossover/ 2: https://arstechnica.com/gaming/2020/08/how-the-mugen-community-built-the-ultimate-fighting-game-crossover/
\ No newline at end of file
--- /dev/null
+# OnwardMobility today announced agreements to deliver a new 5G BlackBerry Android smartphone with physical keyboard, in the first half of 2021
+2020-08-19
+
+https://www.businesswire.com/news/home/20200819005202/en/OnwardMobility-Announces-Agreements-BlackBerry-Foxconn-Subsidiary-FIH[1][2]
+
+
+=> https://www.businesswire.com/news/home/20200819005202/en/OnwardMobility-Announces-Agreements-BlackBerry-Foxconn-Subsidiary-FIH 1: https://www.businesswire.com/news/home/20200819005202/en/OnwardMobility-Announces-Agreements-BlackBerry-Foxconn-Subsidiary-FIH
+=> https://www.businesswire.com/news/home/20200819005202/en/OnwardMobility-Announces-Agreements-BlackBerry-Foxconn-Subsidiary-FIH 2: https://www.businesswire.com/news/home/20200819005202/en/OnwardMobility-Announces-Agreements-BlackBerry-Foxconn-Subsidiary-FIH
\ No newline at end of file
--- /dev/null
+# select * from everything
+2020-08-19
+
+https://www.splitgraph.com/blog/data-delivery-network-launch[1][2]
+
+Sobre la mejor API para manejar datos.
+
+
+=> https://www.splitgraph.com/blog/data-delivery-network-launch 1: https://www.splitgraph.com/blog/data-delivery-network-launch
+=> https://www.splitgraph.com/blog/data-delivery-network-launch 2: https://www.splitgraph.com/blog/data-delivery-network-launch
\ No newline at end of file
--- /dev/null
+# Sistemas oxidados
+2020-08-11
+
+Dentro de mi complicado impulso por aprender Rust, estas navidades pensé que disponer de un sistema físico de potencia limitada me ayudaría a tener una excusa para no programar en mis lenguajes habituales.
+
+O esa fue mi excusa para pedirme por navidades una Retro Game 300[1], un simpático cacharrito en la categoría "emuladores pirata". Se trata de una consola portátil con un formato similar a la clásica Game Boy de dudosa procedencia (lleva un procesador JZ4760B de arquitectura MIPS que salió hace una década y, aparentemente, una pantalla destinada a cámaras fotográficas baratas. A saber quién encontró alijos de esos componentes y decidió fabricar una consola portátil).
+
+Existe un ecosistema razonablemente boyante de este tipo de dispositivos a los que se portan una buena variedad de emuladores de sistemas de videojuegos antiguos que, si uno disfruta de una cierta ambigüedad moral o una buena excusa, nos permite gozar de un amplio catálogo de juegos de otras eras de una manera relativamente sencilla (o al menos, más sencilla que hacerlo por las buenas).
+
+La RG300 cuenta con una pantalla 4:3 de 320x480 (en general mostrando 320x240 doblados), un D-Pad, cuatro botones redondos estilo Nintendo (A, B, X e Y), dos gatillos, botones de Select y Start, dos botones adicionales, conmutador de encendido y ruedecilla de volumen. Monta una batería BP-5L (es decir, la que llevaban los móviles Nokia clásicos) y cuenta con dos ranuras de MicroSD; una debajo de la batería y una en un lateral, fácilmente accesible.
+
+La mencionada CPU MIPS cuenta con unos 128Mb de RAM que pese a ser varias órdenes de magnitud menos de lo que cuenta cualquier móvil de gama baja de hoy en día, es a la vez suficiente para los sistemas antiguos que emula e insuficiente como para ejecutar software "normal" (con lo que cumple el propósito de separarnos de lenguajes como Python o Java y atraernos hacia C/C++ o Rust).
+
+Al menos la que recibí venía con una MicroSD con la típica colección de emuladores y videojuegos inacabable, pero tampoco infinita. Traía también una versión antigua de RetroFW[2], una distribución de Linux enfocada a esta familia de dispositivos.
+
+Es razonablemente simple (y poco arriesgado- siempre podemos formatear la MicroSD interna y empezar de nuevo) actualizar a una versión más moderna de RetroFW con alguna mejora importante de calidad de vida (como por ejemplo poder transferir ficheros por FTP mediante una conexión de red USB), meter más emuladores y ROMs y demás. También existen bastantes ports de todos esos juegos con código fuente que andan por ahí (el catálogo antiguo de Id Software, por ejemplo). La web de RetroFW incluye un completo listado del software disponible[3].
+
+La experiencia jugando suele ser buena. La pantalla es de buena calidad y los controles (más allá de que el que escribe prefiere los joystick de bola tipo arcade a los D-Pad) son más que decentes- para los juegos que se adaptan al esquema de control- que deberían ser todos los sistemas anteriores al DualShock. Quizá el formato Game Boy no es el más ergonómico, pero personalmente me parece más entrañable que el formato PS Vita de otros modelos de la familia.
+
+Si queremos usar la consola para desarrollar, la historia cambia un poco. Al no usar un procesador de la familia x86, la dificultad sube un poco al tener que hacer compilación cruzada. RetroFW es una distribución de Linux basada en Buildroot[4], que resuelve bastante bien el tema de la compilación cruzada, pero que requiere de cierto tiempo para hacerlo funcionar (es sencillo, pero hay que compilar bastante con el tiempo que ello conlleva) y que no es tan simple como otras plataformas de desarrollo. Además, RetroFW en la RG300 sólo soporta el framebuffer Linux... así que básicamente la única librería gráfica de alto nivel que podemos usar es SDL **1**, pasada de moda hace una eternidad.
+
+Específicamente para Rust es aún más problemático; la versión de Rust que incluye Buildroot es algo antigua y conseguir una más moderna no es trivial. Además, Rust retiró el soporte para la versión específica de MIPS que lleva la RG300, con lo que hay que parchear. Súmese a esto tener que usar librerías no muy populares, como los bindings a Rust de SDL 1 o de libao. Sin embargo, se puede (he colgado unas instrucciones que deberían ser completas en https://github.com/alexpdp7/retrofw2-rust[5][6]), aunque quizá sea posible encontrar alternativas mejores, como algo basado en ARM (que suele estar mejor soportado)... aunque quizá no en estos precios.
+
+Pero el mayor factor a la hora de evaluar la RG300 es su precio. A 50 euros (precio probablemente debido en gran medida a la exótica combinación de hardware de pocas prestaciones) es difícil arrepentirse de su compra, a pesar de los numerosos defectos y limitaciones que hemos apuntado, y muy probablemente resultará una inversión la mar de rentable en entretenimiento proporcionado.
+
+
+=> https://retrogame300.com/products/retro-game-300 1: https://retrogame300.com/products/retro-game-300
+=> https://retrofw.github.io/ 2: https://retrofw.github.io/
+=> https://github.com/retrofw/retrofw.github.io/wiki/Emulators-and-Apps 3: https://github.com/retrofw/retrofw.github.io/wiki/Emulators-and-Apps
+=> https://buildroot.org/ 4: https://buildroot.org/
+=> https://github.com/alexpdp7/retrofw2-rust 5: https://github.com/alexpdp7/retrofw2-rust
+=> https://github.com/alexpdp7/retrofw2-rust 6: https://github.com/alexpdp7/retrofw2-rust
\ No newline at end of file
--- /dev/null
+# Emulando a la mula
+2020-09-08
+
+Podría ser que la segunda versión del protocolo BitTorrent resolviese el mayor defecto que le veo.
+
+https://blog.libtorrent.org/2020/09/bittorrent-v2/[1]
+
+Parece que se podrán "sembrar" archivos independientemente de su torrent; es decir, que si un archivo es común a varios torrents, sembrar uno de esos torrents sería efectivo para todos los torrents con el mismo archivo. Y quizá podríamos sembrar archivos en bloque.
+
+
+=> https://blog.libtorrent.org/2020/09/bittorrent-v2/ 1: https://blog.libtorrent.org/2020/09/bittorrent-v2/
\ No newline at end of file
--- /dev/null
+# Ganar, luego mejorar
+2020-09-10
+
+https://www.wired.com/story/ai-ruined-chess-now-making-game-beautiful/[1][2]
+
+Sobre cómo AlphaZero puede ayudarnos a descubrir variantes interesantes de ajedrez.
+
+
+=> https://www.wired.com/story/ai-ruined-chess-now-making-game-beautiful/ 1: https://www.wired.com/story/ai-ruined-chess-now-making-game-beautiful/
+=> https://www.wired.com/story/ai-ruined-chess-now-making-game-beautiful/ 2: https://www.wired.com/story/ai-ruined-chess-now-making-game-beautiful/
\ No newline at end of file
--- /dev/null
+# Un doctor diagnostica los sistemas informáticos
+2020-09-01
+
+https://www.newyorker.com/magazine/2018/11/12/why-doctors-hate-their-computers[1][2]
+
+
+=> https://www.newyorker.com/magazine/2018/11/12/why-doctors-hate-their-computers 1: https://www.newyorker.com/magazine/2018/11/12/why-doctors-hate-their-computers
+=> https://www.newyorker.com/magazine/2018/11/12/why-doctors-hate-their-computers 2: https://www.newyorker.com/magazine/2018/11/12/why-doctors-hate-their-computers
\ No newline at end of file
--- /dev/null
+# Why it is Important that Software Projects Fail
+2020-09-10
+
+https://www.berglas.org/Articles/ImportantThatSoftwareFails/ImportantThatSoftwareFails.html[1][2]
+
+> Some may misinterpret this article as satire. Surely it is not really desirable for software projects to fail. But the facts speak for themselves.
+
+=> https://www.berglas.org/Articles/ImportantThatSoftwareFails/ImportantThatSoftwareFails.html 1: https://www.berglas.org/Articles/ImportantThatSoftwareFails/ImportantThatSoftwareFails.html
+=> https://www.berglas.org/Articles/ImportantThatSoftwareFails/ImportantThatSoftwareFails.html 2: https://www.berglas.org/Articles/ImportantThatSoftwareFails/ImportantThatSoftwareFails.html
\ No newline at end of file
--- /dev/null
+# Relámpagos costeros
+2020-10-17
+
+¿Jugar a videojuegos en la nube es malo para el medioambiente[1]? (Mi intuición, a menudo equivocada, no acaba de entenderlo)
+
+¿Nos hemos librado de una buena[2] y evitado un síndrome de Kessler[3]?
+
+¿Se adelantó el promotor inmobiliario del Mazinger Z de Tarragona[4] a los propios japoneses que sólo ahora sacan un Godzilla gigante como atracción de feria[5]?
+
+No tengo respuesta para esas preguntas, pero sí puedo intentar orientar a los que se decidan a disfrutar del Festival de Sitges de este año, ya que este año tiene un formato streaming que no tiene todas las películas, pero que nos permite ver cine poco habitual con toda comodidad desde nuestro hogar. Este fin de semana acaba, pero aún hay tiempo de ver alguna. Yo me he visto unas cuantas:
+
+* "Meow or Never", un simpático corto en stop motion sobre un gato astronauta. Cumplió su función de verificar que el streaming funciona con un riesgo reducido de 1€.
+* "Benny Loves You", un slasher con muñecos infernales británico de bastante pobre factura narrativa. Cuela alguna risa, tiene gore a mansalva, pero poco más.
+* "Psycho Goreman", (que ya no se puede ver en streaming por algún tema legal) algo así como un cruce entre Hellraiser y la niña de Catalana Occident que entretiene y divierte con dosis razonables de violencia y gore. Se queda uno con la sensación que se podía haber aprovechado más una premisa tan original y hay un par de piezas que chirrían un poco, pero un producto la mar de disfrutable.
+* "Vicious Fun", una de asesinos en serie con sentido del humor y un planteamiento inicial la mar de bien encontrado y original. Muy bien ejecutada y con actores bastante buenos, seguramente mi preferida de las que he visto.
+* "Mandibles", de Quentin Dupieux, un director francés aparentemente de culto con legión de seguidores. Se trata de una especie de Dos Tontos Muy Tontos con monstruo, con algún toque gracioso, Adèle Exarchopoulos (la Adèle de La Vida de Adèle) como secundaria robaescenas y algún momento divertido, pero a mí me ha dejado más perplejo que otra cosa.
+* "The Mortuary Collection", unas historias cortas enlazadas estilo Cuentos de la Cripta, pero con el Kurgan de Los Inmortales como narrador/funerario. Impecable factura, un par de buenas ideas y mucha mala leche, como mandan los cánones del cine de terror más gamberro, inconformista y divertido.
+* "Monster SeaFood Wars", una especie de parodia del cine de monstruos japonés cruzado con ánime culinario (como "El Petit Xef" o "El Gran Sushi" en estos lares). Cutre y con actores al borde del rigor mortis (por su hieratismo- parecen bastante saludables), tiene algunas risas pero es de esas películas que sólo se disfrutan cuando uno no está a tope de sus cualidades mentales.
+
+
+=> https://www.polygon.com/features/2020/10/14/21449158/cloud-gaming-ps-now-geforce-project-xcloud-environmental-impact 1: https://www.polygon.com/features/2020/10/14/21449158/cloud-gaming-ps-now-geforce-project-xcloud-environmental-impact
+=> https://twitter.com/LeoLabs_Space/status/1316919600160903168 2: https://twitter.com/LeoLabs_Space/status/1316919600160903168
+=> https://en.wikipedia.org/wiki/Kessler_syndrome 3: https://en.wikipedia.org/wiki/Kessler_syndrome
+=> http://elprimerpaso.es/2012/10/la-estatua-gigante-de-mazinger-z-de-tarragona/ 4: http://elprimerpaso.es/2012/10/la-estatua-gigante-de-mazinger-z-de-tarragona/
+=> https://www.bbc.com/news/world-asia-54474268 5: https://www.bbc.com/news/world-asia-54474268
\ No newline at end of file
--- /dev/null
+# Ronda relámpago
+2020-10-04
+
+* La quijotesca saga inacabada de Disney y el ingenioso hidalgo[1]
+* ¿Por qué los sistemas POSIX tienen un binario de[2] `[cd](https://unix.stackexchange.com/questions/50058/what-is-the-point-of-the-cd-external-command)` (que no puede servir para cambiar de directorio)?[3]
+* El código fuente[4] *anotado[5]* del juego más elitista[6]
+* Siempre se me escapa el nombre del efecto amnésico de Gell-Mann, que acuñó Michael Crichton[7]
+* Uno de cada 400 planetas de No Man's Sky tienen Diplos. La tragedia de su extinción en New Lennon[8]
+
+
+=> https://www.polygon.com/entertainment/2020/9/15/21436961/disneys-failed-attempts-to-bring-don-quixote-to-the-screen 1: https://www.polygon.com/entertainment/2020/9/15/21436961/disneys-failed-attempts-to-bring-don-quixote-to-the-screen
+=> https://unix.stackexchange.com/questions/50058/what-is-the-point-of-the-cd-external-command 2: https://unix.stackexchange.com/questions/50058/what-is-the-point-of-the-cd-external-command
+=> https://unix.stackexchange.com/questions/50058/what-is-the-point-of-the-cd-external-command 3: https://unix.stackexchange.com/questions/50058/what-is-the-point-of-the-cd-external-command
+=> https://www.bbcelite.com/ 4: https://www.bbcelite.com/
+=> https://www.bbcelite.com/ 5: https://www.bbcelite.com/
+=> https://www.bbcelite.com/ 6: https://www.bbcelite.com/
+=> https://en.wikipedia.org/wiki/Michael_Crichton#Other_speeches 7: https://en.wikipedia.org/wiki/Michael_Crichton#Other_speeches
+=> https://www.polygon.com/2020/9/30/21495266/no-mans-sky-origins-update-diplo-new-lennon-extinct-galactic-hub-hello-games 8: https://www.polygon.com/2020/9/30/21495266/no-mans-sky-origins-update-diplo-new-lennon-extinct-galactic-hub-hello-games
\ No newline at end of file
--- /dev/null
+# Algo viejo, algo prestado, algo nuevo y algo azul
+2020-11-19
+
+Cada día vertemos más confianza en un campo relativamente nuevo como es la seguridad informática. Muestra de ello son las contraseñas, un concepto más bien primitivo (si bien el uso informático está relativamente cercano en el tiempo, las contraseñas indudablemente llevan milenios en uso. Particularmente entrañable revisar la historia de su primo el shibboleth[1]) del que pende muchísima de nuestra seguridad.
+
+De momento no existen muchas alternativas a las contraseñas que sean viables para la mayoría de usos comunes que les damos. Una manera de complementar la seguridad de las contraseñas es aplicar el concepto de un doble factor de autenticación. Un factor de autenticación es algo que usamos para identificarnos. Normalmente se clasifican de la siguiente manera:
+
+* Algo que sabemos (por ejemplo, una contraseña)
+* Algo que tenemos (por ejemplo, un dispositivo físico específico)
+* Algo que somos (por ejemplo, nuestra huella dactilar)
+* Un lugar en el que estamos (por ejemplo, nuestra casa)
+* ...
+
+Combinando dos factores podemos protegernos del fallo de uno de ellos. Un uso típico es tener un dispositivo físico que genera códigos numéricos cada cierto tiempo y tener que introducir nuestra contraseña y este código para identificarnos. Si alguien descubre nuestra contraseña, no podrá hacerse pasar por nosotros porque no tendrá el dispositivo físico; al contrario, si alguien nos roba el dispositivo físico, normalmente no conocerá nuestra contraseña.
+
+Obviamente esto no ofrece una protección total (alguien puede robarnos y torturarnos para que le digamos la contraseña), pero sí nos protege de unos cuántos ataques verosímiles.
+
+Muchos sistemas que requieren identificación, como nuestra cuenta de correo, nuestro banco o incluso las redes sociales nos permiten utilizar dobles factores para identificarnos y proteger nuestra identidad. Además, aparte de dispositivos físicos dedicados a actuar como doble factor, se han estandarizado protocolos que permiten que podamos usar nuestros móviles como un factor.
+
+Se nos anima mucho a utilizar estos dobles factores para protegernos, pero cabe ser cauteloso.
+
+Un primer elemento que tenemos que considerar es el uso de envío de mensajes SMS a nuestro móvil como factor de autenticación. Se han documentado suficientes casos de duplicación de SIM, en los que mediante ingeniería social alguien consigue un duplicado de la SIM de nuestro móvil con lo que puede recibir los SMS y saltarse el doble factor, como para que varias entidades hayan dejado de recomendar los SMS como factor de autenticación.
+
+Otro elemento, más peliagudo, es que tenemos que analizar el riesgo que supone perder (sin actor malicioso de por medio) nuestro segundo factor de autenticación. Al igual que perder una contraseña puede ser más problemático de lo que parece (por ejemplo, si perdemos la contraseña para acceder a nuestro correo- de manera que no podemos pedir un enlace para cambiar nuestra contraseña por correo), hay que tener claro cómo recuperar una cuenta en la que dependemos de un segundo factor como autenticación.
+
+Para usos laborales, las empresas pueden establecer protocolos relativamente sencillos para identificarnos que aprovechen el hecho de que nuestros compañeros de trabajo nos conocen, por ejemplo. En general, el uso de doble factor laboralmente es por tanto fácil, de coste razonable y efectivo.
+
+Pero para usos personales, la cosa se complica. Podríamos pensar que hay factores de autenticación que no podemos perder, como los que "somos"- nuestra huella dactilar, el iris, etc. A pesar de que el uso de este tipo de identificadores es conveniente (soy el primero que desbloquea su móvil con su huella), tenemos que considerar que el otro nombre de esta práctica (a parte de "identificación biométrica") es "la contraseña que no puedes cambiar y que todo el mundo puede ver". Se ha engañado a lectores de huella creando reproducciones de huellas dactilares a partir de fotografías. Cualquier pérdida de seguridad de un identificador biométrico es definitivo.
+
+Un dispositivo físico así mismo puede perderse. Afortunadamente, la mayoría de sistemas de doble autenticación permiten tener varios dobles factores que podemos usar alternativamente. Por ejemplo, es típico poder crear un conjunto de códigos de un solo uso que podemos imprimir, por ejemplo, y utilizar en caso de perder el móvil. Sin embargo, dependiendo de lo crítico que sea una cuenta, la urgencia con la que podamos necesitarla, etc. podemos comenzar a plantearnos preguntas como "qué pasa si necesito un factor alternativo y estoy lejos de mi casa donde guardo mi copia impresa de mi doble factor de respaldo" o "qué pasa si se incendia mi casa y se destruye", por no hablar de que somos seres humanos y cometemos errores.
+
+Yo, personalmente, de momento no utilizo doble factor- lo que conlleva un déficit de seguridad importante, pero que personalmente creo que me vale la pena y puedo compensar con otros mecanismos (uso de un gestor de contraseñas, las medidas adicionales de Google que protegen mi cuenta de correo, etc.). Existen medidas en este sentido (como contactos en los que confiamos de emergencia) y probablemente existe espacio para más mejoras en este sentido.
+
+Es recomendable analizar la situación de cada uno y decidir- creo que el uso de doble factor en entornos personales tiene sentido bajo muchos puntos de vista, pero sólo cada uno puede juzgar los riesgos y ventajas de cada sistema.
+
+
+=> https://en.wikipedia.org/wiki/Shibboleth 1: https://en.wikipedia.org/wiki/Shibboleth
\ No newline at end of file
--- /dev/null
+# Barbechos
+2020-11-16
+
+Me apuntan que "en aras de" implica un sacrificio[1]. Y eso me recuerda que algunos se quejan (quizá con razón) de que en español falta un palabro para decir trade-off. Y hace poco os he puesto una opinión sobre la creación de las palabras.
+
+¿A qué esperáis?
+
+Llevaba 9 años sin poner nada en la categoría "lenguas" de este blog y hoy he puesto dos entradas. Curioso.
+
+
+=> https://www.fundeu.es/recomendacion/en-aras-de-155/ 1: https://www.fundeu.es/recomendacion/en-aras-de-155/
\ No newline at end of file
--- /dev/null
+# Como el trueno
+2020-11-01
+
+Disculpen el meme:
+
+=> https://external-preview.redd.it/_B_AteIgDNG5jcT1QXp8-DzS7mvH3-Le2BGNifAK5aA.jpg?auto=webp&s=4da26787b881393117de64f63ee6d63a01986c58 r/Windows10 - "How likely are you to recommend Windows 10 to a friend or colleague?" [IMG]
+
+How likely are you to recommend Windows 10 to a friend of colleage?
+
+I need you to understand that people don't have conversations where they randomly recommend operating systems to one another
+
+Parece indiscutible la evidencia sobre la efectividad del Net Promoter Score[1], pero sigue chirriándome un poco. Personalmente, en mi escala personal, raramente soy un promoter y puedo poner un 6 (detractor) a algo que no creo que necesite mejorar o que no puede mejorar eficientemente.
+
+Pero bueno, igual hay peores maneras de, por ejemplo, formar un gobierno[2].
+
+También me han recordado últimamente a Cynthia Rothrock[3], con:
+
+https://twitter.com/TimesSqKungFu/status/1320524098141904896[4]
+
+, que aunque ahora viendo las respuestas al tuit, ya no puedo dejar de ver a su doble, me hizo gracia descubrir repasando su artículo en la Wikipedia, que triunfó antes en Asia antes de pasarse a la serie B directa a vídeo americana.
+
+Finalmente, me pregunto si hay por ahí benchmarks de los nuevos Apple de escritorio con ARM. Las medidas de los chips de Apple para móvil siempre me han sorprendido un pelín y tengo bastante curiosidad por ver cómo se transladan a escritorio.
+
+
+=> https://en.wikipedia.org/wiki/Net_Promoter 1: https://en.wikipedia.org/wiki/Net_Promoter
+=> https://www.bbc.com/news/world-europe-45753455 2: https://www.bbc.com/news/world-europe-45753455
+=> https://en.m.wikipedia.org/wiki/Cynthia_Rothrock 3: https://en.m.wikipedia.org/wiki/Cynthia_Rothrock
+=> https://twitter.com/TimesSqKungFu/status/1320524098141904896 4: https://twitter.com/TimesSqKungFu/status/1320524098141904896
\ No newline at end of file
--- /dev/null
+# El brazo rápido de la manzana
+2020-11-16
+
+Aviso: no me considero un experto mucho menos en temas de arquitectura, historia de la computación, la supercomputación o incluso el mercado informático. Tampoco he hecho un esfuerzo brutal en verificar todo lo que digo debajo. Comentarios, correcciones y sugerencias más que bienvenidas.
+
+Me agrada contemplar como de un tiempo a esta parte, la dictadura de la arquitectura x86 pierde poco a poco su hegemonía.
+
+Tras haber trasteado levemente con los procesadores MOS Technology 6502 y miembros de la familia m68k, casi todos los detalles a bajo nivel de la arquitectura de los PC compatibles siempre me han parecido un tanto... carentes de estética. Mi único encontronazo programando directamente un procesador x86 fue hace más de dos décadas y también me dejo un mal sabor de boca.
+
+Por tanto, siempre me ha quedado pendiente que algún día alguien derroque el status quo de los PC compatibles. La adopción de EFI siempre me pareció un paso adelante, aunque el impacto real en el usuario final es muy pequeño.
+
+Ya antes del iPhone (pero antes de que nadie predijese la revolución que se cocía), muchos móviles ya llevaban pequeños procesadores ARM, ya que Intel tardó mucho en mostrar interés en poner sus procesadores en dispositivos más pequeños que los portátiles PC compatibles, con lo que ni siquiera era viable intentar ponerle un x86 a un móvil por temas de consumo. Los pequeños y eficientes procesadores ARM eran la decisión natural para estos dispositivos. No sé en qué momento preciso los dispositivos ARM en manos de usuarios superaron al número de dispositivos x86, pero seguramente inconscientemente servidor esbozó una pequeña sonrisa en su rostro. Paradójicamente, seguramente más o menos en el mismo momento, también vencieron las plataformas de hardware cerradas a las (relativamente) abiertas
+
+Los x86, sin embargo, aún cuentan (¿o contaban? Ahora nos ocupamos de eso) con la ventaja del "rendimiento de hilo único". La masiva inversión en exprimir al máximo el rendimiento de los procesadores x86 tradicionalmente ha querido decir que son los procesadores que pueden dar más rendimiento ejecutando tareas generales no paralelizables (creo que aplicando la restricción "a un coste razonable").
+
+Muchas tareas son paralelizables; es decir, podemos poner más procesadores a ejecutarlas. Cuando tenemos esta posibilidad, el beneficio de multiplicar el número de procesadores adquiere mucha más importancia que hacer que un procesador individual sea más rápido. Esto lo podemos ver reflejado en sitios como los listados de los supercomputadores más potentes del mundo, donde x86 no siempre ha dominado tan claramente.
+
+Más recientemente, también hemos visto trabajo interesante en el área de "las tareas generales". Hay ahí un estudio interesante sobre los procesadores muy especializados; allí donde por ejemplo el Commodore Amiga hacía cosas mágicas gracias a sus procesadores gráficos, pero allí donde también murió un poco en el boom de los juegos con gráficos tridimensionales... y allí donde poco más tarde comenzaron a coger carrerilla los procesadores pensados para acelerar el rendimiento de los gráficos tridimensionales que han dado pie a otra revolución informática. Estos procesadores altamente especializados no son nada adecuados para realizar "tareas generales", pero han encontrado usos más allá de los gráficos tridimensionales en áreas como el aprendizaje computacional. Precisamente la "simplicidad" de estos procesadores facilita su aceleración y paralelización hasta límites insospechados (la tarjeta gráfica de mi ordenador para videojuegos tiene casi 2000 unidades de ejecución comparadas con las decenas que a lo sumo tienen los procesadores x86 convencionales) y hacen que, por un precio razonable, puedan dar un rendimiento a años luz de lo que puede dar un x86 (o cualquier otro procesador de propósito general).
+
+Pero aun así, hasta estos días, era complicado comprarse un portátil que no llevase un procesador x86, y los sistemas de escritorio como las populares Raspberry Pi (basadas en ARM, como los móviles) ofrecían un rendimiento bastante pobre. Apple mismo era el último reducto de los ordenadores personales de uso general no basados en los procesadores x86, pero hasta ellos tuvieron que abandonar ese barco en 2006, pues sus ordenadores basados en PowerPC eran simplemente lentos comparados con sus competidores.
+
+Se ha invertido mucho dinero desde entonces gracias a los móviles en los procesadores ARM. Apple diseña sus propios procesadores ARM, que arrojan unas cifras que suenan muy bien de rendimiento cuando se miden. Personalmente siempre me tomo los números que saca Apple con bastante escepticismo- precisamente en su época PowerPC todas sus presentaciones sacaban unos números magníficos, que se desvanecieron justamente en ese fatídico 2006. Además, la cerrazón de los entornos iOS e iPadOS siempre me han hecho desconfiar mucho de estas mediciones (por no hablar ahora, que lo haremos más adelante, de lo endiabladamente complicado que es medir el rendimiento de un procesador objetivamente).
+
+Tan buenas son estas cifras, que Apple ha decidido volver a apostar por procesadores no x86 en sus portátiles y sistemas de escritorio, y los acompaña de otras cifras y declaraciones que creo que interesa analizar detenidamente.
+
+Voy a discutir explícitamente lo que captura el Internet Archive a día de hoy en la página de Apple sobre sus procesadores M1[1].
+
+## System-on-a-Chip (SOC)
+
+Lo primero que dice es que el M1 es un SOC, como todos los ARM. Los ordenadores x86 que conocemos todos en general vienen con un procesador separado, acoplado o soldado a una placa base en la que hay más componentes, como por ejemplo, la memoria. Creo que no hay procesadores ARM en ese formato- todos vienen en un chip único con memoria y otros componentes integrados. Esto suele tener interesantes beneficios de eficiencia, rendimiento, portabilidad y coste, pero por otra parte descarta completamente cosas que aún podemos hacer en muchos PCs como aumentar la memoria o cambiar una tarjeta gráfica.
+
+Ciertamente esto ya no es posible en muchos portátiles x86, e incluso en algunos sistemas que no son de escritorio, pero es algo que perdemos casi completamente adoptando un SOC, aunque inventos como Thunderbolt podrían permitirnos usar tarjetas gráficas Thunderbolt para complementar un SOC. También podría ser posible adoptar una arquitectura que permita acoplar más procesadores (los sistemas Blade hacen algo similar). Además, como hemos comentado, para muchas tareas podemos tirar directamente por apilar más ordenadores en vez de ampliar un sólo sistema- véase lo que se divierte la gente fabricando minisuperordenadores aglutinando varias Raspberry Pi.
+
+## Memoria unificada
+
+Después de esto Apple recaba en que integrar la memoria en un SOC tiene ventajas de rendimiento y nos proporciona las primeras cifras de rendimiento (me da igual cuántos transistores tiene un procesador- de hecho Apple lo vende como que más transistores mejor y no creo que eso sea inequívocamente cierto) y las primeras notas al pie.
+
+Up to 3.9X faster video processing
+Testing conducted by Apple in October 2020 using preproduction MacBook Air systems with Apple M1 chip and 8-core GPU, as well as production 1.2GHz quad-core Intel Core i7-based MacBook Air systems, all configured with 16GB RAM and 2TB SSD. Tested with prerelease Final Cut Pro 10.5 using a 55-second clip with 4K Apple ProRes RAW media, at 4096x2160 resolution and 59.94 frames per second, transcoded to Apple ProRes 422. Performance tests are conducted using specific computer systems and reflect the approximate performance of MacBook Air.
+
+Apple cuidadosamente especifica la GPU del M1 y sus 8 cores que da como casi 4 veces más rápida que la CPU de su Air anterior de 4 cores. La mitad de ese 4x ya puede ser que básicamente estamos doblando el número de unidades de ejecución en un proceso que seguramente es paralelizable. Además, como hemos comentado, una GPU especializada puede tener ventajas en tareas específicas sobre una CPU de propósito general. Quizá sería interesante saber cómo se podría optimizar este proceso en, pongamos, una GPU Nvidia. Seguramente la arquitectura de memoria en el SOC da ventajas en esta prueba, pero me sorprende que Apple use esta prueba para hablar de ello. Por último, cabe señalar que el sistema en cuestión es un Air, un portátil ultradelgado. Es conocido que la debilidad de los x86 son estos sistemas donde no pueden alcanzar su máximo rendimiento. Por supuesto es harto interesante que en un portátil ARM nos dé mejores prestaciones, pero habría que ver la comparativa con un sistema de escritorio para tener una perspectiva completa.
+
+Up to7.1X faster image processing
+Testing conducted by Apple in October 2020 using preproduction Mac mini systems with Apple M1 chip, and production 3.6GHz quad-core Intel Core i3-based Mac mini systems, all configured with 16GB of RAM and 2TB SSD. Prerelease Adobe Lightroom 4.1 tested using a 28MB image. Performance tests are conducted using specific computer systems and reflect the approximate performance of Mac mini
+
+Similar al punto anterior, pero aquí sí comparan con un sistema de escritorio, pero un Mac mini y no precisamente con el x86 más potente del mundo (el i3 es el modelo bajo de gama).
+
+## Rendimiento de CPU
+
+Up to 3.5X faster CPU performance
+Testing conducted by Apple in October 2020 using preproduction MacBook Air systems with Apple M1 chip and 8-core GPU, as well as production 1.2GHz quad-core Intel Core i7-based MacBook Air systems, all configured with 16GB RAM and 2TB SSD. Tested with prerelease Final Cut Pro 10.5 using a 55-second clip with 4K Apple ProRes RAW media, at 4096x2160 resolution and 59.94 frames per second, transcoded to Apple ProRes 422. Performance tests are conducted using specific computer systems and reflect the approximate performance of MacBook Air
+
+Se refieren aquí a la misma nota al pie que en su reclamo de "Up to 3.9X faster video processing" de más arriba, con lo que aplican las mismas observaciones, además de que es un poco raro que usen la comparativa de GPU contra CPU para hablar de 3.5x el rendimiento de CPU (contra la mejora de 3.9x anterior).
+
+Our high‑performance core is the world’s fastest CPU core when it comes to low‑power silicon. And because M1 has four of them, multithreaded workloads take a huge leap in performance as well.
+Testing conducted by Apple in October 2020 using preproduction 13‑inch MacBook Pro systems with Apple M1 chip and 16GB of RAM measuring peak single-thread performance of workloads taken from select industry-standard benchmarks, commercial applications, and open source applications. Comparison made against the highest-performing CPUs for notebooks commercially available at the time of testing. Performance tests are conducted using specific computer systems and reflect the approximate performance of MacBook Pro
+
+Creo que se refieren aquí a que tienen el mejor rendimiento en tareas generales no paralelizables en procesadores de bajo consumo. Puede ser cierto sin demasiados matices (ya hemos comentado que los procesadores x86 no alcanzan su mejor rendimiento en portátiles), aunque vuelve a ser cierto aquí que medir rendimiento de procesadores objetivamente es complicado y que están excluyendo sistemas de escritorio.
+
+En este punto también hablan de sus unidades de ejecución "eficientes". Esta es una idea harto interesante en la que se ha trabajado en móviles recientemente, que consiste en tener unidades de ejecución de diferente potencia para mejorar el uso de batería. Esto sí es un hito en portátiles y que seguramente contribuye a mejorar la vida de batería significativamente.
+
+## Eficiencia
+
+Up to 2X faster CPU performance
+Matches peak PC performance using 25% of the power
+At just 10 watts (the thermal envelope of a MacBook Air), M1 delivers up to 2x the CPU performance of the PC chip. And M1 can match the peak performance of the PC chip while using just a quarter of the power.
+Testing conducted by Apple in October 2020 using preproduction 13‑inch MacBook Pro systems with Apple M1 chip and 16GB of RAM. Multithreaded performance measured using select industry‑standard benchmarks. Comparison made against latest‑generation high‑performance notebooks commercially available at the time of testing. Performance tests are conducted using specific computer systems and reflect the approximate performance of MacBook Pro.
+
+Aquí se refiere a rendimiento paralelizable y hábilmente no especifica absolutamente nada de contra qué compara. Muy difícil de evaluar, pero podrían estar comparando contra sistemas con menos cores o con mala gestión térmica. A saber. Que los procesadores ARM rinden mejor a bajo voltaje no está bajo mucha discusión (los procesadores x86 de bajo voltaje son notablemente lentos).
+
+## Rendimiento gráfico
+
+Pequeño apunte que a esto sigue una gráfica que habla que han triplicado el rendimiento por vatio, pero es una gráfica muy extraña. Pero me parece algo bastante creíble a pesar de la gráfica.
+
+Siguen hablando del rendimiento gráfico. Esto también es bastante creíble; los procesadores x86 a veces integran GPUs que están bien, pero que no son para tirar cohetes precisamente, sobre todo comparando con las GPUs dedicadas de NVIDIA, de las que hay versiones para portátiles con rendimiento limitado y probablemente mucho peor consumo que la GPU integrada del M1. Así pues es una mejora interesante si queremos hacer algo de gráficos con buen consumo de batería, y desde luego seguramente veamos una mejora muy significativa contra un x86 sin procesadores gráficos dedicados.
+
+## Rendimiento especializado
+
+Luego nos apuntan mejoras en cosas como aprendizaje computacional. Lo mismo que con el rendimiento gráfico; seguramente machaca a las gráficas integradas de los procesadores x86, pero no creo que se acerque a GPUs NVIDIA (salvo si lo miramos en consumo, claro). Hablan de una mejora de 16x respecto a x86, cuando según tengo entendido NVIDIA está muchísimo más lejos.
+
+## Consumo de batería
+
+Aquí, a diferencia de en otras secciones, es Apple quien tiene el histórico de dar las cifras más creíbles de batería (y los fabricantes de PCs no Apple tienen el histórico de mentir como bellacos). Parece ser que hay portátiles x86 que presumen de cifras similares a las que apunta Apple, pero apostaría a que Apple vuelve a tomar la delantera que había perdido en cuanto a duración de batería gracias a la eficiencia ARM.
+
+## Conclusiones
+
+Estoy bastante convencido que en portátiles, los nuevos sistemas de Apple basados en ARM seguramente sean equivalentes o superiores a los portátiles más delgados basados en x86. Aquí me repatea un poco la obsesión con la delgadez de los portátiles (que no sólo afecta a Apple), que redunda no sólo en peor rendimiento, sino también en peores teclados, menor facilidad para reparar e incluso ampliar, peores baterías y un sinfín de cosas que sacrificamos en aras de una delgadez que no aporta demasiado. Seguramente los portátiles con GPUs NVIDIA mantengan grandes ventajas en determinadas áreas, sacrificando batería (también habría que intentar valorar la paradoja de que a veces los procesadores más rápidos pueden ser más eficientes por el hecho de que necesitan menos tiempo a pleno rendimiento para completar las tareas que queremos).
+
+Es decir, que es posible que de nuevo Apple haya sacado un portátil que me gusta en algunos sentidos como los primeros Air baratos que durante bastante tiempo no tuvieron rival. Como aquel, seguro que no será el mejor portátil para todo el mundo, pero sí para muchos (al menos los que toleren vivir en macOS... y viendo como se adapta el mundo a un portátil no x86- parece que de momento hay bastantes baches, aunque espero que se resuelvan bastante rápido). En escritorio y de potencia máxima sin calificativos, lo veo poco probable.
+
+Es digno de admirar, por otra parte, las continuas apuestas en las que Apple arriesga. Aunque algunas de ellas (pantallas táctiles, delgadez, sistemas cerrados) han resultado nefastas, al menos para mí, muchas de ellas han arrastrado al resto de la industria a mejoras de las que nos beneficiamos todos.
+
+Y quién sabe, quizá algún día acabemos de enterrar a los feos x86.
+
+
+=> https://web.archive.org/web/20201116121822/https://www.apple.com/mac/m1/ 1: https://web.archive.org/web/20201116121822/https://www.apple.com/mac/m1/
\ No newline at end of file
--- /dev/null
+# La iglesia catódica
+2020-11-19
+
+¿Acertaron de pleno los creadores de YouTube con su nombre? ¿Los "smart" phones nos han enganchado a la nueva caja tonta?
+
+Vivo un poco ajeno al mundo de las imágenes en acción para responder adecuadamente a esa preguntas (aunque todo apunta a que sí), pero me es conveniente documentar dos proyectos relacionados con YouTube que, sorprendentemente en estos días, no son youtube-dl[1].
+
+Uno es NewPipe[2]. NewPipe es una aplicación Android open source (es decir, sus entrañas están al alcance de todos) que permite ver vídeos de YouTube, como la propia aplicación de YouTube. Para ello, imita a un navegador web visitando YouTube sin hacer login. Curiosamente, se salta los pasos de mostrar anuncios y dificulta bastante que YouTube nos identifique fácilmente. Adicionalmente, implementa funcionalidades en la propia aplicación, como la suscripción a canales, con un mecanismo propio que, aunque cuenta con desventajas (no nos "sigue" de dispositivo a dispositivo), nos permite hacer cosas que no se pueden hacer usando YouTube sin hacer login. También cuenta con funcionalidades como poder reproducir el sonido de los vídeos sin tener la aplicación en primer plano, o descargar vídeos.
+
+¿Tiene pegas? Para empezar, una aplicación así va en contra de los términos de uso de la Play Store de Google, así que no la podremos encontrar ahí. Recomiendo el uso de F-Droid[3] para instalarla. F-Droid es una tienda de aplicaciones Android alternativa que ofrece sólo aplicaciones open source como NewPipe. Esto está contemplado dentro de Android- podemos configurar Android fácilmente para que nos permita instalar aplicaciones de fuera de la Play Store, instalar F-Droid y con F-Droid instalar nuevas aplicaciones.
+
+¿Es esto legal? Pues dependerá de la legislación que rija sobre cada uno. ¿Es peligroso? Un riesgo podría venir por instalar una aplicación que no está aprobada por Google, que supuestamente evita que se publiquen aplicaciones con funcionalidades maliciosas ocultas. Sin embargo, dado que NewPipe es una aplicación open source, en teoría cualquiera podría auditar sus entrañas, verificar que no hay tales funcionalidades ocultas y verificar que la descarga que ofrece F-Droid se corresponde con el código fuente.
+
+Así mismo, podría existir el riesgo de que Google "castigue" a los usuarios de NewPipe, por ejemplo, cerrando sus cuentas Google, algo que no es poca broma[4]. Sin embargo, aparte de que no constan casos, a falta de alguna puerta trasera en Android, dado que NewPipe interactúa con YouTube sin hacer login, no debería haber manera fiable de identificar quién usa NewPipe. Así mismo, no ha habido manifestación alguna de Google en contra de NewPipe- más allá de que los términos de la Play Store evitan que, como muchas otras aplicaciones, la podamos encontrar allí.
+
+Un proyecto similar a NewPipe es Invidious, una web alternativa que nos ofrece el contenido de YouTube que forma parte de la ilustre familia compuesta por Nitter (Twitter) y Bibliogram (Instagram). Estas webs reimplementan la funcionalidad de webs con contenido público como YouTube, permitiéndonos acceder a él como un intermediario que protege nuestra identidad. Al igual que NewPipe, Invidious curiosamente se olvida de mostrarnos anuncios y dificulta el seguimiento por parte de Google de nuestras acciones.
+
+Al ser una aplicación web, Invidious debe ser hospedada por alguien. Al ser open source, cualquiera puede crear su propia instancia. A diferencia de NewPipe, que siendo una aplicación nos la bajamos y la ejecutamos en nuestro móvil, Invidious se ejecuta en un servidor al que accedemos. Hay un listado de instancias en la propia web de Invidious[5].
+
+Sin embargo, dado que es una aplicación web, si bien el código fuente de Invidious es open source al igual que NewPipe, en este caso al ser una aplicación web, no podemos validar que la instancia a la que nos conectamos de Invidious se corresponda con el código fuente que alguien podría haber auditado y verificado que no contiene funcionalidades maliciosas. Sólo creando nuestra propia instancia de Invidious podremos tener esta certeza. Además, la instancia que usemos puede dejar de funcionar, aunque en este caso podriamos cambiar y seguir usando otra instancia.
+
+Por lo demás, el análisis es bastante similar al de NewPipe- con las diferencias lógicas derivadas de que una es una aplicación para móvil y la otra una aplicación web.
+
+Bola extra: aquí un artículo sobre un soporte histórico, desconocido para mí, de películas que al parecer tuvo su momento en los ochenta[6].
+
+
+=> https://youtube-dl.org/ 1: https://youtube-dl.org/
+=> https://newpipe.schabi.org/ 2: https://newpipe.schabi.org/
+=> https://f-droid.org/ 3: https://f-droid.org/
+=> https://alex.corcoles.net/2020/11/sagrada-correspondencia/ 4: https://alex.corcoles.net/2020/11/sagrada-correspondencia/
+=> https://github.com/iv-org/invidious/wiki/Invidious-Instances 5: https://github.com/iv-org/invidious/wiki/Invidious-Instances
+=> https://gizmodo.com/i-miss-videodiscs-the-fragile-garbage-that-shaped-my-c-1845700764 6: https://gizmodo.com/i-miss-videodiscs-the-fragile-garbage-that-shaped-my-c-1845700764
\ No newline at end of file
--- /dev/null
+# Quién maneja mi lenguaje
+2020-11-16
+
+Recupero en otra de esas conversaciones la que quizá sea la mejor anotación de las que escribe David Morgan-Mar en sus cómics[1] (o al menos, mi favorita).
+
+Opina sobre el acuñado de palabras nuevas, y sobre si debemos dejarlo en manos de... ¿cuñados? Dedicadle un ratito.
+
+
+=> https://www.irregularwebcomic.net/618.html 1: https://www.irregularwebcomic.net/618.html
\ No newline at end of file
--- /dev/null
+# Sagrada correspondencia
+2020-11-18
+
+Hace unos días salió una noticia sobre alguien que había perdido el acceso a su cuenta de Google[1]. Esto me ha llevado a revisar un poco mi situación.
+
+Adelanto que hay un factor que aún no tengo resuelto, que es que uso mi cuenta de Google para identificarme en servicios no Google. Dentro de la configuración de vuestra cuenta de Google podéis ver en qué webs podéis entrar usando vuestra cuenta de Google. En mi caso son 17, y podría perder esas cuentas si perdiese mi cuenta Google. Algunas de ellas permiten mecanismos alternativos de identificación, así que vale la pena auditar aquellos servicios que sean importantes.
+
+Otro punto es el correo. La inmensa mayoría de servicios usan una dirección de correo para identificarnos y funcionalidades como "olvidé mi contraseña" son especialmente peligrosas si perdemos el acceso a la dirección de correo asociada.
+
+Personalmente, no uso prácticamente jamás ninguna dirección del dominio gmail.com. Tengo un dominio propio y uso un dominio de un allegado cercano, y uso direcciones de correo de esos dominios, que es bastante complicado perder (notifican con mucho margen para renovar, es un servicio de pago y no he oído nunca que se rescinda un dominio unilateralmente). Esa es la dirección de correo; la cuenta de correo en sí si la tengo con Google, que almacena el correo y me da acceso a él (nota: uso una arcaica versión gratuita de Google Workspaces. Para asuntos personales, **no** recomiendo usar Google Workspaces. Es posible usar un dominio propio con Google sin Google Workspaces). Pero al usar un dominio propio, puedo reemplazar a Google sin demasiado problema si fuera necesario- sin tener que cambiar mi dirección de correo.
+
+Con esto, mi correo lo almacena Google, que también perdería si no pudiese acceder a mi cuenta. Google proporciona una amplia variedad de maneras de exportar el correo. Para empezar, he decidido usar un procedimiento bastante sencillo e incómodo, pero efectivo.
+
+Uso isync[2], una herramienta para sincronizar cuentas de correo IMAP con archivos locales. IMAP es un protocolo para consultar el correo muy común en herramientas como Thunderbird y Outlook. Google da acceso al correo de GMail mediante IMAP, con lo que podemos usar cualquier herramienta IMAP como isync.
+
+Para hacer la sincronización, basta crear un sencillo archivo de configuración:
+
+IMAPAccount gmail
+Host imap.gmail.com
+User <usuario_de_gmail>
+PassCmd +"head -1"
+SSLType IMAPS
+
+IMAPStore gmail-remote
+Account gmail
+
+MaildirStore gmail-local
+SubFolders Verbatim
+Path ~/.mail/gmail/
+Inbox ~/.mail/gmail/Inbox
+
+Channel gmail
+Master :gmail-remote:
+Slave :gmail-local:
+Patterns *
+Create Both
+SyncState *
+
+El fragmento `+"head -1"` hace que isync nos pregunte nuestra contraseña por pantalla (de una manera bastante fea, y mostrando la contraseña por pantalla) al hacer la sincronización. Ejecutando `mbsync -a`, tendremos que teclear nuestra contraseña interactivamente y se realizará la sincronización.
+
+Para que esto funcione, sin embargo, necesitaremos permitir el acceso "menos seguro" a nuestra cuenta Google, que permite el acceso al correo IMAP mediante una simple contraseña (mecanismo que Google no considera seguro). De momento y para salir del paso, dado que tampoco me preocupo de ejecutar el proceso automáticamente, lo que he hecho es programarme un recordatorio para ejecutar el proceso semanalmente y sólo activar el acceso "menos seguro" mientras se ejecuta el proceso.
+
+
+=> https://www.cmmedia.es/noticias/espana/un-calvario-digital-google-cancela-mi-cuenta-de-correo-y-todo-lo-asociado-con-ella/ 1: https://www.cmmedia.es/noticias/espana/un-calvario-digital-google-cancela-mi-cuenta-de-correo-y-todo-lo-asociado-con-ella/
+=> https://isync.sourceforge.io/ 2: https://isync.sourceforge.io/
\ No newline at end of file
--- /dev/null
+# Si los fanfarrones volasen
+2020-11-14
+
+Hace casi 20 años que salió Google Earth, esa maravillosa recreación del globo terráqueo que podíamos disfrutar desde nuestros hogares y en la que muchísimos perdimos una significante cantidad de tiempo mirando una versión tridimensional limitada de lugares. Curiosamente, quizá viendo muchos más lugares que conocíamos que no descubriendo nuevos paisajes.
+
+Dos décadas más tarde, después de desembolsar 70 eurazos en Steam por el Microsoft Flight Simulator (un verdadero derroche, considerando el Game Pass de Xbox) y comprobar que quizá mi GeForce GTX 1050 Ti en mi PC de 2017, en streaming por Internet, no daba... desembolsé mil eurazos más por un PC nuevo con una ya ligeramente desfasada GeForce GTX 2060, en una perfecta demostración de irracionalidad supina.
+
+Pero qué bonito es contemplar lugares comunes desde el aire gracias a un derroche de esfuerzo inimaginable por un conjunto de fanfarrones que querían intentar demostrar que su tecnología era mejor que la tecnología de Google.
+
+Dicen los de Microsoft que su recreación del globo terráqueo es, básicamente, 2 petabytes de datos. No tengo ni idea de si Google Earth es más o menos que esto. Son mundos muy distintos. En zonas urbanas importantes, Google Earth tiene datos tipo Street View para recrear edificios con cierto detalle, cuando en Flight Simulator, pocos edificios y estructuras están recreados tridimensionalmente a partir de imagen real. Flight Simulator mayormente trabaja con la visión aérea del mapa e infiere edificios, árboles, carreteras y unas cuántas estructuras más a partir de la imagen a vista de pájaro. El resultado es que los modelos tridimensionales de Earth son mucho más fidedignos, pero también que Flight Simulator pinta una aproximación tridimensional de la realidad en todo el globo, cuando en muchos casos Google Earth sólo da la visión mayormente plana del mundo.
+
+Flight Simulator intenta dar un mundo que parece real, pero impreciso; los ríos parece que llevan agua, las carreteras tienen coches que se mueven por ellas y el mundo está iluminado de noche de una manera que cualquiera que haya volado de noche podrá identificar. En muchas ocasiones no es preciso, pero se acerca bastante a reflejar lo que veríamos desde un avión sobrevolando un planeta Tierra recreada a veces con realismo y a veces con un poco de cubismo.
+
+Es imperfecto, desde luego, y hay recreaciones mucho más precisas en otros videojuegos, pero ninguna con la ambición de recrear todo el planeta. Vuele uno por dónde vuele, rara vez da la sensación de haber llegado a un límite que los desarrolladores han ignorado, si bien se nota los lugares en los que se ha puesto esfuerzo humano en vez de uno meramente automático.
+
+Este intento de digitalizar la realidad no se queda ahí; el mundo de Flight Simulator recrea el clima y el tráfico aéreo del mundo, aparentemente los aviones del mundo real se ven reflejados dentro del juego, y ya hay muchos que se dedican a ver huracanes, tornados y tormentas desde el confort de sus casas (aunque también le podemos pedir al juego el clima que deseemos, para aquellos que rara vez vemos la nieve en nuestras casas). Por no olvidar que sí, el Flight Simulator es un simulador de vuelo que podemos ajustar desde una experiencia que permita a un lego sobrevolar su casa fácilmente hasta algo que dicen sirve de entrenamiento para una licencia de piloto comercial.
+
+De hecho, hay que decir que si el propósito del juego fuera realmente una simulación del vuelo comercial o incluso recreativo, mucha de la fantástica recreación del mundo dentro del juego es meramente ornamental e incluso inútil- volando como se volaría en la realidad jamás veríamos gran parte del esfuerzo- o lo veríamos por un breve instante antes de estrellarnos o ser detenidos por sobrevolar zonas habitadas a ras de suelo. Si esto es un juego, un desafío a los desarrolladores de Google Earth, un intento de vender tarjetas gráficas o una manera de ilusionarlos con lo que será posible en un par de décadas, es difícil de decir; quizá todas las anteriores sean ciertas en mayor o menos medida.
+
+¿Vale la pena el Flight Simulator? Es una pregunta compleja, ya que aparte del coste del juego (mínimo si a uno no le importa tener una licencia perpetua y decide tirar de Game Pass) se le puede sumar el hierro necesario para mover esta maquinaria. Podéis buscar en Youtube vídeos para configuraciones de PC aproximadas de tarjeta, procesador y memoria que os den una idea del nivel gráfico/coste que podéis disfrutar. Así mismo, cabe valorar los diferentes niveles a los que podemos jugar- seguro que es una compra indispensable para aquellos que quieran un auténtico simulador de vuelo que recree la experiencia de pilotar. Los que quieran realizar turismo virtual también harían bien de probar antes Google Earth, que en ciertos aspectos supera la recreación de Microsoft, aunque en muchos se queda cortísimo.
+
+Yo personalmente, me quedo con la relajante experiencia de poder sobrevolar cualquier punto del mundo, de día o de noche con una libertad imposible en el mundo real y sin estrés.
\ No newline at end of file
--- /dev/null
+# Smörgåsbord
+2020-11-28
+
+Si hay segundos bisiestos mal. Si no hay segundos bisiestos, mal también. Si hay segundos bisiestos negativos, posible apocalipsis.[1]
+
+Una interesante reflexión sobre los juegos de rol (los de verdad) en Rock Paper Shotgun.[2]
+
+Nunca he sido mucho del Mortal Kombat, pero a veces hacen cosas como sacar un complemento que trae a los actores de la peli del 95 a la última versión del juego. Christopher Lambert incluido.[3]
+
+Más sobre No Man's Sky (que ayer volví a *no* comprarme. No puedo decir lo mismo sobre Control[4], art of rally[5], Assetto Corsa[6] y City Car Driving[7]). Parece ser que obviamente la introducción de la bioluminiscencia en el mundo también ha traído los planetas discoteca pastillera[8].
+
+Un artículo en Vox (Media) sobre el mundo de los análisis sobre efectividad de los donativos[9] y otro en Ars sobre compensar tu huella de carbono[10].
+
+Un artículo en la BBC sobre una descendiente del amigo de Churchill que trajo al mundo la abreviatura OMG.[11]
+
+Un tuit de esos que se hacen extremadamente populares[12] me descubre Prisencolinensinainciusol de Adriano Celentano[13]. Ligeramente relacionado, curiosidad infinita por ver cómo se resuelve el problema de cantar a coro por Internet[14].
+
+
+=> https://www.jwz.org/blog/2020/11/leap-second-news/ 1: https://www.jwz.org/blog/2020/11/leap-second-news/
+=> https://www.rockpapershotgun.com/2020/11/24/baldurs-gate-3-gave-me-new-respect-for-my-real-life-dungeon-master/ 2: https://www.rockpapershotgun.com/2020/11/24/baldurs-gate-3-gave-me-new-respect-for-my-real-life-dungeon-master/
+=> https://www.engadget.com/mortal-kombat-movie-dlc-skin-pack-180634132.html 3: https://www.engadget.com/mortal-kombat-movie-dlc-skin-pack-180634132.html
+=> https://store.steampowered.com/app/870780/Control_Ultimate_Edition/ 4: https://store.steampowered.com/app/870780/Control_Ultimate_Edition/
+=> https://store.steampowered.com/app/550320/art_of_rally/ 5: https://store.steampowered.com/app/550320/art_of_rally/
+=> https://store.steampowered.com/app/244210/Assetto_Corsa/ 6: https://store.steampowered.com/app/244210/Assetto_Corsa/
+=> https://store.steampowered.com/app/493490/City_Car_Driving/ 7: https://store.steampowered.com/app/493490/City_Car_Driving/
+=> https://www.polygon.com/2020/11/24/21656721/no-mans-sky-rave-dance-planet-galactic-hub 8: https://www.polygon.com/2020/11/24/21656721/no-mans-sky-rave-dance-planet-galactic-hub
+=> https://www.vox.com/2015/12/1/9826838/best-charities-donate-2019-giving-tuesday 9: https://www.vox.com/2015/12/1/9826838/best-charities-donate-2019-giving-tuesday
+=> https://arstechnica.com/science/2020/11/want-to-offset-your-carbon-footprint-heres-what-you-need-to-know/ 10: https://arstechnica.com/science/2020/11/want-to-offset-your-carbon-footprint-heres-what-you-need-to-know/
+=> https://www.bbc.com/news/uk-england-norfolk-54893939 11: https://www.bbc.com/news/uk-england-norfolk-54893939
+=> https://mobile.twitter.com/HarrietMould/status/1331890921277943808 12: https://mobile.twitter.com/HarrietMould/status/1331890921277943808
+=> https://en.wikipedia.org/wiki/Prisencolinensinainciusol 13: https://en.wikipedia.org/wiki/Prisencolinensinainciusol
+=> https://www.jefftk.com/p/bucket-brigade-singing 14: https://www.jefftk.com/p/bucket-brigade-singing
\ No newline at end of file
--- /dev/null
+# Trienio lingüístico
+2020-11-01
+
+Veo que hace tiempo de la última vez que hablé sobre lenguajes de programación[1]. Unas notas desde entonces:
+
+Aunque el TIOBE (hablo del TIOBE porque es popular. Ningún índice es perfecto. Puede que el TIOBE sea el peor de todos, pero da un poco igual) no ha variado mucho en este tiempo, hay unas cuantas cosillas de las que podemos hablar.
+
+Objective C ha caído desde el #5 hasta el #18, y su sucesor Swift está en el #16. Curioso. Swift parece un lenguaje harto interesante, pero como C#, me genera algo de desconfianza por estar ligado a un entorno muy concreto.
+
+Go va subiendo. Es curioso que de los dos lenguajes impulsados por Google, el que me disgusta (Go y su terquedad en ignorar las últimas décadas de historia de la informática) se ha disparado y el que me gusta (Dart) no arranca ni a la de tres. Entiendo la popularidad de Go como lenguaje de tipado estático que permite generar binarios enlazados estáticamente con compilación cruzada amigable y además con recolector de basura; mientras Graal no coja impulso o Microsoft saque algo para .NET (que la última vez que miré no tenía nada usable) no tiene competencia en ese ámbito... Pero debería ser un nicho menos popular. Apuesto porque en muchos casos es el lenguaje para los que necesitan Java (tipado estático, recolector de basura y rendimiento) pero que están dispuestos a autoinfligirse dolor para no tener que usar Java.
+
+Lamentablemente creo que la popularidad de Go va en detrimento de un lenguaje que me pirra como es Rust. Rust nos trae innovaciones académicas a un lenguaje **sin** recolector de basura que también hace binarios fácilmente desplegables. Una maravilla que debería ir comiéndole el terreno a C/C++, los dos lenguajes sin recolector de basura más populares- es mucho más fácil y agradable escribir Rust fiable donde uno antes escribiría C o C++. Lamentablemente ese no es mi ámbito habitual, con lo que tengo que buscarme excusas cada vez más raras para deleitarme con él. Porque no veo claro que Rust pueda comerle terreno a lenguajes con recolección de basura; sí, tiene cosas que muchos de ellos no tienen, pero también tiene el quebradero de cabeza de preocuparse de satisfacer al borrow checker. Yo no apostaría por Rust donde podría usar Java, por ejemplo.
+
+Por último, Kotlin aún anda por el #33- algo pobre para el lenguaje de moda que Google también ha decidido impulsar como primer lenguaje para hacer aplicaciones sobre Android (offtopic: Fuchsia Programming Language Policy[2]). Quizá que Swift se quede por el #16 quiere decir algo sobre Android e iOS. A mí me sigue pareciendo un bonito lenguaje alternativo a Java (aunque a parte de la JVM, también compila a JS/WASM y nativo mediante LLVM) que además quizá está motivando muchas de las mejoras que Oracle está metiendo (con gran acierto, en mi opinión) a marchas forzadas a Java últimamente. Pero yo sigo sin verlo reemplazando a Java fuera de Android (como Scala, Ceylon, etc.).
+
+
+=> https://alex.corcoles.net/2015/08/mi-opinion-sobre-unos-cuantos-lenguajes-de-programacion/ 1: https://alex.corcoles.net/2015/08/mi-opinion-sobre-unos-cuantos-lenguajes-de-programacion/
+=> https://fuchsia.dev/fuchsia-src/contribute/governance/policy/programming_languages 2: https://fuchsia.dev/fuchsia-src/contribute/governance/policy/programming_languages
\ No newline at end of file
--- /dev/null
+# Coche escoba
+2020-12-25
+
+Sobre los orígenes del lenguaje de programación C (con detalles sobre su antepasado BCPL, famoso por su influencia en el Commodore Amiga).[1]
+
+Un descubrimiento fijarse en que Wired sorbe muchos artículos de Quanta Magazine[2]. Esto me ha llevado a este fascinante artículo sobre los "castores atareados", una maravillosa teoría entroncada en el "problema de la parada" que ofrece una elegante, pero efectivamente inviable de resolver problemas matemáticos[3].
+
+La Sophie también me ha llevado a descubrir True Faith (la canción de New Order, no ninguna creencia). Y de ahí a descubrir que el videoclip[4] (el videoclip en Youtube[5], por si esa instancia de Invidious deja de ir) tiene... lenguaje de signos francés[6].
+
+Un tipo que ha encontrado la manera de correr Doom en... patatas[7] (en Youtube, donde podéis el curioso rap que describe el vídeo[8]).
+
+Finalmente, el confuso panorama actual de las figuritas de La Guerra de las Galaxias[9].
+
+De bonus, algo que ha sacado mi querido Internet Archive en su función de biblioteca, aunque no acabo de entenderlo[10].
+
+
+=> https://arstechnica.com/features/2020/12/a-damn-stupid-thing-to-do-the-origins-of-c/ 1: https://arstechnica.com/features/2020/12/a-damn-stupid-thing-to-do-the-origins-of-c/
+=> https://www.quantamagazine.org/ 2: https://www.quantamagazine.org/
+=> https://www.quantamagazine.org/the-busy-beaver-game-illuminates-the-fundamental-limits-of-math-20201210/ 3: https://www.quantamagazine.org/the-busy-beaver-game-illuminates-the-fundamental-limits-of-math-20201210/
+=> https://invidious.xyz/watch?v=mfI1S0PKJR8 4: https://invidious.xyz/watch?v=mfI1S0PKJR8
+=> https://www.youtube.com/watch?v=mfI1S0PKJR8 5: https://www.youtube.com/watch?v=mfI1S0PKJR8
+=> https://en.wikipedia.org/wiki/True_Faith_(song)#Music_video 6: https://en.wikipedia.org/wiki/True_Faith_(song)#Music_video
+=> https://invidious.xyz/watch?v=KFDlVgBMomQ 7: https://invidious.xyz/watch?v=KFDlVgBMomQ
+=> https://www.youtube.com/watch?v=KFDlVgBMomQ 8: https://www.youtube.com/watch?v=KFDlVgBMomQ
+=> https://www.polygon.com/star-wars/2020/12/21/22063580/star-wars-toys-action-figures-collectors-mandalorian-replicas 9: https://www.polygon.com/star-wars/2020/12/21/22063580/star-wars-toys-action-figures-collectors-mandalorian-replicas
+=> https://openlibrary.org/explore 10: https://openlibrary.org/explore
\ No newline at end of file
--- /dev/null
+# Elide artist names less in YouTube Music
+2020-12-11
+
+ytmusic-two-row-item-renderer[has-badges_] .subtitle.ytmusic-two-row-item-renderer {
+ white-space: normal;
+ }
+
+Use Stylus[1] or some other mechanism to add custom CSS to websites to prevent YouTube Music from hiding artist names as often as it irritatingly does.
+
+
+=> https://addons.mozilla.org/en-US/firefox/addon/styl-us/ 1: https://addons.mozilla.org/en-US/firefox/addon/styl-us/
\ No newline at end of file
--- /dev/null
+# Los libros de Fabien
+2020-12-05
+
+Ha llegado a mis manos una edición física del libro de Fabien sobre Doom[1] para acompañar a la del Wolfenstein 3D[2]. Como el anterior, es un descenso a las profundidades del Doom, que incluye una variedad de temas que incluyen:
+
+* Descripción del hardware de los PC de la época
+* Contexto del videojuego y su proceso de creación y diseño
+* Detallada información técnica sobre la implementación (con comentarios sobre el código fuente)
+* Descripción de las implementaciones para otras plataformas
+
+Se nota la experiencia del primer libro- está mucho más pulido, se lee mejor y contiene menos gazapos (sobre todo los diagramas de la primera edición del libro del Wolfenstein 3D, que espero que hayan corregido en la segunda). Completamente recomendable para los que quieran profundizar en la magia negra que practica John Carmack y sumergirse en el mundo de dos juegos que cambiaron el mundo de los videojuegos (por ejemplo, apuntalando el ataúd del Amiga).
+
+
+=> https://fabiensanglard.net/gebbdoom/ 1: https://fabiensanglard.net/gebbdoom/
+=> https://fabiensanglard.net/gebbwolf3d/ 2: https://fabiensanglard.net/gebbwolf3d/
\ No newline at end of file
--- /dev/null
+# Popurrí
+2020-12-05
+
+Parece ser que Apple ha alterado los términos de uso de macOS de manera que permite servicios cloud basados en macOS, pero con un periodo mínimo de 24h[1]. Curiosamente, esto ha sucedido a la vez que AWS ha sacado su servicio de EC2 con macOS[2]. He usado algún servicio (Flow[3]) para cuando he necesitado hacer algo con macOS sin disponer de hardware físico; por una parte se agradece que por fin haya cierta claridad legal, pero por otra parte, el mínimo de 24h le quita bastante el sentido para algunos usos. Para CI/CD GitHub Actions tiene runners con macOS que se cobran al minuto (!), pero para uso general, el Mac Mini de AWS sale a unos 24€ por día. Son unos 30 días para que cueste como comprarse un Mac Mini, con la ventaja de no tener que mantenerlo/reemplazarlo/etc.
+
+Por supuesto, tanto Linux como Windows se pueden usar por minuto en EC2 (y cualquier otro proveedor) sin problemas, pudiendo aprovechar mucho más la elasticidad. De las pocas cosas que me fastidia de Windows (a parte del coste base, claro) es que cosas como el escritorio remoto y, especialmente, Hyper-V, estén valladas en la edición Pro de Windows 10[4]. Este último complicando un poco la vida de quien quiere desarrollar software y usar cosas como Docker o Kubernetes.
+
+La queja que tenía sobre Linux recientemente- la pérdida de la "transparencia en red" al pasar de X11 a Wayland- parece que está en vías de ponerse interesante[5].
+
+En temas más lúdicos, acabo de descubrir (años después de acabarme el juego) que "The Music of Grand Theft Auto V, Vol. 2: The Score" (YouTube Music[6], Spotify)[7] es un interesante pelotazo de Tangerine Dream, DJ Shadow y otros nombres que no conozco.
+
+Llevo días sin viciarme a los recientemente adquiridos art of rally y Control. art of rally es un homenaje a los rallies de los del Absolute Drift. Es una experiencia prácticamente hipnoticorelajante de derrapes con un estilo gráfico la mar de agradable y una banda sonora que acompaña.
+
+Control por otra parte es un juego de tiros en tercera persona con elementos sobrenaturales y superpoderes que inmediatamente me dio unas vibraciones fantásticas del Max Payne al que jugaba hace casi dos décadas. Qué sorpresa descubrir que comparte muchos responsables. Me lo compré para amortizar un poco el PC con GTX 2060 que me compré por culpa del Flight Simulator. No sé si todos los juegos modernos son así, pero entre los gráficos con trazado de rayos y el entorno físico con mogollón de elementos destruibles, se me está haciendo agua con lo que es posible en los videojuegos de hoy y de la próxima década.
+
+La bola extra es que debería ser un deportista de élite y no lo soy[8].
+
+
+=> https://blog.macstadium.com/blog/developers-big-sur-and-vindication 1: https://blog.macstadium.com/blog/developers-big-sur-and-vindication
+=> https://aws.amazon.com/es/blogs/aws/new-use-mac-instances-to-build-test-macos-ios-ipados-tvos-and-watchos-apps/ 2: https://aws.amazon.com/es/blogs/aws/new-use-mac-instances-to-build-test-macos-ios-ipados-tvos-and-watchos-apps/
+=> https://flow.swiss/ 3: https://flow.swiss/
+=> https://en.wikipedia.org/wiki/Windows_10_editions#Comparison_chart 4: https://en.wikipedia.org/wiki/Windows_10_editions#Comparison_chart
+=> https://mstoeckl.com/notes/gsoc/blog.html 5: https://mstoeckl.com/notes/gsoc/blog.html
+=> https://music.youtube.com/playlist?list=OLAK5uy_mJ7Myt-6KnTTpsy_8q6iOxOjZ_1NbvBl8 6: https://music.youtube.com/playlist?list=OLAK5uy_mJ7Myt-6KnTTpsy_8q6iOxOjZ_1NbvBl8
+=> https://open.spotify.com/album/0NeWQGtJD0LfXdVvgYNZM4 7: https://open.spotify.com/album/0NeWQGtJD0LfXdVvgYNZM4
+=> https://fivethirtyeight.com/features/why-are-great-athletes-more-likely-to-be-the-younger-siblings/ 8: https://fivethirtyeight.com/features/why-are-great-athletes-more-likely-to-be-the-younger-siblings/
\ No newline at end of file
--- /dev/null
+# Un dios griego, el servicio postal, una frambuesa y un elemento de una imagen
+2020-12-25
+
+```
+$ cat check_pixel
+#!/bin/bash
+
+set -ue
+
+curl -s https://store.google.com/config/pixel_4a?hl=es >/tmp/pixel
+grep Agotado /tmp/pixel >/dev/null || mail yo@example.com -s "pixel disponible" </dev/null
+
+$ crontab -l
+# m h dom mon dow command
+16 * * * * /home/alex/check_pixel
+```
+
+Actualización: parece ser que el script no funciona correctamente (acabo de comprobar que ya hay Pixels y no he recibido email). Me da un poco igual porque ya he comprado uno en la FNAC de Francia, como 40€ más barato, que ha llegado hoy.
\ No newline at end of file
--- /dev/null
+# Avalancha
+2021-01-17
+
+Los que tengáis unos cuantos servicios de streaming de películas y vídeo, quizá encontréis útil JustWatch[1], que en España conglomera el catálogo de Netflix, Prime Video, Disney+, HBO, Filmin, Movistar+, Atres Player, FlixOlé, CrunchyRoll, Mitele y más de una decena de otros servicios más.
+
+Parece ser que KLF era uno de los últimos irreductibles galos que se resistían al streaming, pero finalmente podéis doctorizar la Tardis en vuestro servicio de música favorito.[2]
+
+Otra tecnología de futuro alternativo que se perdió para siempre y que sólo recuerda Mr. Morning Sheep Time[3].
+
+No sé qué extraña madriguera me llevó a la cadena DuMont[4], a aprender sobre las grabaciones en kinescopio[5] y que hasta 1949 no era siquiera posible emitir un programa en directo para Nueva York y Chicago.
+
+Con el soporte de addons generalizado de Firefox en Android, llevo cierto tiempo usando NoScript en mi móvil. Hay demasiadas (y cada vez más) páginas de "contenido" que no renderizan sin el JavaScript activado, el interfaz para activarlo es pelín subóptimo y que la cuenta de Firefox Sync no sincronice las opciones de NoScript es un tostón, pero lo recomiendo.
+
+También finalmente tuve la oportunidad de pasarme por una oficina de DNIE, y debo decir que tras establecer una contraseña, creo que he podido incorporar el certificado correctamente a Firefox en Linux (Debian 10 "Buster") sin mayor fricción.
+
+De bonus: Tom Gauld y una variante del "para liarla parda hace falta un ordenador"[6], un fascinante hilo sobre el aparentemente extenso vocabulario en japonés para describir errores protocolarios con los palillos[7], un fascinante texto sobre la credulidad[8] y un curioso y preocupante bug de Windows 10[9].
+
+
+=> https://www.justwatch.com/ 1: https://www.justwatch.com/
+=> https://www.bbc.co.uk/news/entertainment-arts-55507226 2: https://www.bbc.co.uk/news/entertainment-arts-55507226
+=> https://arstechnica.com/gaming/2015/06/before-the-ps2-nuon-famously-tried-and-failed-to-combine-dvd-and-game-consoles/ 3: https://arstechnica.com/gaming/2015/06/before-the-ps2-nuon-famously-tried-and-failed-to-combine-dvd-and-game-consoles/
+=> https://en.wikipedia.org/wiki/DuMont_Television_Network 4: https://en.wikipedia.org/wiki/DuMont_Television_Network
+=> https://the-take.com/read/filmmakers-handbook-what-was-kinescope-recording 5: https://the-take.com/read/filmmakers-handbook-what-was-kinescope-recording
+=> https://www.newscientist.com/article/0-tom-gauld-on-the-shrinking-size-of-powerful-computers/ 6: https://www.newscientist.com/article/0-tom-gauld-on-the-shrinking-size-of-powerful-computers/
+=> https://twitter.com/nick_kapur/status/1346270719773171712 7: https://twitter.com/nick_kapur/status/1346270719773171712
+=> https://fantasticanachronism.com/2021/01/12/unjustified-true-disbelief/ 8: https://fantasticanachronism.com/2021/01/12/unjustified-true-disbelief/
+=> https://www.theverge.com/2021/1/15/22232589/microsoft-ntfs-windows-10-bug-icon-file-flaw-vulnerability-comment 9: https://www.theverge.com/2021/1/15/22232589/microsoft-ntfs-windows-10-bug-icon-file-flaw-vulnerability-comment
\ No newline at end of file
--- /dev/null
+# Cómo molas
+2021-01-24
+
+Ayer me terminé el Control.
+
+Creo que desde que me acabé el GTA V (sobre el 2013, supongo), que no me acababa un juego de esos "triple A", y mucho menos en un PC.
+
+Todo comenzó como una investigación sobre cómo "amortizar" el PC con GTX 2060 que me compré para el Flight Simulator[1]. Todo apuntaba a este juego, desconocido por mí, que era de los primeros en soportar técnicas de trazado de rayos. Vi un par de vídeos en Youtube de esos que te ponen los dientes largos y, por suerte, cayó una oferta en Steam del juego y sus dos DLC por 20€ a finales de noviembre, y los festivos de diciembre fueron una ocasión propicia para dedicarle el tiempo que se merece (unas 50 horas, según Steam).
+
+Juego con un mando de Xbox desde el sofá, en una tele de 40 pulgadas que sólo llega a 1920x1080, con lo que mi sistema da para poner todo a tope. Eso quiere decir trazado de rayos con reflejos (todo se ve reflejado en cristales y suelos pulidos) y muchísimo detalle gráfico, que sobre todo permite que durante los combates haya una cantidad impresionante de escombros volando.
+
+El juego sigue la historia de Jesse, que de pequeña experimentó un suceso paranormal que acabó con su hermano abducido por el misterioso Federal Bureau of Control. Años después, Jesse localiza The Oldest House, el brutalista edificio de oficinas en Nueva York que hospeda al FBC.
+
+Poco más quiero apuntar del argumento, que vale la pena descubrir. Sólo hay que decir que durante el juego, Jesse adquiere una variedad de habilidades sobrenaturales que adornan el combate mediante ingeniosos mecanismos. Pese a poder utilizar una peculiar pistola, el juego obliga a alternar el uso de esta con poderes telequinéticos, que junto con el entorno destruible lleva a unos espectaculares combates que podéis encontrar ampliamente documentados en Youtube.
+
+Todo esto me recordaba un poco al Max Payne, un juego al que estuve bastante enganchado en 2001, otro juego de tiros que salió dos años después de Matrix, y que también mezclaba una habilidad sobrenatural de ralentizar el tiempo. Qué sorpresa descubrir que ambos juegos comparten más o menos los mismos creadores.
+
+Control al parecer es un Metroidvania de esos. Jesse puede moverse por The Oldest House, aunque hay áreas inicialmente inaccesibles. Van apareciendo misiones- tanto de la historia principal como de tramas secundarias, que permiten explorar más mapa, adquirir nuevas habilidades y, por supuesto, ir revelando el misterio.
+
+Hay una variedad de puzzles, combate, alguna que otra carrera de obstáculos/plataforma y bastante exploración. El juego tiene un buen mapa y la posibilidad de transportarse a los puntos de control que se van descubriendo. Aun así hay que caminar bastante, aunque los gráficos lo hacen bastante agradable. Encontrar cosas es en ocasiones frustrante, y para algunas cosas debo confesar que consulté guías en Internet (en particular, hay alguna misión en el juego que es fácil no descubrir espontáneamente y que vale la pena experimentar), además de que algunos combates me requirieron un montón de intentos (especialmente los dos jefes finales de los DLC).
+
+El combate es muy gratificante, especialmente a medida que mejoramos nuestras aptitudes y las capacidades del arma. El manejo con controlador en tercera persona es adecuado, aunque yo a veces tengo bastantes problemas localizando los enemigos (algunos vuelan, otros son invisibles, otros acechan...) y puede resultar un poco estresante. Hay mucha variedad de cosas que podemos hacer en combate; pese a que el juego intenta que usemos una variedad de técnicas, alguna en concreto, si se desarrolla a su nivel más alto, es bastante potente y podemos abusar bastante de ella. A pesar de ello, uno de los DLC introduce un tipo de enemigo bastante complicado con el que merece la pena experimentar otras técnicas. El juego también tiene unos cuántos combates muy guionizados con sorpresas visuales que a mí al menos me dejaron boquiabierto.
+
+Otro punto interesante es la cantidad de secretos y detalles que oculta el juego. Por todo el escenario hay memorándums, grabaciones, proyectores y otros que nos van dando pequeños detalles sobre el mundo del juego. A destacar los curiosos vídeos de "Threshold Kids", una especie de serie para niños con marionetas bastante siniestra.
+
+Creo que Control fue el gran pelotazo de 2019, con mogollón de premios y reconocimiento, con los que desde luego estoy bastante de acuerdo. Muy recomendable para los que gusten de los juegos de acción de tiros.
+
+
+=> https://alex.corcoles.net/2020/11/si-los-fanfarrones-volasen/ 1: https://alex.corcoles.net/2020/11/si-los-fanfarrones-volasen/
\ No newline at end of file
--- /dev/null
+# El batiburrillo periódico
+2021-01-30
+
+Nunca usé Gopher, pero estoy loco por Project Gemini[1]. Desgraciadamente no creo que pueda justificar mover todo lo que pueda al espacio Géminis, pero sería algo maravilloso.
+
+Pese a que conseguí usar los certificados del DNI electrónico en mi sistema Linux sin demasiado problema, usos más avanzados que requieren el uso de AutoFirma integrado en el navegador, fracasaron estrepitosamente y tuve que recurrir a Windows. Pero al final, me dieron la solución[2]. Nótese que podéis presentar reclamaciones a la AEPD contra la gente que no respeta las reglas sobre envíos de publicidad (lamentablemente, hace una semana que presenté la reclamación y aún no he recibido respuesta). Pero cabe decir que el uso del DNI electrónico me fascina. No parece complicado implantar autenticación sin contraseña (más allá del pin del DNI), segura y efectiva- el mayor problema que le veo es que no suelo tener el DNI cerca del ordenador.
+
+Para los que aún no lo sepan, soy un gran fan de Elsa y no lo puedo dejar ir. Por tanto me encanta que los algoritmos para animar la nieve en Frozen hayan servido para resolver un misterio histórico de hace seis décadas[3].
+
+Imprescindible este artículo de la BBC sobre gamers que no se mudan y que sí deberían ser nuestros modelos a seguir.[4]
+
+El otro día por algún motivo tuve la necesidad de volver a ver el videoclip literal de White Wedding. Es más complicado de lo que parece, porque ha desaparecido de YouTube. Pero lo peor es que creo que no ha envejecido bien. Ni siquiera el de Total Eclipse of the Heart. Deliberadamente no pongo enlaces para que os sea más difícil perder la ilusión.
+
+Aunque precisamente ahora no necesito una pizarra electrónica, sí las he necesitado en el pasado, con lo cual tengo excusa para perder el tiempo investigando sobre el tema. Este artículo encuentra una solución interesante de 50€[5].
+
+Añadid a vuestra colección de navajas la de Hitchen[6]. ¿Programador o psicópata? (un test sobre prejuicios físicos, no una valoración de la ergonomía de algunos lenguajes de programación)[7]. Google prueba una aproximación más al tema de los monorepos[8]. Microsoft suelta en el Excel a una de las figuras del Haskell, con resultados harto predecibles[9]. Los sistemas de reglas arbitrarios y complicados me son interesantes, así que me entretuve un rato con [las nuevas reglas de acicalado del ejército norteamericano](http:// https://www.snopes.com/ap/2021/01/27/let-down-your-hair-new-army-rules-for-ponytails-nail-color/[10]). El nuevo diccionario histórico de la ciencia ficción parece maravillosamente entretenido[11].
+
+
+=> https://gemini.circumlunar.space/ 1: https://gemini.circumlunar.space/
+=> https://github.com/ctt-gob-es/clienteafirma/issues/172#issuecomment-767120025 2: https://github.com/ctt-gob-es/clienteafirma/issues/172#issuecomment-767120025
+=> https://www.nationalgeographic.com/science/2021/01/has-science-solved-history-greatest-adventure-mystery-dyatlov/ 3: https://www.nationalgeographic.com/science/2021/01/has-science-solved-history-greatest-adventure-mystery-dyatlov/
+=> https://www.bbc.co.uk/news/stories-55811621 4: https://www.bbc.co.uk/news/stories-55811621
+=> https://www.earth.li/~noodles/blog/2021/01/remote-whiteboard.html 5: https://www.earth.li/~noodles/blog/2021/01/remote-whiteboard.html
+=> https://en.wikipedia.org/wiki/Hitchens%27s_razor 6: https://en.wikipedia.org/wiki/Hitchens%27s_razor
+=> https://vole.wtf/coder-serial-killer-quiz/ 7: https://vole.wtf/coder-serial-killer-quiz/
+=> https://fuchsia.googlesource.com/jiri/ 8: https://fuchsia.googlesource.com/jiri/
+=> https://www.microsoft.com/en-us/research/blog/lambda-the-ultimatae-excel-worksheet-function/ 9: https://www.microsoft.com/en-us/research/blog/lambda-the-ultimatae-excel-worksheet-function/
+=> https://www.snopes.com/ap/2021/01/27/let-down-your-hair-new-army-rules-for-ponytails-nail-color/ 10: https://www.snopes.com/ap/2021/01/27/let-down-your-hair-new-army-rules-for-ponytails-nail-color/
+=> https://sfdictionary.com/ 11: https://sfdictionary.com/
\ No newline at end of file
--- /dev/null
+# Otra taxonomía, con algo de predominancia de serpientes
+2021-02-13
+
+Scott Hanselman no es sólo el autor del imprescindible Dark Matter Developers[1], sino que además comparte conmigo dificultades en finalizar conversaciones. Lo que no comparto con él es su genio para encontrar una deliciosa solución:
+
+https://twitter.com/shanselman/status/1357036562077241344[2]
+
+Hace décadas era superfán del crítico de cine en televisión de El País, Luis Martínez (hasta el punto de recortar y coleccionar sus críticas, algo de lo que sólo se acuerda ahora el Internet Archive[3]). Qué sorpresa cuando la aplicación de noticias de Microsoft me llevó a una entrevista de este señor con el inigualable John Carpenter[4] (link tipo AMP de Microsoft, pues el original en El Mundo está enmurallapagado[5]). Lamentablemente, para retomar el contacto y seguirle, tendré que usar Twitter.
+
+No estaba al tanto del ¿culebrón? sobre los términos de uso de Anaconda[6]. Según entiendo, Anaconda es la solución para ahorrarse los dolores de cabeza derivados del uso de código que no es puro Python en Windows. Pero parece ser que el acceso a los repositorios está ahora explícitamente gobernado por unos términos de uso que al menos a mí me huelen a inseguridad.
+
+Siguiendo con Python, el otro día descubrí con sorpresa que en este sí claro culebrón del LBYL contra el EAFP, que la postura de Guido coincide con la mía (LBYL)[7] mientras que la documentación de Python siempre me ha parecido que defiende lo contrario[8], y creo que eso ha llevado a la concepción de que EAFP es más "pitónico".
+
+Como traca final: NNCP, otro protocolo de internet para descentralizar comunicaciones[9]. Se habla mucho de la transpilación estos días, pero poco de bish[10] y batsh[11], y quizá otros lenguajes que compilan a bash. Otro fascinante ejemplo del videojuego imitando la sociedad: mafias explotadoras del trabajador en Elite Dangerous[12]. El grafo de qué le suena a chino a los chinos[13]. Unos cuántos enlaces lingüísticos intrigantes[14]. La espectacular especialización del fútbol americano, que no vendría mal en el europeo[15].
+
+
+=> https://www.hanselman.com/blog/dark-matter-developers-the-unseen-99 1: https://www.hanselman.com/blog/dark-matter-developers-the-unseen-99
+=> https://twitter.com/shanselman/status/1357036562077241344 2: https://twitter.com/shanselman/status/1357036562077241344
+=> http://web.archive.org/web/20050225041521/http://campus.uab.es/~2075931/otras/quid.html 3: http://web.archive.org/web/20050225041521/http://campus.uab.es/~2075931/otras/quid.html
+=> https://www.msn.com/es-es/noticias/movies/john-carpenter-el-asalto-al-capitolio-demuestra-que-los-monstruos-viven-entre-nosotros/ar-BB1dgsIH 4: https://www.msn.com/es-es/noticias/movies/john-carpenter-el-asalto-al-capitolio-demuestra-que-los-monstruos-viven-entre-nosotros/ar-BB1dgsIH
+=> https://www.elmundo.es/cultura/cine/2021/02/01/60166e3efdddff15bd8b456f.html 5: https://www.elmundo.es/cultura/cine/2021/02/01/60166e3efdddff15bd8b456f.html
+=> https://www.anaconda.com/ 6: https://www.anaconda.com/
+=> https://mail.python.org/pipermail/python-dev/2014-March/133118.html 7: https://mail.python.org/pipermail/python-dev/2014-March/133118.html
+=> https://docs.python.org/3/glossary.html#term-eafp 8: https://docs.python.org/3/glossary.html#term-eafp
+=> http://www.nncpgo.org/ 9: http://www.nncpgo.org/
+=> https://github.com/tdenniston/bish 10: https://github.com/tdenniston/bish
+=> https://github.com/batsh-dev-team/Batsh 11: https://github.com/batsh-dev-team/Batsh
+=> https://www.polygon.com/features/2021/2/4/22264605/elite-dangerous-newbies-trapped-forced-labor 12: https://www.polygon.com/features/2021/2/4/22264605/elite-dangerous-newbies-trapped-forced-labor
+=> https://www.jwz.org/blog/2021/02/the-directed-graph-of-stereotypical-incomprehensibility/ 13: https://www.jwz.org/blog/2021/02/the-directed-graph-of-stereotypical-incomprehensibility/
+=> https://www.enricozini.org/blog/2021/links/language-links/ 14: https://www.enricozini.org/blog/2021/links/language-links/
+=> https://www.sbnation.com/nfl/2019/2/2/18191956/sean-mcvay-get-back-coach-rams-clemson 15: https://www.sbnation.com/nfl/2019/2/2/18191956/sean-mcvay-get-back-coach-rams-clemson
\ No newline at end of file
--- /dev/null
+# Recargando la panoplia
+2021-02-26
+
+No soy **nada** fan de las limitaciones artificiales de hardware. PERO, esto de que Nvidia lastre el minado de Bitcoin para intentar que la gente juegue con su hardware diseñado para jugar[1], aunque me siga pareciendo problemático (como a John Carmack, que propone mecanismos más libremercadistas para cumplir ese propósito[2], que tampoco me convencen del todo), me parece interesante.
+
+Me descubrieron recientemente en el trabajo que uno de los programadores más infames de la historia[3] fue interpretado en el cine por Christian Slater[4] (yo siempre le veo más como el inolvidable J.D. de la inolvidable Heathers/Escuela de Jóvenes Asesinos o como el Clarence de Amor a Quemarropa, pero la verdad que estuvo en Mr. Robot), en un reparto con James Franco, Ed Harris, Timothée Chalamet y Cynthia Nixon.
+
+La sensibilidad de Guido por la legibilidad a veces choca con monstruos que "descubren" "operadores" "cósmicos"[5]. Soy uno de esos fans del Bushido Blade aludidos por esta nota de Polygon sobre Hellish Quart[6]. Lástima que se me ha pasado la demo :( Los místicos microclimas ibéricos ofrecen alternativas verdes para la refrigeración informática[7]- me pregunto si AWS y Azure habrán considerado este ángulo.
+
+
+=> https://www.polygon.com/2021/2/18/22289224/nvidia-rtx-3060-mining-cmp-ethereum 1: https://www.polygon.com/2021/2/18/22289224/nvidia-rtx-3060-mining-cmp-ethereum
+=> https://www.theverge.com/2021/2/19/22290905/john-carmack-gpu-console-auctions-proposal-scalpers 2: https://www.theverge.com/2021/2/19/22290905/john-carmack-gpu-console-auctions-proposal-scalpers
+=> https://en.wikipedia.org/wiki/Hans_Reiser#Nina_Reiser%27s_disappearance 3: https://en.wikipedia.org/wiki/Hans_Reiser#Nina_Reiser%27s_disappearance
+=> https://www.imdb.com/title/tt1735907/ 4: https://www.imdb.com/title/tt1735907/
+=> https://bugs.python.org/issue43255#msg387248 5: https://bugs.python.org/issue43255#msg387248
+=> https://www.rockpapershotgun.com/hellish-quart-physics-swordfighting-game-is-out-now 6: https://www.rockpapershotgun.com/hellish-quart-physics-swordfighting-game-is-out-now
+=> https://www.xataka.com/pro/cpd-seguridad-social-se-trasladara-a-soria-porque-hace-frio-permitira-ahorrar-refrigeracion 7: https://www.xataka.com/pro/cpd-seguridad-social-se-trasladara-a-soria-porque-hace-frio-permitira-ahorrar-refrigeracion
\ No newline at end of file
--- /dev/null
+# Tapos y estudios
+2021-02-26
+
+Estos tiempos extraños me han terminado de arrastrar a la vorágine de las cámaras de videoconferencia. Ante la hambruna y escasez, he decidido innovar y probar si una cámara de vigilancia IP de 20€[1] puede sustituir a pongamos la webcam recomendada por Wirecutter de Logitech[2], que ahora mismo cuesta cinco veces más.
+
+La idea tiene truco, claro. La inspiración fue que un fabricante de estas cámaras sacó una actualización que permitía usar fácilmente su cámara de seguridad como webcam[3]. Quizá esto influyó en que precisamente esa cámara tampoco parece fácil de adquirir ahora mismo, pero me hizo investigar.
+
+Al final me decidí por una cámara barata, sin USB. Esto imposibilita el mismo truco y obliga a ser más creativo. El modelo en cuestión va por red inalámbrica y soporta el protocolo de streaming RTSP (como la mayoría de productos de este tipo), con el que podemos montar una webcam virtual. En Linux he usado v4l2loopback (un módulo de kernel que permite crear "webcams virtuales") y ffmpeg para coger el stream RTSP por red inalámbrica y crear una webcam que podemos usar en cualquier software de streaming. Por cosas de Linux, aún no he hecho funcionar el mismo proceso con el famoso OBS, que es el elemento mágico que permite hacer virguerías, pero el cutremontaje funciona adecuadamente.
+
+La idea es usar la webcam para mi ansiada idea de videoconferenciar usando el televisor, algo que siempre me ha sorprendido no sea algo habitual. Mi PS4 tiene una cámara enchufada justo encima de la TV, pero no hay manera de usarla para este propósito. Duo está para Android TV, pero el Chromecast del que acabo de hablaros sólo tiene un USB que usa para alimentación, con lo que necesitaría un hub para enchufarle una cámara (y pagar la broma de comprar una webcam USB en los tiempos que corren). Por suerte Google Meet soporta Chromecast para proyectar la pantalla a la tele, y puedo usar la cámara de seguridad "sin cable" y por tanto ponerla en el televisor, mientras que el portátil que controla todo el asunto está a mi lado.
+
+Funcionar funciona, y es barato, pero es un lío considerable, el ojo de pez que es útil para funciones de seguridad se hace un poco raro en videoconferencia, y todo el montaje tiene algo de lag, cuando los lags normales ya exacerban mis limitaciones comunicativas en videoconferencias. Habrá que seguir investigando y refinando, pero al menos entretiene.
+
+Por otra parte, todo este experimento me ha llevado a experimentar un poco con el arriba mencionado OBS. Siempre me había parecido un software místico e inalcanzable, que permite añadir fondos virtuales a las aplicaciones de videoconferencia que no disponen de esta característica *imprescindible*, o esta astracanada de Scott Hanselman[4] (sí, el de Dark Matter Developers[5]- ahora se dedica a innovar en OBS- como lo de los títulos de crédito para acabar una videoconferencia[6]). La verdad que es menos chungo de lo que parece (menos hacer funcionar lo de la webcam virtual en Linux- se puede, pero uno se acostumbra a no tener que trastear) y se pueden hacer cosas graciosas. Vale la pena dedicarle un ratito aunque seguramente no le llegaremos a Scott Hanselman ni a la suela de los zapatos.
+
+Al menos ahora mismo no tengo excusa para ponerme a experimentar con pizarras virtuales :)
+
+
+=> https://www.amazon.es/gp/product/B083V41T6M/ 1: https://www.amazon.es/gp/product/B083V41T6M/
+=> https://www.nytimes.com/wirecutter/reviews/the-best-webcams/ 2: https://www.nytimes.com/wirecutter/reviews/the-best-webcams/
+=> https://wyzelabs.zendesk.com/hc/en-us/articles/360041605111-Webcam-Firmware-Instructions 3: https://wyzelabs.zendesk.com/hc/en-us/articles/360041605111-Webcam-Firmware-Instructions
+=> https://www.youtube.com/watch?v=-oaikJCR6ec 4: https://www.youtube.com/watch?v=-oaikJCR6ec
+=> https://www.hanselman.com/blog/DarkMatterDevelopersTheUnseen99.aspx 5: https://www.hanselman.com/blog/DarkMatterDevelopersTheUnseen99.aspx
+=> https://twitter.com/shanselman/status/1357036562077241344 6: https://twitter.com/shanselman/status/1357036562077241344
\ No newline at end of file
--- /dev/null
+# Tirando cromo
+2021-02-26
+
+El nuevo tercer elemento que tengo conectado a mi tele (que sólo tiene dos entradas HDMI, así que tengo la PS4 y el PC para jugar en un conmutador) es el nuevo dispositivo de Google, con el sencillo nombre de "Chromecast con Google TV". He perdido la cuenta de alternativas para poder ver en grande contenido audiovisual (la familia Android/Google TV, los Fire TV de Amazon, el Apple TV, los hágalo usted mismo...), pero el término "Chromecast" siempre me ha seducido (buscar en este blog indica que tuve uno al menos en 2015 y sobre el que escribí en una anterior encarnación de este artículo[1]).
+
+Estaba usando hasta ahora un Mi Box 3, también Android TV, pero a pesar de que destaca en su calidad/precio (la última iteración de Android TV de Xiaomi es aún más barata a 35€, yo me he gastado el doble ahora), las últimas actualizaciones fueron la gota que colmo el vaso de las pequeñas inconveniencias. El mayor problema del Mi Box 3 era precisamente que Xiaomi no parecía entender la "magia" del Chromecast. Esto es, un Chromecast debería estar siempre disponible para enviarle contenido y que este aparezca rápidamente en una tele otrora apagada, pero el Mi Box 3 sólo funcionaba con el televisor encendido y sintonizado en la entrada del Mi Box.
+
+Uso habitualmente los servicios de Netflix, Prime Video, Disney+ y Movistar+. Movistar+ descarta automáticamente la PS4, y todos complican bastante el tema Raspberry (sí, seguramente se puede hacer funcionar, pero, ¿para qué?). La falta de HDMI-CEC en los PC con Windows elimina un poco el PC para jugar que tengo en la tele, y como he mencionado, la verdad que me gusta mucho el concepto Chromecast.
+
+Así pues, con pocas opciones y queriendo probar con algo que no venga de Xiaomi (que igual finalmente ha entendido la magia del Chromecast, pero quizá no), me decidí por el dispositivo estrella de Google, tras comprobar que su selección de aplicaciones cubre mis necesidades (y la mayoría de servicios disponibles en España).
+
+La verdad que ha sido un acierto, pese al coste. El Chromecast no es 100% perfecto, pero suficientemente cerca del 99% para que en un par de meses no me haya molestado, y Google parece haber clavado un par de cosas en las que el Mi Box (y otros dispositivos) cojeaban un pelín.
+
+Lo que más me ha sorprendido es algo aparentemente tan poco destacable como el volumen. En general, mi mente ya ha asimilado que al saltar de la tele convencional a cualquier otra cosa (consola, PC, dispositivo, etc.), hay que ajustar el volumen, porque mientras que la tele se oye bien pongamos al 8 de volumen de mi Samsung, Netflix necesita un 13. Yo ya casi lo hago automáticamente, pero esto no sucede con este Chromecast y se agradece. Además, no tiene volumen propio- los botones de volumen ajustan el volumen de la tele (por HDMI-CEC o infrarrojo según dispositivo), lo que me parece que reduce un poco la carga cognitiva.
+
+Esto nos lleva a un mando la mar de funcional, que aunque carece de una superficie de apoyo plana (¿qué narices pasa con esto? El mando de mi tele Samsung tiene el mismo problema) y tener dos botones etiquetados como Netflix y Youtube (que perturba mis sensibilidades), funciona bastante bien y, al poder ajustar el volumen de la tele con él, es bastante autónomo. Gracias a la magia del HDMI-CEC también podemos usar el mando de la tele adecuadamente (aunque esto evidencia que tengo un botón de pausa en el mando de la tele que le falta al mando del Chromecast. Creo que podría remapear uno de los dos botones inútiles de aplicación, pero tener un botón mal etiquetado profundizaría mi agravio).
+
+El mando gobierna la cacareada nueva interfaz "Google TV", que supuestamente unifica el catálogo de las aplicaciones y es a su vez un nido de publicidad carroñera. La verdad que ni lo uno ni lo otro. Sí, tenemos una página principal con contenidos de muchos servicios de streaming unificados, pero no todos (e.g. nada de Movistar+ por el momento, y creo que podemos olvidarnos de RTVE a la carta, o del contenido de mi servidor Jellyfin). Y sí, aparecen contenidos de pago tipo la compra/alquiler de películas de Google Play, pero la verdad, no lo encuentro tan molesto. Puede que en algún momento encuentre algo que ver con esto, pero en general sigo tirando de JustWatch[2], que al menos añade Movistar+ y que tiene una vista de novedades menos "algorítmica".
+
+Por supuesto, al ser Android TV podemos añadir aplicaciones como Jellyfin y Kodi, que funcionan adecuadamente para reproducir contenidos que tengo a 500 kilómetros y 20 milisegundos de ping al otro lado de una VPN.
+
+En definitiva, aunque algo más caro que otros, este Chromecast es un buen cacharro que funciona bastante bien con la oferta de contenidos en España y que acierta en su mayoría de decisiones ergonómicas.
+
+
+=> https://alex.corcoles.net/2017/06/hdmi-cec-algunas-cosas-que-se-enchufan-a-la-tele-y-complementos/ 1: https://alex.corcoles.net/2017/06/hdmi-cec-algunas-cosas-que-se-enchufan-a-la-tele-y-complementos/
+=> https://www.justwatch.com/ 2: https://www.justwatch.com/
\ No newline at end of file
--- /dev/null
+# Ambición
+2021-03-06
+
+Se preguntan algunos si hay exceso de hype con Wandavision[1] (la serie, no lo que ha quitado el nombre a la serie[2]). Yo antes de opinar me he leído lo que dice mi querido Nat sobre el tema[3] (spoilers a todo trapo). Coincido bastante con ambos. La serie es un batiburrilo de ideas geniales y grandiosas, con un reparto excelente y un presupuesto (o destreza en la ejecución) impropio de la pequeña pantalla. Pero era prácticamente imposible clavar el aterrizaje de una bestia de este tamaño. Yo, que he desperdiciado mi vida viendo 12 series de Marvel de acción real (sólo me faltan 3 de la edad moderna), la coloco así:
+
+1. Jessica Jones
+2. The Punisher
+3. Legion / Wandavision (ex aequo)
+4. Luke Cage
+5. Agents of S.H.I.E.L.D
+6. Daredevil
+7. Runaways
+8. The Defenders
+9. Cloak and Dagger
+10. Inhumans
+11. Iron Fist
+
+No estoy muy puesto en la historia de Dona Bailey, la creadora del grandioso Centipede- me encanta que luego se dedicase a la educación, la escritura y la retórica- pero quizá esta entrevista sea un buen punto de partida[4].
+
+Voy a decir que If You Transplant a Human Head, Does Its Consciousness Follow?[5], es cebo para clics, porque toca muy poco lo que dice el título. Además, no es apto para estómagos sensibles. Pero el artículo es interesante. El que en cambio si hace honor a su nombre es este sobre que los números imaginarios igual no son tan imaginarios[6]. Y los hay que son cebos para ver películas, como este sobre que a veces sí hay miles de locos en dirección contraria por la autopista (pero parados)[7]. Por último, interesante esto sobre que el demonio de Maxwell ahora se dedica a apostar, pero[8] *controla[9]*.
+
+Hablamos hace poco de posiciones muy especializadas. Pero en esta ocasión, se generalizan. A lo que se dedican los coordinadores de intimidad de Hollywood en estos tiempos[10].
+
+
+=> https://twitter.com/chechar/status/1368101056903839747 1: https://twitter.com/chechar/status/1368101056903839747
+=> https://www.wandafilms.com/ 2: https://www.wandafilms.com/
+=> http://thefilmexperience.net/blog/2021/3/5/what-did-you-think-of-wandavision.html 3: http://thefilmexperience.net/blog/2021/3/5/what-did-you-think-of-wandavision.html
+=> https://web.archive.org/web/20150405133709if_/http://www.complex.com/pop-culture/2012/07/interview-dona-bailey-speaks-on-creating-centipete-and-its-evolution/ 4: https://web.archive.org/web/20150405133709if_/http://www.complex.com/pop-culture/2012/07/interview-dona-bailey-speaks-on-creating-centipete-and-its-evolution/
+=> https://www.wired.com/story/if-you-transplant-human-head-does-consciousness-follow/ 5: https://www.wired.com/story/if-you-transplant-human-head-does-consciousness-follow/
+=> https://www.quantamagazine.org/imaginary-numbers-may-be-essential-for-describing-reality-20210303/ 6: https://www.quantamagazine.org/imaginary-numbers-may-be-essential-for-describing-reality-20210303/
+=> https://filmschoolrejects.com/car-chase-to-live-and-die-in-la/?amp#click=https://t.co/9G2O2a5sFN 7: https://filmschoolrejects.com/car-chase-to-live-and-die-in-la/?amp#click=https://t.co/9G2O2a5sFN
+=> https://arstechnica.com/science/2021/03/new-gambling-version-of-maxwells-demon-knows-when-to-fold-em/ 8: https://arstechnica.com/science/2021/03/new-gambling-version-of-maxwells-demon-knows-when-to-fold-em/
+=> https://arstechnica.com/science/2021/03/new-gambling-version-of-maxwells-demon-knows-when-to-fold-em/ 9: https://arstechnica.com/science/2021/03/new-gambling-version-of-maxwells-demon-knows-when-to-fold-em/
+=> https://www.vox.com/culture/22306014/sex-scenes-covid-19-pandemic-intimacy-coordinators-tv-movies 10: https://www.vox.com/culture/22306014/sex-scenes-covid-19-pandemic-intimacy-coordinators-tv-movies
\ No newline at end of file