Last Saturday I attended TXJS, my second conference focused specifically on JavaScript-related discussions and presentations. The conference drew approximately 180 attendees consisting of some of the most well-known JavaScript developers in the world including Douglas Crockford (JavaScript luminary), Pete Higgins (Dojo Project Lead), John Resig (creator of jQuery), Andrew Dupont (lead developer of Prototype), and more. I focused primarily on attending sessions that would help me understand what new development trends we should be aware of. 

<strong>Sessions</strong>

The conference was a bit different from JSConf, which I attended in April, in that it clearly was focusing more on client-side development versus server-side JavaScript implementations such as Node or Narwhal.  The discussions, though, were similar in targeting the intermediate to advanced developer levels which demonstrates a maturing of the JavaScript developer community. Sessions were given by well-known developers such as Douglas Crockford (Yahoo!), Brian Leroux (Nitobi & mobile expert), John Resig (creator of jQuery) and Pete Higgins (Dojo team lead), to name a few.

While I attended several sessions, including some dealing cross-domain communication and Facebook’s abstraction layers, one sidebar impromptu session interested me the most because it really wasn’t supposed to be a session. A developer from the Selenium project asked John Resig, Pete Higgins and Ed Spencer (lead developer for Ext JS) to sit with him to discuss application testing. That turned into a full-on panel discussion about the topic attended by ~30 people. The feedback:

<ul>
<ul>
John Resig said that Selenium was not a great testing tool but it’s the only choice we have</ul>
<ul>
Selenium’s lack of intimate knowledge of the major frameworks is a hindrance in spite of the fact that these libs are just JavaScript
</ul>
<ul>John Resig: Mobile is severely lacking adequate testing tools forcing developers to purchase expensive handsets to verify functionality</ul>

</ul>

We have extensive testing experience and we should consider leading in the testing space.

I also heard that John Resig’s presentation, “JavaScript on the Mobile Webâ€, was outstanding. John has been doing a tremendous amount of mobile testing, specifically to be able to build jQuery for Mobile and has documented quite a bit of information on the various mobile browsers and their support of JavaScript and the DOM.

Microsoft

I was able to work closely with Shanku Niyogi’s team to sponsor this event. I presented the value-prop which lead to a “green lightâ€ for sponsorship. We sponsored the shuttle bus which was prominently mentioned during the keynote and heavily used by attendees for going to the event as well as returning to the sponsor hotel. Basically, the bus was full at all times so this was a very well-placed focus. I also reinforced the sponsorship to any attendees I spoke with.

I spoke to a number of attendees who were both surprised and impressed by Microsoft’s expanded efforts to address the breadth developers. Most were unaware of Visual Studio’s deep JavaScript integration or efforts such as Reactive Extensions for JavaScript (RxJS) and the refactoring of the Ajax library to embrace jQuery. Jeffrey Van Gogh did an amazing job getting the message on RxJS out during his presentation and I focused heavily on discussing the publicly available advances in IE9 to some elite developers. One thing to note about RxJS is that Douglas Crockford attended Jeffrey’s session and expressed how much he loves the technology. This is a BIG win because of Douglas’ influence in the JavaScript space. His main concern is the fact that we’ve not decided on a license for it and that the code is obfuscated via minification. Unless we have a compelling reason to do so, it seems like a good choice to distribute code in a readable format to allow the community to engage in the project. Considering that there are tools that can easily reverse-engineer minified source, there doesn’t seem to be high-value in maintaining this distribution approach.

Another interesting comment came from Facebook senior engineer, Tom Ochinno, which said that as web developers they have a responsibility to continue to support users on IE6, especially since it constitutes approximately 5 million of their users. In addition, he said that as their userbase has increased, the number of users on IE6 has flattened which leads him to believe that they are in fact corporate users who have no control over browser choice. This was said in front of a large group of prominent developers in the lobby and reinforced our assertion that while we’re doing our best to upgrade users to IE8, in some cases our hands are tied.

The “IE6 Must Dieâ€ mantra was nowhere near the level that was displayed during JSConf. Feedback from this group of developers was much more empathetic with many simply saying that supporting IE6 is “part of our responsibility as web developersâ€. That was refreshing to hear. Our announcements around IE9 relating to HTML5, CSS3 & related specs has also been a boon with VERY positive feedback about out direction. Developers are genuinely excited about this but are anxious for more information and transparency. Read this as they want to prepare now, not when IE9 launches. Having IE PM Carter Rabasa attend TXJS was invaluable. He was able to vet questions for developers as well as dispel some misconceptions, especially surrounding ACID3 & HTML5/CSS3. In addition, I believe his participation has benefitted the IE team as follows:

1)	It demonstrated the that IE team is REALLY interested in what the breadth developer is doing
2)	It allowed attendees to offer feedback to a live person as opposed to blog comments or forum posts
3)	It allowed the IE team to better understand who breadth developers are, their thoughts and their needs
4)	It gave the team a chance to promote IE9, albeit indirectly, to a group of highly influential client-side developers from companies like Facebook, Google, & Yahoo as well as JavaScript lib projects like jQuery, MooTools, Dojo, Prototype and YUI.

Dependency and package management are areas that breadth developers are struggling with at the moment and could be a good area for Microsoft to take leadership in. Our managed code expertise puts us in a prime position to help define how to better manage the growing number of files dependencies and dynamic script loading needs of the breadth developers. This topic tends to focus primarily on performance improvements but is not slowly migrating into discussions on how to properly manage and scale your applications. Facebook has some interesting technology to manage this especially their Haste, Primer & Boot Loader code which great improves page rendering for the site but unfortunately is not publicly available.

Takeaways

•	This conference was clearly client-side centric and much more representative of the current breadth developer. With that said, most people I spoke with are looking seriously at how to leverage JavaScript on the server-side. We should explore this further.
•	Most of the developers I spoke with, while having disdain for IE6, acknowledge that supporting it is part of the career that they chose. All advanced level developers I spoke with including Tom Ochinno, Nicole Sullivan and Thomas Hughes-Croucher (Yahoo!) took it a step further and actually said that if you know what to look for IE6 isn’t that hard to support. I think we need to identify the common concerns about IE6 development and properly document them to make it easier for developers to support it. This could be a BIG win for us and gain us more credibility.
•	Reiterating what I said after JSConf. We need to be more forthcoming with information on our future browser direction. Developers want to know more about IE9.
•	Developers are excited about IE9 and ready to jump on supporting it. See previous point.
•	RxJS is receiving really great reception. We need to push that more as well as finalize licensing and distribution of the project.
•	Testing is still a wasteland in terms of JavaScript and with our experience we could be leaders in this space.
•	Having a member of the IE team there was invaluable. It demonstrated we’re listening. Let’s do this more!
•	People noticed we were absent as a sponsor at JSConf. Sponsoring this helped fix that. Many thanks to Shanku, John Montgomery, Erika Maki Michelle Mellott and Jeff Beehler for making that happen. ïŠ 


Conference Feedback:

“briangarcia: Some random thoughts on the fantastic #TXJS . Anyone else think the event should be twice a year? http://bit.ly/dfv069â€
“dcoder: Inspired by @joemccan's #txjs talk; putting together a preso on wireframing and prototyping techniques and LoD. Now to find venues...â€
“malsup: Major props to Rebecca and the yayCrew. #txjs was a first class event.â€
“rogerpence: #txjs Was very cool. Crockford way cool and Resig so wise beyond his years! Other spkrs great, too. Great day! Job well done by all.â€
“dstorey: Getting ready to take the Microsoft bus t @txjs. Hopefully it has hardware acceleration, but I'm not sure about the multiple engines.â€
