Saturday, March 27, 2010

Introducing ASTRID

I've been working my butt for months and months trying to get a new open-source framework out the door called ASTRID. The base framework and some test were launched a few weeks ago but just finished the first demo up earlier today and it's about time I start telling people what it is all about.

To help out the cause I've updated my companies website and created many pages on the base framework and the other sub projects of the framework like Object a full dynamic templating language, Assets an asset management library for sending and loading all types of files, and the multiple renderers including an updated version of HTMLWrapper and a new tiny HTML/CSS renderer called MiniHTML.

As you can see, I have been busy. There is a lot of code here and a lot of ideas behind it. I'm doing my best to create something that eases the development of every ActionScript project. I'll be creating a Flex based demo next for all of those Flash Builder people out there but not sure yet about what to make. If you have time to try out ASTRID I would love to hear your thoughts on the framework. I still have a long list of things I would like to complete but I'm pretty happy with what ASTRID has going for it now.

Labels: , , , , ,

Monday, September 14, 2009

HTML within Flash

FluidHTML today announced at the TechCrunch 50 conference about there HTML rendering Flash technology. It isn't yet available but it was a really great promotional piece for the importance of standards within Flash and a good sign that people are starting to take notice of a growing trend.

Ever since you could load a file into Flash with the first versions of ActionScript people have been requesting the ability to render more complete versions of the web standards. Since about this time we have been able to use CSS and basic HTML within TextField. But the things that you can do with these technologies is so limited that Flash developers for years have had to find ways to extend this functionality.

One of the most significant tries at this was a project called DENG written in ActionScript 1 in ~2003. It's feature list sprawled on and on with everything a modern browser is able to do except for script tags (which are really complicated). The only thing that you could really say bad about it was that it did to much and that it was slow, but what do you expect for ActionScript 1.

For year into the future people developed other browser related projects and Adobe didn't update anything in regards to the these standards. As the time goes on and people realize Adobe stance on remaining proprietary more and more projects have started popping back up.

I open-sourced the first ActionScript 3 HTML/CSS rendering engine HTMLWrapper in January 2007 and a project called Cannonball was released in the next summer that had a really good start. Just last week Jesse Freeman came to speak at the user group that I manage in NY (FlashCodersNY) to talk about FlashCamouflage and F*CSS which he has been speaking at conferences all over about.

It very much seems like HTML/CSS and the web standards in general have become the new hot topic within ActionScript and becoming the de-facto way to structure application frameworks. I've been using techniques like this for a long time within my work but it seems like it is time for me to finish up version 2 of my open-source project.

Full disclosure I used to have a company with Jim Kremens one the developers of FluidHTML. I congratulate all of them on there TechCrunch 50 awards.

Labels: ,

Wednesday, September 09, 2009

OMG FlexPMD

Everyone should use this. It needs a few more features but it is still amazing as it. Will help the bigger projects that I am a part of out a lot.

Labels: ,

Tuesday, April 28, 2009

Textmate Upgrades for ActionScript

I was just upgrading Textmate and was looking into a few things that I was shown FDT can do that I didn't know how to do in TextMate and came across a few helpful things.

The most important thing if you dont have it already is the ActionScript 3 bundle. If you have this skip this section. The most updated version always lives here.
svn.textmate.org/trunk/Review/Bundles

You can download this with any SVN client with this url. When you get it on your computer make sure that the name of the folder ends with ".tmbundle"
If so you can just double click this file and it will install.

To get this going you have to open TextMate > Preferences > Advanced > Shell Variables and click the plus button.
Type MXMLC in the variable column and the path to the bin folder of your Flex SDK in the value.
This will enable you to compile from TextMate much like you do with Flex.

This gives you a list of features that you can start to check out by opening File > New From Template > ActionScript 3 > Project

After you get this going and work with it for a while you will see there are some odd things that occasionally happen in the project draw.
To fix this and add all kinds of other features get this. ProjectPlus
The biggest thing it adds for me besides reliability is SCM (source code management) info.

With all this you will be set but one of the things that FDT can do that TextMate was missing was a searchable code browser but this is simply solved with this.
TmCodeBrowser

This has a basic implementation of ActionScript support built in but it is missing a few things. To make it better edit this page here and add this.

--langdef=Actionscript
--langmap=Actionscript:.as
--regex-Actionscript=/^[ \t]*[(private| public|static) ( \t)]*function[ \t]+([A-Za-z0-9_]+)[ \t]*\(/\1/f,function,functions/
--regex-Actionscript=/^[ \t]*[(public) ( \t)]*function[ \t]+(set|get) [ \t]+([A-Za-z0-9_]+)[ \t]*\(/\1 \2/p,property,properties/
--regex-Actionscript=/^[ \t]*[(private| public|static) ( \t)]*var[ \t]+([A-Za-z0-9_]+)[ \t]*/\1/v,variable,variables/
--regex-Actionscript=/^[ \t]*[(private| public|static) ( \t)]*const[ \t]+([A-Za-z0-9_]+)[ \t]*/\1/v,constant,constants/
--regex-Actionscript=/.*\.prototype \.([A-Za-z0-9 ]+)=([ \t]?)function( [ \t]?)*\(/\1/ f,function,functions/
--regex-Actionscript=/^[ \t]*class[ \t]+([A-Za-z0-9_]+)[ \t]*/\1/c,class, classes/


With all this you are set, there is more features that you will really need but here is a list of my favorites.
doc ⇥ - Create an ASDoc block
⇧ ⌘ D - Open superclass
From the ActionScript 3 menu, Debug > Install / Edit Debug Player Settings
⇧ ⌘ C - Insert Color

Labels: ,

Friday, June 20, 2008

Feature request

I've added a feature request to fix SEO in the flash player, please vote if you feel it's a good idea.
http://bugs.adobe.com/jira/browse/FP-362

Monday, June 09, 2008

Hi,
Found this in a new JavaScript book (Douglas Crockford's 'JavaScript the Good Parts' [O'Reilly]) converted it to AS3 and wanted to
share, this little object blows my mind, read it over and I'll
explain below.


var myObject:Object = function() : Object {
var value = 0;
return {
increment: function (inc:Number = 1) {
value += inc;
},
getValue: function() {
return value;
}
}
}();

myObject.increment();
trace(myObject.getValue()); // traces: 1
myObject.increment();
trace(myObject.getValue()); // traces: 2


There's a few odd things here, we are able to persist the value of a
variable from inside of an object and run calculations on it. This is
the same thing as creating a class and then defining a class level
variable inside of it. We are then defining functions inside of this
returned object that can use these persistent variables.

Other odd things, notice the last line of the myObject definition. We
are executing the function right away, personally I never seen this
before but opens my mind a little further into the way that objects
interact and what calling a function really means.

This all runs in AS3 but if you go into this to deeply I personally
wouldn't want to step in and work on that code. I think this is more
interesting to show how objects can interact and what is happening
and how things can be passed around.

Thanks to J-C for sending this over to me. If you don't fully
understand it's cool but we should cover some of this at a fcny meeting
some day. There are other ideas in that book that will blow your mind even further
but I'll spare you for now, this one just has stuck in my mind and I
wanted to share.

-Tyler
Zemanta Pixie

Labels: , ,

Wednesday, April 23, 2008

Flash Coders NY MVC

I've been doing ActionScript sessions at the flash coders meetings and have come up with a simple MVC framework that is much easier to understand and explain then the standard things that you see out there. If you are looking for something to start with it isn't bad.
Download the files here!

Labels: , ,