Alpha's Manifesto

A black and white figure's thought-hive

Update personal: ¿en qué ando?

Update de estado desde el año pasado

Uff, hace un tiempo que ya no toco este blog, es hora de volverlo a la vida. Acá les va un pequeño update con mis últimas aventuras y desventuras.

(Read more →)

Los favoritos

El fenómeno 2.0 del soporte y el gusto personal

Favorites

Una amiga mía preguntó en DeviantArt: ¿por qué favean? ¿Qué hacen con sus favoritos?

La pregunta me parece un poco más profunda de lo que aparenta ser en una primera leída. Los favoritos y la forma en la que se usan pueden ser un fenómeno de internet en sí mismo y la cultura 2.0. Quisiera hablar un poco de eso.

(Read more →)

¿Por qué distintos dominios para recursos estáticos?

La razón detrás de las URLs raras...

Sabemos que el nombre no es más que un nombre y que no importa cuál sea el servidor actual en donde se están alojando los datos, pero parecería que es una práctica común de muchos sitios grandes (léase: Facebook, Twitter, Google, etc.) hacer referencia a muchos de sus recursos en dominios externos. Por ejemplo, las imágenes de Facebook se encuentran alojadas debajo de http://static.ak.fbcdn.net/ y no debajo de http://www.facebook.com/, ni siquiera debajo de http://imgs.facebook.com/. ¿Por qué?

Alguien ya hizo esa pregunta y la respuesta fue nueva para mí: hay una limitación en varios browsers (y hastas donde yo sabía, algunos sistemas operativos) que previene hacer más de dos, tres o cuatro conexiones simultáneas a un mismo hostname. De hecho, es parte de la especificación HTTP 1.1 (parece que cumplir el estándar no siempre está tan bueno, ¿no?). Ahora, si notaron, la limitación es por hostname, ¿por qué entonces utilizar distintos dominios? La razón es evitar cookies que pueden estar yendo y volviendo en cada uno de los pedidos, y para evitar eso, se puede usar un dominio extra que nunca devuelva cookies. De esa forma, sitios grandes como estos se ahorran mucho bandwidth.

UPDATE: Gracias a Exos, que claramente estaba más informado que yo en este tema, las limitaciones exactas son de tres conexiones por cada dominio y cinco para cada IP. Los distintos dominios/subdominios ayudan a utilizar CDNs para distribución de contenido con mayor velocidad. Exos está en desacuerdo (y demuestra por qué, miren los comentarios) con que las cookies sean una gran carga respecto del bandwidth. Entonces el por qué de los dominios vs. subdominios queda en duda, pero suponemos que debe estar relacionado con políticas de administración interna de cada empresa.

Soy un zorrinito performante.

Nomic

El juego sobre hacer juegos

Acabo de leer la tira de XKCD de este martes pasado, hablando de inteligencias artificiales para juegos, hablando de la dificultad determinados juegos para computadoras, determinadas según su posibilidad de vencer humanos en dicho juego.

El último juego, según el gráfico, muy propicio para los humanos e imposible para las computadoras, es el juego de CalvinBall. Como no lo conocía y me sonaba a una referencia obvia a Calvin & Hobbes, busqué un poco al respecto. CalvinBall es un juego creado en esa historieta con algunas reglas de comienzo y una única regla clara: “Nunca se puede jugar con las mismas reglas”. El mecanismo del juego para ganar es redefinir las reglas del juego. En el comic, este juego es lo totalmente opuesto a juegos puramente estructurados y teóricos, este juego se trata de inventar reglas que te permitan contrarrestar las reglas opuestas. Como verán, es algo anárquico.

Podemos ir desde lo más bizarro en un juego de Calvinball (como esta discusión en un foro) hasta racionalizaciones de cómo se aplica el concepto en la vida real, por ejemplo, cómo Twitter es como Calvinball (aunque no me sieneto muy de acuerdo). Sin embargo, en las tiras cómicas originales se puede apreciar cierto tipo de estructura, y el juego se reduce a mucha habilidad mental. Acá vemos dos ejemplos de Calvin y Hobbes jugando: Footbal to Calvinball, Calvinball.

