Archives Posts

What it DU? (WebDU report back)

March 29th, 2007 by Caleb

Recently, I was fortunate enough to speak at WebDU (Web Down Under), “A rock concert for geeks”. WebDU is an Australian based web conference which boasts the highest speaker to attendee ratio of any major RIA/Web 2.0 conference. The conference itself was exceptional. I had the pleasure of speaking alongside some of the most recognized and inspirational personalities in the industry, including Jesse Warden, Mike Chambers, Mike Downey, and Ted Patrick, to name a few of my American counterparts who attended. Of course, I also had an opportunity to meet some awesome Aussie developers. I was most impressed by Scott Barnes, Lachlan Hardy, Collis Ta’eed, the guys from Nectarine, and the entire team from Daemon (whom also happen to be the conference organizers). It was also nice to see and meet Brandy Fortune, the first woman that I’ve ever seen speak at a conference (I’m excluding Lynda Weinman, the woman behind FlashForward because she is in a class of her own :-) ). Brandy gave a great presentation on usability for designers and developers, you can read a great review of it here at flashmagazine.com.

I spoke on using Yahoo! APIs in Flash. I ran through the latest and greatest offerings from the Yahoo! Developer Network, including the recently revamped search SDK , the awesome AS3 additions by Alaric Cole (Alaric, if you have a blog please let me know, I couldn’t find it), and the latest book to make it to press by Yahoo’s Charles Freedman. I also covered security, best practices, and some real-world implementations of using web services. I also made mention of VUVOX, an awesome startup I have been working with for the past few months alongside a slew of other media & web rock stars. I’ll be blogging in greater detail about VUVOX later.

The conference was freakin’ amazing. The food was spectacular, the accommodations were immaculate, and the general vibe of the community was electric. It was fun (re)connecting with familiar (and some not so familiar) faces from Adobe. The guys from Nectarine sort of took me in and we hung out like we’ve known each other for years. Lachlan and I also spent quite a long time just conversing and sharing ideas… what a blast. After the show I hung out with an engineer from Yahoo! AU, which was cool. We conversed on ways to help Yahoo! embrace and harness the power of Flash and related platforms, which hopefully he can succeed in achieving or at least influencing. My flights to and from Sydney also stopped over in Honolulu, so I had to spend a few nights in Waikiki (hey, it’s a tough job … but somebody’s got to do it ;-) )

I’ll be posting my WebDU presentation materials and code shortly, and writing the blog posts that my audience demanded soon … so stay tuned. Sorry for dropping off of the blog thing for a while, I was just too busy to have time to think. However, I’m back and better than ever, and look forward to sharing my ideas and humble perspective with the community for a long time to come.

Peace.

WebDU

Digg It | Add to Del.icio.us

Archives Posts

!Adios, Yahoo!

December 6th, 2006 by Caleb

I haven’t blogged in a while, with good reason - I have more things going on than I care to mention. But let’s just say I’ve been terribly busy :-)

This past Monday was my last day at Yahoo!

I really can’t say enough about Yahoo!, the people there have made my time there one of the most interesting and fun time periods of my life. I’ve met some of the most brilliant minds, worked on some interesting products, got some perspective on how a gargantuan company operates, and walked through doors that only a large company can open. I will forever be grateful for the opportunities that Yahoo! has provided me, and for the privilege of working with such talented people.

Thank you to all my friends at Yahoo! and other Yahoo! Alumni who have supported me and my ideas, tolerated my craziness, and most importantly, been my friend. It has been an honor working with you, and I am looking forward to remaining friends and colleagues.

I’ve had a great at Yahoo!, and now I’m excited about the opportunities my new career path is providing me. If you happen to be a Yahoo! employee reading this or someone I met while at Yahoo!, by all means send me a linkedIn request and make note of my personal email address (me at caleb.org). Also, if you happen to be a Flash/ActionScript engineer or designer, please join my Flash Peers mailing list too

I can’t exactly say where I’m going to be working next, as we are still in stealth mode, but I can tell you that it is a San Francisco Bay Area startup with awesome potential. Not only that, but the team itself is comprised of some of the most talented people I have ever met, including every Flash coders hero: Quasimondo - Mario Klingemann. If you’re really interested, check out the demo conference in January/Feb, we’ll be there.

