Friday, November 30, 2007
Friday, November 30, 2007  0 Comments     

I was tooling through some XBox 360 demos when an MSN message came through. "Convoq is dead." Wow. I haven't worked there for a long time, but the company kept trying to re-invent itself (first it was Applied Messaging, then Convoq, then Zingdom), trying to package up some code that was written to come up with new product offerings, or try to manage to come up with some ideas to code to.

I got to meet a few great guys/developers there whom I am still i touch with today. Alan, Alexis, Dan, Patrick!, Onur, Rajeev and Tonytip. I learned a lot from those guys. In the hey-day of the company, we often stayed late and killed each other playing Unreal Tournament. It was all code, free sodas & Perrier, and lots of fun. Some saw the writing on the wall though, and they departed. I left. One of the writers there died. Those that departed consulted back. A CEO was replaced. The product changed. Another CEO was replaced. Finally one of the bigtime developers who was still left quit, and that was the last straw. Now the thing is dead. No details, but the VCs must have seen enough already. Too bad, it was a cool place to work for a while. I got to work in a real software development environment, I got to be build engineer a bunch of times, got to see how people in the industry handle things, I got to meet and get to know Jeremy Allaire too. That's super cool. Worth the job right there. I got to work with one of the software engineers that helped to create LiveMotion 2!

So now there is a chance to score some cheap hardware before the auction. Maybe have a party for all those who worked there. Cya Convoq. You lasted a whole lot longer than many ever thought it would. I have a ton of funny, scary, depressing, and frustrating stories... as I'm sure many who tool around in the bowels of a startup can attest to. A story in the inevitable production in futility. A great team of developers all traveling in different directions. I think it would make for outstanding reading. I wonder if I should pitch it.
Thursday, November 29, 2007
Thursday, November 29, 2007  0 Comments     

The gentle acoustic genius of one Martin Barre and the perfect vocals of Ian Anderson shall prepare me for tonight's hoarding of chips.

Clear light on a slick palm

as I mis-deal the day

Slip the night from a shaved pack

make a marked card play

Call twilight hours down

from a heaven home

high above the highest bidder

for the good Lord's throne

In the wee hours I'll meet you

down by Dun Ringill ---

oh, and we'll watch the old gods play

by Dun Ringill

We'll wait in stone circles

