Archive for the 'programación' Category...

Filed under programación, web

Algunas remeras YAPC 10 :-D

p6301593

p6240146

p6230131

p6230130

p6230124

p6230120

p6230115

p6230114

p6230113

p6230110

Update:  (thanks Luc!)

yapc.na.19100.t-shirt

Comentarios (3) Posted by matias on Martes, Junio 30th, 2009

Filed under geek, programación, web

Ayer estuve todo el día fascinado con Google Waves. Waves es un proyecto de Google para reemplazar el servicio de email (que tiene casi 40 años!), pensando desde cero cómo pueden explorarse las capacidades de la red actual, para generar un servicio de comunicación más eficiente.

YouTube Preview Image

Presentación de Waves

Producto

Waves integra email, mensajería instantánea (como el MSN, o Jabber), wiki, sharing de archivos, y algo más. Una “wave” parece similar, en funcionalidad, a una thread en un foro de discusión, con la diferencia que

  1. es posible modificar las thread anteriores, utilizando un sistema de control de versiones que permite reconstruir, paso a paso, como se fue modificando la thread (playback le llaman)
  2. permite la mensajería instantánea entre los participantes que tienen abierta la wave.

google_wave_snapshots_inboxInbox de Waves

Google desarrollo el protocolo (http://www.waveprotocol.org/)  que ahora se despega de Google, para hacerse un standard, y el cliente, que es realmente impresionante. Este fue desarrollando con Google Web Toolkit, un entorno (y code generator) de desarrollo en Java para Javascript. El cliente corre sobre HTML5, y sinceramente me voló la cabeza! Dicen que lo están desarrollando desde fines del 2006, y esto me tranquiliza un poco… aunque sea tardaron 3 años en hacerlo :-) Con el cliente podés mantener un chat (caracter a caracter) con todas las personas involucradas a la wave; podés mandar mensajes, editar mensaje, compartir fotos y archivos (con drag & drop desde el desktop!), hacer playback del historial de la wave, sumar gente a la web, etc. Es un software increíble. Waves fue creado por los inventores de Google Maps, los hermanos Lars y Jens

Plataforma

Lo que me hace pensar que Waves será exitoso es que soporta extensiones que llegan hasta las entrañas del sistema. Estas se implementan mediante Robots que se unen a la Waves. Estos robots pueden ser proxies a otros sistemas (en la demo se muestra uno para Twitter y otro para un Issue Tracker), traductores (este se lo guardaron para la demo: traducción realtime de Google!); correctores (otro desarrollo gigante, guardadito para que esta demo sea más impresionante: Un corrector contextual, que toma las frases de la web). Los robots pueden agregar botones, modificar el contenidos y hacer de interfase con otros sistemas (por ejemplo para el email). Según los desarrolladores, la APIs interna y la externa (la disponible para desarrollar) son muy similares.

Una extensión que gustó mucho es “bloggy” que al sumarlo a una wave, publica todo el contenido de la misma en un blog… pero lo distinto viene a que si alguien escribe sobre la wave, esta es modifica en el post del blog y si alguien comenta el post, este comentario se refleja en la wave.

Protocolo

El protocolo de Waves es público y la idea es el evoluciones por fuera de Google, una vez que tome vida propia.  Resulta muy atractivo que los servidores de Waves puede alojarse en diferentes servidores, compitiendo incluso con Google. Cuando una Wave se desarrolla entre clientes del mismo servidor, esta no sale de allí, esto es un punto muy positivo para la adaptación del protocolo. Wave podría alojarse en un servidor coorporativo, como hoy es el servidor de email, y alojar allí todas las waves internas, sin tener que depender de Google. Al agregar alquien de afuera del “dominio” la wave se transmite. Es posible incluso hacer IM en waves “multidominio”. Igualmente, esta magia privada es de suponer que se acaba al agregar un robot, y por como esta siendo presentado Waves, los robots serán tan comunes como los humanos en las waves :-D

Negocio

Ademas del protocol, Google parece que liberará el código su cliente de Waves. Esto permitirá hacer cientos de clientes basados en el de Google, y ofrecer servicios de “waving” fuera de Google; ahora claramente el servicio principal será el de Google. Si no puedes ser primero en la categoría, inventa una nueva, dice un principio del marketing. (no con esto quiero decir que Waves sea un invento marketinero, hay años de desarrollo atrás!).

Por otro lado, Waves funciona sobre HTML5: Se mostró funcionando perfectamente en Firefox, en Safari y en Chrome… se imaginan si en la versión final sigue quedando afuera IE ??

Esta maravilla estará lista para ser usada sobre fines de este año. Otra API para aprender!

Comentarios (4) Posted by matias on Sábado, Mayo 30th, 2009

Filed under programación

A alquien se le ocurrió estudiar algunos mensajes de twitter y ver cual es el lenguaje de programación con usuarios más felices:

http://blog.doloreslabs.com/2009/05/the-programming-language-with-the-happiest-users

PERL !!

Yo sabía que mi infinita fuente de alegría tenía que venir de algún lado. Presentia que el buen humor que me caracteriza, las ganas de vivir que me definen tenían un origen externo :)

