The thoughts and musings of a strange breed of techy and artist.

Saturday, November 22, 2008

Adobe MAX 2008 - The Big Picture

I'm back from Adobe MAX 2008 - the U.S. version, which was held in San Francisco at the Moscone Center and the Marriot hotel. This was my first trip to MAX and I have to say that it was the best conference I have ever attended. Not that there isn't room for improvement related to some of the session offerings and organization in general, but I would definitely recommend it to anyone in the industry. It's worth the cost without a doubt.

I have a ton of thoughts to share, but I thought I would start with a general overview in part to keep my memory of everything fresh. I had planned to write something about the sessions day-by-day, but they kept me far busier than I expected and I was just too darned exhausted in between to do so. So, here is my schedule and a short take on each of the sessions I attended. I have denoted which of the workshops were "sessions" and which were "labs". The sessions were basically lectures and demonstrations on certain software or topics and the labs were constructed like hands-on training. For anyone planning to attend next year, I highly recommend signing up for the labs as quickly as possible. They fill up fast. I created my schedule a couple of months in advance but was still only able to get two of the labs that I wanted.

Day 1 - Monday, November 17, 2008

9:30 am - 11:00 am MAX Opening General Session
This was 5,000+ people in a very large auditorium with a theatrical presentation of some of Adobe's newest softwares and how they are being used out there. The biggest surprise for me was when the first lady of California, Maria Shriver, came out to speak about a project she is sponsoring called California Legacy Trails that was developed using Adobe Flash. This was just a first taste of the extravagance that we could expect. To help you visualize:



11:30 am - 12:30 pm (session) Lazy Innovation: Strategies for the Design of Innovative User Experiences
The content of this session was a great discussion of the "ideal world" where we take a deeper look at user behaviors in order to provide streamlined and innovative user interfaces that are as efficient as possible and more aligned with the user's natural workflow. There was a bit too much time spent on the set-up and not enough time on the point, but I chalked that up to lack of practice, being that this was the first session of the event. Still, it was good enough to generate a lot of thoughts and inspirations for me which I hope to expand upon very soon.

2:00 pm - 3:00 pm (session) Prototyping Adobe AIR Applications with Fireworks
This session went through the process of prototyping Flex/AIR application interfaces in Fireworks. It was a good session in general and very informative, but I was a bit disappointed. I would guess that the shortcomings Fireworks has in this respect are due to the eminent release of Thermo. The gist is that Fireworks can only create rapid prototypes that do NOT provide reusable code. This would serve some purposes and I can imagine it would be great for pure designers who do not have the skills to create reusable code. My personal approach, however, is to create high-fidelity prototypes with a goal of at least 80% reusable code. In my opinion, this can increase both the consistency of the experience, efficiency of development, and overall end-product quality.

3:30 pm - 4:30 pm (session) Introduction to Thermo
Thermo (now named Adobe Flash Catalyst) appears to be a designer's dream. It (theoretically) allows us to visually create Flex code through a WYSIWYG editor that is reusable for the development team as in import to Flex Builder. I say "theoretically" only because I am a bit skeptical about the tool's ability to create code that is clean enough for the level of re-use that I think is necessary for a quality end product. I spoke directly to some members of the Adobe team about this and they have insured me that it is intended to do so, but I'll reserve my true judgment until I have a chance to see it in action. They also shared that Adobe Flash Catalyst (Fc) is scheduled to release in about a year, with a public beta scheduled in Q1 of 2009. We were given a "preview" CD containing a pre-alpha version of the software (along with Flex Builder 4 "Gumbo"), but it is unfortunately a Mac install and since "I'm a PC", I will have to wait for the beta.

5:00 pm - 6:00 pm (session) Filthy Rich Flex: Graphics and Animation
This session demonstrated several ways to create animations or transitions trigged by user interaction in Flex. In general, I was a bit disappointed that the speaker didn't talk more about why these transitions were important to usability. While the demonstrations and code review were probably useful for Flex beginners, I didn't find much enlightenment in this presentation. I was really hoping to learn new ways to stretch the visual and interactive boundaries of the standard Flex components.

