Articles Tagged: flex

adobe flex open source framework, custom components, mxml samples, item rendereers, code structure, actionscript

Rebranding of Flex builder, Flash Builder the hidden story, A Boy and His Flash

June 2nd, 2009 | By Cedric Madelaine

postImage 01short Rebranding of Flex builder, Flash Builder the hidden story, A Boy and His Flash image

Introduction

Lately Macromedia, no no no, Adobe announced the rebranding of Flex builder as Flash Builder. I’ve read plenty of posts and interesting comments on this matter. I will not start here with giving my opinion directly on this matter, but start with a trip with a time machine to try to better understand what brought the current situation.
vfugStickerWebFlag Rebranding of Flex builder, Flash Builder the hidden story, A Boy and His Flash image

spacer Rebranding of Flex builder, Flash Builder the hidden story, A Boy and His Flash image

Disclaimer

This post is supposed to be slightly humorous. What is expressed is personal and I hope this will not offense anybody icon wink Rebranding of Flex builder, Flash Builder the hidden story, A Boy and His Flash image

035 FutureSplashFlashFlex Rebranding of Flex builder, Flash Builder the hidden story, A Boy and His Flash image

What Flash do

As somebody who touched for the first time a Flash product with the version 2 in 1998. I feel that today’s confusion inherits from Flash’s evolution. Through time and various iteration our tool, our technology has evolved a lot from an animation tool to an ubiquitous way to produce a wide range of products from simple things to extremely complex one, but in a context where the simple one has a mission as important as the complex one, moreover each addressing a wide range of requirements and last but not least ubiquitous.

035 boy blob Rebranding of Flex builder, Flash Builder the hidden story, A Boy and His Flash image

theflashblob

I feel that Flash along its history has been like a blob whose flexible flesh were pull to diverse directions along what users made of it, trends, demands and future expectations. Through time your blob character has lost a (8)bit its well defined bouncy borders, but it is still there and as flexible as he used to be. I’m not sure that Macromedia were that much clear about what it would become of Flash when they bought Futuresplash back in 1996 (if you have internal info about it please let me know).
It started with something which addressed an issue: provide lightweight/vectorial animations for the web. A well thought tool which was very different from what existed before. But a tool which produce content which is difficult to identify by the end user as being “made by Flash” because it is available as would any image within an html page.

