Tuesday, October 23, 2007

It's a well known fact that versioning webparts is a real pain in the butt. Big Jim in DC and I have been pondering, searching the Internet and discussing what are some good ways to version web parts and features.  Today we decided to do something about it and came up with a simple strategy.  Use pre-build events to call a script that writes a value to the AssemblyFileVersion attribute of  the assebmlyInfo.cs (sorry vb'ers your just going to have to modify the scripts on your own ).  Then with another script read that value from the assemblyInfo.cs and write it to the feature.xml.  The description attribute to be sepcific.  That way from the user interface you can see the version and time built.

 

Jim wrote the script to update the Assembly and it can be found here.

This is what my pre-build events look like:

CD "$(ProjectDir)UTILS"
cscript /nologo UpdateAssemblyFileVersion.vbs  "$(ProjectDir)properties\AssemblyInfo.cs"
cscript /nologo UpdateFeatureDescriptionVersion.vbs "$(ProjectDir)TEMPLATE\FEATURES\$(SolutionName)\Feature.xml" "$(ProjectDir)properties\AssemblyInfo.cs"

 

The source below will read just about any attribute in the assemblyInfo.cs file and append it to the end of the description for the feature (the description attribute of feature.xml).  Mine looks like this "| AssemblyFileVersion: 1.0.62223.1901   Built: 10/23/2007 7:01:03 PM".  It's pretty easy to see where the variable assemblyInfo is being create and modify as you meet your needs.

' VBScript source code
'------------------------------------------------------------------------------
'--- UpdateFeatureDescriptionVersion.vbs
'------------------------------------------------------------------------------
'--- Author - Stacy Draper
'--- Date   - 2007.10.23
'------------------------------------------------------------------------------
'--- This updates the description attribute of the feature node found in 
'--- feature.xml with the information found in AssebmlyInfo.cs.
'------------------------------------------------------------------------------
Option Explicit

Dim fileHeader
fileHeader = "UpdateAssemblyFileVersion.vbs :: "

EnsureCommandLineArgumentExists
EnsureFileExists WScript.Arguments(0), "Feature.xml"
EnsureFileExists WScript.Arguments(1), "AssemblyInfo.cs"
UpdateFeatureXml WScript.Arguments(0), WScript.Arguments(1)

Private Sub EnsureCommandLineArgumentExists()
    If WScript.Arguments.Count <> 2 Then
        WScript.Echo fileHeader & "You must supply the path to the AssemblyInfo.cs and feature.xml files as arguments."
        WScript.Quit 1
    End If
End Sub

Private Sub EnsureFileExists(path, fileName)
    Dim fso

    Set fso = CreateObject("Scripting.FileSystemObject")
    If Not fso.FileExists(path) Then
        WScript.Echo fileHeader & fileName & " does not exist at the path provided -> " & path
        WScript.Quit 1
    End If

    Set fso = Nothing
End Sub

Function UpdateFeatureXml(featurePath, assemblyInfoPath)
    Dim node, xmlDoc, description, newDescription, descParts, assemblyInfo, posPipe, i

    Set xmlDoc = CreateObject("Msxml2.DOMDocument.3.0")
    xmlDoc.async = False
    xmlDoc.Load featurePath
    If (xmlDoc.parseError.errorCode <> 0) Then
        Dim myErr
        Set myErr = xmlDoc.parseError
        errQuit "An error occured -> " & myErr.reason
    Else
        Set node = xmlDoc.selectSingleNode("//Feature")
        if isNull(node) or (node is nothing) then
            errQuit "Missing Feature node in feature.xml "
        end if
        description = node.getAttribute("Description")
        if isNull(description) or (len(trim(description)) = 0) then
            errQuit "Missing description attribute of Feature node in feature.xml "
        end if

        assemblyInfo =  ""
        assemblyInfo =  assemblyInfo & "AssemblyFileVersion: " & getAttribValue(assemblyInfoPath, "AssemblyFileVersion")
        assemblyInfo =  assemblyInfo & "   Built: " & Now()

        posPipe = inStr(description, "|")
        if isNull(posPipe) or posPipe = 0  then
            newDescription = description & " | " &  assemblyInfo
        else
            descParts = Split(description, "|")

            if uBound(descParts) > 1 then
               newDescription = descParts(0)
               for i = 1 to uBound(descParts) - 1 
                    newDescription = newDescription & "|" & descParts(i)
               next
            else
                newDescription = descParts(0)
            end if

            newDescription = newDescription & "| " & assemblyInfo        

        end if

        node.setAttribute "Description", newDescription
        xmlDoc.save(featurePath)
    End If
