I'm excited to see my first ever video training DVD for Adobe Press/Peachpit now available. Together with Joseph Labrecque we recorded around 7.5 hours of training on building mobile applications with Flash CS5.5 and Flash Builder 4.5 for Android and iOS devices. Special thanks to the great team at video2brain in Graz, Austria for their hard work and making the whole recording experience so much fun.



I realize I haven't been blogging a lot about what I've been up to in the last few months so thought I'd better get a post out and share some of those things with you.

Cocoon P2P

The open source Cocoon P2P library has been released and got Dirk Eismann on board as a contributor after speaking at FFK11 in April. With his help we were able to take it from more of a proof of concept to a solid solution for doing local IP multicast with the Flash Player (no server required).

We have great support for device discovery, messaging and object-replication. Reworking the video streaming and fixing some bugs on the accelerometer support is still on my todo list for the very near future.

HTML5 Solutions

I've had the pleasure to work on a book called "HTML5 Solutions: Essential Techniques for HTML5 Developers" with fellow authors Marco Casario, Charles Brown, Nathalie Wormser and Cyril Hanquez.

My contribution to the book is on using the Geolocation API - which, if you haven't already tried it - is one of the most exciting features that is starting to become widely available with HTML5.

It turned out - in my humble opinion - to be a very good publication and should be shipping soon. I can't wait to get hold of my author copies and hear reader feedback when it hits the stores.

Mobile Development with Flash video training

Together with Joseph Labrecque I've recorded a video training title for Peachpit called "Mobile Development with Adobe Flash Professional CS5.5 and Flash Builder 4.5: Learn by Video" that is now available for pre-order.

We cover developing for Google Android and Apple iOS with Adobe AIR, ActionScript and the Flex framework from the very start of setting up your application, to using various APIs, debugging and finally submitting it to the marketplace and app store.

I had a great time recording this title in Graz, Austria with the nice folks at video2brain.

Mobile application development

I've been playing around with different mobile platforms - releasing a couple of applications for Window Phone 7, Google Android and Apple iOS as well as the BlackBerry PlayBook.

VAT validator on WP7 and Android

A while back I was giving the opportunity to do some development on Windows Phone 7 and have to admit it was a very nice experience and a solid development platform. Most of all the app submission and approval process was incredible, consistently taking only 2 days and getting detailed feedback on any problems they find - the best I've seen on any curated marketplace so far.

I decided to port the VAT validator app I had built some years back for iPhone in Objective-C in C#/Silverlight and did the same on Android through the Adobe AIR runtime. Also took the opportunity to test ad integration on mobile and made paid and free ad-supported versions to compare how well they do. I hope to share some statistics soon on how that goes and what model is most suitable for developers that do utility apps.

Sanskrit Clock iPad app

I thought it was high time to explore native development on Apple iOS again and see what the app store experience is like since I last tried it in 2008. Approval time has certainly improved and in less than a week after submitted, my Sanskrit Clock iPad app made it on the store.

Not sure how many people are interested in an app like this (aside from the handful of geeky Sanskrit enthusiasts like myself) but it includes optional romanized transliteration of the numerals, a couple of different color themes and a setting to disable the screen lock so you can use it as a clock on your desk or nightstand.

TWiT Live for PlayBook

TWiT Live is my second PlayBook app that lets you watch the live stream of Leo Laporte's TWiT network shows. I plan to add support for play/pause, volume control and switching between high and low quality streams some time soon.

It doesn't look like things are slowing down for me any time soon, end of next week I'm moving to London to start my new job at Google as a Rich Media Flash Developer. If I manage to find the time I'll be delving deeper into native Android development to do some experiments with widget development and other fun stuff.

Onwards and upwards!


When you go to conferences as much as I do and meet up with old friends and acquaintances, the number one question is: "So, Peter what have you been up to?". I realized that, unless you follow me on twitter and actually read the dozens of messages I post there every week, fairly few people have a clue what I've been doing these last few months. Well here goes, apart from the Object-Oriented ActionScript 3.0 courses I teach in Belgium and the UK, I spend a good bit of time tech reviewing several books. Two great titles that are coming out soon are AdvancED Flex 3 (Friends of ED) and the Adobe AIR Cookbook (O'Reilly).

AdvancED Flex 3 Adobe AIR Cookbook

I'm also co-authoring a couple of books, one that has already been announced is AdvancED AIR Applications (Friends of ED).

Turns out I've so far attended 10 events and conferences this year, presented a total 12 sessions and have enjoyed every minute! That said I'm not sure if I'll be able to keep things going at that rate.

