Archive

Posts Tagged ‘Adobe’

Adobe MAX Europe – Day 4

December 5th, 2008

Much less to say about today. First because it was a full-day lab session, second because the whole thing was just fantastic. The content, the pedagogy, the examples, the trainer, everything was perfect. It allowed me to discover all the features specific to AIR runtime and API’s and we didn’t spend to much time on Flex details. AIR is definitely an interesting technology. The integration with the desktop offers all the features that I need most and I sincerely think about migrating You And The World administration to the desktop since it will remove so many barriers that we have right now like HTML rendering, client-side image cropping and big data synchronization.

Now that the event is over, it’s time for global feedback:

  • The organization was just great: it’s easy to understand why the entrance fee is so high, given the quality of the food, the number of computers for labs, the number of teacher’s assistants and staff people, the Wii’s, etc. One thing though: I really missed drinks in fridges where you don’t have to wait in line for a glass of water.
  • The venue was just awesome, with enough room for everyone, plenty of electric plugs to reload our small iPhone batteries, Wii’s everywhere, couches, toilets (not just one spot where you have to wait in a long line if you don’t choose your time like Metropolis). Two negative aspects though: mere chairs hurt when you got used to theatre seats, and Fiera Congressi Milano is a little bit lost in the middle of nowhere: not a lot of restaurants nearby.
  • The wireless network was good enough most of the time, except inbetween sessions where I managed to get an IP address, but impossible to get any bandwidth. It was good enough for email checking and a few commits on Subversion though.
  • The content covered was great and gave me a sense of cohesion and innovation on the whole Adobe product line-up. And feedback forms for each session were definitely a good idea.
  • The hotel I stayed in was just awesome. I still don’t understand why it’s called a mini-hotel as the service was really great and the room was very cool. I missed some more French-speaking  channels but I had some content on my laptop to compensate. And 8€ for 24 hours of Internet connection is not too expensive.
  • I didn’t see much of Milan but the taxis you can’t stop in the street outside of a taxi station, the plane that doesn’t come and pick you up directly at the terminal, the old-school trams, gave me the impression of a not-so-modern city.

Overall, this first Adobe MAX Europe was really a wonderful experience for me and I’ll really thank my manager for sending me there. Now, one day of roadmap design on You And The World, and next week, on to Devoxx. I just love technology!

Geek Culture, Rich Internet Applications ,

Adobe MAX Europe – Day 3

December 5th, 2008

Today was « learning day ». No « wow », no « aha », just « hmmm » and « slap! » (don’t fall asleep, you idiot!). Originally I had planned a couple of sessions related to LiveCycle Data Services but I’ve been so disappointed by the one of Tuesday that I decided to enjoy myself a little bit. So the first session was about Soundbooth CS4.

I’ve played piano and organ some years back, and I’m an amateur DJ on my spare time, so I tend to love everything related to sound and music. However, I kind of put all of that aside in the past few years so this session was really refreshing for me. And when I said that there were no « aha » moments today, it is not entirely true: you should see the speech transcription engine they added to Soundbooth CS4 and that integrates with many tools in the suite. It’s really amazing. Now I need to see how it works with real-world samples with background sounds and strange French accents. But the demo was definitely interesting. So much so that I couldn’t help thinking how much money could Adobe make if they sold this engine as a standalone service for podcast owners and such. Apart from that, the sound clean-up features are very interesting, especially with the spectral view. I don’t know if it was already there in previous versions of Soundbooth, but it’s really amazing what you can see in there that is just impossible to spot in the infamous waveform view. And if you think that Soundbooth is not useful if you don’t do movie soundtracks or music mixing… well, think twice and give it a try.