End Function 

function getAttribValue(path, attrib)

    Dim fso, f1, ts, s
    Dim startAttrib, startAttribValue, endAttribValue, strAttribValue

    Const ForReading = 1

    Set fso = CreateObject("Scripting.FileSystemObject")
    Set ts = fso.OpenTextFile(path, ForReading)

    s = ts.ReadAll

    startAttrib = inStr (s, attrib)

    if (isNull(startAttrib) or startAttrib = 0) then 
        errQuit attrib & " doesn't exist in AssemblyInfo.cs "
    end if

    startAttribValue = startAttrib + len(attrib) + 2
    endAttribValue = inStr(startAttribValue, s, ")") -1

    if (isNull(endAttribValue) or endAttribValue = 0) then
        errQuit attrib & " didn't end as expected in AssemblyInfo.cs "
    end if


    strAttribValue = mid(s, startAttribValue, endAttribValue - startAttribValue)

    getAttribValue = strAttribValue

    ts.Close
    Set ts = nothing
    Set fso = nothing

end function 

function errQuit(message)
    WScript.Echo fileHeader & message
    WScript.Echo
    WScript.Quit 1
end function

 

10/23/2007 7:33:35 PM (Eastern Daylight Time, UTC-04:00)  #    Disclaimer  |  Comments [2]  |  Trackback
 Wednesday, August 01, 2007

Nick Swan and crew has just hit a home run with the newest release of the BDC Meta Man.  Now you can create, read and update data that resides outside of SharePoint.  This request comes to me all the time, "How can we use SharePoint to maintain data in our _______ system?".  The thinking is they want to have the same functionality that a list has but be able to point to their own data store.  Well, now with the new BDC Meta Man, you can do even better.  Because the BDC Meta Man generates all of the code, you get a nice foundation from wich to start adding your own validation etc. 

So you can't delete records in the third party system yet, but I'll bet it's not far behind.

Something that I've been thinking about lately is could you use the bdc to overcome the short comming of the lookup fields in a SharePoint list.  What you would do is write a wrapper around the getListItems of the lists web service to be used with teh BDC.  Now you could have a robust lookup for your custom list.

What might even be cooler is that the BDC Meta Man has a special tab for lists?  Just like it does for webservices and databases, but the SharePoint tab would let you set the server and drill down through the sites and into the lists, then the views and perhaps even write the where clause.  Maybe the thinking is that wouldn't be useful?

8/1/2007 12:00:11 AM (Eastern Daylight Time, UTC-04:00)  #    Disclaimer  |  Comments [0]  |  Trackback
 Sunday, May 27, 2007

Adam Buenz has gone over the edge with Forms Based Authentication by creating a provider for finger print authentication.

http://www.sharepointsecurity.com/blog/sharepoint/sharepoint-2007-development/biometric-authentication-for-sharepoint/

 

5/27/2007 10:27:34 AM (Eastern Daylight Time, UTC-04:00)  #    Disclaimer  |  Comments [0]  |  Trackback
 Wednesday, April 11, 2007

On my birthday, Glen Block, blogged about a new developer course geared to SharePoint AND developers, what a gift!  Now when people ask me how to get started with SharePoint development I can send them to https://www.microsoftelearning.com/eLearning/offerDetail.aspx?offerPriceId=119608  Well he didn't really do it for me but it's a very nice coincidence!

4/11/2007 9:09:21 AM (Eastern Daylight Time, UTC-04:00)  #    Disclaimer  |  Comments [1]  |  Trackback
 Wednesday, March 28, 2007

I just got back from devConnections.  It's actually still going on, but I had to come home and forage.  I'm not going to make the mistake of writing a blog post like I did for the MVP summit again, but suffice it to say I met a lot of people and cemented more relationships.

Lawrence Liu was to do the key note presentation and he was stuck in Chicago, on his birthday no less, so I ended up having 2 hour to prepare for it.  I literally had 15 minutes of fame, it was a lot of fun and the best part was when attendees told me how much they appreciated it.

It was a great event and I'm glad I went.

3/28/2007 12:37:55 PM (Eastern Standard Time, UTC-05:00)  #    Disclaimer  |  Comments [1]  |  Trackback
 Tuesday, March 20, 2007

