# Thursday, 15 June 2006

Slowing down now.  Me, not TechEd.  Very long days starting to take their toll...

That aside, I've seen some very groovy stuff over the last day or two.  WF as the controller in an MVC architecture, using rule-based activities in WF, WCF talking to an Oracle system over standards based web services (with security, reliable messaging, MTOM, et al).  Shy Coen did a good chalk talk yesterday on publish and subscribe patterns using WCF which gave me some good ideas.  I'm looking forward to seeing more about the Service Factory tomorrow morning.  Meeting lots of very smart people. 

I realize my sentences are getting shorter and shorter, and the nouns will probably start dropping out next.  Attendee party tonight.  Nothing I like better than 12,000 drunk nerds all in one place.  With batting cages.  I'll take pictures. :-)

On a completly different note, look to see some major changes to this blog in the next week or so...

Thursday, 15 June 2006 08:37:10 (Pacific Daylight Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 
# Tuesday, 13 June 2006
Scott and I are now done with our TechEd session, and all was well.  Whewww!  It was down to the wire, and I think we finished our slides about an hour before we went on stage, but we pulled it out in the end.  I think it went pretty well, but we'll see what the evaluations have to say about it tomorrow. :-)
Now I'm hanging out at the birds of a feather gathering ('cause, ya know, free beer) and watching Stuart strolling around wearhing a giant parrot on his head.  Not something you see every day.  Unless you work with Stuart.  I'm looking forward to actually attending some sessions tomorrow, since I won't be worrying about how badly I'm going to suck.
I saw a couple of good talks yesterday, my favorite of which was Don Smith and Jason Hogg talking about web services security.  If you care at all about securing web services, check out their patterns & practices book.  It completely kicks the llama's @ss.  They presented an early version of their Web Service Factory, which is a guidance automation toolkit package for building and securing web services, either in Indigo or in WSE 3.0.  Very groovy stuff. 
I also saw a good one this morning by Pravin Indurkar on building state machines with WF.  They've really thought hard about this, and I really think that it's a viable solution not only for building state machines, but for using said state machines for driving UIs.  Pravin had a very compelling UI demo that was mainly driven by the workflow instance itself.  Excellent.
More tomorrow after I've had some time to absorb some new content.

TechEd | Work
Tuesday, 13 June 2006 17:03:00 (Pacific Daylight Time, UTC-07:00)  #    Disclaimer  |  Comments [2]  | 
# Monday, 12 June 2006
I'm here in Boston (finally).  I haven't done it in a while, so I'd nearly forgotten how much fun it isn't to fly cross-country.  2 hour delay in Denver (just because), followed by the usual hassles of airports, shuttles, etc.
Anyway, after only 12 short hours, I was here.  I hustled over to the convention center to make it in time for the keynote, only to be pretty disappointed and leave early.  The keynote (at least the bit I staid for) was very buzzword oriented.  I understood all the words coming out of Ozzie's mouth individually, but strung together they didn't make any sense.  So, I opted for dinner and a beer instead.
I ran into Scott in the lobby, and ended up hanging out with an ever growing crowd of clever people in a blur of beer and chicken fingers.  The highlight for me was talking Ruby with the (quite) clever and (highly) articulate John Lam.  There's apparently a lot about my programming environment I don't consider very deeply. :-)
The first sessions are about to start, so I'm off to see if I can learn something. 

TechEd | Work
Monday, 12 June 2006 06:00:02 (Pacific Daylight Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 
# Thursday, 18 May 2006

My wife (Vikki) finished her CERT training last night with her final excercise.  The rest of the family turned out for victim duty.  I got to be the “wandering guy” who’s wandering around the scene looking for someone.  Always a challenge to deal with.  I can walk around in circles like nobody’s business, so it was the role for me. :-)

We did the “airplance crashed into a crowd” scenario, so everyone got made up really gross with burns and compound fractures.

the crash

the crash

burns

burns

gross

the compound fracture

ouch

that’s gotta hurt

the team

they go to work

VikkiCert

Vikki’s all done!

And now for the plug...
All this training could be yours for free.  Classes are open to anyone who lives or works in Hillsboro (if you don't, look for a CERT program in your area) and are 3 hours, one night a week for 8 weeks.  You'll even get your very own hard hat, safety goggles and gloves courtesy of the city.  The next class will start in the Fall.  Check out the Hillsboro CERT website for details.  If you'd like to support our program, check out our gear site on CafePress.  Proceeds all go directly to the CERT program.
Thursday, 18 May 2006 08:04:39 (Pacific Daylight Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 
# Tuesday, 16 May 2006
Last night, Vikki and I taught the first version of a class on “survival cooking” for our local CERT program.  We talked about scenarios to plan for, what kind of food to store in case of emergency or disaster, and how to cook it once you find yourself there.  If you are interested, the handout from the class (with references) is here.  The class went quite well, and we got to eat the fruits of our labors. :-)  The biggest learning I came away with is that Datrex brand survival rations are much tastier than I would have thought. 
Tuesday, 16 May 2006 13:49:08 (Pacific Daylight Time, UTC-07:00)  #    Disclaimer  |  Comments [2]  | 
# Monday, 08 May 2006

We had a great time on the Diabetes Walk this weekend with Scott, Mo, Zenzo, and the whole extended Hanselman family, as well as the other members of the team.  We had a lovely 5K walk through the Pearl district.  Vikki, the kids and I, and even our ridiculous dog Carter took the MAX downtown for the walk, strolled through Portland, and headed back home.  The dog lay around in a heap all day yesterday.  I guess 5K is a lot longer when you’re only 10” tall.  :-)