While I'd love to be in the position to speak at all conferences that would like to have me over, unless my basic travel and accommodation expenses can be covered (which thankfully and increasing number of conferences are able to do), I'm going to have to become very selective in what I take on. I'd prefer to spend my personal travel budget on community events that genuinely have limited resources or are just starting out. That's not a dig at Adobe MAX by the way, there are different reasons why I won't be speaking there this year.

The ActionScript Conference in Singapore is going to be my last conference speaking engagement of the year and have not confirmed anything for 2009 as of yet.

We'll see how things go, after Singapore I'm heading to India for a couple of weeks and will get back to business again by the end of November.

3 CommentsPost a comment

Great news for the Flex community, the inaugural issue of Flex Authority is here! It was great working as a technical reviewer with the various talented authors and I can promise you its chuckful of interesting articles on Flex and AIR for readers of all skill levels.

Here's to many more issues to come, an excellent technical journal has seen the light! Be sure to subscribe today, its just 49.95 USD/year for a printed copy and 29.95 USD/year to get all four issues as a PDF.


I attended the MIX Essentials event in Louvain-la-Neuve this Thursday in an attempt to get some perspective on Microsoft's roadmap for Rich Internet Applications (yes, you read that right -- Internet) and Silverlight 2. Note that I'm looking at this as a Flash Platform enthusiast, while I walked away excited about what Microsoft is doing don't expect me to hold back on criticism where I see things lacking. It is in no way meant as a personal attack and welcome your thoughts.

Here's breakdown of the sessions I attended, with my commentary and a couple of videos.
Opening Keynote - Luc van de Velde Building RIAs with Silverlight 2 - Tim Heuer Beauty & the Geek - Ian Griffiths & Paul Dawson Data and Web Services in Silverlight 2 - Gill Cleeren Steve Ballmer Keynote Summary


The day was kicked off by Luc van de Velde, Director Developer & Platform Group of Microsoft Belux, who presented the opening keyword.

I had seen the egg metaphor before but he did a great job keeping us captivated.


Note to whoever designed these slides, the egg tag is not valid XHTML markup ;)


Designer/Developer workflow

Luc invited some developers up on stage from various well known Belgian web agencies to do some 'live coding' taking care to mention that these guys are not the best people to demo but they want to give us a real world perspective.

I actually got excited for a minute, unfortunately to me the whole thing came across as 'highly scripted'. Using code snippets and prepared source files I'm not sure this was the best way to convince a developer audience.

Telltale silence at around 7 minutes 50 seconds, really expect us to be excited by that? I would like to see what Silverlight can bring us in terms of innovation rather than reinventing the wheel.

Personally would've preferred to see a demo with them creating a Silverlight video player for example, how to develop, skin and deploy and highlight the designer/developer workflow to achieve that.


Silverlight showcases