The next session was the source of a lot of hesitation. Dave Mc Allister had left a comment on my post before MAX and it really motivated me to know more about the Open Source strategy of Adobe. On the other hand, on the same slot, there was a session about Flex 4 and its new syntax, which obviously I’m very interested in, all the more so as there seems to be a lot of new things, like prefixes instead of namespaces. Eventually, I realized that there would be tons of articles about the new features of Flex 4 closer to the release and then closer to what it will really be. On the opposite, Dave Mc Allister presentation was a panel discussion, something you can’t find on the web by yourself. So I went for « Why Open Source, what makes the cut? ». Now, obviously MAX audience is still mainly composed of designers, because there were very attendees in this session, between 15 and 20 I think. But the discussion was very interesting and it was even easier to ask questions and get proper answers. With Dave were Ryan Stewart, platform evangelist, and Dave Story, who will soon be in charge of all the development tools (Flex, Flex Builder, etc.). The discussion reminded me of the comments of a few friends of mine when Adobe announced that they were going to open source the Flex framework: « Adobe… Open Source… that’s just a marketing move! ». It could have been, but let me tell you that a year and a half later, it’s easy to see that it was much more than that. They actually dive very deeply into the strategic and governance questions related to opening up some of your business. And their example is all the more so interesting as they are engaged in a balancing approach: their objective is not to open source everything they do, but just what makes sense. Hence Open Source proponents inside Adobe have to fight very hard to educate both business and operational people about the added value of Open Source, while reassuring them about the fact that it’s not a silver bullet and that they will not do it with everything. A few people in the audience, including myself, took the opportunity to suggest some improvements to the Flash platform and Dave Story took notes. Maybe one day it will be possible to plug a Webkit module into the Flash player and to render proper HTML inside Flash. Time will tell.

I started the afternoon with a demonstration of the new features of Flex Builder 4. I think Heidi Williams and Tim Buntel were a little disappointed to see such a low enthusiasm in the audience. But from what I heard around leaving the room, a lot of people thought like myself: finally, we get the features that should have been there 2 years ago, nothing more. Data management features are certainly a plus though: you will be able to generate client-side data managers that automatically handle CRUD operations and deal with conflicts, whatever the server-side technology you’re using. It will be interesting to see how useful it can be beyond the simple contact manager application.

My last presentation for the day was one that has been added to the planning at the last minute: Flex and PHP with Zend Builder. This could have been the most interesting presentation of the whole event for me in terms of direct interest for the project I’m working on, since I’m really fed up not to have a proper PHP debugging environment and I want to migrate from AMFPHP to Zend AMF. Unfortunately, the presenter was really a messy guy, and at some point I was just totally lost. His English was not very good and he was very hard to understand. So once I saw that he got debugging working in Zend Builder with Zend AMF, I just left the room.

Overall, it was a very interesting day. Oh and it’s always funny to see where geeks are ready to stick their business cards for a few gadgets :oP

Tomorrow will be a full-day lab about AIR and I hope that the content will be less frustrating than yesterday.

Geek Culture, Rich Internet Applications ,

Adobe MAX Europe: Day 2

December 2nd, 2008

Yesterday was more of a regular feeling of satisfaction and happiness to discover. Today there were more peeks in my humor, from low “boooo” moments to great “aha” times. But overall, I’m starting to see the big picture of where Adobe is heading and it looks really cool. The last thing they miss to become my #1 favourite tech company is a Steve-Jobs-like charismatic presenter… although I gotta say this morning’s keynote was pretty well assembled. But I’m anticipating here. Let’s go back to the beginning of the day.

AIR bootcamp, without boots

…because you don’t need boots to fly over a subject, do you? Some might say that this AIR bootcamp actually missed some AIR as well but… hey! I just did!

OK, I know that when you’re a lab teacher, it is tempting to do everything you can to see this glow of surprise and astonishment in people’s eyes, but come on! Those small Hello World hands-on projects to show off features like the Camera integration or WSDL-based service stub generation! I can’t believe that someone or a company is willing to pay around 2k€ for sending a guy to cover an event such as MAX for that kind of noob content. I mean, I’m motivated by achievement, that’s what makes me get up in the morning and I guess I’m not the only one in Milan right now. So I’m talking to Duane Nichols here: next time, why not a real project that focuses on AIR features and integrates them in a meaningful sample project?

The Keynote

Definitely my favourite moment of the day. It’s hard to describe but Tim Buntel and Ben Forta played it Men-In-Black style to demonstrate some of the upcoming features in CS4, Flash Catalyst, Flex Builder Gumbo and Adobe Alchemy. I can’t remember all of the details but there were definitely a lot of “wow” moments and the feeling of seemless integration that you can get from that is… warming! I can’t wait to see the kind of applications we’ll be able to build with CS4, FC and Gumbo. But wait, I don’t need to wait, because I’ve got trial versions! Woohoo! Okay, FC and Gumbo are still early pre-alpha releases but still, I’m definitely going to play with them.