Después de 10 años de usar Linux como sistema operativo principal me estoy preguntando si pasarme a OSX (con mucho gnu, para no dar vergüenza); sin embargo a mi PERL no lo cambio por nada (todavía).

Comentarios (2) Posted by matias on Miércoles, Mayo 13th, 2009

Filed under programación


BBC

This is a small script in to play BBC [1-9] on a Ubuntu / GNU/Linux box. Requirements are:


ii mplayer 2:1.0~rc2-0ubuntu17 The Ultimate Movie Player For Linux
ii beep 1.2.2-20 advanced pc-speaker beeper

Enjoy!


bbc[0]=""
bbc[1]="http://www.bbc.co.uk/radio1/realaudio/media/r1live.ram"
bbc[2]="http://www.bbc.co.uk/radio2/realmedia/fmg2.ram"
bbc[3]="http://www.bbc.co.uk/radio3/ram/r3g2.ram"
bbc[4]="http://www.bbc.co.uk/radio4/realplayer/media/fmg2.ram"
bbc[5]="http://www.bbc.co.uk/fivelive/live/surestream_int.ram"
bbc[6]="http://www.bbc.co.uk/6music/ram/6music.asx"
bbc[7]="http://www.bbc.co.uk/bbc7/realplayer/bbc7.asx"
bbc[8]="http://www.bbc.co.uk/england/realmedia/live/localradio/leeds.ram"
bbc[9]="http://www.bbc.co.uk/1xtra/realmedia/1xtra.asx"

function playp {
killall mplayer;
# Uncomment to beep before starting to fill the cache.
# beep -r 2 -l 80 -f 900&
mplayer -quiet -cache 384 -playlist $1
}

if [ $# -eq 0 ]
then
echo “usage bbc 1″

for ((i=0; i<${#bbc[@]}; i++))
do
echo $i . ${bbc[$i]}
done
exit 1
fi
playp ${bbc[${1}]}

Comentarios (0) Posted by matias on Sábado, Mayo 2nd, 2009

Filed under geek, programación

Buscando el origen de la expresión “pwned” encontré un fantástico paper de Martín Pichmail, de la Universidad de Tecnología de Viena. En él se cuentan 10 historias de apropiación en videos juegos. Decidí entonces hacer un post sobre el mismo e ilustrarlo con algunas imágenes.

Apropiación artística

La apropiación consiste en tomar posesión de un objeto, un símbolo, un diseño, una marca, para incorporarlo a un ambiente propio, donde su significado se ve alterado y redescubierto.

Fountaine – Marcel Duchamp

148700


andy-warhol-campbell_soup-can-121207-1


Campbell Soup – Andy Warhol

[Casualmente Marcel Duchamp está siendo exibidido en la fundación PROA,  en La Boca, Buenos Aires]

Apropiación en Videos Juegos

En analogía al mundo real, en el mundo gamer existen ejemplos de programadores y diseñadores que deciden apropiarse de la estética, la dinámica, el nombre y demás aspectos de un video juego y alterarlo como una manera de expresión.

Aquí van algunos ejemplos:


jodi

JoDi – Quake

La primera invervención es sobre el clásico Wolfestein 3D, sobre le cual el dúo JoDi (Joan Heemskerk y Dirk Paesmans) removió los personajes  y alteró las texturas. El resultado parece un screenshot de una pantalla de computadora del 2000 en una película de 1980 :-) . Recomiendo entrar a la página de Jodi, original e inquietante!


the-artwork-formerly-known-as-painstation

PainStation

PainStation es una consola que corre el antiguo juego Pong, en la cual que cada vez que un jugador pierde un punto, el dispositivo le infringe dolor en su brazo.  PainStation se apropia tanto del juego Pong, como del nombre de la consola de Sony. Es interesante la dinámica :-) , cuando era chico me acuerdo que jugaba a varios juegos  por “un bicoque” o un “tincaso” :-)


heart


Velvet-Strike

banner-of-god

Velvet-Strike

Velvet  Strike es una modificación del juego Counter Strike, en respuesta a la guerra contra el terrorismo. En el juego, el personaje en vez de disparar, crea stencils y grafittis con motivos anti bélicos, como los que arriba aparecen.

YouTube Preview Image


Apartment Hunting Movie

Para terminar, un corto completo  Apartment Hunting Movie, realizado con el engine del Quake. Estos tipos de cortos se llaman machinimas y en la sitio de los creadores, The ILL Clan, hay varios ejemplos.

Superinteresante, no??

Fuentes:

Comentarios (0) Posted by matias on Jueves, Enero 29th, 2009

Cranky Matiu

Weblog de Matias Alejo Garcia