Next up was a Dutch Microsoft guy (missed his name, I'm sorry) talking about RIA's. Bit of a funny moment (if you've followed the acronym wars) when he seemed to quickly correct himself after saying Rich Internet Applications as opposed to Rich Interactive Applications. The rest of the day was happy to hear everyone refer to it as Rich Internet Applications.

One of the demo's he started of showing us was a recent Silverlight live stream of the "Amstel Gold Race" for the NOS, national broadcasting association in the Netherlands. You would get video on demand, live data push with the latest coverage and you could switch camera.

Where did I see that before?

A little later we saw a financial loan simulator demo, with a live support agent being able to track where you are in the web page.

Sounds strangely familiar, anyone remember the Flex/LCDS FinanceCorp demo? Its all pure coincidence I'm sure.


NBC Beijing Olympics

Wasn't sure at this point whether to get depressed or outraged until I saw the NBC Beijing Olympics site. My first real highlight of the keynote, I could see a light at the end of the tunnel.

I was ready to dismiss this at first glance but the performance of the video, picture-in-picture feature and transitions were impressive. Not something that you couldn't do with Flash/Flex and Flash Media Server but having that many streams open would require some serious optimization.

While Flash Player has caught up with full HD and H.264 support I think there's still more that can be done in terms of video performance in the Flash Player, especially when dealing with multiple simultaneous streams.


Deep Zoom

Christine Heller, Technical Evangelist, was on stage at this point. Couldn't help but notice Microsoft Evangelists take on much more of a marketing role than I'm used to seeing at Adobe where its always seemed foremost about developer relations. Not a bad presentation at all but didn't feel I could really connect with the message.

The Deep Zoom demo they did was really impressive, again performance really stood out here. Would love to see how this compares to Zoomify and Scene7 and if Adobe can push their technology to that level.


Tim Heuer, Program Manager for Silverlight, walked us through what's new in Silverlight 2 and how you go about creating a simple web application.


What's new in Silverlight 2?

Text, Text Input C# and VB.NET
Controls LINQ
Layout XML APIs
Styles/Templates Generics
Data Binding HTML integration
Socket networking Local Storage
.NET support Crypto API's (AES)


Controls in Silverlight 2

Canvas, FileOpenDialog, Grid, Image, ItemsControl, MediaElement, MultiScaleImage, StackPanel, Texbox, TextBlock, Button, Popup, Checkbox, DataGrid, DateTimePicker, GridSplitter, Hyperlink, ListBox, Calendar, RadioButton, Slider, ToggleButton, Tooltip, WatermarkTextBox.

Microsoft is committed to deliver 100 controls for Silverlight within the next few years.

When talking about styling/skinning controls I was surprised to see a screenshot pop up in his slides with a Flex tree component that reads "Adobe Consulting > Peter Baird".

Tried to Google the image but had no luck finding, not sure what a Flex tree component was doing there when talking about skinning Silverlight controls.


Silverlight sandbox and further features

In many ways Silverlight uses a similar sandbox mechanism as the Flash Player and they can also leverage the crossdomain.xml policy files as well as their own clientaccesspolicy.xml flavor. There's also local storage support not unlike SharedObjects in the Flash Player.

Next Tim did a quick demo of how to build a Silverlight application in Visual Studio -- you get the option to start a new Silverlight application or a simple HTML test page. Best practice is to go with the application, since the test page runs in a local file sandbox and you'll get security errors when trying to access any network resources.

We saw IME support in Silverlight, how media files could be leveraged as skinning elements (in this case a video as the background for a TextBox control).

The demo went on to show data binding on a DataGrid and how you could use the equivalent of itemRenderers to completely change how the data gets displayed.


Local partner demo

To wrap this session up we got a demo from a local partner, in this case Netika Tech showing us their GOA project. I'm afraid it didn't impress me too much and was a little underwhelmed. Couldn't wrap my head around why Silverlight would be a better technology choice for their product.

No page refreshes, fast data filtering and paging are not a selling point for me -- you can do that just as well with AJAX and Flash and it largely depends on what data transport format you're using. If data performance is what you want I think AMF is the clear winner over plain old XML.


After lunch I decided to switch tracks, and am really glad I did! Ian and Paul did a very entertaining session outlining the designer developer workflow. What was refreshing here is that there was zero corpo-speak, a recognition of real world development situation.

Designer developer interaction is not sequential, there is a large degree of overlap. Very good tips on how to improve the workflow, convince designers about the need for source control.

This is the type of session I can relate with and has had me genuinely appreciating what Silverlight can bring to the table.


Another interesting session followed with Gill Cleeren talking about various means of accessing data in Silverlight 2 -- both SOAP Web Services and REST based services.

I was pleasantly surprised to see how this worked within Visual Studio with Proxy classes but again saw a little bit too much use of code snippets to really get into it.

Would personally prefer a few less demo's but a more indepth runthrough of the code.


The day finished off with an excellent keynote by Steve Ballmer followed by some Q&A.

Unfortunately my N95 battery died just when Steve was asked an interesting question on why Microsoft has been lagging behind in the RIA space and they are now aggressively competing against established technology.

His answer somewhat surprised me -- recognized the strength of Adobe and said Microsoft would not get involved in a static market like print (where Adobe is the clear market leader). He sees Microsoft having a better proposition when it comes to the designer developer workflow and hinted at new things coming out that would also target the interaction designer.

Can't wait to see how this develops in the coming year and what Thermo will bring to the table from the Adobe side of things.


All things considered a day well spent, learned a lot about Silverlight 2 and am convinced the competition will drive innovation both at Microsoft and Adobe for the coming years, which we can all only benefit from.

A couple of points I think could be improved:

- Make sure there is wifi for the attendees if you seriously want us to blog, twitter, upload and tag photos. I was taking notes on my cell phone for a good bit of the day, if you can't get wifi at least put a pen and some paper in the 'goodie bag'.

- Power supplies, its not common to have that available at events but during the onAIR tour Adobe did a great job making sure everyone could stay plugged in. I saw only a handful of people with their laptop open in an audience of 500.

- Get us a DVD with Silverlight, trial versions of Visual Studio, Blend -- I found it frustrating not being able to get hands-on and experiment with some of the things we saw in the sessions. No raffle prizes surprised me, no evaluation forms either.

2 CommentsPost a comment

I've had an article on component skinning in the works for several months but finally got it done and its now published on the Adobe Developer Center. The article walks you through the different options for skinning components in the Flash CS3 authoring environment: manually editing the assets, code-based skinning and talks about how you can package up your skinned component as an SWC to easily share it with the rest of your team.




I'm excited to see the Adobe Developer Center has put up the "Object-Oriented Programming with ActionScript 3.0" article I wrote for them a little while back. The article runs through the basics of inheritance, encapsulation and polymorphism and is aimed at those of you that haven't made the step to class-based development yet. While the examples use Flash as an authoring environment, these concepts can just as easily be used when doing doing development in Flex Builder.

If you enjoyed the read and want a more indepth look at OOP with ActionScript 3.0, there's the book coming out this summer that should help you along.

Its always great working with the developer center team so thanks to Stefan, George et al. for their hard work editing the article and putting up with me ;)



Object-Oriented ActionScript 3.0 There's nothing quite like writing a book -- definitely one of the most exhilarating yet at times frustrating things you can do. Sas Jacobs, Todd Yard and myself have been hard at work getting the update to Object-Oriented ActionScript for Flash 8 written and we're now coming ever closer to a release date. The previous edition was one of the first major book projects I've worked on and was absolutely thrilled to see how well it was received by the community. I think it fills in a great niche for those wanting to get involved with OOP with ActionScript. Its not a full-fledged language reference like Colin Moock's must read Essential ActionScript books but rather provides a down to earth and pragmatic look at OOP principles and how to apply them to your projects.

While quite a bit of the new book is a straightforward port of the ActionScript 2.0 code to 3.0 syntax, there was a lot of focus on improving the code examples and case studies making them more practical and easy to follow.

I'm looking forward to seeing the book released and hope for an equally as positive reader response this time round. If you're interested in getting your hands on the book sooner than later, it is now available for pre-order (the links below are referrer links and help support this site if you are so inclined).

Pre-order from amazon.com Pre-order from amazon.co.uk

6 CommentsPost a comment

Ultrashock.com is celebrating its 5 year anniversary with a contest including a grand prize of a 60Gb video iPod. Additionally they've launched a new series of articles on Flash 8, Photoshop and Illustrator well worth a read!


Foundation XML for FlashXML is one of those technologies you take for granted as a Flash developer and probably use practically every single day without giving it a second thought. That said I was interested to see if "Foundation XML for Flash" would be my cup of tea and go beyond the typical introduction to the XML object in Flash.

I must say I was pleasantly surprised, the book offers a whole lot of information you seldom see covered in books on XML and Flash including XSLT, DTD's, namespaces etc. One of the major strengths of this publication is the chapters where Flash integration with XML files taken from Word, Excel and Access are discussed. Its something I hadn't really thought of before and opens up a whole new world of possibilities for Flash applications interfacing with documents, spreadsheets and databases and definitely an approach I'd like to try with my install of OpenOffice.

One thing I didn't see covered was the idMap property of the XML Object that was introduced for Flash Player 8 but other than that, this book is a must-have reference guide to Flash and XML, highly recommended!


If you want to get started with Flex there is no better way than sitting yourself down and start experimenting with this book next to you on the desk. Although there's not much choice of books on Flex, this one I've found is exceptionally well-written and will guide you through all aspects of RIA development with Flex. Something to take into consideration is that "Developing Rich Clients for Macromedia Flex" is not a book for absolute beginners - you ideally need to have some background knowledge on ActionScript 2.0 and OOP methodologies before you get started.

The guys from iteration::two (soon to be Macromedia Consulting EMEA) did an excellent job on this book, hope they'll do an update for the next release of Flex.

4 CommentsPost a comment

Flash MX Components Most WantedIf you're interested in Flash MX Components and want to support my site feel free to follow to link and buy yourself a copy of "Flash MX Components Most Wanted".

I was lucky enough to co-author this book with a lot of very talented Flash developers (Aral Balkan, Josh Dura, Todd Yard, ... to name but a few). Check out chapter 21 for my StringThing component contribution.

The book comes with no less than 21 components each with an accompanying chapter with a detailed description and various examples. A great buy if you're looking for some Flash MX components to play around with!

3 CommentsPost a comment