`til the force comes through ---

lines joint in faint discord

and the stormwatch brews

a concert of kings

as the white sea snaps

at the heels of a soft prayer

whispered

In the wee hours I'll meet you

down by Dun Ringill ---

oh, and I'll take you quickly

by Dun Ringill
  0 Comments     

Today I spotted an image posting on my Facebook Superwall... the official logo of The Men of Rohan order from Myth & Myth 2. I rendered it in Infini-D back in 1997-1998, I modeled everything including the skull (back then that was a pretty decent amount of work). So cool that one of the MoR members kept onto that thing for so long and sent it along.

M.O.R.

What a nice blast from the past. I hope that Bungie buys back the rights (Myth 3 killed the series it was so horrible) and gives us a new version. I imagine another Marathon might be around the corner too... that was a superb series too. I still have all the Marathon games in their original boxes (Marathon Infinity came in a really unique silver-foil box) and all of the Bungievision newsletters they sent to me. Used to hang with them at Macworlds a million years ago.
Wednesday, November 28, 2007
Wednesday, November 28, 2007  1 Comments     

Well, even if you might only sorta want a free copy (VS is one of the things that Microsoft has gotten right), you can attend that TheCodeTrip thing and snap up a free copy when they become available. Silverlight aside, thats a pretty sweet deal. Check out Tim's blog to find out more.
  0 Comments     

ATT has created a marketing campaign with an offshoot to it - they created a site that allows you to enter up to three places you "live" and it combines them into a single place name. Hobbiton, Bree, Rivendell = Hobbreedell.

And you can get that on a tshirt. Problem is the shirts start at $17.95! If I'm turning myself into an AT&T billboard, I'm not going to be paying that much to do it. Although, if this was an Apple garment, I'd probably do it. AT&T just doesn't have the same sex appeal to me ;) Maybe I'll opt for a $3.99 bumper sticker that I'll never put on a bumper.
  4 Comments     

So Ice Cube has recently stated that "Flash is outta here" in regards to the use of Silverlight in his uvntv.com offering. I don't believe for a moment that he is stating that Flash is going to die, that Flash isn't a viable solution anymore, or that Flash isn't a superior technology any longer. I think he is simply stating that they aren't going to deploy Flash.

Ice Cube probably walked into a situation where they developers drove a lot of the emotion (and if Microsoft were smart, would pay for the CDS if they in fact used Silverlight), and they got him jazzed about using Silverlight. If I didn't know a whole lot about RIAs and web technology, and my guys were telling me that Silverlight was awesome and provided a much better experience, I might say the same kind of thing. I visited the site, and I am currently underwhelmed. Maybe this will provoke a little more Silverlight penetration. Who knows.

Ice Cube *also* mentions that this thing is going to put network television out of business. Does he take himself seriously? Doubtful. Boastful? Yes. Crazy? Yes. Trying to drum up some excitement for his project? Absolutely. Let him enjoy his own Kool-Aid for a little while.

We all know better.
Tuesday, November 27, 2007
Tuesday, November 27, 2007  2 Comments     

I cam across a really cool looking (and seemingly very easy to use) KVM switch from Belkin called "Flip" (with audio). The scenario I am looking at here:

One Mac Pro connected to a big Dell flatpanel, and a PC (proper, not BootCamp) hooked up to the KVM switch, and hooked up to another Dell flatpanel. I should in theory be able to switch one of the Dells back and forth between Mac and PC (either gaining a palette monitor for the Mac, or using the PC as well as the Mac).

Does anyone have any experience with this KVM switch? I see this will pass around audio too, which is nice since I wouldn't need to double up on desktop speakers (clutter).
  3 Comments     

I am spec'ing a new Mac for work and had a question about RAIDs in particular. Its a lot more expensive to set up a RAID (card and drives, etc)... is this worth it only if you're working with a lot of large assets (like huge RAW images and video footage)? I know RAID can provide multiplicity in files (mirroring data), but if I simply set up an internal drive for TimeMachine, doesn't most of the appeal of RAID go away (if I am not using huge files)? Is there simply some geek-cool factor about having a RAID in the box? Think it might be overkill for me, but wanted to collect some opinions on the matter.
  7 Comments     

Saw this on the aggre's this morning, and I want to post another link to it, Arthur Debert has released a really cool AS3 class he calls BulkLoader. It's implementation is pretty nice, some sample usage code:
import BulkLoader;
var loader:BulkLoader = new BulkLoader("main");
loader.add("bg.jpg");
loader.add("config.xml");
loader.add("soundtrack.mp3");
loader.add("intro.flv");
loader.addEventListener(BulkLoader.PROGRESS, onProgress);
loader.addEventListener(BulkLoader.COMPLETE, onComplete);
loader.start();

function onProgress(evt : BulkProgressEvent):void
{
trace(evt.percentLoaded);
}

function onComplete(evt:Event):void
{
var bgBitmap = loader.getBitmap("bg.jpg");
addChild(bgBitmap);
var video : Video = new Video();
video.attachNetStream(loader.getNetStream("intro.flv"));
parseConfig(loader.getXML("config.xml"));
}
Without looking at the support class(es) yet, I assume that it goes through in the order which you added the assets. And you can use keys on retrieval (very nice). Well done, this looks like a really nice direction to take for loading in lots of assets (ie. sites and also larger applications).
  1 Comments     

Coming in at number 10 on C|Net's Top Ten terrible tech products is: Microsoft's Vista.

I am a well-known Apple fanboy, but I think its a little harsh to lump Vista in with the Gizmondo and Apple puck mouse. I do have a copy of Vista (Business I think) sitting in its packaging waiting for installation on my MacPro - but I have been holding off because XP does what I need it to do.

What are your thoughts on Vista? I mean, it can't really be THAT bad can it?
  0 Comments     

Here is a simple class that allows you to use POST and GET to return XML data from a URL (budget webservice). It works really well, you can just extend it by adding your own required methods, or you could set it up with one generic method that supplies the event type, etc. and you could send it an object with properties instead of specific arguments (so you could loop through and inspect them).


import mx.utils.Delegate;
import mx.events.EventDispatcher;

/**
XmlConduit Class
Written by Eric E. Dolecki
Version 0.1

A simple AS2 class that makes it easy to use GET and POST calls to
a URL (passing optional params) that results in returned XML data
(and an error should supply error-case XML back too [optional server-side]).

------------------------------------------------------
Sample Usage
------------------------------------------------------

import XmlConduit;

var myConduit:XmlConduit = new XmlConduit();
var conduitListener:Object = new Object();

myConduit.addEventListener( "loginResult", conduitListener );
myConduit.addEventListener( "genericError", conduitListener );

conduitListener.loginResult = function( evtObj:Object ):Void
{
trace( "XML returned: " + evtObj.data );
};

conduitListener.genericError = function( evtObj:Object ):Void
{
trace( "Generic error: " + evtObj.data );
};

function login( sUserName:String, sPassword:String, sType:String ):Void
{
myConduit.login( sUserName, sPassword, sType );
};

// POSTS are URL encoded by default if memory serves me correctly.

login( "User", "1234", "POST" );

*/
class XmlConduit
{
private var __owner;
private var replyXML:XML;
private var send_lv:LoadVars;

function dispatchEvent() {};
function addEventListener() {};
function removeEventListener() {};

// Change this URL to suit your needs. It can also be set with the setter method.
// Keeping URL strings in the main class here is for convenience, its still generic
// enough with the setters to be able to use this for whatever URLs you'd need.
private var sLoginURL:String = "http://someurlgoeshere.com/api/";

function XmlConduit()
{
__owner = this;
mx.events.EventDispatcher.initialize( __owner );
replyXML = new XML();
send_lv = new LoadVars();
};

//////////////////////////////////////////////////////////////////////////// Private Methods (Change these to suit needs)

private function doLogin( sUserName:String, sPassword:String, sType:String ):Void
{
replyXML = new XML();
replyXML.ignoreWhite = true;
replyXML.onLoad = Delegate.create( __owner, loginLoaded );

if( sType != "GET" && sType != "POST" )
{
sType = "POST";
}

send_lv = new LoadVars();
send_lv.username = sUserName;
send_lv.password = sPassword;

// sLoginURL could be built up from base URL (sLoginURL) plus params sent with it, etc.
send_lv.sendAndLoad( sLoginURL, replyXML, sType );
};

private function loginLoaded( success:Boolean ):Void
{
if( success )
{
dispatchEvent( {target:__owner, type:"loginResult", data:replyXML} );
} else
{
dispatchEvent( {target:__owner, type:"genericError", data:replyXML} );
}
};

//////////////////////////////////////////////////////////////////////////// Public Methods (Change these to suit needs)

/**
*
* @param sUserName
* @param sPassword
*/
public function login( sUserName:String, sPassword:String, sType:String ):Void
{
doLogin( sUserName, sPassword, sType );
};

/**
*
* @param sValue Setter for the loging URL string
*/
public function set loginURL( sValue:String ):Void
{
sLoginURL = sValue;
};

/**
*
* @return Getter to return the login URL string
*/
public function get loginURL():String
{
return sLoginURL;
};

}
I hope that some find it useful. Its a decent utility class.
Monday, November 26, 2007
Monday, November 26, 2007  3 Comments     

Anyone else notice that FrontRow now fades in from black instead of that cool desktop/FR transition in Leopard? I wonder if thats because TimeMachine uses that transition instead now.

I miss the old way, but the new way still works fine enough. It just doesn't have the same sense of pizazz.
  6 Comments     

Quicklook in OS X Leopard is very powerful and a great time-saving feature, but it doesn't work for SWFs out of the box. There are developer notes and programming guides for hooking it into things other than what Apple has provided.

On the face of it, I'm not sure how to approach a SWF... one could pull out a "single page" vector document preview for a SWF? But at what point does a SWF become recognizable... is frame one good enough, especially when you're talking about programmatic UIs, etc.

I'll be digging through the docs to see if something might be possible in order to generate Quicklook previews for our beloved SWFs, but this may be above my head. Someone at Adobe might know the answer immediately and may already be addressing this internally in their respective departments, if so please leave a comment or note about the general viability of getting some kind of SWF representation with .swf files.

Update: found this, has some FLV, etc.
Sunday, November 25, 2007
Sunday, November 25, 2007  0 Comments     

Verizon FiOS continues to make me smile -- and I've been seeing more routers popping up in my wife's Macbook Airport menubar widget. You can tell they are Verizon's as they have 5 characters for the name (all CAPS letters/numbers combination which can't be changed) and they all have WEP turned on.

I currently have a total of eight routers in the list (two of these are ours (one Verizon, the other Airport Extreme)), and one of them is next door (they actually named their router the same as their street address which isn't very smart... in addition to no security at all).

The houses in our neighborhood are by no means on top of one another, the range on these puppies is quite nice, which I'd assume means that FiOS is really taking hold around here... none of that shared bandwidth line crapola. Hope everyone had a great Thanksgiving. I spent a lot of mine sick, but that seems to be ebbing. Welcome Monday.
Monday, November 19, 2007
Monday, November 19, 2007  3 Comments     

Adobe, one can create gradients in Flash and Fireworks where one of the colors can have transparency. Illustrator provides a workaround, but can't it be the same for you too? It's much more intuitive in Flash for my tastes.
Sunday, November 18, 2007
Sunday, November 18, 2007  0 Comments     

New house. We aren't quite finished emptying the cardboard boxes, but we've made quite a dent in the amount of work required. Our house laughed at us while we moved, consuming everything we threw at it. That was a wonderful experience. Furniture that was almost squeezed into space in our old house now breathes freely and easily.

Verizon came on a Saturday and hooked us up with phone/internet/television and after a bum junction box, a bum digital cable box, and a bum HDMI cable, we've got sweet HD on all three floors. The FiOS speed is wicked, the HD is great (although the interface is kinda like the 360... fine when you don't need to dig deep, bad when you do), and no complaints about the whole installation.

The downstairs office (finally a true, proper office) is the digital hub... containing two wireless routers (one Airport Extreme and one provided by Verizon) provide wide coverage across the house. The new Leopard screensharing thing basically allows me to work on the machine in the office from the laptop, and the same in reverse). Super sweet. Back to my Mac is set up as well, opening the accessibility even further.

I'm running HDMI for video only and component for audio (through some Rhymeswithnose equipment) for a truly great experience. I ran the cables through the intake ducts in the HVAC system (through custom wooden grate covers) to hide all the rear channel wires running to the bass modules. I have yet to really open up the 5.1, but Halo 3 and other stuff is simply stunning on this thing.

So the dust is settling here and its time to concentrate on other stuff (as this move has really consumed a lot of time, energy, and free time). Code here we come ;)
Saturday, November 10, 2007
Saturday, November 10, 2007  2 Comments     


Yesterday our group at work went to the Institute of Contemporary Art in Boston (on the waterfront next to Anthony's Pier 4 Restaurant). The show we went to see was "Design Life Now" -- graphics, technology, architecture, etc. The exhibit included a small section of Joshua Davis' posters (4 of them) and a tiny 12" flat panel running a Flash piece. Pretty cool.

I prefer Jared Tarbell's stuff, but I like Joshua's stuff too. I took several photos with my camera, but I don't have any editing software here mobile at the moment.

They had several of those maquette things from Pixar's The Untouchables, Cars, and Ratatouille. A few were signed. Nice.

Also, there was a small section of wall devoted to Make magazine (Phillip Torrone)... it was cool to see that there too. Two people I have met and talked with in a museum of contemporary art.

Anythony's Pier 4: dumpy old furniture, a huge wait staff wearing stained white jackets that don't fit trying to look like sailors. The food: meh. The speed of service: good. In general, avoid this place as its expensive, the vibe dusty and cruddy, and the food is only so-so. The only good thing about it is the view of the water and the airport.
Friday, November 9, 2007
Friday, November 9, 2007  0 Comments     

I had the distinct privilege to have worked with a superior mind, but he has since moved on to work at Google's HQ doing all kinds of advanced server programming and magical stuff that keeps Google's online services humming along.

A Carnegie Mellon graduate of Computer Science (far better than MIT), we got to work together on a few projects directly and it was a joy to have been able to do that and to get to know him, and ultimately to call him a good friend.

Hailing from Western PA (near Pittsburgh), he's a native who I directly relate to because I am from the same area. Anyway, I received this letter from him yesterday:


If you can't read it because of its size presented here, it says
"I hope all is well in MA.
Please enjoy the Steelers crushing the Pats.

Best, Andrew Widdowson"
Thanks so much for the letter and the ticket. Man, those tickets at Gillette sure aren't cheap. Then I looked at what Steelers tickets are going for at Heinz for the Browns game (wow, you can actually pay up to $5,800 for two tickets to that thing... and they start in the hundreds... of course this is leading up to the game, not sure what the normal prices for tickets are).

We'll see if the Steelers Defense continues to play smash-mouth football... if so then I am a little more enthusiastic about our chances against Brady&Moss.

I'll be wearing my Steelers gig regardless of the guaranteed proximity of Patsy fans around me. Steeler Nation baby!

I'll look out for some black and gold tailgating collections in the parking lot. If you're going, lemme know and maybe we can share some barley sandwiches (ie. liquid lunch).
Thursday, November 8, 2007
Thursday, November 8, 2007  2 Comments     


Since I don't know RegExp at all yet, I'm doing string manipulations with the returned XML, so its nasty and I know it. But it works. What I have here is a document class that takes a burned-in rss URL (mine) and generates minimal UI display based on the returned XML. Yes, its using tabStops (yuk!) instead of datagrids, etc.

However, again just like the AS3 Particle class, someone might want to use it to save themselves some time.

The class file resides right here. I have a preview SWF that you can run locally (because of security restrictions this will not run online... so if you click on the link and get an empty page in your browser, you'll know why). Right-click that SWF and save it to your desktop so that you can run it locally (side-stepping the sandbox).
  0 Comments     

Yes indeed Halo 3 fans, I've spotted and seen RSS for my recently played games. Now, the XML is formatted for HTML display no doubt, so you'll have to scrub the source to display properly in Flash, but how nice is this? That little RSS button offers us a little of what we had in Halo 2 (in terms of stats, etc). Its nowhere near as useful yet, but its nice to see Bungie moving in that direction right now. Thanks Bungie!

Since I'm sure Bungie hasn't put a policy file on their server(s), this might be a great case to create an AIR application to display your recently played games, and also provide a mechanism to enter and save various URLs to feeds so you can follow buddies games as well. Just a thought.
  12 Comments     


I ported Keith's AS2 Particle Class to AS3. I didn't add anything to it, but I do have plans for extending some areas of it. If you feel that it needs improvement, by all means have at the source and perhaps link to your new class in a comment so we can all share. The class file can be found here.

Hopefully some might find it useful. The class doesn't generate its own art, I have this associated with a symbol in the library at the moment. Also its typed to MovieClip for that reason. You could change it to Sprite (to gain some rendering benefit) and have the class responsible for the graphical display. DL: 70.
Wednesday, November 7, 2007
Wednesday, November 7, 2007  2 Comments     



I have exhausted my limit of Googling for the time being looking for a decent AS3 Particle class that approaches the utility of Keith Peter's AS2 Particle class, but in AS3. Something without a whole huge bank of functionality, just a lot of the basics that Keith's AS2 version comes with.



I hope that someone else hasn't done this already, as its not too difficult but time consuming, I have begun to re-write that class in AS3 for use in AS3 projects.



If someone has, please leave a comment if its available. Its cool to convert some code sometimes, but its always better to get some code without having to do that. If not, I'll plug along and ask Keith if its okay to share it or not. Peace out.



Update:
I have rewritten the core Particle class and so far I haven't gotten any compiler errors or warnings. I tested wandering, but right now the .addRepelClip seems to be ignored. Other stuff seems to be working okay.

I could release the code right now, but I think I have a little more to do on it. You might consider converting it yourself... its a decent little excercise.

So it wasn't a huge deal converting the AS2 class to AS3, not nearly as bad as I was thinking that it would be. I had to use the stage's MOUSE_UP event for the onReleaseOutside, but other than that its gone pretty peachy. Once its up to snuff, I'll up the text file for ya (if anyone is interested).



Update 2:
I figured out the tiny little bug that was preventing the repelClips, etc. from working properly. I have the easy fix (found it one my class printout) and will test tomorrow AM and release it when I see it working properly. I plan on using it right away!
  1 Comments     

I was searching for an AS3 particle class that supports object repulsion (opposite of attraction), and in my efforts, I headed over to the Flashcoders archive. Unless the real URL has changed, it appears that the archive has been hacked.

p.s. If you have any information on a good AS3 repulsion class I can apply to movieclips, I'm all ears. Thanks.
Tuesday, November 6, 2007
Tuesday, November 6, 2007  0 Comments     

Adobe Visual Communicator 3 Now Shipping. No longer on labs. And... ya. Hmm. I don't know who might use this thing, maybe Morgan Webb? $399? Man, I dunno. I'm just not feeling this one.
  3 Comments     

  1. James Harrison was a one man wrecking crew last night during the Steelers pounding of the Baltimore Ravens. Nine tackles, three and a half sacks, three forced fumbles, a fumble recovery and an interception. It was simply amazing to watch. I know Ben had a great game, but Harrison showed the Hall of Fame Steelers in attendance a little something to make them even more proud of being Steelers... the tradition of smash mouth football remains & is very strong. Steeler Nation rejoice.
  2. I found a cool graphic design portal that is currently in beta called Behance. Lovely work (like this), and you can sign up for an account and showcase your own works. There is a lot of opportunity for creative stimulation in the gallery for certain, and something there may trigger some cool ideas of your own. Very nice.
Friday, November 2, 2007
Friday, November 2, 2007  3 Comments     

Sounds like a lot of fun, can't beat the price, can't beat the location (its not all the way into the nasty bowels of Boston), includes lunch, and isn't too far the other way on 128 from Adobe Waltham... although who will be there for a visit after Flex Camp Boston? Door prizes? Would LOVE a copy of retailed Moxie!



Flex Camp Boston

December 7, 2007



Time

8:00 am ET - 5:00 pm ET



Location

Bentley College

175 Forest Street

Waltham, MA 02452
Thursday, November 1, 2007
Thursday, November 1, 2007  1 Comments     

"Flex Camp Boston is set for December 7, 2007, at Bentley College in Waltham. We are currently rounding out an incredible list of presenters which you can see (in draft form currently) on our agenda page.

The registration fee is only *$10 and includes all speakers, free parking and lunch. Space is limited so register now!"
gotoAndStop( topOfPage );