Flash-General
A few months ago I finally upgraded my cell phone and went for a Samsung Omnia from Verizon. Before I bought it I read some reviews on it and tinkered around with others in the store and it was one of those “lesser of two evils” things where I couldn’t find anything that was perfect so I picked something that sucked the least.
One of the things about the omnia that I didn’t like was it came with Flash Lite 2.1.. after 3.1 was released. Ah well. So I tinkered around some with packaging some little apps that I created and got 3.1 on it that way.. but it’s basically the “stand alone” player and not used for the browser. I don’t develop mobile apps for my day job, so this sub-par Flash support was more of a nuisance when I was browsing for fun and not something I really needed.
Well, last week I got around to looking at upgrading Opera and saw loads of articles hinting that the beta version would use Flash Lite 3.1.. I downloaded and installed it.. and it still had 2.1. oh well.. In the process of looking for info on the Opera beta I stumbled upon Skyfire. It gives me full Flash 10 (10,0,22,87) support on my little mobile phone. It has some pretty big quirks as far as UI (like entering text in Flash apps), but it’s nice to have another option.
So just for kicks I dug around and looked at some of my old performance tests and some other tests out there on the web.. and whoa.. I was shocked. My cell phone ran the tests faster than my old XP rig (which I was playing Half Life 2 on not long ago..). But on the graphics heavy tests it kind of freaked out.. an example is when I ran this test my little omnia was chugging along at 25fps and then sometimes it would jump to 30 or 35. It wasn’t smooth at all. When I added more objects for it to spin around things would get really exciting. The graphics would freeze up, then the Flash Player would rush to display everything. If I put 7 objects on there it would drop to 10fps for a few seconds, then zip up to 40fps, then stabilize at about 30fps for a few seconds, then drop back. But.. . . the ability to run Flash Player 10 on something I can fit in my pocket? Wow.
Now if the Omnia would just work a little better as a phone.. hehe.
While I was at FlashForward I had an interesting moment.. four of us sitting at a table were asked what one new feature we would wish for in some upcoming Flash Player. This isn't so unusual, but
Tinic was at my table. Umm.. so we kind of had an ace up our sleeve. Heh.
Macromedia and now Adobe have actually listened to a LOT of the requests from the Flash community (they've ignored a lot too, but we'll forgive them for now). So I gave it a few moments to sink in where I was, who I was with, etc...
My first response was "bi-directional text" .. which the others at the table quickly said "it's coming".. and I said.. yep, I've worked with it and I think it's going to be huge and
thanks a ton. That would be the one feature that imho will have the biggest impact on my day to day work for quite a while. It's a huge new feature. I asked for it for years and it's finally coming. I got to thank someone who was directly responsible for making it happen and that's a very rare and cool thing.
My second response was something that I'm sure has been heard a lot in the last couple of years. Flash is getting onto mobile devices at a rapid rate, and many of those mobile devices are GPS enabled. If Flash could provide an easy way for designers and developers to access GPS data then we would see some very cool location aware applications on mobile devices. Sure there are security and privacy risks to be dealt with. Sure it would mean extra weight for the Flash Player.. but it could lead to some fun stuff. And as we saw and heard at FlashForward.. it's all about having fun.
I know getting GPS into Flash (or AIR) is possible already but.. ummm.. here,
go take a look at what Andrew Powell blogged about on Saturday.. watch the video and you'll see what it took for him to get GPS data into AIR. It's very, very cool, but probably more than most Flash designers want to undertake. Bill Perry
wrote an article a while back about getting GPS data into Flash, but it involved saving the data out to a text file and a few other steps..
Even Mike Chambers had some fun with GPS and AIR for the AIR bus tour.. and gave info about it under "
Describe the project in which you have used the most advanced technology". If it's advanced technology for him.. then it's probably something that could be made easier for us mere mortals.
On the way home from FlashForward I thought about the question a bit more. Is there anything else that I'd rather see? I have a long list of little things that I'd like to see fixed or added, but those have already been listed many times by others (and myself). My day to day work wouldn't really benefit from a location aware Flash Player but I still think it's a feature that could propel the Flash Player onto more devices... especially since
Adobe opened up the licensing for custom devices. Ahem.
There is one other feature that I'd like even more, but I'll hold onto it until another day.
Ok, every once in a while I have to work on my laptop and use the Flash IDE on a single monitor and feel like I'm looking through a straw. The laptop has a nice large screen (1920 x 1200) but I'm used to a bit more..

So when I was talking to a fellow Flash developer the other day and heard him say he works on a 1024x768 monitor I almost choked. Whoa.. that's like looking through a straw.
I normally work on Flash on a desktop that measures 3840x1024, and when I have to go back to a single monitor setup (my laptop) for some reason it makes me realize that using multiple monitors isn't a luxury, it's a requirement. Being able to have panels in Flash, Fireworks, or Dreamweaver spread across more than one monitor doesn't cost that much these days. If you're using Windows XP then all it takes is an extra monitor and an extra graphics card. Shoot.. most graphics cards now support dual monitors so you may be able to use just one card. Nice 19" LCDs can be had for less than $250/ea if you watch for sales, and places are just about giving away CRTs these days. The benefits of being able to have code, browser window, help panel, etc.. all open side by side are just huge. Apps like the the Flash IDE, Fireworks, Dreamweaver, etc that have panels that can be undocked and spread across multiple monitors are just awesome for this setup (especially if that library panel stays where I put it).
Anyway, this reminds me that a long while back somebody posted a picture of their workspace and others posted what their setup looked like. I'm hoping that others will post comments with images of their development systems and maybe, just maybe we'll convince some folks to put down the straw.
Friends don't let friends work on Flash on a 1024x768 desktop.
In the image above you'll see one 19" CRT (so I can change resolution down), and two 19" LCDs.. the CPU is in a big closet about 15' away (so it's silent), and the laptop is used for e-mail and IM mostly. I use a Logitech MX1000 wireless laser mouse (some of the best $ I've spent in a while on computer junk), and the two LCDs are Neovo F-419s (cheap, and a good image). There's a big Altec Lansing subwoofer in the corner behind the desk. I can crank it up and put my feet on it for a foot massage. heheh.. I used to do the KVM thing with a server and another PC running in the closet, but I've simplified and now mostly just have the one "dev" PC running.
Over the years I’ve been asked “what’s the limit on the length of string we can send into your SWF? And how slow is Flash at handling that little chunk of data?”.. and it’s usually so infrequently that I forget from one time to the next (hmm.. memory loss.. I’m getting old!) So I sat down last night and searched around and gathered up what I could find.. and put together a page with examples. So here it is.. the next time somebody asks me how fast I can send 2Mb of data into a SWF from JavaScript I’ll know the answer… I hope..