Archive for the '9605' Category

Twitter como el Service Bus final de las Aplicaciones

Saturday, April 3rd, 2010

Quisiera describir brevemente una propuesta sobre cómo usar Twitter en aplicaciones. Me imagino que esta idea no es nueva, y que debe haber algo parecido implementado en algún lugar de la Twittoesfera. Mi punto a demostrar es que se puede implementar algo simple y extensible.

Supongamos que queremos operar en un mercado virtual. Actualmente, tenemos que ir a un sitio web, ingresar nuestra oferta, esperar respuestas y contraofertas. Un método alternativo podría ser usar una cuenta de Twitter para enviar mensajes con ofertas.

Algo como:

Cualquier otra aplicación (no necesariamente una sola) puede leer el feed de @ajmarket y procesar los mensajes: responder, hacer una contraoferta, publicarla en un website, hacer análisis de mercado, etc.

Propongo como formato de mensaje:

Si necesitamos enviar más información, podemos agregar enlaces a los datos (posiblemente en formato JSON, podría ser XML pero prefiero JSON):

Cada aplicación debería entonces publicar sus verbos y argumentos válidos. La aplicación que lee los mensajes (o que escribe las respuestas o nuevos mensajes para otras aplicaciones) puede estar distribuida, no necesita tener un punto de entrada, una URL. El punto de entrada y salidad de mensajes es la cuenta de Twitter. Me parece un punto de entrada más flexible.

Imagino que podemos construir cualquier tipo de aplicación que se base en el envío y recepción de mensajes.

Podría ir más allá: cada aplicación con cuenta de twitter puede ser visto como un agente. Si necesitamos planear un viaje, o encontrar información sobre un tema, podemos derivar el problema a una aplicación “inteligente” que esté escuchando en Twitter, y que tenga conversaciones con otros agentes de Twitter para resolver su problema.

La aplicación que se esté ejecutando puede estar en Azure, Amazon, o en nuestro propio centro de proceso. Podemos usar otro transporte de mensajes, Yammer en vez de Twitter, o cualquier cosa similar en el futuro.

En resumen: Usar Twitter como un canal pubsub, con un simple pero flexible formato de mensaje.

Debe haber algo así ahí afuera.

Nos leemos!

Angel “Java” Lopez
http://www.ajlopez.com
http://twitter.com/ajlopez

Ganando un libro en Twitter

Wednesday, March 17th, 2010

El jueves 11 de Marzo, hace semana y media, recibí un mensaje por Twitter, diciendo que si hacía retweet de un mensaje específico del usuario @tobint podía llegar a ganar un libro de Microsoft. Serían elegidos dos ganadores: uno en EEUU y otro internacional. El premio sería entregado via Amazon. Yo hice retweet del mensaje, y seguí mi vida. El viernes temprano, sorpresa! Había ganado! (mi entrada fue seleccionada al azar). Tobin estaba trabajando desde un Starbucks, supongo que era de noche donde estaba, creo que era Redmond. Recibí estos mensajes:

El libro es CLR Via C# 3rd Edition (una nueva edición) de Jeffrey Richter

http://www.amazon.com/CLR-via-Pro-Developer-Jeffrey-Richter/dp/0735627045

Descripto:

Dig deep and master the intricacies of the common language runtime (CLR) and the .NET Framework 4.0. Written by a highly regarded programming expert and consultant to the Microsoft® .NET team, this guide is ideal for developers building any kind of application-including Microsoft® ASP.NET, Windows® Forms, Microsoft® SQL Server®, Web services, and console applications. You’ll get hands-on instruction and extensive C# code samples to help you tackle the tough topics and develop high-performance applications.

El perfil de Tobin Titus en Twitter:

Pueden visitar su sitio personal Abstract Syntax

http://tobint.com/

Twitter es una gran experiencia para mí. Puedo compartir información, conocimiento, enlaces, chistes, estados de ánimo, con gente interesante, en mi ciudad, Buenos Aires, de mi país Argentina, y de todo el mundo conectado.

Gracias por el libro Tobin!

Nos leemos!

Angel “Java” Lopez
http://www.ajlopez.com
http://twitter.com/ahlopez

Lo bello de Twitter: Ejemplo 1

Sunday, November 22nd, 2009

Soy un gran usuario de Twitter. Generalmente, uso TweetDeck como cliente, aunque a veces voy por la interfaz web. Twitter es la implementación de un idea simple (mensajes cortos, podemos seguir a quien querramos que tenga perfil público, nos pueden seguir y dejar de seguir en cualquier momento (noten los cambios de Facebook a tener perfiles públicos, veo que motivados por la facilidad que se da en Twitter)) Todo eso ha cambiado la forma en que interactuamos. En especial, en el ambiente del desarrollo del software, Twitter es un gran complemente (podría ser un reemplazo) a los lectores de feeds. Veamos un ejemplo de lo efectivo que puede ser.

Todo comenzó ayer sábado, con un mensaje de @jfroma, desarrollador de software argentino, como yo, que escribía:

Yo no había leído todos sus mensajes del viernes, así, que curioso sobre ese comentario, fuí y los leí. El mensaje original aludía al patró Model View View Model. Sé que José (@jfroma) ha estado trabajando en ejemplos de data binding en WPF usando modelos recuperados con NHibernate, así que seguí el link que apuntaba al usuario @michaellperry, para leer sus mensajes. Era mi primer contacto con Michael:

Encontré, entre sus mensajes del viernes, esta presentació:

Session Detail: Data binding without INotifyPropertyChanged

preguntando para confirmar a @jfroma:

Ahora, tenía más contexto (una frase que repito muchas veces: con contexto, uno se puede manejar más entre la información que recibe). Con todo esto, descubro los intereses de Michael en su blog (noten cómo Michael usa su estado Twitter a la izquierda):

http://adventuresinsoftware.com/blog

Descubrí la librería de código abierto de la presentación de Michael:

http://updatecontrols.net

Como siempre que encuentro algo interesante, ya sea para mí, o que pienso que puede ser interesante para alguien, comencé a tweetear sobre el tema. Al rato, veo que @jyinglee desde China, también tomó nota, haciendo RT de mi mensaje:

 

Todo comenzó con un simple mensaje. Este es el poder de Twitter, es“serendipity with help” (descubrimiento accidental con ayuda), con la ayuda de gente interesante que nos sigue y a la que seguimos.

Nos leemos!

Angel “Java” Lopez
http://www.ajlopez.com
http://twitter.com/ajlopez

Twitter para todo: TweetMyPC (y TweetMyMac también)

Tuesday, September 1st, 2009

Una idea que quería explorar es crear un pequeño estándar de cómo usar mensajes cortos para enviar comandos y recibir respuestas de una aplicación cualquiera. Un paso hacia eso, muy ingenioso, es la de TweetMyPc (http://tweetmypc.codeplex.com/). El autor principal es Shoban, Microsoft MVP de la India.

La aplicación es chica, y cuando la ejecutamos en nuestra máquina, ingresamos los datos de nuestra cuenta de Twitter:

Una vez que arranca la aplicación, comienza a leer nuestros tweets cada 1 minuto. Es conveniente usar una cuenta para cada PC. Desde esa cuenta, desde cualquier otro lugar, podemos enviar comandos como: Shutdown, Hibernate, Lock, y hasta Download, que comienza a bajar un archivo. Una lista parcial de comandos la pueden ver en:

http://www.codegeeks.net/tweetmypc-what-next

Si uno saca un Screenshot remoto, la aplicación responde enviando un comando con una URL de la imagen tomada. Este es el tipo de respuesta que tenía en mente en el primer párrafo de este post: una forma de enviar algo más grande que un mensaje, es mediante una URL.

La aplicación está escrita en .NET. No vi el código todavía, pero está originalmente escrita en VB.Net y hay versión en C#.

Tienen también aplicación para

Otra aplicación del mismo autor:

http://www.codeplex.com/jata 

Jata is a Google Talk like Twitter Application which was developed using VB.net and Twiteroo Twitter API framework.
jata automatically checks for new messages periodically. You can post your status right from jata post message screen.
You can also reply to tweets using jata.

Habría que seguir explorando la idea de manejar aplicaciones con mensajes cortos, desde Twitter u otros.

Nos leemos!

Angel “Java” Lopez
http://www.ajlopez.com
http://twitter.com/ajlopez

Twitter da para todo

Sunday, January 4th, 2009

En algún tweet de @delicious_prog (que suele enviar varios mensajes con enlaces relacionados con la programación en general, que terminan agregados en mi propio delicious), encontré este post:

Washing machine hacked to tweet when the load’s done: @maytag, you listening?

del que saco este video:

[youtube:wkMXpKmRXvU]

Vean el trabajo que se tomó esta persona para conectar a una máquina lavadora de ropa, para que al detectarse que terminó su trabajo, envíe un mensaje a una cuenta de Twitter, @pimpy3wash. Pueden ir ahí y ver que no hubo mucho trabajo en este fin de semana.

Habrá que ver si es todo un montaje, o realmente funciona. Pero más allá del sentido del humor que tiene el autor de esto, es interesante ver podemos usar Internet, con mensajes que ya existen, para avisar de eventos, o accionar en dispositivos remotos, o recibir información de sensores.

Como ejemplos de aplicaciones más serias, pueden ver los proyectos de la gente de Instedd (donde trabaja el bueno de Eduardo Jeziersky), como:

SMS Geo-Chat

Pueden ver cómo puede usarse en

Golden Shadow

También tienen el interesante:

Twitter Bots

al que usan también en otro proyecto

Instedd Directory

Uno de los enlaces que mencionan es lo que tiene la gente de research de Microsoft India:

http://www.codeplex.com/smstoolkit

Más sobre Twitter y aplicaciones relacionadas en:

http://delicious.com/twitter

Nos leemos!

Angel “Java” Lopez
http://www.ajlopez.com/
http://twitter.com/ajlopez