Low afternoon

After another great lunch (the waiting line is definitely worth it), my afternoon started with 2 rather disappointing labs. The first one was the second part of AIR bootcamp so I won’t go into more details. The second one was about building Collaborative Applications with LiveCycle Data Services. This time, the problem was not about the number of samples, but the fact that we didn’t even created any project. We spent almost 15 minutes copying files from place to place to get the configuration in place, and then we basically filled in the holes. Once again, no achievement whatsoever, and no global understanding of how this all works. But I can’t say I’m surprised: I had the same frustration with the official BlazeDS tutorial, which is why I wrote my “full stack” article. By the way, I think one of the reasons why it’s so hard to start a BlazeDS-based project from scratch is the amount of configuration to write. Maybe a couple of advanced editors in Flex Builder would help…

And last but not least…

The much anticipated and not disappointing at all… Sneak Peeks session. Okay, there were the MAX awards before, but when I saw one of the winner was presented as a Flash Lite application for the iPhone! Flash… iPhone… wait a second! f… t… STACK OVERFLOW, rebooting now!

I won’t go into details into each of the technologies demonstrated, I’ll just list them:

  • Client
    • Application-level multicast, or what you could see as P2P multicasting (sorry, I didn’t find any links about that one)
    • Nitro, a portable widget platform with a seemless integration across devices
    • Durango, a mashup builder for dummies
  • Services
    • Meer Meer, a service to do cross-browser testing with Dreamweaver
    • Integration of LiveCycle DS with CS4 (sorry, no link either)
    • Server-side ActionScript, by far what I was the most interested in (Java, watch out!)
  • Tools
    • Content intelligence toolkit, a very interesting video and sound analysis technology
    • Infinite images (inifinite zoom): at first I thought it was just a port of the Silverlight infinite zoom that created so much buzz last year, but it was much more impressive than that
    • Dreamweaver support for web widgets
    • Next-generation image compositing, impressive stuff, possible future features for Photoshop

Now I’m just exhausted. A good night of sleep and tomorrow is already the last conference day. To be followed…

Geek Culture, Rich Internet Applications ,

Adobe MAX Europe: Day 1

December 2nd, 2008

This first day was mostly as excited as I anticipated it. I discovered a lot of great stuff today and got to meet a couple of top-notch geeks as I like them. Sometimes it gets frustrating to work every day with people who seem to run away as soon as you pronounce a word they don’t know, instead of getting closer to you and say “what is it you just talked about? I want to know more about it!”. That’s part of why I like attending such conferences: in every guy - and in the case of MAX, in every lady - there is a small innocent and curious kid ready to marvel at everything (s)he sees, and willing to share with you everything (s)he knows. And that’s really a stimulating experience.

But let’s get back to the content covered today.

The day started with an excellent keynote. After the usual marketing stuff, we were blessed with a few very interesting demos showing how the Flash Platform as a whole covers what Adobe sees as the three most important evolutions in our industry: cloud computing, social computing and device portability. The two most interesting demos I’ll remember of are HobNox and Cocomo. HobNox is a virtual synthesizer ala Reason but running within Flash Player 10 that can mix audio loops. Very impressive design. Cocomo is even more useful for what I’m working on: it’s an Adobe framework and API that allows you to integrate social features into your Flex applications in no time. They also covered a few of the new features of Flash Player 10, like Pixel Bender and print-quality text, that were pretty impressive.

Next session was about the future of Thermo - now known as Flash Catalyst, so that there are 2 letters to fit in the logo scheme of Adobe products I guess - and Flex Builder. Flash Catalyst is at least as impressive as what I remember of the last Thermo demo I’ve seen. But as a guy I met later cleverly noticed “it’s already hard to find good designers, it’s going to be even harder if we ask them to design user interactions too”. We’ll see, but this tool definitely bridges a gap. As for Flex Builder 4, Heidi Williams demonstrated 10 new features that are really interesting… if you’ve never worked with anything else than Eclipse. I mean « generate getter/setter » and file templates were two of these features. I mean, come oooon! Start by asking yourself why those features were so hard to add to Flex Builder 2 in the first place. Ah, that’s right, Flex Builder is built on top of Eclipse. And given that Flash Catalyst is built on Eclipse as well, I guess they’re in it for good. At some point, I guess I’m just going to forget about the visual designer and get back to my beloved IntelliJ.