KB article came out March 8th 2007 indicating that the /3gb switch is no longer available.  This is because on x32 we only have 4GB to work with, now on an x64 we have much more addressable memory.  The /3gb switch actually choked the kernel by moving a gig to the user mode from the kernel.  This actually caused more problems than it solved so the switch was removed in SP2.  This is a classic example of software desperately trying to make up for hardware shortcomings.  The solution - buy 64 bit hardware with the appropriate amount of ram.

3/20/2007 12:53:01 PM (Eastern Standard Time, UTC-05:00)  #    Disclaimer  |  Comments [1]  |  Trackback
 Monday, March 19, 2007
3/19/2007 8:00:39 PM (Eastern Standard Time, UTC-05:00)  #    Disclaimer  |  Comments [3]  |  Trackback
 Sunday, March 18, 2007

I just got back from the MVP summit 2007 and as with all conferences I tried to meet as many folks as I could.  I met Sean O’Driscoll who, as it turns out, is the person ultimately responsible for the MVP award program.  I must say Sean has a great sense of humor.  Met Jason Medero for the first time, we are working on the same Wrox book.  We discussed everything from balance of life issues to crazy clients.  Because of our conversation I’m getting a kayak, canoe or something and paddle up and down the intracoastal in the morning and making some time for me. 

When it comes to balance of life we all decided to take Monday off and shoot each other with paintballs.   Besides doing the Macarena, I think paintball is the most fun I’ve ever had.  Dan Larson has some video of paintball, but I think Conelius van Dyk’s blog post was first.  Andrew Connell shared his thoughts on the day as well. 

I’d like to thank Robert Bougue for carting our butts around and now, officially and publicly, apologize to him for shooting him when I was out of bounds. . . . I didn’t know.  Honest. 

Paintball was a ton of fun, 23 of us shot off 24,000 rounds.  Someone calculated that it was 67 paintballs in the air in any given minute, but you really have to think about that.  From the time we shot our first paintball to the last was 6 hours.  But we weren’t playing that entire time.  You have to consider we took a break to catch our breath, drink some water, get air and of course buy more paintballs.  So when there was a paintball in the air there were a lot of paint balls in the air.

It was my first time ever playing, one game was called attack defend.  The defenders have to keep a bell from getting run and the attackers have to ring a bell.  Brad Smith came up with an amazing strategy, “We’ll surround them and shoot everybody we see.”  So we did.  We met in the middle so quickly we started shooting at each other and the referees were laughing.  We all thought they were laughing because we were such aggressive bad asses, as it turns out they’ve never seen a team so aggressively cannibalize itself.  I was shooting at Brad from what I thought was the safest place in the world.  I was sheltered, uphill, with only a 10 inch opening.  He actually shot me right in the eye.  Good shootin’ Brad, even if we are on the same team, I’m still really very impressed.  I’m sure there is a lesson in here somewhere about communication. 

In another game I ran out of air in my gun, so I resorted to throwing paintballs by hand.  Loke Kit Kai shot me.  He said he felt bad because I was so close.  I had to be close because I throw like I use a mouse for a living.  His wife though, Stephanie, she's quite the stealthy one and I, like many of my teammates, was so glad she was on my team. 

Lawrence  really showed us a great time.  He took us to a couple of dinners one at Elliott’s Oyster House where I had a spearfish, it was yummy.  What a great team building day!  Thanks for everything LL, you’re the best!

Of course we all talked a lot of technology the other days, but that’s all under NDA.  The MVP Summit was basically Microsoft employees who were in charge of various products telling us what they had in mind and we told them what we thought and what we thought they should have in mind.  I learned that Shane Young has a long career ahead of him with his upgrade training, because there’s not a lot of automation in that space beyond what the SharePoint team blog's post on the upgrade toolkit points out. 

Adam Buenz, as I found out, is a good guy to have your side of an argument.  He spontaneously created a list of gripes and everyone was impressed with the roll he was on.  He became somewhat of an ambassador for the rest of us.  You could hear other people in the background whispering through him Adam would effectively communicate it to the folks at the podium as if he were some walking talking megaphone.

Who knows what they do with the information but they did seem to cherish it, which made me feel special.  They probably take that information and compare it with their other channels of information.   Somehow digest it all and figure out what the next versions of the products are going to be.  All I can say is that I’m totally impressed with the new stuff they are thinking about while still being enamored with the current stuff.

