John Wilker’s available for work…hire him! Here’s why.

This is in reference to John’s post at johnwilker.com about being available for work.

I work at eBay and, if you see my earlier post, I love it. There’s only one thing that could make life better at eBay, that’s if John was there. I’ve been in and out of corporate life for 10+ years now. I’ve worked for the likes of Bank of America, The Walt Disney Company, eBay and Ameriquest Mortgage. In all those years and all those work sites, I’ve only met one person like John.

John and I met at Ameriquest. He tried to leave, but I hunted him down and hounded him until he came back. That’s how much fun he is to work with. How many of your co-workers, who left a company, have you tracked down and did everything you could to get that person back? Me…only one, John.

John has technical skills: ColdFusion, Flex, Databases, yada-yada. Every one in Monster.com has those skills. John has two things most people in Monster.com do not have: organization and personality.

In the organization department, John’s topnotch. From the moment your project starts, his organization skillset kicks in. If you let him run with it, you’ll have folders, communications, mailing groups, project sites, time tracking, etc. He’ll make sure you know how to track progress on everything and will ride your bootie when you start to fall behind on the deliverables. He’ll be harsh on that too, but that’s a good thing for you, because that’ll help deliver a better product.

Personality, though, now that’s where he’ll shine. If you have a 1 month project, you’ll see some of it, but not all of it. You need to keep him onboard more long term to fully experience it. When I first met him, we passed each other many, many times for a month or so. We finally started chatting one day, and not a weekday has gone by since in the 5 or so years that we haven’t chatted. Wilker is one of the funniest guys around. He’s not an insulting kind of funny, but one of those calls it as he sees it kind of funny. It’s those views that are funny.

John and I are similar in some things, but total opposites in others. It’s for that reason that he’s been on my short list of possible business partners. He’ll agrue til he’s blue in the face for things that I can’t see at the time. Usually, as the weeks go by, I find myself saying, “Hey, you were right about that thing.” He never makes me feel bad when I do that too, when he could totally rub my face in it if he wanted.

John is 1/3 of the 360Flex Conference committee. When the conference is over and everybody’s yammering about how great it was, it will be because of John. If they leave complaining about something missing/gone awry, I’ll most likely be typing over IM to John, “Ya know, I guess you were right about that one thing.”

One more thing, if you wonder if he knows a particular skill for your project, just ask him. He’ll tell you the truth. If the answer is no, don’t worry, hire him anyway. Tech skills are learnable by buying a book, but personality…like MasterCard says, “Some things, money can’t buy.”

The Flex Team has spoken… build more components!

I went to the “Meet the Flex Team” event last night. How friggin’ awesome is that? Flex 2 and Apollo are creating a revolution in the web space. Not only do we have the chance to participate in the revolution, but we have the power to alter the gameplan.

I’m amazed at the transparency of this group. I can only remember one other time where I was able to chat with a program team. It was for a small product from American Express and the results were amazing. To be able to influence how a program will be built is truly a one of a kind experience. If you weren’t there last night, you missed a chance to help build something special.

After we gave our list of demands, I asked what we, the community, could do to help out. Besides the obvious donations of mad cash (which, strangely, I’m all out of), the biggest thing they want from us is custom components. I know y’all are clamoring for new components and want the Flex Team to make ’em for us, but it’s time we stepped up. Let’s answer the call to duty. Ted’s already ahead of the curve and has set up a Y! group for component builders. Sign up and start answering the call.

360Flex – A Brief History

360Flex, our lil Flex conference, is open for registration. It’s hard to believe that less than 2 months ago, the idea for 360Flex wasn’t even there. One day while chatting with John Wilker I said, “You know, we need a Flex conference. MAX is good and all, but we need a conference dedicated just to Flex and nothing else.” John agreed and we decided to have a conference. Now, John will be the first to tell you that I tend to have Pie-in-the-Sky ideas and this sounded right up that alley. He probably thought I might bring it up once or twice afterwards, but it would more likely than not drop to the wayside.

Fast forward a couple weeks and I’m chatting with Ted Patrick. We’re just about to announce the whole Free Flex Training ditty. I tell Ted, “You know, we really need to take this to the next level.” Ted nods. “We need to have a full fledged Flex Conference.” Ted says he was thinking of the same thing. Ted and I are smart guys, relatively speaking. =) We realize that having two competing Flex Conferences would be pointless. Therefore, we decide to combine our efforts. I introduce Ted to John and the committee is born.

None of us had really done a conference before, so we just sort of asked people we know who do conferences for some pointers. I ask Doug and Dave of Mashup Camp fame for some pointers. Fate puts me next to Michael Smith of CFUnited fame at the MAX UGM dinner, so I pester him with some questions. I’m not sure who Ted and John talked to, but from there we had our base from which to jump.

