Bay Area Flex Events: Meet the Flex Team & SV JUG

This Thursday night you can meet the Flex team at the SF Adobe office. Come and hang out with the people who actually write classes like UIComponent (8406 lines), Container (5055 lines), and DataGrid (4884 lines). And you can also meet people who have never written an AS class longer than 100 lines – like me! Get all the details and RSVP:

Also coming up February 7th I am presenting on Sexy Web Apps with Java, Mozilla Tamarin, and Flex in Mountain View.

I hope I will get to see many of you at these events. If you don’t live in the Bay Area then please talk to your local Java User Group (or other SIG) about having me come present on Flex. Sorry we can’t take “Meet the Flex Team” on the road. :)

“Make Me Sexy Flexy!” Demo From JavaPolis

The buzz around Flex at JavaPolis last week was unreal. It’s great to see so many Java developers get excited about the sexy UIs you can so easily build with Flex! I even had numerous people approach me throughout the week and show me some cool Flex app they built in their first day of Flex programming. Java developers everywhere are falling in love with Flex!

All the Flex / JavaPolis blogs not listed on my previous post:

My “Flex and Java” session on Friday was tons of fun. In a few minutes I was able to build “Sexy Flexy”, an application with a Sexy Flex front-end and a simple Hibernate back-end. The application allowed users to take their picture, enter their name, and save them to the database. Then using Flex Data Services these pictures push in real-time out to all of the people using the application. I was hoping that everyone in the audience with a web cam would get on my wireless network and use the application… True audience participation! Unfortunately my wireless router was not cooperating, so it was just Christoph Rooms and I taking pictures. Oh-well. But I have posted the application (slightly modified). Check it out:

Make me Sexy Flexy!

If you are interested in seeing the code, it’s on SourceForge. Special thanks to Ely Greenfield for his DisplayShelf, Carousel, and all the help; Narciso Jaramillo for the DragPanel, Reflector, and SelfLabelingTextInput; Tinic Uro for the PNG Encoder. And thanks to all those who attended my sessions at JavaPolis! It was a fantastic event!

Flex at JavaPolis – “Umm That’s Sexy!”

Christoph Rooms and I have been showing off Flex all week at JavaPolis. Everyone is loving it! Check out the crowd of people watching demos and winning shwag (click the image below to see more pictures from JavaPolis):

Also we have had numerous people blogging about Flex at JavaPolis:

This week at the conference Jon from BEA even built a Flex app with vi and the free Flex SDK! Nice work Jon!

Last night Christoph and I built a little Flex app with Ely Greenfield’s FishEye component, to show all the people who have visited our booth:

If you are at JavaPolis, we are having two more sessions on Friday:

We’d love to meet you and show you some sexy demos! Please stop by the Adobe booth, get a free t-shirt, and be Flex’d!

*** Update ***
Bill from Artima did a podcast with me yesterday about Apollo. You can listen to it here:

*** Update 2 ***
Another blog from JavaPolis about Flex:

Sexy Web Apps, Free Rubik’s Cubes, and iPods at JavaPolis

What more could a nerd want? Next week I will be at JavaPolis talking about Building Sexy Web Apps. Attendees will receive a free Flex Edition Rubik’s Cube! The first person to solve theirs will win an iPod nano! Then on Thursday at 4:10pm, bring your Flex Edition cubes to the Adobe booth for speedcubing madness! Fastest speedcuber gets an iPod nano! If I still have any cubes left on Friday, you will also be able to get them at either of my sessions; Adobe Flex 2.0 & Java : RIA for the Enterprise or Flex 2.0 @ Work in combination with Spring and Hibernate. Better start practicing your speedcubing! These Flex Edition cubes are much harder than regular Rubik’s cubes! See you in Antwerp!

*** Update ***
I didn’t realize it before but I guess we are expecting a ton of people and I’m only going to drag 150 Rubik’s Cubes to Antwerp. So, the first 150 lucky people at the session on Tuesday will get the free Flex Edition cubes. So get there early!

Flex Your Oracle Portal