Digg It | Add to Del.icio.us

Filed under Caleb, Yahoo! w/ 3 Comments »

Archives Posts

Full Sail - A factory for professional talent

November 17th, 2006 by Caleb

I spent the majority of last week in Orlando evaluating 2 different Bachelor of Science degree program offerings from an interesting school named Full Sail. At present, Full Sail has degrees in Computer Animation, Digital Media, Entertainment Business, Film, Game Design, Recording Arts, and Show Production & Touring. I was invited to evaluate the new degree pertaining to Web Engineering, but also participated in the Digital Arts and Design curriculum evaluation as well.

I have to say, I was pleasantly surprised by and entirely impressed with Full Sail. They are working hard to create a unique, energetic environment that supports creativity and encourages participation. The staff, equipment, and curriculum are personalized and professional, with a substantial amount of focus placed on independent development and self-determination. The school has a very distinct mandate, graduating professionals who are capable of hitting the ground running and positively influencing whatever company has the wherewithall to offer them industry positions. Perhaps most impressive is their job placement rate, which amazingly is above 80%!

Full Sail is definitely a viable option for someone looking to learn cutting edge, well rounded skills for today’s media industry … and no, I was not paid to say any of this :-)

Digg It | Add to Del.icio.us

Filed under Caleb, Speaking w/ 13 Comments »

Archives Posts

Flash Video gets an Emmy

November 7th, 2006 by Caleb

Macworld has reported that Adobe will receive a technical Emmy for their development of Flash Video:

Adobe Systems noted that it has won a Technical and Engineering Emmy Award from the National Academy of Television Arts and Sciences for the development of Flash Video.

The award for Streaming Media Architecture & Components was announced this week, but it will be formally delivered to the company during a ceremony planned for January’s Consumer Electronics Show (CES) in Las Vegas, Nevada.

Flash Video enables users of different computer platforms, including Mac OS X, to view streaming video over the Internet using Adobe Flash Player software, which the company claims is installed on more than 700 million Internet-connected computers and handhelds.

Flash Video is used by Web sites like YouTube and MySpace, and is also utilized by companies including ABC and NBC to deliver video via the Web, according to Adobe President and COO Shantanu Narayen.

“Flash Video is fundamentally changing the role of video on the Internet, and this prestigious award is further proof of this technology’s profound impact on how broadcasters deliver their content,” said Narayen.

- Peter Cohen

Thanks to Jeffery Bennett for the link :-)

Digg It | Add to Del.icio.us

Filed under Caleb w/ No Comments »

Archives Posts

More Yahoo! Search ActionScript Examples

November 5th, 2006 by Caleb

Firdosh, a developer from the ydn-flash group put together a Yahoo! search demo using the YahooAPI classes I authored, you can check out his example here: http://seas.mgmt.purdue.edu/~firdosh/YahooAPI/bin/CustomItemRendererExample.html

His app totally reminds me of an AS2 Yahoo! Search example i put together a while back when YDN was still forming, you can check it out here: http://caleb.org/yahoosearch-as2.php

Firdosh also created a YahooImageSearchResult class that extends YahooSearchResult and provides access to the thumbnail and filesize properties of the result. Thanks Firdosh! :-D I’ve updated the YahooAPI code available here and your class is included.

It reminds me of a conversation Ted Patrick and I had a Yahoo! hackday. Ted mentioned how easy it would be to make ActionScript abstraction layers for all of our web services, and trust me … if it was my job, it would be done by now. However, it is not my job (i work on the Media Innovation Group for Yahoo!, all of the YDN stuff i do is done on my own time, under my own accord).

The YahooAPI code was originally checked in to sourceforge, under the project name ‘actionscript’. I also have SVN available on caleb.org, but I haven’t checked any code in as of yet. If anyone is interested in collaborating and making this code stronger, please let me know and i will set up the repositories. I would just do it now, but i’m moving this weekend, thus i’m too busy packing and whatnot to nerd out too hard.

