XMPP becoming mainstream IM?
Like I guess no one missed Google released GTalk earlier this year. This caused quite a lot of noise, especially in the Jabber/XMPP community since they selected XMPP as protocol for this. It also lets you connect to GTalk with any available Jabber client, Jabber clients exists on a diversity of platforms.
One big obstacle for Jabber/XMPP is that it’s userbase consists of a minority of IM users compared to the other networks, like AIM. Yesterday it was announced that Google buys 5% of AOL (who are responsible for AIM) and that they will integrate their IM systems.
For a project such as GNOME, going with XMPP is the only viable option in my opinion. A project that claims to support and chose free and open standards shouldn’t block a pure Jabber/XMPP client to be the IM-client of choice. A few years back when discussions about including Gossip in GNOME, the main argument against it was that it didn’t support AIM (and to some extent MSN and ICQ).
If Google can choose XMPP for IM, shouldn’t GNOME be able to?
Because GNOME should exist to to produce a great desktop that serves its users, not push a political agenda end-users don’t understand or care about.
AOL *may* be integrated with Google Talk, but the de-facto standard in England at any rate is MSN Messenger. A desktop that can’t talk MSN is a desktop nobody of my age group will use.
I guess no one your age (which ever that is) use Mac OS X then, or GNOME for the matter
And no AIM users use Windows.
1) I’m talking about what GNOME ships with, in the end distributions are likely to ship with Gaim anyway.
2) I’m talking about what is integrated into GNOME, not what can be installed on top of GNOME…
I agree with you, Jabber/XMPP is defenetly the way to go.
But is gossip still in deveopment? I haven’t heard anything new for a long time. I have wait long for gossip becomming _the_ jabber client but almost nothing happens. Now i’m using gajim and i’m really happy. muc, gpg-encryption, avatars, good notification functions, etc. gijm just offering almost everything.
@Mike Hearn: I think this is not really an argument. Many people using Windows and many people using other software. With your argument many free software projects would never get startet and also jabber wouldn’t exist.
GNOME like the Free Software community as a whole has a aim, a complete free operating system so that people can work and cooperate together in freedom. Therefore we need of course a free IM system and jabber is just offering exactly this (even with the option of gateways to other networks). So GNOME should have a great Jabber client. Nobody will prohibited to install any other IM client and using any other protocol.
But Jabber should definitely the IM which is supported and pushed by GNOME and by any other free desktop too.
What’s exciting is that GNOME now has every piece of the puzzle to implement a Google Talk-like client. GStreamer 0.10 has got RTP support, and its sound processing capabilities only got better with the last release. It may lack all the necessary codecs, though. Is Speex good for VOIP?
Why should GNOME integrate a service used by a huge minority of users?
GNOME should have an IM client that can talk to all services, Jabber, ICQ, MSN, AIM etc.
Whether it’s based on GAIM or on Gossip is a future issue, but suppport for all IM services is crucial.
I’m all for integrating with proprietary networks, *but* we should have something that we call “this is our primary network”.
This will make it possible to integrate services and functionality in a way that is impossible in a “we need to support everything”-way.
Also, the time it takes to support “everything” is time that our competitor desktops use to further enhance their solutions. So by the time that we are even close to implement the same functionality for all possible IM networks, they have simply moved the barrier on what users expect.
I don’t understand. Are you asking gossip to support XMPP? Does it already? Or are you asking GNOME to ship gossip? Was ist ever actually proposed?
Gnome should by default use a free protocol IM client, and jabber IS this protocol.
Whether to use Gossip or Gajim is not so important.
If they can use gateways to acces other IM networks, there really is no problem to make them the default IM client.
Jabber ca be used for many things, so using it for default IM is only a first step, and i hope to see more devs around this.
And thanks Mickael for going this way.
So are you talking about an XMPP service/agent (like iChat agent) that other gnome programs would hook into? I definitely think this is the right direction to go.
The possibilities from such an integration are quite exciting.
> The possibilities from such an integration are quite exciting.
I wonder if anyone considered Jabber PubSub (http://www.jabber.org/jeps/jep-0060.html) as a delivery method that is better, yet admittedly more complex, than RSS/Atom polls and the like? With a centralized pubsub client on the desktop, other applications could register to watch for incoming content they are interested in.
I think this boils back down to the long-contended issue of what difference it makes to bundle software with GNOME.
If people are going to have to go out and find extra software to “complete” the desktop then I think this is a bad thing. It’s bad when Microsoft do it, when Apple do it, and it’s bad when free software desktops do it as well.
As to my age group, well I’m 21 and I have to admit, I am the only GNOME user I know of
Microsoft make an official MSN client for the Mac so it’s not very hard to get it, but how are people meant to find Gaim?
Oh, and I’d note that my own experiences of running a public Jabber server (a long time ago now) was not good w.r.t gateways. Once Microsoft/AOL detected a Jabber server that had more than N connections outgoing they would firewall it off at their end, which was a very difficult problem to solve.
It’s understandable why, they don’t want a competing chat network. The only real solution to cross-network interop that works is clients that speak multiple protocols.
Mike, usage of multiple protocols in the client is not really ‘interop’ in the full sense: sooner or later, you hit the wall. You’d like to send a friend’s contact to other friend, but you can’t, because they are on different IM networks.
Gateways are not better in this regard. Overall, they are worse: they require you to forward auth data via the Jabber network, and then some of the gateways would like to store it for further use.
I agree that Jabber’s protocol is becoming mainstream, and that it makes perfect sense to ship it as the primary IM protocol of GNOME — if it goes with a classic client-server IM system.
I admit I don’t really understand why IM systems are client-server. A web server is client-server. A chat with your friend is, by its very nature, a peer-to-peer application. Adding a server seems to only add a single point of failure, possibly unnecessary network usage, and privacy issues. Is there a good serverless IM protocol yet?
While Gossip has undoubtly a nice and more convenient interface, I don’t see what makes it so integrated. What I would consider integration would be the ability to manage my contacts using the desktop address book, setting my availability from a panel applet or being connected without hiding a buddy list window in my notification area (where it doesn’t belong), so I can open and close the buddy list whenever I want. Also this buddy list should just show my online contacts, not be the primary interface to do anything related to instant messaging.
I was recently pointed to http://telepathy.freedesktop.org, which seems to go into this direction (but I haven’t looked too closely at it).
Does Gossip provide a conventional way to configure jabber transporters? If so, There’s no better choice for GNOME.
Mike, I don’t propose using transports (unless they are supported by the other end which to my knowledge no one does today). It also has a number of technical issues but I won’t go into the here.
As for finding Gaim, it shouldn’t be too hard to get “MSN Gnome” point to Gaim at Google, right.
That said, I think what GNOME choose to ship has more value as making a stand than the end user, no end user are using exactly what GNOME ships. They are using what the distributions ship, and distributions currently ship Gaim. I still think that GNOME should go with a solution that can be integratable fully into the desktop.
XMPP is exactly that.
This post was not an “Include Gossip in GNOME”, if asked today I would probably propose Gajim (after trying it). They seem to have a lot of momentum and active development.
Gossip has quite active development too but it comes in bursts and depends currently mainly on Martyns time.
JJ, this is an interesting point you raise. I don’t fully see how you intend that users will get in contact with *no* server involved. You still need some place where they can meet and negotiate the session.
The Jingle extensions to XMPP that was released a few days ago does this for multimedia streams, where it really matters since that will involve lots of data. I’m not too worried about the extra network traffic coming from text messages between each other. Other than the security issues involved with having the traffic go over a possible external server.
I’m sorry for posting completely OT, but: “a huge minority of users” (in Sergej Kotliar’s post)…
What does that mean?
Does “huge” modify “minority” to mean that the minority is more minor than usual - or does it modify the number of users, so it’s a huge number of users forming a minority?
Again, sorry, I just had to point it out, since I found it very amusing in it’s ambiguity - nothing more. (And, yeah - I’m a linguist.)
That’s like the noun phrase “the big ape fight”. (A fight between big apes or a big fight between apes?)
I personally think GNOME should push Gossip, just because XMPP is the way to go for Instant Messaging. Just like they need to push SIP as VoIP protocol, as it is becoming the standard (despite the Skype toy).
However, I’m not really pro-jingle. I think it is reinventing the wheel yet another time. Integrating SIP with XMPP would have been a far better idea on the long-term. Jingle used by Google Talk doesn’t have half of the features required for real VoIP.
Damien, which features are you referring to and more importantly, are they unimplementable with Jingle?
I’m talking about features like :
- call transfer (blind, consultative)
- call hold
- call forwarding
- getting the number of voicemails waiting for you
- changing codecs on the fly
- …
among others…
I’m not a jingle expert though, but it is really limited to simple voice-chat.
It will take as much time adding voip features to jingle than adding messaging features to SIP/SIMPLE
Few would suggest AbiWord not support MS Word documents.
Meaning?
Mikael: “I don’t fully see how you intend that users will get in contact with *no* server involved. You still need some place where they can meet and negotiate the session.”
True, but there are ways to solve this. One idea I’ve heard is to have clients send a special email that says, basically, “Are you online?”. The other guy’s email client would automatically respond “Yep, I’m at IP address a.b.c.d”. The advantage of this is that everybody already has an email address; no need to remember multiple ways to reach everybody. (Also, if you had 3 email addresses that all dumped into the same place, you only have to remember any one of them.)
This is just one possible solution. I’m sure there are others.
Being able to open an IM client, type in “joe@somewhere.com”, and have a video window appear with Joe in it, makes me all tingly.
“I’m not too worried about the extra network traffic coming from text messages between each other. Other than the security issues involved with having the traffic go over a possible external server.”
I’m not worried about the number of bytes being sent, as much as I am about text being sent at all. I’m particularly annoyed when I can’t IM the guy 3 rooms down because our building’s T3 is down. (If it was keyed by email address, it could cache the IP address, or ask around using Zeroconf.)
JJ, the idea you posted about using an email to negotiate the session makes matters even worse when it comes to the single point of failure issue. First it still has the initial problem that a user must be able to get to his emails, secondly if this server is down, you lose two ways of communicating with the other person instead of one (IM + Email). It also requires that everyones email applications knows what to do with these emails and that you look at your emails every second or similar in order to not cause a five minute delay due to not polling often enough.
You are also assuming that in your office environment you have a local email server but a remote IM server. I don’t see why that would be. In any company environment you would set up your own XMPP server in order to guarantee that inter-office discussions never travel the internet. It also guarantees that your ability to discuss with coworkers aren’t depending on your office to world link.
Bonjour on the other hand is a different matter and is something that I’m 100% behind having in every IM aware application.
Mikael, I respectfully disagree.
In an office environment, as I pointed out before (and you agree with), it can use Zeroconf, thus not needing a server at all.
As to reliability being better if you have two ways to reach somebody: I don’t see it. First, I haven’t seen an email server go down in years. But secondly, and more importantly, *are* two ways better? If so, then surely 3 or 4 or more ways would be better still, right?
Unless you’re on some flakey network where services go down all the time, I would consider having *fewer* ways to get ahold of somebody to be a much-needed improvement. Maybe I’m living in a strange world, but to me the problem is “Joe has 3 email addresses, an IM name, 3 phone numbers — how do I reach him?”, not “Good thing I have 3 emails, 3 phone #’s, and IM for Joe, because the first two I tried were down!”
Finally, I used to work somewhere that had a local email server, but no local IM. I’m sure it wasn’t the only one. (Can you even run jabberd on Netware?) Big businesses with IT departments set up everything internally; small businesses can’t always afford that.
But anyway, the email idea was just one solution I’ve heard. There are others. The big puzzle to me is: Since they know to route phone/video directly, why is *any* IM traffic (other than setup) going through the server? This seems to me a fundamental design flaw.
JJ, well, if you just extract small pieces of the entire problem it’s easy to argue about the merits of some solution. You seem to consider an email server a much more stable solution, I don’t see why you make this assumption. The weak link is not software based, it’s the actual hardware (network, server hardware, power).
A small company not running their own IM server might just as well not run there own email server either. Making such an assumption is in my opinion wrong. As to whether jabberd runs on Netware I don’t know, but if there is Java for Netware you can at least run Wildfire (previously Jive Messanger).
In a single network office you can use Zeroconf, true.
As for the problem with multiple ways of contacts, my argument that more ways was more reliable is still true, it’s more likely that you will be able to reach a person if there are more ways that you can do so if he’s unavailble on some of the others (for example, if the person has a mobile phone and a regular phone it’s more likely he’s available on one of them if his mobile phone is out of battery or he is not at home). I didn’t say anything about the social problem of keeping track of several numbers/addresses (which I agree exists). Not that much with IM vs. email since I believe this problem is easily fixed by having the same identifier on both like I do.
JJ, forgot to reply to your last comment on phone/video routing (not sure what you meant with video routing here though).
Though I can’t argue to know exactly how telephone traffic is routed between two persons I would guess it’s not very different from IM traffic (in Jabber, not in a “single server” network).
Jabber like email have much the same design as telephone networks imho. That is, we both have a local server (phone station) that knows about me and stores my offline messages (provider hosted answering machines), etc.
Phones have one very big difference though, it’s pretty static in it’s buildup. You can’t just take your analogue phone and go to your neighbour and plug it in. It’s the physical location that holds the address, not your phone.
In a world without firewalls and no NAT you could have solved this with dynamic DNS and just announce to your DNS server that you are on another IP. This solution has a bunch of other issues though so not really viable in the end anyway.
@Mike Hearn: IMO the support for proprietary protocols in Gnome, KDE, Gaim,.. is only good in the short run. In the long run it is *useless* and it would be much better if the resources that are needed to support these proprietary protocols were being used to implement great Jabber-related features in several software.
Do not understand me wrong: I am no Open-Source nazi that is against all proprietary stuff. I think for example that support for proprietary protocols in OpenOffice.org is a good thing! But the reason for this is that this is needed because there are and will be much files in these proprietary files. Even if Microsoft would start supporting Open Document, the support for MS .doc will still be useful to open/port older files. This is a big difference with support for proprietary protocols. If AOL, for example, switches to XMPP in the future, *all* past work to develop AIM/ICQ support will become *useless*….that’s the big reason why I think it is strategically not good to support proprietary protocols. So, please, only contribute IRC, SIP/SIMPLE, XMPP/Jabber related code if you don’t want to contribute something that might become *useless* in the future!
Wasted resources:
* multiple protocols plugin architecture needed
* reverse engineering
* protocol changes by the owners
* bugs caused by the above complexity
* support caused by the above complexity
* documentation
This is also the reason why multi-protocol clients need so much developers, while there are several Jabber clients with only a few developers that have more cool features.
Call For Rules On Use Of Mobile Phones By Students At School
KUCHING, Jan 14 (Bernama) — Assistant Minister in the Sarawak Chief Minister’s Office Fatimah Abdullah Saturday called for specific rules on the use of mobile phones by students at school. She said the rules should be drawn up with the concurrence of …
Symantec scores Imlogic
Symnatec has announced it is to acquire instant messaging vendor Imlogic to strengthen its portfolio of security solutions. The acquisition is to close shortly pending regulatory approvals. Symantec says the acquisition makes it the sole provider of fu…