Archive for the ‘Uncategorized’ Category
NativeApplicationUpdater 0.5.1 (bug-fix release)
Today I published a bug-fix release of NativeApplicationUpdater. A small bug has slipped into the latest build that affected the Mac users.
Multi-touch development with Flash and Flex e-seminar materials
Below you will find links to my e-seminar recording, presentation slides and projects with source code of demo applications:
- Recording on Adobe Connect:
http://my.adobe.acrobat.com/p84912063/ - Presentation on SlideShare:
http://www.slideshare.net/pwalczyszyn/multitouch-with-flash-and-flex - Gesture events demo application source code (Flex/AIR):
http://www.riaspace.net/wp-content/uploads/2010/03/GesturesFlexDemo.zip - Touch events demo application source code (Flash/AIR/Apple Phone):
http://www.riaspace.net/wp-content/uploads/2010/03/TouchFlashDemo.zip
Real-Time Mobile Connectivity
In the video below I present my new demo of real-time connectivity between applications running on different devices like Apple phone, Nexus One and my Mac. Apple phone runs AIR application built with Flash (source code available here), on the desktop is also an AIR app but built with Flex (source code available here) and on Nexus One is also Flex app (keep in mind that this is not yet Flex Mobile version, source code available here) running in the browser. All of these connect through Java backend with LiveCycle Data Services ES2 (source code available here).
LogProcessor – custom metadata processor for Swiz 1.0.0
Just recently Swiz 1.0.0 alpha was released. Essentially it is rewrite of Swiz itself but it also brings new cool features. One of the features that I really like the most is the ability to define Custom Metadata Processors. It allows you to define your own metadata and have it wired into your code with the same mechanism that [Autowire] and [Mediate] are implemented by Swiz. I decided to give it a try by building a very simple LogProcessor that injects preconfigured ILogger from Flex API based on [Log] metadata.
The usage of this custom metadata looks like this:
[Log] public var log:ILogger; private function someFunction():void { log.debug("someFunction was called!"); }
Here is the code of my LogProcessor. The addMetadata function actually does the job:
package processors { import mx.logging.Log; import mx.logging.LogEventLevel; import mx.logging.targets.TraceTarget; import org.swizframework.core.Bean; import org.swizframework.processors.MetadataProcessor; import org.swizframework.reflection.IMetadataTag; public class LogProcessor extends MetadataProcessor { private static var traceTarget:TraceTarget; public function LogProcessor(level:int = LogEventLevel.ALL, filters:Array = null, includeDate:Boolean = true, includeTime:Boolean = true, includeCategory:Boolean = true, includeLevel:Boolean = true) { super("Log"); if (LogProcessor.traceTarget == null) { LogProcessor.traceTarget = new TraceTarget(); LogProcessor.traceTarget.level = level; LogProcessor.traceTarget.filters=filters; LogProcessor.traceTarget.includeDate = includeDate; LogProcessor.traceTarget.includeTime = includeTime; LogProcessor.traceTarget.includeCategory = includeCategory; LogProcessor.traceTarget.includeLevel = includeLevel; Log.addTarget(LogProcessor.traceTarget); } } /** * Assign ILogger instance */ override public function addMetadata(bean:Bean, metadata:IMetadataTag):void { // bean.typeDescriptor.className returns class name in packages::ClassName notation // that is not accepted by Log.getLogger function, returning only ClassName string var className:String = bean.typeDescriptor.className; className = className.substr(className.lastIndexOf(":") + 1); // Setting Logger bean.source[ metadata.host.name ] = Log.getLogger(className); } /** * Remove ILogger instance */ override public function removeMetadata(bean:Bean, metadata:IMetadataTag):void { bean.source[ metadata.host.name ] = null; } public function set level(value:int):void { LogProcessor.traceTarget.level = value; } public function set filters(value:Array):void { LogProcessor.traceTarget.filters = value; } public function set includeDate(value:Boolean):void { LogProcessor.traceTarget.includeDate = value; } public function set includeTime(value:Boolean):void { LogProcessor.traceTarget.includeTime = value; } public function set includeCategory(value:Boolean):void { LogProcessor.traceTarget.includeCategory = value; } public function set includeLevel(value:Boolean):void { LogProcessor.traceTarget.includeLevel = value; } } }
What do we do when not Flexing…
Last week I was out for few days to catch some wind, last days of summer and of course relax before upcoming busy busy busy, weeks and months… As you probably know MAX LA is coming very soon and I’m also planning very intensive activities around Flash Platform this fall – now it is top secret but stay tuned!
In order to clean my head I decided to visit Prasonissi (mecca for wind and kite surfers). I have a feeling that we developers have tendency to forget that doing any sports or having active leisure away from our computers, emails, blogs, favorite IDE’s is very important!
So what do you do when you are not Flexing?
Warsaw Flash Camp 2009
Tomorrow is a big day for Polish Flash community. We are having a Flash Camp event in Warsaw! The day is expected to be really amazing in terms of content and expected 300 attendees. For those that cannot attend in person there will be streaming available at: http://flashcamp.istream.pl/
Agenda and more datails is available here: http://g-media.pl/aug/flashCamp/
RIA Freaks – new user group in Poland!
Lets spin Polish RIA scene…
I got a message today that new Polish Adobe User Group was created (RIA Freaks – http://www.riafreaks.com/). It is located ouf of Toruń (this is the town of Nicolaus Copernicus) and it is gathered around University of Mikołaj Kopernik staff and students. I think these guys there are trying to follow Copernicus and are actually one of the most advanced RIA enabled universities in Poland. You can check their TV at http://tv.umk.pl/, which is full featured Internet TV website with live campus video streams and recorded events, lectures and interviews.
If you want to join this group at Adobe Groups the link is here: http://groups.adobe.com/groups/887feaa4c1/summary
If I counted correctly on Adobe Groups we have 7 officially registered groups out of Poland. I encourage anyone who is passionate about Adobe technologies and products to open up new groups in their cities. This way you can connect with other people sharing similar interests, knowledge or job. Also you can meet other members outside your area as there is over 700 groups registered world wide. As an Adobe we will provide you with some benefits like, software licenses, access to weekly presentations, access to selected beta programs and many others. So feel free to register at Adobe Groups and create your new user group!
New York Times Reader 2.0
Couple of days ago The New York Times has released TimesReader 2.0 that uses Adobe AIR technology! This is a great technology prove of Text Layout Framework for Flex! Today I found interesting coverage about TimesReader in Polish newspaper: http://technologie.gazeta.pl/technologie/1,86564,6603910,Times_Reader___przyszlosc_prasy_.html
Application can be downloaded from here: https://timesreader.nytimes.com/
There is also video interview with Adobe XD team that was working together with NYT to bring it to live:
Webware 100 winner: Adobe AIR

Adobe AIR is a winner of Webware 2009!!! It was awarded in Infrastructure & Storage category biting other products like: BitTorrent, Carbonite, DropBox, Dropio, Facebook Connect, Mozy, OpenID, Windows Live SkyDrive and YouSendIt.
This is really great news and that means industry is recognizing incredible potential of Adobe AIR which brings true cross-platformability with developers productivity.
You can find more info here: http://news.cnet.com/8301-13546_109-10237765-29.html
Flex and AIR bootcamp for PHP developers followup
I just arrived back home after Flex and AIR bootcamp in Gdańsk, we did it together with my fellow Evangelist Mihai Corlan. The event was organized by Politechnika Gdańska, Blue Media S.A. company and php.pl, Maciej Wilgucki from Blue Media did incredible job getting it all to happen!
It was really great event with parts of theory and hands-on sessions! Check out some photos and video how we as evangelists get ready for our job