After some excellent pasta and cheese I attended a session by Matt Chotin about extending Flex components. It was mostly about the Flex component lifecycle but it was very interesting to put it in perspective with some Flex Gumbo preview. Flex 3 component architecture is called Halo, and its main issue is that it pretty much mixes up presentation and behaviour, even though you can apply some superficial styling with CSS. Flex 4 component model is called Spark, and it changes everything. Now UI components focus on behaviour and all the appearance of components is externalized, similar to what Swing does with Look And Feels, but in an easier-to-apprehend fashion. For example you have a Flex component called FxRange, which can look like a spinner, a scroll bar, a tracker, or anything you can imagine. That in combination with Flash Catalyst is going to ease the development of really neat applications.

Then I intended to go see a talk about Flex testing, but I’m definitely not keen on writing tests so when I received an email notification from our issue tracking system at You And The World, it was kind of a relief. It was a problem with the application getting stuck somewhere in an infinite loop or something that made Firefox hang on indefinitely. I tried to figure out what it was, but I didn’t know where to put my breakpoint and how to debug it. But guess what was the topic of the next session on my planning: « debugging and profiling in Flex Builder 3 ». So I went there, learnt a few performance tips and tricks, and got the opportunity to ask Mike Jones how he would deal with my situation. It turned out that the profiler could help me. Well, it could have, but I found a workaround: I refactored my code to use cleaner constructs based on states instead of includeLayout tinkering, and boom! Problem solved. But still, Mike Jones’ talk was very interesting.

Overall, a very interesting first day. I got to talk with a couple of guys about Coldfusion (which I don’t really know, but you know, asking and sharing…). Tonight, I had a hard time finding a place to eat… and I didn’t find one, so tomorrow I’m gonna have a great breakfast ;o)

That being said, I’m going to watch a few more episodes of Sarah Connor and get to sleep. Tomorrow is another geeky day…

Geek Culture, Rich Internet Applications ,

Adobe MAX Europe, J-1

November 29th, 2008

I guess many people are going to write or have already written blog posts with a similar title. But hey, this is a big event for me. I’m so happy my company offered me this reward, really. I know it can seem hard to understand how one can be so excited about attending technical conferences all day. But discovering and learning new technologies is so central to why I love software development, and Adobe stuff has become so important in my “artistic” evolution lately, that I really can’t wait.

Amongst others, I hope to learn more about Flex 4, Thermo now known as Catalyst, Flash 10 and its possibilities, Adobe AIR, but more importantly I have a few questions for Adobe guys, especially:

  • Open Source is not just about a license and a Subversion repository, it’s also about community and listening to it. And when I see some of the highest voted bugs in JIRA deferred and deferred again, I would love to understand what is their policy regarding community feedback.
  • Portability is obviously a big argument in favor of Flex, but I still wonder why things like mouse wheel are not natively supported on the Mac. Fortunately there is a workaround but it’s still a pain.
  • How about backward compatibility? A year back, I wanted to propose Flex as an implementation technique for the UI of the operational monitoring application at Thalys, but we argued with a colleague about the governance problem: contrary to Sun Microsystems with Java, Adobe has never clearly committed to maintain backward compatibility. Of course, let’s not forget that some people are still migrating their JDK 1.4 to Java 5 because they had variables called “enum”… Joke aside, I was kind of disappointed to see that the application I’m working on right now worked with Flash 9 but has a bug with Flash 10 because of the changes they made with FileReference API. Hopefully, this will be fixed with Flex 4, but in the meantime we’re still struggling.

Over all, it’s the first technical conference I attend outside of Belgium and Javapolis (now Devoxx), and I hope that the organization will at least match the one of the BeJUG.

The 2 weeks to come are going to be legen… wait for it… DAAAAARRYYYYYY!

Geek Culture, Rich Internet Applications , , , ,

The Flex, Spring and BlazeDS full stack on Adobe Developer Connection

July 22nd, 2008

