Steffen Larsen Application 2009

Personal Information
My name is Steffen Larsen, 33 years of age. I am living in Copenhagen, Denmark with my girlfriend. I have a Master degree in Computer Science, where my final thesis heavily was concerning about XMPP (core, XEP-0166, XEP-0167 and XEP-0176). More specificly I was implementing a complete functional VOIP solution based on Jingle into the pidgin platform as a plugin. When I wrote the thesis the Jingle was just beginning to mature, so I belief I made some valuable feedback and contributions to XEP-0166, XEP-0167 and XEP-0176 (also acknowledged). All the code was designed and implemented, from the establishment of the signal (ICE) to signaling (XMPP) and streaming. In general my interests within Computer Science lays in distributed computing, cloud computing, media streaming, protocols and network specifications.

My thesis (("Real-time data streaming using the Pidgin IM platform") can be downloaded via. drop.io: http://drop.io/steffenThesis/asset/thesis-final-pdf.

Besides working and hacking in my spare time, I enjoy to play badminton, running and kite surfing.

Contact information
Jabber Id: zooldk@gmail.com

email address: zooldk@gmail.com

company name: Nordija A/S (www.nordija.com)

Work
I have been working for over 15 years as a programmer and architect. I have been coding in all kind of different environments, from functional languages as Lisp, erlang to C, C++ and Java. I also have a lot of experience with a lot of different libraries and messaging systems / ESBs (enterprise service bus) for Java. Also a huge experience in XHMTL, XML, and XSLT. Currently I am a System Architect in a company called Nordija A/S. Here my role is to make an architecture and a implementation for our middleware platform for the next generation of TVs. More specifically we make software for set-top boxes and tv sets. Due to my work I have experience in conditional access systems (CAS), TV broadcasting, Video Servers, Tv metadata specifications etc. At the moment I am expanding our platform to the next right step: Enabling push notifications (BOSH) and presence available through XMPP. Here we will make use of all the nice extensions XMPP have, beside the nice default routing schemes, presence etc. Publish/subscribe (xep-0060), PEP patterns will also be used together with a lot of web service interoperability's. Besides that, It is quite obvious to choose XMPP into our eco-system, because it will make it easier to integrate with SIP and IMS which all larger scale tele companies are using. All in all our company focuses on making the right mix of a true TV experience and rich information from the Internet. My own mission now is to do this through XMPP for our next version of the platform. So my focus at work is of course (besides the basic usage of XMPP), is how to design a large scale scenario of set-top boxes using XMPP clients (BOSH). All involved from the javascript BOSH on the clients to the connection managers, proxies and XMPP servers on the other side.

More information about my work and previous workplaces can be found at: http://www.linkedin.com/in/zooldk

XMPP Projects and Community

 * Contributing to the XEP-0166, XEP-0167, XEP-0176.
 * Implemented a fully functional Jingle (VOIP) plugin in pidgin (though not the final XEP, because it was finished in 2007).
 * A connection manager for BOSH (XEP 124/206) in Java. Its goal is to be highly scalable and easily deployable. Right now it uses NIO and Jetty (embedded webserver) for testing (and having no app. server your self). This is not comitted to google code yet, but will be, when I have a "go" from my company.
 * Vcard implementation in Strophe as plugin.
 * ICE (XEP-0176) library implementation in erlang. Not finished and currently put on ice (ha ha)., because lack of time. This was done in order to help one of my friends for a erlang bittorrent client. (http://code.google.com/p/etorrent/issues/detail?id=49)
 * Owner and maintainer of the XMPP group at linkedin.com (good for promoting XMPP for companies)
 * Besides coding a lot of Strophe (BOSH), I've also done a bit of documentation of Strophe. As most really nice XMPP projects, we need more documentation in general, otherwise no non-geeky persons will use it!
 * Multiuser Jingle. At the moment I am reading up on it, and will comment on it very soon. We need to push this conference extension a bit!
 * Currently subscribing, reading and writing actively on the following email lists: Jabber dev, XMPP standards, XMPP social, strophe-dev, strophe, punjab.

How I see the future of XMPP and why I want to be a member
I see a very bright future for the XMPP protocol, because it seems to converge different technologies and medias. Every day at work I keep preaching XMPP. I see it as a way to make many different technologies and media on the net converge, due to the interoperability and real-time.

Well, I'm dependent on XMPP and it's community, so I want to see it do well; it's been a huge benefit to me. I'd like to give something back. So if I can help some by giving out some experiences and knowledge, I will be more than glad to do so. I really want to make this protocol succeed, both due to my huge interest in distributed system and my work. My interest right now is XMPP push (BOSH) for limited devices, such as mobile phones, set top boxes, TVs etc. integrating XMPP presence, pub/sub systems on TV for eventing.

Some elements I will focus on if I am elected: Large scale XMPP, load-balancing, BOSH optimizing, and finally Jingle / Multiuser jingle. As I see it not many scenarios have been seen in a large scale (>100k users) before. Testing these XMPP scenarios and giving feedback by optimizing XMPP servers, proxies, connection managers and network topology will be one of my key issues. This said I hopefully get time to expanding the already huge portfolio of XEPs. Maybe it will be time for XMPP to get XEPs for TV and remote controlling by making new specifications.

-Cheers to you all! /Steffen Larsen (zooldk) over and out..