Chris Mullins Application 2007

History
I've been a Member of the Jabber (now XMPP) Software Foundation since April of 2003, and have consistently worked towards open standards. I also sit on 2007 XMPP Council.

Current Software Development Activities
I am the Chief Engineer at Coversant, where I'm responsible for the technical aspects of the SoapBox Platform.

These aspects include the SoapBox Framework, which is a commercial XMPP SDK. I've been involved in all stages of development of this Framework, from the network stack (socket and XML handling) through the Object Oriented layers, all the way through the client interfaces. I have personally implemented dozens of XEPs in this SDK, including complex ones such as Publish-Subscribe. This SDK runs on Windows, Windows Mobile (such as all those cool SmartPhones), and on Linux.

I also continue to work on the SoapBox Server, which is a commercial XMPP Server. Like the SoapBox Framework, I've been involved in all stages of developing the server. My background in scalable network application combined with x64 and IA64 support have helped the SoapBox Server exceed 250k simultanious users connected to a single box. The SoapBox Server has dozens of XEPS implemented, including complex ones such as Publish-Subscribe and Multi-User Chat. Many of the JEP implementations were personally implemented by me, or where code reviewed by me.

There are other XMPP related projects I'm involved in, but they're all currently very hush-hush! :)

I author a technical .NET Blog that's updated whenever I can think of something interesting to write about. This blog can be found at: http://www.coversant.net/blogs/cmullins

Qualifications
As a founder of Coversant, I've got signifigant personal interest riding on the success of the XMPP protocol and by extension the XSF. The more involved I become in the protocol, the more effectivly I'm able to act act as a Technology Evangalist (which is part of my official role Coversant) pushing XMPP into new markets, new niches, and new customers.

My background is as a Software Engineer and Solutions Architect. Large scale, high performance network applications is where I've been focused the last several years. Software which I've designed or written has been installed by more than 5 million people. I'm experienced with Protocol Design and Networking Technology, and have written software ranging from embedded systems all the way up through today's largest Itanium servers.

With Coversant, I've been heavily involved in XMPP and Jabber for a number of years, and have implemented the XMPP RFC's as well as a number of JEPS.

In XMPP land, I've implemented the following JEPS on both the client and server side:
 * XEP-0004, Data Forms
 * XEP-0012, Last Activity
 * XEP-0022, Message Events
 * XEP-0030, Discovery
 * XEP-0045, Multi-User Chat (portions of)
 * XEP-0047, In-Band byte Streams (portions of)
 * XEP-0048, Bookmark Storage
 * XEP-0049, Private XML Storage
 * XEP-0050, Ad-Hoc Commands
 * XEP-0054, VCard
 * XEP-0055, Search
 * XEP-0060, Publish-Subscribe
 * XEP-0066, Out-Of-Band
 * XEP-0077, In-Band Registration
 * XEP-0078, Non-SASL Authentication
 * XEP-0082, Date and Time Profiles
 * XEP-0085, Chat State Notifications
 * XEP-0086, Error Conditions (XMPP <-> Jabber Mappings)
 * XEP-0090, Entity Time
 * XEP-0091, Delayed Delivery (portions of)
 * XEP-0092, Version
 * XEP-0095, Stream Initiations (portions of)
 * XEP-0106, JID Escaping
 * XEP-0115, Entity Capabilities
 * XEP-0153, VCard Avatars
 * XEP-0199, IQ:Ping

There are also a number of XEPs that are no longer listed, as they've been depricated.

Goals for the Upcoming Year
One of the better aspects of my job is that I get to see how a wide range of customers put XMPP to use. Interestingly, the same set problems seem to frequently arise.

In no particular order, I see these problems (and there's no surprises here to anyone):
 * End to End encryption isn't being used today, which means something needs to change. I'm not quite sure what that something is, but clearly improvement is needed.
 * Certificates aren't frequently used, and when they are used (as the Interoperability Event pointed out) we still can't to S2S SASL in an effective way. We need this to be better.
 * Partially implemented and/or incompatiable solutions.

Another priority is to see XMPP stop trying to play catch-up with the major consumer networks. I would like to see us focus on innovative features that the consumer networks can't or won't provide. Examples of this are the huge range of possabilities offered by the PEP infrastructure, the Jingle work being done, and the Asterick integrations that we're seeing. With the next version of Exchange providing a PBX, and with LCS out there, we have to make sure we stay ahead in features or risk the commercial markets being lost to the giants. The drive into the US Military, with their adoption of XMPP is also going to require new features and changes that we, as a standards body, need to keep up with.

I would also like to see the formal adoption of a Certification and Test Suite. The fragmentation of XMPP hurts all the players, and any time someone downloads a new client or server that's incompatiable with other implementations, MSN wins a new customer. That just can't continue.

Other Memberships
I'm a Microsoft C# MVP, and my profile can be found on the MVP site.

I'm a Board Member of the Sacramento .Net User Group.

I'm a full member of IEEE, and have been forever.

I sit on the 2007 XMPP Council.

Upcoming Presentations
I've got a light presentation schedule at the moment - my next scheduled presentation is on June 14 in Pleasanton, Concurrency & Threading with .Net

Contact
I can be reached via XMPP at cmullins@jabber.org, or via email at chris.mullins@coversant.com.