As with most conferences networking is golden.  I got to see many folks that I met in Berlin like Michael Gerth, Daniel Wessels, and Renaud Comte who represented France and Americans like Woody, Michael Noel, Mike Ammerlan, Fitz, and John Paul.  Michael Noel is always interesting to talk to, because we came into SharePoint from exactly opposite directions.  He entered from administration and I from development and we both know the product really well and overlap in skills so much it’s somewhat amazing to realize that we have such different backgrounds.  He’s obviously progressed a lot further in his career than I have, but I think it’s only because he’s smarter.  It’s always a pleasure to talk to him about anything.   Never forgetting the fellas from the UK who are turning out to be great pals of mine Spencer Harbar, Steve Smith, Nick Swan and Stephen Cummins (in no particular order of course J ).

Stephen brought his wife but I didn’t get a chance to meet her.  Todd Klindt did get to meet his wife and daughter on the plane and he shared with us that their daughter is just the cutest little thing. 

I’m excited for Nick Swan and Todd Baginski.  They are selling a tool called the BDC  meta man if you haven’t heard of it and you have to do anything with BDC you should go look at their product.  Compared to the number of sales they had when I was in Berlin to the number of sale they had when I was in Seattle they had a 50% growth in sales.  That was just 2 weeks apart.  Amazing growth you guys, keep up the good work! 

Of course Florida was well represented!  Andrew Connell, John Holliday who are both going to the code camp next week, March 24 and I’m defiantly going to try to make it.

I really want to make it to an Australian conference some time.  I had the privilege of meeting Ivan Wilson and Gayan Peiris a couple of really cool and smart guys.  Maybe some day I can go, I’m just spread so thin trying to get my arms around Europe.  I did get a chance to practice my Spanish with Carlos Segura Sanz, as it turned out he’s from Pamplona, where they have the running of the bulls.  I’ve always wanted to go there.  As most people know, my wife Macarena is from Spain, so I’m always trying to figure out how to learn the culture well enough to work there. 

Dustin Miller had to have come up with one of the best lines that I heard on the trip.  Dan Larson kept hanging up on Brad Smith because Brad was trying talk Dan out of going for sushi or at least waiting until we got there so we could all go.  Apparently there’s no getting between Dan and his sushi.  I can hardly blame Dan, I’ve eaten there before (with him as a matter of fact) and it was great.  At one point a frustrated Brad bulldogged up and stammered out, “Stop hanging up on me . . . or I’m going to . . . rip out your throat . . . and choke you with it!”  Immediately after saying so you can see the frustration in Brad’s face as he lets out a deep sigh, tilts his head down, hangs up the phone and Bob Fox asked, “Did he hang up on you again?”  Dustin looks up at Bob asking, “10 thousand sperm and you were the fastest, huh?” In the end Adam, Eli, Brad and I had a great time shooting pool at belltown billiards. 

Mathew McDermott caught me having breakfast one morning, what an interesting guy who really knows his stuff.  One day while taking a bus we talked about some nice additions to SharePoint along the lines of user management and I think I’m going to try to build some of them.  I ran some ideas past Mike Ammerlan and he gave me a much better approach than what I had in mind so I really can’t wait to try it out.

Cornelius Van Dyk and I had the same flight back to Chicago.  We talked about our individual community projects we have our sights set on and are going to try to help each other out.  He got me all excited about a SharePoint wiki idea I had a while back.  I brought it up to Lawrence back in October but I set it aside because Dustin was doing something similar really soon.  I need to follow up and see what’s going on there.  Corne created some blogs as he went.  It’s amazing that Bill Gates even let’s people ask questions as this one about lotus notes was a classic, and I thought this one on world hunger was great response as well.  Corne also got some nice photo’s from the key note as well. 

I think it’s a real privilege to hear Bill Gates speak.  I’ve heard he’s so rich that if he were to throw 10 grand out the window while driving down the road at 60 miles an hour would cost him more to turn around and pick it up.  There was a huge line forming before breakfast.  I thought people were going to throw their wives panties on the stage!  It turns out that the forum was nicely sized, I still got breakfast and was only 3 rows back and one group of seats off center.

Bob Mixon has a nice assortment of photos too. 

By the way I purposefully left Gary Bushey out, just kidding Gary.   Dan has another great video of Kells from Thursday night.  This was a really great trip and that’s all I can say without damaging careers (namely my own). 

I’ve been at this blog post for nearly 5 hours and seem to have run out of transitional sentences.  Believe it or not it’s a lot of work to name drop, never mind all the links!  Suffice it to say I met a lot of interesting people from all parts of the world some are new friends while some are old friends and I feel privileged for it all.  Now it's time to firm up those connections and chase down those ambitious dreams!

UPDATED: March 20, 2007

Ivan Wilson just posted his photos

 

UPDATED: March 23, 2007

Renaud Comte just posted his photos

3/18/2007 3:59:08 AM (Eastern Standard Time, UTC-05:00)  #    Disclaimer  |  Comments [6]  |  Trackback
 Thursday, March 08, 2007

A freind of mine recently asked me about email lists.  The great thing about social networking is that I didn't know how to do it, but a Friend of mine did and another friend told me that friend knew and even wrote a pdf on the subject. 

http://www.combined-knowledge.com/Downloads/How%20to%20configure%20Email%20Enabled%20Lists%20in%20Moss2007%20RTM%20using%20Exchange%202003.pdf This is an extreamly detailed 14 page article oh now to set up a librariy "to recieve incoming e-mail using standard e-mail address that can be used both internall and externally" quote from document.

I met Steve Smith in Berlin (did I mention what an awesome conference that was) he's part owner of Combined-Knowledge, really a great guy and I can certainly understand how he's become so successful.  If you ever get a chance to see any of his presentations I would strongly recommend it.

3/8/2007 8:02:55 AM (Eastern Standard Time, UTC-05:00)  #    Disclaimer  |  Comments [3]  |  Trackback
 Wednesday, March 07, 2007

So the European SharePoint conference was outstanding.  The beer was especially good and the people were great.  I had opportunity to meet a lot of people who work with and around SharePoint.  A lot of folks that I already knew of but hadn't had opportunity to meet yet.

I stayed at the Estrel Berlin hotel, where the conference was held.  I bought a wireless lan internet access coupon for 8 hours.   The username is EST0085587 and the password is 38127656.  I didn't use much of it so there should be close to 8 hours left.

The was the largest SharePoint focused conference to date.  There was quite an exhibit hall, many sessions and just an all around great experience.  I think  the most surprising thing was that everyone spoke great english.  It was freezing cold so I decided to see germany from the inside out only going out 3 nights while I was there.  I'll definatly go to another european conference again.   

 

3/7/2007 9:12:22 PM (Eastern Standard Time, UTC-05:00)  #    Disclaimer  |  Comments [0]  |  Trackback
 Friday, March 02, 2007

Dan Attis has written down the steps to have Forms Based Authentication (FBA) for SharePoint while maintaining all of the bells and whistles.  Bells and whistles?  Things like My Site and My Links.  I think it's the most complete and detailed blog on the subject to date.

Part One is the basics.  It details how to get FBA working with a site in the first place.  But that doesn't give us My Site functionality which is as allusive as a good night sleep, whilst trying to figure it out.  Dan asked me to go through the steps in step one just to make sure there weren't any errors.  It was perfect.  I think it's a model example of what a tutorial should be like.  Afterwards, I begged him to help me get My Site working. I already had the basics and needed My Site to work.  I gave a talk a few months ago on FBA at our local users group.  I did all my modifications in the machine.config and that's a pretty bad idea.  Here's the slide deck for what I've done.  I strongly recommend Dan's approach

Part Two explains what you have to do to get MySite working.  While wrestling through it I discovered a new interface element that I hadn't seen before.  I couldn't figure out why I could get to my root site and why I could get to my ssp site, via FBA, but I couldn't get into My Site - or domain/MySite/.  I opened up the Site Collection Administrator trying to add my FBA account and checked and rechecked the site administrators for where my My Site resides.  Staring at the interface below I said to myself, "I wish there was a radio button on '/MySite' " and clicked on the words as I was deliriously talking to myself.  Viola, it highlighted in yellow.  I was able to then set the site collection administrators for MySite.  I was overwhelmed by a strange set of emotions I was happy that I could now get the focus on that particular site collection and at the same time I was a little worried that they had run out of radio buttons or didn't even have a spare drop down list in Redmond.  I know I don't like the new interface design, but I do know that I like the fact that I can get FBA works now. 

 

Site Collection Chooser.jpg

 

This approach should work with Adam's Universal Provider Framework as well, though neither of us has tried it.  I'd also like to recognize Nick Swan and his post on Forms Based Authentication for helping me several months ago in just getting the basics down.  I think Dan has done a great job in refining the instructions into very basic steps that produce 100% of the out of box experience and forms authentication.  Great Job Dan!