Congratulations to Scott and the team for raising such a mighty some for such a good cause.  If you are feeling extra athletic and want to raise money for diabetes care and research, the ADA also sponsors the Summit to Surf bike race, from Government Camp up to Timberline and down to Hood River.  I volunteered for it last year, and was glad I was driving one of the chase cars and not biking up that hill.  The downhill part looked like a lot of fun though.

Monday, 08 May 2006 13:17:38 (Pacific Daylight Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  | 

I’ve been doing some CodeDOM work in the last week or so after not having done it much in a while.  What I’m finding most difficult is keeping track of which constructs are usable and which aren’t.  Being a C# programmer, I tend to think about the code that way.  The hardest part about using the CodeDOM is upleveling your thinking to deal with meta-programming.  Describing the construct you want in the constructs of the CodeDOM can be challenging.

Given all that, I can understand why there are no CodeDOM constructs for foreach, using, lock, etc.  Those are C# language constructs that expand to some other CLR goo.  But ,while?  There’s no way to make a while construct in CodeDOM.  ????  I’m pretty sure there’s nothing language specific about a do…while construct.  So you have to translate into a for…next instead.  Sigh.  I’m glad I don’t have to deal with delegates for this code.  That’d be a third level abstraction, which is more than I can handle…

Monday, 08 May 2006 13:09:00 (Pacific Daylight Time, UTC-07:00)  #    Disclaimer  |  Comments [1]  | 
# Monday, 01 May 2006

Yesterday we met a bunch of friends for a birthday brunch.  A good friend of ours turns 50 this week, and a ton of people showed up to mark the occasion.  Afterwards, on a lark, I decided it was a good day to visit Multnomah Falls, out on the Columbia Gorge.  It took us for ever to find parking out there.  I forget that Multnomah Falls is one of the most popular tourist spots in Oregon.  And I think pretty much everyone was there yesterday. 

Anyway, I’ve been to the Falls maybe a dozen times in the (almost) 18 years I’ve lived in Oregon, but never hiked up to the top of the falls.  Being that it was such a brilliant day, and the kids had been inside way too long, we decided to make the hike.  It was well worth it!  What a view.  It’s certainly not a hike to be undertaken lightly.  It’s only about a mile, but it’s very steep.  However, once you get up to the top, there’s a viewing platform that’s built out over the top of the falls (with a very stout railing) so you can see all the way down.  There were quite a number of wild flowers blooming already.  It’s definitely spring around these parts. 

I was reminded of just how much I like hiking.  I’m thinking the kids are big enough that it’s time to start dragging them around the woods on a more regular basis. 

the view from the top

Monday, 01 May 2006 15:07:25 (Pacific Daylight Time, UTC-07:00)  #    Disclaimer  |  Comments [2]  | 
# Monday, 24 April 2006

We do a bunch of serialization from objects into various (legacy) formats, and just this week discovered a performance bottleneck I’d never anticipated (mea culpa).  Apparently Type.GetCustomAttributes(true), or PropertyInfo.GetCustomAttributes(true) are expensive operations.  When I stop to think about it, I guess I’m not surprized, but it was not something I’d ever considered as costly performance wise.  We have to pass true in a few cases, since we may need to now about inherited attributes out on leaf nodes in the inheritance hierarchy.

Anyway, some selective caching fixed a pretty sizeable portion of the problem.  The realy way to solve the problem is, not surprisingly, exactly how the XmlSerializer solves the problem:  runtime code generation.  But we’re not quite there yet. 

Anyhow, if you find yourself calling GetCustomAttributes(true), beware that it may be more expensive than you think…

Monday, 24 April 2006 14:20:11 (Pacific Daylight Time, UTC-07:00)  #    Disclaimer  |  Comments [1]  | 

Vikki and I took the kids to see an “Indian Dance Ballet” downtown yesterday called Krishna Bhakti.  It was great!  Groovy costumes, great music, and some very impressive dancing.  The ballet focuses around the lives of two female saints and poetesses who were proponents of Krishna Bhakti, or love of the divine in the form of Lord Krishna.  Their stories reminded me a lot of that of Hildegaard von Bingen, a medieval German nun and abbess who was also a poetess, and whose work has become popular of late. 

The lead dancer and choreographer, Jayanthi Raman, also runs a school for Indian dance here in Portland, and many of the dancers yesterday were her students.  I’ll be looking out for future productions sponsored by Rasika, an Indian Arts and Cultural Council in Portland. 

Monday, 24 April 2006 14:12:52 (Pacific Daylight Time, UTC-07:00)  #    Disclaimer  |  Comments [0]  |