The last part of the reedition of my article series about Flex and Spring has been published on the Adobe Developer Connection. This episode is the last one in this improved series so if you haven’t read it yet on my blog, I think the version I gave to ADC is better.

Episode 1
Episode 2
Episode 3

Enjoy!

Rich Internet Applications , , , , ,

What Does it Take to be a good RIA Platform?

March 15th, 2008

Yesterday, I had a very interesting blog debate with a guy named Martin Beeby. He was arguing that Silverlight would eventually crush Flex because Adobe is building its community on Flash developers, who are in fact designers. Of course I couldn’t help demonstrating to him that he was wrong, because Adobe is obviously not trying to transform Flash designers into Flex developers, and is actually trying to add developers to its already existing designer community. But ultimately he made an interesting statement: according to him, RIA’s require both developers and designers, and both Microsoft and Adobe are trying to convince the ones they don’t already have in their community.

I had never thought of it that way. As a matter of fact, if you have a look at most Flex apps available out there, rare are those who use the default theme provided by the Flex SDK. In fact, Flex apps are so easy to customize using themes and stylesheets, that it’s perfectly understandable. Adobe is even pushing us in that direction with tools like Thermo or Flash Component Kit.

Adobe Thermo

But do we really need that level of customization? In fact, in enterprise applications, this themeing mania can even do more harm than good, unless you use a standard WindowsXP-like theme, because they don’t want fancy stuff, they just want transparent software.

He used another argument in favor of Silverlight, the fact that it’s generating more buzz lately. With showcase applications like Beijing Olympic games website, or the new AOL Mail interface, Silverlight is definitely trying to draw the attention on itself. Is it working? Hard to say.

But all of this debate made me think about what makes a good RIA platform. Here is my list:

  • the runtime has to be as widespread and portable as possible: on that point Flex is clearly ahead with its 95%-ish penetration rate, but the Flash runtime still suffers from a bad reputation in IT departments. On the other hand, Silverlight is still far behind but it has a tremendous advantage: Windows Update.
  • behind the fancy stuff, the code has to be simple, clean and state-of-the-art: that’s one of the main reasons why I love Flex, the ActionScript/MXML combination is just perfect, and it doesn’t even require any framework. I don’t know anything about Silverlight code, so I will probably have a look at some tutorials before commenting on that.
  • it has to be supported by a wide variety of development tools: Flex Builder is great but it’s still quite expensive, especially when you’re not using Eclipse at all and it forces you to run two development environments side-by-side. Fortunately, IntelliJ Idea has added support for Flex 3 and it’s becoming great. The last thing it misses is a visual designer. But given their experience with their Swing designer, I’m certain they are working on something (I hope so!). And all of that is possible thanks to the openness of the platform. On the other side, Silverlight is supported mainly by Visual Studio, and I haven’t heard of any openness effort that would allow other .Net development tools to support it.
  • RIA is all about the presentation layer, so it has to be connected to some backend to be useful, and the more backends it supports the better: Flex is really ahead on that one, since it can be plugged on Coldfusion, J2EE, .Net, PHP, Python, Ruby and virtually any platform via its webservice connectivity. But what makes it really powerful now is the extension of Java support thanks to BlazeDS. And apparently, Silverlight doesn’t have an equivalent communication protocol.
  • it has to be deployable on any platform: Flex just produces plain SWF Flash applications, so it doesn’t require any server-side technology. A plain Apache httpd server is enough. I don’t know what are the requirements of Silverlight on that matter.

Now what do YOU think? Do you see anything to be added to the above list? What are your criteria? Have you already had to make a choice and justify it?

Rich Internet Applications , , ,

The Flex Office Suite is (almost) Complete

February 6th, 2008

Today, I’ve discovered yet another great Flex app that completes my online Flex Office basic suite. It’s called BList and once again, the ease of use of Flex has made ot possible for its creators to be really creative about the way to create spreadsheets. And what I really love is that you are not lost with their new way, since you’re litterally taken by the hand and everything is explained.

So now we have:

What else do we need for it to be really complete:

  • A mail application, like GMail or LaszloMail (that is now GoWebtop) but with a more creative approach of course
  • A good calendar app, something with simple tools to synchronize meetings ala Doodle for example, possibly synchronized with the mail system for invitation
  • And obviously there is a lot of creativity needed in the personal database area