Well I say 100% there is a known issue with  SharePoint Designer and Forms Authentication.  Basically you either have to log in with IE first or just use your windows authentication site to make your changes.  The later of course would be preferred unless your designer is not part of your domain.  In which case you'll have to log in with IE first.  All of the office products will have this kind of functionality.  For whatever reason Microsoft didn't build in login functionality into any of their office client products.

3/2/2007 4:14:31 PM (Eastern Standard Time, UTC-05:00)  #    Disclaimer  |  Comments [0]  |  Trackback
 Thursday, February 08, 2007

Alex Funkhouser just emailed me to let me know that there are over 600 people registered for the Code Camp.  Makes me almost want to cancel my trip to Europe, but I'm not gonna.  I asked Andrew Connell if there was going to be a SharePoint track he suggested that I check out the agenda.  There are 12 sessions in all and one is even in Spanish and yes there is a SharePoint track.  The SharePoint speakers all rock!  If you want to talk about SharePoint and the mob of people are too think around John Holliday then find Mark Kruger, he's local to South Florida and knows a ton of stuff.  He won't be speaking, just wearing a regular attendee badge.

 

I love code camps!  I normally pay a lot of money to attend conferences and Code Camps are like a gathering for free.  It's a beatiful thing to see everyone work together to produce a really cool thing.

2/8/2007 9:53:51 AM (Eastern Standard Time, UTC-05:00)  #    Disclaimer  |  Comments [2]  |  Trackback
 Wednesday, November 08, 2006

It looks like Office System is comming soon.  According to this press release http://www.microsoft.com/presspass/press/2006/nov06/11-062007OfficeRTMPR.mspx evaluation copies will be available December first.  But I think, according to what I've heard through the grape vine on Andrews blog, we'll all be able to get the bits around November 16th.

11/8/2006 7:42:55 AM (Eastern Standard Time, UTC-05:00)  #    Disclaimer  |  Comments [0]  |  Trackback
 Thursday, October 05, 2006

The virtual labs are the coolest thing in the world.  There are 4 new ones for SharePoint Portal Server and 22 at the time of this writing

http://msdn.microsoft.com/virtuallabs/office/default.aspx

Here's an rss feed for all labs, if you're into that sort of thing.

10/5/2006 6:52:54 AM (Eastern Daylight Time, UTC-04:00)  #    Disclaimer  |  Comments [2]  |  Trackback
 Wednesday, August 30, 2006

First of all I want to thank Andrew Connell for putting together the SharePoint track.  Way cool!  I'm not sure I've ever seen a track at a code camp, I'm pretty certain there's never been a SharePoint one.  There were many people who helped put this code camp together and it showed.  This Code Camp was very well organized and I learned stuff.   How do you beat that?

The organizers provided an optional slide deck theme.  I'm forever agonizing over what theme I should be using.  Maybe someday I'll produce a nice Wild Wires, LLC theme for code camps, but I doubt it.  There were lots of people to help folks find their sessions in the really terrific Advanced Technology Center building, Florida Community College at Jacksonville, I even signed up for wireless and it worked great.  I'm not sure if I understood correctly but I think the facility is available for rent.

Obligatory Restaurant Review

Preparing and going to a code camp is expensive, so I like to make a little vacation out of it for my family, even though they don't get to see me much.  On the way home we drove down A1A and stopped at a really cool restaurant Caps on the Water.  It's hard to tell if they were white collar bikers or not, but there sure was a lot of chrome everywhere.  The food was outstanding, everyone loved the hanger steak beef tips appetizer.  The gator tail was pretty cool until I got a nasty piece of gristle which made me focus more on the fish dip and 4 cheese fondue, both yummy.  The Shrimp Vilano, named after a nearby beach or town, was delicious!  After cruising down A1A with the windows down and the sun roof rolled back we were ready seek shelter from the oppressive Floridia heat so we ate inside.  There were a ton of tables outside right next to the water but we still had a great view.  Across the Intracostal is an airport we waited for planes to take off or land while being distracted by several nice boats cruising the water way.  If you ever get a chance to eat there I'd say do it, it's the classiest place you'll ever get to wear shorts too. 

One of the coolest things about traveling to the code camps.  It's all about getting to know the people and places around you, and figuring out what you don't know.  A perfect example, Duray and I ran into David Strommer at Deep Blue (a nightclub overlooking the beautiful St. Johns, one of the few north flowing rivers in the US).  David went on about rules engines and ilog and all kinds of great wonderful things that I had never heard of before.  The best I could come up with was, "Yeah, well I went fishing with my Dad and I caught a fish!"  Point being it's great to run into other people who are using the same technologies you are and see how differently (and how similarly) they are implementing them.  If you ever get a chance to go to a code camp in another area you should go.  It helps bring those tools and techniques back home and make your pool a little bit better.

