Skip to content
December 19, 2011 / Daniel Freeman

Free AIR book + MadComponents Facebook page

Some of you will know that I’ve have the urge to write an Adobe AIR for mobile book, and I’ve been trying to get a publisher interested.  I’ve had no success with that, and most publishers are feeling pretty skittish in regards to Adobe topics nowadays.  But, it’s likely that I’m going to go ahead anyway and write the book.  There is currently no AIR book that addresses the subject in the way I have in mind, and self-publication, is in itself, an interesting frontier for me.  Electronic standards such as ePub and Mobi have empowered technologically-savvy authors to take matters into their own hands like never before.

Let’s look at the maths.  If I was to go through a publisher, and sell my book for $50.  I would likely receive $7.  If I publish a $10 iBook version for iPad myself, I would still receive $7.  And everyone who purchases my book saves $40.

Of course, I’d need to factor-in paid marketing costs, because I’d have to do that myself too.  But my target market is pretty well defined, so I’m asking myself – are technical book publishers obsolete?

Obsolete or not, they’re certainly not worth the effort.  I’ve gone to so much trouble chasing around after publishers, to no avail.  And writing so many detailed book proposal documents. (Every publisher has their own unique format for these).  My energy would have been much better spent, just getting on with it, and writing the book!

It will be a little while before I have anything to show you all – ( depending on my freelance obligations ) – so stay tuned, and keep following this blog.

Joseph Labracque has faired somewhat better with the orthodox publishing process than I have.  He’s struck a deal to give his book away absolutely free. “What’s new in Adobe AIR 3” is available from O’Reilly’s website.  ( I noticed there are other free books there too ).

I’ve got my copy.  It’s pretty concise and lightweight.  But a handy bare-bones description of everything new in AIR.  A great free asset for AIR developers – download your copy NOW.

MadComponents Facebook Page

I’ve created a Facebook page for MadComponents.  With so many developers using it now, I don’t always have the time to respond promptly to questions on this blog.  But everyone can contribute equally to the facebook forum, and help others in the community.  Or discuss anything MadComponents and/or AIR related.

Click to join this group, and I’ll add you ASAP.

MadComponents performance tweaks

There are a couple of performance tweaks in the latest version.  Previously all UI views were initialised on application launch.  Now, there’s a lazyRender attribute for pages, tabPages, navigation, and navigationPages, so that pages are rendered lazily.  When you first switch to that page.

I know that some developers may think this feature is overdue.  But for most applications, it’s not such a big deal.  If you’ve tried MadComponents, you’ll notice that a mobile app starts up much faster, and takes much less memory than a Flex mobile app, even though Flex employs lazy page rendering.

But now you can tweak the performance of MadComponents even further, and write something like:-

<tabPages lazyRender="true">
   {FIRST_PAGE}
   <vertical id="page2">
  ..etc...etc...

Pages within the tabView will be loaded and rendered as they’re viewed.  Not on application launch.  But this means that you can’t do UI.findViewById(), on views that haven’t yet loaded.  So there’s an event you can listen for that tells you when a particular page has loaded.

var page2:UIForm = UIForm(UI.findViewById("page2"));
var page2Container:UIForm = UIForm(page2.parent);
page2Container.addEventListener(UIForm.LOADED, page2LoadHandler);

Another performance tweak is cached ImageLoaders.

<imageLoader cache="true" url="....

Now, once the image has been loaded once, subsequent loads of the same image will load from the local cache.

There are static methods to clear the cache under program control:-

UIImageLoader.clearCache(url); //clears a specific url cache
UIImageLoader.clearCache();  //clears entire cache
Advertisements

5 Comments