Last week while many of us were gallivanting around Vegas at MAX, Oracle was holding their OpenWorld conference in San Francicso. Unfortunately I wasn’t able to be in two places at once, so I didn’t attend OpenWorld. But I did have the opportunity of building a Flex demo for one of the Oracle keynotes. I really just took a few of our sample applications and portalized them. You can see the end result on Oracle’s Portlet Testing Site. One cool thing to point out is that the portlets are actually remote portlets being served via Oracle’s JPDK. In case you want to play around with these portlets in your own portal, the provider url is:

Also be sure to read the Oracle Press Release:
Oracle and Adobe Collaborate to Enable Enterprise Rich Client Development

And an article I helped write: Providing Rich Portlets with Adobe Flex

In the past 2 months Flex was used in a keynote at Intel’s developer conference, a Flex application took second place at SAP TechED’s Demo Jam, and most recently Oracle did the keynote Flex demo at OpenWorld! Enterprise software continues to be transformed by Flex!

Flex Paint – Flex Display Object to PNG

UPDATE – I’ve created a new version of Flex Paint which doesn’t require the server roundtrip.

Flex allows you to easily create beautiful UIs. But what if you want to take a piece of the UI and save it as an image? Well, using Tinic’s AS3 PNG Encoder, Remote Object, and Flash’s BitmapData and ByteArray API it’s very easy. To show how this is done, I created a simple application called Flex Paint.

Read more

Debug Flex & Java Together in Flex Builder 2

I recently conducted an eSeminar on building enterprise applications with Flex Builder and Flex Data Services. You can view the recording of that presentation at:

In my session I promised that I would formally document the process for debugging Flex & Java together in Flex Builder. So finally, here is that documentation.

Read more

The JCP And Java Standards

My friend Mike came across an interesting wiki on Struts/JSF by Craig McClanahan himself… Struts – More About JSF

It’s an interesting wiki post… One comment I found interesting is: Every technology goes through a lifecycle of innovation, followed by popularization, followed (often, but quite often in the Java world) by standardization, followed by commoditization.

As always, there are two sides. And since I am the rebelous one, I’ll post the other: Howard Lewis Ship’s View on JSF

One very interesting comment that Howard made was the JSR concept is fundamentally flawed; you don’t innovate by committee

JSF was innovated by a committe. Sure you will say that Struts is the predecesor to JSF, so JSF wasn’t really innovated by a committe. And I say, why can’t the JCP build JSR’s out of existing, proven technologies, instead of taking a bunch of ideas which as a whole have never been proved, and creating JSR’s from those ideas? There are a number of places where great ideas turned to JSR’s, then to implementations, then to standards, then to crap. All because the the ideas were never proven to work in the real world. So then the minds get back together and try something else. Why does the JCP function like this? Why do they continually think that they can think of a better solution than one that has already been proved? Why does the JCP always have to think of a new and better solution instead of just standardizing an existing one?

I think the JCP would function better if Craig’s statement was actually true… That the standardization was made around a proven, popular solution to a problem. I would love it if Struts, Hibernate, Log4j, etc became the standards rather than ideas based on those technologies becoming the standards. Maybe the JCP needs an incubator. A place where ideas can be tried before they become standards. And the ones that actually become popular move out of the incubator into JSR’s. Kinda like Jakarta’s Incubator. Maybe this begs the question; Are JSR’s standards or a way to incubate an idea? If the former, then the JCP needs an incubator. If the later, then the JCP needs a way to move the JSR’s that get popular and survive to a “Standard”. And there should be one “Standard” solution for a given problem set. This would mean that both CMP and JDO cannot be standards. I think this would greatly help Java’s popularity since there are so many “Standards” for a given problem, no one knows which “Standard” to choose. MicroSoft makes this much easier. “Use us and you will always know what the Standard is.” Very simple. I guarantee you that Java would be more popluar if user’s didn’t have to evaluate which persistence, logging, presentation, management, xml, etc, etc framework to use. Am I saying there shouldn’t be options? Not at all. There will always be more than 1 way to solve a problem. But the community should decide (based on simple majority) what the 1 standard solution to a given problem is. And that standard should be the most proven and most popular one. And the JCP should say, “The standards are x, y, and z”. And when technology w becomes more popular and more proven then x, the standard changes.