Review of my Presentations

Something I'm learning how to do is review my own presentations,  I gave myself a 3 at this code camp but the population gave me a 6.  I really blew it.  I thought I was all set up, but I hadn't plugged in my laptop.  As a result it booted up from hibernate mode at 500mhz instead of the 1.8ghz.  Boy was that painful.  I rebooted a couple of times before I realized what was going on.  At this point I was about 6 to 10 minutes into my presentation.  I'm crawling around on the floor looking for a plug, since silence is deadly I'm telling everyone exactly what I was doing and what was going wrong.  It wasn't a pretty sight!  I think I recovered as well as anyone could from such a mistake and will have that one etched into my memory for a long time to come.  I spent a lot of time working on the abstract, with the help of Andrew and as obvious as it may seem, the abstract is what drives people to your session.  There were probably 15 to 20 people in that session about the Feature feature.  I know that they didn't just show up just because it talk about the Feature.  A lot of questions came up about what it is and isn't and when do you use it.  That again was my fault, I did have more information on what it is and when it's used but I botched it.  But I did finally manage to step through all of the things that you have to do to make a feature work so I got most of it out there.

Yet another cool thing about code camps, I can totally go in there and make a mess out of things and it's really not that big of a deal.  Code camp presentations are usually either good or great.  Mine was still on the good side because I did get information out there that people could use.  It certainly wasn't great.  But hey!  Maybe next time.  At a code camp even the worst presenter in the world is going to give a good presentation because the subject matter is about technologies they know and study and work with.  I think I've seen  something to the effect that code camps help local folks become regional folks.  I'm not a professional speaker.  I'm just someone who gets a charge out of showing potentially useful information to a group of people.  Maybe someday, if I screw up in enough code camps (I mean gain enough experience), I too will be among the ranks of desirable speakers.

I also did a presentation on the resources needed in a SharePoint environment.  This was to gear me up for an article I'm writing and I got some pretty good feedback out of there too.

Review of other Presentations

So there was this Cool Code contest.  I think Duray won only because he turned his kid orange.  I personally think mine was the coolest, I demonstrated how to iterate through the list of HTML elements to find the SharePoint form elements so that you could manipulate them.  I still think it's very cool and will post an article on it some time soon when I do the extensible fields in SharePoint, and show this technique as an alternative.  Jim Wooley had a pretty cool concept of generating an rss feed from the event log and that got him third place.  Jacob Sanford did an wonderful presentation on themes.  With the coolest part being that he inherited his own page.  Neat trick!  Joe Healy demonstrated AJAX and as I write this I realize that my presentation was almost as bad as his!   Holy crap I should just kill myself now!  Needless to say, the session was a lot of fun!

I saw Andrew Connell's presentation on creating your own successful blog.  I'm sure this post has him scratching his head wondering if I learned anything at all in his presentation.  I don't have the years of experience he does blogging but I'm stubborn non-the-less.  The one thing that I did really like he said is that you blog is your resume.  I really believe that.  What better way to demonstrate what I know and when and how I learned it.  You can't make this stuff up.  The point that I disagreed with him on is narrowing the subject matter of the blog.  Deep down inside I'm sure he's right.  Andrew is a one of those few great public speakers. 

Jacob Sanford gave a great presentation on ASP.NET themes.  I came out of there knowing exactly what I could do and how I to do it.  A presentation doesn't get any better than that. 

I have missed David McNamee's presentation 3 times on 'Making Technical Presentations'  I did catch the Q&A section and I know that I really have got to watch this presentation.  I've just hired a speaking coach, but I know this presentation is something that I have to watch.  You can just tell David has been doing this for a real long time.  Not just because he's old, but because you can see that when he's giving a presentation he really knows what he's doing. 

Jeff Barnes gave a cool talk on RFID that session answered some question and made new doors visible.  I'm trying to figure out how to approach my client with RFID.  I'm having a hard time figuring out what it costs them to not have it.

There was a lot of buzz about John Holliday's presentation on using reflection to create a SharePoint site definition in c# and Duray gave a great talk on the BDC (Business Data Catalog).

getting life back to normal