At any rate, thanks for the contribution Firdosh … holla if you’re looking for a job ;-)

Digg It | Add to Del.icio.us

Filed under Caleb, Yahoo! w/ 2 Comments »

Archives Posts

Updated AS3 Yahoo! Search API library and CoilGallery Search Mashup premiere

November 3rd, 2006 by Caleb

The latest flash Beta bits, and a programmer named firdosh both illustrate the fact that my YahooAPI classes had a few problems.

I have addressed those issues, and everything works fine now.

In order to exemplify this, i actually decided to mashup the CoilGallery code senocular released.

The app is definitely a prototype, and there are at least 3 known issues w/ the search implementation:

  1. i am not properly handling image load failures, so in the event of an image load failure, the app basically stops loading images
  2. there is some debug output, but ignore that for now
  3. the search term (”jamaica”) is hard coded

I will address all of these issues when i have time .. for now, just consider it a proof-of-concept.

http://caleb.org/coilgallerysearch.html

The source for the above code may be found here:

Thanks Senocular, your code whips the llama’s ass :-D

As always, any additional feedback is appreciated :-)

Digg It | Add to Del.icio.us

Archives Posts

Halloween @ Yahoo! Research Berkeley

October 31st, 2006 by Caleb


the real costumes.

This is just a quick pic of myself, Gina, and Peter from YRB being silly on halloween. My mother (a.k.a. the sweetest, most kind-hearted woman in the world… and my hero) worked pretty hard getting my Akhenaten costume ready. She actually hand-made it from scratch; she is such a genius . She even went as far as to provide my girlfriend a Nefertiti costume to match my own.

Thanks Mom! I absolutely love you more than anything in the world.
(I know Halloween isn’t usually the chosen day for giving praise to one’s mother, but she certainly deserves it. )

If you have the time, feel free to check out my Flickr photostream.

Happy Halloween!

the real costumes” Originally uploaded by meandmybadself.


Digg It | Add to Del.icio.us

Filed under Caleb w/ No Comments »

Archives Posts

Flash Remoting: Error-proofing the Connection class

October 19th, 2006 by Caleb

We all love Flash Remoting (and in particular AMFPHP). We ambitiously defend this new paradigm of RIA communication, emphasizing it’s numerous advantages and the significant, immediate benefits we can achieve by introducing remoting techniques into our code.

However, as Jeffery Bennett recently pointed out to me, the Connection class does not dispatch onStatus events if the gateway is inaccessable for whatever reason. This posting shows you have to add this capability with a few simple lines of ActionScript, giving you the ability to elegantly handle such errors.

This is how you would typically construct a simple method call using AMFPHP:


import mx.remoting.*;
import mx.rpc.*;
import mx.remoting.debug.NetDebug;
var gatewayUrl:String = "http://dev.caleb.org/amfphp/gateway.php"
var service:Service = new Service(gatewayUrl, null, 'HelloWorld');
var pc:PendingCall = service.say("Hello world!");
pc.responder = new RelayResponder(this, "handleResult", "handleError");
function handleResult(re:ResultEvent)
{
trace('The result is: ' + re.result);
}
function handleError(fe:FaultEvent)
{
trace('There has been an error');
}

The Connection class is typically employed by the Service class. If you inspect the signature of the Service class constructor, you’ll notice that the 5th [optional] parameter is the responder.

Service ( gatewayURI, logger, serviceName, conn, resp)

The first example doesn’t employ that handler, and even if one where to pass a responder, it wouldn’t receive error event dispatches. The Service class documentation states, “The resp parameter allows you to specify the responder object that contains the result and fault handling methods that receive control when the service returns a result or a fault condition.”

The problem is, the Service class doesn’t receive a fault condition if the Connection’s gateway creation fails. The Service class assumes that the Connection class has a gateway that is online. Of course, there is no guarantee that this can happen; it’s obviously a potentially erroneous assumption.

In order to error-proof the call, we need to make 2 simple changes to the Connection class, and 1 simple change to the Service class (in addition to passing a valid responder in as the 5th arugment to the Service class).

Changes to the Connection class:

Change to the Service class:

Following is the actual code we had to modify:

Connection class:

  1. Added 1 line to constructor
  2. AsBroadcaster.initialize(this);

  3. Added onStatus method which dispatches onStatus events using ASBroadcaster

  4. public function onStatus( status ):Void
    {
    trace('[Connection Class] onStatus invoked');
    this.broadcastMessage('onStatus');
    }

Service class:

  1. Added 2 lines @ Line 73

  2. __conn.addListener(this);
    __conn.addListener(__responder);

The “error-proof” example below shows you how to modify both the Service class and the Connection class (Note: I intentionally broke the following code in order to ensure that the onStatus method is invoked. If you want to see it work properly, change the “pdhp” to “php” in the gatewayUrl variable declaration):


import mx.remoting.*;
import mx.rpc.*;
import mx.remoting.debug.NetDebug;
var gatewayUrl:String = "http://dev.caleb.org/amfphp/gateway.pdhp"
var service:Service = new Service(gatewayUrl, null, 'HelloWorld', null, this);
var pc:PendingCall = service.say("Hello world!");
pc.responder = new RelayResponder(this, "handleResult", "handleError");
function handleResult(re:ResultEvent)
{
txtFeedback.text = 'The result is: ' + re.result;
}
function handleError(fe:FaultEvent)
{
trace('error');
txtFeedback.text = 'There has been an error';
}
function onStatus( status ):Void
{
trace('onStatus invoked')
}

The files are available for download here: http://dev.caleb.org/download/code/ErrorProofRemotingConnection.zip

I would love to hear any feedback anyone might have :-)

Digg It | Add to Del.icio.us

Archives Posts

Now hosting on DreamHost (thank you SourceForge)

October 15th, 2006 by Caleb

DreamHost gives you 200 gigs of storage, 2 terabytes (!) of bandwidth, unlimited subdomain hosting, and a plethora of other useful services for less than $10/month. Hard to beat that.

I have been hosting caleb.org on SourceForge since April 26, 2001. Sourceforge has been, and will continue to be an integral element of my development paradigm. However, as of late the webservers have been lagging a bit (it’s understandable, considering how fast they grow) and thus I have switched over to DreamHost, which has proven to be an amazingly affordable and reliable webhosting company.

The DreamHost offices are located in the same building (i.e. datacenter) as some other very high profile hosting companies, including MediaTemple and MySpace, so they have a nice redundancy plan in place in case of an emergency.

Also, I’ve set up a special promo code that will allow you to set up a new hosting account with them at a substatially discounted price; the promo code is: caleb__yahoo

Digg It | Add to Del.icio.us

Filed under Caleb w/ No Comments »

Archives Posts

FITC Report Back

October 13th, 2006 by Caleb

Last week I had the opportunity to join Yahoo! Maps’ Charles Freedman in presenting at the Flash in the can festival (FITC). We were presenting at the same time as Joshua Davis, so attendance at our presentation was minimal. However, we had fun talking with the people that managed to show up :-)

Chuck spoke about marketing concept using the Yahoo! Maps Flash API, and I pitched in by talking about some of the things Yahoo! is doing with Flash, including our FLV Video Remixer, Stats tracking applications, Finance Charts, and of course the Yahoo! Developer Network Flash Center which uses Yahoo! APIs from various Yahoo! properties.

I had the chance to hang out with some cool people, like Daniel Dura (it turns out his brother works at Yahoo! too, go figure), the guys from Metaliq, some people from Goodby, Silverstein & Partners, and the authors of Red5, a kick-ass open source Flash streaming server.

Honestly, I didn’t get the chance to see any really interesting presentations. I was only there for Thursday, and it was a Thurs-Sat conference, so I missed most of the fun stuff. I wasn’t there for Mario’s, but I heard he rocked. Chuck and I spoke at the same time as Joshua Davis, so I missed his too… but I heard he was great. At any rate, I’m still looking forward to the next one.

On that note … I also spoke to Shawn, the FITC conference organizer about potentially presenting at FITC in the future … so stay tuned ;-)

Digg It | Add to Del.icio.us

Filed under Caleb, Speaking w/ 2 Comments »

« Previous Entries Next Entries »