6:30 pm - 8:30 pm Welcome Reception
The Welcome Reception at the end of day one was basically a free meal, drinks (beer and wine) and an opportunity to network with other MAX attendees. I found the large tables of strangers a bit intimidating. I did run into some colleagues from a previous project there that morning and spent the evening sitting with them and also talked to one other person who happened to be sitting at the same table. Otherwise, whenever put in this situation (every meal offered), there was little conversation beyond small talk at my tables. I think it might be more successful if the Adobe employees were given the task of taking on a table or a few tables each to engage us in conversation and get us talking about the conference topics and helping to break the ice.

8:30 pm - 10:30 pm Meet the Team
The Welcome Reception could be a great precursor to these sessions where we were given open rooms in which to have conversations with the various Adobe product teams. I spent the first hour in a room with the Flex and Catalyst teams and the second hour with the Adobe Product Evangelists. In the first hour, I engaged some of the Flash Catalyst team members in asking about the code that would be generated by Catalyst and how much control we, as designers, would continue to have over the layout using this tool. They insured me (as I mentioned above) that it is the intent of the team to have the tool continue to provide the greatest degree of layout control possible and that the code should be entirely reusable by development teams. They also welcomed me to provide feedback after using the preview.

My second hour with the Evangelist team felt a bit strange. I recognized several faces in the group of around 10 evangelists - most notably Ben Forta. There were also a lot of Adobe User Group facilitators and Adobe Community Experts from around the country. It felt like everyone in the room knew each other with exception of myself and a couple of others. I asked about the goals of the team and how they work to spread knowledge and "buzz" about the products across the country. The answers were a little vague, but in general, they work to spread acceptance of the software through the developers via user groups and smaller developer conferences. I like the approach, but I'm skeptical about its effectiveness. Of course we, as the developers, can recommend the Adobe technologies to our clients, but often the business in these areas is driven by them hearing the "buzz". They don't often even understand what they're asking for beyond knowing that it's the next best thing in the technology world.


Day 2 - Tuesday, November 18, 2008

9:00 am - 10:00 am (session) Best Practices for Developing with Flex in a Team
This was one of the sessions I appreciated most at the event. It was really more about general project management principles than specifically about Flex, but I found so many useful nuggets in the presentation that I sought out the speaker at the customer appreciation event to discuss some of it with him. My most recent client project has been so chaotic with requirements growing so uncontrollably that by the end, they had increased by around 70%, stretching the timeline by the same. By the end of this session I was wishing that my clients, project managers and all of the team leads I work with could attend. I will try to expand upon some of the advice this speaker had in a later post.

10:30 am - 11:00 pm General Session
This general session was very cool. It was even more theatrical than the first - following a "secret agent" theme. The keynote address was lead by Tim Buntel, Adobe's ColdFusion Marketing Manager, as "Agent B" and Ben Forta, Adobe Product Evangelist, as "Agent F". They proceeded to show the best aspects of software provided for Design, Development and Deployment tracks. I was so amazed with all of the new features and the overall integration of the products that I wanted to run right out and buy CS4 right away.



1:30 pm - 2:30 pm (session) Designing and Building Web Experiences in Flash CS4 Professional
WOW!!! Ok, so I originally didn't sign up for this one, but changed to it rather last minute and I'm really glad that I did. Flash CS4 is amazing - particularly the new 3D animation engine. I was left at the end of this demonstration just dying for a really creative project so that I could engage some of these new tools. In particular, it's going to be great for browser-based games. Also, they have completely changed the way motion tweens work which will make them infinitely easier to create and modify. You can even save the animations applied to objects as a template for use on other symbols.