I under-slept all week last week and didn't even get to stay long at the party, that's my favorite part too!  Monday was crazy and yesterday was hurricane Ernesto preparation and party night.  A friend of mine bought an xbox and brought it over, while I was playing and he asked me if I thought I could play all night, I thought sure I probably could. . . but what he was really trying to tell me is that he wanted to take his game and go home.  Enesto turned out to not live up to his name.  I'm not even sure if it was a tropical storm as it passed through here.  Now my focus is on a Magazine article due Sept 8th (of this year!).

8/30/2006 8:52:58 PM (Eastern Daylight Time, UTC-04:00)  #    Disclaimer  |  Comments [0]  |  Trackback
 Wednesday, August 09, 2006

The Greater Southeast District Information Worker Community (GSDIWC) is a member only site that I participated in and won a X-Box 360 among other things. What follows below is a note from Mike Gannotti the site administrator:

Greetings All,

I had hoped to have the monthly newsletter out by now to include the winner announcement but have been buried and won’t have a chance to do that until tomorrow. However, since quite a few of you have inquired on this I thought I would quickly send out a note before I hit this road this morning.

Without further ado…… (drum roll please) The winner of the Xbox 360 contest is……… Stacy Draper!

Congratulations Stacy. A brand new shiny Xbox 360 will be headed your way. It pays to participate at GSDIWC. I will be announcing a new contest with a new top prize shortly but for those who may be interested the rules are the same as the previous contest. Best of all contributions (questions, answers, tips & tricks) submitted starting this month will count towards the next round. Well I have to hit the road so have a great day everyone.

You can go to the site and find the link to sign up and Mike will get you all hooked up.  Basically the contest is pretty simple.  It's a drawing and the entry is in the form of points.  the more points you ahve to more times you are entered to win.  I'm the guy who buys just one lottery ticket, but I really tilted it this time.  I entered a lot.  You get 1 point for each question you ask, 2 points for each question you answer and 5 point for writing an article.  Come to think of it I don't know how many points I earned.

Tell 'em I sent you!

8/9/2006 6:43:57 AM (Eastern Daylight Time, UTC-04:00)  #    Disclaimer  |  Comments [0]  |  Trackback

The Greater Southeast District Information Worker Community (GSDIWC) is a member only site that I participated in and won a X-Box 360 among other things. What follows below is a note from Mike Gannotti the site administrator:

Greetings All,

I had hoped to have the monthly newsletter out by now to include the winner announcement but have been buried and won’t have a chance to do that until tomorrow. However, since quite a few of you have inquired on this I thought I would quickly send out a note before I hit this road this morning.

Without further ado…… (drum roll please) The winner of the Xbox 360 contest is……… Stacy Draper!

Congratulations Stacy. A brand new shiny Xbox 360 will be headed your way. It pays to participate at GSDIWC. I will be announcing a new contest with a new top prize shortly but for those who may be interested the rules are the same as the previous contest. Best of all contributions (questions, answers, tips & tricks) submitted starting this month will count towards the next round. Well I have to hit the road so have a great day everyone.

You can go to the site and find the link to sign up and Mike will get you all hooked up.  Basically the contest is pretty simple.  It's a drawing and the entry is in the form of points.  the more points you ahve to more times you are entered to win.  I'm the guy who buys just one lottery ticket, but I really tilted it this time.  I entered a lot.  You get 1 point for each question you ask, 2 points for each question you answer and 5 point for writing an article.  Come to think of it I don't know how many points I earned.

Tell 'em I sent you!

8/9/2006 6:43:53 AM (Eastern Daylight Time, UTC-04:00)  #    Disclaimer  |  Comments [0]  |  Trackback
 Monday, July 17, 2006

I knew someone was going to do this I just didn't know how quickly.  It looks like Todd Baginski wins the BDC Application Race!  This guy is on fire! 

Also take a look at his Feature Manager Not to take anything away from his other posts.  By the way his posts are really more like articles, I get a lot out of them.  I remebmer the first post I read from this guy.  I thought he was full of crap, but he really did produce.

The world sorely needed this tool.  Keep up the great work!

7/17/2006 1:29:18 AM (Eastern Daylight Time, UTC-04:00)  #    Disclaimer  |  Comments [0]  |  Trackback
 Sunday, July 16, 2006

Hey I just saw this post on Stephen Cummins blog.  When is the RTM coming out?  Sounds like it might be soon.  I just told someone last week that it wouldn't be out until October, is that still accurate?

7/16/2006 11:22:21 PM (Eastern Daylight Time, UTC-04:00)  #    Disclaimer  |  Comments [3]  |  Trackback