Now imagine if Adobe bought all of the existing startups mentioned above (they have already bought Buzzword) and created the missing tools to build up a great Flex online Office suite, possibly with AIR spin-offs for each application…

What do you think? Do you know of any other Flex app out there that could be integrated in this online Office suite? Would you be interested in such an integrated toolset? Would you or your company be ready to pay a subscription for it?

[edit]
Mike Potter just pointed me to another incredible example of creativity allowed by simple technology. It’s a personal organization tool with a calendar, todo-lists and notepads like I’ve never seen before. I’ve added it to the list above. It misses some meeting synchronization features but it’s really excellent.
[/edit]

Rich Internet Applications , , , , , , , ,

A first step towards official Flex Maven support

February 1st, 2008

One of the things I will miss the most in the coming Flex release is official Maven2 support. There are a few contributed alternatives out there, like Israfil and ServeBox, but I’ve tried both of them and had blocking issues. Don’t ask me which ones, I haven’t tried in a long time.

That’s why I filed a bug in Adobe’s issue tracking system and I try to encourage people to vote for it (or double-file it now that it has been deferred and you can’t vote anymore).

I know that the jury is still out to determine whether Maven2 is good or not, but as far as I’m concerned, I’ve “crossed the road” and after more than 2 years dealing with Maven idiosynchrasies, I feel comfortable enough to use it on all my personal projects and advocate it on professional projects as well. Now I’m convinced that official and up-to-date support from Adobe on a Maven2 plugin that would offer all the possibilities of the command-line and make it easier to configure the mxmlc compiler is a must to really integrate Flex 3 in serious projects with unit tests, continuous integration, and so on.

Well, I found out today that there is now a Java API for the Flex compiler, something that could make it even easier to develop a Maven Mojo around it. Let’s hope that it’s coming soon.

Rich Internet Applications ,

Penetration in the AIR

January 30th, 2008

In my humble opinion, Adobe has done a great job in encouraging developers to consider AIR as a desktop application development platform. Applications are sexy, you can leverage your HTML/Ajax/CSS skills, and now with Flex Builder 3 and AIR Introspector in the pipeline, we have everything we need… well, ALMOST everything we need.

But of course, having everything that we need to build AIR applications is not enough, because we’re not the only people involved. We have other actors to convince, mainly our bosses and our users. Our bosses because when you’re building a product for a company, adding new technologies like Flex, ActionScript and AIR, has consequences in terms of maintainability, in terms of the number of resources you can find on the job market, in terms of the budget that has to be assigned to training. For that of course, the reference argument is very efficient, and Adobe has done a great job on that too. When you can tell your boss that NASDAQ, eBay, Google and many other big companies they’re admiring are using such technologies, it helps a lot in convincing them.

But I think that there is one target that is still to be addressed: users. Of course, when the application you’re building is targetted at corporate users within the company, once your manager is convinced, it’s almost done. It’s just a matter of adding the AIR runtime to the next company-wide software update. But what if your users are normal people who don’t care about installing a runtime, who are even afraid of installing new stuff when it’s not smileys or search bar addons?  When you build a product for those people, natural penetration rate is vital. And from the last figures we got, “only” half-a-million people have already installed the beta AIR runtime. And something needs to be done to encourage people to install the final version, to improve this penetration rate.

I asked the question to James Ward and Serge Jespers, and their answer was basically “it’s free, we’re talking with Sony and for the rest, if you want it in Windows or MacOSX, mail Bill or Steve and ask them”. And that’s an annoying answer. Because I can’t believe that those companies don’t talk to each other, especially Apple and Adobe. But it looks like when they do, they’re ashamed of it, because they are competitors. It’s like partnerships and synergies are a shame.

Well, let’s hope that all those shiny applications will encourage people to get the runtime and it can be even more interesting to develop new shiny applications, and so goes the virtuous circle.

What do you think? What could be done to spread the AIR runtime?

PS: If you’re like me and you really want to have EVERYTHING to build Flex and AIR applications, you can’t vote for the JIRA issue because it’s been deferred. But James told us that you can file a new issue referencing this one and they will add a vote to it. And who knows? Maybe they will get it done before Flex 4 ;o)

Geek Culture, Rich Internet Applications , , , , , ,