Leave a Comment
  1. Jeremy / Dec 19 2011 3:13 pm

    I had actually already read the changelogs about the lazy rendering, and I think it’s awesome you added this! It is true that compared to flex an application, even if large, loads a lot faster, but I did notice a difference between my loading time when I had but a few components and when it got larger.

    Thanks for making an awesome framework even better!

    Also, good luck with your book!

  2. Jeff / Dec 19 2011 3:22 pm

    Thanks for the lazy rendering – another excellent capability.

    I think you’re confusing the writing of the book with how to get money from it. Obviously both are important but I don’t think the modality of writing a “book” really works any longer. I doubt it will provide an ongoing revenue stream either – probably something of more interest than selling a fixed book for a few years.

    Here are some other off-the-top-of-my-head ideas…

    – Figure out a sponsor mechanism for the written material. The moment you can provide the information for free, the exposure of your writing will have a much, much larger audience. There are a variety of interesting, fresh, and new ways to gain sponsorship without drab old banner ads along the sides of a website.

    – Provide part of each chapter for free along with the bulk of the chapter at a cost. Allow a single chapter to be downloaded for $0.99. Have a $9.99 subscription for the year – just make sure you produce more than a dozen chapters a year. Your blog is a great funnel to get more subscriptions.

    – Umm, perhaps this isn’t obvious…but why not create a mobile app that provides the information that mobile app developers will want? I’m frustrated that there aren’t good app tools to help WHILE writing AIR. Fix some of that and add more info around the API docs – give me lots of snippets – the stuff not in the API documentation. Charge $2.99 for each app or have various in app purchasing to add more content. I can guarantee that there are a thousand AIR developers would love the inside info about making a real app and adding things like in app purchasing, licensing, modularity, etc. What a perfect way to show it for real. Instead of having a must-have book about writing mobile AIR apps, have the must-have multi-platform app to assist developers. Mixing sponsorship with that could allow a less expensive app for developers too.

    That’s just three. Kick around ideas with a few people and there’ll be 5 more.

    My advice – don’t write a “book”. That’s so 2005…

  3. Pascal / Dec 19 2011 6:19 pm

    Thanks for these great components, Daniel!
    I’m considerign to use them for my new project, instead of flex mobile. But i’m afraid drag and drop of list tems is not allowed with Mad Components. Any way to do it?

    • Daniel Freeman / Dec 20 2011 5:23 am

      I need to provide a way to lock and unlock a scrolling container in the next update.

  4. Jonathan Kaye / Dec 22 2011 2:10 pm

    I think the self-publishing is the way to go, for several reasons you mentioned. You never will recoup enough money for what it takes to produce it, with a publisher or not, but at least you can set up a means to get recurring revenue for awhile and increase your reputation.

    With Joseph Labrecque’s Android book, Packt publishing did a “Read as the author writes” (RAW) form which I really enjoyed, getting chapters as they were approved through the writing process. This got the info out to the interested audience and also helped build interest in the final product.

    That having been said, I think the book world idea of final product is not the ideal package for this type of work. It’s great to have a specific deadline and deliverable, but things change, author ideas expand, and so having a format that can be updated periodically, say a few times a year, makes a more valuable purchase, and a much better customer experience (and a good way to keep customers engaged, hopefully to buy more stuff down the road as you come up with more).

    The problem I saw with Joseph’s process was that his deadlines were so tight there was no real way for us early customers to inject ideas that could enhance the final product, or even ancillary material down the road. I suggested the publisher should set up a forum for RAW readers of the book so that by the time the book is finally published, there would be a nice resource for helping to work through the material, and continuity for future work he (and those influenced by him) produce.

    I like you having the Facebook page for comments, but it would be nicer to have a forum with threaded discussions, rather than essentially a single block of comments (did I miss something there? Is there more than the wall?). Of course it’s always easier for someone to tell someone else how to spend their time and money!

    Keep up the great work, I have been using your components in a new mobile project. It’s pretty simple, but I think it’s going to have a big audience. I created a prototype with FB 4.5, but my pure Flash version with your components is less than 1/3rd the size and I am no longer losing sleep about all the Flex architecture stuff crawling around under the hood which resulted in strange behavior.

    -jonathan
    BTW, I think the lazy view evaluation is excellent.

To discuss MadComponents/MC3D, join the Facebook group!

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: