Updated: PlexiGlass (OpenFlux 3D) Example

April 4, 2008 – 8:20 pm

Since my previous entry I’ve made some major speed improvements, added back in the 52 cards and added 2 new 3d layouts similar to the ones in Pavan Podila’s Element Flow.

We’ve still got some work ahead of us before this goes public but I definitely can’t wait to see OpenFlux get used and see what new 3D layouts others contribute.

As we get closer to release I’ll be posting more examples and howtos on getting started with OpenFlux.

Click the image below to try out the example.

PlexiGlass (OpenFlux 3D) Example

March 31, 2008 – 9:52 am

I’ve ported over Doug McCune’s CoverFlow component as 3D layouts in OpenFlux. You can switch between horizontal, vertical and carousel layout in the same List component along with a few other adjustable properties. It’s highly likely there are a few bugs and I had to limit it to 20 cards (52 cards was crazy slow) but this should give you a great idea of where OpenFlux is going.

A regular OpenFlux layout class manages the the x/y positions of the item renderers. PlexiGlass layout classes goes a step further and manage z position, x/y rotations and the camera.

We’ve still got some cleaning up to do but the code for this example will be included once PlexiGlass goes public. Click the image below to try out the example.

OpenFlux Example: Deck of Cards

March 12, 2008 – 10:24 am

By now I’m sure a lot of you have heard about Ben Stucki’s latest project called OpenFlux. If not, check out the blog entry Ben wrote introducing it or listen to the latest The Flex Show episode discussing it.

I’m really excited for OpenFlux, have been contributing to the project quite a bit and I’m hoping to spend a lot more of time over the next while helping get OpenFlux to a stable release and posting examples on my blog so others understand what’s possible.

The general difference between an OpenFlux component and the current Flex components is that the logic is separated in to a MVC architecture. This allows you to easily swap out one part of a component while keeping the functionality of the others. A List component goes a step further and separates the layout logic so you can easily invent new ways to layout your list items.

In this example I’ve created a cool (but possibly not too practical) OpenFlux List component that displays a deck of cards. Although it looks nothing like a standard List component, it is a List and has the same functionality that you would expect a List to have. For example, the cards are selectable and as you select multiple cards their suit/rank is displayed in a separate standard List.

To get the List working how I wanted all I had to do was use the Image component as my item renderer and create a custom layout class (which is now included with OpenFlux, called StackLayout). The StackLayout has gap and selectMode properties that you can play around with. Click the image below to try the working example.

picture-1.png

You can checkout the latest OpenFlux source code, including code for the example, at the OpenFlux SVN webpage.

My Experience at 360|Flex Atlanta

March 2, 2008 – 9:41 pm

atl_bling_100.pngThis is my second time attending 360|Flex and my first time speaking at it. Overall I had an amazing time and can’t wait for the next one. I showed up by myself, knowing hardly anyone and left with a ton of new friends (beer helped with that).

The conference is full of brilliant approachable people who are eager to swap knowledge. As an independent developer who works from home, I really enjoyed meeting others face-to-face. Talking to fellow developers about Flex is a lot more rewarding compared to forcing my fiancee to listen to my “cool” programming breakthroughs.

Back at home before the conference, many people asked if I was nervous about speaking. I responded with no (only half lying to them) and that I was more excited than anything. When I previously went to the Seattle conference I got to experience the community vibe and felt that everyone is just appreciative of the knowledge you have to share. Also, as Doug McCune has said, it’s ok to say you don’t know the answer to something because there is usually someone in the crowd who will gladly answer for you.

Also, I owe my left nut to the guy who let me borrow his Mini-DVI to VGA Adapter. Thanks so much dude! It would have been a fairly pointless session without it.

One of my favorite sessions was building your personal brand that Doug McCune and Juan Sanchez bravely took on in place of Jesse Warden. Although I give huge props to the two of them for being able to whip up a lot of useful tips (in only 20 minutes!), I really enjoyed the input from the crowd. I think this is where 360|Flex shines. Whether or not you are a speaker, everyone brings something to the table and everyone’s opinion helps take the discussion further than it would without them.

As the Atlanta conference was ending, I was already getting excited hearing about when/where the next conference will happen. I really hope Tom and John were able to step away from their lovely blue registration table for at least a few moments to see how well their conference turned out.

To all of the great people I met at 360|Flex Atlanta, please keep in touch and I hope we’ll be meeting up again at a future conference.

Example Code for my 360Flex Session - Accessing Secure APIs within Flex

March 2, 2008 – 3:55 pm

For those who weren’t at my session, I’m providing a link to an example application for integrating the PayPal API into Flex. This includes Express Checkout and Direct Payment.

Download the Example Application

The majority of my presentation was me talking, but since no video is available I’m hoping the provided code is self-explanatory. I am also providing a link to my slides.

View/Download the Slides

Basically, the provided code contains a Flex application and PHP code to proxy PayPal API requests/responses. I tried to keep the amount of code to a minimum so that it’s easier to read and understand how it all works.

I ment to get this up sooner but a cold has kept me away from the computer. Enjoy :)

2295229458_4a6b8bf176.jpg
Photo by John Mason

Understand Flex and PayPal API Integration at 360Flex

February 20, 2008 – 8:33 am

Need to get your Flex app talking to PayPal and have no idea how to do it? You’re not alone! I spent days losing hair (and sleep) figuring out how to get Flex and PayPal to play nice with each other. I don’t want anyone else to have to go through that madness.

I’ve received plenty of e-mails asking for advice and code examples on this topic. In response, I will be releasing a modified copy of the FlexStore sample app with a completed order screen using PayPal. At my presentation I will be giving a detailed step-by-step talk on how I got this working. Also, although I’m using PayPal in this example, the knowledge gained could be applied to using any secure payment API.

If you haven’t registered for 360Flex yet, be sure to do so quickly (really quickly actually, I’ve heard there’s only a few seats left). This will be my second time attending the conference and I can’t wait to get there! Also, don’t forgot to enter the API Contest for a chance to win some really great prizes.

See ya there and don’t forget to say hello :)

Who Cares About Indexing a SWF File? Not Me!

January 21, 2008 – 9:33 am

I just read a blog entry titled “Google’s Indexing Flash Text with Adobe’s SDK” over at O’Reilly’s new fancy smancy InsideRIA website.

This isn’t really too interesting to me since it’s just for indexing static text. For me that means it would index my labels but not my real content from the database. Plus I keep my static text in separate language files so it wouldn’t even be indexing the correct SWF anyways.

I don’t think there will ever be a time where a crawler could actually run my flex app, screen scrap the dynamically loaded text, look for buttons to click and match up the deep linking url with the content. Honestly though, I don’t care. I have an html version of the content for browsers without flash, it’s optimized for search engines and since I didn’t have to think too hard about usability it took me only a half hour to build it.

Plus, most Flex apps that I have seen you wouldn’t even want to crawl (usually because the content is private). It’s not like a crawler sees AJAX content either.

If this “issue” was solved, the people who have been bitching about it wouldn’t even start developing with flash anyways. They will just find a new excuse, it’s time to leave them behind.

Anyways.. Happy Monday.

Adobe Flex and Google AdSense

December 11, 2007 – 9:39 am

I’ve recently launched a Flex-based classified ads product allowing anyone to start a classified ads service. Almost the very first question I was asked was how to place a Google AdSense banner in to their app. I really didn’t want to tell them that wasn’t possible because I choose to use Flex. Instead I set out to find a solution. It turns out not only was it possible but it was a lot less complicated than I imagined.

For those who don’t like reading, a quick summary of what I did is:

1. Create a search engine friendly HTML version of my content (home page, category/search results, ad full details)
2. Add a param that will toggle displaying the Google AdSense banner at the top of that content
3. Use the IFrame component to load the banner in an iframe
4. Reload the iframe as the user views different content
5. Have a beer!

You can see an example of this in use at www.shopcarro.com. Read the rest of this entry »

Classified Ads Done Adobe Flex Style!

October 26, 2007 – 3:52 pm

I haven’t been posting much in my blog lately since I’ve been working on a personal project day and night. I’ve built a classified ads system using Adobe Flex and although I still have a ways to go, I launched version 1.0 today on PetsBC.com.

Please check it out and let me know what you think. (Good, bad, ugly). There are still a million more features I am planning to implement but I think I’m off to a good start. Also, this is my first large project using Adobe Flex so I am definitely interested in getting some tips from the Flex experts.

Bringing the desktop experience to the web

August 2, 2007 – 10:12 pm

Thanks to this TechCrunch blog entry I stumbled upon a new web service called Anywhere.FM. It was built using Adobe Flex and allows you to upload your entire music collection, listen to it from anywhere and share it with friends. It’s definitely a simple yet well thought out application with a similar appearance to iTunes.

Lately a lot of focus in the blog community has switched to Adobe AIR and bringing normally web based applications to the desktop. Although Adobe AIR is a great technology and will play a large part in RIAs future, I think Adobe Flex still deserves a lot of credit for helping bring the desktop experience to the web.

When using HTML to develop web applications I often got frustrated with the hoops I repeatedly had to jump through to make the web page look and feel like an application. Instead Adobe Flex’s customized components and object-orientated nature is helping developers around the world build web applications quicker and easier than ever.

Now if only the Anywhere.FM developers can package up their service as an Adobe AIR app! *hint hint*