<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://codebetter.com/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en"><title type="html">Rod Paddock</title><subtitle type="html" /><id>http://codebetter.com/blogs/rodpaddock/atom.aspx</id><link rel="alternate" type="text/html" href="http://codebetter.com/blogs/rodpaddock/default.aspx" /><link rel="self" type="application/atom+xml" href="http://codebetter.com/blogs/rodpaddock/atom.aspx" /><generator uri="http://communityserver.org" version="3.0.20416.853">Community Server</generator><updated>2007-07-12T11:49:00Z</updated><entry><title>Unlearn</title><link rel="alternate" type="text/html" href="http://codebetter.com/blogs/rodpaddock/archive/2008/05/09/unlearn.aspx" /><id>http://codebetter.com/blogs/rodpaddock/archive/2008/05/09/unlearn.aspx</id><published>2008-05-09T13:37:00Z</published><updated>2008-05-09T13:37:00Z</updated><content type="html">&lt;p&gt;&lt;em&gt;&lt;strong&gt;“You must unlearn what you have learned.”&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Yoda to Luke Skywalker Empire Strikes Back 1981&lt;/p&gt;
&lt;p&gt;I have become convinced that we are entering a new dawn of software development and we must take time to unlearn that which we know. Over the last 2 months I have been researching building business applications using Silverlight 2.0. In case you don’t know Silverlight 2.0 is a tool used to build Rich Internet Applications (RIA’s) Silverlight 1.1 (released in 2007) gave us a small glimpse of the future of RIA development.&amp;nbsp; This glimpse proved that Silverlight 1.1 was wholly lacking for business developers (it didn’t even have a button). Silverlight Version 2.0 (released at Mix 08 in Las Vegas, NV) is a different story. Silverlight 2.0 has all of the features a business developer might need. The control set includes: textboxes, buttons, watermark textboxes and, drum roll please, a DataGrid component. &lt;/p&gt;
&lt;p&gt;During my research I began experimenting with the DataGrid. I started (in XAML) adding columns to the DataGrid’s columns collection, setting data binding attributes, column widths and header properties. I then turned to the code portion of my research and DataGrid’s ItemSource property to a list of objects. I ran the application and lo-and-behold it worked (not the first time of course but eventually).&amp;nbsp; After getting my simple grid demo working I wanted to implement a simple, but common use case. I wanted to allow the user to sort the data by clicking on the column.&amp;nbsp; Here’s how it went:&lt;/p&gt;
&lt;p&gt;1.&amp;nbsp;Look for DataGrid properties called something like “AllowSort” &lt;br /&gt;2.&amp;nbsp;Look for header properties that would turn this feature on.&lt;br /&gt;3.&amp;nbsp;Look into the documentation for the DataGrid (samples, online, etc)&lt;br /&gt;4.&amp;nbsp;Download and open the source code for the DataGrid (yup you read that right its available to developers)&lt;/p&gt;
&lt;p&gt;I struck out on all accounts. It looked like I would be waiting for a new rev for this feature. I did take one more step though. I turned to my trusty search engine Google and typed in “silverilght 2.0 datagrid sort”. And look what I found: Matt Berseth (&lt;a href="http://mattberseth.com/blog/"&gt;http://mattberseth.com/blog/&lt;/a&gt;) had already figured this out in a very creative and enlightening way. Matt’s unique solution was to put a HyperlinkButton control into the DataGrid’s Header Content property. The Header object’s Content Property is defined as Object. The normal use case for this property is to specify a string as your header. But this is Silverlight and when a property says it’s an object it’s an object. This means you can replace the header content with a Hyperlink rather than a textbox. This is where my epiphany occurred:&lt;/p&gt;
&lt;p&gt;My typical path took me to the control itself. I searched for properties, events and even considered for a moment hacking up a hit test set of code to do this. It hadn’t occurred to me to composite some controls together to do what I wanted.&amp;nbsp; This is where I told myself I must unlearn what I know.&amp;nbsp; I must think of new and interesting ways to combine these controls to do new and interesting things. &lt;/p&gt;
&lt;p&gt;This epiphany raised its head again over the last 2 weeks. Over the last 6 months we have started the trek down the Agile Development path. This path has included installing and researching agile development applications including:&amp;nbsp; Nant, Nunit and Subversion.&amp;nbsp; We are using Nant and Nunit to automate our testing, and in the last two weeks we moved a large quantity of our source code into a Subversion repository. It’s this last application that has provided me with another epiphany.&amp;nbsp; Source code control in Subversion is “just different” than in Visual SourceSafe (our previous source code provider).&amp;nbsp; Visual SourceSafe is a pessimistic version control system (you lock files when you check them out) Subversion is just the opposite. All files are worked on in shared mode. Meaning two developers can work on the same file at the same time. It’s up to the developer to merge changes into the development branch of code when conflicts occur. Along with a different philosophy Subversion uses different terms: In Subversion Checkout means get a fresh set of code from the repository, Import means send source code to the repository. Commit means send your changes to the repository. Visual SourceSafe had different meanings for all of these terms. &lt;/p&gt;
&lt;p&gt;When I started using Subversion I found it difficult until I told myself what Yoda said: “You must unlearn what you have learned.” I closed the book on Visual SourceSafe and opened a new one on Subversion. I consulted the documentation to see what the Subversion philosophy is and what the terms in Subversion really mean. When I “forgot” what I knew about source code control from the VSS POV things began to become clear and the process of migrating much simpler.&lt;/p&gt;
&lt;p&gt;In today’s development world new technologies require new thinking. You need to unlearn what you already know. To find comfort in the unlearning process, take shelter in the words of Jedi Master Obi-Wan Kenobi to Luke Skywalker: “Luke… Let go. Trust the force”.&amp;nbsp; &lt;br /&gt;&lt;/p&gt;
crossposted from blog.dashpoint.com&lt;img src="http://codebetter.com/aggbug.aspx?PostID=177959" width="1" height="1"&gt;</content><author><name>rodpaddock</name><uri>http://codebetter.com/members/rodpaddock.aspx</uri></author></entry><entry><title>DevTeach Toronto 2008 = Agile Immersion</title><link rel="alternate" type="text/html" href="http://codebetter.com/blogs/rodpaddock/archive/2008/04/29/devteach-toronto-2008-agile-immersion.aspx" /><id>http://codebetter.com/blogs/rodpaddock/archive/2008/04/29/devteach-toronto-2008-agile-immersion.aspx</id><published>2008-04-29T17:30:00Z</published><updated>2008-04-29T17:30:00Z</updated><content type="html">&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;&lt;/font&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;If you want a good general immersion in Agile practices look no further than DevTeach (&lt;/font&gt;&lt;a href="http://www.devteach.com/"&gt;&lt;font face="Calibri" size="3"&gt;www.devteach.com&lt;/font&gt;&lt;/a&gt;&lt;font face="Calibri" size="3"&gt;)&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;Last DevTeach (in Vancouver) I sat through a number of Agile sessions with a fellow development partner. This parter had virtually no experience with Agile practices. After DevTeach we began discussions on implementing Agile practices in his 15+ developer shop. It was good for him to&amp;nbsp;hear from other developers about their experiences with Agile.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;So if you want to get your management, developers or development buddies on board with Agile then send them Toronto in May for DevTeach.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;PS: You can also stay for a post-con session on Building Business Apps with Silverlight 2.0 given by me and my business partner Jim Duffy &lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;PSS: Small conferences like DevTeach are MUCH better than large ones. Why: Because the speaker to attendee ratio is much lower and we can all interact much more…. I personally prefer small conferences over large ones.&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
crossposted from blog.dashpoint.com&lt;img src="http://codebetter.com/aggbug.aspx?PostID=177384" width="1" height="1"&gt;</content><author><name>rodpaddock</name><uri>http://codebetter.com/members/rodpaddock.aspx</uri></author></entry><entry><title>OT: SilverLight 2.0 = iPhone SDK</title><link rel="alternate" type="text/html" href="http://codebetter.com/blogs/rodpaddock/archive/2008/03/06/ot-silverlight-2-0-iphone-sdk.aspx" /><id>http://codebetter.com/blogs/rodpaddock/archive/2008/03/06/ot-silverlight-2-0-iphone-sdk.aspx</id><published>2008-03-06T17:08:00Z</published><updated>2008-03-06T17:08:00Z</updated><content type="html">&lt;p&gt;Maybe it&amp;#39;s&amp;nbsp; just a coincidence but I am thinking its not.&lt;/p&gt;
&lt;p&gt;I am at MIX 08 in Las Vegas and am eagerly awating&amp;nbsp;today&amp;#39;s keynote with Steve Ballmer and Guy Kawasaki.&lt;/p&gt;
&lt;p&gt;Funny thing is the whole timing of it all....&lt;/p&gt;
&lt;p&gt;1. Apple&amp;#39;s iPhone SDK Meeting is at 1:00pm Pacific&lt;/p&gt;
&lt;p&gt;2. MIX 08 Keynote is at 1:00pm Pacific.&lt;/p&gt;
&lt;p&gt;3. Guy Kawasaki is the former evangelist for Apple. Heck he started the whole software/hardware platform concept.&lt;/p&gt;
&lt;p&gt;4. Silverlight is a full functioned player on the Apple.&lt;/p&gt;
&lt;p&gt;5. Steve Jobs hates Flash &lt;a href="http://www.informationweek.com/blog/main/archives/2008/03/jobs_flash_not.html"&gt;http://www.informationweek.com/blog/main/archives/2008/03/jobs_flash_not.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;We got to see that Silverlight is a player in the Nokia space. Will we be developing iPhone and iTouch apps with Silverlight? As the Apple ad&amp;#39;s say: Imagine....&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;UPDATE: Oh Well! It was a fun thought for a few hours in any case.&amp;nbsp; &lt;/strong&gt;&lt;/p&gt;
crossposted from blog.dashpoint.com&lt;img src="http://codebetter.com/aggbug.aspx?PostID=174998" width="1" height="1"&gt;</content><author><name>rodpaddock</name><uri>http://codebetter.com/members/rodpaddock.aspx</uri></author></entry><entry><title>Public Speaking Anti Patterns</title><link rel="alternate" type="text/html" href="http://codebetter.com/blogs/rodpaddock/archive/2008/02/12/public-speaking-anti-patterns.aspx" /><id>http://codebetter.com/blogs/rodpaddock/archive/2008/02/12/public-speaking-anti-patterns.aspx</id><published>2008-02-13T01:24:00Z</published><updated>2008-02-13T01:24:00Z</updated><content type="html">&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;Public &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;Speaking Anti-Patterns&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;Last week fellow CodeBetter blogger Kyle Baley wrote a blog topic called “Presentation Topics” (&lt;/font&gt;&lt;a href="http://codebetter.com/blogs/kyle.baley/archive/2008/02/08/presentation-tips.aspx"&gt;&lt;font face="Calibri" color="#800080" size="3"&gt;http://codebetter.com/blogs/kyle.baley/archive/2008/02/08/presentation-tips.aspx&lt;/font&gt;&lt;/a&gt;&lt;font face="Calibri" size="3"&gt;)&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;He did a good job of presenting a number of useful tips for speaking.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;Well I am going take a shot here and point out a few bad habits that some of my fellow presenters have developed over the years that do nothing but piss me off because they should know better.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpFirst" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;1.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri" size="3"&gt;SHUT UP AND LISTEN – I cannot tell you how many speakers I have seen that interrupt questions from the audience.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpFirst" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;font face="Calibri" size="3"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;If you are going to allow questions in your sessions you need to shut up, listen, and let the person asking the question finish. &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;Don’t &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;interrupt!!!! &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;Don’t ASSume you know what the rest of the question is.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;2.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri" size="3"&gt;REPEAT THE QUESTION – Whenever a question is asked: &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;Repeat it out loud. That dude in the back probably didn’t hear the question from the front row.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;font face="Calibri" size="3"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;You need to be courteous to your audience and let them know what is happening.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;3.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri" size="3"&gt;MAKE SURE YOU KNOW WHAT THE QUESTION IS - &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;If you don’t know what the question means or don’t understand it here’s a tip: Say this to the questioner: “Can you say that another way?” &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;This will help you understand what they are really asking.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;4.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font size="3"&gt;&lt;font face="Calibri"&gt;LESS IS MORE – If you have 60 slides for a 60 minute session you are not going to get to the end. &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;5.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri" size="3"&gt;DON’T WRITE A BOOK – Slides are supposed to be outlines not dissertations. See #4.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;6.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri" size="3"&gt;DON’T UPGRADE YOUR MACHINE - The week/day/hour/minute before your session is not the time to install that new alpha, beta, omega version.&amp;nbsp;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;font face="Calibri" size="3"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Just because that beta is ready doesn’t mean your session is.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;If you do this you deserve to have your shit break.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;7.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri" size="3"&gt;DON’T MAKE EXCUSES - If stuff breaks in your session it’s your fault. You didn’t prepare properly. See #6 about upgrades.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;8.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri" size="3"&gt;DO THE JULIA CHILD – Ever watch cooking shows. They always have one that’s done and ready to serve. You should have a copy of your sample code that runs perfectly. &lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;font face="Calibri" size="3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If your demo breaks you can always go to that copy.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;9.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri" size="3"&gt;ARRIVE EARLY, SIT IN BACK – When you give a session you need to arrive early and check the lighting, sound, projection, etc in the room. All rooms are not created equally.&amp;nbsp;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;font face="Calibri" size="3"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Check your colors, fonts, etc. Set up your machine with code on it and go sit in the last row. Can you read it? If not adjust accordingly.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;10.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font size="3"&gt;&lt;font face="Calibri"&gt;ONE FOR THE AGILE DUDES- You need to have an outline of what you are going cover.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;In specifically titled sessions you need to have it planned and not do ad-hoc sessions. &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;11.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri" size="3"&gt;FINISH ON TIME - At the last conference I attended there were a number of sessions that ran way long. &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;Don’t do this!!! &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;It’s RUDE! It’s RUDE to the attendee, &lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;font face="Calibri" size="3"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RUDE to the conference coordinators and the RUDE to the next speaker. &lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;12.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font size="3"&gt;&lt;font face="Calibri"&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;AND FINALLY &lt;/b&gt;----- Don’t Ever Ask: “How much time do we have left” – This is my BIGGEST pet peave. &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;You might think it’s cute. It’s not… If you ask this in a session you are a total complete idiot.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;font size="3"&gt;&lt;font face="Calibri"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;If you want the real &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;answer to this question here it is: &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;“Here Mr./Ms./Mrs. speaker &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;let me look in the conference brochure and see what time the session with YOUR FREAKING NAME&amp;nbsp;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;font size="3"&gt;&lt;font face="Calibri"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;on it is supposed to start and end.” &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;Asking this question is unprofessional and silly. &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;Get the point?&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;font face="Calibri" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;/b&gt; 
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.25in;mso-add-space:auto;"&gt;&lt;font face="Calibri" size="3"&gt;I hope this lists helps you as a speaker and attendee. &lt;/font&gt;&lt;/p&gt;&lt;font face="Calibri" size="3"&gt;&amp;nbsp;&lt;/font&gt; 
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
crossposted from blog.dashpoint.com&lt;img src="http://codebetter.com/aggbug.aspx?PostID=174304" width="1" height="1"&gt;</content><author><name>rodpaddock</name><uri>http://codebetter.com/members/rodpaddock.aspx</uri></author></entry><entry><title>Microsoft Team Systems - Open Source Alternatives</title><link rel="alternate" type="text/html" href="http://codebetter.com/blogs/rodpaddock/archive/2007/12/14/microsoft-team-systems-open-source-alternatives.aspx" /><id>http://codebetter.com/blogs/rodpaddock/archive/2007/12/14/microsoft-team-systems-open-source-alternatives.aspx</id><published>2007-12-14T22:21:00Z</published><updated>2007-12-14T22:21:00Z</updated><content type="html">&lt;p&gt;I am heading to a client next week to see a demo of Microsoft Team Systems. My client got a preliminary prices for implementing Team Systems.&lt;/p&gt;
&lt;p&gt;Needless to say. Its not cheap....&lt;/p&gt;
&lt;p&gt;I want to have a good list of open source tools that will provide the same functionality as Team Systems. Maybe we can all contribute to a feature by feature list of open source tools and use this as a reference for later...&lt;/p&gt;
&lt;p&gt;Here&amp;#39;s a starting list&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;Testing - Nuniut&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;CI - Cruise Control&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;Build System - Nant&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;Version Control&amp;nbsp; - SubVersion &lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;What others should I add to the list&amp;nbsp;? Remember I need to replace all the functionality of team systems,&lt;/p&gt;
crossposted from blog.dashpoint.com&lt;img src="http://codebetter.com/aggbug.aspx?PostID=172020" width="1" height="1"&gt;</content><author><name>rodpaddock</name><uri>http://codebetter.com/members/rodpaddock.aspx</uri></author></entry><entry><title>AltNetConf Day2  - Agile and MVC Goodness</title><link rel="alternate" type="text/html" href="http://codebetter.com/blogs/rodpaddock/archive/2007/10/07/altnetconf-day2-agile-and-mvc-goodness.aspx" /><id>http://codebetter.com/blogs/rodpaddock/archive/2007/10/07/altnetconf-day2-agile-and-mvc-goodness.aspx</id><published>2007-10-07T20:03:00Z</published><updated>2007-10-07T20:03:00Z</updated><content type="html">&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;Day 2 went great. The group gathered for some opening remarks and immediately went into sessions. &lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;I was a participant in a discussion group where we discussed:&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt 0.5in;"&gt;&lt;font face="Calibri" size="3"&gt;Introducing Agile/Alt.Net into the work place&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt 0.5in;"&gt;&lt;font face="Calibri" size="3"&gt;Passion for Agile/Alt.Net&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt 0.5in;"&gt;&lt;font face="Calibri" size="3"&gt;Pragmatic a Agile/Alt.Net&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt 0.5in;"&gt;&lt;font face="Calibri" size="3"&gt;Being a catalyst for Agile/Alt.Net&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;The room was fairly full and some great conversations took place. Here are some of the ideas thrown out and recorded in my trusty Mead notebook:&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;JP Boodhoo &lt;/font&gt;&lt;a href="http://www.jpboodhoo.com/blog/"&gt;&lt;font face="Calibri" size="3"&gt;http://www.jpboodhoo.com/blog/&lt;/font&gt;&lt;/a&gt;&lt;font face="Calibri" size="3"&gt; started with “Passion does not necessarily incite action.” We discussed the concept that just because you are passionate you still need to take action. Passion for passions sake doesn’t do anything.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;One mechanism for facilitating agile adoption is to arrive with a solution in hand. Scott Bellware is famous for saying you won’t understand until you do it. &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;There is some truth to this. Agile is difficult to explain. It’s easier to see a readily provided solution.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;Another idea is to do a month of iterations and use this as a basis for examining agile success.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;Some stuff to look at:&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt 0.5in;"&gt;&lt;font face="Calibri" size="3"&gt;The Agile Contract&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt 0.5in;"&gt;&lt;font face="Calibri" size="3"&gt;The Pragmatic Programmer&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt 0.5in;"&gt;&lt;font face="Calibri" size="3"&gt;21 Laws of Leadership&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;Success is always easy to sell twice.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;You may need to introduce agile at a ground level. Start with one developer.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;Teach them. Have them teach too.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;Try lunch and learns.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;More stuff to look into&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt 0.5in;"&gt;&lt;font face="Calibri" size="3"&gt;Resharper&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt 0.5in;"&gt;&lt;font face="Calibri" size="3"&gt;Continuious Integration&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt 0.5in;"&gt;&lt;font face="Calibri" size="3"&gt;Cruise Control&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;Maybe you just need to do agile on a project and show the results after the fact. Returns to the statement: “success is easy to sell twice”.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;That was just my notes from session 1.&lt;/font&gt;&lt;/p&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;font size="3"&gt;&lt;font face="Calibri"&gt;Now on to Behavior Driven Development&lt;/font&gt;&lt;/font&gt;&lt;/b&gt; 
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;This intent of this session IMO was to discuss what BDD is and how to use it in your development process.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;I am not convinced that this session was successful as it seemed to degrade immediately.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;The meeting was started off with three moderators discussing their POV of POV. It was never made clear what the hell BDD really is. &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;The presenters should have started off defining what BDD is. Each person pretty much immediately jumped in discussing their favorite tools for doing BDD&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;In any case this session did provide me with some ideas.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;BDD to me looks like a way to gather requirements (stories) in a standardized way then being able to take those requirements and generate programming and acceptance tests.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;Scott Bellware shows a tool called Rspec that takes requirements from Ruby code (I believe) and puts them into a friendly/easy to read web interface. The thing that struck me as cool was the way in which requirements were spelled out. Stuff like:&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt 0.5in;"&gt;&lt;font face="Calibri" size="3"&gt;Registrants will receive an e-mail&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt 0.5in;"&gt;&lt;font face="Calibri" size="3"&gt;When signing up the registrant will be required to provide an e-mail address.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;The thing that I liked was the way they documented requirements. The language used was very cool.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;Another moderator showed his tool for recording stories. This persons’ tool showed a nice structure for recording requirements (stories) in a structured way. You can then generate testing artifacts from there system. &lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;I am not sure if this was the theme or intent. But I did come up with a concept that I would love to explore.&lt;/font&gt;&lt;/p&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;i style="mso-bidi-font-style:normal;"&gt;&lt;font size="3"&gt;&lt;font face="Calibri"&gt;How do we gather requirements in a more formalized and standard way? Language is important.&lt;/font&gt;&lt;/font&gt;&lt;/i&gt;&lt;/b&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;i style="mso-bidi-font-style:normal;"&gt;&lt;font face="Calibri" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;/i&gt;&lt;/b&gt; 
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;MVC and DLR (Dynamic Language Runtime) Goodness&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;The next sessions that I attended were the MVC and DLR Goodness sessions.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;ScottGu gave a kick ass session showing the new MVC framework. I am not going to write about what we saw as numerous other bloggers have done so. &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;Let’s just say this is a cool framework and I cannot wait to play with it in a couple of weeks. &lt;/font&gt;&lt;/p&gt;&lt;font face="Calibri" size="3"&gt;&amp;nbsp;&lt;/font&gt; 
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;After ScottGu was done Scott Hanselman gave a good session on how DLR’s will be implemented in the new MVC framework. I have never written a line of Python or Ruby so this was an interesting session from that angle.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;One thing I liked was that he showed the concepts surrounding creating your own Viewer in the new MVC framework. I can definitely see using the MVC framework when we implement WPF in our shop. &lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;I am VERY impressed with what the Scott’s. Contrary to other opinions Microsoft seems to get this area and is taking ACTION. (See theme above &amp;lt;G&amp;gt;)&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;One side note: When ScottGu&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;gets Ray Ozzies job. Scott Bellware will go work at Microsoft for ScottGu. &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;I was there when it was said. I have witnesses &amp;lt;G&amp;gt;&lt;/font&gt;&lt;/p&gt;&lt;font face="Calibri" size="3"&gt;&amp;nbsp;&lt;/font&gt; 
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
crossposted from blog.dashpoint.com&lt;img src="http://codebetter.com/aggbug.aspx?PostID=169328" width="1" height="1"&gt;</content><author><name>rodpaddock</name><uri>http://codebetter.com/members/rodpaddock.aspx</uri></author><category term="AltNetConf" scheme="http://codebetter.com/blogs/rodpaddock/archive/tags/AltNetConf/default.aspx" /></entry><entry><title>AltNetConf Day 1 - Fishbowls Rock!</title><link rel="alternate" type="text/html" href="http://codebetter.com/blogs/rodpaddock/archive/2007/10/06/altnetconf-day-1-fishbowls-rock.aspx" /><id>http://codebetter.com/blogs/rodpaddock/archive/2007/10/06/altnetconf-day-1-fishbowls-rock.aspx</id><published>2007-10-06T12:05:00Z</published><updated>2007-10-06T12:05:00Z</updated><content type="html">&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;OK so I am a newbie to Agile practices and this “conference” is a great place to become immersed in all that is Agile.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;Last night was very interesting. Over 100 people gathered in one room to create this conference. The meeting started a definition of alt.net and Open Spaces.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;The definition of Open Spaces is:&lt;/font&gt;&lt;/p&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;i style="mso-bidi-font-style:normal;"&gt;&lt;font size="3"&gt;&lt;font face="Calibri"&gt;Whoever shows up is the right group. Whatever happens is the only thing that could have. Whenever it starts is the right time. When it&amp;#39;s over, it&amp;#39;s over.&lt;/font&gt;&lt;/font&gt;&lt;/i&gt;&lt;/b&gt; 
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;A definition of bumblebees vs. butterflies was discussed. Are you a bumblebee or a butterfly? &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;Bumblebees go from one room to another landing and pollinating. Butterflies find a warm spot in the sun and take in their surroundings. &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;You can also take on different roles because of the rule of two feet:&lt;/font&gt;&lt;/p&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;i style="mso-bidi-font-style:normal;"&gt;&lt;font size="3"&gt;&lt;font face="Calibri"&gt;If you feel you aren’t learning or contributing you are encouraged to use the rule of two feet. Get up and move to another place.&lt;/font&gt;&lt;/font&gt;&lt;/i&gt;&lt;/b&gt; 
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;TEXT-ALIGN:justify;"&gt;&lt;font size="3"&gt;&lt;font face="Calibri"&gt;So after a briefing on the “rules” 100+ people introduced themselves. Lots of people from lots of places with very diverse goals for this gathering. &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;Scott Hanselman&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;a href="http://www.hanselman.com/blog/"&gt;&lt;font face="Calibri" size="3"&gt;http://www.hanselman.com/blog/&lt;/font&gt;&lt;/a&gt;&lt;font face="Calibri" size="3"&gt; had one of the best intros:&lt;/font&gt;&lt;/p&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;i style="mso-bidi-font-style:normal;"&gt;&lt;font size="3"&gt;&lt;font face="Calibri"&gt;Hi, I’m Scott Hanselman I hope to bring my entire 3 weeks of experience at MSFT to this meeting. My goal is to find out what we do so bad that it started a movement.&lt;/font&gt;&lt;/font&gt;&lt;/i&gt;&lt;/b&gt;&lt;font face="Calibri" size="3"&gt;&amp;nbsp;&lt;/font&gt; 
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;TEXT-ALIGN:justify;"&gt;&lt;font face="Calibri" size="3"&gt;Scott and Scott (Guthrie that is: &lt;/font&gt;&lt;a href="http://weblogs.asp.net/scottgu/"&gt;&lt;font face="Calibri" size="3"&gt;http://weblogs.asp.net/scottgu/&lt;/font&gt;&lt;/a&gt;&lt;font face="Calibri" size="3"&gt;) are here to join the conversation. This is a great thing. Of all the people I know from MSFT that listen these two dudes do.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;After the intros we learned about the concept of a fishbowl meeting. I tell you what this was one of the coolest concepts I have participated in. Basically 5 or 6 chairs are put in front of the room. One chair is left empty the others are filled with members of the meeting. The topic that started it all was what does alt.net mean to you. And then it begins. The people in the chairs begin the discussing putting for the there points. When someone wants to contribute they take the empty chair, the person that has been in a chair longest gets up. The discussion continues. There is a constant rotation of people sitting, giving a POV or comment, and getting up. I don’t know if I did this justice but a lot of cool ideas were discussed and it was rather fun.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font size="3"&gt;&lt;font face="Calibri"&gt;After the completion of the fishbowl the agenda was set. &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;While the fishbowl was going on people were able to take 6*9 post it pads and write down an ideas for things they would like to see or discuss. Immediately after the fishbowl people with session ideas stood up and presented their idea and put that idea on grid with rooms and time slots. I think there were over 50 post its on the board. Not too bad for 100 people. &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;After the agenda was put on the board people “voted” for the sessions they wanted to see by&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;putting their initials on the post it note. During the “voting process” endless hours of conversations happened. I was definitely a bumblebee. I flew from one small gathering to the next. From looking at a new MVC model being shown by ScottGu , discussions of UI testing with Jeremy Miller,&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;meeting the new editor of MSDN Magazine and countless others. This meeting is off to a great start.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;The one thing that drew me to this conference was the people. This is a real community of greate people sharing great ideas. This was not a fabricated community but one that formed like all great communities do: IT JUST HAPPENED. &lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;Now it’s off to Day 2&lt;/font&gt;&lt;/p&gt;&lt;font face="Calibri" size="3"&gt;&amp;nbsp;&lt;/font&gt; 
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://codebetter.com/aggbug.aspx?PostID=169287" width="1" height="1"&gt;</content><author><name>rodpaddock</name><uri>http://codebetter.com/members/rodpaddock.aspx</uri></author><category term="AltNetConf" scheme="http://codebetter.com/blogs/rodpaddock/archive/tags/AltNetConf/default.aspx" /></entry><entry><title>My First TDD Dividend(s)</title><link rel="alternate" type="text/html" href="http://codebetter.com/blogs/rodpaddock/archive/2007/10/05/my-first-tdd-dividend-s.aspx" /><id>http://codebetter.com/blogs/rodpaddock/archive/2007/10/05/my-first-tdd-dividend-s.aspx</id><published>2007-10-05T20:03:00Z</published><updated>2007-10-05T20:03:00Z</updated><content type="html">&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri"&gt;It’s now 6:30am here in Austin, TX and my first forays into TDD have paid their first real dividends.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri"&gt;Roy Osherove (&lt;/font&gt;&lt;a href="http://weblogs.asp.net/rosherove/"&gt;&lt;font face="Calibri"&gt;http://weblogs.asp.net/rosherove/&lt;/font&gt;&lt;/a&gt;&lt;font face="Calibri"&gt;) and I spent a couple of hours yesterday going over my system framework/architecture, installing nUnit and Test Driven.NET. We wrote one very simple contrived test and then left for BBQ with our bud Scott Bellware.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri"&gt;So it’s 4:00 am and I cannot sleep so I get up, do some client work and then return to so some tests on my own.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;So I refactored my customer business object. I added a rule to check that the last name is filled in.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;Then I wrote another test. The goal of this test was to make sure my validation engine worked and returned the proper error conditions.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri"&gt;So I ran the test and it failed. I’m like what? This should have worked. Why didn’t my rule(s) fire? So I looked into the framework code and low and behold. Looks like I never finished wiring in our new validation rules engine.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri"&gt;BINGO: Dividend 1 paid. We now need to finish wiring in the new validation engine.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri"&gt;So now I returned to making the test pass. I had a hook point where I could wire in manual calls to the validation engine. So I did that and restarted the test.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;Boom another failure. Now what happened? We have a set of code the integrity of the data being returned. Well when we have a data validation error we don’t return that data.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;Nice thing is that this section of the application is created via code-gen. I simply changed the script to test for the error condition. Now our test passed.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri"&gt;BINGO: Dividend 2 paid. We needed to fix some of our codegen templates. &lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri"&gt;So with just a few simple tests I found two very significant bugs in our framework. It’s nice to see that this stuff pays off so quickly.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri"&gt;The nice thing is that now I am confident that this stuff pays great dividends (and very quickly I might add). Also it’s great to see that it CAN be implemented against our framework. &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
crossposted from blog.dashpoint.com&lt;img src="http://codebetter.com/aggbug.aspx?PostID=169236" width="1" height="1"&gt;</content><author><name>rodpaddock</name><uri>http://codebetter.com/members/rodpaddock.aspx</uri></author></entry><entry><title>In Austin, TX for Alt.Net Conference</title><link rel="alternate" type="text/html" href="http://codebetter.com/blogs/rodpaddock/archive/2007/10/04/in-austin-tx-for-alt-net-conference.aspx" /><id>http://codebetter.com/blogs/rodpaddock/archive/2007/10/04/in-austin-tx-for-alt-net-conference.aspx</id><published>2007-10-04T20:55:00Z</published><updated>2007-10-04T20:55:00Z</updated><content type="html">&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;I flew in yesterday from Seattle to attend the Alt.Net conference (&lt;/font&gt;&lt;a href="http://www.altnetconf.com/"&gt;&lt;font face="Calibri" size="3"&gt;http://www.altnetconf.com&lt;/font&gt;&lt;/a&gt;&lt;font face="Calibri" size="3"&gt;) &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;I am here early because I am working with Roy Osherove (&lt;/font&gt;&lt;a href="http://weblogs.asp.net/rosherove/"&gt;&lt;font face="Calibri" size="3"&gt;http://weblogs.asp.net/rosherove/&lt;/font&gt;&lt;/a&gt;&lt;font face="Calibri" size="3"&gt;) to see how we can implement more Agile practices in our framework/architecture.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;Our framework/architecture is rather non-standard and breaks lots of “rules”&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpFirst" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;1.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri" size="3"&gt;We do all our database access via stored procedures&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;2.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri" size="3"&gt;We pass datasets over the wire to our service layers.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;3.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri" size="3"&gt;These datasets are un-typed datasets.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpLast" style="MARGIN:0in 0in 10pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l0 level1 lfo1;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;4.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri" size="3"&gt;We use a combined data access and business rules class.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;Our framework/architecture has a lot of cool features though:&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpFirst" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l1 level1 lfo3;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;1.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri" size="3"&gt;Works well with windows and web applications using an MVC style controller.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l1 level1 lfo3;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;2.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri" size="3"&gt;Is very scalable (we have some sites with a million+ users)&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l1 level1 lfo3;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;3.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri" size="3"&gt;Does a lot of legwork with templates and code generation.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l1 level1 lfo3;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;4.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri" size="3"&gt;Is fairly easy to use and grok.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpLast" style="MARGIN:0in 0in 10pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l1 level1 lfo3;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;5.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri" size="3"&gt;It has room for growth and improvement.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;My goals for this weekend:&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpFirst" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l2 level1 lfo2;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;1.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri" size="3"&gt;Figure out how to implement&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;TDD using our architecture&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l2 level1 lfo2;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;2.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri" size="3"&gt;Gather ideas on how we could move our framework forward &lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l2 level1 lfo2;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;3.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri" size="3"&gt;To hang out with the cool kidz coming to AltNetConf&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN:0in 0in 0pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l2 level1 lfo2;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;4.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri" size="3"&gt;To learn how other Agile techniques might work in our development environments.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpLast" style="MARGIN:0in 0in 10pt 0.5in;TEXT-INDENT:-0.25in;mso-list:l2 level1 lfo2;"&gt;&lt;span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin;"&gt;&lt;span style="mso-list:Ignore;"&gt;&lt;font face="Calibri" size="3"&gt;5.&lt;/font&gt;&lt;span style="FONT:7pt &amp;#39;Times New Roman&amp;#39;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;font face="Calibri" size="3"&gt;To have fun!&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;So I am here and if you want get in touch for dinner, Guinness, BBQ or just to hang…. Give me a ring 253-906-2342&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;crossposted from blog.dashpoint.com&lt;img src="http://codebetter.com/aggbug.aspx?PostID=169188" width="1" height="1"&gt;</content><author><name>rodpaddock</name><uri>http://codebetter.com/members/rodpaddock.aspx</uri></author></entry><entry><title>.NET Framework Code To Be Released</title><link rel="alternate" type="text/html" href="http://codebetter.com/blogs/rodpaddock/archive/2007/10/03/net-framework-code-to-be-released.aspx" /><id>http://codebetter.com/blogs/rodpaddock/archive/2007/10/03/net-framework-code-to-be-released.aspx</id><published>2007-10-03T16:59:00Z</published><updated>2007-10-03T16:59:00Z</updated><content type="html">&lt;p&gt;We will finally have access to the .NET Framework source code...&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Tahoma&amp;#39;,&amp;#39;sans-serif&amp;#39;;mso-fareast-font-family:&amp;#39;Times New Roman&amp;#39;;mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;a href="http://weblogs.asp.net/scottgu/archive/2007/10/03/releasing-the-source-code-for-the-net-framework-libraries.aspx"&gt;&lt;font color="#800080"&gt;http://weblogs.asp.net/scottgu/archive/2007/10/03/releasing-the-source-code-for-the-net-framework-libraries.aspx&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Tahoma&amp;#39;,&amp;#39;sans-serif&amp;#39;;mso-fareast-font-family:&amp;#39;Times New Roman&amp;#39;;mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;It will be great to use something other than Reflector to see what the heck is going on in there.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:&amp;#39;Tahoma&amp;#39;,&amp;#39;sans-serif&amp;#39;;mso-fareast-font-family:&amp;#39;Times New Roman&amp;#39;;mso-ansi-language:EN-US;mso-fareast-language:EN-US;mso-bidi-language:AR-SA;"&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
crossposted from blog.dashpoint.com&lt;img src="http://codebetter.com/aggbug.aspx?PostID=169155" width="1" height="1"&gt;</content><author><name>rodpaddock</name><uri>http://codebetter.com/members/rodpaddock.aspx</uri></author></entry><entry><title>Spelunking Silverlight Article Published </title><link rel="alternate" type="text/html" href="http://codebetter.com/blogs/rodpaddock/archive/2007/09/18/spelunking-silverlight-article-published.aspx" /><id>http://codebetter.com/blogs/rodpaddock/archive/2007/09/18/spelunking-silverlight-article-published.aspx</id><published>2007-09-18T23:26:00Z</published><updated>2007-09-18T23:26:00Z</updated><content type="html">&lt;p&gt;I just received word Part 1 of my Spelunking Silverlight article was published on the VB DevCenter!&lt;/p&gt;&amp;nbsp;&lt;a href="http://msdn2.microsoft.com/en-us/vbasic/default.aspx"&gt;&lt;font face="Calibri" size="3"&gt;http://msdn2.microsoft.com/en-us/vbasic/default.aspx&lt;/font&gt;&lt;/a&gt;
crossposted from blog.dashpoint.com&lt;img src="http://codebetter.com/aggbug.aspx?PostID=168205" width="1" height="1"&gt;</content><author><name>rodpaddock</name><uri>http://codebetter.com/members/rodpaddock.aspx</uri></author></entry><entry><title>Accessing External Assemblies from SQL Server CLR Stored Procedures</title><link rel="alternate" type="text/html" href="http://codebetter.com/blogs/rodpaddock/archive/2007/09/13/accessing-external-assemblies-from-sql-server-clr-stored-procedures.aspx" /><id>http://codebetter.com/blogs/rodpaddock/archive/2007/09/13/accessing-external-assemblies-from-sql-server-clr-stored-procedures.aspx</id><published>2007-09-13T22:31:00Z</published><updated>2007-09-13T22:31:00Z</updated><content type="html">&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;Accessing External Assemblies from SQL Server CLR Stored Procedures&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;In the last couple of weeks I have been working on a specialized set of CLR Stored procedures for communicating with a mainframe via an ODBC driver. Each CLR stored proc will send an SQL query to the server and then dump the results of that query into a SQL Server table. There will be around 50 CLR stored procedures used to do this.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;During this process I created an abstract class. This abstract class would be the basis for each CLR stored procedure. Because of the nature of CLR stored procedures (they are all shared/static functions) I had to create a new class for each mainframe call and then instantiate that from a separate CLR stored proc. &lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;The code is like this:&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;&lt;/font&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&amp;lt;Microsoft.SqlServer.Server.SqlProcedure()&amp;gt; _&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;Public Shared Sub CardholderNamesCLR(ByVal cAcctNo As String)&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;Dim oTest As New CardHolderNamesLib&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;oTest.cAcctNo = cAcctNo&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;oTest.RunProc()&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;End Sub &lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;From the code you can see that I create an instance of the CardHolderNamesLib class which inherits from my abstract class. This was all fine and good when all my concrete classes and abstract class existed in the same assembly.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;So after creating two or three of these classes the client came back to me and said: “We want to put each class and CLR stored proc in its own assembly. Note I said that my abstract and concrete classes existed in the same assembly. &lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;To a .NET programmer this would be simple. Just create new assembly and reference it from each CLR stored proc assembly. No problem right? Well… I wouldn’t be writing this post if it was that easy.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;So I created an external assembly… Went to my CLR stored procedure project and tried adding my assembly. Right clicked on my project…selected Add Reference and…. The list was rather limited:&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;span style="mso-no-proof:yes;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;&amp;nbsp;&lt;img title="Add Ref Dialog Part1" style="WIDTH:467px;HEIGHT:382px;" height="382" alt="Add Ref Dialog Part1" src="http://www.dashpoint.com/images/ClrAddReferencePart1.Gif" width="467" /&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;As you can see there’s no real way to add a reference to an external assembly.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;Well I did what all good developers do. I hit Google and after consulting numerous blogs and MSDN pages there I found no answer to my question. &lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;Well today I found my answer…by accident actually but I found it….&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;After deploying an assembly to my SQL Server I returned to my project and went to add a reference to one of the built in assemblies and what did I see. The assembly I had just deployed was there in the reference list. &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;Bingo! Now I could add a reference to an “external” assembly. The only requirement is the “external” assembly must be “pre-deployed” to the server. &lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;So I created a new SQL Server project from Visual Studio, added my abstract class and deployed that assembly to the server. Then I returned to my CLR stored procedure, went to the Add Reference dialog and there it was my assembly was included in the list of assemblies.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;&lt;img title="Add CLR Reference Part 2" style="WIDTH:467px;HEIGHT:382px;" height="382" alt="Add CLR Reference Part 2" src="http://www.dashpoint.com/images/ClrAddReferencePart2.Gif" width="467" /&gt;&lt;/font&gt;&lt;/p&gt;&lt;font face="Calibri" size="3"&gt;After this it was pretty simple to refactor all my code using&amp;nbsp;the&amp;nbsp;abstract class contained&amp;nbsp;in my &amp;quot;external&amp;quot; assembly.&lt;/font&gt;&lt;font face="Calibri" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;font face="Calibri" size="3"&gt;The funny thing about this was the total lack of posts about this subject. I guess the concept of abstract classes, concrete classes and inheritance has not made it far into the SQL Server world.&lt;/font&gt; 
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;span style="mso-no-proof:yes;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;font face="Calibri" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;font face="Calibri" size="3"&gt;&amp;nbsp;&lt;/font&gt; 
&lt;p&gt;&amp;nbsp;&lt;/p&gt;crossposted from blog.dashpoint.com&lt;img src="http://codebetter.com/aggbug.aspx?PostID=167933" width="1" height="1"&gt;</content><author><name>rodpaddock</name><uri>http://codebetter.com/members/rodpaddock.aspx</uri></author></entry><entry><title>MSDN Canada Speaking Engagements and INETA</title><link rel="alternate" type="text/html" href="http://codebetter.com/blogs/rodpaddock/archive/2007/09/11/msdn-canada-speaking-engagements-and-ineta.aspx" /><id>http://codebetter.com/blogs/rodpaddock/archive/2007/09/11/msdn-canada-speaking-engagements-and-ineta.aspx</id><published>2007-09-11T13:37:00Z</published><updated>2007-09-11T13:37:00Z</updated><content type="html">&lt;font face="Times New Roman" size="3"&gt;&lt;/font&gt;&amp;nbsp; 
&lt;p class="MsoNoSpacing" style="MARGIN:0in 0in 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;I have a couple of speaking engagements coming up in British Columbia.&lt;/font&gt;&lt;/p&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt; 
&lt;p class="MsoNoSpacing" style="MARGIN:0in 0in 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;Tuesday October 9&lt;sup&gt;th&lt;/sup&gt;, 2007&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNoSpacing" style="MARGIN:0in 0in 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;Vancouver BC&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNoSpacing" style="MARGIN:0in 0in 0pt;"&gt;&lt;a href="http://www.netbc.ca/DNCal/NetBcEvents.aspx"&gt;&lt;font face="Times New Roman" color="#800080" size="3"&gt;http://www.netbc.ca/DNCal/NetBcEvents.aspx&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;font size="3"&gt;&lt;font face="Times New Roman"&gt;Silverlight Adventures&lt;/font&gt;&lt;/font&gt;&lt;/b&gt; 
&lt;p class="MsoNoSpacing" style="MARGIN:0in 0in 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;At MIX 07 in Las Vegas Microsoft released a new web development platform known as Silverlight. This session will demonstrate a number of features of Silverlight.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNoSpacing" style="MARGIN:0in 0in 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;Come prepared to learn: How to create a basic Silverlight application, how to control the Browser DOM with Silverlight, how to retrieve data into your Silverlight application using web services and finally how to send data to your web services from Silverlight. You should walk away from this session with a good understanding of the capabilities and limitations of Silverlight.&lt;/font&gt;&lt;/p&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt; 
&lt;p class="MsoNoSpacing" style="MARGIN:0in 0in 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;Wed October 10&lt;sup&gt;th&lt;/sup&gt;, 2007&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNoSpacing" style="MARGIN:0in 0in 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;Victoria, BC &lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNoSpacing" style="MARGIN:0in 0in 0pt;"&gt;&lt;a href="http://vicdotnet.org/Default.aspx"&gt;&lt;font face="Times New Roman" color="#800080" size="3"&gt;http://vicdotnet.org/Default.aspx&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;font size="3"&gt;&lt;font face="Times New Roman"&gt;Ajaxing Your Applications&lt;/font&gt;&lt;/font&gt;&lt;/b&gt; 
&lt;p class="MsoNoSpacing" style="MARGIN:0in 0in 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;Last Year Microsoft released a set of ASP.NET Ajax extensions. These extensions enable you to add Web 2.0 Style features to your ASP.NET Applications with little or no effort. In this session you will learn how to create new ASP.NET Ajax applications, how to incorporate Ajax into existing ASP.NET applications, what happens when you incorporate Ajax features into your web forms and overall how you can make your web forms smoother and more interactive. You will also learn how to incorporate the controls provided by the ASP.NET Ajax Control Toolkit.&lt;/font&gt;&lt;/p&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt; 
&lt;p class="MsoNoSpacing" style="MARGIN:0in 0in 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;November 26 to 30th&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNoSpacing" style="MARGIN:0in 0in 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;DevTeach&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNoSpacing" style="MARGIN:0in 0in 0pt;"&gt;&lt;a href="http://www.devteach.com/"&gt;&lt;font face="Times New Roman" color="#800080" size="3"&gt;www.devteach.com&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;&lt;font face="Times New Roman" size="3"&gt;&amp;nbsp;&lt;/font&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;font size="3"&gt;&lt;font face="Times New Roman"&gt;INETA Bound&lt;/font&gt;&lt;/font&gt;&lt;/b&gt; 
&lt;p class="MsoNoSpacing" style="MARGIN:0in 0in 0pt;"&gt;&lt;font face="Times New Roman" size="3"&gt;Also some good news… Last week I became an INETA speaker. I look forward to speaking at more user groups around the country and potentially the world. Thanks for all of those who helped make that happen.&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
crossposted from blog.dashpoint.com&lt;img src="http://codebetter.com/aggbug.aspx?PostID=167831" width="1" height="1"&gt;</content><author><name>rodpaddock</name><uri>http://codebetter.com/members/rodpaddock.aspx</uri></author><category term="DevCenter" scheme="http://codebetter.com/blogs/rodpaddock/archive/tags/DevCenter/default.aspx" /><category term="VB" scheme="http://codebetter.com/blogs/rodpaddock/archive/tags/VB/default.aspx" /><category term="VB DevCenter" scheme="http://codebetter.com/blogs/rodpaddock/archive/tags/VB+DevCenter/default.aspx" /></entry><entry><title>Fiddler to the Rescue</title><link rel="alternate" type="text/html" href="http://codebetter.com/blogs/rodpaddock/archive/2007/09/03/fiddler-to-the-rescue.aspx" /><id>http://codebetter.com/blogs/rodpaddock/archive/2007/09/03/fiddler-to-the-rescue.aspx</id><published>2007-09-03T19:58:00Z</published><updated>2007-09-03T19:58:00Z</updated><content type="html">&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;Fiddler to the Rescue&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;Last week I was working on a Sliverlight 1.1 article for the Visual Basic DevCenter (&lt;/font&gt;&lt;a href="http://msdn2.microsoft.com/en-us/vbasic/default.aspx"&gt;&lt;font face="Calibri" color="#800080" size="3"&gt;http://msdn2.microsoft.com/en-us/vbasic/default.aspx&lt;/font&gt;&lt;/a&gt;&lt;font face="Calibri" size="3"&gt;) &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;and ran into some problems &lt;/font&gt;&lt;font face="Calibri" size="3"&gt;making my Silverlight application communicate with a web service I included in my examples.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;After some discussion with Rick Strahl (&lt;/font&gt;&lt;a href="http://www.west-wind.com/blog"&gt;&lt;font face="Calibri" size="3"&gt;www.west-wind.com/weblog&lt;/font&gt;&lt;/a&gt;&lt;font face="Calibri" size="3"&gt;) he told me to use Fiddler to diagnose my problem. Fiddler is a free HTTP sniffer that can be found at &lt;/font&gt;&lt;a href="http://www.fiddlertool.com/fiddler/"&gt;&lt;font face="Calibri" color="#800080" size="3"&gt;http://www.fiddlertool.com/fiddler/&lt;/font&gt;&lt;/a&gt;&lt;font face="Calibri" size="3"&gt; &lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;Fiddler is a tool that “sniffs” all HTTP traffic by inserting a proxy between the WinInet stack your web calls.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;The proxy then outputs its results to a very cool windows application that will display your traffic real time. The following screen shows the output of the current version of fiddler.&lt;/font&gt;&lt;/p&gt;&lt;img alt="Flddler 2.0 screen" src="http://www.dashpoint.com/images/fiddlerscreenshot.jpg" /&gt; 
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&amp;nbsp;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;After installing Fiddler it took me all of 5 minutes to see that I was not properly flushing a send buffer resulting in a bunch of “500” results calls. I added a single line of code and my code was working properly. &lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;On item of note Fiddler will not trace calls made to 127.0.0.1 or localhost. If you are debugging local applications you will need to address them via your machine name.&lt;/font&gt;&lt;/p&gt;&lt;font face="Calibri" size="3"&gt;&amp;nbsp;&lt;/font&gt; 
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
crossposted from blog.dashpoint.com&lt;img src="http://codebetter.com/aggbug.aspx?PostID=167449" width="1" height="1"&gt;</content><author><name>rodpaddock</name><uri>http://codebetter.com/members/rodpaddock.aspx</uri></author><category term="DevCenter" scheme="http://codebetter.com/blogs/rodpaddock/archive/tags/DevCenter/default.aspx" /><category term="VB" scheme="http://codebetter.com/blogs/rodpaddock/archive/tags/VB/default.aspx" /><category term="VB DevCenter" scheme="http://codebetter.com/blogs/rodpaddock/archive/tags/VB+DevCenter/default.aspx" /></entry><entry><title>Server Virtualization the New Snake Oil</title><link rel="alternate" type="text/html" href="http://codebetter.com/blogs/rodpaddock/archive/2007/07/12/server-virtualization-the-new-snake-oil.aspx" /><id>http://codebetter.com/blogs/rodpaddock/archive/2007/07/12/server-virtualization-the-new-snake-oil.aspx</id><published>2007-07-12T18:49:00Z</published><updated>2007-07-12T18:49:00Z</updated><content type="html">&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;There is a new snake oil on sale and its name is Server Virtualization.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;The salespeople at VMWARE and other server virtualization companies are really good at their jobs. Somehow they have convinced companies that virtualized server environments are better than bare metal installations.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;You must be kidding.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;I have two clients that are using server virtualization. &lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;The first is running a large SQL Server installation on a virtualized set of servers at a hosting company. This is a high availability and supposed to be a high performance system. My question is this: How are you ever going to be able to take full advantage of the hardware underlying your system if you have put a virtualization system over the operating system?&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;At the second client we had 8 batch processing machines. These machines run 24*7 and process file transfers, data transformations, data cleanup, data scoring, etc… At least we did have 8 machines. &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;What we have now is a set of 8 virtualized machines running on one big box… &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;Not too long after the installation of this environment you know what happened? The single box we use crapped out hard. So now we had 8 dead virtual machines. In the old arrangement we had 8 machines reducing the potential footprint for hardware failure. Now we have one big point of failure. How does this sound like a good idea?&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;Virtualization is a great tool for developers. &lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/span&gt;I feel it is entirely inappropriate for server environments.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN:0in 0in 10pt;"&gt;&lt;font face="Calibri" size="3"&gt;Does your company use virtualized servers? Do your clients use virtualized servers? Good idea or bad idea?&lt;/font&gt;&lt;/p&gt;&lt;span&gt;&lt;/span&gt;crossposted from blog.dashpoint.com 
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://codebetter.com/aggbug.aspx?PostID=165528" width="1" height="1"&gt;</content><author><name>rodpaddock</name><uri>http://codebetter.com/members/rodpaddock.aspx</uri></author></entry></feed>