This technology offered an open field for creativity and MM was looking with awareness what was happening with this technology. This attracted people from a very wide range of professionals, gathering people from the developer side and from the designer side, and even giving birth to an hybrid class of people devsigners.
(by the way do not you feel like the Boy in “A Boy and His Blob” http://en.wikipedia.org/wiki/A_Boy_and_His_Blob, feeding the blob with actionscript licorice jelly beans to make it transform into amazing “shapes” icon wink Rebranding of Flex builder, Flash Builder the hidden story, A Boy and His Flash image )

Amazingly fun but can you be serious?

Ok so now you have this wonderful technology which produce funky animated visuals (skip it) and interactive pieces, it works great still it is not very well recognized for what it is and what it could be…

1: Target audience has difficulties to identify it, well it is not much a problem because the important : point is that they enjoy it and that they will demand for this kind of content. (see what is happening with Flashlite which is rarely advertised in Mobile phones leaflets, it is the same reason.) It has the advantage that you are maybe a bit more free with what you do with the branding.

2: You have people convinced by the technology, but you’d like to attract more people and people who can also show that your technology is “serious”. I mean by that prove that your technology is a serious challenger to existing others in the field of Interactive Applications.
You have a very cre-active and devoted community (respectable in size), but you need a bigger workforce to promote your technology. They are out there a huge amount of developers, but currently they work with other technologies, you really need to appeal them to widen the spread of your technology and widen its possible applications…

035 flexIsSeriousBusiness Rebranding of Flex builder, Flash Builder the hidden story, A Boy and His Flash image

Let’s appeal the other side

The Apparition of Flex resulted from this will of Macromedia to make Flash more appealing to “historical/true” developers/Architect/Business Stategist/….

1: effort were put on improving Actionscript to be respectful of programming standards (as1->as2 -> as3).

2: changed the paradygm of the timeline to meet screen based paradygm

3: promote use of MVC (mxml= the view building language, actionscript= the controller and management of data)

4: improve management of external data

5: provide a set of tools to allow this kind of developers to find ready to use well know components

6: use a well known developer platform : Eclipse with features like syntax completion, break points, profiler, etc which makes their work more efficient and comfortable.

(7: target open source and offer the opportunity to people to work with the technology for free)

A compflexe case

Then you have a new tool which use the same technology but which is free of the burden of “time incremental evolution”. (not like Flash IDE) (I jump here, on purpose, over the intermediary phase of Flex 1.0 +1.5 which I feel were to test the market)

What would you do, you need to attract these people, now you have a way to speak their language but how would you call it? Flash something? No way! Developers, IT Stategist,… have being forged an image about the product which is not very positive regarding their field and does not fit what you want to communicate. Aka the “skip animated intro complex (of the death)”. So you create a new brand, which will identify your new approach and communicate it to the right people. FLEX! (Flexible, were other challenger are not so much flexible)

Strategically speaking you need to make this new brand appealing to decision makers, to make them trust it, then you ensure to have blue print companies starting partnerships to develop impressive RIA with this tool (like ebay, IBM), which will help promote the tool within other big companies and make them start to trust it.

To finish with this part, check this historical document, the press release of Flex 2.0 http://www.adobe.com/macromedia/proom/pr/2005/announcing_flex2.html, interesting to read it in today’s context.

END OF PART 1, NEXT PART the rebranding, preparation of the future.

spacer Rebranding of Flex builder, Flash Builder the hidden story, A Boy and His Flash image

Adobe AIR tips serie: browseForSave set default file extension and validate/modify.

November 17th, 2008 | By Cedric Madelaine

postImage 01short Adobe AIR tips serie: browseForSave set default file extension and validate/modify. image
spacer Adobe AIR tips serie: browseForSave set default file extension and validate/modify. image

In this serie I propose some quick tips for Adobe AIR products developers, which came out during my regular practice of this technology. Today topic is:

Conforming extension for a browseForSave.

This short tip allows you to ensure that the file which will be saved following a browseForSave match legal extension you have defined beforehand and if not it will apply a default extension when using the browse for save functionality. Currently File.extension is a read only property and you cannot change it directly, so I decided to manipulate the path in order to allow it. I think a setExtension and allowedExtensions property might be useful in such a situation.

import flash.filesystem.File;
import flash.filesystem.FileStream;
import flash.events.Event;

private var docsDir:File;
private const MY_DEFAULT_EXTENSION:String = "abc";
private const VALID_EXTENSIONS_LIST:Array = ["abc"];

public function mySave():void
{
	docsDir = File.desktopDirectory;
	docsDir.browseForSave("Save As");
	docsDir.addEventListener(Event.SELECT, mySaveHandler);
}
private function mySaveHandler(event:Event):void
{
	docsDir.removeEventListener(Event.SELECT, mySaveHandler);
	//Split the returned File native path to retrieve file name
	var tmpArr:Array = File(event.target).nativePath.split(File.separator);
	var fileName:String = tmpArr.pop();//remove last array item and return its content
	//Check if the extension given by user is valid, if not the default on is put.
	//(for example if user put himself/herself an invalid file extension it is removed in favour of the default one)
	var conformedFileDef:String = conformExtension(fileName);//comment: updated 17.11.2008 removed the typo
	tmpArr.push(conformedFileDef);
	//Create a new file object giving as input our new path with conformed file extension
	var conformedFile:File = new File("file:///" + tmpArr.join(File.separator));
	//Make save
	var stream:FileStream = new FileStream();
	stream.open(conformedFile, FileMode.WRITE);
	stream.writeUTFBytes("demo demo demo demo demo demo demo demo demo");
	stream.close();
}
private function conformExtension(fileDef:String):String
{
	var fileExtension:String = fileDef.split(".")[1];
	for each(var it:String in VALID_EXTENSIONS_LIST){
		if( fileExtension == it)
			return fileDef;

	}
	return fileDef.split(".")[0] + "." + MY_DEFAULT_EXTENSION;
}

Feel free to add any comment!

spacer Adobe AIR tips serie: browseForSave set default file extension and validate/modify. image