November 12, 2008

So about these gathering cloud computing systems


Larry Ellison of Oracle thinks they're gibberish. Microsoft thinks they should look exactly like Microsoft products but skinned in the Clear October Sky. Sun thinks it's still a jump ball and would like your input . Amazon likes to call them by their Web 1.8 name: Web Services and Google thinks of them as just another engine for developing "do no evil" ... meanwhile a bunch cloud-minding developers flame each other into vaporocity over a TOS that claims "clouds should not and will not be owned". And yes, vaporocity.com was still available at the time of this writing.

As with a lot of tech buzzwords, cloud computing is fast becoming the one-size-fits-all-goto phrase for anything tech. And indeed Mr. Ellison was right in pointing out that cloud computing has been redefined to include everything we already do. But he fails to grasp or at least acknowledge that it's everything we already do to the nth degree ( at least for all practical purposes ). And for a fraction of the price to boot! So while Larry contemplates changing the verbiage in some of his ads, us developers should take a page from Thorsten over at rightscale.com to figure out where what we do on a day to day basis fits in because the bottom line, literally and figuratively, will someday reside in the cloud.

October 04, 2008

View From My Screen

Android_emulator

September 24, 2008

How Amazon Web Services needs to help Flex Developers

Or How Amazon Web Services can implement a Flash Proxy Service.

There’s been a thread at the amazon simpledb forums discussing that AWS should implment a crossdomain.xml file. I agree that AWS should open up their public facing services to flex developers by implementing a crossdomain.xml file however, simply implementing a crossdomain.xml file will not address the real problems of authentication and security.

The real problem facing flex developers is that it’s not secure to place your amazon secret key inside of a compiled swf. It can easily be decompiled. It’s been suggested that the best solution is to proxy calls through a server, such as an EC2 instance. For just wanting to store and recieve data in S3 or SimpleDB that is just way too much overhead.

The solution is for Amazon to implement a flash proxy service for flex developers. ( and silverlight )

  • Flex devs need to register the domains that are associated with thier access key. ( www.mydomain.com )
  • Flex devs then only need to send thier access key along with each request.
  • The amazon flash proxy service then verifies the domain the request is coming from is in the list of verified domains for that accessky and adds the secret access key to the request before sending the request on it’s way.
  • Any requests that come from domains that use an access key outside the list of domains gets denied.

 

AWSProxy

 

 

August 21, 2008

Amazon releases Elastic Block Store (EBS)

Amazon Web Services released Elastic Block Store recently, which will allow you to attach storage volumes for EC2 instances and essentially treat them as a local hard drive. The drives are unformatted, so you can manipulate them any way you want and there’s also the ability to create point – in -time snapshots to back your data up.

You can read more about it here.

 

 

 

July 31, 2008

Turning the page to Universal Mind

After 3 plus years of working for the Woodward Governor Company here in Fort Collins I am pleased to report that I’m taking a position with Universal Mind.

I’m gonna miss the guys from Woodward and at the same time I’m really excited and look forward to working with everyone from UM.

 

 

 

 

 

July 14, 2008

Loading Remote Modules in Adobe Air Applications

I do not mean for the following post to be a permanent solution. More than likely this issue will be addressed in future releases of the flex and air sdk’s. I just need something right now and have not been able to come up with a good working solution. In fact, I hope that someone smarter than I can come along and point me in a better direction.

 

Airmods

 

The Problem : You created an AIR application that you want to distribute and you want to load modules remotely over the network or the network. It offers advantages over using the air Updater classes, mainly you can update the module without asking the user to update the installation.

The Issues : Loading a remote module is a security issue.  I first tried to use an <mx:ModuleLoader> tag in my air application and pointed it to my local web server. It did not work. I thought it was a crossdomain.xml issue. and eventually stumbled upon this example

remote modules

Which is forcing a download of the crossdomain.xml. It did not work. My next attempt was to download the module and attempt to load it as bytes. I tried multiple variations of this, even tried saving the file to the  File.applicationStorageDirectory.  It did not work.

I came across these two articles as well:

Remote Plugins and Modules in AIR by Ethan Malasky

Loading Modules / Runtime CSS into an Air App by Dan Shultz

 

 

A Solution : What I finally settled on was using the HTML class in air to load a remote application and then talking back and forth using LocalConnection.

Air App

Module App  ( you can’t have this swf running on your machine if you want the Air app to work)

 

While it’s not a perfect solution, it did allow me to accomplish what I wanted to do. Load remote modules in air and talk back and forth As I said in the beginning of this post. I do not think this will be a permanent solution.

Final thoughts on LocalConnection class.

 –  you only need one local connection / swf. The swf connects to the name of the connection it wants to collect messages from. Other swfs just need to know the name of the connection to send to.

— you set the client = to the context you want the code to be run.

— the underscore “_” on a preceding connection name is a convention in the docs that allows you to circumvent having to know the domain. Otherwise it’s something like mydomain:connectionName.

— allowDomain(“*”) and allowInsecureDomain(“*”) allows you to define what domains can send messages to the receiving local connection.

 

 

 

 

 

 

 

June 29, 2008

Quick note on my europe trip

Spent the last two weeks in Europe and had a very excellent time. No “news” for those of you who might want to ask. I’ll explain myself later.

At any rate, for some background, I spent some time in 2001–2002 in Europe going to school in Paris and made alot of good friends. They are almost all IT developers/designers/managers and I found it quite odd that the big thing they talked about was whether or not “you were on facebook”. I mentioned twitter a few times and pretty much no one knew what i was talking about except a few people.  Things like friendfeed and brightkite where also unheard of and there was no equivalent those sort of emerging new networking sites that catered to French speaking people. Also, flex was well known but not widely adopted. Most of my French friends said that they were looking into using those technologies. Not sure if there is one, but Adobe needs a French speaking flex evangelist. (hint, hint).

A few other things of note is that the food there is still excellent if you know how to order. There seems to be twice as many “Metro Weirdos” than when I lived there and somehow I got some motivation to start a Cave.

 

 

June 12, 2008

Headed to Europe, Need Guest Blogger.

I’m headed to Europe for two weeks. I won’t be blogging but would be open for most anyone who would like to guest blog for me. If you keep a technology blog, email me a post. I’ll be checking email. I would be grateful and hopefully be able to return the favor in the future.

Cheers,

Brian..

June 06, 2008

Flex BreadCrumb Navigator with Degrafa

BreadCrumb

I was able to catch a degrafa connect session last month in Denver and have been tinkering part time with the framework since then and I had a need to put together a bread crumb (like-ish) navigator so I decided try and use degrafa skinning to get a better look and feel, and it was surprisingly easy! Go Team.

At any rate, this was my first attempt at a BreadCrumbNavigator. I used ComboBox’s, because the lists are gonna have to be filter-able, but for now that code isn’t complete, yet. And also parts of the style is defined in the skins, so I’ll pull them out.

Here’s an example.  Here’s the code.

Learn about Degrafa here.

June 04, 2008

Displaying Character Codes in Flex

If you are capturing keyboard events and want to display the Character Code as Text all you need to do is use String.fromCharCode( …charCodes ) as in the following:

private function  keyDownHandler(event:KeyboardEvent):void

{

textInput.text = String.fromCharCode( event.keyCode );

}

 

Don’t you just love searching and searching for something that should be real simple and then feel like this:

 

Punch