October 17th 2006, we have our inaugural virtual meeting. December 6th 2006, the registration site goes live. March 5th 2007, the conference begins. I don’t know how fast most conferences go, but I think we’ve done pretty good for ourselves.

Luckily, I had Silvafug to bounce ideas off of. If you’re a UGM, don’t overlook the valuable resource that is your group. Throw things at them and see what sticks. They’ll let you know what’s good (free Flex Training, Flex Conferences) and what’s not (matching UG t-shirts to wear at MAX). I still think matching shirts woulda rocked! =)

Notes on Flex Training

For those of you who participated in the training tonight, I’m glad you were there. Now, it’s time for feedback.

There’s two items I must apologize for.

  1. I should have checked to make sure my debugger was working before the training
  2. I should have not ventured into unscheduled territory when my debugger broke.

The debugger caught me completely off guard. I had planned on spending a good amount of time on the debugger. When it didn’t work, I had to improvise. This led to me trying to hardcode data. I have not done that in a few months and it showed. Live and learn. Next time, just end the session early. =)

Other than those two bombs, I think the training went fairly well. I’d like to hear your feedback though. Tell me what I did wrong and what I need to improve. Be brutally honest here folks. I’m a big boy, so I can take it. Plus, there’s no use in me continuing to do this if I do a poor job. Help me improve so you can learn more. It’s in your hands. =)

Silicon Valley Flex User Group Meeting on October 12

I just wanted to drop a quick note to say that the Silvafug is having their next meeting on Thursday, October 12.  Since I’m the manager, I should be talking and hyping up the group more and more.  I will and this blog will be a venue for me to do so.

You can find out details of the meeting at http://www.silvafug.org .

There is going to be a huge announcement at the meeting.  We’re going to be announcing a new activity for the group that I think all User Groups should try to mimic.  I’m still working out the details with those involved, but believe me, it’ s going to be exciting news for the (growing) Flex community here in Silicon Valley.

Flex 2.0: Reopening a Tree after updating the dataProvider

So, I’m completely stoked! I’ve figured out something that I think might actually be useful to the world in Flex! If you’ve worked with trees before, they’re fun except when you have to update their dataProvider. Then it’s not so fun because it collapses the tree and does not reopen it. Well, my friends, now it will. Check out this lil snippet of code. Copy it, paste it into FlexBuilder and press “Run”.

The two key elements of the tree are the openItems property and the render event. When used in conjuction with a boolean flag, you’re all set for keeping your tree open. Enjoy!

To see how trees normally act when changing dataProviders, delete the render event from the tree tag.

<?xml version=”1.0″ encoding=”utf-8″?>
<mx:Application xmlns:mx=”http://www.adobe.com/2006/mxml&#8221; layout=”vertical” creationComplete=”initFunc()”>
<mx:Script>
<![CDATA[
[Bindable]
public var tempOpen:Object = new Object();
[Bindable]
public var refreshSO:Boolean = false;

[Bindable]
public var secondObject:Object = new Object();
[Bindable]
public var tempObject:Object = new Object();
[Bindable]
public var tempObject1:Object = new Object();
[Bindable]
public var tempObject2:Object = new Object();
[Bindable]
public var currentDP:String = “tempObject”;

private function initFunc():void
{

tempObject = new Object();
tempObject.path = “somepathvalue”+2;
tempObject.label = “Node”+2;
tempObject.componentType = “Type”+2;
tempObject.children = new Array();
tempObject1.label = “test3”;
tempObject1.children = new Array();
tempObject2.label = “test4”;
tempObject1.children[0] = tempObject2;
tempObject.children[0] = tempObject1;
secondObject = tempObject;

}

public function switchDP():void
{
tempOpen = testTree.openItems;
refreshSO = true;
if (currentDP == “tempObject”)
{
currentDP = “secondObject”;
testTree.dataProvider = secondObject;
}
else
{
currentDP = “tempObject”;
testTree.dataProvider = tempObject;
}
}

public function renderFunc():void
{
if (refreshSO)
{
refreshSO = false;
testTree.openItems = tempOpen;
}
}
]]>
</mx:Script>
<mx:Tree id=”testTree” render=”renderFunc()” width=”250″ dataProvider=”{tempObject}” labelField=”label” />
<mx:Button label=”Switch DP” click=”switchDP()”/>
</mx:Application>

FlexArch

FlexArch

So, I was really hoping my next post would be a Flex 2 "hey check out this cool thing I made" post, but the cool thing hasn't quite been made yet. It's in the works, but still has a way to go.

In the meantime, you'll notice the link up top of this post. The link is for the FlexArch wiki. What is FlexArch? Well, it's a wiki where people can come talk and share code/experiences of creating new architectures for the Flex 2 platform. Flex is cool and the stuff we're doing with it in eBay is cool. If you want to learn how to create your own framework and API in Flex, then hopefully that will be the place to learn it. If you've already created your own framework/API in Flex 2, then you definitely need to go there and share your knowledge.