Ahora, buscando sobre esto encontré una variante no tan anárquica llamada Nomic. Nomic es un metajuego con un conjunto de unas pocas reglas imnutables, como las reglas que hablan de instruir nuevas reglas y jugar en turnos. Básicamente, las reglas se deciden de forma democrática (pero claro, eso también puede cambiar). No he encontrado ejemplos del mismo, pero aquí alguien hace referencia a ellos y a formas interesantes de comenzarlos ya proponiendo un objetivo. (Que, no veo por qué no, podría también cambiar.)

Me encantaría encontrar algún buen ejemplo de un juego de Nomic, en donde se destaque la agudeza mental de cada jugador para ponerse a sí mismo en posición ganadora (permitiendo que los otros jugadores acepten sus reglas, o utilizando las reglas de los otros).

Soy un meta-zorrinito.

Link del día: If This Then That

IfTTT.com es un servicio que me atrevo a calificar de “maravilloso” en donde nos permiten integrar distintas redes sociales o servicios 2.0 en workflows que nosotros definiremos. Dependiendo del uso que le demos, puede sernos más o menos útiles.

Aunque su página de WTF lo explica, les daré un ejemplo de lo que se puede hacer para que lo vean de una forma simple, con unas reglas que uso yo:

  • Cuando alguien me taggea en una foto en Facebook, que me envíe una copia de esa foto a mi email
  • Cuando favoriteo un tweet, que me agregue ese tweet a Instapaper (yo uso los favoritos de Twitter para cosas que quiero leer después)
  • Cuando le pongo una estrella a una entrada de Google Reader, que me la copie a Instapaper (yo uso las estrellas de GReader para cosas que quiero leer después)
  • Cuando agrego un post a este blog, que lo twitee automáticamente

Y este servicio todavía está en Beta, me encantaría que agregaran en el futuro nuevos servicios y nuevas integraciones. La idea está fantástica y su utilidad es impresionante. Por supuesto, también podemos hacer interactuar muchos otros servicios (Craiglist, Evernote, Youtube, feeds, Facebook, Twitter, teléfono y sms!, linked.in, vimeo…).

Como extra, podemos utilizar “recetas” (tareas que ya otra gente ha programado) o crear las nuestras propias.

¿Para qué lo utilizarían ustedes?

Soy un zorrinito automatizado.

Tener una web minimalista…

… te permite hacer este tipo de cosas:

¿Acaso a alguien más le encanta la forma en la que Twitter maneja los emails? Me agrada muchísimo la idea en donde hicieron el estilo de los emails totalmente similar al de la web. Simple, clara y con la información justa.

Notesé hasta la presencia de la barra superior, al estilo de la web, cuando notificaba de la existencia del nuevo Twitter. (De hecho, por alguna razón a veces lo sigo viendo. Hay alguien que todavía no esté usando la nueva versión?)

Soy un zorrinito simplista.

Link del día: ¿Te faltan ideas?

Este link es otro de los tantos geniales que proporciona la gente de MicroSiervos. Todavía no lo dije, pero si te gusta la ciencia en cualquiera de sus formas, realmente recomiendo que sigas a estos muchachos españoles.

El link en particular es una aplicación basada en Twitter, de mucha simpleza, pero de alto valor. La aplicación, llamada The Internet Wishlist, funciona de la siguiente manera:

  1. Yo, tú, él, nosotros, vosotros y ellos postean en Twitter usando el hashtag #theiwl. Como buen wishlist, deberías explicar qué es lo que quisieras que la internet te proveyera. Servicios, información, aplicaciones, integraciones, sistemas, etc.
  2. Esta aplicación mostrará un listado de los pedidos de la gente.
  3. El resto de nosotros tenemos ideas sobre qué cosas están faltando allá afuera
  4. Manos a la obra: programadores con trabajo, empresas con clientes, usuarios con sistemas.
  5. ?
  6. Profit!

Cabe aclarar que no todo aparece por ahí, sino que los twitts pasan por cierto filtro antes, y por último, que tienen un RSS al que podemos seguir. Totalmente recomiendo hacerlo, quién sabe qué joya estará esperando ahí afuera para que la leamos.

