Friday, October 2, 2009

XI2 and MPX released!

It finally happened! After nearly 4 years of development, MPX has been released as part of XI2 in the new X Server 1.7.

The whole thing started when I started my PhD in late 2004. The problem I found was that there was no support for collaboration on a single shared display. All the solutions at the time were hacks at the toolkit or application level. I found that the only way we can get truly collaborative interfaces is by adding it into the windowing system itself. So started hacking on X in late 2005. I went from scratching my head and wondering how some of the stuff could compile (I had never heard of K&R function declarations) to rewriting large parts of the input subsystem and even ended up as release manager. Not in a single day though.

Now we're done. MPX is out, and we have generic low-level support for multiple input devices. You know the whole one keyboard-one mouse paradigm we've had since Doug Engelbart invented the mouse? It's over, you don't have to restrict yourself anymore when writing an app.

Of course, this is a low-level change and when you wake up tomorrow, not a lot will have actually changed. We still need the toolkits to support it, we need apps to pick it up, we need the desktop environments to start thinking about what can be made useful. Nonetheless, basic collaboration features are already there and it can only get better from here.

Let's see what will happen.

20 comments:

Erik Andrén said...

Great job. Kudos!

Alex Murray said...

Congrats Peter, I've followed your work since you were at the wearable computing lab at UniSA and have been impressed with your commitment to getting this stuff out - turning what could have just been a closeted research project onto the desktops of every linux user - its a pretty awesome achievement. Cheers.

Gianluca Sforna said...

That's great! I assume we're going to see XOrg 1.7 in Fedora 12 in November?

Dodji said...

Congrats for your impressive and hard work.

Jef Spaleta said...

So.... I can now hook up multiple wii-motes as mouse-like input devices and do some crazy free form collaborative "art" in the gimp?

Spakman said...

Awesome, excellent and exciting news! Well done and thank you!

bestouff said...

Congrats for the MPX release !
I hope being able to use it (e.g. in Compiz or a GNOME desktop) soon.

jjardon said...

For GTK+ support take a look here: https://bugzilla.gnome.org/show_bug.cgi?id=596725 ;)

spb_nick said...

Congratulations :)! This is indeed a tremendous achievement :)!

If only I had more time for my petty tablet input stuff :)

Carlos Martins said...

Congratulations! :)

Dan Nicholson said...

Congrats, Peter! Xorg is a much better place with you around.

Bill McGonigle said...

Congratulations on the release, and kudos for your perseverance.

Dylan McCall said...

This is fantastic. Congratulations! Thank you for all your hard work :)

(Now to jam XServer 1.7 into my nearest Ubuntu release!)

Terrence said...

Congratulations! I, for one, have been cross-training my left mousing arm for over a year (since I heard of MPX for the first time) in anticipation of this day.

Bryan Goldstein said...

Congratulations! You accomplished an amazing feat, and managed to contribute much more to the open source community in 5 years then most open source developers do in a lifetime.

renjithrajan123 said...

just awesome..I am thrilled!

myusri said...

I have been waiting for this to go mainstream. Now my three kids can use the computer together with three independent pointers! What do you recommend to use to start developing MPX-aware applications?

toupeiro said...

First and foremost, this is really awesome. Thank you, and congrats on a fantastic tool!

I am curious how security will come into play with this extention to X. What I would expect is that there is some sort of activation of the second set of input devices that will keep a common GID/UID and environment while they are in use. Am I far off? If this hasn't been addressed yet, how can I be of help?

Thanks again!
- Toupeiro

ykill said...

Excellent work, now to share the console with my wife! No more arguments over the mouse!

Andrew Collins said...

I followed developments in X much closer long ago as a "systems programmer" but in the past few years I drifted into "web development." I'm late to following your blog or your work on MPX. However, please accept my sincere congratulations on the success of your efforts. I look forward to reading your blog and getting reacquainted with X. Thank you!