Flash Board, opportunistic communication.

2011
Flash Board, opportunistic communication for Android and iOs.

Flash Board, opportunistic communication

Following the release of Count the Dots, I started work on a new app called Flash Board.

The idea came during a conversation with my wife about having an app to share your thoughts with others without using a pen and paper. After testing on the iPad, it tuned out that you could see the messages from quite far too!

Read the rest of this entry »

Count the Dots, one month later.

2011
Count the Dots

First level of Count the Dots

Fresh off the heels of the AIR 2.7 release, I submitted my first App to both Android Market and iOs App Store.

A little development background:

Count the Dots was coded in Flash Builder 4.5.1. Visual assets were packaged using Flash Pro and were designed in Illustrator. Originally the sound was to be dynamic, using the sion framework , but latency on Android meant that the sounds had to be converted to static files. Generally, dynamic audio performance on Android in AIR is poor. From the frameworks I tested only Andre Michele’s Tonfall performed well, of course! The app is wired with Robotlegs and all view events are handled via AS3 Signals.

Read the rest of this entry »

Timesheets.com vs Harvest

2011
Timesheets.com "wrongliness"

Timesheets.com wrongliness

As mentioned in my 2010 year-end review, user experience trumps features.

Both agencies I freelance with use a time tracking platform. Keeping track of time is obviously crucial. STC Associates is moving from @task to timesheets.com. Neutral uses Harvest.

After using Harvest for a few month, I was simply baffled by timesheets.com. My reaction was wtf. About every fail in UX and UI are on that landing page. There are a few cryptic items that confuse me and even more disturbing is the prominence of anti-productive features.

Read the rest of this entry »

2010 Year-End Review

2011
Underground decal

Construction site's sign

2010 was the year the Flash platform died, replaced by the fifth revision of the HTML standard. Or so I am told. That was a great debate/flame war and we are all very happy that html finally caught up to Flash 8. Enough said.

But under that blanket of ignorance fueled hatred for Flash rose the true winner: the age of UX. The web has become the front line of User Experience. Many of the websites we use reflect this trend: Experience over Features (read/watch/follow Aral Balkan for more). Previously reserved for Flash, sophisticated layouts, animations and effects are now possible using CSS, JS and HTML and render properly in most modern browsers.

Read the rest of this entry »

3D Globe Map

2010
3D World Map

Interactive 3D World Map for TATA Communications

STC Associates asked me to produce yet another coverage map for TATA Communications! This time, since the data was pretty light and it included satellites, we thought doing it in 3D would add a bit of shinny. Truth be told, I am a 3D junky (obviously).
Read the rest of this entry »

Projection animation for ITW Event

2010
Dynamic 3D Animation

Dynamic 3D Animation

A cool little flash project built in collaboration with STC Associates for an event during International Telecoms Week (ITW) 2010 in DC. The party was attended by over 1700 guests. They were asked to vote for a keyword to best represent the future of telecom. The result were rendered using this animation.

Originally I started using the built in 3D of FP10: that was a waste. Text looked horrible and native AS3 3D controls are not great. So I switched to Away3D and the amazing TextField3D class. The DOF is a simple blur applied to the ObjectContainer3D. I had a random movement on the camera but that was turned off in the event’s version.

Here are pictures of the animation and projection setup during the event.

Open Street Maps Experiments Take Two…

2010
OSM Mapped to a 3D Plane with as3Dmod

OSM Mapped to a 3D Plane with as3Dmod

Building on my first experiment with OpenStreetMaps and Away3D, I decided to cook up two more!

The first one uses a block grid to display the map in 3D space. On zoom the blocks rotate 360. I used the ModestMap TweenMap, displayed in on the left, to allow control and capture the map’s bitmap data.

The second example uses a 3D plane to display the map’s data. I added a Perlin deformation with as3Dmod to create a wave or fabric like floating look.

The stats shows a rapidly increasing memory usage due to ModestMaps’ tile caching (defaults to 256 tiles). Once I have it cleaned up, I will upload the source code for these :)

I like HYPE

2010
Demo on HYPE's blog

Demo on HYPE's blog

Last night, while waiting for the London Flash Designer and Developer Meetup to start, I decided to create a demo using HYPE and Away3DLite. It is nice to be able to just tinker with complex renderings using very little code and focus on visuals.

In this demo Away3DLite is used to render 900 cubes and animate the camera. HYPE processes the sound being streamed (Magenta) and resizes the cubes accordingly. Two Bitmap Canvas are used to display the 3D rendering of Away3DLite. One is used to create the blur trail. The actual code needed to render this is less the 40 lines. The rest is AS3 structure.

Using frameworks like HYPE and Away3DLite allows us to go back to the innocent days of AS2 and use code as a pure creative enabler. That’s probably why I was a bit thrown off when another attendant of the meeting said he didn’t like using frameworks, which is ironic for a Flex developer.

I don’t think people appreciate how lucky we are to have open source frameworks like these available. Well, I do! Thank you for all your hard work. Please check out HYPE and Away3D for some serious fun!

Click here to view the demo.

Click here for the source code.

Using OpenStreetMap and Away3D

2010
OpenStreetMap... The solution to Google's limitations

OpenStreetMap... The solution to Google's limitations

It was with much disappointment that I discovered Google would not allow us to manipulate its map tiles with Flash bitmap processing. Thus limiting greatly what is possible visually with the look and feel of their maps. Of course that also means no Away3D, PV3D, etc…

I managed to customize the look of Google Maps by using Tweener’s de-saturation feature to render the map tiles in Black and White. Many have posted on the Google Maps API bug reports and feature requests. Google is afraid that we would harvest their tiles and does not want to put a cross domain policy file.

I decided to revisit the issue and to look for alternate services that would allow such use. Of couse no luck with Yahoo! and Microsoft, just like Google, they want to protect their tiles.

But behold the power of open source: OpenStreetMap.org and ModestMaps. Using the Flash API from ModestMaps for openstreetmap and Away3D, I was able to map the maps onto a cube and have it renders beautifully. OpenStreetMap allows you to go trigger happy with their tiles, just as long as you add their security policy file to you project (see the source code). You can even download the tiles for offline use!

February’s Landing Page Experiment: Roaming

2010
Little Cubes Roaming Around...

3D Cubes Roaming in Away3D

Though a bit late, this month’s experiment builds on last month setup and adds a bit of AI. Cubes now roam and avoid each other when near collision. A very basic detection system using a vector and couple of recursive functions. All calculations are made using Away3D’s functions like distanceTo() and movement is handled by moveForward(). The newer post are represented by bigger cubes. The icons are from PJ Onori’s excellent iconic.

Click here to view this experiment. Source code can be viewed here.

Update: For Valentine’s Day here is a special version and its source code.