Soy un zorrinito con demanda.

Link del día: Encapsulación psicológica

Este es otro de los links que me fue compartido via Twitter por la gente de BreakingDev, y el concepto es bastante simple, dejenmé presentarlo:

Se dice que una pieza de software está encapsulada cuando no conocemos su funcionamiento interno y sus aspectos externos nos proporcionan todo lo que necesitamos para hacerla funcionar. No nos importa cómo, nos importa el qué hace. El cómo es responsabilidad de ese software, no nuestra.

Este concepto es muy utilizado en el paradigma de programación orientado a objetos, en donde cada objeto encierra la responsabilidad de su propio comportamiento.

Sin embargo, en el artículo llamado Psychological Encapsulation se ve este tema de una mirada distinta: ¿Qué ocurre cuando no confiamos en la forma en la que una pieza de software realiza sus tareas? ¿Qué ocurre cuando tenemos un problema y el no conocer ese comportamiento interno nos impide solucionarlo?

Esto es lo que ellos denominan encapsulación psicológica, y supongo que otros simplemente lo pueden llamar fiabilidad de un determinado software, o, siendo más específicos aún, el gusto y confianza que cada persona en particular le tiene a un software en particular.

Creo que es un concepto a tener en cuenta al momento de diseñar (y usar!) software, trabajar con herramientas en las que no confiamos (o peor aún: no podemos confiar) es realmente una experiencia desagradable, y puede conducir a grandes bloqueos en nuestra productividad.

(Aquí podríamos hablar sobre distintos tipos de software, cuáles son de mayor confianza, si el open source comunitario o el software propietario que tiene a una empresa respaldando el buen funcionamiento del mismo, si los sistemas hechos de piezas simples integradas o si los sistemas que lo hacen todo, etc. Son libres de dejar sus opiniones.)

Soy un zorrinito de confianza.

Link del día: Firefox 4 + Mozilla demos

Ayer salió a la luz la versión definitiva de Firefox 4, y en unas 24 horas ya logró tener más de 6 millones y medio de descargas. Un navegador popular, sin dudas. Podemos bajarlo y al mismo tiempo ver el movimiento en tiempo real de descargas a través de Firefox 4 Download Stats.

Cabe aclarar que Firefox 4 viene totalmente renovado, al menos en su interfaz gráfica y mucho de su funcionamiento interno. Las características que Firefox siempre ofreció permanecen ahí, y hay varias otras más. Por otro lado, su interfaz es mucho más limpia y minimalista (parece que todos los navegadores están siguiendo una tendencia que Chrome marcó) y por supuesto, soporta muchos de los nuevos estándares que se están desarrollando para la nueva web.

Fue de casualidad, gracias a un post en Twitter, en donde encontré un dashboard de ejemplos y características de HTML5 y tecnologías relacionadas, llamado HTML5 & Friends, en donde podemos ver muchas de las nuevas características en funcionamiento, y tener una explicación pequeña que podemos extender. Por otro lado, la web de Mozilla Demos (llamada Web O’pen Wonder) contiene muchos ejemplos e implementaciones de las cuales podemos aprender.

Soy un zorrinito actualizado.

Nueva etapa

Parece que por fin parte de todo lo que andaba esperando se dio, y entonces me encuentro escribiendo ahora desde la ciudad de Austin, Texas, empezando una nueva etapa de mi vida. Alguien por ahí (gracias JF) preguntaba si existía la posibilidad de tener una “bitácora del capitán”, de forma que mis nuevos descubrimientos en esta tierra fueran publicados junto con mi experiencia personal. Yo creo que sí, y de hecho, me agrada la idea.

Espero estabilizarme pronto y volver al blogging nuevamente, espero que vuelvan los links del día, y que tenga publicaciones más multimediales. Por lo pronto, mi nueva conexión 3G me permite acceso constante a la información, y a la publicación de la misma, de forma que verán muchas más cosas en mi perfil de Twitter, y por supuesto, muchas más tonterías que se me vayan ocurriendo. Pero, espero, serán de su agrado.

Saludos a todos y esperemos esto remonte nuevamente!ç

Soy un zorrinito texano.