Smokescreen: real time SWF to JS aka “hello iPad/iPhone”

Now this is “interesting”. Smokescreen, written by Chris Smoak, is a “Flash player written in JavaScript” in that it takes Flash objects and then actually converts them to JavaScript in real time… Whoah you say. Hello iPad/iPhone/whatever…

The goodness: it runs entirely in the browser, reads in SWF binaries, unzips them (in native JS), extracts all images and any embedded audio and then turns them into base64 encoded data:uris. Post all that prework it then stitches the vector graphics back together as an animated SVG. And rather nicely at that.

The badness: 8k lines of JS translates to ~175kb and some serious slowness on mobile devices…

The potential nss nss: supposedly it will be fully opensourced in the not too distant future. Allowing for sorts of optimization potential.

It’s a different type of Flash…

Sencha (previously known as Ext JS) has released Sencha Touch, a HTML5 Mobile Application Framework. which allows you to develop web applications that look and feel native on Apple iOS and Google Android touchscreen devices.
It makes use of HTML5 for delivering audio/video or localStorage and CSS3 for maximum styling like rounded corners, background gradients, and shadows.
The code created is resolution independent. It uses a method which allows developers to change the overall scale of their interfaces on the fly with no pixellation.

Sencha Touch has a powerful animation system that makes flexible animations between screens and views possible.

Slide, pop, and fade animations are included with the library, each with a robust set of options to change attributes like direction and masking style.
And, as they are created with CSS, building custom animations is a joy.

Also, it includes a set of common icons for using them in toolbars and tab bars.

Compatibility: Apple iOS and Google Android

iPhone OS X development course on iTunes University from Stanford

Stanford University has posted another complete lecture and presentation slide series for the Winter 2010 term’s iPhone Application Development course.

Downloaded from iTunes more than 4.4 million times last year this latest series of closed-captioned! lectures are now updated to include APIs from the latest iPhone OS 3.1 SDK OS X etc.

There’s no support available so don’t even try to ask them (Stanford ) for help.

How to rename your iPhone application in Xcode…

To rename your application, modify the “Product Name” build setting, which is part of the Packaging build settings collection.

Follow these steps for changing an application’s name in Xcode:

  1. In Xcode, double-click the target’s name under “Targets” in the Project window.
  2. Choose the Build pane from the ensuing Info window.
  3. Select “All Configurations,” “Debug,” or “Release” from the Configuration popup menu.
  4. Note that the application’s name will only be changed for the configuration you selected.
  5. Select the Packaging collection and assign a new name to “Project Name.”


I strongly believe that learning a new style of programming will make you a better programmer. F# has been on my radar for a while and I am contemplating a dive, shallow or deep I have yet to determine.

Yes, F# can possibly help a lot for certain classes of applications, but I do not know how much, if any at all, for line-of-business apps. My understanding is that F# is well suited for math and science applications and its functional nature can help write more reliable concurrent programs. Given the increasing number of multi-core processors, this might be prove valuable.

iPhone OS 3.0

Looks like the field will level. And about time…

Two cool additions to the iPhone that now use HTML5 features:

Safari JavaScript Database Programming

The HTML 5 specification provides a new mechanism for client-side data storage: JavaScript database support. HTML 5 is currently in development by the Web Hypertext Application Technology Working Group (WHATWG).

JavaScript database support is available in Safari 3.1 and later, and in iPhone OS 2.0 and later.

You should read this documentation if you are a web developer who wants to store data locally on a user’s computer in amounts beyond what can reasonably be stored in an HTTP cookie.

HTML5 Application Cache

Michael Nordman of Google asked “Is this stuff built into shipping Safari or iPhone browsers yet?”

David Kilzer replied “This feature shipped with iPhone OS 2.1. When you use “Add to Home Screen” from the “+” button on Safari for iPhone, a web application with a manifest defined (per the HTML5 spec) will be saved with any cached resources. Note that the manifest file *must* be served with the correct MIME type for this to work.

There is no shipping version of Safari for Mac OS X or Windows that supports this feature yet.”