In this talk and town hall discussion from YUIConf 2012, senior YUI Engineer Eric Ferraiuolo presents his thoughts on how YUI can continue to progress with and for its community. His initial presentation sets the context for a town hall conversation where developers who use YUI share their feedback and insights.
YUIConf 2012 was an incredible conference with excellent speakers on topics that are relevant to the YUI community. We really enjoy sharing a bit of it with you with a new video release every few days. Be sure to check out our earlier videos as well as add our YUI Theater and YouTube channel to your bookmarks.
In this talk YUI engineer Tony Pipkin provides a step-by-step walkthrough of building and deploying a module to the new YUI Gallery using yogi. Tony goes over a variety of yogi functions and demonstrates how to properly assemble configuration files and setup your code to make YUI gallery submission practically effortless.
Tony has released the source code on GitHub for the gallery-sizer example he uses in his talk. The slides for this talk are available here.
In the past few years I had no opportunity to attend or give a talk at YUIConf. I’m currently living in Europe, so traveling to Santa Clara is not so easy. For that reason, all these years the only experience I had with YUIConf was to watch the videos on YUI Theater. I really enjoyed them, but I always wanted to be there in person to talk with people from the YUI team and other Yahoo! Engineers, to share with them my experience, to give them some feedback and just to learn from the source about the future of YUI. This year, thanks to my company, Liferay, I had this opportunity.
Initially, I didn’t know what to expect — all the impressions I had were only from the videos. In general, it turned to be an invaluable experience. The feeling to meet Dav, Luke, Tilo, Eric, Caridy, Matt, Satyen and of course Jenny — people you’ve seen only online — cannot be described. Talking to them helps to understand their personality, what is driving them forward, what makes them happy and why are they so passionate about YUI. One of the most disappointing things for all members of the community is when you send a pull request you think it is great, but it remains unmerged. Being there I could ask, “Hey, Dav, what happened with my pull request?” and hear, “Oh, man, I’m sorry, I’ve been working for the past three weeks on yogi, but I promise I will do it very soon”. Then you understand and give allowances for the time they need.
There is also something else: watching the videos on YouTube does not allow you to ask right there if you don’t agree with something. For example, I disagreed with some parts of Ryan Grove’s presentation (mostly his pieces of advice to avoid some of Y.Lang functions), but being there was a good chance to discuss these with the presenter or with the other people from the community. Also, it’s easier to learn about the things they are already working on, but since they are in the early phase they aren’t still made publicly available. This helps to plan your work better and not duplicate what they are already working on with what you plan to do. The conference itself was very well organized, there was enough time between talks, the food was very good as well. At the and, I would like to say “thanks” to both Liferay and YUI Team for the priceless time I had the last week. Hope to see you again!
In this talk from YUIConf 2012, the SmugMug sorcerer and former YUI team member Luke Smith provides a walkthrough of the fundamentals of Y.Attribute and its various incarnations. He goes through the runtime execution of its API explaining configurations and the rationale for using them. He also explores their relationship to events and how they are merged when extending or mixing classes.
In this two-part talk, the YUI team visual design guru Jeff Conniff and frontend engineer Tilo Mitra discuss the upcoming exciting additions to the YUI library CSS offerings. In the first part of the talk, Jeff talks about skinning YUI widgets and showcases unique new tools for effortlessly building coordinated color schemes and matching theme sets. Tilo Mitra follows with a discussion of Responsive Grids, a utility built on top of YUI Grids that allows for creating flexible layouts for any screen size.
Last week folks from around the world got together to meet face to face and discover the latest developments in the YUI world at YUIConf 2012. Expectations were high as folks had heard hints of a new openness and transparency for YUI, and everyone knew Dav would not disappoint with his whirlwind keynote address. I’ve been tasked with conveying to you just what the mood, energy, and the tone was at the conference, and I’m proud to say that this was easily one of the best YUIConf’s in recent memory.
Dav Glass kicked things off with his special flair with a special gift to Evan Goer in appreciation of his hard work writing the YUI3 Cookbook: a framed book cover signed by everyone on the core YUI team. He then brought us up to date on developments over the year since his last keynote, and proceeded to wow the audience with such announcements like having GitHub as the source of truth, the formation of a Contributor Model, and the subsequent inducting of Ryan Grove and Luke Smith as the first two committers outside of Yahoo! with full repo commit access.
After getting warmed up, Dav proceeded to walk through new features of yogi. This tool is more than just a build tool for YUI developers, it’s a codification of the ideals that YUI wants to convey to anyone interested in working with or on YUI. It means that everyone – whether “inside” the core team or part of the broader development community all have access to the same high quality tools and faster build times. And now the YUI Gallery has a new more powerful role through yogi: Gallery components are now treated essentially the same as core components, and folks do not have to fork the Gallery repo just to build their own components.
This was one of the central themes of YUIConf 2012: The barriers between so-called “core” team members and the greater community are coming down. Third-party extensions and Gallery components will have a new prominence as highly tested and supported components rise to the top and enjoy better integration with the core YUI codebase.
We then were treated to a glimpse of the future with Jeff and Tilo‘s “The Future of YUI CSS“. It has long been a tedious task to try to reskin YUI components, and Jeff showed us all how soon YUI will be leaps and bounds beyond the current state of the art with highly configurable color schemes. (You can try out the Skinner Demo online!) Tilo continued the theme by presenting new mobile-friendly and responsive CSS grids.
From there Luke Smith of SmugMug discussed the rationale behind Y.Attribute with “Attribute Walkthrough” and gave us pointers on the best way to take advantage of this tremendous feature of YUI. Luke’s easygoing manner and natural gift for teaching brought new insight into the behind-the-scenes workings of Attribute, and the rationale for how it works.
Thanks to the hard work of Anil Patel, Vanessa Garcia, and the hotel staff, attendees were treated to a great lunch with avid conversation. It was very gratifying to place faces to the names that we’ve encountered over the past year, and to make new friends as well. This brings me to the second major theme of YUIConf 2012: YUI has a dedicated and vibrant community that is growing.
After lunch, we broke up into two tracks. The main room featured a talk by Caridy Patino entitled “Mojito for YUI Developers”, where Caridy highlighted the strengths of the new Mojito framework and how it adds value to YUI for application developers. This talk, and many others like it, gave rise to yet another major theme: YUI is a rich ecosystem that can serve as the foundation for higher level frameworks and applications. We would see this theme repeated in later talks such as “Mjata.js – bringing data models to life”, “Bottle Mobile UI library”, “Building Native Win8 Apps with YUI”, and Diego Ferreiro’s talk on “Node.js + Cocktails: Scaling Yahoo”.
In the breakout room Evan Goer spoke to a standing room only crowd about “Writing for Developers: Some Rational Techniques”. He highlighted many techniques to make documentation come alive and took a paragraph that was basically unintelligible tech-speak and transformed it into sparse, vibrant, and direct language. One quote from twitter after this talk was “After @evangoer’s talk I feel compelled to completely rewrite my #yuiconf talk” Evan Goer’s contributions to the YUI community through his writing brings to light another theme at the conference: YUI is more than just the code, it’s the people.
Derek Gathright continued the trend of strong, substantive talks with “Scrollview Deep Dive“, which many commented was not only a much-needed talk given the popularity of ScrollView, but that it was very accessible to anyone new to that component. In the breakout room we were treated with a great talk by Lingyan Zhu on “Mjata.js – bring data models to life“, which serves as an example of a project that took existing YUI components and extended them to meet the needs of their project.
As the day progressed we were treated with informative topics such as “Adopting YUI App Framework on Yahoo! Media Sites” by Gamaiel Zavala, “Using YUI to Tackle Video” from Ryan Cannon, and “Zillow and Y.App, Sitting in a Tree…” from Daniel Stockman. What’s this? Another theme? Yes indeed. Y.App is transforming how developers are working with YUI. More and more we are seeing how the App Framework is enabling developers to write robust websites and web-based applications
Our Lightning Talks session with “Tic-Tac Loader”, “Gear”, “Mjata Charts”, and “YUI+BDD” gave us an almost speed-dating approach to presentations from the YUI community, and the energy in the room was high as the audience actively engaged with the speakers with lively questions and feedback.
The evening was rounded out by a spicy and informative talk from Douglas Crockford entitled “Monads and Gonads”. This tweet summed things up nicely: “Boom! There we go. It’s not a Crockford #yuiconf presentation without a #dogballs reference.”
Day 2: Connecting.
Day 2 picked up where Day 1 left off with Ryan Grove speaking on “When Not to Use YUI”. This may seem like an odd topic at a YUI conference, but Ryan’s main idea was to be pragmatic about how you use any framework and to know the costs behind all the “magic”. In the end, he serves as a great example of the way in which someone can use YUI, explore ways to improve it, and contribute those changes back to the codebase. This is the quintessential life cycle of a YUI developer.
Tony Pipkin riffed off of the groundwork laid by Dav on Day 1 by walking us through the process of building a new-style Gallery component from scratch with “Building Modules for the New Gallery“. It was amazing to see yogi put through its paces and to see just how easy it is now for anyone to begin to take advantage of YUI Gallery.
From there we reached what to many would be the highlight of the conference. Eric Ferraiuolo discussed the state of the YUI community with “YUI, Open Source, and Community“. This included the steps we have taken recently to open the doors to all developers both inside and outside Yahoo!, the new Contributor Model we have drafted, and the elevation of Gallery components to be more in line with mainline YUI development through yogi. From there, he opened the floor to anyone with questions about YUI’s community, and how the YUI team could improve transparency not only on the code level, but the process level as well. The discussion was lively, and lots of great ideas were discussed. It was as if the whole year of community interaction was distilled into one room. One of the most profound conclusions reached during this discussion was simple and far reaching: You are the YUI team. Instead of thinking about YUI as a product built by a small team and consumed by a larger audience, YUI is created by all of us, for all of us.
I was struck when writing this about a Thanksgiving memory. When you were a child, you had to sit at the Kids’ table during Thanksgiving dinner. Food was presented to you with little choice on your part, and you could only look longingly over at the Grown Up table. In the past, I think many folks in the YUI community felt their role was one of being at that Kids’ table. After this YUIConf, we have done away with all that, and we all now sit as equal partners at the Grown Up table.
After Eric’s Town Hall we once again broke for lunch. As I walked from table to table, everyone was really enjoying the speakers, the food, but most of all the opportunity to connect with one another face to face.
The afternoon sessions kept up the pace of the rest of the conference with Reid Burke demoing Yeti running on multiple devices in his talk entitled “Write Code that Works”, while Montie Tsai and Zordius Chen proved YUI’s power on the mobile devices with their “Bottle Mobile UI Library”.
The day was concluded with the awesome Kevin Lamping discussing “Scaling YUI in the Enterprise”. You may remember Kevin from his online tutorials via YouTube. We often think that the only way to contribute to an open source project is via the code: submitting fixes, writing new methods, or writing tests, but Evan, Kevin, and many others at the conference showed us all that there are many other ways to contribute. As a Community Engineer, this is my desire for anyone who uses YUI and wants to share what they’ve learned with the greater community.
We also heard from Diego Ferreiro who shared with us the presentation “NodeJS + Cocktails: Scaling Yahoo!” Diego is working on Cocktails on the Yahoo! search team and has also contributed an amazing asset rollup manager called Shaker. And in another example of the amazing YUI community, Paul Hummer sponsored delicious cupcakes with the YUI logo – since he couldn’t make it to the conference in person. Needless to say they were a big hit with everyone!
If I’ve managed to hold your interest this long then I really have succeeded in conveying a small part of the energy and excitement of YUIConf. From the “surprises” of the first day to the “connections” of the second day, YUIConf 2012 can be summed up once again with a single sentence: You are the YUI team.
I want to offer up special thanks to Anil Patel, Vanessa Garcia, the YDN team, and most of all Jenny Donnelly for making the conference possible and doing all that hard, behind-the-scenes work that makes everything go smoothly and truly made this the best year yet for YUIConf!
And now without further ado, here’s Dav’s YUIConf 2012 keynote: