Archive for the ‘Internet’ category

XMPP, aahh push it!

May 19th, 2009

xmppI decided to look into XMPP after the last NFJS in Reston, VA. It was a lecture by Brian Sletten that made me realize how powerful this technology could be. Before the lecture my only knowledge of this protocol was that it has something to do with instant messaging. After the lecture I was excited and motivated to look deeper into this protocol. My goal with this post is to give you a general idea of what this protocol is and what it could be used for. As I experiment with different libraries, I will post code examples of how XMPP could be used on your web application.

What is XMPP?
XMPP stands for Extensible Messaging and Presence Protocol. The xmpp.org site defines it as “a set of open XML technologies for presence and real-time communication.” In other words, this is a technology that allows you to send XML from one place to another almost instantly.

How does it work?
As an architecture, XMPP is similar to email in that, not only do they both use a client-server structure, but also, all the different servers are connected to allow cross-domain communication. In essence, just like a user with a @mac address can send a email message to a @gmail account, so can the @gmail user send a XMPP message to a @mac account.

The big difference between email and XMPP is how the connected servers will communicate when a message is being sent. On an email system, the client will connect to the server which will then decide where to forward the message too. This message could be forwarded to multiple servers before it reaches it’s destination. On a XMPP architecture, the client will connect to the Jabber server which will connect directly to the recipient’s server and deliver the message.

To XMPP?
XMPP can be used for many different reasons. Of course we can use it for instant messaging, but what else? One use that seems to be gaining popularity is notifications. Most of the current applications are using RSS like, pull technologies, wasting bandwidth and server resources by having to go and check every so often for new messages (even when there aren’t any new messages to get pulled). Considering that XMPP is a push technology, notifications will be sent instantly when a new message is generated, there is no need to check for it.

Another great use for XMPP could be data transfer. A simple example of this would be an application that allows you to update your twitter account from your instant messaging client.

There are many other things that can be done including, monitoring systems, identifying the presence of users, and even controlling servers from our instant messaging client. In the end its up to our imagination.

Or NOT XMPP?
The biggest reason for not using XMPP is, if you need to guarantee that a user will see the message. With a XMPP architecture, if a recipient’s client application is not running, it is possible that the message will never get to him/her.

If you are interested in XMPP keep checking back as I will be posting tutorials with code examples. If you are still confused on the power of XMPP, check out Google Wave, its somewhat of a cool application :)

  • Share/Bookmark

Immersion

December 9th, 2008

[youtube=http://www.youtube.com/watch?v=3gu0iu0xwls]

This an amazing video by photographer Robbie Cooper. It shows just how focused (or strange/creepy) young people can be while playing video games. Check out their game faces! Do you have a game face?

  • Share/Bookmark

Who needs a Crackberry when we got AwayFind?!

November 21st, 2008

AwayFindOne common argument in favor of a blackberry (or iphone) is that it calms your nerves about checking email since you can access it anywhere. On the other hand, this is also the problem with these devices. Well here is the cool solution, AwayFind.

I first learned about it from Zvi Band’s post and I think its a great idea! AwayFind, in a nutshell, relieves you from constantly checking your email by giving email senders the option of contacting you immediately, only if needed. Now, you dont have to worry about missing that all important email and you dont have to check for it every 5 minutes!

Now don’t get me wrong, I am still getting that blackberry (or iphone, still debating), but this is something I could use, regardles of what I have.

Check out my AwayFind link, remember to use it only if you have to.

  • Share/Bookmark

Satches for Kids (Week One)

November 19th, 2008

oneweek1 So it has been a week and as you can see my stache is rocking!! I am actually surprised, I didn’t think I could grow this much! Anyways now to the frustrating news, my donations are still at a big fat $0.00. Are you feeling bad yet? Good go here donate something!

Check out how the others growers are doing!

  • Share/Bookmark

Mustaches for Kids and Donors Choose

November 13th, 2008

clean

Take a good look at this picture, next time you see a picture of me I will have a new addition. That is correct I am growing a mustache!! I have joined the Mustaches For Kids army!

You ask yourself, “What is Mustaches for Kids?” and I will tell you. Basically I grow a sweet stache, people come up to me ask me why am I growing a mustache, and then I explain to them that I am doing it for the kids. I will let them think about it for a second, then I will clarify… The stache is pretty much just a conversation starter, my real intention is to get people to donate money for kids and schools.

This year I am part of the Mustaches 4 Kids in Baltimore and we will be supporting the Donors Choose organization. Each of the growers has a “Giving Page” on the Donors Choose site where donors can go and choose (ha! clever name) a project to support, there is no limit and there are plenty of projects to choose from. So please take a look at my Giving Page and donate whatever you can. Also if you have a project you want me to support let me know.

  • Share/Bookmark