Our Client Strategy

So, what’s up with Spark? Many of you have commented on the fact that the pace of development has slowed and that Derek is less present in the community. Now that a major new version of SparkWeb is out, it seems like a good time to provide a more detailed status report on everything happening around client development.

First up, an announcement: Derek has taken a new position (Sales Engineer) inside of Jive. So far he seems to be loving it, but I’ll let him comment on this blog post with further details. Unfortunately, that means that Spark has lost its lead developer. For the time being, other team members have stepped in to help out. We’re committed to providing bug fixes and minor new fixes to Spark for the foreseeable future. It remains one of the best cross-platform XMPP clients available.

Since Spark development is slowing down, what’s next? Most of Jive’s XMPP client efforts are now focused on the web via the SparkWeb Flash client. We’re using the same technology base to add real-time features to Clearspace. Further, the upcoming Adobe Air technology offers the intriguing possibility of building a new desktop client using Flash. To us, it all seems like the perfect triple play – a single code base that can be used for Sparkweb, Clearspace features and a new Spark desktop client. Only Sparkweb is ready so far, but you’ll see new real-time features in Clearspace soon and we’ll keep everyone updated on a desktop client based on Adobe Air.

Change isn’t always easy and I’m sure that some of you will be disappointed to hear that our approach to how we build Spark is changing. There may be some rough spots as we move from one technology to another, but we’re pretty excited about where things are headed.

cool !!!

very nice !!, i am already implements our client for Adobe AIR .

Oh, well. I hope that new Air technology will be less impacting on pc resources as java is. Btw, what about changing company’s name? It’s becomming less Javish more and more

So, before switching to new base, can you make current Spark more bug free? Will there be 2.5.8 final? 2.5.x?

I’m starting to think we will never switch to Spark.

what’s this planetjabber tag for? i dont see any connection in internet to it and in this community, seems useless to me.

It’s an indicator that the post should show up in planet.jabber.org. planet.jabber.org uses an rss feed that looks for that tag explicitly.

i see, i wonder how can i found out this blog ID to post link to it in clearspace via The specified item was not found.

They’re all posts from within Clearspace, so you can find the same posts if you go under Community. Of course, you probably already now that, and that said, I have no idea how to find te actual ID number! I can’t find any reference to it. If you look at the source of the page there’s a couple of numbers, but I’m not certain which is the proper number to reference this post. Sounds like a good request for the Jive Lounge. ;D ;D

and you will be bundling this adobe air runtime in spark setup or we will have to install it on all computers? i mean will adobe let one to bundle this adobe air.

wroot,

The easiest way to link to this from a discussion or doc within Clearspace is to click on the link icon in the plain text view, browse history (assuming you recently looked at the post or search for it) and insert. It will insert by blogid something like

blogpost:id=1512

This blog post id is 1512.

It hasn’t been completely decided yet, but the reason we’re leaning this direction is primarily one of unified codebases. Focusing development should let us make the most efficient use of our resources.

Also, quite a bit of the Flash VM is open source now, and will be used in future versions of Mozilla. (not as much as Java, true, but it’s still a nice move by Adobe)

To add to David’s comment, Java on the web is no where near as powerful as what Flash/Flex provide. While Swing and Java has its place currently it is far behind the curve as far as a rich, web based, client experience where Adobe leads the pack. Our motivation is to choose the best technology to do the job to provide the best XMPP client experience for our customers, and currently that choice is the Flash platform.

I can understand your move to Flash/Flex especially given the poor options Java provides for multimedia integration (even more troublesome when you are on a non-windows platform).

Do you already have an idea of the target platforms? Windows/OSX/Linux for the desktop and web version will probably be easy. A mobile version with the rising number of devices adding support for Flash(Light) would be kinda interesting, too.

What about the license? Will the move to Flex be the end of an activly maintained open source XMPP client from Jive?

We’re still making plans; SparkWeb is a long way from being able to replace Spark right now, but as we evaluate all the options and figure out our plans things will become clearer.

srt – we’re still trying to figure out the licensing angle. XIFF is already Open Source and we’ll continue to invest in it as the underlying library. We’re not planning to try to sell a desktop client… so that leads us towards a path where it would make sense to make the desktop client open source. We still need to sort out how that might impact the real-time work we’re doing in Clearspace, however. So, no promises yet but we’re definitely trying to think through the issues.

wroot – we’ll have a new Spark release out soon and will continue to make as many bug fixes and minor improvements as possible.

This is something I’ve wanted to do for a while now - create a true XMPP client in AIR - but other work always seems to get in the way. Glad to hear about this new initiative. I think it’s a smart move because yes, Java simply can’t deliver in the same way (at least without a lot more work involved).

AIR isn’t mature enough yet, and it won’t be for the next 1 or 2 years.

Spark (and Smack) is the only implementation of Jingle code besides the original C++ codebase, it would be a great loss to the XMPP community if you’d discontinue the development even before the standard goes draft, which is very likely unfortunately.

Besides, Smack is a very good quality java codebase, and a lot of internal projects (including mine) are built upon it. Such quality does not exists in the Javascript/flash world, and XIFF is no exception. Loss of spark would mean loss of smack I guess.

If I were you, I’d stick with java for 2008, and wait for a more stable AIR. It contains a lot of bugs yet.

It’s obvious that Java retreats to the serverside, mainly web, and it will loose there too, since it has no built-in support for semistructured data like all of its rivals (xml, associative arrays, prototipical inheritance). Java is a classical programming language, and it would have to be on the desktop, like C#.NET or C++.

In my home country, I’m treated as one of the recognizable faces of “Web 2.0”, although I was taught to be an enterprise developer, creating information systems in Java and .NET. I know both the java and the javascript (actionscript, ecmascript) world very well.

So, I’d recommend to find someone to replace Derek for one year, finish the work you’ve done with sparkx.jingle, playing meanwhile with the flash code to see how it fits, and wait for a more stable, much faster AIR Runtime, along with more sophisticated IDE support (although - because of lazy typing - it’d be hard to beat the refactoring tools provided by current Java IDEs - which means slower development cycles, more bugs, less code quality.)

So what does this mean for Smack? Will there be any need to it now that the Spark client will be using XIFF instead? Any chance of getting the Java bits for Smack and Spark released under some additional open source licenses or even released into the public domain once you make the switch to the SparkWeb client? I’m sure some of us would like to continue down the Java path even if Jive goes in a different direction.

Hi chase (and others). Regarding Smack, I actually use it for the IM Gateway plugin as well, so if nothing else, I still need it.

  1. What about Flash on the x86_64 platform?

  2. The same about mobile phones

  3. GPL/LGPL

Please, don’t throw away Spark, just make it more stable and usable.

Flash eats our CPU resources, crashes our browsers. What does it give us?