3:00 pm - 4:00 pm (session) Flex Project Workflows
This session was something of a case study provided by one project team. Most of the discussion was around designer/developer workflow and communication. It was interesting to hear about another team's experiences, but I didn't personally gain much in the way of new knowledge out of it. One aspect of interest was that this team's approach was to first develop a completely working prototype without any visual design applied and then send it to the design team to apply styling. As I would have expected, this caused a lot of rework due to the design team's need to request changes to implement the visual design. I feel fairly strongly that the design team should create the interface prototype first, then provide that to the development team to create the back-end code necessary to support it. I will definitely be expanding upon these views as it's something that I'm very passionate about. :)

4:30 pm - 5:30 pm (session) Next-Generation Flex Skinning
This session provided demonstrations on programmatic skinning of Flex components. I'm afraid that I found it a little disappointing. The demonstrations didn't go very deep into the new tools or how they could be used in more innovative ways or even how this was "better" than applying skins via external image libraries and style sheets.

6:00 pm - 7:30 pm Sneak Peeks
This general session was something of a preview of the new features and products that Adobe's research and development teams are working on. Many of these were absolutely incredible. The most popular of the new tools was one that reads the textual content out of video. This is huge because it will allow us to perform keyword searches against video content. It will also give us a way to provide content in both text and video format without rewriting the entire piece. I'm sure there are many other useful applications for it as well.



7:30 pm - 10:30 pm Customer Appreciation Event
The Customer Appreciation Event really took the cake for extravagance. I had been warned by other attendees that had been to MAX before that it shouldn't be missed. They bussed all of us about 20 minutes away from the Moscone Center to the the California Academy of Sciences and the De Young Museum. Once there, we had free run of both museums plus food and drink offerings including selections of sushi, burgers, spare ribs and various appetizer offerings. On site, there were bands, quartets, cultural musicians (the African drum musicians were amazing), a dance club, contortionists and several other entertainment options in addition to the museum displays. My first stop with the planetarium show. I have never seen one before and I have to say that I was seriously missing out!

I am just amazed at the expense that Adobe and the sponsors must have put towards this event - the number of buses, renting out two museums, the food, drink and entertainment - it's just mind boggling. Here are a few (poor quality) photos of the event:



Day 3 - Wednesday, November 19, 2008

9:00 am - 12:30 pm (lab) Getting Started with Real-Time Flex and AIR via LiveCycle Data Services
This was a "mega-lab" facilitated by Ben Forta. We went through some fairly complex code examples using Adobe's LiveCycle Data Services along with Flex. I'm not sure where the AIR part came in as we really didn't dive too much into that aspect, but the hands-on demo using LCDS was definitely useful. During the lab, however, I did some quick searching and am not finding a lot of shared hosting providers that provide these services. I asked Ben Forta about it at the end of the lab and he said that there were some licensing issues with using the LCDS directly on shared hosting, but that there was no reason these hosts couldn't provide BlazeDS. Connecting to data via LCDS was so extremely easy that I will definitely have to do further research.

12:30 pm - 4:00 pm Lunch and Napping
Ok, so I have to admit that I was so exhausted after lunch that I opted to skip the session I was to have during this time and went back to the hotel for a nap. I was glad that I did though so that my brain was fresh and awake for my next lab. I was supposed to have a session called "Experiences that Scale Across Devices" which I didn't feel too bad about missing because they had done several demonstrations during the general session and other sessions on this topic.

4:00 pm - 5:30 pm (lab) ColdFusion Powered Flex
While this lab was a bit on the "beginner" side for me, the instructor was the best one that I encountered at all of my sessions and labs. He didn't just lead us through the code examples - he also explained the "why" of everything that we were doing. I managed to learn quite a lot from this lab in spite of it being targeted towards beginners. There were several things I've done in ColdFusion and Flex in the past without knowing why I was doing them or how exactly they worked. It was great to gain a better understanding of these tools. Using ColdFusion along with Flex through the wizards provided in Flex Builder was beyond easy. I just hope that I can find a project on which to apply this combination.

No comments: