<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-29534694</id><updated>2011-10-10T06:48:10.897-04:00</updated><category term='Karma'/><category term='Python'/><category term='XBox'/><category term='Vista'/><category term='Twitter'/><category term='Team Foundation Server'/><category term='Architecture'/><category term='weight loss'/><category term='Road Trip'/><category term='Music'/><category term='Crime'/><category term='Entertainment'/><category term='Workflow'/><category term='F#'/><category term='Web 2.0'/><category term='SOA'/><category term='Rock Band'/><category term='CodeMash'/><category term='Development'/><category term='Day of .NET'/><category term='TDD'/><category term='Aggrevation'/><category term='WCF'/><category term='Service Factory'/><category term='Shameless self promotion'/><category term='Humor'/><category term='Goodbye Blogger'/><category term='Events'/><category term='Media'/><category term='.NET'/><title type='text'>Bender's Blog</title><subtitle type='html'>Whatever is on the top of the stack.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>77</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-29534694.post-2849691298273922024</id><published>2008-02-23T22:23:00.003-05:00</published><updated>2008-02-23T22:28:28.276-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Goodbye Blogger'/><title type='text'>This is not the blog you are looking for....</title><content type='html'>I have upgraded to SubText! You can find this blog now at &lt;a href="http://jamescbender.com/"&gt;http://jamescbender.com&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;For those of you still getting this via RSS fieed, you're obviously not using the feedburner feed since I'be already switched that over. To switch, point your reader at &lt;a href="http://feeds.feedburner.com/BendersBlog"&gt;http://feeds.feedburner.com/BendersBlog&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I'm not moving all the old posts (probably just the recent WCF ones), so this blog will continue to operate, but there will be no new content.&lt;br /&gt;&lt;br /&gt;See you on the other side.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-2849691298273922024?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/2849691298273922024/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=2849691298273922024' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/2849691298273922024'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/2849691298273922024'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2008/02/this-is-not-blog-you-are-looking-for.html' title='This is not the blog you are looking for....'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-228004934696894875</id><published>2008-02-22T10:58:00.002-05:00</published><updated>2008-02-22T11:05:42.339-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Entertainment'/><category scheme='http://www.blogger.com/atom/ns#' term='WCF'/><title type='text'>How "WCF Guy" packs</title><content type='html'>&lt;p&gt;So, &lt;a href="http://brianhprince.blogspot.com/"&gt;Brian Prince&lt;/a&gt; is leaving our company for Microsoft, and he's not the only one packing his stuff! Just so happens this is happening at a time when the whole company is moving to swanky new digs on the other side of the freeway.&lt;/p&gt;&lt;p&gt;Trust me, it's nicer than it sounds.&lt;/p&gt;&lt;p&gt;By way of documenting this, Brian has started a little Meme; how does &amp;lt;insert characteristic of you choice&amp;gt;guy pack.&lt;/p&gt;&lt;p&gt;I got tagged as the WCF guy (naturally) so I started thinking about how a WCF guy would pack. I quickly realized that I would probably want to do as much of it in configuration as possible.&lt;/p&gt;&lt;p&gt;Enjoy!&lt;/p&gt;&lt;pre class="code"&gt;&lt;span style="color:blue;"&gt;&amp;lt;?&lt;/span&gt;&lt;span style="color:#a31515;"&gt;xml &lt;/span&gt;&lt;span style="color:red;"&gt;version&lt;/span&gt;&lt;span style="color:blue;"&gt;=&lt;/span&gt;"&lt;span style="color:blue;"&gt;1.0&lt;/span&gt;" &lt;span style="color:red;"&gt;encoding&lt;/span&gt;&lt;span style="color:blue;"&gt;=&lt;/span&gt;"&lt;span style="color:blue;"&gt;utf-8&lt;/span&gt;"&lt;span style="color:blue;"&gt;?&amp;gt;&lt;br /&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;configuration&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;br /&gt;    &amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;system.PackingModel&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;br /&gt;        &amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;activities&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;br /&gt;            &amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;activity &lt;/span&gt;&lt;span style="color:red;"&gt;name&lt;/span&gt;&lt;span style="color:blue;"&gt;=&lt;/span&gt;"&lt;span style="color:blue;"&gt;packing&lt;/span&gt;" &lt;span style="color:red;"&gt;behaviorConfiguration&lt;/span&gt;&lt;span style="color:blue;"&gt;=&lt;/span&gt;"&lt;span style="color:blue;"&gt;packingBehavior&lt;/span&gt;"&lt;span style="color:blue;"&gt;&amp;gt;               &lt;br /&gt;                &amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;container &lt;/span&gt;&lt;span style="color:red;"&gt;address&lt;/span&gt;&lt;span style="color:blue;"&gt;=&lt;/span&gt;"&lt;span style="color:blue;"&gt;sittingOnADolly&lt;/span&gt;"&lt;br /&gt;                           &lt;span style="color:red;"&gt;binding&lt;/span&gt;&lt;span style="color:blue;"&gt;=&lt;/span&gt;"&lt;span style="color:blue;"&gt;box&lt;/span&gt;"&lt;br /&gt;&lt;span style="color:red;"&gt;bindingConfiguration&lt;/span&gt;&lt;span style="color:blue;"&gt;=&lt;/span&gt;"&lt;span style="color:blue;"&gt;providedMovingBoxes&lt;/span&gt;"&lt;br /&gt;                           &lt;span style="color:red;"&gt;contract&lt;/span&gt;&lt;span style="color:blue;"&gt;=&lt;/span&gt;"&lt;span style="color:blue;"&gt;IHoldsYourCrap&lt;/span&gt;"&lt;span style="color:blue;"&gt;/&amp;gt;&lt;br /&gt;            &amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;activity&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;br /&gt;        &amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;activities&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;br /&gt;        &amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;bindings&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;br /&gt;            &amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;box&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;br /&gt;                &amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;binding &lt;/span&gt;&lt;span style="color:red;"&gt;name&lt;/span&gt;&lt;span style="color:blue;"&gt;=&lt;/span&gt;"&lt;span style="color:blue;"&gt;providedMovingBoxes&lt;/span&gt;"&lt;span style="color:blue;"&gt;&amp;gt;&lt;br /&gt;                    &amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;material &lt;/span&gt;&lt;span style="color:red;"&gt;plastic&lt;/span&gt;&lt;span style="color:blue;"&gt;=&lt;/span&gt;"&lt;span style="color:blue;"&gt;true&lt;/span&gt;"&lt;span style="color:blue;"&gt;/&amp;gt;&lt;br /&gt;                    &amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;port &lt;/span&gt;&lt;span style="color:red;"&gt;mode&lt;/span&gt;&lt;span style="color:blue;"&gt;=&lt;/span&gt;"&lt;span style="color:blue;"&gt;flipOpenTop&lt;/span&gt;"&lt;span style="color:blue;"&gt;/&amp;gt;&lt;br /&gt;                    &amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;transport &lt;/span&gt;&lt;span style="color:red;"&gt;mode&lt;/span&gt;&lt;span style="color:blue;"&gt;=&lt;/span&gt;"&lt;span style="color:blue;"&gt;onADolly&lt;/span&gt;"&lt;span style="color:blue;"&gt;/&amp;gt;&lt;br /&gt;                    &amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;security &lt;/span&gt;&lt;span style="color:red;"&gt;mode&lt;/span&gt;&lt;span style="color:blue;"&gt;=&lt;/span&gt;"&lt;span style="color:blue;"&gt;hopeNobodySeesAnythingTheyWantAndTakesIt&lt;/span&gt;"&lt;span style="color:blue;"&gt;/&amp;gt;&lt;br /&gt;                &amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;binding&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;br /&gt;            &amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;box&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;br /&gt;        &amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;bindings&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;br /&gt;        &amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;behaviors&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;br /&gt;            &amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;packingBehaviors&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;br /&gt;                &amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;behavior &lt;/span&gt;&lt;span style="color:red;"&gt;name&lt;/span&gt;&lt;span style="color:blue;"&gt;=&lt;/span&gt;"&lt;span style="color:blue;"&gt;packingBehavior&lt;/span&gt;"&lt;span style="color:blue;"&gt;&amp;gt;&lt;br /&gt;                    &amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;breakableProtection &lt;/span&gt;&lt;span style="color:red;"&gt;bubbleWrapEnabled&lt;/span&gt;&lt;span style="color:blue;"&gt;=&lt;/span&gt;"&lt;span style="color:blue;"&gt;true&lt;/span&gt;"&lt;span style="color:blue;"&gt;/&amp;gt;&lt;br /&gt;                    &amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;containerReturn &lt;/span&gt;&lt;span style="color:red;"&gt;returnContainer&lt;/span&gt;&lt;span style="color:blue;"&gt;=&lt;/span&gt;"&lt;span style="color:blue;"&gt;true&lt;/span&gt;"&lt;br /&gt;&lt;span style="color:red;"&gt;fineIfNotReturned&lt;/span&gt;&lt;span style="color:blue;"&gt;=&lt;/span&gt;"&lt;span style="color:blue;"&gt;$45.00orSomething...&lt;/span&gt;"&lt;span style="color:blue;"&gt;/&amp;gt;&lt;br /&gt;                    &amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;bubbleWrapReturn &lt;/span&gt;&lt;span style="color:red;"&gt;returnBubbleWrap&lt;/span&gt;&lt;span style="color:blue;"&gt;=&lt;/span&gt;"&lt;span style="color:blue;"&gt;true&lt;/span&gt;"&lt;br /&gt;&lt;span style="color:red;"&gt;fineIfNotReturned&lt;/span&gt;&lt;span style="color:blue;"&gt;=&lt;/span&gt;"&lt;span style="color:blue;"&gt;20Bucks?!&lt;/span&gt;"&lt;span style="color:blue;"&gt;/&amp;gt;&lt;br /&gt;                &amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;behavior&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;br /&gt;            &amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;packingBehaviors&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;br /&gt;        &amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;behaviors&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;br /&gt;    &amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;system.PackingModel&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;br /&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;configuration&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;a href="http://11011.net/software/vspaste"&gt;&lt;/a&gt;I apologize for the weird layout. I'm in the process of making some "major" changes to accommodate stuff like this in the future.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-228004934696894875?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/228004934696894875/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=228004934696894875' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/228004934696894875'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/228004934696894875'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2008/02/how-guy-packs.html' title='How &amp;quot;WCF Guy&amp;quot; packs'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-2993586126397950824</id><published>2008-02-14T11:45:00.001-05:00</published><updated>2008-02-14T11:45:07.608-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Entertainment'/><category scheme='http://www.blogger.com/atom/ns#' term='Media'/><title type='text'>Is There Something I'm Missing Here...?</title><content type='html'>&lt;p&gt;So, I guess as much as I hate to admit it, it looks like HD-DVD has lost and Blu-Ray has won. HD-DVD fought hard, but in the end Blu-Ray&amp;#160; had enough money to &lt;strike&gt;bribe&lt;/strike&gt; &amp;quot;create synergies&amp;quot; with all but two of the major movie studios. Add to that the one-two punch from Best Buy and Netflix this week and it looks like it's all over. Frankly, I was hoping the war would just stalemate until the next big thing, probably streaming media, came in and crushed both with one blow.&lt;/p&gt;  &lt;p&gt;So what we end up with is admittedly a technically superior format, however one that is controlled by one party: Sony.&lt;/p&gt;  &lt;p&gt;Now that the war seems to be over, I'm seeing a lot of people posting on various on-line forums that prices of players will be coming down.&lt;/p&gt;  &lt;p&gt;Wait.&lt;/p&gt;  &lt;p&gt;As is my understanding Blu-Ray is controlled by Sony. Companies that want to make said hardware pay a licensing fee to Sony to use the Blu-Ray technology. No matter who you are, if you want to make a Blu-Ray disc player you have to pay Sony. This creates a situation where there is one company that controls creation and distribution of a product. &lt;/p&gt;  &lt;p&gt;So, what incentive does Sony have to lower the prices? They are the only game in town, and could charge whatever they want. Now, I know that Sony isn't going to do something stupid like price themselves out of the market, and I don't begrudge them the right to make whatever they feel they deserve out of their creation. But seeing as they just spent a ton of money to &amp;quot;synergize&amp;quot; with all these studios, I don't see how the this is going to translate into lower prices for Blu-Ray players.&lt;/p&gt;  &lt;p&gt;Am I wrong here? I hope I am because I can't see myself paying $300 for a Blu-Ray player. And yes, I know the Play Station 3 plays Blu-Ray movies and games. I barely have time to use the XBox I have, I don't need (or really want) another gaming console.&lt;/p&gt;  &lt;p&gt;On the plus side, the HD-DVD fire sales have already begun. If you're a movie collector now might be the time to pick up an HD-DVD player and some movies on the cheap.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-2993586126397950824?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/2993586126397950824/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=2993586126397950824' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/2993586126397950824'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/2993586126397950824'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2008/02/is-there-something-i-missing-here.html' title='Is There Something I&amp;#39;m Missing Here...?'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-333996399003950567</id><published>2008-02-11T09:07:00.001-05:00</published><updated>2008-02-11T09:07:44.256-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='WCF'/><title type='text'>Making WCF "Behave" - Part Two</title><content type='html'>&lt;p&gt;If you read my &lt;a href="http://benders-blog.blogspot.com/2008/02/making-wcf-part-one.html"&gt;last post&lt;/a&gt;, you should have a pretty good idea of how Behaviors fit into the WCF stack and know that they have the ability to effect the runtime &lt;em&gt;behavior&lt;/em&gt; (clever, huh) of your WCF host and/or client runtime by effecting the communication between dispatchers. If you missed this post, go ahead a read it now, I'll wait.&lt;/p&gt;  &lt;p&gt;Done? Good.&lt;/p&gt;  &lt;p&gt;In this post we are going to focus on service side behaviors (I'll cover client side behaviors soon). &lt;/p&gt;  &lt;p&gt;Before we start slingin' code, it important to understand where the extensibility points for WCF behaviors are. On the service side there are two classes you can attach behaviors to. That are the System.ServiceModel.Dispatcher.DispatchOperation and the System.ServiceModel.Dispatcher.DispatchRuntime. Within each of these are properties that take a specific kind of interface which will be implemented by our custom behavior. Here is a quick guide to which property of which class takes which kind of interface.&lt;/p&gt;  &lt;p&gt;DispatchRuntime&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;MessageInspectors takes IDispatchMessageInspector &lt;/li&gt;    &lt;li&gt;InstanceContextProvider takes IInstanceContextProvider &lt;/li&gt;    &lt;li&gt;InstanceProvider takes IInstanceProvider &lt;/li&gt;    &lt;li&gt;OperationSelector takes IDispatchOperationSelector &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;DispatchOperation&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;ParameterInspector takes IParameterInspector &lt;/li&gt;    &lt;li&gt;OperationInvoker takes IOperationInvoker &lt;/li&gt;    &lt;li&gt;Formatter takes IDispatchMessageFormatter &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Each property/interface pair performs a specific function in the WCF plumbing. Some are pretty obvious based on their names, others are not. I'll cover these in more detail in my upcoming seven part series &amp;quot;Better Know A Dispatcher Behavior.&amp;quot;&lt;/p&gt;  &lt;p&gt;If that doesn't make a whole lot of sense yet don't worry. As we work with behaviors just refer back to it and it will start to make sense&lt;/p&gt;  &lt;p&gt;OK, enough theory, lets write some code!&lt;/p&gt;  &lt;p&gt;Here we have an extremely basic WCF service:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;[ServiceContract]      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; public interface IHelloWCF       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; {       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; [OperationContract]       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; string Hello(string name);       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; } &lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; public class HelloWCF : IHelloWCF      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; {       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; public string Hello(string name)       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; return String.Format(&amp;quot;Hello {0}&amp;quot;, name);       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;This is hosted in a console application:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;class Program      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; {       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; static void Main(string[] args)       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; using (ServiceHost host =       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; new ServiceHost(typeof(HelloWCF)))       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; host.Open(); &lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Console.WriteLine(&amp;quot;Service is available.&amp;quot;); &lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Console.ReadLine(); &lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; host.Close();      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;As you would imagine, you call this service by passing in a name, like &amp;quot;James&amp;quot; and get a warm greeting from the service (&amp;quot;Hello James&amp;quot;) as you can see below:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.google.com/James.C.Bender/R7BWpVe_87I/AAAAAAAAAEQ/xbfEwrVwksQ/image7"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="173" alt="image" src="http://lh4.google.com/James.C.Bender/R7BWqFe_88I/AAAAAAAAAEY/mac2lpdf-jA/image_thumb3" width="424" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;We're gonna have a little fun here with a behavior based on the IDispatchMessageInspector. We are going to write a behavior to return a different message. The first step is to create a new class which implements this interface:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;public object AfterReceiveRequest(ref Message request,      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; IClientChannel channel,       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; InstanceContext instanceContext)       &lt;br /&gt;{       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; return null;       &lt;br /&gt;} &lt;/p&gt;    &lt;p&gt;public void BeforeSendReply(ref Message reply,      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; object correlationState)       &lt;br /&gt;{       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; return;       &lt;br /&gt;}&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;As you can see, there are two methods where we need to provide implementations for. AfterRecieveRequest gets fired when a message is coming into your service. You can take this opportunity to examine and change the message if need. Today we are more concerned with the BeforeSendReply method. As the name suggests this method gives you an opportunity to change the outgoing message. The above implementation will compile and work, but it doesn't do much. Let's change that:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;public void BeforeSendReply(ref Message reply,      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; object correlationState)       &lt;br /&gt;{       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; MemoryStream memoryStream = new MemoryStream();       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; XmlDictionaryWriter xmlDictionary =       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; XmlDictionaryWriter.CreateBinaryWriter(       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; memoryStream);       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; xmlDictionary.WriteStartElement(&amp;quot;HelloResponse&amp;quot;,       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;quot;&lt;a href="http://tempuri.org/" );?=");?"&gt;http://tempuri.org/&amp;quot;);&lt;/a&gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; xmlDictionary.WriteStartElement(&amp;quot;HelloResult&amp;quot;,       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;quot;&lt;a href="http://tempuri.org/" );?=");?"&gt;http://tempuri.org/&amp;quot;);&lt;/a&gt;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; xmlDictionary.WriteString       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; (&amp;quot;Ha ha! I stole your message!&amp;quot;);       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; xmlDictionary.WriteEndElement();       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; xmlDictionary.WriteEndElement();       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; xmlDictionary.Flush(); &lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; memoryStream.Position = 0; &lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; XmlDictionaryReaderQuotas quotas =      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; new XmlDictionaryReaderQuotas(); &lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; XmlDictionaryReader xmlReader =      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; XmlDictionaryReader.CreateBinaryReader       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; (memoryStream, quotas); &lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; Message newMessage =      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Message.CreateMessage(reply.Version,       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; null, xmlReader);       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; newMessage.Headers.CopyHeadersFrom(reply.Headers);       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; newMessage.Properties.CopyProperties       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; (reply.Properties);       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; reply = newMessage;       &lt;br /&gt;}&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The first section of code uses an XmlDictionaryWriter to create the new message body we are going to be sending back. It creates our message text, which is wrapped in a Result, which in turn is wrapped in a Response. The next section creates an XmlDictionaryReader which is used in the last section to &amp;quot;read&amp;quot; the XML we just created into a new blank WCF message. We copy the headers and properties from the original, then set the &amp;quot;reply&amp;quot; reference parameter to our new message. That's it. &lt;/p&gt;  &lt;p&gt;Well, that's not it. He have our behavior, but right now we don't have any way to bind it to our service runtime. To do that we have to have our class implement the System.ServiceModel.Description.IEndpointBehavior. There is an interface for operation behaviors as well, but we'll worry about those at another time.&lt;/p&gt;  &lt;p&gt;Here is how we implement the IEndpointBehavior:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;class MyCustomMessageFormatter : IDispatchMessageInspector,      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; IEndpointBehavior       &lt;br /&gt;{&lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; public void AddBindingParameters(      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ServiceEndpoint endpoint,       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; BindingParameterCollection bindingParameters)       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; {       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; //Not implemented       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; } &lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; public void ApplyClientBehavior(      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ServiceEndpoint endpoint,       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ClientRuntime clientRuntime)       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; {       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; //Not implemented       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; } &lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; public void ApplyDispatchBehavior(      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ServiceEndpoint endpoint,       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; EndpointDispatcher endpointDispatcher)       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; {       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; endpointDispatcher.DispatchRuntime.       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; MessageInspectors.Add(this);       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; } &lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; public void Validate(      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ServiceEndpoint endpoint)       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; {       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; //Not implemented       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; }       &lt;br /&gt;}&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Of the four methods added the one we are really only concerned with right now is the ApplyDispatchBehavior. This method is called when this endpoint behavior is applied by the runtime and it is being used here to add our message inspector (which just happens to be the same class) to the stack. You could have this endpoint behavior implemented in a separate class and have it add multiple dispatch behaviors all at once. This allows you to aggregate several dispatch behaviors into one endpoint behavior.&lt;/p&gt;  &lt;p&gt;We're almost there now, we just need to bind our new behaior to our endpoint. First we'll do it in the hosting logic (below in bold):&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;class Program      &lt;br /&gt;{       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; static void Main(string[] args)       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; {       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; using (ServiceHost host =       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; new ServiceHost(typeof(HelloWCF)))       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;strong&gt;host.Description.Endpoints[0].        &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Behaviors.Add(         &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; new MyCustomMessageFormatter());&lt;/strong&gt; &lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; host.Open(); &lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Console.WriteLine(&amp;quot;Service is available.&amp;quot;); &lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Console.ReadKey(); &lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; host.Close();      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; }       &lt;br /&gt;}&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Now, when we run the service we can see the effects of our new behavior:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.google.com/James.C.Bender/R7BWq1e_89I/AAAAAAAAAEg/ZnjsFCiKYuc/image11"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="161" alt="image" src="http://lh6.google.com/James.C.Bender/R7BWrle_8-I/AAAAAAAAAEo/1yo1KJBvZl4/image_thumb5" width="426" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Pretty easy! In part three I'll show how to add this behavior to the service through configuration instead of the hosting code shown above.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-333996399003950567?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/333996399003950567/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=333996399003950567' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/333996399003950567'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/333996399003950567'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2008/02/making-wcf-part-two.html' title='Making WCF &amp;quot;Behave&amp;quot; - Part Two'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-5926182590478519409</id><published>2008-02-07T19:40:00.001-05:00</published><updated>2008-02-07T19:40:04.506-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Music'/><category scheme='http://www.blogger.com/atom/ns#' term='Rock Band'/><title type='text'>THANK YOU OMAHA, GOOD NIIIIGHT!</title><content type='html'>&lt;p&gt;Even though I've hemmed and hawed about it for at least six months, I have yet to purchase either Guitar Hero or Rock Band. The primary reason being that I know if I do it's just going to make me feel guilty about neglecting the six &lt;em&gt;real&lt;/em&gt; guitars I already own.&lt;/p&gt;  &lt;p&gt;So I was thrilled today when I saw that a company called &lt;a href="http://gametank.com/"&gt;Game Tank&lt;/a&gt; announced a game called &lt;a href="http://www.guitarrising.com/"&gt;&amp;quot;Guitar Rising&amp;quot;&lt;/a&gt; Basically, if you ever playing Rock Band or Guitar hero and thought &amp;quot;This would be cooler if I could use a real guitar.&amp;quot; than this game is for you.&lt;/p&gt;  &lt;p&gt;The way it seems to work,from the video, is that you will have the familiar &amp;quot;piano roll&amp;quot; type of interface you get with guitar hero, except instead of just having you press a specific button it shows you which string and fret combination to hit. You will be plugging your guitar into the computer somehow (sound card? USB interface? MIDI interface?) and the game will let you know how accurate you are.&lt;/p&gt;  &lt;p&gt;To me, this is more than a game, it's a powerful teaching tool. It's more effective than sitting in a practice room with a metronome, and easier than getting a whole band together to practice whenever you want (what do you mean sleep, I wanna jam!).&lt;/p&gt;  &lt;p&gt;Some things that I think would be great in this game:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Amp modeling. Presumably you are going to have to plug your guitar into this thing somehow. Line 6 has already show that PC based amp and effect modeling is possible. It would be cool to be able to not only practice the songs by your favorite band, but to do it with the same &amp;quot;rig&amp;quot; that they are using.&lt;/li&gt;    &lt;li&gt;Composition mode. Basically, a type of &amp;quot;musical notepad&amp;quot; that would allow you to &amp;quot;dictate&amp;quot; notes into a song WHILE showing you the piano roll of what you have played. A lot of players try to do this with tape, but lack the &amp;quot;ear&amp;quot; to be able to figure out what they played afterward. &lt;/li&gt;    &lt;li&gt;I have a small mountain of sheet music I have collected over the years. A great feature would be the ability to somehow transcribe the sheet music into songs in the game. This would make practice much more rewarding!&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Suffice to say, unless there is some HUGE barrier to this game (huge price tag, need to &amp;quot;mutilate&amp;quot; one of my guitars, requirement that you wear spandex while playing) I am TOTALLY getting this! &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-5926182590478519409?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/5926182590478519409/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=5926182590478519409' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/5926182590478519409'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/5926182590478519409'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2008/02/thank-you-omaha-good-niiiight.html' title='THANK YOU OMAHA, GOOD NIIIIGHT!'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-8459611960381911374</id><published>2008-02-04T13:51:00.001-05:00</published><updated>2008-02-04T13:51:31.607-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Development'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='WCF'/><title type='text'>Making WCF "Behave" - Part One</title><content type='html'>&lt;p&gt;Some of the most misunderstood features of WCF are behaviors and channels. While these elements of the WCF stack offer a tremendous opportunity to customize the way WCF works, there is the perception (especially with channels) that it involves a lot of&amp;#160; &amp;quot;down to the metal&amp;quot; coding the requires an in-depth understand of of how communication stacks and network protocols work. While this knowledge would be helpful in any distributed computing paradigm, they are hardly required knowledge for extending WCF.&lt;/p&gt;  &lt;p&gt;There is also a tendency to confuse behaviors and channels. While on a conceptual level these two types of objects are similar in that they effect communication&amp;#160; in some manner, they do so in different ways.&lt;/p&gt;  &lt;p&gt;If you read my last post, you may remember that channels live in a stack between the binding and the transport. Therefore we can see that they impact how messages are communicated to a client and vice versa.&lt;/p&gt;  &lt;p&gt;On the other hand, behaviors control the internal communication of the service by changing the way dispatchers function within the service host. It is fair to say that behaviors change the way the service host functions at runtime, while channels customize the way a particular endpoint communicates with a client. &lt;/p&gt;  &lt;p&gt;So, a good follow up question is &amp;quot;What is a dispatcher?&amp;quot; &lt;/p&gt;  &lt;p&gt;Dispatchers are basically traffic cops. The take incoming messages and route them to the appropriate service method. There are three types of dispatchers; channel, endpoint and operation. &lt;/p&gt;  &lt;p&gt;Channel dispatchers receive messages from the channel stack. The channel dispatcher examines the address the message was sent to and sends it to the appropriate endpoint dispatcher. The endpoint dispatcher examines the action header of the message, and passes the message to the appropriate operation dispatcher. Finally, the operation dispatcher deserializes the message to get a set of parameters, and uses those parameters to call the method for the selected operation.&lt;/p&gt;  &lt;p&gt;The use of dispatches in this manner allows us to create custom behaviors to act on endpoint operations by implementing the System.ServiceModel.Description.IEndpointBehavior interface or on an operation by implementing the System.ServiceModel.Description.IOperationBehavior interface. The separation of duties here is important as there are going to be behaviors that we wish to apply to all calls to an operation, in which case we would create an operation behavior, and others that we are only going to want to act on calls made through a specific endpoint, which would necessitate the creation of an endpoint behavior.&lt;/p&gt;  &lt;p&gt;So, now we have a basic understanding of what behavior are, what they do, and where they fit in the WCF world. Next time we will create a basic custom behavior of our very own!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-8459611960381911374?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/8459611960381911374/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=8459611960381911374' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/8459611960381911374'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/8459611960381911374'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2008/02/making-wcf-part-one.html' title='Making WCF &amp;quot;Behave&amp;quot; - Part One'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-7730028484240806957</id><published>2008-01-25T14:10:00.001-05:00</published><updated>2008-01-25T14:10:54.091-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Aggrevation'/><category scheme='http://www.blogger.com/atom/ns#' term='Architecture'/><category scheme='http://www.blogger.com/atom/ns#' term='TDD'/><title type='text'>ENOUGH WITH THE DAMN CODE COVERAGE ALREADY!</title><content type='html'>&lt;p&gt;Whew!&lt;/p&gt;  &lt;p&gt;Sorry about that, I just need to rant a little...&lt;/p&gt;  &lt;p&gt;Here's what's got me so upset; TDD is a great cool thing. Everybody should be doing it. It's just the best thing since sliced bread, fluffy puppies and free Wi-Fi as Starbucks all rolled into one.&lt;/p&gt;  &lt;p&gt;Now, I am NOT a TDD guru by any means. I've read some articles, tried rolling it into my approach and have had great results. I learn a little more everyday, and my understanding increases over time. If you really want to geek out on it you should talk to guys like &lt;a href="http://stevenharman.net/blog/Default.aspx"&gt;Steve Harman&lt;/a&gt; and &lt;a href="http://jrwren.wrenfam.com/blog/"&gt;Jay Wren&lt;/a&gt;!&lt;/p&gt;  &lt;p&gt;But there is an evil specter lurking that is threatening to ruin it all.&lt;/p&gt;  &lt;p&gt;Code coverage.&lt;/p&gt;  &lt;p&gt;Well, maybe not code coverage, but the way people with only a passing knowledge of TDD cling to code coverage like it's the last Red Bull in the fridge. The people who don't understand that the point of unit testing is not to increase code coverage at all cost, but to ensure your code does exactly what it is supposed to do; no more and no less.&lt;/p&gt;  &lt;p&gt;I come not to bury code coverage, it's a perfect way to see what code is being tested, and more importantly what code is not being tested.&lt;/p&gt;  &lt;p&gt;Here's where I get frustrated with peoples attitudes to code coverage (henceforth referred to at CC because I'm a lazy typist); there is a perception that a high CC number will guarantee quality code. That's simply not the case as you can hide a lot of skeletons behind a big enough door.&lt;/p&gt;  &lt;p&gt;One &amp;quot;trick&amp;quot; I've seen to increase CC is to simply test EVERY method on the public interface of an object. This sucks. &lt;/p&gt;  &lt;p&gt;My philosophy is that I really don't care about the individual gets/sets on a class. And to be honest, I don't like explicit tests of public methods on entities either. My belief is that you test the features. If you then find that there are methods and properties on a class that aren't being covered you have two options; either your tests suck or you don't need that property/method. &lt;/p&gt;  &lt;p&gt;So maybe your tests suck. The best way around that is to make sure you write your tests first, THEN write your code. If you approach your tests like you approach your business requirements (user stories drive unit tests maybe?) and your test are meaningful this shouldn't be a problem, right?&lt;/p&gt;  &lt;p&gt;Or maybe you don't need the property/method in question. I'm a big fan of pruning classes. If there is a method property on a class that never gets used why keep it? It sits there like a parasite, consuming maintenance costs and provides nothing in return. I say get rid of it! &lt;/p&gt;  &lt;p&gt;We as developers/architects/information workers/whatever need to educate ourselves, our co-workers and are clients on this. High CC is NOT a panacea! The quality and intelligence of your tests is what ensures you are not developing crap-ware! Please, write your tests first, make sure all the features you develop are well tested. Review your co-workers tests and have them review yours. And if a high CC number is your goal look at what you are testing and don't be afraid to trim unused code!&lt;/p&gt;  &lt;p&gt;OK, I feel better now. Code on!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-7730028484240806957?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/7730028484240806957/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=7730028484240806957' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/7730028484240806957'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/7730028484240806957'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2008/01/enough-with-damn-code-coverage-already.html' title='ENOUGH WITH THE DAMN CODE COVERAGE ALREADY!'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-4956695943103349105</id><published>2008-01-21T09:16:00.001-05:00</published><updated>2008-01-21T09:16:53.710-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Development'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='WCF'/><title type='text'>The basics of the WCF stack</title><content type='html'>&lt;p&gt;During CodeMash I did two &amp;quot;Ask the Experts&amp;quot; sessions where it was my intention to talk about WCF, which I've really been &amp;quot;geeking-out&amp;quot; on for several months. In the combined two hours that I &amp;quot;served&amp;quot; I only had one person come in with an issue, and it was really more of a complaint about why he couldn't use WCF. &lt;/p&gt;  &lt;p&gt;I spoke to him for a few minutes and while his communication needs were not exactly run of the mill, they certainly weren't outside of the scope of WCF, given a few extension to the stack with a custom behavior or a custom channel. &lt;/p&gt;  &lt;p&gt;After talking to him and a few other people I came to a realization; while there are many people who are using WCF, the vast majority of them don't really know how powerful it is. Most people seem to be content using the out of the box features of creating the normal endpoints. And granted, for 90% of the situations you face those may be fine. &lt;/p&gt;  &lt;p&gt;But WCF offers a lot more. It is a open and extendable architecture, and with a little knowledge of the stack, what piece does what and how to extend those pieces, you can have almost unlimited power over the universe!&lt;/p&gt;  &lt;p&gt;OK, I'm exaggerating a little. But you can still do some pretty cool stuff!&lt;/p&gt;  &lt;p&gt;Lets review the WCF stack. This will provide the foundation for subsequent posts about extending WCF.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.google.com/James.C.Bender/R5SpU47ooHI/AAAAAAAAAEA/ONumvIEvMbA/Basic%20WCF%20Stack%5B15%5D"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="321" alt="Basic WCF Stack" src="http://lh5.google.com/James.C.Bender/R5SpVI7ooII/AAAAAAAAAEI/0hfNvRVjvjY/Basic%20WCF%20Stack_thumb%5B9%5D" width="416" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt; As you can see from the diagram there are a lot of pieces of functionality between your service code and the client. In actuality the client side of the stack also consists of dispatchers, at least one binding, a channel stack and a transport as well. To keep this diagram simple I've aggregated those down to the proxy object that developers use everyday with WCF but keep in mind that these things exist on the client side and the ability to customize WCF extends to that side as well (There are a few things you have to keep in mind with that, more in another post)&lt;/p&gt;  &lt;p&gt; When a client makes a call to your service, it invokes a method on the proxy. A transport carries the message across a network to the transport on the service side. Between the transport&amp;#160; and the binding element is the channel stack. For an incoming message, each channel on the stack has a channel listener that receives the message from the previous channel (or in the case of the first channel in the stack, the transport) and creates your custom channel object. The custom channel then performs some action, which may or may not be based on the message, and passes it on to the next channel listener in the stack (or the binding element if it's the last channel in the stack). &lt;/p&gt;  &lt;p&gt;This binding/channel/transport stack is what is know to most WCF developers as and endpoint. When you create an endpoint for your WCF service you are selecting a binding/channel/transport stack to for your service to use to communicate with the world. Your service can support as many endpoints as you wish, each with a unique and independent binding/channel/transport stack.&lt;/p&gt;  &lt;p&gt;The binding hands the message off to a series of dispatchers. I'll get into these in more details when I discuss custom behaviors, but the three dispatchers that the message passes through in it's way to your service code are the channel dispatcher, the endpoint dispatcher and finally the operation dispatcher. At each one of these dispatchers, behaviors have an opportunity to be invoked. As I'll demonstrate in a future post, while custom channels are responsible for controlling how your service communicates with external applications, behaviors influence how messages are communicated internally to your service.&lt;/p&gt;  &lt;p&gt;The response from your service back the client is essentially the reverse of the path the request just took; the response is passed through the dispatchers (this time operation, then endpoint and then channel) to the binding. The binding passes the message to the channel stack, however this time the channel listeners have been replaced with channel factories. The transport passes the message to the network where the it is returned to the client via the proxy.&lt;/p&gt;  &lt;p&gt;With all these steps it's clear to see that there are several opportunities for customization. The ability to create these extensions give WCF it's power to allow unlimited ability to tailor how users consume your service and gives a great amount of flexibility that allows systems on disparate technologies to communicate with each other without having to worry about it at the service layer.&lt;/p&gt;  &lt;p&gt;Up next, custom behaviors...&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-4956695943103349105?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/4956695943103349105/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=4956695943103349105' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/4956695943103349105'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/4956695943103349105'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2008/01/basics-of-wcf-stack.html' title='The basics of the WCF stack'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-7082541439342843708</id><published>2008-01-16T20:51:00.001-05:00</published><updated>2008-01-16T20:53:12.273-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Development'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='SOA'/><category scheme='http://www.blogger.com/atom/ns#' term='Aggrevation'/><category scheme='http://www.blogger.com/atom/ns#' term='WCF'/><title type='text'>WCF Brain Fart (and why you "need" base addresses)</title><content type='html'>&lt;p&gt;Well, you don't really &lt;em&gt;need&lt;/em&gt; them, unless you are using the basicHTTPBinding and want to see the WCF help page. &lt;/p&gt;&lt;p&gt;Or want to create a proxy from metadata.&lt;/p&gt;&lt;p&gt;Hmm... OK, maybe you DO NEED base addresses!&lt;/p&gt;&lt;p&gt;Maybe I should back up.&lt;/p&gt;&lt;p&gt;The other day I was showing someone how to throw together a quick WCF service hosted in a console application. This was strictly a "Hello World" type of service, and I got everything written and wired up in about 5 minutes. I didn't worry about setting up a metadata behavior or endpoint, just wanted to get the service up an running as fast as I could. I started the app and fired up IE to show the person the WCF help page (a sure sign that it works and I'm brilliant) but instead of the help page I got this error:&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&amp;lt;faultcode &amp;gt;a:ActionNotSupported&amp;lt;/faultcode&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;lt;faultstring xml:lang="&lt;b&gt;en-US&lt;/b&gt;"&amp;gt;The message with Action '' cannot be processed at the receiver, due to a ContractFilter mismatch at the EndpointDispatcher. This may be because of either a contract mismatch (mismatched Actions between sender and receiver) or a binding/security mismatch between the sender and the receiver. Check that sender and receiver have the same contract and the same binding (including security requirements, e.g. Message, Transport, None).&amp;lt;/faultstring&amp;gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;That really sucked.&lt;/p&gt;&lt;p&gt;In my haste, and my eagerness to show how fast and easy it was to get a service up and running, I forgot one minor but important thing; if you want to see the help page, you need to specify the base address if you are using the basicHttpBinding.&lt;/p&gt;&lt;p&gt;It makes sense; if you don't use a base address, you are sending an HTTP Get to your endpoint. Unless your endpoint knows what to do with it, it throws a fault. The wsHttpBinding is able to handle it, but the basic binding rely's on the Service Host which has some internal functionality that gives you the help page.&lt;/p&gt;&lt;p&gt;But since you need base addresses to use the service metadata behavior, you're just better off making sure you use it.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-7082541439342843708?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/7082541439342843708/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=7082541439342843708' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/7082541439342843708'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/7082541439342843708'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2008/01/wcf-brain-fart-and-why-you-base.html' title='WCF Brain Fart (and why you &amp;quot;need&amp;quot; base addresses)'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-1389350072377630036</id><published>2008-01-11T08:35:00.001-05:00</published><updated>2008-01-11T08:37:23.529-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Rock Band'/><category scheme='http://www.blogger.com/atom/ns#' term='Development'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='CodeMash'/><category scheme='http://www.blogger.com/atom/ns#' term='F#'/><category scheme='http://www.blogger.com/atom/ns#' term='Architecture'/><category scheme='http://www.blogger.com/atom/ns#' term='Workflow'/><title type='text'>Codemash Day 1 part 2</title><content type='html'>&lt;p&gt;After my "Ask the Exports" time, I headed over to see &lt;a href="http://keithelder.net/blog/Default.aspx"&gt;Keith Elder&lt;/a&gt; talk about Microsoft Workflow. The meat of his presentation can be found &lt;a href="http://keithelder.net/blog/archive/2007/05/12/Part-1-Leveraging-Workflow-Foundation--It-is-just-an.aspx"&gt;here.&lt;/a&gt; It was an bit of an entry level talk, which I think is desperately needed. There are still a lot of misconceptions out in the Enterprise community about what Workflow is, how it works and how it fits in with things like the .NET framework overall and Biztalk. He's doing an more "advanced" talk later today "custom activities" which I'm looking forward to.&lt;/p&gt;&lt;p&gt;After that I went to see &lt;a href="http://diditwith.net/"&gt;Dustin Campbell&lt;/a&gt; do some &lt;a href="http://research.microsoft.com/fsharp/fsharp.aspx"&gt;F#&lt;/a&gt; stuff. I was playing with F# a bit before my laptop died (Note to Dell, you actually have to plug the fans in for them to cool the laptop down.) I haven't really had time to re-install and get back into it. Dustin's talk was almost SRO; functional programming, F# in particular, seems to be something that has gathered a lot of interest. &lt;/p&gt;&lt;p&gt;After dinner, I got to play a lot of "Rock Band" with Keith Elder and &lt;a href="http://www.hanselman.com/blog/"&gt;Scott Hanselman&lt;/a&gt;. Keith is scary good at the "Guitar Hero" type games. Scott claims he's never played the game before, but he did a great job on the drums! As for me... well, have I even mentioned how much "Guitar Hero"is NOT like really playing the guitar...&lt;/p&gt;&lt;p&gt;... speaking of playing guitar, the "CodeMash jam session" also happened last night. I didn't feel like dragging my rig up (I already got enough shit from Kaufman and Wingfield about my "larger-than-necessary suitcase) and I'm kind of glad I didn't. Most of the group seemed to be older guys with acoustics play country and CSN stuff. I doubt any of them know any "Iron Maiden", "Helloween" or even &lt;a href="http://www.homestarrunner.com/sbemail126.html"&gt;"Limozeen&lt;/a&gt;!" I'll track Dustin down later and make him a deal for next year; if he brings his stuff, I'll bring mine.&lt;/p&gt;&lt;p&gt;OK, drink now, more writing later.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-1389350072377630036?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/1389350072377630036/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=1389350072377630036' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/1389350072377630036'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/1389350072377630036'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2008/01/codemash-day-1-part-2.html' title='Codemash Day 1 part 2'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-57481763887829036</id><published>2008-01-10T16:01:00.001-05:00</published><updated>2008-01-10T16:03:13.363-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Development'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Events'/><category scheme='http://www.blogger.com/atom/ns#' term='CodeMash'/><category scheme='http://www.blogger.com/atom/ns#' term='Architecture'/><category scheme='http://www.blogger.com/atom/ns#' term='Python'/><category scheme='http://www.blogger.com/atom/ns#' term='WCF'/><category scheme='http://www.blogger.com/atom/ns#' term='TDD'/><title type='text'>CodeMash, Day One Part One</title><content type='html'>&lt;p&gt;Well, day one for me got off to a "bumpy" start. I request a wake up call for 7:00 intending to work out, and get downstairs in plenty of time for a little breakfast and the beginning of Neal Ford's keynote. Well, unfortunately, my wake up call didn't arrive till 8:00, so I didn't get to work out, missed breakfast and missed the first few minutes of the keynote. &lt;/p&gt;&lt;p&gt;One that subject...&lt;/p&gt;&lt;p&gt;I really dig what &lt;a href="http://www.nealford.com/"&gt;Neal Ford&lt;/a&gt; is saying about dynamic languages. I've been playing with Iron Python for a little while now and I see a lot of benefit in it, although it's still a bit "rough" in my opinion. If I never end up using it in a production project, it has made me re-think the way I do things in C#. He said something in his presentation that got a little chuckle out of me; compilers are basically weak unit tests and spell checkers. I remember being in school and hearing a lot of my fellow students in the computer lab "I can't understand why it didn't work, it compiled." I didn't think I would hear that after I left school, but I hear it at least once a year from co-workers. He also beat the testing drum, which I'm all for. I really wish this philosophy would catch on more widely in software development. I don't know why, but I'm still surprised when I meet with a client and find out that they have NO unit testing practices in place at all! I've been doing it so long myself, that I can't imagine developing without it. &lt;/p&gt;&lt;p&gt;From there I went to see Joe O'Brien present "Ruby:Testing Mandatory."  I have to admit, I was definitely handicapped here since I have zero experience with Ruby, but I'm always interested in anything that can enhance my test-driven chops (very helpful when I evangelize this to clients). It did get me more interested then I had been in Ruby. I have been playing with Iron Python for awhile now, but I've decided I need to make some time for Ruby as well. &lt;/p&gt;&lt;p&gt;After that I went to see &lt;a href="http://jrwren.wrenfam.com/blog/"&gt;Jay Wren&lt;/a&gt; talk about Castle. I've heard a lot about Castle, but never really used it. It was pretty interesting. &lt;/p&gt;&lt;p&gt;&lt;a href="http://www.hanselman.com/blog/"&gt;Scott Hanselman's&lt;/a&gt; keynote was great! Had a great, funny intro followed by some very cool stuff for IIS 7. I've been playing with IIS 7 for a few months, but clearly haven't even scratched the surface with the HTTP Modules. More stuff to start playing with when I get home.&lt;/p&gt;&lt;p&gt;Served my first tour of duty in the "Ask the Experts" lounge. It was pretty cool; I didn't get a lot of people coming in for "hard-core" stuff; got one person looking for book recommendations (but that's another blog post), one person who had an interesting challenge which I will blog about later, but for the most part it was kind of an hour and hanging out and talking with &lt;a href="http://catherinedevlin.blogspot.com/"&gt;Catherine Devlin&lt;/a&gt; and &lt;a href="http://www.darrellhawley.com/"&gt;Darrell Hawley&lt;/a&gt;. I've never met Catherine, and if I want to continue learning Python, I should definitely start reading her blog. I hadn't seen Darrell in awhile and it was fun to talk to him again.&lt;/p&gt;&lt;p&gt;Off to the next session. To be continued...&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-57481763887829036?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/57481763887829036/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=57481763887829036' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/57481763887829036'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/57481763887829036'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2008/01/codemash-day-one-part-one.html' title='CodeMash, Day One Part One'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-158459391253644109</id><published>2007-11-08T22:08:00.001-05:00</published><updated>2007-11-08T22:11:12.155-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Aggrevation'/><category scheme='http://www.blogger.com/atom/ns#' term='Media'/><title type='text'>Sympathy</title><content type='html'>&lt;p&gt;As an unbridled capitalist, I never thought I would be siding with a union of any kind. I've never been a member of a union and have never desired to be. Don't get me wrong, I think there was a time for unions. But we don't have children working in coal mines anymore. And from my point of view the unions have succumbed to the very greed they claim to rail against.&lt;/p&gt;&lt;p&gt;But as I learn more and more about the Writers Guild of America strike I become more sympathetic to their arguments, but not for the reasons they would like.&lt;/p&gt;&lt;p&gt;The crux of the complaint is probably best explained by this video the writers of "The Office" posted about the strike.&lt;/p&gt;&lt;p&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/b6hqP0c0_gw&amp;amp;rel=1"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/b6hqP0c0_gw&amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;&lt;p&gt;Some people watch that and see people complaining about their boss screwing them out of pay for extra work. What I see is ANOTHER indication that the Hollywood STILL doesn't "get" the Internet and the change it is going to make in the way media is consumed. They still view it as nothing more than a marketing media, when in reality it is a delivery medium.&lt;/p&gt;&lt;p&gt;I see the television changing so much in the next five or so years that the concept of a "television channel" will be completely obsolete. It all started with Tivo. I remember the day I got mine (generation one) and it's not an exaggeration to say that it completely changed the way I watched television. I never had to worry about being home in front of the TV when my favorite show started. I'm not what I would call a "TV Junkie" by any means, but there are a handful of shows I really hate to miss. I now longer had to make a choice, or be worried about missing my favorite show. I just knew that at a certain point in time the show would just be on my Tivo for me to watch whenever I wanted. It seems so simple now, DVRs are pretty much everywhere, but it was a big change at the time.&lt;/p&gt;&lt;p&gt;The next step was the Internet. Well, more specifically it was the widespread available of cheap high-speed access to the Internet. To be honest, I think the only people I know who still use dial-up are my parents! I'm hoping this changes before I arrive for Thanksgiving next week, but I'm not holding my breath.&lt;/p&gt;&lt;p&gt;Anyway, this wide availability of high-speed Internet made high quality video over the Internet a practical reality. It took iTunes to demonstrate that not only was there a market for this type of media consumption, but that people were even willing to pay for it! Now all the major networks offer (or are preparing to offer) their content (meaning whole shows, albeit with commercials) for download. Products like &lt;a href="http://www.microsoft.com/windowsxp/mediacenter/default.mspx"&gt;Microsoft Windows Media Center&lt;/a&gt; and &lt;a href="http://www.slingmedia.com/"&gt;Slingbox&lt;/a&gt;, not the mention the new generation of &lt;a href="http://www.tivo.com/"&gt;Tivo&lt;/a&gt;, will continue to offer new possibilities for using the Internet as a delivery method of content.&lt;/p&gt;&lt;p&gt;So, it's really discouraging to hear what is behind this strike. Clearly the networks think of "web content" as a sort of second class form of entertainment. Instead of trying to keep their customers rooted in the past they should be embracing these changes and finding new models to do business in. Instead of fighting this new market they need to find a way to embrace it. Consumers want these things. It's in Hollywood's best interest to provide them.&lt;/p&gt;&lt;p&gt;And don't get me started on movies!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-158459391253644109?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/158459391253644109/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=158459391253644109' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/158459391253644109'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/158459391253644109'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/11/sympathy.html' title='Sympathy'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-8521022606845596718</id><published>2007-11-05T19:15:00.001-05:00</published><updated>2007-11-05T19:18:52.743-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Development'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Architecture'/><title type='text'>A Blast From The Past</title><content type='html'>&lt;p&gt;I had a bit of an unusual assignment from a client last week. I had to find a copy of Visual Interdev. Yeah, that one.&lt;/p&gt;  &lt;p&gt;&amp;#xA0; &lt;a href="http://lh3.google.com/James.C.Bender/Ry-yMEW3BVI/AAAAAAAAADw/QMoBL1QSOBM/MS_VStudio6Pro%5B5%5D.jpg"&gt;&lt;img id="id" style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="349" alt="MS_VStudio6Pro" src="http://lh5.google.com/James.C.Bender/Ry-yMkW3BWI/AAAAAAAAAD4/8uLd380OUqM/MS_VStudio6Pro_thumb%5B3%5D.jpg" width="288" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;The client in question has system that exports information from their common data model into a specialized one depending on client and purpose. Basically it dynamically crates an Access database from scratch and then copies data into it. The problem is that it does all this in VBScript. It's a ton of processing, and it all occurs in the pages life cycle. Understandably, this causes issues when the client has either a lot of data to export, or a complex destination schema. They are running into the inevitable problem now; processes are timing out. &lt;/p&gt;  &lt;p&gt;The application is a ASP Classic web application written in notepad. For the time it was written, and the tools that were available to the developer, it's a pretty well designed and built application, but it's definitely showing its age.&lt;/p&gt;  &lt;p&gt;The client wants to convert this to .NET, which I am 100% behind. The problem comes when a client with a system based on old technology wants to simply &amp;quot;convert&amp;quot; the application from one platform to another. The client in question hasn't indicated that this is their mind set, but I've had several clients in the past who have felt I should just be able to run their ASP Classic application through a conversion wizard and be done with it, so I'm mentally getting my ducks in a row if this turns out to be the case.&lt;/p&gt;  &lt;p&gt;Not only does technology change, but architectural techniques and practices evolve. A design which may have made sense even five years ago can easily be rendered obsolete by changing business needs just as much by advances in technology. &lt;/p&gt;  &lt;p&gt;The key problem with the current application is that the majority of the heavy lifting takes place in the page life cycle. Doing a &amp;quot;one-to-one&amp;quot; conversion from ASP Classic to .NET will make it run a bit faster, but you still have the underlying problem; the wrong part of the application is doing all the work. Sure, the increased performance may help for a while, but eventually there is going to be more and more data as their client base increases and they are going to have the same problem again. By performing a conversion like this the client is just reinvesting&amp;#xA0; in the wrong architecture.&lt;/p&gt;  &lt;p&gt;In this case, it's clearly time for a ground-up redesign of the application.&amp;#xA0; Clients can often balk at this as on the surface it can present a larger investment; discovery must be done, a design phase is required and it's likely that nothing from the previous version can be salvaged. &lt;/p&gt;  &lt;p&gt;But this situation also presents a lot potential positives that may sway a client as well. For one thing, the promise of a system that will grow with the business, not require the business to grow around it. An opportunity to overhaul the user experience may be a way to increase productivity. Perhaps your client have been clamoring for services that your current architecture can't support. Now is the time to look into including these and perhaps introducing new revenue streams. There are lots of ways to find ROI (besides just &amp;quot;Oh, it will work better&amp;quot;) in situations like these, and it's very important to find these to make the redesign attractive to the client.&lt;/p&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-8521022606845596718?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/8521022606845596718/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=8521022606845596718' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/8521022606845596718'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/8521022606845596718'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/11/blast-from-past.html' title='A Blast From The Past'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-4369903493770327358</id><published>2007-10-29T09:50:00.001-04:00</published><updated>2007-10-29T09:50:43.206-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Shameless self promotion'/><title type='text'>If You're Reading This, It Means I'm Dead</title><content type='html'>&lt;p&gt;That's right, dead-tired of not having my own website!&lt;/p&gt;  &lt;p&gt;I am now the proud owner of &lt;a href="http://jamescbender.com/"&gt;JamesCBender.com&lt;/a&gt;, although like the second Death Star, this site is not yet fully operational. However, thanks to the magic of &lt;a href="http://silverlight.net/getstarted" target="_blank"&gt;Microsoft Silverlight&lt;/a&gt; you will soon be seeing the most elaborate &amp;quot;Under Construction&amp;quot; page the net has ever known!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-4369903493770327358?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/4369903493770327358/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=4369903493770327358' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/4369903493770327358'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/4369903493770327358'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/10/if-you-reading-this-it-means-i-dead.html' title='If You&amp;#39;re Reading This, It Means I&amp;#39;m Dead'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-3679723184100747628</id><published>2007-10-20T14:43:00.001-04:00</published><updated>2007-10-20T14:45:38.030-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Day of .NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Development'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='SOA'/><category scheme='http://www.blogger.com/atom/ns#' term='Events'/><category scheme='http://www.blogger.com/atom/ns#' term='Shameless self promotion'/><category scheme='http://www.blogger.com/atom/ns#' term='WCF'/><title type='text'>Reliable Messaging with WCF at Day of .NET</title><content type='html'>&lt;p&gt;Thanks to everyone who came to my session this morning. I really enjoyed presenting it and hope you all enjoyed it and got some valuable information. I would love to hear from you all in the future about how you are using WCF, and how the information I presented has helped you design your services infrastructure.&lt;/p&gt;  &lt;p&gt;As promised, here is a link to a zip file with my slide deck and the two demos I presented. If you are running Vista the MSMQ demo will have to be run in Visual Studio running with elevated privileges the first time you use it. This is because, as I pointed out, if the queue it uses does not exist it will try to create it. As I mentioned I DO NOT condone this as a best practice in an actual application, but it made the demo easier.&lt;/p&gt;  &lt;p&gt;Thanks again for coming out!&lt;/p&gt; &lt;iframe style="border-right: #dde5e9 1px solid; padding-right: 0px; border-top: #dde5e9 1px solid; padding-left: 0px; padding-bottom: 0px; margin: 3px; border-left: #dde5e9 1px solid; width: 240px; padding-top: 0px; border-bottom: #dde5e9 1px solid; height: 66px; background-color: #ffffff" marginwidth="0" marginheight="0" src="http://cid-406fd667236b701a.skydrive.live.com/embedrowdetail.aspx/Public/Reliable%20Messaging%20with%20WCF.zip" frameborder="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-3679723184100747628?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/3679723184100747628/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=3679723184100747628' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/3679723184100747628'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/3679723184100747628'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/10/reliable-messaging-with-wcf-at-day-of.html' title='Reliable Messaging with WCF at Day of .NET'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-4858093785388308693</id><published>2007-10-01T14:35:00.001-04:00</published><updated>2007-10-01T14:36:27.668-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Twitter'/><category scheme='http://www.blogger.com/atom/ns#' term='Web 2.0'/><title type='text'>Twittering Away The Day...</title><content type='html'>&lt;p&gt;Last week I attended the &lt;a href="http://www.arcready.com/"&gt;Arc Ready&lt;/a&gt; event Microsoft hosted here in Columbus. &lt;a href="http://www.joshholmes.com/Default.aspx"&gt;Josh Holmes&lt;/a&gt; spoke about &amp;quot;Web 2.0&amp;quot; (and no Tim, writing about it in a blog is not that same as saying it, so you can't punch me) and mentioned, among other web sites, &lt;a href="http://www.twitter.com/"&gt;Twitter&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;For those of you who aren't familiar with Twitter, it's been described as 'blogging on crack.&amp;quot; In reality, it's a web-based &amp;quot;micro-blogging&amp;quot; service that allows it's users to send frequent, short updates about what they are doing at any particular moment. This can be done via it's web interface, an instant messenger client (Windows Live Messenger is conspicuously absent from the list of supported clients) or from you phone via a text message.&lt;/p&gt;  &lt;p&gt;I had played with Twitter in the past, but I didn't do much with it. Mostly because I didn't realize how many other people were using it. I also didn't realize that it was accessible via IM, which makes it much more appealing then having to fire up the web page every time I want to &amp;quot;twitter&amp;quot; about something.&lt;/p&gt;  &lt;p&gt;I'm going to give &amp;quot;twittering&amp;quot; a try over the next couple weeks and see how it goes. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-4858093785388308693?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/4858093785388308693/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=4858093785388308693' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/4858093785388308693'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/4858093785388308693'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/10/twittering-away-day.html' title='Twittering Away The Day...'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-6393761423461401802</id><published>2007-09-17T19:56:00.001-04:00</published><updated>2007-09-17T20:02:50.181-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Day of .NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Development'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Events'/><category scheme='http://www.blogger.com/atom/ns#' term='Service Factory'/><category scheme='http://www.blogger.com/atom/ns#' term='Shameless self promotion'/><category scheme='http://www.blogger.com/atom/ns#' term='WCF'/><title type='text'>DevCares recap</title><content type='html'>&lt;span xmlns=''&gt;&lt;p&gt;Thanks to all the people who came out for my DevCares presentation last Friday in Cincinnati. I had a great time and I hope the material was helpful. It was almost as fun as watching my Browns rack up 51 points on Sunday. &lt;span style='font-family:Wingdings'&gt;J&lt;/span&gt;&lt;br /&gt;   &lt;/p&gt;&lt;p&gt;Just kidding. But any win for us this year is going to be welcome.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Anyway, I'm providing a link to the materials as promised. I'm including the "ppt" files for those of you with Office 2007 and slide shows for those of you without. I'm also including the completed solution for the "Custom Channels" presentation.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;iframe scrolling="no" marginheight="0" marginwidth="0" frameborder="0" style="width:240px;height:66px;margin:3px;padding:0;border:1px solid #dde5e9;background-color:#ffffff;" src="http://cid-406fd667236b701a.skydrive.live.com/embedrowdetail.aspx/Public/Dev%20Cares%2009-2007"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;p&gt;As I mentioned, I will be at the &lt;a href="http://daytondevgroup.net/default.aspx"&gt;Dayton .NET Developers&lt;/a&gt; next Wednesday the 26&lt;sup&gt;th&lt;/sup&gt; presenting &lt;a href="http://www.codeplex.com/servicefactory"&gt;Microsoft Patterns and Practices Service factory for WCF&lt;/a&gt;. I will also be presenting the &lt;a href="http://www.devcares.com/"&gt;DevCares&lt;/a&gt; content again in Columbus on Friday September 28&lt;sup&gt;th&lt;/sup&gt;. And if you can't just get enough of me, or just want some more .NET goodness, I will be speaking on "Reliable Messaging with WCF" at the &lt;a href="http://www.dayofdotnet.org/AnnArbor/Fall2007/default.aspx"&gt;Day of .NET&lt;/a&gt; in Ann Arbor on October 20&lt;sup&gt;th&lt;/sup&gt;.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Hope to see you all there!&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-6393761423461401802?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/6393761423461401802/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=6393761423461401802' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/6393761423461401802'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/6393761423461401802'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/09/devcares-recap.html' title='DevCares recap'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-2546363205426249880</id><published>2007-08-26T19:26:00.001-04:00</published><updated>2007-08-26T19:46:00.974-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Development'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Team Foundation Server'/><title type='text'>Beware the Workspaces of Team Foundation Server</title><content type='html'>&lt;div&gt;&lt;span xmlns=""&gt;&lt;br /&gt;&lt;p&gt;I've been using Team Foundation Server since its first beta at quite a few clients and I like to think that I know a bit about it, but I learn something new every day.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Today I learned a little bit about workspaces.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;For those of you new to, or unfamiliar with TFS, your work is done in the context of a workspace which maps local working folders to source control folders. This is a cool way to manage your source control mappings and allows you to do some pretty cool things such as cloaking folders (more on that in another post) and maintaining multiple working versions of the same project (helpful for sandboxing). It's similar to a working folder in Visual Source Safe, but with more features. Think of it as your working folder on steroids.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;However, there are some little… idiosyncrasies that you need to be aware of.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;By way of background, I am working on a project that requires Windows XP. I run Vista at work and home and since this is a short-tem project (which I actually hope to upgrade to Vista at some point) I didn't feel like setting my machine up to dual-boot. Another reason is that I have someone helping me on this project, and I didn't think he'd take kindly to me telling him "… oh, by the way, I need you to re-image your machine and set it up for dual-boot. I know you have deadlines and all, but you know, whenever you have a few minutes…" So, I created a Virtual PC for my development environment. My plan was to get the Virtual PC all set up with the appropriate third party software and drivers and get it configured so that it could just be copied to any developers working on it and we could start rolling.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;This is where I found out that Team Foundation Server Workspaces are NOT strictly local creatures. This was discovered when, in an effort to get the VPC's setup for each developer, we managed to delete workspaces that not only were not associated with the project in question, were not in use on the VPC at all. We got them back, but it was a bit of a pain in the rear.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;When you select "Manage Workspaces" from the "FileSource Control" menu in Visual Studio, you will see all workspaces listed that your account has access to, regardless of which physical computer they are listed on (see below). The killer is that you can actually delete and change a workspace from a remote location.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_GwK7Z7uA4os/RtIPqBW_vhI/AAAAAAAAACg/Y1DjBxF30AI/s1600-h/TFS+Workspaces.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5103158542358003218" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_GwK7Z7uA4os/RtIPqBW_vhI/AAAAAAAAACg/Y1DjBxF30AI/s400/TFS+Workspaces.jpg" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Keep this in mind when working with Team Foundation Server. And be careful out there!&lt;/p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-2546363205426249880?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/2546363205426249880/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=2546363205426249880' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/2546363205426249880'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/2546363205426249880'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/08/beware-workspaces-of-team-foundation.html' title='Beware the Workspaces of Team Foundation Server'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_GwK7Z7uA4os/RtIPqBW_vhI/AAAAAAAAACg/Y1DjBxF30AI/s72-c/TFS+Workspaces.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-855873797004744747</id><published>2007-08-06T16:26:00.001-04:00</published><updated>2007-08-06T16:29:58.248-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Karma'/><category scheme='http://www.blogger.com/atom/ns#' term='Media'/><title type='text'>PWN3D!</title><content type='html'>&lt;span xmlns=''&gt;&lt;p&gt;This is probably old news, but I can't stand these "news" shows that do this, so to see them on the other side is a nice change. If nothing else, it's payback for "outing" &lt;a href="http://fakesteve.blogspot.com/"&gt;Fake Steve Jobs&lt;/a&gt;.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Enjoy!&lt;/p&gt;&lt;/span&gt;&lt;br /&gt;&lt;p&gt;&lt;object width="425" height="350"&gt;&lt;param name="movie" value="http://www.youtube.com/v/nCvmkxO5hoQ"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/nCvmkxO5hoQ" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-855873797004744747?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/855873797004744747/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=855873797004744747' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/855873797004744747'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/855873797004744747'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/08/pwn3d.html' title='PWN3D!'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-5107997776129561592</id><published>2007-07-27T08:46:00.001-04:00</published><updated>2007-07-27T09:11:01.891-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Development'/><category scheme='http://www.blogger.com/atom/ns#' term='Aggrevation'/><category scheme='http://www.blogger.com/atom/ns#' term='Vista'/><title type='text'>Long Time, No Blog</title><content type='html'>&lt;span xmlns=''&gt;&lt;p&gt;Hi everyone!&lt;br /&gt;&lt;/p&gt;&lt;p&gt;I've been busy for awhile, but I'm starting to get some time freed up, so you should start seeing more regular content here.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;For now, you'll have to accept the following rant to make up for the lapse:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;lt;Rant&amp;gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;I have a latest pet peeve: tools or applications that claim to be Vista compatible where the first step in the installation instructions is "disable UAC." This was doubly troublesome due to the fact that this particular tool required UAC to be disabled not just for installation, but for using the tool!&lt;br /&gt;&lt;/p&gt;&lt;p&gt;In my opinion, if you're going to claim Vista compatibility, you should support something as important as UAC. To require it to be disabled while you're installing is bad enough, to insist that you KEEP it disabled is ridiculous! &lt;br /&gt;&lt;/p&gt;&lt;p&gt;&amp;lt;/Rant&amp;gt;&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-5107997776129561592?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/5107997776129561592/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=5107997776129561592' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/5107997776129561592'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/5107997776129561592'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/07/long-time-no-blog.html' title='Long Time, No Blog'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-2487606028096486896</id><published>2007-06-21T21:12:00.001-04:00</published><updated>2007-06-21T21:15:49.326-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Events'/><category scheme='http://www.blogger.com/atom/ns#' term='Service Factory'/><category scheme='http://www.blogger.com/atom/ns#' term='Shameless self promotion'/><category scheme='http://www.blogger.com/atom/ns#' term='WCF'/><title type='text'>Coming to Findlay!</title><content type='html'>&lt;span xmlns=''&gt;&lt;p&gt;For anyone in the area, I will be presenting "Building SOA based .NET applications with Microsoft Patterns &amp;amp; Practices Service Factory" at the Findlay Area .NET User Group Tuesday, June 26&lt;sup&gt;th&lt;/sup&gt; at 5:30PM. You can get more details about my presentation and FANUG at their website &lt;a href='http://www.fanug.org'&gt;www.fanug.org&lt;/a&gt;&lt;br /&gt;   &lt;/p&gt;&lt;p&gt;See ya there!&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-2487606028096486896?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/2487606028096486896/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=2487606028096486896' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/2487606028096486896'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/2487606028096486896'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/06/coming-to-findlay.html' title='Coming to Findlay!'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-7633563222954642750</id><published>2007-06-03T19:58:00.001-04:00</published><updated>2007-06-03T20:01:39.644-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Vista'/><category scheme='http://www.blogger.com/atom/ns#' term='Shameless self promotion'/><title type='text'>I’ve been published!</title><content type='html'>&lt;span xmlns=''&gt;&lt;p&gt;&lt;a href="http://aspalliance.com/articleviewer.aspx?aId=1283"&gt;Sweeet!&lt;/a&gt;&lt;/p&gt;&lt;p&gt;I hope you all find it informative, and please don't forget to rate it.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-7633563222954642750?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/7633563222954642750/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=7633563222954642750' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/7633563222954642750'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/7633563222954642750'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/06/ive-been-published.html' title='I’ve been published!'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-3912250239623833430</id><published>2007-05-07T21:54:00.001-04:00</published><updated>2007-05-07T21:56:26.556-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Day of .NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Development'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Events'/><category scheme='http://www.blogger.com/atom/ns#' term='Vista'/><title type='text'>Day of .NET Recap</title><content type='html'>&lt;span xmlns=""&gt;&lt;p&gt;I should probably start this blog post by apologizing to everyone who attended my session for not being able to show a working demo. I did find out that I made two small errors; my resource file (the one I created in the first step) was miss-named. Therefore, when my pre-compile step tried to execute, it failed as it was unable to fine the file. I renamed the file, complied and it worked. Also, the "completed" solution didn't work because I tried to run it from Visual Studio when it was not in an elevated state. I will be sending the starting solution and the completed solution to the DODN organizers to post, with the slide deck, on the website. In the meantime, you can drop me an e-mail if you just can't wait and I'll mail it off to you.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;But, this reminds me of something I didn't get to in my presentation; once you add the request for elevated privileges to your application, you MUST run Visual Studio with elevated privileges in order to run your application. If you'll remember from the presentation, your applications by default run under your standard user token. Once the application begins, without being elevated, it does not have access to the administrative token anymore. This will also affect you if your application attempts to perform an action requiring elevation and you HAVE NOT run Visual Studio in elevated mode. The solution it to right-click Visual Studio and select "Run as Administrator" which will ask you to confirm that you want to launch the application in elevated mode before starting the application.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;h2&gt;Search (the part we ran out of time for)&lt;/h2&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Those who were disappointed with the search capabilities of Windows XP will be happy to know that the search facility in Vista is completely new and much faster and more user friendly.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Newer Microsoft applications (Windows, Office, SharePoint, SQL Server, Exchange, etc.) are built on a common search technology engine. It's important to understand that the engine technology, NOT the binaries are the same; the new search technology is simply packaged into a number of different forms. While the binaries are not the same, the similarity in the underlying technology allows for techniques used for one system to be used in another.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;From a user standpoint, this translates into faster searches with the ability to be more specific about what you are looking for. This is possible because Vista takes a documents metadata into account when performing a search. For example, if you wanted to find all e-mails about vacation from Michelle, your search term would by "from:Michelle vacation." The "from:Michelle" property/value pair tells Vista to find all document with a property of "from" and a value of "Michelle." This can be used for any metadata property that is exposed by any document type in your system.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;This common search functionally being deployed to the desktop also allows for Vista search functionality to be used in your application utilizing a specialized OLE DB provider and some extensions to standard SQL.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;In order to utilize this search, you need to use a special OLE DB provider capable of accessing the operating systems indexing service. Out connection string is:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Courier New;"&gt;Provider=Search.CollatorDSO;Extended Properties=\"Application=Windows\";&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;For example:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Courier New;"&gt;SELECT System.Title,&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Courier New;"&gt;System.ItemFolderPathDisplay,&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Courier New;"&gt;System.ItemNameDisplay,&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Courier New;"&gt;System.Document.CharacterCount,&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Courier New;"&gt;System.Document.LastAuthor&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Courier New;"&gt;FROM systemindex&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Courier New;"&gt;WHERE SCOPE = 'file:C:/Users/Public' AND&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:Courier New;"&gt;    CONTAINS('Day Of Dot Net')&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt; &lt;/p&gt;&lt;p&gt;This SQL is very similar to any other query you might write to query data from a table; you are selecting fields from a data store where certain conditions are met. In this case the values we are selecting are system values that will return metadata about files. We are searching "systemindex" (Vista's search index data store) where the file contains the string "Day of Dot Net" in the c:/users/public folder. In this case we are treating the systemindex like any other database table.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;You can take this query and use it to populate either a data reader or a data set and manipulate the data just as you would for any other SQL query.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;This provides us with another powerful tool that can be utilized in our Vista applications to enhance our applications value and provider a better user experience. And best of all, the other things discussed in the Day of .NET session, this is already built into Windows Vista. It's there, ready for you to use today!&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-3912250239623833430?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/3912250239623833430/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=3912250239623833430' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/3912250239623833430'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/3912250239623833430'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/05/day-of-net-recap.html' title='Day of .NET Recap'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-4333026104569229807</id><published>2007-04-25T20:04:00.001-04:00</published><updated>2007-04-25T20:07:05.778-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Music'/><category scheme='http://www.blogger.com/atom/ns#' term='XBox'/><title type='text'>Guitar Hero… too?</title><content type='html'>&lt;span xmlns=""&gt;&lt;p&gt;Well, I was planning on making this blog a review of Guitar Hero II for the Xbox. But, I have been unable to find a copy. Every store that I've been to (both of them!) have been sold out. Not hard to understand, since each store only seems to get one copy at a time.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;So, as time goes on the odds of me getting GH2 soon decline. The primary reason is that as the weather starts to get nice, I tend to spend less and less time inside, and less of that time playing video games. I also refuse to be one of those guys who spends his weekend going from store to store looking for the one copy of the game in the city. This explains why I still don't have a Wii; I refuse to buy one until I can casually walk into a store and pick one off the shelf without being crushed in a throng of people. I also refuse to pay $800 for a console on eBay that retails for $250 in the store. Maybe if I were a hard-core gamer it would be different, but I'm not.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;I did try the Playstation 2 version as Best Buy last week.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;As someone who has been playing guitar for quite a while, I wanted to see how the game compared to the real thing. Best Buy has a two song limit on the demos. I choose "Carry on Wayward Son" by Kansas and "YYZ" by Rush on the basis that they were the two songs I was remotely familiar with (being a prog-headed music snob) and have actually played in a band scenario.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Well, big shock, but the game is nothing remotely like really playing the guitar. It's primary skill requirement is rhythm, but basically the game is Simon with a fancy control. Having said that, I did find the game to be a lot of fun. And will probably pick up a copy.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;But at this rate, probably not till the fall.&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-4333026104569229807?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/4333026104569229807/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=4333026104569229807' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/4333026104569229807'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/4333026104569229807'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/04/guitar-hero-too.html' title='Guitar Hero… too?'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-4292514263240364983</id><published>2007-04-05T21:47:00.001-04:00</published><updated>2007-04-05T21:51:40.023-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Day of .NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Development'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Events'/><title type='text'>Dawn of a New Day… of .NET</title><content type='html'>&lt;span xmlns=""&gt;&lt;p&gt;The Great Lakes Area .NET User Group, The Ann Arbor .NET Developer Group and the Northwest Ohio .NET User Group are all co-sponsoring the "Day of .NET" on May 5&lt;sup&gt;th&lt;/sup&gt; in Ann Arbor. More information can be found at their &lt;a href="http://www.dayofdotnet.org/default.aspx"&gt;website&lt;/a&gt;.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://www.dayofdotnet.org"&gt;&lt;img alt="Day of .Net May 5, 2007 - I'll be there!" src="http://www.dayofdotnet.org/images/DoDNBadge.png" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;This is a great opportunity to come and see some cool .NET stuff, learn some new tricks and participate in the .NET community.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;There will be some great &lt;a href="http://www.dayofdotnet.org/Sessions.aspx"&gt;speakers&lt;/a&gt;, and I will be presenting "Windows Vista for Developers" for anyone who missed it at the February DevCares event.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;See you all there!&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-4292514263240364983?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/4292514263240364983/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=4292514263240364983' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/4292514263240364983'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/4292514263240364983'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/04/dawn-of-new-day-of-net.html' title='Dawn of a New Day… of .NET'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-1190413424290066005</id><published>2007-03-28T19:27:00.001-04:00</published><updated>2007-03-28T19:31:30.427-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Humor'/><title type='text'>iHippie</title><content type='html'>&lt;div&gt;&lt;span xmlns=""&gt;&lt;br /&gt;&lt;p&gt;Generally, I don't like to repost content from other blogs, but I saw this on "&lt;a href="http://fakesteve.blogspot.com/index.html"&gt;The Secret Diary of Steve Jobs&lt;/a&gt;" and I thought it was funny enough to pass along:&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://1.bp.blogspot.com/_GwK7Z7uA4os/Rgr6U26xyaI/AAAAAAAAACE/Skj8C0B0scE/s1600-h/fsjcaptioncontest.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5047121568668436898" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_GwK7Z7uA4os/Rgr6U26xyaI/AAAAAAAAACE/Skj8C0B0scE/s400/fsjcaptioncontest.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Thanks Fake Steve!&lt;/p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-1190413424290066005?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/1190413424290066005/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=1190413424290066005' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/1190413424290066005'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/1190413424290066005'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/03/ihippie.html' title='iHippie'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_GwK7Z7uA4os/Rgr6U26xyaI/AAAAAAAAACE/Skj8C0B0scE/s72-c/fsjcaptioncontest.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-7798453090832879218</id><published>2007-03-25T17:15:00.000-04:00</published><updated>2007-03-25T17:16:02.479-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Events'/><category scheme='http://www.blogger.com/atom/ns#' term='Road Trip'/><title type='text'>Code Camp</title><content type='html'>&lt;span xmlns=""&gt;&lt;p&gt;The &lt;a href="http://cinnug.org/codecamp/"&gt;Dayton/Cincinnati&lt;/a&gt; code camp was held today. Alexei, &lt;a href="http://arnulfowing.blogspot.com/"&gt;Arnulfo&lt;/a&gt;, Monish and I attended.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;The Journey&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Arnulfo's job apparently was to organize logistics. His "plan" was to have Monish and I meet him at the office at 4:30 (AM) and then go pick up Alexei on the way.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Arnulfo overslept. After hanging out at the office till about quarter of five, Monish called and woke him up. So we were a bit late. We then drove past the meeting point for Alexei, so more back tracking. We used Google maps to get us to our destination, but that was difficult. Many of the side streets we had to take between the freeway and the event were not labeled, or not labeled well. But we eventually made it.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;1&lt;sup&gt;st&lt;/sup&gt; Session: Practical Caching in ASP.NET 2.0&lt;/strong&gt; &lt;strong&gt;- Joe Wirtley&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;This was an OK session. We are going to be doing some data caching on my current project. The speaker talked a bit about static page and user control caching to. You don't have access to Session from cached user controls, so he showed us a work-around.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;2&lt;sup&gt;nd&lt;/sup&gt; Session: Layouts, Styles, Templates in WPF - &lt;/strong&gt;&lt;a href="http://drewby.spaces.live.com/"&gt;&lt;strong&gt;Drew Robbins&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;I know Drew has given this presentation a few times, but I haven't seen if for over a year and half. I have to say that WPF is more impressive than its first incarnation. I kind of blew it off at first, thinking it was a neat toy, but seemed like a lot to go through, especially since it wasn't really on the horizon as far as being deployed. But, Drew showed some cool demos so I'm interested. I'll have to pick up Petzolds book and play with it.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;3&lt;sup&gt;rd&lt;/sup&gt; Session: Extending ASP.NET with Http Handlers and Modules - Joe Brinkman&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;This was a pretty interesting session about writing (you guessed it) custom Http Handlers and Modules. The speaker explained the page life cycle, and how sometimes it's more efficient to have a handler respond as opposed to an aspx page. He also showed some cool ways to use Modules to handle some authentication, compression and string substitution. The speaker was from DotNetNuke, and that framework uses several of these, so I'll download it and give it a look.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;4&lt;sup&gt;th&lt;/sup&gt; Session: Intro to XNA - Bill Steele&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;This one was for me. The fact is I haven't made much progress on my project. I downloaded and setup the &lt;a href="http://msdn2.microsoft.com/en-us/xna/default.aspx"&gt;XNA development tools&lt;/a&gt;, and fired up the starter project, but I wasn't really sure what to do after that. There is a little documentation for XNA, but if you don't have experience writing games, it's kind of hard to get your head around. This was a big help. I also learned that the next rev of XNA will be out next month, and that the new version will work with Visual Studio (the current version requires C# Express). I've went ahead and downloaded the framework and &lt;a href="http://www.anim8or.com/"&gt;Anim8or&lt;/a&gt; (the recommended asset creation tool) but will probably wait until next month to avoid having to install Express.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;5&lt;sup&gt;th&lt;/sup&gt; Session: Balancing WCF Performance and Security - &lt;/strong&gt;&lt;a href="http://www.darrellhawley.com/"&gt;&lt;strong&gt;Darrell Hawley&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;This was a pretty helpful session that compared and contrasted the differences (both for performance and security, as per the title) of the various WCF bindings. There were some pretty marked differences. It was pretty helpful in determining which binding which binding to use where. One of the big strengths of WCF is the ability to have multiple bindings for the same service AND change these via configuration. So, you can expose your service via WS to the outside world, which provides interoperability, and TCP internally, which provides speed. There wasn't time to go into MSMQ, so I'm going to play with that a little on my own and how it "stacks" up.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;6&lt;sup&gt;th&lt;/sup&gt; Session: Improve Your Testing With Open Source Test Tools - &lt;/strong&gt;&lt;a href="http://frazzleddad.blogspot.com/"&gt;&lt;strong&gt;Jim Holmes&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;I already use Team Test for most of my testing needs. Obviously, as good as Team Test is, it doesn't do everything, so I decided to check this out and see what was out there that was new and cool. There were a couple standouts. The first one, &lt;a href="http://www.fitnesse.org/"&gt;Fitnesse&lt;/a&gt;, is (according to their website) a tool to compare customer's expectation to the actual results. I also am interested in &lt;a href="http://www.pairwise.org/"&gt;Pairwise&lt;/a&gt;, which is a case generation tool that helps test situations where conditions overlap. Watir looked kind of interesting as well. It basically does the same thing (on the surface) that Team Test’s Web Test does, but where a web test simulates web interaction by comparing query strings, &lt;a href="http://wtr.rubyforge.org/"&gt;Watir&lt;/a&gt; allows you to actually interact with specific fields on a web form. I don’t know what it will really offer that web tests don’t, or if it’s simply a better tool, so I’ll have to check it out. The only “drawback” is that it is Ruby based. I don’t have anything against Ruby per se, but I’d like to not in stall anymore stuff on my computer than I really have to. &lt;/p&gt;&lt;p&gt;&lt;br /&gt;All in all it was a great code camp and I got a lot of information and ideas out of the session. I’ll definitely be back next year, and would encourage everyone else who is able to also attend.&lt;br /&gt;&lt;br /&gt;Thanks to everyone and &lt;a href="http://cinnug.org/"&gt;CINNUG&lt;/a&gt; and &lt;a href="http://www.daytondevgroup.net/"&gt;The Dayton .NET Developers Group&lt;/a&gt; for putting on a great event!&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-7798453090832879218?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/7798453090832879218/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=7798453090832879218' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/7798453090832879218'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/7798453090832879218'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/03/code-camp.html' title='Code Camp'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-7649662321059340359</id><published>2007-03-22T20:29:00.001-04:00</published><updated>2007-03-22T21:25:43.684-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Crime'/><category scheme='http://www.blogger.com/atom/ns#' term='Aggrevation'/><title type='text'>An Open Letter…</title><content type='html'>&lt;span xmlns=""&gt;&lt;p&gt;Dear Asshole who broke my car window, tore out my dashboard and took my stereo along with the seven CD's under my seat,&lt;br /&gt;&lt;/p&gt;&lt;p&gt;On the off chance you are actually reading this, I just want to let you know what a pain in the ass you caused me today.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Because of your actions:&lt;br /&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;I was made to wait in the parking garage on one of the windiest days in recent memory waiting for the police&lt;br /&gt;&lt;/li&gt;&lt;li&gt;I was forced to listen to the angry ranting of your other victims (three more in all) as they started to trickle into the garage as the work day ended&lt;br /&gt;&lt;/li&gt;&lt;li&gt;I will have to go to the police department tomorrow and get a copy of the report&lt;br /&gt;&lt;/li&gt;&lt;li&gt;I had to go out of my way to the Kroger in German Village and buy clear shipping tape to fashion a "temporary window"&lt;br /&gt;&lt;/li&gt;&lt;li&gt;I had to drag my laptop through said Kroger, because you've shown me that I cannot trust people enough to leave anything of value in my car, apparently even if it is part of the car, which puts me in a bit of a bind&lt;br /&gt;&lt;/li&gt;&lt;li&gt;I had to file an insurance claim&lt;br /&gt;&lt;/li&gt;&lt;li&gt;I had to miss the .NET user group meeting&lt;br /&gt;&lt;/li&gt;&lt;li&gt;I will have to take time off of work tomorrow to take my car in for repair&lt;br /&gt;&lt;/li&gt;&lt;li&gt;I will have to pay a $500.00 deductible&lt;br /&gt;&lt;/li&gt;&lt;li&gt;I will have to rent a car for about a week and a half&lt;br /&gt;&lt;/li&gt;&lt;li&gt;I have already had to recount the story seven times to seven different people, and none of my friends, family or co-workers even know it happened yet, so I'm looking forward to having to tell the story about a dozen more times&lt;br /&gt;&lt;/li&gt;&lt;li&gt;I have been tempted to drop the "f-bomb" on this blog, which I promised myself when I started it I would never do&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;I know this probably doesn't mean much to you. You obviously don't care about anyone. Given that the best you seem to be able to do is stealing, I'm guessing that you really don't care about yourself either. And that's fine; frankly I don't care about you either. Aside from my anger, and wishing you were there so I could throw your ass over wall to the street seven stories below, you are worthless to me. I imagine you are pretty much worthless to everyone in your life as well.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;So, what's it like being someone who contributes nothing to the world? If you died would anyone care? Or even notice? Maybe your fence? I'm guessing you are doing this to purchase drugs, so maybe your dealer? But then I imagine that there are hundreds of you on the street, and when you are gone you will be easily replaced. Maybe the next one will be a little taller or shorter. Maybe a little thinner or fatter. But I'm guessing no one will notice that someone has even taken your place. What's it like to be so worthless that you essentially interchangeable with any other loser out there?&lt;br /&gt;&lt;/p&gt;&lt;p&gt;What do your parents think of what you do? Do you even have parents? Are they just as bad? Or do they simply not care?&lt;br /&gt;&lt;/p&gt;&lt;p&gt;In any case, I'm sure that in the rare moments that you do think about your "life" and how little you've made of it, I'm sure you blame someone, anyone except you for the situation you are in. Your parents, the police, society, schools, whatever. But deep down you must know that's all bullshit. Even if you don't want to face it, only you are responsible for the waste your life has become.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Can you even look at yourself in the mirror? I wouldn't be able to.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;The items you stole are just "things" and I will easily replace them, like you are easily replaced. Actually, some of those CD's were imports, so they will probably be harder to replace than you would be.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;As for the CD's, I can't imagine you are going to fence them. You CAN'T expect to get much money for them. Even at a used CD store you &lt;em&gt;may&lt;/em&gt; get $10.00 for the lot. Did you take them for personal use? I somehow doubt that you are sophisticated enough to enjoy CD's by Dream Theater, Porcupine Tree, Mozart, Rush or my CD of "Great Moments in Italian Opera."&lt;br /&gt;&lt;/p&gt;&lt;p&gt;As for the CD/MP3 player, it was about five years old, and not state-of-the-art when I did buy it USED. By the way, the MP3 feature hasn't worked for years. While I'm sure you are a drug user, I admit I have no idea what you choice of drug is, but I hope the $0.50 you get for it buys you enough junk to make it worth it.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;But, at the end of the day you are a worthless scumbag who probably won't live to see 30, not that you appear to have anything to look forward to. Oh well. I can only take solace in the fact that I am a better person than you, and that is something you can't ever take away from me.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;--Bender&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-7649662321059340359?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/7649662321059340359/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=7649662321059340359' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/7649662321059340359'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/7649662321059340359'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/03/open-letter.html' title='An Open Letter…'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-7821773829444145344</id><published>2007-02-24T22:06:00.001-05:00</published><updated>2007-03-22T20:29:55.281-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Development'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Events'/><category scheme='http://www.blogger.com/atom/ns#' term='Vista'/><title type='text'>February DevCares Recap</title><content type='html'>&lt;a href="http://4.bp.blogspot.com/_GwK7Z7uA4os/ReEAxjLqhUI/AAAAAAAAABc/IcqV5eG4v6g/s1600-h/CIMG3648.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5035306709634680130" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://4.bp.blogspot.com/_GwK7Z7uA4os/ReEAxjLqhUI/AAAAAAAAABc/IcqV5eG4v6g/s400/CIMG3648.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p&gt;February DevCares is history (at least in Columbus) and aside from a few technical glitches, I think things went well. My topic was new features in Vista and making application compatible with UAC. Jeff's topic was developing Gadgets and using Vistas RSS platform in .NET.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Aside from a few minor technical issues (it was kind of hard for Jeff to present RSS with a wonky Internet connection) things went very well. Drew gave me some good advice, and next time I'm not going to rely so much on my notes. I was too worried about trying to stay in-sync with the slides and I should have just talked to the group.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;It was a relatively quiet group, but they asked some good questions, so they were definitely paying attention. Hopefully I was able to provide some value to their future Vista development AND demonstrate that those Apple commercials slamming Vista are totally full of crap!&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_GwK7Z7uA4os/ReEAATLqhSI/AAAAAAAAABM/UiQOvYJtgr4/s1600-h/CIMG3655.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5035305863526122786" style="FLOAT: right; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_GwK7Z7uA4os/ReEAATLqhSI/AAAAAAAAABM/UiQOvYJtgr4/s400/CIMG3655.jpg" border="0" /&gt;&lt;/a&gt; &lt;p&gt;I enjoyed Jeff's presentation, and especially in light of the network issues though he did a great job.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;The content from both presentations will be up on the &lt;a href="http://www.devcares.com/"&gt;DevCares&lt;/a&gt; website soon. If you just can't wait, feel free to &lt;a href="mailto:jbender@quicksolutions.com?subject=DevCares"&gt;email me&lt;/a&gt; and I'll pass them along. Well, not Jeff's, you'll have to &lt;a href="http://blog.jexed.com/index.html"&gt;email him&lt;/a&gt;…&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Next month's topic is "Extending Word, Excel and InfoPath 2007" and "Building Workflow Applications on SharePoint 2007" and you can register at the DevCares website. And no, I don't know who's speaking yet, but I'm sure it will be great!&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;I would like to thank &lt;a href="http://drewby.spaces.live.com/"&gt;Drew Robbins&lt;/a&gt; and Microsoft for the opportunity. I really enjoyed it!&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;Now, some pictures (courtesy of &lt;a href="http://arnulfowing.blogspot.com/"&gt;Arnulfo Wing&lt;/a&gt;)&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_GwK7Z7uA4os/ReD-CTLqhOI/AAAAAAAAAAs/Q72mBzd8tkw/s1600-h/CIMG3650.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5035303698862605538" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://2.bp.blogspot.com/_GwK7Z7uA4os/ReD-CTLqhOI/AAAAAAAAAAs/Q72mBzd8tkw/s400/CIMG3650.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_GwK7Z7uA4os/ReD-tTLqhPI/AAAAAAAAAA0/m1HY8mywL70/s1600-h/CIMG3652.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5035304437596980466" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://2.bp.blogspot.com/_GwK7Z7uA4os/ReD-tTLqhPI/AAAAAAAAAA0/m1HY8mywL70/s400/CIMG3652.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_GwK7Z7uA4os/ReD_FjLqhQI/AAAAAAAAAA8/A5gFPpwmkA0/s1600-h/CIMG3653.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5035304854208808194" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_GwK7Z7uA4os/ReD_FjLqhQI/AAAAAAAAAA8/A5gFPpwmkA0/s400/CIMG3653.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_GwK7Z7uA4os/ReD_cDLqhRI/AAAAAAAAABE/0JjrGn-CVjU/s1600-h/CIMG3654.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5035305240755864850" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_GwK7Z7uA4os/ReD_cDLqhRI/AAAAAAAAABE/0JjrGn-CVjU/s400/CIMG3654.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_GwK7Z7uA4os/ReEAZzLqhTI/AAAAAAAAABU/8eHyteHUAt4/s1600-h/CIMG3656.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5035306301612786994" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_GwK7Z7uA4os/ReEAZzLqhTI/AAAAAAAAABU/8eHyteHUAt4/s400/CIMG3656.jpg" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-7821773829444145344?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/7821773829444145344/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=7821773829444145344' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/7821773829444145344'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/7821773829444145344'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/02/february-devcares-recap.html' title='February DevCares Recap'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_GwK7Z7uA4os/ReEAxjLqhUI/AAAAAAAAABc/IcqV5eG4v6g/s72-c/CIMG3648.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-4996736629330130392</id><published>2007-02-19T16:35:00.001-05:00</published><updated>2007-03-22T20:30:17.103-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Development'/><category scheme='http://www.blogger.com/atom/ns#' term='.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Events'/><category scheme='http://www.blogger.com/atom/ns#' term='Vista'/><title type='text'>I will be speaking at the February DevCares event in Columbus</title><content type='html'>&lt;span xmlns=""&gt;&lt;p&gt;This Friday, Febuary 23&lt;sup&gt;rd&lt;/sup&gt;, I will be presenting "Windows Vista for Developers" as part of Microsoft's DevCares event. It will be at the Babbage Simmel office in downtown Columbus.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;I will be talking about some new things in Vista that developers can start taking advantage of now. I will demonstrate how to make your applications compatible with UAC, and if there's time how to use the new search functionality built into Vista. Jeff Blankenburg will be presenting on Sidebar Gadgets and Vista's built in RSS components.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;You can register at &lt;a href="http://www.devcares.com/" target="_blank"&gt;&lt;strong&gt;http://www.devcares.com&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-4996736629330130392?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/4996736629330130392/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=4996736629330130392' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/4996736629330130392'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/4996736629330130392'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/02/i-will-be-speaking-at-february-devcares.html' title='I will be speaking at the February DevCares event in Columbus'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-5324222391413300370</id><published>2007-02-13T10:29:00.001-05:00</published><updated>2007-02-13T10:29:33.860-05:00</updated><title type='text'>Old Man Winter wins this round…</title><content type='html'>&lt;span xmlns=''&gt;&lt;p&gt;One "failing" of getting your news and current event information almost exclusively from the Inter-tubes is that reliable and up to date local weather and traffic is kind of hard to come by in a consistent, reliable manner. OK, I should say that up to date local weather and reliable and up to date local weather and traffic information FOR COLUMBUS OHIO is kind of hard to come by in a consistent, reliable manner. This caused me to find myself in the unenviable position of being unprepared for the "White Death" that befell the city while I slept. &lt;br /&gt;&lt;/p&gt;&lt;p&gt;I guess it's not all bad, I'm working from home today, and the lack of distractions has allowed me to get more done by 10:00 than I might otherwise get accomplished by lunch.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;By the way, if I ever leave computers to become a mafia hit man, or a line backer, I want my nick name to be "The White Death." Yeah, that'll work.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;And let me be clear my nick name is NOT "White Death." It is "THE White Death" and I expect to be addressed properly. For example;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;The wrong way: "Hey White Death, would you like to come over this afternoon for pie and coffee?"&lt;br /&gt;&lt;/p&gt;&lt;p&gt;The correct way: "Hey The White Death, would you like to come over this afternoon for pie and coffee?"&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Yes. Yes I would.&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-5324222391413300370?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/5324222391413300370/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=5324222391413300370' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/5324222391413300370'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/5324222391413300370'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/02/old-man-winter-wins-this-round.html' title='Old Man Winter wins this round…'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-8293456978488921500</id><published>2007-02-10T18:09:00.001-05:00</published><updated>2007-02-10T18:09:07.287-05:00</updated><title type='text'>Kinda like a mail-order bride. But you know, for Geeks.</title><content type='html'>&lt;span xmlns=''&gt;&lt;p&gt;I am in a very happy and excited mood. Yesterday I ordered a brand new, sorta top of the line Dell Insprion E1705 laptop! Based on my mother's experience ordering from Dell, I fully expect it to be here before the end of next week.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Here are the drool-worthy specs:&lt;br /&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;2.00 GHz Core Duo 2&lt;br /&gt;&lt;/li&gt;&lt;li&gt;2 GB Ram&lt;br /&gt;&lt;/li&gt;&lt;li&gt;17 inch UltraSharp TrueLife screen (Jeff Blankenburg advised me to pop for the TrueLife upgrade. So if it's not worth it I'm, blaming him!)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Vista Ultimate Edition (Why go half-way?)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;256MB ATI Radeon X 1400 Hyper Memory (And if you are going to run Vista, what's the point in not using Aero?)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;802.11g wireless network card (I didn't see popping for "N.")&lt;br /&gt;&lt;/li&gt;&lt;li&gt;9 cell battery (Hopefully I won't hear calls of "The laptop, the laptop, the laptop is on fire!")&lt;br /&gt;&lt;/li&gt;&lt;li&gt;160 GB hard drive (I wanted 200GB, but I was on a bit of a budget and &lt;em&gt;I&lt;/em&gt; think Dell's HD prices are a little on the high side.)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Bluetooth (small upgrade, but worth it.)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;2 Year Warranty (Only two years. Hey, love is fleeting and I'm known for being fickle on occasion.)&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;I didn't get a case. Again, I think Dell charges a lot for a little in the case department. Besides, I've already found several nicer cases on-line that are either the same price or less. So there!&lt;br /&gt;&lt;/p&gt;&lt;p&gt;On tip, I priced this on-line, but called the order in. By portraying myself as being somewhat hesitant on the phone, I got an immediate $250 discount! &lt;br /&gt;&lt;/p&gt;&lt;p&gt;As for how much? Tsk tsk. I chose not to sully this discussion with talk of money, let us speak only of AMORE.&lt;br /&gt;&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-8293456978488921500?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/8293456978488921500/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=8293456978488921500' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/8293456978488921500'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/8293456978488921500'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/02/kinda-like-mail-order-bride-but-you.html' title='Kinda like a mail-order bride. But you know, for Geeks.'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-1015484252111187913</id><published>2007-01-22T20:48:00.000-05:00</published><updated>2007-01-22T21:27:14.237-05:00</updated><title type='text'>Fear and Loathing in Software Development</title><content type='html'>&lt;a href="http://www.codemash.org/"&gt;CodeMash&lt;/a&gt; was a great conference. There were a lot of opportunities to learn and grow. But some things I heard from more than one person there is a bit of a "dark side."&lt;br /&gt;&lt;br /&gt;No one can deny that there has been a lot of churn in the world of .NET and development in general lately. You've got the &lt;a href="http://msdn2.microsoft.com/en-us/netframework/aa663309.aspx"&gt;.NET 3.0 framework&lt;/a&gt;, offerings from Microsoft like &lt;a href="http://www.gotdotnet.com/codegallery/CodeGallery.aspx?id=6fde9247-53a8-4879-853d-500cd2d97a83"&gt;Service Factory&lt;/a&gt;, persistence layers like &lt;a href="http://www.hibernate.org/343.html"&gt;nHibernate&lt;/a&gt; and tools that change the way we develop as a team like &lt;a href="http://msdn2.microsoft.com/en-us/teamsystem/aa718825.aspx"&gt;Team Foundation Server&lt;/a&gt;. You also have things that effect all platforms like SOA, &lt;a href="http://www.alistapart.com/articles/tools/"&gt;Web Standards&lt;/a&gt; and &lt;a href="http://www.section508.gov/"&gt;Section 508&lt;/a&gt; compliance. Add to all this LINQ which will be out before the end of the year and whatever Microsoft unveils at this years &lt;a href="http://msdn.microsoft.com/events/pdc/"&gt;PDC&lt;/a&gt; and it's a lot to get your mind around.&lt;br /&gt;&lt;br /&gt;But, when I hear my contemporaries say things like:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;"Well, I'm not that interested in LINQ. Sure, it sounds good, but it's probably too complicated and who knows how long Microsoft is going to support it."&lt;/li&gt;&lt;br /&gt;&lt;li&gt;"Sure, Windows Work Flow sounds good, but no one here knows it and I probably can't find anyone to hire who does. I probably wont use it."&lt;/li&gt;&lt;br /&gt;&lt;li&gt;"Yeah, I know we should use CSS for things like styling and layouts, but it looks too hard and I don't feel like learning it."&lt;/li&gt;&lt;br /&gt;&lt;li&gt;"Smart Client would fix a lot of our issues, but it looks too hard to learn."&lt;/li&gt;&lt;br /&gt;&lt;li&gt;"Sure, Service Factory presents all the best practices of web services, but it just seems like a lot of work, so I'm going to just continue to shove everything into one project and not care about scalability or re-usability."&lt;/li&gt;&lt;br /&gt;&lt;li&gt;"I know Section 508 is the law, but it sounds really complicated. I'll just cross my fingers and hope the Feds never take a good look at my website."&lt;/li&gt;&lt;br /&gt;&lt;li&gt;"I bet I would learn a lot at that conference, but I'm not making up two billable days to go!"&lt;/li&gt;&lt;/ul&gt;it tends to be a little depressing. Especially when you note that the common theme is "This is too hard and I don't feel like putting forth the effort. Why can't just do things the way I've always done them?"&lt;br /&gt;&lt;br /&gt;The bottom line is this; technology is an engine. You are either on board helping to lead the way and define the way things are going to be or you are behind it, watching it and your carreer get further and further ahead of you until you can't see it anymore.&lt;br /&gt;&lt;br /&gt;It's up to you; the tools and information are out there. Use them or don't. But don't bitch when the train leaves you at the station.&lt;br /&gt;&lt;br /&gt;Please note, the above quotes are not ment to single anyone out. I've heard them ALL in one fashion or another from a lot of different people on a lot of different occasions.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-1015484252111187913?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/1015484252111187913/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=1015484252111187913' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/1015484252111187913'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/1015484252111187913'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/01/fear-and-loathing-in-software.html' title='Fear and Loathing in Software Development'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-5939438421778206912</id><published>2007-01-21T14:35:00.000-05:00</published><updated>2007-01-21T17:42:56.965-05:00</updated><title type='text'>Codemash roundup: LINQ is the word.</title><content type='html'>Well, it's the Sunday after &lt;a href="http://www.codemash.org/"&gt;CodeMash&lt;/a&gt;, and I've had a chance to collect my thoughts about the event.&lt;br /&gt;&lt;br /&gt;In short, it was a terrific event, and I am really looking forward to CodeMash '08. Aside from the technical content (which I'll cover below) it was a great opportunity to meet up with some people I hadn't seen in a long time and catch up, and to meet some new people in the industry. It was interesting to see what not only fellow ".NET-ers" were doing, but to also check out what's going on in the Java and Ruby camps. I even attended a Java session myself! More on that in a bit.&lt;br /&gt;&lt;br /&gt;Given that it was the first conference that these guys had done, I thought everything went INCREDIBLY smoothly. I was drafted into working the registration desk for a few hours on Thursday, and the very small number of people asking questions about what was going on was a testament to that.&lt;br /&gt;&lt;br /&gt;The facility was nice, although it wasn't hard to see that this was the first "big" event they had hosted. The water park looked fun, but I chose not to indulge for a couple of reasons. It was very nice and convenient to have the lodging and the conference in one facility; no running to catch shuttles, no standing in the rain/snow/heat/whatever and if you didn't want to cart your swag around all day you could just stash it in your room between sessions.&lt;br /&gt;&lt;br /&gt;OK, now on to the technical.&lt;br /&gt;&lt;br /&gt;As mentioned, I did attend a "Java" talk. Todd Kaufman gave a presentation on &lt;a href="http://www.springframework.org/"&gt;Spring&lt;/a&gt;. I attended because I know Todd and have seen him present and wanted to throw some support his way. I also know that there is a &lt;a href="http://www.springframework.net/"&gt;.NET version&lt;/a&gt; that I've heard some interesting things about, so I wanted to check it out. To be honest, some of the Java specific stuff kinda threw me, but I was able to follow along. I'm planning to install Spring and give it a shot.&lt;br /&gt;&lt;br /&gt;I also enjoyed &lt;a href="http://www.nealford.com/"&gt;Neal Fords&lt;/a&gt; keynote on the first morning. It gave me a lot to think about. The fact is, people are already using DSL's and don't even know it. Do you use &lt;a href="http://www.gotdotnet.com/codegallery/CodeGallery.aspx?id=6fde9247-53a8-4879-853d-500cd2d97a83"&gt;Service Factory&lt;/a&gt;? You are using a DSL.&lt;br /&gt;&lt;br /&gt;Some other high points where &lt;a href="http://keithelder.net/blog/"&gt;Kieth Elders&lt;/a&gt; Smart Client presentation (I only caught the first half, I understand the second half had mixed reviews) and &lt;a href="http://drewby.spaces.live.com/"&gt;Drew Robbins&lt;/a&gt; presentation on Vista Sidebar Gadgets. &lt;br /&gt;&lt;br /&gt;&lt;a href="http://keithelder.net/blog/"&gt;Kieth&lt;/a&gt; had some good points about advocating for Smart Client systems and it's something I'm definitely going to offer by way of suggestion to my clients. Some might be open to this. Some, mostly the ones who have drunk the "Web 2.0" Kool-Aid might not, but it never hurts to try. Being and admitted "object-snob" I was a little concerned to see him using datasets. Not because I think he shouldn't have used them in the context that he did, but because I've noticed that a lot of developers want to use them for EVERYTHING. I'm trying to break the cycle of dataset madness, and I was mostly worried that a response to my efforts would be "Well, Kieth Elder uses datasets." &lt;br /&gt;&lt;br /&gt;&lt;a href="http://drewby.spaces.live.com/"&gt;Drew&lt;/a&gt; gave a really interesting kind of "see spot run" overview of Vista gadgets. I can see these being particularly useful in an Enterprise environment. The "big thing" now is dashboards and Enterprise Platforms. But, most people don't want to necessarily have their dashboard open all day, especially if it isn't their primary work surface. I see gadgets being useful by allowing a small-footprint, non-intrusive way for people to monitor important information about their organization without impacting how they do their day-to-day work. Right now not enough of my clients are using Vista, but it's definitely something worth keeping in the tool-box for later.&lt;br /&gt;&lt;br /&gt;I was planning on attending &lt;a href="http://joshholmes.com/Default.aspx"&gt;Josh Holmes&lt;/a&gt; presentation on SOA, but he told me that he would be here (in Columbus) next week to present it at the next &lt;a href="http://condg.org/Default.aspx"&gt;CNUG&lt;/a&gt; users group, so I guess I have to wait a week.&lt;br /&gt;&lt;br /&gt;The "big" thing of CodeMash, at least for me and I imagine the rest of the ".NET-ers" was &lt;a href="http://weblogs.asp.net/scottgu/default.aspx"&gt;Scott Guthrie&lt;/a&gt; speaking, mostly about &lt;a href="http://msdn2.microsoft.com/en-us/netframework/aa904594.aspx"&gt;LINQ&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;To be short, I think LINQ is going to be the "next big thing" in the world of .NET. .NET 3.0 (WCF, WF, WPF(/E)) are all great technologies, and represent big leaps in and of themselves. But they don't approach what LINQ is going to do.&lt;br /&gt;&lt;br /&gt;I'm not going to go into explaining what LINQ is. If you are reading this and you don't know you either&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Aren't in technology and don't care&lt;/li&gt;&lt;br /&gt;&lt;li&gt;You &lt;em&gt;are&lt;/em&gt; in technology and don't care &lt;em&gt;enough&lt;/em&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;What I can tell is you what LINQ is to me. LINQ is the bridge between the idea of data persistence and domain objects. Datasets continue to be used for a lot of database access, and I personally don't like it. Datasets are inefficient. Datasets are heavy. As a developer, I prefer to think in terms of things like customers, accounts, orders, addresses, etc. and not in terms of a field in a representation of a table in a representation of a database. Most importantly, unless you have a bunch of business logic in your database (and why you would put it there is beyond me) datasets don't force you to do any business level validation before saving your data. LINQ is also an easy way for me to find the data I need easily in large collections. LINQ is going to change the way people think about data and data persistence. It's going to be out (officially) later this year and I can't wait!&lt;br /&gt;&lt;br /&gt;And finally, the coolest thing about CodeMash was that I was one of several people who were invited to have lunch with Scott Guthrie on Friday. (Thanks Drew!) It was quite an honor, and I think a lot of the .NET people were a little "star-stuck." &lt;a href="http://govorin.blogspot.com/index.html"&gt;Alexey&lt;/a&gt; definitely had a bit of a "boy-crush" going. But who can blame him. The lunch was great and there was a lot of thought provoking discussion. It was an honor to be invited to attend.&lt;br /&gt;&lt;br /&gt;I almost forgot one last thing! A final highlight (or, lowlight depending on your point of view) was the &lt;a href="http://brianhprince.blogspot.com/index.html"&gt;Brian Prince&lt;/a&gt;/Josh Holmes head shaving. I guess I should explain for those who missed it; at the end of Neal Ford's keynote on the first day, Josh made a deal that he would shave his head at the closing if there were 500 blog posts about CodeMash. Brian Prince upped the ante by saying he would do it for 600. At the end of the closing, Technorati was fired to up to get a final count and.... Technorati was down. Yeah, kind of anti-climactic. But, Josh made a deal with the crowd that if we all went home and blogged about CodeMash, he would do it. Somehow Brian got roped into this too, and off the hair came. Amazingly, a cursory search of &lt;a href="www.youtube.com"&gt;YouTube&lt;/a&gt; did not produce a video. Keep checking.&lt;br /&gt;&lt;br /&gt;Good luck guys. I hope it grows back. It doesn't alway you know... :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-5939438421778206912?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/5939438421778206912/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=5939438421778206912' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/5939438421778206912'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/5939438421778206912'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/01/codemash-roundup-linq-is-word.html' title='Codemash roundup: LINQ is the word.'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-3843411985504741029</id><published>2007-01-12T15:28:00.000-05:00</published><updated>2007-01-12T16:03:49.225-05:00</updated><title type='text'>Lazy Loading in a SOA world.</title><content type='html'>As a "side effect" of my current project, I am helping my client build a SOA interface to another large system. This client has traditionally used datasets for most of their data access, and one of my goals is to get the harsh dataset monkey off their backs and wean them onto the smooth, mellow high of business domain objects. After all, all the really cool Enterprises are doing it! I'm also trying to champion the "One interface to rule them all" cause, so this (eventually) will be the &lt;strong&gt;ONE&lt;/strong&gt; and &lt;strong&gt;ONLY&lt;/strong&gt; way to get data from, or put data in this system.&lt;br /&gt;&lt;br /&gt;In putting together a proof of concept, I came across a bit of a problem; my entity has several properties that return lists of items. Some of these lists can be quite large, so we want to lazy load them. For my example, I created a person, who had a list of four address (I’m just returning four hard-coded ones since I didn’t want to muck with the database for the proof of concept) which I wanted to lazy load. I wired everything up and it was working beautifully! &lt;br /&gt;&lt;br /&gt;Except for one thing; I was getting &lt;em&gt;eight&lt;/em&gt; addresses back. &lt;br /&gt;&lt;br /&gt;Here’s the problem; when the web service was getting ready to send my person object back, it was serialized by the XML serializer. That serializer was looking at my address property, which caused a lazy load. So, my object was initially coming over the wire with all the lists populated. One the client side, the de-serialization was also calling the address property, which was again lazy loading the address right away. I had a check in the “get” to make sure the list was null before the loading occurred, so how BOTH lists got merged together is something I can only wildly speculate about at this point, but it was merely a side effect of a different problem, so I didn’t worry about it.&lt;br /&gt;&lt;br /&gt;The solution was to find a way for the XML Serializer to ignore that property when it was sending it out.&lt;br /&gt;&lt;br /&gt;The solution: the &lt;strong&gt;XMLIgnore&lt;/strong&gt; attribute. Decorating my property with this attribute causes the serializer to skip it. It doesn’t get looked at during serialization, it’s ignored during de-serialization and my lazy load routine work beautifully.&lt;br /&gt;&lt;br /&gt;And all was well in the kingdom of SOA (for now…)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-3843411985504741029?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/3843411985504741029/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=3843411985504741029' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/3843411985504741029'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/3843411985504741029'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/01/lazy-loading-in-soa-world.html' title='Lazy Loading in a SOA world.'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-1240869491925258137</id><published>2007-01-04T22:33:00.000-05:00</published><updated>2007-01-04T22:50:26.358-05:00</updated><title type='text'>My New Project</title><content type='html'>Having just acquired a shiny new XBox 360, noting the release of &lt;a href="http://msdn.microsoft.com/directx/xna/default.aspx"&gt;XNA Game Studio Express&lt;/a&gt;, and being the curious little geek that I am, I have decided to try my hand at writing my first video game.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;The Concept&lt;/h2&gt;Instead of trying to come up with my own game concept the first (maybe only) time out, I am "borrowing" a concept from someone else. The board game &lt;a href="http://www.boardgamegeek.com/game/12"&gt;Ra&lt;/a&gt;. This is basically a game where you bid on tokens to amass points and crush your enemies in a most humiliating manner. I first played the game at Brian Anzalones house several years ago, and despite my less than .500 average enjoy it. From what I've seen, there is no other game available on XBox quite like this (sorry FPS fans, it's not an "action" game) This choice was also out of practiality; I've never written a game before, and didn't want my first attempt to be saddled with having to learn how to do animation, physics, collision detection, lighting and other stuff in involved in action games. &lt;br /&gt;&lt;br /&gt;This is a nice, simple, civilized board game. Just my speed first time out.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;The First Feature Set&lt;/h2&gt;Being a fan of agile development, I will be creating this game as a series of features to be deployed on an probably very irratic and unpredictable schedule. The goals for my first release are:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Target for the XBox 360 platform&lt;/li&gt;&lt;br /&gt;&lt;li&gt;All basic rules and scoring in place&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Playable against others via XBox live&lt;/li&gt;&lt;/ul&gt;Once I get these things working, I'll look into developing an "AI" to facilitate single player games, but being my first game I want to start kinda small.&lt;br /&gt;&lt;br /&gt;The first step is going to be setting of the XNA Game Studio on my home machine. It looks like I'll need to pay the $50.00 a month, but hey, knowledge is it's own reward, right....?&lt;br /&gt;&lt;br /&gt;I'll be sure to blog about my progress. In the meantime, if you would like to be on my list of "beta testers," send me a comment and if I don't already have your XBox Live ID, be sure to include that.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-1240869491925258137?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/1240869491925258137/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=1240869491925258137' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/1240869491925258137'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/1240869491925258137'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/01/my-new-project.html' title='My New Project'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-5829515624271250335</id><published>2007-01-04T21:46:00.000-05:00</published><updated>2007-04-03T10:46:10.937-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='weight loss'/><title type='text'>Was this one of your New Years resolutions?</title><content type='html'>As most of the hits on this blog over the past few days have been on the “lose weight” pages and as the new year brings many people to resolve to lose weight, and as a means to that end many people will join a gym and in order to continue my promised series of articles on the subject, I bring you this next installment of my “lose weight” series.&lt;br /&gt;&lt;br /&gt;This time, I’m going to discuss exercising. By means of a reminder, I will switch back and forth between exercise and food as the series goes on.&lt;br /&gt;&lt;br /&gt;&lt;H2&gt;Why do I need to exercise?&lt;/H2&gt;&lt;br /&gt;&lt;br /&gt;A lot of people will try to lose weight by just dieting. This will only work in the short term. Please see my previous post as to why.&lt;br /&gt;&lt;br /&gt;Some people (particularly women) will say they don’t want to lift weights because they don’t want to “get  big.” You don’t have to get big from lifting weights; even toning will help to increase your health and your metabolism. And ladies don’t need to worry; without “additional help” (roids) you will not get big. Women simply don’t have the body chemistry to get big. You will get “ripped” but it will be more of a “swimmers body” than a “meat-head” body. Think Madonna, not Arnold.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Gear up!&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;If you’re just starting out, don’t spend a fortune on work-out gear. A comfortable shirt and pair of shorts should be fine. Women might want to invest in a good sports bra. Clothes should be comfortable and easy to move in, but not loose. Good socks are also a must. For just starting out, a good pair a cross training shoes are important. Make sure they fit! I’ll do another post on gym ware (where I “name names”) later. For now, don’t spend a ton of money.&lt;br /&gt;&lt;br /&gt;As you’ll see below, monitoring your heart rate is important. A heart monitor may be a good investment. Get one with a chest strap; the ones that take your heart rate via the finger sensors are useless for working out. Polar makes some great ones that range from a simple model that will only tell you your heart rate to models that have built-in MP3 players and GPS systems. &lt;br /&gt;&lt;br /&gt;Don’t bother with the “Nike+iPod” stuff. The only remotely pertinent information it gives you is distance run. In spite of the marketing fluff it can not give you accurate pulse rates or calories burned. Those figures just can’t be computed from a motion sensor in your shoe. If you really want to get the distance retrace your path in your car. If you want “super accurate” numbers, run on a track. Better yet, don’t worry; time and heart rate are more important than distance.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;OK, so what do I do?&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;I work out six days a week. Three cardio days and three strength training days. Here is what I did when I was starting out. I’m not going to give you specific weights, rep counts or “Stair Master” levels. Those things aren’t important. What’s important is your heart rate. More on that later. For the most part, you should spend no more than an hour in the gym each day. But, it should be a good (not wasteful) hour.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Pre-workout&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Regardless of what kind of work out you are doing, you need to warm up and stretch beforehand. Warming up should be about five to seven minutes. The goal is to not be sweaty or out of breath at the end of the warm up, just a little looser. If you’ve ever tried to run from a “cold start” you’ll know what I mean. It’s just to get the blood moving a bit.&lt;br /&gt;&lt;br /&gt;From there, you should spend about ten minutes stretching. Again, this is to loosen up and ensure that you won’t pull any muscles or injure yourself. I will at some point write a more detailed post on stretching, but for now check &lt;a href="http://www.netfit.co.uk/stretching.htm"&gt;this site&lt;/a&gt; out. &lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Cardio&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;I do cardio Monday, Wednesday and Friday. I do at least 30 minutes. I alternate between the Stair Master (the one that looks like a very short escalator; the other style is a waste of time), the cross trainer and running. If you have access to a pool, swimming is great. Biking is OK, but since you’re sitting your legs don’t support your body weight, and you’re not getting as good a work out as you could be. But anything is better than nothing.&lt;br /&gt;&lt;br /&gt;When performing any cardio exercise, do not hang on the machine like you are clinging to it for life. It means you are going too fast. Lower the speed/intensity/whatever and do it with proper form. You will be a better work out and get results faster.&lt;br /&gt;&lt;br /&gt;If you are under 220 lbs., running once a week is OK. If you are heavier than that you could run into problems with your legs. Try just walking on the treadmill with a steep incline. If you weight more that 220 and MUST run, try to only do it once every other week. If you start to feel sharp pain in your knees (before, during or after) stop immediately. If you run on a track, or outside or anywhere except a treadmill, be sure to switch directions every time you run. Your legs will thank you.&lt;br /&gt;&lt;br /&gt;When doing cardio, you should try to reach and maintain your target heart rate. What is that? It’s the heart rate at which your body is working hard enough to burn fat. There are a couple different ways to figure out what yours is. The easiest way (although not super accurate) is to subtract your age from 220 (226 for the ladies). If you are already pretty fit, that 70% of that number. If you are “so-so” fit, take 65%. If you are a total couch potato, take 60% of it. That’s your target hear rate. If you want a more accurate measurement, and know how to correctly take your own pulse, &lt;a href="http://www.stevenscreek.com/goodies/hr.shtml"&gt;this site&lt;/a&gt; has a calculator that is OK. If you want to be “hyper accurate” contact your gym. There are a couple of different  tests they can administer to calculate this that range from cheap and quick to expense of drawn out. Don’t pay too much for this though, your target heart rate will change as you begin to get in shape. And don’t be a slave to this number. If you can do a little more, do it. If your below it but feel like you are about to die, than don’t push yourself. You’ll get there, just give it time.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Weight Training&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Weight training does not mean you have to get “big.” It can be as simple as toning and strengthening your existing muscles. Everyone should do it.&lt;br /&gt;&lt;br /&gt;The major muscle groups for weight training are;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The Chest (bench presses, push ups, flys)&lt;/li&gt;&lt;br /&gt;&lt;li&gt;The Shoulders (shoulder presses, lateral raises)&lt;/li&gt;&lt;br /&gt;&lt;li&gt;The Arms (curls, overhead extensions)&lt;/li&gt;&lt;br /&gt;&lt;li&gt;The Back (rows, reverse flys)&lt;/li&gt;&lt;br /&gt;&lt;li&gt;The Abdominals (crunches, planks, in and outs)&lt;/li&gt;&lt;br /&gt;&lt;li&gt;The Legs (lunges, squats, “super-legs”)&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://en.wikipedia.org/wiki/Weight_training_exercises"&gt;This page&lt;/a&gt; has a good explanation of most of these.&lt;br /&gt;&lt;br /&gt;With the exception of the abs and legs, you do NOT need to work every group every time. &lt;br /&gt;&lt;br /&gt;In general, I try to use dumbbells for all of these. You can use machines for some of them, but free weights help keep you honest, and make you work the “stabilizer” muscles which increase your overall strength. Additionally, I use dumbbells as opposed to barbells so that each arm has to work independently. This ensures that everything builds up symmetrically.&lt;br /&gt;&lt;br /&gt;When lifting, go slow. Don’t jerk or swing the weights. Besides keeping you from injuring yourself, it will make sure that you are really working the muscle and not letting physics do all the work&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Gym etiquette&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;It’s important to know how to behave in a gym. I’ll do another post on this, in more detail later. For now:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Do not drop your weights. If they are too heavy, move down.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Put your stuff away when you are done with it. This includes un-racking weight plates from any machine or bars you have used.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Don’t monopolize equipment. Let others work in during your break. If the other person was there before you, reset the weight pin to their weight for them, or help them move plates when switching.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Wipe off equipment when you are done. Even if there is no visible sweat do it anyway.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Socializing is OK, but not everyone is there to talk. Keep that in mind.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;When socializing, keep conversations from getting too loud and keep the language “PG.”&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Mind your surroundings and respect others personal space.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Don’t leave a mess!&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;That’s enough to get you started. I’ll post more in depth on some of the topics I’ve covered here later.&lt;br /&gt;&lt;br /&gt;Good luck!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-5829515624271250335?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/5829515624271250335/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=5829515624271250335' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/5829515624271250335'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/5829515624271250335'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/01/was-this-one-of-your-new-years.html' title='Was this one of your New Years resolutions?'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-8771730705758792734</id><published>2007-01-01T13:45:00.000-05:00</published><updated>2007-01-01T13:46:51.277-05:00</updated><title type='text'>What were your plans for New Years Eve?</title><content type='html'>&lt;a href="http://3.bp.blogspot.com/_GwK7Z7uA4os/RZlW9Af36vI/AAAAAAAAAAY/OI1zBfEivBM/s1600-h/PH2006123100189.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_GwK7Z7uA4os/RZlW9Af36vI/AAAAAAAAAAY/OI1zBfEivBM/s400/PH2006123100189.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5015135266159454962" /&gt;&lt;/a&gt;&lt;br /&gt;Maybe just hanging with your buddies?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-8771730705758792734?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/8771730705758792734/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=8771730705758792734' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/8771730705758792734'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/8771730705758792734'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2007/01/what-were-your-plans-for-new-years-eve.html' title='What were your plans for New Years Eve?'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_GwK7Z7uA4os/RZlW9Af36vI/AAAAAAAAAAY/OI1zBfEivBM/s72-c/PH2006123100189.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-2147582933559918949</id><published>2006-12-24T11:55:00.000-05:00</published><updated>2006-12-24T12:06:35.534-05:00</updated><title type='text'>Las Vegas Travel Tip #1</title><content type='html'>Regardless of where you are coming from, if you arrive at the “C” or “D” gates at the McCarran airport in Las Vegas (these are the gates most major airlines use) it will take you at least one hour from the time you step off the plane till the time the first suitcase hits the baggage carousel. This will not be affected by weather, time of day or how busy the airport is. The best you can hope for is one hour.&lt;br /&gt;&lt;br /&gt;After five years of this, I feel safe elevating this from theory to proven law. &lt;br /&gt;&lt;br /&gt;The reason for this is that the airlines do not handle their own baggage at McCarran; there is one company that does the baggage for all airlines. And they are union. Need I say more?&lt;br /&gt;&lt;br /&gt;My advice is that if you are just coming in for a weekend or so, try to pack all you will need into a carry one (keeping in mind the limited size and number of carry-ons allowed) and skip baggage claim altogether. If this is not an option come back later. If you are arriving in the morning or afternoon, go grab breakfast/lunch or check into your hotel. If it’s night, come back in the morning. At some point, someone from the airline will take you stuff off the carousel and lock it up in the airlines baggage office. In my experience, no airline has had a problem with this as they realize there is a problem, but seem powerless (or too apathetic) to do anything about it.&lt;br /&gt;&lt;br /&gt;I did complain about this at one point, and was told by the person in the baggage office that part of the problem is that the gates are one mile away, and the truck is only allowed to drive 15 miles an hour. I pointed out that by the logic, it should take four minutes to get from the plane to the baggage claim. Apparently my grasp of basic math was too much for her, so she just kind of wandered off with a confused look on her face. I didn’t point out that after the four minutes for transit that still leaves 56 minutes. I was worried that any more use of math skills would have caused me to be branded as a “witch” and I would have been burned at the stake by the frightened, ignorant villagers.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://del.icio.us/post" onclick="window.open('http://del.icio.us/post?v=4&amp;noui&amp;jump=close&amp;url='+encodeURIComponent(location.href)+'&amp;title='+encodeURIComponent(document.title), 'delicious','toolbar=no,width=700,height=400'); return false;"&gt; &lt;font size=small&gt;del.icio.us&lt;/font&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-2147582933559918949?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/2147582933559918949/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=2147582933559918949' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/2147582933559918949'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/2147582933559918949'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/12/las-vegas-travel-tip-1.html' title='Las Vegas Travel Tip #1'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-4043210172064936467</id><published>2006-12-05T12:12:00.000-05:00</published><updated>2006-12-05T12:16:51.628-05:00</updated><title type='text'>Sweet! Now all I need is a cane and a big bottle of Vicoden!</title><content type='html'>&lt;a href="http://3.bp.blogspot.com/_GwK7Z7uA4os/RXHKq9sA35I/AAAAAAAAAAM/Q__jU40XSZk/s1600-h/Trauma+Center.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5004003500447817618" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_GwK7Z7uA4os/RXHKq9sA35I/AAAAAAAAAAM/Q__jU40XSZk/s400/Trauma+Center.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;As far as I'm concerned, the Wii has a "killer app."&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;Trauma Center is a game where you basically get to play &lt;strike&gt;God&lt;/strike&gt; doctor. You use the Wii Remote to do things like handle a scalpel, defribluator and nurses backsides. &lt;/div&gt;&lt;p&gt;&lt;div&gt;No word yet on if you'll be able to use your medical talents to perform un-natural experiments on your "patients" like attaching extra arms or giving them gills, but the game is reportedly so real that it comes with a malepractice lawsuit in the box.&lt;/div&gt;&lt;p&gt;&lt;div&gt;I figure between this and &lt;a href="http://www.ipi.org/ipi/IPIPressReleases.nsf/0e36cc57ef9cd9a086257030006cb03e/c1b37e0c682493db8625723300634434?OpenDocument"&gt;the ability to use Google to diagnose patients&lt;/a&gt;, my mother will soon realize her dream of having a doctor in the family. And the Wii even had a golf game to boot; It's one stop shopping!&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;div&gt;I'll be sure to let everybody know when I put out my shingle!&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://del.icio.us/post" onclick="window.open('http://del.icio.us/post?v=4&amp;noui&amp;jump=close&amp;url='+encodeURIComponent(location.href)+'&amp;title='+encodeURIComponent(document.title), 'delicious','toolbar=no,width=700,height=400'); return false;"&gt; &lt;font size=small&gt;del.icio.us&lt;/font&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-4043210172064936467?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/4043210172064936467/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=4043210172064936467' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/4043210172064936467'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/4043210172064936467'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/12/sweet-now-all-i-need-is-cane-and-big.html' title='Sweet! Now all I need is a cane and a big bottle of Vicoden!'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_GwK7Z7uA4os/RXHKq9sA35I/AAAAAAAAAAM/Q__jU40XSZk/s72-c/Trauma+Center.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-2497115766543893807</id><published>2006-12-01T16:34:00.000-05:00</published><updated>2006-12-01T16:49:08.619-05:00</updated><title type='text'>Everyone do the CodeMash!</title><content type='html'>In an effort to use my "blogging powers" for good instead of evil, I come to you today to pimp &lt;a href="www.codemash.org"&gt;CodeMash&lt;/a&gt;. &lt;br /&gt;&lt;br /&gt;What is CodeMash? Well, if hadn't been so lazy and just clicked on the link you would know that...&lt;br /&gt;&lt;br /&gt;&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;em&gt;CodeMash is a unique event that will educate developers on current practices, methodologies and technology trends in variety of platforms and development languages such as Java, .NET, Ruby and PHP. Held January 18-19, 2007 at the lush Kalahari resort in Sandusky, Ohio, attendees will be able to attend a world-class technical conference amid Ohio's largest indoor waterpark. So nobody will frown if you show up in shorts, sandals, and your loudest t-shirt. You might even win a prize for doing so.&lt;/em&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;Oh, to be in Sandusky in January.&lt;br /&gt;&lt;br /&gt;Seriously though, the event is $99 ($149 if you screw around and miss the early-bird date), plus hotel and transport. When you consider the calibur of speaker appearing (Neal Ford, Scott Guthrie, Bruce Eckel, Jesus) it's a hell of a deal!&lt;br /&gt;&lt;br /&gt;See you there!&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Update:&lt;/strong&gt; Jesus has backed out. Apparently there is a scheduling confilct as he was already commited to appearing in a piece of burnt toast in a trailer park in Alabama that week. Bummer.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-2497115766543893807?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/2497115766543893807/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=2497115766543893807' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/2497115766543893807'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/2497115766543893807'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/12/everyone-do-codemash.html' title='Everyone do the CodeMash!'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-6179023435375825754</id><published>2006-11-27T13:08:00.000-05:00</published><updated>2006-11-27T13:08:50.728-05:00</updated><title type='text'>What I Did On My Thanksgiving Vacation...</title><content type='html'>Like most people, I travel to see my family over the holidays. Seeing as my family lives on the other side of the country, and the departure of America West airlines from Columbus has left me with no direct flight options, and my steadfast refusal to pay $800 - $900 for one round trip coach ticket to Las Vegas, I spend a lot of time during the holiday season sitting in airports for several hours on end.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;My Confession&lt;/h2&gt;&lt;a href="http://photos1.blogger.com/x/blogger2/2534/3605/1600/894530/PTA.jpg"&gt;&lt;img style="FLOAT: right; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://photos1.blogger.com/x/blogger2/2534/3605/320/366041/PTA.jpg" border="0" /&gt;&lt;/a&gt;I can’t sleep in airports. In part it’s because I am a bit paranoid of missing my flight when it is called, then having to scramble at the busiest travel time of the year to make other arraignments. I guess I’ve seen “Planes, Trains and Automobiles” too many times. Also, in spite of all the post-911 security measures, I don’t know that I feel secure enough to take a nap without someone “watching my back.” I’m too afraid that when I wake up, I’m going to pick up the wrong knapsack, then the drug dealers, terrorists and CIA will all be chasing me to retrieve it, not believing that I am just a guy who was in the wrong place at the wrong time. OK, I guess I’ve seen too many James Bond movies too.&lt;br /&gt;&lt;br /&gt;So, to pass the time I always bring a few books with me. Over my abbreviated Thanksgiving vacation, I had a chance to read two:&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;&lt;a href="http://www.amazon.com/Programming-Atlas-Christian-Wenz/dp/0596526725/sr=8-1/qid=1164649880/ref=pd_bbs_sr_1/104-3516958-8640753?ie=UTF8&amp;s=books"&gt;Programming Atlas&lt;/a&gt;&lt;/h2&gt;&lt;a href="http://www.amazon.com/Programming-Atlas-Christian-Wenz/dp/0596526725/sr=8-1/qid=1164649880/ref=pd_bbs_sr_1/104-3516958-8640753?ie=UTF8&amp;amp;s=books"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://photos1.blogger.com/x/blogger2/2534/3605/320/983158/Atlas.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This is the first (and from what I could find, only) book on Atlas. O’Reilly was touting the “Rough Cut” of this at Tech Ed., and this, I suppose, is the result. All in all, it’s an OK book. Since there have been at least two revs. of Atlas since it hit the presses, the details are a bit dated. A lot of the examples will not work now, and no updates have been posted to the books site. A lot of the underlying “fundamentals” of how Atlas works are there, but it doesn’t go deep enough make up for the lack of practical working examples. Examples are presented in a way that violate almost every “best-practice” in web development, which I understand may be a good idea for the sake of clarity in presenting an example, but never advises the reader where they are deviating from the way things should be done. Not good for “less seasoned” developers who tend to parrot what they read in a book as opposed to applying the knowledge to their own needs.&lt;br /&gt;I also feel the books spends too much time on the JavaScript side of the equation, teaching you how to manipulate Atlas controls via JavaScript while only devoting only a few pages to update panels. Don’t get me wrong, the JavaScript stuff they show is cool, but the way they present the information does not make Atlas seem all that much easier or more useful than good ol’ client-side JavaScript. That’s especially true when you take into account that only 30 pages of an over 300 page book is dedicated to using Atlas with Web Services.&lt;br /&gt;It’s got some cool sections about extending controls and writing Atlas controls on your own. It also had a chapter on using Microsoft’s “Virtual Earth” which made me appreciate how easy to use the Google Maps API really is. Granted, I’ve never actually used Virtual Earth, but if this book is any indication, I doubt I ever will. A chapter on Web Parts also seems kind of thrown together and not all that useful. All in all, you’re better off just sticking to the tutorials Microsoft offers on the &lt;a href="http://ajax.asp.net/Default.aspx"&gt;Atlas website&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;And yes, I know that the offical name is "ASP.NET AJAX." But I just got people used to the terms "AJAX" and "ATLAS" and understanding that they were not always interchangeable. It took weeks! So with certin people at least, I'm going to continue calling it Atlas for the time being. Besides it's easier to say "Atlas" than "ASP.NET AJAX."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;&lt;a href="http://www.amazon.com/HTML-Utopia-Designing-Without-Tables/dp/0975240277/sr=1-1/qid=1164650099/ref=pd_bbs_sr_1/104-3516958-8640753?ie=UTF8&amp;s=books"&gt;HTML Utopia: Designing Without Tables Using CSS&lt;/a&gt;&lt;/h2&gt;&lt;a href="http://www.amazon.com/HTML-Utopia-Designing-Without-Tables/dp/0975240277/sr=1-1/qid=1164650099/ref=pd_bbs_sr_1/104-3516958-8640753?ie=UTF8&amp;amp;s=books"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://photos1.blogger.com/x/blogger2/2534/3605/320/108207/htmlcss.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Ahhhh…. Much better. Pretty much any web developer worth their salt has read “The Zeldman Book.” I almost referred to it as “The Orange Book” out of habit, but since the second edition is green I will need to work to break myself of that habit. &lt;a href="http://www.amazon.com/Designing-Web-Standards-2nd-VOICES/dp/0321385551/sr=1-1/qid=1164650204/ref=pd_bbs_sr_1/104-3516958-8640753?ie=UTF8&amp;s=books"&gt;&lt;img style="FLOAT: right; MARGIN: 0px 0px 10px 10px; CURSOR: hand" alt="" src="http://photos1.blogger.com/x/blogger2/2534/3605/200/743072/zeldman.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Anyway, I’m sure most of you have read it. While I enjoyed the book, and agreed with its premise, I was a little disappointed with a lack of practical “This is how you do it in the real word” type of content. This book does an excellent job of bridging the gap. It starts with an explanation of what web standards are (it even references &lt;a href="http://www.alistapart.com/"&gt;A List Apart&lt;/a&gt;) and why you should use them. It does a great job of explaining the need of accessibility, and gives some pointers on how to achieve this. The “best-practices” of CSS are explained. From there, the book is chock-full of practical CSS knowledge from setting colors and fonts to creating various layouts all without tables. The last third of the book in a series of appendixes that among other goodies has a pretty extensive reference of CSS attributes. The authors do a good job of pointing out where different browsers implement the standard differently, but I notice that no reference was made to the &lt;a href="http://en.wikipedia.org/wiki/Box_model_bug"&gt;Internet Explorer Bug&lt;/a&gt; in their discussion of the “Box Model.” That glaring omission aside, I found this to be one of the best CSS books I’ve ever read, and I wish I had found the first edition of this book a couple years ago.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Next…&lt;/h2&gt;So, with Thanksgiving gone, I’m getting my reading list for Christmas together. So far, the only thing on it is “The Security Development Lifecycle” by Michael Howard and Steve Lipner. I actually picked this up at Tech Ed, but due to more pressing matters, didn’t start reading it right away. Then I sort of… uh… forgot about it. Hey it happens! I “rediscovered” it during the move, and it is back on the list.&lt;br /&gt;&lt;br /&gt;So, if anybody out there has any suggestions, let me know!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-6179023435375825754?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/6179023435375825754/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=6179023435375825754' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/6179023435375825754'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/6179023435375825754'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/11/what-i-did-on-my-thanksgiving-vacation.html' title='What I Did On My Thanksgiving Vacation...'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-116362054647298551</id><published>2006-11-15T14:50:00.000-05:00</published><updated>2007-04-03T10:46:35.850-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='weight loss'/><title type='text'>"Lose Wieght Now, Ask Me How" the Series</title><content type='html'>Well, people really seemed to like my “lose weight” post and have asked me for some more “detailed” information, which makes sense since the &lt;a href="http://benders-blog.blogspot.com/2006/10/lose-weight-now-ask-me-how.html"&gt;original post&lt;/a&gt; was so short. So, I’ll be posting a series of articles on how I lost the weight. You are free to follow along, but just remember that everyone is different, and what worked for me may not be best with you. You should check with a doctor when in doubt. &lt;br /&gt;&lt;br /&gt;This is going to be a series of articles. I’m going to start with food. I’m going to cover exercise as well, but not today. I’m probably going to switch back and forth. &lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Forget what you think you know&lt;/h3&gt;&lt;br /&gt;When people want to lose weight, instinctively the first thing they try to do is eat less. They cut out in between meal snacks. They even sometimes try to cut out whole meals (like breakfast). That isn’t going to work. As I said in the previous post, your body uses food for energy and to replace dead cells and keep the body healthy. If you limit the amount of food you eat, or how often you eat it in a drastic manner, the body believes it’s starving and will fight back. You will have less energy and your body will start to cannibalize itself to survive, usually starting with the muscles. Which means you’ll lose weight, but not fat. You’ll also be sick and kind of gross looking. &lt;br /&gt;&lt;br /&gt;&lt;h3&gt;What to Eat&lt;/h3&gt;&lt;br /&gt;Everything you eat is one of three things, all of which you need;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Protein – Meats, eggs, nuts, dairy, etc.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Fat – Just what it sounds like&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Carbohydrates – Everything else.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Why&lt;/h3&gt;&lt;br /&gt;You need protein because it’s what your body is made of. Without it you will shrivel up and turn to dust! OK, maybe not. But, you will have heath issues since proteins are actually amino acids, which you need too do things you enjoy, like being alive. &lt;br /&gt;&lt;br /&gt;You need fats because they are what you body uses to make hormones. They are also used to make healthy skin and hair. So without fat in your diet you will be a cranky person with dry cracked skin and bad hair. But that wont matter because you’ll also be dead. Turns out that there are fat soluble vitamins that you need that can only be absorbed in the presence of fat (more on vitamins later). There are good fats and bad fats. Again, I’ll expand on this later, but for now use canola for high-heat applications, olive oil for cold/no heat applications. Use butter (sparingly) instead of margarine and for now, no deep frying.&lt;br /&gt;&lt;br /&gt;Carbohydrates are plant matter, and either come in the form of sugar (the plants energy source) or fiber (the plants structure). Fiber helps you not cry when you go to the bathroom. Nuff said, just eat it. Sugar is used to provide energy. Refined sugar, literally plant sugar that has been refined down to being super-concentrated, make things like table sugar, corn syrup and pretty much anything on an ingredient label that ends with “-ulose.” Refined sugar is bad because it promotes a heavy insulin response (more on why this is bad in a latter post). Natural sugars are found in things like fruit and fruit juices. Starch is sugar, but food generally considered “starchy” like potatoes and corn don’t have as much fiber that fruit does. “Starchier” sugars are also more concentrated than sugars from other plants, so moderation is key.&lt;br /&gt;&lt;br /&gt;You do need both types of carbohydrates. The why is a little more complicated than why you need protein and fat, so I’ll save if for when I talk about how metabolism work. For now, try to eat at least two pieces of fruit a day and try to limit the amount of starchy foods. Try to limit foods high in sugar or starch to earlier in the day (I try not to have any after 3:00PM) Try to eat at least four servings of vegetables a day. &lt;br /&gt;&lt;br /&gt;OK, I realize I didn’t give too much advice about what specifically to eat. So, without further explanation, here is a sample menu for me for one day:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;7:15ish AM (post workout) 2 eggs + 2 egg whites scrambled&lt;/li&gt;&lt;br /&gt;&lt;li&gt;10:00 AM – One serving of fruit&lt;/li&gt;&lt;br /&gt;&lt;li&gt;12:00 AM  - Lunch. Today it was chicken fajitas minus the sour cream, pico de whatever or tortillas. Basically, just the “hot part.” Yes, some people think this is weird. No, I don’t care.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;2:00 PM – One serving of low-fat yogurt (plain)&lt;/li&gt;&lt;br /&gt;&lt;li&gt;4:00 PM – One protein bar&lt;/li&gt;&lt;br /&gt;&lt;li&gt;6:30ish PM – One large salad with olive oil and balsamic vinegar. One (lean) pork chop. One serving steamed broccoli.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;9:00is PM (bed time) – One protein shake&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;During the day, I drink about one gallon of water&lt;br /&gt;&lt;br /&gt;By the way, “water” does not mean “diet soda.” It means water.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-116362054647298551?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/116362054647298551/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=116362054647298551' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/116362054647298551'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/116362054647298551'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/11/lose-wieght-now-ask-me-how-series.html' title='&lt;em&gt;&quot;Lose Wieght Now, Ask Me How&quot;&lt;/em&gt; the Series'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-116274293160045298</id><published>2006-11-10T11:59:00.000-05:00</published><updated>2006-11-12T19:54:16.603-05:00</updated><title type='text'>The Great Pumpkin Question...</title><content type='html'>Normally, I don't do requests. But Brian &amp;ltAnzalone&amp;gt recently suggested I do a post where I discuss the age old question; Street Fighter II vs. Mortal Kombat. But I thought that was a stupid idea, so instead I'm gonna talk about Windows applications vs. Web-based applications.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Definition of Terms&lt;/b&gt;&lt;br /&gt;For those non-techies who are still reading, like my parents, Windows applications are applications that you install locally on your computer (your hard drive) and you can run without being connected to the Internet. These are applications like Microsoft Word and Microsoft Excel. &lt;br /&gt;&lt;br /&gt;Web-based applications are applications that you used through a web browser. The most popular web application is Google, but others include Mapquest and things like on-line banking websites and bill-pay sites like Check Free.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Which One to Use In &lt;strike&gt;One&lt;/strike&gt; &lt;strike&gt;Easy&lt;/strike&gt; Step&lt;/b&gt;&lt;br /&gt;A lot of people who don't develop applications on both sides of the argument think that there is only one answer to the question "Should I make this a Windows application, or a web-based application?" and they are right. But it's not the answer they think. The correct answer is "it depends."&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Tale Of the Tape&lt;/b&gt;&lt;br /&gt;Windows applications have some definite benefits of Web based applications. From a developer’s side, it can be easier to control the way a user interacts with the user interface in a Windows application. For Web Applications, you're sort of at the mercy of the interaction the user has with the browser. Things like the "Back" button, navigating directly to an address inside the application or simply shutting down the browser in the middle of an operation are all things that the developer and architect have to work around in the "Web World." &lt;br /&gt;&lt;br /&gt;Since Windows application run entirely on the desktop and don't generally have to make a bunch of calls, or post backs, to the server, there is the (perception) of speed as well. Technologies like AJAX and ASP.NET AJAX (formerly Atlas) have all but eliminated this advantage however. &lt;br /&gt;&lt;br /&gt;Traditionally, user interface design on Windows applications has always been easier; you just put a component on a Winform, set some properties and you're done! Web Applications have been a little more complicated than that; back in the "old days" you used to have to create tables and use those to format you user interface. The other issue had been that not all browsers rendered all controls the same way. Heck, some browsers didn't support certain controls at all! With the growing adoption of Web Standards and the growing use of CSS style sheets to take care of all formatting (leaving HTML to be the keeper of the content) this is another factor that is starting to swing towards Web Applications favor. &lt;br /&gt;&lt;br /&gt;To change the whole look of a Web Application you simply change the style sheet. No so with Windows Applications; if you were smart you may have a user interface hierarchy, allowing you to make changes to a few base forms which will propagate through your application. If not, you were visiting EVERY window in your application and changing every control on that window.&lt;br /&gt;&lt;br /&gt;“Client side” scripting and validation is one area where Windows applications may still have an upper hand. Javascript has come a long way, but it is still ugly and not a lot of fun to debug. ASP.NET AJAX shows some promise in alleviating this, but it still in it’s infancy in that regard. Windows applications don’t have this issue, your presentation layer is easily accessible, easily automated and easy to debug.&lt;br /&gt;Deployment is a mixed bag. Web applications are easy to deploy. You just put the application on the web server of your choice, send your users a link (or if you’re really snazzy and on top of the whole “Enterprise Computing” thing, you’ll have a portal for the users with a link to your new application) No going to each users machine, installing local components, making sure they have all the prerequisites, installing the application and setting up the database configuration. Now multiply that times about 250. So, in a corporate environment, with a centralized server, Web is clearly the answer for deployment purposes. &lt;br /&gt;&lt;br /&gt;For all of Windows deployment headaches though, it’s still easier to write an install package for a home user buying a shrink-wrapped product than have them set up a Web-based application on their computer. Most home users aren’t going to be savvy enough to know if they have IIS or Apache installed, let alone how to configure it.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;What to Do, What to Do...&lt;/b&gt;&lt;br /&gt;When I am working on an application and I have to make the decision about Windows vs. Web, I ask myself some questions:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Is this application going to be deployed in a corporate environment, or shrink-wrapped?&lt;br /&gt;&lt;li&gt;Where is my data going to live?&lt;br /&gt;&lt;li&gt;How often will the application need to be upgraded?&lt;br /&gt;&lt;li&gt;Who is going to support this application?&lt;br /&gt;&lt;li&gt;Does this application need to be Section 508 compliant (if you get ANY money from the Federal government, the answer is “yes.”)&lt;br /&gt;&lt;li&gt;What kind of machine is it going to be deployed to?&lt;br /&gt;&lt;li&gt;What kind of infrastructure am I going to be working with?&lt;br /&gt;&lt;li&gt;What kind of security issues am I going to have to deal with?&lt;br /&gt;&lt;li&gt;Is the user going to allow cookies and have Javascript turned on?&lt;br /&gt;&lt;li&gt;Who is the applications audience?&lt;br /&gt;&lt;li&gt;Is the “content” of the application going to be static?&lt;br /&gt;&lt;li&gt;What does the client want? (Remembering that the client is NOT always right, but they are always the client)&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;The way these questions get answered will generally lead you down the correct path. Yeah, some questions are more important than others, but it’s good to have as complete a picture of what’s going on as possible.&lt;br /&gt;&lt;br /&gt;Regardless of which avenue you choose, good architecture is important. A lot of bad Web applications have been built by people who thought you could design them to be just like Windows applications. It’s apples and oranges, and each has unique challenges.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-116274293160045298?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/116274293160045298/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=116274293160045298' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/116274293160045298'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/116274293160045298'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/11/great-pumpkin-question.html' title='The Great &lt;strike&gt;Pumpkin&lt;/strike&gt; Question...'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-116061454712723599</id><published>2006-10-11T20:29:00.000-04:00</published><updated>2007-04-03T10:46:53.657-04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='weight loss'/><title type='text'>Lose weight now, ask me how.</title><content type='html'>For those of you who only know me from this blog, or have met me within the past two years, you may not know that about three years ago, I had a pretty severe weight problem. That may be putting it mildly. Today I weigh about 220 and have (according to a very unscientific guess from my doctor) about 12-15% body fat. Three years ago, I weighed... well, to be honest I don't really know. The scale at my gym, which was actually designed for commercial bakers, only went up to 450 pounds, and I topped it out when I started my weight loss program. I can tell you that my pants were 60" in the waist. That's five feet.&lt;br /&gt;&lt;br /&gt;I am one of the lucky few; I am a person who has been heavy all of his adult life, who has managed to lose weight and become physically fit. Heck, I'm downright athletic!&lt;br /&gt;&lt;br /&gt;Not to overplay this, but it has taken a bit of a commitment from me. I've sort of developed into a bit of a "gym rat" and I definitely am more conscious and careful about what (and how) I eat. Now, I'm not one of these guys who lives to work out. I'm not one of these "muscle-heads" who is obsessed with talking about his &lt;a href="http://en.wikipedia.org/wiki/Latissimus_dorsi_muscle"&gt;lats&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Gluteal_muscles"&gt;gluts&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Pectoralis_major_muscle"&gt;pecs&lt;/a&gt; and/or &lt;a href="http://en.wikipedia.org/wiki/Deltoid_muscle"&gt;delts&lt;/a&gt;. I am a bit of a food-snob (I've always been a picky eater), but I don't go around imposing my "food-beliefs" on others. Some people at work may dispute this, but I have always maintained that at lunch they are free to go where they want, I am free to go with them or decline.&lt;br /&gt;&lt;br /&gt;The upside of this, and the reason for this post, is that because of my new-found health and my interest in working out and nutrition, a lot of people ask me for advice. I really don't mind sharing. Anybody who's asked me knows that I can, and do, talk at great length about these things when prompted. In fact, I tend to spout information so fast that I think some people are overwhelmed.&lt;br /&gt;&lt;br /&gt;So, I decided to go ahead and write a post about this. That way anyone who is interested in my advice, but not interested in talking to me can benefit! :)&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;I am not a nutritional anthropologist (disclaimer)&lt;/h3&gt;&lt;br /&gt;I am not a trainer. I am not a nutritionist. I am just a guy who, with a lot of help, lost a lot of weight. I could not have done this without help from my trainer and my nutritionist. If it weren't for them I would still be eating nothing but lettuce and wondering what those bars with the round black things on the ends were for. So, no; I will not train you. Don't even ask. I am more than happy to refer you to a trainer if you like. Don't ask me to define a diet plan for you. I won’t do it. I have lost touch my nutritionist, but if you are really interested I can ask around and find a good nutritionist for you.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Step one: Don't get fat&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;The reason I am not on TV hawking sandwiches, or writing an "inspirational" book about my "ordeal" that will soon be a cable movie of the week is because, aside from the fact that no one has asked me, I am more than a little bit embarrassed that I got as fat as I did. I wasn't at the time, at the time I just didn't care. But now that I look back, I realize I wasted a lot of years of my life, and it sucks. The other reason is that I am fully conscious of the fact that I did it to myself. McDonalds didn't twist my arm. No one from Häagen-Dazs came to my house and held a gun to my head. I choose to eat that way. I choose not to be physically active. And I'm sorry if this rubs you the wrong way, but if you're overweight there's a good chance you did it to yourself too.&lt;br /&gt;&lt;br /&gt;If this step didn’t go as planned, read on.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Food is your friend&lt;/h3&gt;The first thing I had to learn was how to eat to lose weight. Most people think that just cutting out in-between meal snacks and eating less is the way to go. It makes sense; less food, less fat. That’s only partially true;&lt;br /&gt;&lt;br /&gt;Increasing your metabolism is really what all this food-management (don’t call it a diet!) and exercise amount to. They are ways to increase your metabolism so that you burn calories all the time. If you don’t eat enough, or often enough and the food you eat has dubious nutritional value, your body begins to think its starving. Your body, smart device that it is, is always looking for ways to preserve itself. If you really were starving, your body would conserve fat and ratchet down your available energy to conserve resources. To change this you need to:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://photos1.blogger.com/blogger/7791/3148/1600/hobbit-1.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://photos1.blogger.com/blogger/7791/3148/200/hobbit-1.jpg" border="0" /&gt;&lt;/a&gt;Eat like a Hobbit. I eat six to seven meals a day. Breakfast, mid-morning snack, lunch, after-lunch snack, pre-dinner snack, dinner and bed-time snack. The idea is to keep the body burning food. This increases your metabolism.&lt;br /&gt;&lt;br /&gt;Pay attention to what you eat. These are not huge Sopranos Sunday dinner type meals. They are just little thing I can eat leisurely in five to ten minutes. An apple. A yogurt. A protein bar. A small sandwich. I generally eat a little more at lunch, since I find the energy helps keep me going in the afternoon. I generally try to eat as much whole or organic food as possible. Frankly, I think the organic food tastes a little better. I try to keep carbs in general low and I try to keep out as many highly-processed carbs (sugar, white bread and pretty much any mass-produced “junk-food”) to an absolute minimum. Some fruit (especially earlier in the day), some dairy. Vegetables are always good since most have very few calories and are pretty filling, just don’t dunk them in butter or ranch dressing and absolutely don’t dip them in batter and deep-fry them! Protein is important since it’s what your body uses to build muscle (more on that later). Also, you have to have some fat. Your body needs fat. It uses fat to create skin cells, create hair cells and regulate you hormonal levels. This probably explains why so many of those people on low-fat diets are so moody. Vitamins A, D, E and K are all fat soluble, so if you don’t eat fat, your body’s ability to absorb them is limited. There are good fats and bad fats. Olive oil and canola are good. Using a little butter is OK. Using a whole stick a day is not. Margarine, besides tasting horrible, has trans-fats, which doctors say are “bad.”&lt;br /&gt;&lt;br /&gt;Try to eat a lot of fish. Especially “fatty” fish like salmon and tuna. It has a lot of protein and the Omega-3 fats in fish are the “good” cholesterol. Chicken is a good source of protein as well. Beef is good, but does have a lot of [bad] fat, so I try not to have more than four or five servings a week. Same with pork. Buffalo, which is now available in most super markets it a good option. It tastes the same as beef, but has a lot less fat. But, you have to be careful. Less fat means that you have to watch how you cook it; it’s very easy to dry out if you’re not careful.&lt;br /&gt;&lt;br /&gt;Now the fun part. I stick religiously to this food-management plan. However, as part of it, every fourth day I have a “cheat” or “off” day. This is when I can indulge. Generally, I have one cheat on this day. But, if I am finding that I have been plateauing for a while, I will have one day where I “cheat my ass off.” This usually “un-sticks” me and I start losing weight again. So, it’s not “I can never have cake and ice cream again.” It’s “I just can’t have cake and ice cream right now.” This has helped in a lot of way. Like I indicated, it has helped my body stay in the fat-loss phase and not plateau. It has also saved my sanity; I don’t think I could live in a world without ice cream.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;You are going to have to work out&lt;/h3&gt;You can’t loose weight and get in shape by ONLY dieting or ONLY working out. You have to do both. It’s a binary system, and one with out the other is a waste of time.&lt;br /&gt;&lt;br /&gt;My workout regimen is divided into two area; cardio and weight training. Again, it’s a binary system and you really need to do both. I work out six days a week, doing three days of each.&lt;br /&gt;&lt;br /&gt;Before doing any exercise, I warm up for five minutes on the treadmill, and stretch for ten. I’ve found that this actually does help me perform better when it’s time to start my workout proper, so I almost never skip this step.&lt;br /&gt;&lt;br /&gt;Cardio is important because it increases your lung capacity and your heart health. It increases your energy. It helps your body transmit oxygen to your muscles faster. It lowers your blood pressure. It increases your red blood cell count, which also helps the movement of oxygen through the body. It also burns a lot of calories quickly. I try to do at least 30 minutes, three times a week.&lt;br /&gt;&lt;br /&gt;Running or jogging is a good cardio exercise, and the one I enjoy the most. Of all the cardio I do, this is one of the top calorie burners. You have to be careful with it, as the impact on your knees can cause on-going issues. Because of that I did not run until I was less than 220 pounds and I only run one day a week. I’ve tried running more than that (against my trainer’s advice) and my joints paid for it.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://photos1.blogger.com/blogger/7791/3148/1600/stairmaster-stairmill.jpg"&gt;&lt;img style="FLOAT: right; MARGIN: 0px 0px 10px 10px; CURSOR: hand" alt="" src="http://photos1.blogger.com/blogger/7791/3148/200/stairmaster-stairmill.jpg" border="0" /&gt;&lt;/a&gt;The stair mill is another exercise I try to do every week. I do it because it is a very intense workout with not a lot of “joint impact.” I dread it because it’s the longest 30 minutes of my life. It’s grueling. It’s boring. It will tire your legs out in ways I cannot describe with just words. But, like running, this burns a lot of calories. I’m also very happy when it’s FINALLY over, but that may just be the endorphins talking.&lt;br /&gt;&lt;br /&gt;The other big cardio thing I do is the “cross trainer.” This is a lighter workout than running or using the stair mill, and has almost zero impact. You don’t burn as many calories. This is basically because no machine, or none that I’ve found anyway, are able to reliably keep a pace and resistance level that's not too hard and not too soft, but juuuust right. I usually do this in between running and stair milling days as a mini-break.&lt;br /&gt;&lt;br /&gt;I do not like the elliptical. I’ve yet to find one of these that had a stride I feel comfortable with. I also do not like bikes. Unless your in a spinning class with Barbie the blonde 90 pound fitness-dominatrix yelling at you to “Go faster, you p***y!” it’s too hard for get a really intense workout. Since you can sit, your legs don’t have to support your weight, so you’re really not working a big enough muscle group.&lt;br /&gt;&lt;br /&gt;Then there are weights. You have to lift weights, there’s really no way around it. The best thing you can do for long term weight loss, and metabolism boosting, is to develop some muscles. You don’t need to build big Ah-nold muscles, but you do need to tone and develop what you have. The fact is that cardio will burn calories while you are doing it. Increasing muscles mass, even just a little or at least toning and developing the muscle mass you already have will burn more calories throughout the day. The body needs to burn more calories to maintain the muscles, and it needs to burn them constantly. Hence the multiple small meals throughout the day.&lt;br /&gt;&lt;br /&gt;You may say you don’t want to do weights. They are boring, they are hard. You may not want to get "big." True, sometimes that can be a little boring. If that’s the case, get a workout buddy. Or get an iPod. Or go to a gym that has a TV and watch that while you lift. If you are finding it too “hard” to lift, look at what you are doing. You are probably either using incorrect technique or too much weight. If you go to a “large corporate gym” there are usually trainers milling around (trying to drum up sales) who you can ask for a couple minutes of advice. If finances allow, you might even want to sign up with one for a few sessions to help learn the proper way to lift. But lifting is important, so don’t skip it.&lt;br /&gt;&lt;br /&gt;So now the question is free weights or weight machines. Weight machines are generally easy to use, safe and will help you with your technique. The problem with machines is that if you are too tall, too short, too wide, have longer than average extremities or just plan don’t “fit” in the machine, it can be a little tough. Machines also don’t allow you to work the “stabilizing” muscles that free weights do (they are the muscles that make sure when you press you are controlling the weights). Also, over time your body can learn how to “cheat” the machine, meaning you can be lifting more and more, but your body has found a way to off-load some of the work, either to the wrong muscle group or to the machine itself via momentum and leverage. Machines also don’t give you a lot of flexibility.&lt;br /&gt;&lt;br /&gt;Free weights are a little tougher to use. You have to have some idea what muscle group you want to work, and what type of exercise will do that. You have to know how to do that exercise correctly and safely. But, free weights give you a lot more flexibility in your work outs. They also require you to use those stabilizing muscles and reduce your bodies ability to “cheat” (assuming you are using correct technique) Muscles tend to develop faster with free weights, and if you want to “go big” using free weights generally allow you the option of lifting more weight than a machine (most upper body machines I’ve seen at the gym “top out” at some point).&lt;br /&gt;&lt;br /&gt;I use mostly free weights. There are a few things that are still just plain easier with a machine, but not many that I have found.&lt;br /&gt;&lt;br /&gt;A few final things about weights:&lt;br /&gt;&lt;br /&gt;Work all your muscles groups. Don’t be “that guy” who just goes in and does nothing but bench presses or curls. Sure, his arms and chest may be strong, but he’s got a gut, and he’s wearing that weight lifting belt because his back is practically too weak to support his own body weight. The major muscles groups are legs, abdominals, chest, back, shoulders and arms. Work all of them. Even if you think you don’t have to, you should. I know a lot of people will say “Well, I just want to lose a few inches around my waist, so I’ll just do abdominal exercises.” The problem with that is that “spot-reducing” doesn’t work. To get energy, your body is going to burn fat. Fat is released through the blood, so the particular muscle group you are working doesn’t care where it comes from. The body, being very efficient, is going to use that fat that is easiest to liberate. This is always that fat that was stored last. The body also will try to keep the fat as close to your core as possible (again, making it easy to get to) so you will first notice fat loss in your hands and feet since this was the fat usually stored last. So, you can do all the crunches you want, the bottom line is that your waist will still be one of the last places you body takes the fat from.&lt;br /&gt;&lt;br /&gt;It’s not a race. The object isn’t to lift as fast as you can. That’s not going to get you anywhere; it’s all physics doing the work at that point. Muscles development occurs by utilizing resistance over time. By going fast, you are reducing your time to almost zero. What is zero times any other number? Zero.&lt;br /&gt;&lt;br /&gt;It’s important to eat after you work out (weights or cardio). You should try to eat something within an hour. This is because for the hour after you finish, your body will not release insulin in response to an increase in blood sugar. Insulin is one of the hormones that promote fat storage, so without it more energy goes directly into the muscles.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://photos1.blogger.com/blogger/7791/3148/1600/aed.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://photos1.blogger.com/blogger/7791/3148/200/aed.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;One final thing about exercise in general; know your limits. Just this past Friday a man died at my gym playing racquet ball. I didn’t know this guy personally, but I know that that whole group of guys was very competitive and would often push themselves beyond a healthy point. Last week was a worst-case scenario of what can happen when you overdo it. Don’t let it get that far. Don’t count on the gym staff to be able to do effective &lt;a href="http://en.wikipedia.org/wiki/CPR"&gt;CPR&lt;/a&gt;, most are woefully under trained. Don’t count on your gym to have an &lt;a href="http://en.wikipedia.org/wiki/Automated_external_defibrillator"&gt;Automated External Defribulator&lt;/a&gt;. Even those OSHA requires they have one, most don’t. Be careful and don’t over do it!&lt;br /&gt;&lt;br /&gt;Well, that’s pretty much it. Again, I can’t say that this is going to work for you, but it worked for me. I can say that you have a better chance to lose weight by eating better and exercising than you do eating sandwiches or taking “herbal” diet pills. The key is to stick with it and don’t get discouraged. It may take a little while to start seeing results, but you will.&lt;br /&gt;&lt;br /&gt;Good luck!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-116061454712723599?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/116061454712723599/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=116061454712723599' title='34 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/116061454712723599'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/116061454712723599'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/10/lose-weight-now-ask-me-how.html' title='Lose weight now, ask me how.'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>34</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-116005818945122853</id><published>2006-10-05T10:21:00.000-04:00</published><updated>2006-10-09T09:22:07.316-04:00</updated><title type='text'>Buying the Farm Cow House Part 3: Let there be FIBER!</title><content type='html'>So, the saga ends; I have purchased a house.&lt;br /&gt;&lt;br /&gt;I finally selected on a nice 3 bed, 2 bath spec home in a nice quiet wooded area. This house has pretty much the same floor plan as the house in my last post on the subject, but has an extra family room and a much better laid out master bedroom/bathroom. So, I guess I got the cuter twin sister. :) Not only that, but since it’s a spec home, and the builder is anxious to unload it, I got what I would call a pretty good deal.&lt;br /&gt;&lt;br /&gt;But I found out one of the &lt;em&gt;best&lt;/em&gt; things about the house today. I called to make arraignments to have the phone service set up. I was a little discouraged to hear that I would not be able to keep my 1.5 Mbit DSL service in my new house. Since it was new construction and kind of out in “Gods country” I figured this was a risk I was running, and was resigning myself to the reality that I would have to get a cable modem. I don’t have anything really against cable modems, but I don’t buy my television programing through them, so I would have to pay a bit of a surcharge for just internet access. It’s also one more bill I have to deal with every month. Just a pain in the butt.&lt;br /&gt;&lt;br /&gt;I was saved though. While I cannot get DSL, I do get FIBER! &lt;br /&gt;&lt;a href="http://photos1.blogger.com/blogger/7791/3148/1600/fiber.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://photos1.blogger.com/blogger/7791/3148/320/fiber.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Optics, that is. So, instead of 1.5 Mbits, I’m getting 6! &lt;br /&gt;&lt;br /&gt;This owning a house thing just gets better and better. I’m half expecting to go into my basement one day and find a hidden entrance to Ben &amp; Jerry's secret Ice-Cream Mine or something…&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-116005818945122853?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/116005818945122853/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=116005818945122853' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/116005818945122853'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/116005818945122853'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/10/buying-farm-cow-house-part-3-let-there.html' title='Buying the &lt;strike&gt;Farm&lt;/strike&gt; &lt;strike&gt;Cow&lt;/strike&gt; House Part 3: Let there be FIBER!'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115989388009652849</id><published>2006-10-03T12:43:00.000-04:00</published><updated>2006-10-05T08:18:11.723-04:00</updated><title type='text'>All of your Tent of Meeting are belong to us.</title><content type='html'>&lt;a href="http://photos1.blogger.com/blogger/7791/3148/1600/Tent%20of%20Meeting.2.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://photos1.blogger.com/blogger/7791/3148/320/Tent%20of%20Meeting.2.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://photos1.blogger.com/blogger/7791/3148/1600/Tent%20of%20Meeting%202.0.jpg"&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://photos1.blogger.com/blogger/7791/3148/1600/Tent%20of%20Meeting%202.jpg"&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://photos1.blogger.com/blogger/7791/3148/1600/Tent%20of%20Meeting.1.jpg"&gt;&lt;/a&gt;An entry from the journal of Ben-Dhar, 52nd level Bard/Magic User/Fighter/Monk/Ranger/Project Engineer and Lord of Westervillenhaus….&lt;br /&gt;&lt;br /&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;em&gt;The cold wind ripping at our skin could only signal one thing; the arrival of the 60th level Project Manager and his Business Analyst hordes. Before I could react, he deployed his "Tent of Meeting" and was beginning the incantation of the dreaded “Mandatory Attendance” spell. My developer quickly produced a weathered scroll from his pack and began to read from the “Documents of User Requirements”, turning back the horrible attack. Before we could celebrate our victory, he quickly drew his “Staff of Working this Weekend” and leveled it squarely at us. I prepared for the worst...&lt;/em&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115989388009652849?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115989388009652849/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115989388009652849' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115989388009652849'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115989388009652849'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/10/all-of-your-tent-of-meeting-are-belong.html' title='All of your Tent of Meeting are belong to us.'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115755350709597002</id><published>2006-09-16T20:47:00.000-04:00</published><updated>2006-10-04T12:16:14.183-04:00</updated><title type='text'>Buying a House Part 2: Electric Boogaloo</title><content type='html'>Actually, I should call this "You don't have to get dumped to feel the sting of rejection."&lt;br /&gt;&lt;br /&gt;I made an offer on a house last week. My realtor and I spent quite a bit of time hammering out a number we felt was reasonable. We didn't expect them to accept, but we expected a reasonable counter-offer. The offer was about 6% below asking, and less than $2,000 below the appraised value according to the county auditor.&lt;br /&gt;&lt;br /&gt;The counter offer came back; it was for the asking price, less $100.00. No, I didn't mis-type that, one HUNDRED dollars less than the asking price. Not even worth driving to the realtor's office to sign the paper work to make the offer, in my opinion!&lt;br /&gt;&lt;br /&gt;My realtor called me and I thought about it (for about half a second) before I told her not to bother writing up another offer. The situation is that the husband has been transferred to Texas (he's there now) and the wife is there with two small children, a cat and a dog. The house has been on the market over four months. School just started, so no local family is going to be looking because they aren't going to be willing to pull their kids out of school now. The holidays are coming up, and my realtor tells me that it's very slow during this time of year. On top of that, it is very much a buyers market here right now. &lt;br /&gt;&lt;br /&gt;So, I think I'm right to walk away, but like most relationships, I find myself thinking about what could have been. How nice it would be to kick-back on that deck after work. Then I find myself wondering what the house is doing now? Does the house ever think about me? Does it regret it's decision? Maybe the house and I could reconcile, but wouldn't I always be thinking in the back of my mind how the house cruelly cast me aside before and my do it again? Maybe the house is seeing other potential buyers? Maybe it's having these huge open houses, with any Tom, Dick and/or Harry walking through it, checking the closet space, measuring the bedrooms, examining it's fixtures...&lt;br /&gt;&lt;br /&gt;Uh... Sorry...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115755350709597002?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115755350709597002/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115755350709597002' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115755350709597002'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115755350709597002'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/09/buying-house-part-2-electric-boogaloo.html' title='Buying a House Part 2: Electric Boogaloo'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115766000680459628</id><published>2006-09-07T15:37:00.000-04:00</published><updated>2006-09-15T18:47:13.026-04:00</updated><title type='text'>Some People Have No Freakin' Class</title><content type='html'>So, unless you've been living under a large, rock-shaped object for the past week, you've probably heard by now that Steve Irwin, "The Crocodile Hunter" was &lt;a href="http://www.foxnews.com/wires/2006Sep04/0,4670,CrocodileHunterDiscovery,00.html"&gt;killed&lt;/a&gt; in a bizarre accident. Bizarre when you consider that the first time I saw they guy, all I saw was his feet and the rest of him was wedged into a rattlesnake den beneath a large boulder-shaped object, from which he was grabbing said snakes and pulling them out of the hole, and this behavior was not unusual for him.&lt;br /&gt;&lt;br /&gt;I was a casual fan, and I wasn't going to post anything because pretty much anyone with a website already has, and how much more can someone say about what happened. It was tragic and weird, but life is like that sometimes.&lt;br /&gt;&lt;br /&gt;That was until I saw this comment from Germaine Greer, the author of &lt;em&gt;"The Female Eunuch"&lt;/em&gt;:&lt;br /&gt;&lt;br /&gt;&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;em&gt;"I really found the whole Steve Irwin phenomenon embarrassing and I'm not the only person who did, or indeed the only Australian who did."&lt;/em&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt; &lt;br /&gt;She then called anyone who is mourning Irwin's death "stupid," sucker-punched an orphan, burned down a hospital and ate a live puppy.&lt;br /&gt;&lt;br /&gt;OK, I made those last three things up.&lt;br /&gt;&lt;br /&gt;Geeze, is it just me or does this broad need to get laid?&lt;br /&gt;&lt;br /&gt;I would remind this dried up, man-hating bag that&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;No one asked her&lt;/li&gt;&lt;br /&gt;&lt;li&gt;She hasn’t done anything culturally relevant in about 20 years (and no, bailing out of the British version of &lt;em&gt;“Big Brother”&lt;/em&gt; doesn’t count)&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Irwin did a lot to help endangered animals not only in Australia, but the whole world&lt;/li&gt;&lt;br /&gt;&lt;li&gt;He has a wife and two kids who are going to miss him. Are they stupid?&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;I would also like to remind her that just because she is miserable and unhappy is no reason to be such a bitch.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115766000680459628?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115766000680459628/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115766000680459628' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115766000680459628'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115766000680459628'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/09/some-people-have-no-freakin-class.html' title='Some People Have No Freakin&apos; Class'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115645249474156893</id><published>2006-08-24T15:47:00.000-04:00</published><updated>2006-09-03T00:06:35.306-04:00</updated><title type='text'>So long Sony...?</title><content type='html'>This has not been Sony's year…&lt;br /&gt;&lt;br /&gt;It all stared with the iPod. The Walkman used to be the king of portable audio. When was the last time you saw one. I mean one being used, not in a museum or a picture or something. Take your time…&lt;br /&gt;&lt;br /&gt;It all stared with the DRM/Root Kit shit storm of 2005. While the lawsuits and investigations still continue, the public at large (meaning the non-techie crowd) had largely forgotten it and the stain of embarrassment was starting to fade.&lt;br /&gt;&lt;br /&gt;Enter Playstation 3 and Blu-Ray. Or “a gaming system that no one can afford that supports a standard that no one gives a fat rat’s ass about.” I’m not a gamer, but even if I were I can’t imagine spending $600 and a gaming system. Especially when the 360, which has a whole “mess’o” games slated to come out, and the Wii (which looks like a much cooler console) are it’s competition. And as for Blu-Ray? Oh Sony, did you learn nothing from the Betamax?&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://cache.gizmodo.com/gadgets/images/delldude.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 200px; CURSOR: hand" alt="" src="http://cache.gizmodo.com/gadgets/images/delldude.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Yesterday, Dell announced its &lt;a href="http://www.foxnews.com/story/0,2933,208809,00.html"&gt;recall&lt;/a&gt; of laptops with Sony batteries. Not bad enough? Well, how bad does it make it now that &lt;a href="http://www.gizmodo.com/gadgets/gadgets/qantas-airline-has-new-rules-for-dells-196219.php"&gt;airlines are now making an examples of your consumers?&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Now it’s &lt;a href="http://msnbc.msn.com/id/14502021/"&gt;Apples turn to ruin Sony’s day.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;So I’m wondering; how much can Sony take? Their sales of consumer electronics are down. They are still facing lawsuits and investigations from “Root Kit-gate.” They have sunk a butt-load of money into a console and standard that many people say is DOA. And now their laptop batteries are potential explosive devices, which in some case are being deployed near a very “personal” (not to mention tender) area of peoples bodies. The first &lt;a href="http://www.gizmodo.com/gadgets/laptops/man-blames-dell-laptop-for-house-fire-195540.php"&gt;“my laptop ruined my life” lawsuit&lt;/a&gt; is in the works already.&lt;br /&gt;&lt;br /&gt;A lot of people say “Sony’s a big company. They have a ton of money, they aren’t going anywhere.”&lt;br /&gt;&lt;br /&gt;Really?&lt;br /&gt;&lt;br /&gt;I would like you to think about some other companies that had lots of money;&lt;br /&gt;&lt;br /&gt;Pan Am&lt;br /&gt;Eastern Airlines&lt;br /&gt;Woolworth&lt;br /&gt;Builders Square&lt;br /&gt;Montgomery Ward&lt;br /&gt;Big Bear&lt;br /&gt;&lt;br /&gt;Seems to me it can happen to anyone…&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115645249474156893?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115645249474156893/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115645249474156893' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115645249474156893'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115645249474156893'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/08/so-long-sony.html' title='So long Sony...?'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115625504125733643</id><published>2006-08-22T09:45:00.000-04:00</published><updated>2006-08-22T09:59:05.403-04:00</updated><title type='text'>Microsoft Virual Labs; a review redux...</title><content type='html'>&lt;a href="http://msdn.microsoft.com//events/hero/images2/bio-vlg-03.gif"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 0px 10px 10px; WIDTH: 200px; CURSOR: hand" alt="" src="http://msdn.microsoft.com//events/hero/images2/bio-vlg-03.gif" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://msdn.microsoft.com//events/hero/images2/bio-vlg-03.gif"&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;VL Guy (from Microsoft???) made some comments on this thread, but since it's kind of old, and probably not being closely followed anymore, I thought I would just post to let everyone know that (per VL Guy)...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;em&gt;Also, the VL team is trying a new format - part Webcast/part Virtual Lab - on Architecting with Team Foundation Server. It's a one shot deal on Wed, Aug 30th, 12:00pm PST. Check it out: &lt;a href="http://msdn.microsoft.com/virtuallabs/default.aspx"&gt;http://msdn.microsoft.com/virtuallabs/default.aspx&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;If the 1st run is successful, they may run more of these and make them viewable on-demand. &lt;/em&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;...and...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;em&gt;Also, check out the new format the team is piloting on Architecting with Team Foundation Server &lt;a href="http://msdn.microsoft.com/virtuallabs/default.aspx"&gt;http://msdn.microsoft.com/virtuallabs/default.aspx&lt;/a&gt; It's part Webcast and part Virtual Lab but it's a one shot deal on Wednesday, Aug 30th, 12:00PM PST.&lt;br /&gt;&lt;br /&gt;If it goes well they may run more down the road.&lt;/em&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Very good!&lt;br /&gt;&lt;br /&gt;Unfortunatly, being at a client site I will not be able to partake of the August 30th lab. Unless.... [cough, cough] uh... I think I feel a cold coming on. Uh, yeah... I have a feeling it's going to hit me the middle of next week... [cough, cough]... ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115625504125733643?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115625504125733643/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115625504125733643' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115625504125733643'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115625504125733643'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/08/microsoft-virual-labs-review-redux.html' title='Microsoft Virual Labs; a review redux...'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115590964594751537</id><published>2006-08-18T11:11:00.000-04:00</published><updated>2006-08-18T11:13:41.203-04:00</updated><title type='text'>The end is nigh!</title><content type='html'>I'm convinced that humanity as a race is doomed. And we're doing it to ourselves.&lt;br /&gt;&lt;br /&gt;How?&lt;br /&gt;&lt;br /&gt;Because too many of us are too lazy to do anything creative or positive, and are instead content to capitalize on the stupidity of others. What's not helping this is that nowadays trouble-making douche-bags seem to be rewarded for their trouble-making douche-baggery as opposed to being punished&lt;br /&gt;&lt;br /&gt;Both points are proven by the list of "winners" of the 2006 &lt;a href="http://www.crrange.com/wall44.html"&gt;"Stella Awards&lt;/a&gt;."&lt;br /&gt;&lt;br /&gt;What are the "Stella Awards?" From their website:&lt;br /&gt;&lt;br /&gt;&lt;table&gt;&lt;br /&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;em&gt;The Stella Awards were inspired by Stella Liebeck. In 1992, Stella, then 79, spilled a cup of McDonald's coffee onto her lap, burning herself. A New Mexico jury awarded her $2.9 million in damages, but that's not the whole story. Ever since, the name "Stella Award" has been applied to any wild, outrageous, or ridiculous lawsuits -- including bogus cases!&lt;/em&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;And this years crop do not disappoint. That is assuming you don't give a fat rats ass about the future of civilization. If you do care, well... you're pretty much screwed.&lt;br /&gt;&lt;br /&gt;Couple of my favories:&lt;br /&gt;&lt;br /&gt;&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;em&gt;October 1998: Terrence Dickson of Bristol, Pa., was leaving a house he had just finished robbing by way of the garage. He was not able to get the garage door to go up, because the automatic door opener was malfunctioning. He couldn't re-enter the house because the door connecting the house and garage locked when he pulled it shut. The family was on vacation. Mr. Dickson found himself locked in the garage for eight days. He subsisted on a case of Pepsi he found in the garage and a large bag of dry dog food. Mr. Dickson sued the homeowner's insurance claiming the situation caused him undue mental anguish. The jury agreed to the tune of a half million dollars. &lt;/em&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;It’s a sad day when you a probably better off shooting a person who breaks into your house then calling the cops. And it really looks like that’s where this is heading; people aren’t going to stand for this insult added to injury. How long till life looks like a scene from &lt;a href="http://en.wikipedia.org/wiki/Mad_Max"&gt;&lt;em&gt;"Mad Max"&lt;/em&gt;&lt;/a&gt;?&lt;br /&gt;&lt;br /&gt;&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;em&gt;January 2000: Kathleen Robertson of Austin, Texas, was awarded $780,000 by a jury of her peers after breaking her ankle, tripping over a toddler who was running amuck inside a furniture store. The owners of the store were understandably surprised at the verdict, considering that the misbehaving little fellow was Ms. Robertson's son. &lt;/em&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;So, it's not bad enough we have these children of lousy parents running around being generally annoying, now the parents get to sue when they are unable to control their children? Greaaat. I'll just stick to dogs; they are easier to train, and usually much more grateful for what you give them.&lt;br /&gt;&lt;br /&gt;Speaking of dogs...&lt;br /&gt;&lt;table&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;em&gt;October 1999: Jerry Williams of Little Rock Arkansas was awarded $14,500 and medical expenses after being bitten on the buttocks by his next door neighbor's beagle. The dog was on a chain in its owner's fenced-in yard at the time. Mr. Williams was also in the fenced-in yard. The award was less than sought because the jury felt the dog may have been provoked by Mr. Williams who, at the time, was repeatedly shooting it with a pellet gun.&lt;/em&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;First of all, where's PETA in all of this? I guess they only care about animals that are trendy or can get them press coverage.&lt;br /&gt;&lt;br /&gt;Secondly, anyone who would shoot a dog, a smaller breed none the less, when it is on a chain is seriously messed up in the head. I bet you this idiot now holds some kind of "grudge" against the dog. Well, it's clearly the dogs fault; after all if it didn't want to be shot it shouldn't have been sitting there on a chain behind a fence!&lt;br /&gt;&lt;br /&gt;Pick on Dan Quayle as much as you like, he got one thing right on; we need to do something about these lawsuits!&lt;br /&gt;&lt;br /&gt;Now if you'll excuse me, I have to take my Rolodex and meet with my lawyer. I'm sure there is &lt;em&gt;someone&lt;/em&gt; in there I have a case against!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115590964594751537?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115590964594751537/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115590964594751537' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115590964594751537'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115590964594751537'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/08/end-is-nigh.html' title='The end is nigh!'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115575428683246480</id><published>2006-08-16T14:22:00.000-04:00</published><updated>2006-08-16T21:23:05.720-04:00</updated><title type='text'>WHEW! That was a close one!</title><content type='html'>&lt;a href="http://photos1.blogger.com/blogger/7791/3148/1600/hellskitchen.jpg"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://photos1.blogger.com/blogger/7791/3148/320/hellskitchen.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;In a follow up to my &lt;a href="http://benders-blog.blogspot.com/2006/06/for-entertainment-purposes-only-no_23.html"&gt;previous post&lt;/a&gt; about &lt;em&gt;"Hells Kitchen"&lt;/em&gt; it with great relief that I get to post about Heather winning the contest. Mostly because I posted her odds at 2:1, which makes me look pretty smart! :)&lt;br /&gt;&lt;br /&gt;I had her pegged as “the bitch” early on, and while she can be demanding, I think that label was a little off. Especially given the crap she had to take from Sarah the whole way! She did a good job leading her team and she deserved to win. Good for her!&lt;br /&gt;&lt;br /&gt;Virginia is a nice girl, but in my opinion her running a major resturant would have been a complete disaster! Yeah, she has a great… uh, palette, but she had no leadership and did nothing to motivate her team. For example, starting your “pep talk” by telling your team “I picked weak people on purpose so I could see what you can do” doesn’t really inspire greatness. And frankly, it was stupid. The final service to determine if you are going to win the whole thing is not the time to vindicate the dead-wood. And Virginia paid for it, big time. In my opinion, her agreeing to pay her guys if she won was the harbinger of doom. Heather had the strongest team because besides being good in the kitchen, they (well, maybe not Sarah so much) &lt;em&gt;wanted&lt;/em&gt; to see her win. Virginia’s team didn’t give a shit. Yeah, money motivates but only to a certain degree.&lt;br /&gt;&lt;br /&gt;Oh, and running out of food is kind of a bad thing for a fine dining restaurant too apparently. Who knew?&lt;br /&gt;&lt;br /&gt;I don’t think Virginia’s team really liked her. I think they were all pretty bitter (especially Kevin) that she made it to the final two. I think most people didn’t think she deserved to be there. She was on the “chopping block” constantly through the series because of several little mistakes each time. Luckily for her, someone made a much bigger mistake each time that got them bumped (Chicken Tartare anyone?) She always had a way of escaping certain doom it seemed, which caused me to realize as the finale started Monday night “Shit, she could win this!”&lt;br /&gt;&lt;br /&gt;I’ll be going “home” to Vegas this year for Thanksgiving and Christmas. I’m going to try to get into Heathers place at Red Rock resort. If I’m successful, I’ll be sure to post a review of it here. The way the show was making a “big deal” about her sea bass, I hope it’s on the menu….&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115575428683246480?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115575428683246480/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115575428683246480' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115575428683246480'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115575428683246480'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/08/whew-that-was-close-one.html' title='WHEW! That was a close one!'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115513550053032855</id><published>2006-08-09T10:45:00.000-04:00</published><updated>2006-08-11T10:53:42.463-04:00</updated><title type='text'>Democracy inaction!</title><content type='html'>In the spirit of another round of meaningless (unless you're Joe Lieberman) primary elections, I am asking for opinions.&lt;br /&gt;&lt;br /&gt;In a first (and probably only) for my blog, I'm putting something up to a vote.&lt;br /&gt;&lt;br /&gt;When I hastily created this blog, I needed a name. At the time, "Bender's Blog" was the only thing I could think of. And it was good, but not great.&lt;br /&gt;&lt;br /&gt;Recently, one of my co-workers suggested the name "The Bender Blender" as a nod to the technical interviews I occasionally give to candidates at my company. &lt;br /&gt;&lt;br /&gt;I think this is a great idea! But, if I were to do that (within the blogspot system) if would be a bit of work for me what with the creating of a new blog and the linking to the new blog and the.... uh..... OK, it wouldn't be &lt;em&gt;that&lt;/em&gt; much work, but it would cut into either my "hanging out" or "just kickin' it" time (Sorry, no pie chart).&lt;br /&gt;&lt;br /&gt;So let me know what you think! Use the comments section.&lt;br /&gt;&lt;br /&gt;Now, there are some rules. First of all, this is not "Chicago Style" which means one vote per person please. Also, votes from anonymous cowards will not be counted.&lt;br /&gt;&lt;br /&gt;See you all at the polls!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115513550053032855?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115513550053032855/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115513550053032855' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115513550053032855'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115513550053032855'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/08/democracy-inaction.html' title='Democracy inaction!'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115469805386981138</id><published>2006-08-06T19:29:00.000-04:00</published><updated>2006-08-21T20:13:25.960-04:00</updated><title type='text'>Microsoft Virtual Labs; a review</title><content type='html'>I've had some free time the past few weeks, and always looking to find ways to expand and sharpen my technical skills, I've been working with the &lt;a href="http://msdn.microsoft.com/virtuallabs/"&gt;Microsoft Virtual Labs.&lt;/a&gt; Actually, I promised a young lady at the Microsoft booth at Tech Ed that I would, so this was also a way for me to stay good to my word. Oh, the things I'll do for a free T-shirt!&lt;br /&gt;&lt;br /&gt;For those of you who haven't tried them, Virtual Labs are basically remote controlled Virtual PC's that Microsoft hosts with pre-built components and software installations geared toward teaching you a specific task. Each lab comes with a PDF lab manual, which gives you &lt;strong&gt;very&lt;/strong&gt; specific instructions to complete the lab.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;The Good&lt;/strong&gt;&lt;br /&gt;Everything you need to complete the lab, including starter projects and server installations are already setup for you in the virtual environment, which is no small thing when you are interested in learning something like BizTalk. The lab directions are (for the most part) very clear about the steps and the expected outcomes. The labs are designed to be "bite size" meaning you should not require more than 90 minutes to complete one, which is good because...&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;The Bad&lt;/strong&gt;&lt;br /&gt;...you have a 90 minute time limit for each lab. Then, you are unceremoniously kicked out, and you environment resets for the next go around. I understand that Microsoft does not want people sitting in these all day as I'm sure they tie up a lot of resources. But the rigid nature of the experience and the time limit does not give you much opportunity to experiment beyond the lab directions. I don't know how feasible this is, but I would prefer having Virtual PC images available to run locally. Microsoft would not have to worry about creating a time limit, and users would have more freedom to go off the script and explore on their own. The only drawback I could see from Microsoft’s point of view is people attempting to use the images to cheat on getting a "real" license somehow, but there are ways around that. Another "ding" is that the lab manuals are a bit inconsistent, which is a given since they are developed by different people in different groups. My biggest gripe with them is that a lot of them just have the "Do this. Now do this. Now do this." style of instruction, without explaining to you &lt;em&gt;why&lt;/em&gt; you are doing this. This is big reason why these labs &lt;strong&gt;in no way&lt;/strong&gt; compare to good solid work experience. Don't do all the BizTalk labs and expect to be an expert, you will find you are still very much a novice.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;The Ugly&lt;/strong&gt;&lt;br /&gt;These are virtual PC's. Over the internet. Guess how fast they are? That’s right, they are S  L  O  W. At times, almost painfully so. There were a couple of times where I was really worried about finishing in the allotted 90 minutes. Some of this may depend on your bandwidth. I for one only have the medium diameter tubes coming into my home, so if you have access to something faster, you may have better luck. The other &lt;strong&gt;really&lt;/strong&gt; ugly aspect is that for several of the labs I found, the manuals were just plain wrong. Pre-made solutions, projects and files were not where they were supposed to be. Code was wrong (in some cases, it didn't even compile) and properties were not where the manuals said they would be. I don't know if some of these weren't QA'ed really well, or if the image was changed after the manual was produced, but it does make for a very frustrating experience.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Overall&lt;/strong&gt;&lt;br /&gt;So, after doing these labs I can say that I am more familiar with several .NET technologies... in the same way the watching the &lt;em&gt;"Star Wars"&lt;/em&gt; saga has made me familiar with using the force, or watching &lt;em&gt;"Top Gun"&lt;/em&gt; has prepared me to climb into an F-14 and engage a couple of MiG's in a dogfight. I feel comfortable discussing and speaking to the power, limitations and abilities of these products and technologies, and can suggest to a client when and where it would be appropriate to use them in a solution, but I might not be able to implement &lt;em&gt;all&lt;/em&gt; the details myself.&lt;br /&gt;&lt;br /&gt;I mentioned BizTalk a lot here, but they have several other products that have virtual labs available. However, I feel the selection is a little thin. I was disappointed by the utter lack of Team Foundation Server labs, especially considering the “push” Microsoft was giving this at Tech Ed (not to mention the hefty price tag),  I would think a “try before you buy” approach would get more development and IT staff on the band wagon. But, I imagine (hope) that as more people take interest and start using these labs, Microsoft will see that the development community is interested, and devote more resources to them. &lt;br /&gt;&lt;br /&gt;Code on...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115469805386981138?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115469805386981138/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115469805386981138' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115469805386981138'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115469805386981138'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/08/microsoft-virtual-labs-review.html' title='Microsoft Virtual Labs; a review'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115401239162147164</id><published>2006-07-27T10:10:00.000-04:00</published><updated>2006-09-29T23:55:25.056-04:00</updated><title type='text'>House buying lessons learned part 1: "It will all be worth it. It will all be worth it. It will all be..."</title><content type='html'>I am approaching the “official” two week point in my first home buying experience. Time for a “lessons learned:”&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Check your credit report at least once a year.&lt;/strong&gt;&lt;br /&gt;This is just good advice in general. It was also a major concern for me as mine seems to be made of some sort of Velcro that attracts a lot of incorrect information. It’s easy to get cleaned up; all three agencies have a method to file disputes on the web. But, it takes time. At least 30 days. Luckily, I started this part of the process a while back, so I was in good shape.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Do not count on any large bureaucratic entity to do the right thing.&lt;/strong&gt;&lt;br /&gt;Still on the credit front, I do have one issue; the company that has my student loan is reporting on this loan in a misleading manner. I don’t want to get into too many details, as this is clearly personal information, but suffice to say I don’t disagree with the amount they say I owe, and they don’t disagree that I’ve never been late or delinquent in any way. But everybody I’ve talked to be it mortgage brokers, attorneys or loan officers from the four largest banks in the country agree that they are doing it wrong. Their response is basically “We don’t care, we’re right, we don’t feel the way we are reporting it is negative and everyone else is wrong and we’re not changing it.” They are sending me a letter that I can show to banks explaining why they are reporting it this retarded way, and the consensus is that that should be sufficient. I was tempted to ask the CSR if they would sign the letter “Sorry we’re so retarded,” but I figured this was a time for maturity, so instead I’m posting it here, where maturity has no lease. Maturity can’t get a lease because its credit isn’t good enough because of its student loan. Damn deadbeat maturity…&lt;br /&gt;&lt;br /&gt;Still, it wouldn’t have been a big issue, and I’d be farther along if they would just do it the way they are supposed to from the beginning. Several people have suggested suing or filing a complaint with the government agency that oversees them. I’m not ruling any of that out, but I’m not going to stir the pot until the ink on the deal is dry and I have the keys to the house in my pocket.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Everybody has “a guy.”&lt;/strong&gt;&lt;br /&gt;And by “guy” that’s just a generic term that could mean “a gal” as well, so please beat back the urge to post a comment of the “You sexist pig!” variety. Invariably, everybody else’s guy is smarter, more clever, cheaper, knows more people and is more connected than whoever your guy is. If my current realtor is unable to deliver, I have 13 more in line based on referrals, so she knows the pressure is on! I suppose this is really a good thing, my parents are realtors, and get most of their business by referral, and my feeling is that in a business based on referral, you want to do a good job to keep the clients coming in. Still, it was funny when someone INSISTED I had to call their mortgage guy because he was clearly superior to my guy. Well, turns out his guy IS my guy. To which he responded “Uh, well… I’m sure he’s doing a great job then.”&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;People will try to correct their first home buying mistakes through you.&lt;/strong&gt;&lt;br /&gt;I appreciate the advice I am receiving from friends, family, co-workers and other acquaintances. Even the advice that directly contradicts the advice someone else gave me. I know these people want to see me do well here, but some have taken my home buying experience WAY to personally. I have one friend who seems to think that she will somehow be vindicated on a bad deal she made recently by me “sticking it to” who ever I buy from and their realtor. I’m not out to “stick it to” anyone, that’s just bad Karma (Thank you TV, always teaching those valuable life lessons!). I’m out to get the best deal that is acceptable to all involved. After all, I’m going to be on the selling end one day, and I would hope that whoever buys my house will come into the deal with the same mindset I have not.&lt;br /&gt;&lt;br /&gt;Wow! All that and I haven’t even finished securing the financing yet. Just wait till closing!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115401239162147164?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115401239162147164/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115401239162147164' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115401239162147164'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115401239162147164'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/07/house-buying-lessons-learned-part-1-it.html' title='House buying lessons learned part 1: &quot;It will all be worth it. It will all be worth it. It will all be...&quot;'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115365913937214515</id><published>2006-07-23T08:48:00.000-04:00</published><updated>2006-10-04T10:26:56.856-04:00</updated><title type='text'>Blog spammers take note...</title><content type='html'>As the popularity of this blog has increased (I know, I'm shocked too!) the amount of people attempting to post spam has increase exponentially.&lt;br /&gt;&lt;br /&gt;While I'm sure this post will fall on deaf ears because I'm addressing a bunch of soul-less robots, I just want to make it clear to all the spammers out there that if anyone is going to make money of this blog, it's gonna be me dammit!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115365913937214515?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115365913937214515/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115365913937214515' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115365913937214515'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115365913937214515'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/07/blog-spammers-take-note.html' title='Blog spammers take note...'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115245466814783467</id><published>2006-07-17T13:05:00.000-04:00</published><updated>2006-07-20T17:25:18.776-04:00</updated><title type='text'>OK, you're all in big, big trouble!</title><content type='html'>I'm pissed and I want answers! Which one of you told Henry Rollins that he was funny and people cared about his opinion? Was it you? I was subject to this aging moron twice this weekend. The first time was Saturday morning when he was played on XM's comedy station. And in case you're wondering, it wasn’t funny. Angry, venomous and ignorant, but not funny.&lt;br /&gt;&lt;br /&gt;The second time was when I caught the first five minutes of his TV show in The Independent Film Channel (IFC). Again, it was just him ranting for five minutes under the guise of a "comedic monologue."&lt;br /&gt;&lt;br /&gt;Basically his act was/is "Bush is stupid." Uh, OK. Anything more to that? Whether or not you agree with him, you have to admit that it's getting old. Six years ago when you said "Bush is stupid" it would either start a fierce debate or an outbreak of riotous laughter. Nowadays, regardless of how you feel about it, people are de-sensitized to it. Rollins just shows that he has not ability to move on with life if this all he has time to talk about, and it shows that IFC is &lt;strong&gt;starving&lt;/strong&gt; for programming.&lt;br /&gt;&lt;br /&gt;I was hoping this whole “celebrities as full-time political activist” thing was about done. I guess I was wrong.&lt;br /&gt;&lt;br /&gt;I know celebrities are people, and have a right to their opinions. But I have a right to not give a fat rat’s ass about what they think and to mock them for their ignorant, uninformed, follow-the-leader viewpoints. I also have a right to make fun of people who follow these half-wits like a bunch of lemmings. I just can't see myself ever saying "Well, a flat tax sounds like a good idea, but I can't give you my official opinion till I find out what the guy from &lt;em&gt;'F Troop'&lt;/em&gt; thinks."&lt;br /&gt;&lt;br /&gt;Just because these humps do something that manages to entertain people long enough to get their names in the paper does not mean they are smart! Frankly, based on interviews I've seen on TV, 99% of people in the entertainment industry have no clue what it's like to live in the real world! They are going to tell me what to think?&lt;br /&gt;&lt;br /&gt;Make you own opinions. If you can't do that, &lt;strong&gt;at least&lt;/strong&gt; listen to the people around you who know and care about you and not some talking head inside the idiot box.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115245466814783467?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115245466814783467/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115245466814783467' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115245466814783467'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115245466814783467'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/07/ok-youre-all-in-big-big-trouble.html' title='OK, you&apos;re all in big, big trouble!'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115280167704780495</id><published>2006-07-13T10:02:00.000-04:00</published><updated>2006-07-13T13:22:28.586-04:00</updated><title type='text'>"Programming with CTP's is like a box of chocolates..."</title><content type='html'>In preparation for what I'm sure will be an award-winning presentation on &lt;a href="http://practices.gotdotnet.com/svcfactory"&gt;Sevice Factory&lt;/a&gt;, I am going back through all various tutorials and virtual labs since there is a bit of "mismatch" with the various drops and supporting technologies:&lt;br /&gt;&lt;br /&gt;you need the Guidance Automation Extensions (GAX) and Guidance Automation Toolkit (GAT) to run Service Factory. The most recent drops of those are May 2006&lt;br /&gt;&lt;br /&gt;The current ASMX Service Factory code-drop is July 2006.&lt;br /&gt;&lt;br /&gt;If you want to use WCF, the most current drop of WinFX (SORRY, SORRY! .NET 3.0 Framework) is May 2006, &lt;strong&gt;however&lt;/strong&gt; the latest Service Factory drop for WCF services only supports the Feb 2006 CTP of .NET 3.0 Framework (actually, back then it still was WinFX...) Per Don Smith, (whose &lt;a href="http://blogs.msdn.com/donsmith/default.aspx"&gt;blog&lt;/a&gt; is a &lt;strong&gt;must read&lt;/strong&gt; if you want to stay up on things in the Service Factory world) a WCF factory for the June CTP is being built, and will be out sometime this year.&lt;br /&gt;&lt;br /&gt;So, anyway, here's what I've been working with (all in a &lt;em&gt;blindingly fast&lt;/em&gt; Virtual PC):&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;WinFX Feb 06 CTP&lt;/li&gt;&lt;li&gt;GAX and GAT May 06 CTP&lt;/li&gt;&lt;li&gt;WCF Service Factory May 06 Drop&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;The "interesting" thing to remember is that the GAX and GAT I have are the newest pieces, but not "entirely" compatible with the other two, meaning that there are a few breaking changes.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;The first hideously deformed offspring from this un-holey alliance was delivered yesterday; I tried to use the Service Factory recipe to expose a service. After several minutes of chunking away, I was presented with a rather ugly error (OK, they are all ugly, but some are uglier than others), the meat of which was:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;"Compiling transformation: 'System.CodeDom.Compiler.CompilerErrorCollection' does not contain a definition for 'Add'"&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Gah! I had to wade through some forum posts (mostly people asking the same question) before I found the answer in the GAT forum. When the new drop of the GAT was pushed, a breaking change was introduced. The fix for this is to edit all of the T4 templates (no, I don't know what T4 stands for) which are located (usually) in \Program Files\Microsoft Service Factory\Guidance Packages\WCFGuidancePackage\bin\T4. There are five files. To fix this problem, you need to add the following line near the top to &lt;strong&gt;all of them:&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;#@ Assembly Name="System.dll" #&amp;gt;&lt;br /&gt;&lt;br /&gt;That takes care of that. &lt;/p&gt;&lt;p&gt;&lt;br /&gt;The only other issue I've found so far is minor; in the wizard you cannot set a method of a Service Contract as "IsInitiating" unless you mark the service contact as "Requires Session." A few minor code changes by hand, and your good again. This does raise another issue I am trying to work though however; Service Factory provides recopies for almost everything, including exposing your service in a host application (for testing). Part of the recipe is selecting a binding type via a drop down list. The only option for this I get is basicHttpBinding, which does not support sessions. Not a huge deal, I just need to go change is to WsHttpBinding by hand. But, it would be nice if I didn't have to dig through the web.config myself. The documentation does speak of an "Advanced Configuration Editor" and maybe that's where you can choose other binding options. The package I would need to download this is no longer available for download however. So, for now, I may be on my own. I'll re-post if/when I learn more.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115280167704780495?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115280167704780495/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115280167704780495' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115280167704780495'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115280167704780495'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/07/programming-with-ctps-is-like-box-of.html' title='&lt;em&gt;&quot;Programming with CTP&apos;s is like a box of chocolates...&quot;&lt;/em&gt;'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115273848220305859</id><published>2006-07-12T16:50:00.000-04:00</published><updated>2006-07-17T11:29:00.886-04:00</updated><title type='text'>Torn between two Beacon scores...</title><content type='html'>Wow, two-fer today!&lt;br /&gt;&lt;br /&gt;At 34, I have decided that it is time to stop living like a gypsy and actually purchase a house. To that end, I pulled my credit reports today to verify that there wasn't any misinformation or other surprises. Of course there were.&lt;br /&gt;&lt;br /&gt;None of the three bureaus have the same score for me, but the surprising thing was that the difference between the highest and the lowest score was in excess of 200 points! That's quite a swing. The difference can be attributed to a lot of erroneous information. Like, for example, the bank that is currently reporting me 120 days late on a car loan that was paid-off in 2001.&lt;br /&gt;&lt;br /&gt;So, the "Great Credit Clean-Up of 2006" has begun.&lt;br /&gt;&lt;br /&gt;This does present me with a bit of a morale dilemma; one of the bureaus has an "AKA" listed for me. On one hand, it's an error and should be fixed. But, this guy has OUTSTANDING credit! Frankly, I'm tempted to say nothing and let his accounts stay!&lt;br /&gt;&lt;br /&gt;But, on the other hand I don't want to get turned down because they think I have three car loans.&lt;br /&gt;&lt;br /&gt;The point is if you haven’t checked your credit report in a while, you probably should. Mine is riddled with errors, which is going to stall my house-buying progress while they get fixed.&lt;br /&gt;&lt;br /&gt;Who says this blog isn’t educational?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115273848220305859?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115273848220305859/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115273848220305859' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115273848220305859'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115273848220305859'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/07/torn-between-two-beacon-scores.html' title='Torn between two Beacon scores...'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115245454962045078</id><published>2006-07-12T09:10:00.000-04:00</published><updated>2006-07-13T17:01:07.470-04:00</updated><title type='text'>Get these mutha-f*@king snakes out of my mutha-f#@king blog!</title><content type='html'>So, Samual, is the &lt;em&gt;"Star Wars"&lt;/em&gt; money all gone? Already? It must be, because I can find no other way to explain the imminent release of &lt;em&gt;"Snakes on a Plane."&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;The good thing about a movie like this is that you know exactally what you're in for. You're not going to be standing outside the box office saying "'Snakes on a Plane?' What could that &lt;em&gt;possibly&lt;/em&gt; be about? Is it a Shakespearean romance? Is it a documentary about Wisconsin cheese making? I wish I knew!"&lt;br /&gt;&lt;br /&gt;If you go to see this movie, I supposed you can't complain too much. You pretty much know what you are getting yourself into. It's not &lt;em&gt;"Citizen Kane"&lt;/em&gt; afterall. Personally, I have phobia's about snakes, shallow plots and insipid dialog, so I'll probably skip this one.&lt;br /&gt;&lt;br /&gt;On the bright side, Clerks II comes out in nine days... :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115245454962045078?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115245454962045078/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115245454962045078' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115245454962045078'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115245454962045078'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/07/get-these-mutha-fking-snakes-out-of-my.html' title='Get these mutha-f*@king snakes out of my mutha-f#@king blog!'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115158934080461457</id><published>2006-07-02T19:55:00.000-04:00</published><updated>2006-07-03T20:56:16.170-04:00</updated><title type='text'>OK, now what?</title><content type='html'>&lt;a href="http://photos1.blogger.com/blogger/7791/3148/1600/rn-sign-post-600.jpg"&gt;&lt;img style="FLOAT: left; MARGIN: 0px 10px 10px 0px; CURSOR: hand" alt="" src="http://photos1.blogger.com/blogger/7791/3148/320/rn-sign-post-600.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Over the past year, there has been a lot of "stuff" happening in the .NET world. My primary areas on interest (in no particular order) are: &lt;/p&gt;&lt;p&gt;&lt;br /&gt;• BizTalk&lt;br /&gt;• Team Foundation Server (customizing and extending)&lt;br /&gt;• WCF (and Service Factory)&lt;br /&gt;• WF&lt;br /&gt;• LINQ/DLINQ &lt;/p&gt;&lt;p&gt;&lt;br /&gt;That's kind of a lot to cover. To help get a handle on it all, I've kind of grouped BizTalk, WCF and WF into a single "thing" since they are all very much related to each other. WF is built on BizTalk technology and BizTalk is being positioned by Microsoft as their SOA platform, which makes WCF a great compliment to it. Also, these are all developer related technologies that are all available (in some form or another) today. &lt;/p&gt;&lt;p&gt;&lt;br /&gt;LINQ/DLINQ are cool, but still in a very preliminary form. To be honest, when I first looked at these, I thought there were interesting, but I didn't really get excited about them. Recently, I've been reading some blog entries by Sahil Malik where he's been doing some very cool demos of what you can do with this stuff. It looks like it might be something that can complete with persistence frameworks like nHibernate. As cool as nHibernate is, the idea of a native solution baked into the .NET platform, not to mention no more XML mapping files, is very appealing. We'll have to see where this goes. &lt;/p&gt;&lt;p&gt;&lt;br /&gt;The Team Foundation Server stuff is cool, but it's mostly "implementing methodology"" type stuff, and once you get one custom project guidance, a few custom check-in policies and some extensions to MS-build under your belt, it sort of becomes a "been there, done that" sort of thing. &lt;/p&gt;&lt;p&gt;&lt;br /&gt;Currently I have a client who is not an "early-adopter", which they are comfortable with. However, they recognize the need, given their situation, to jump in with .NET 3.0 (specifically WCF) and Team Foundation Server. I’ve also spoken to them about moving to BizTalk since they already own a license and it is much more reliable, feature rich and user-friendly than their current solution and they are very excited about this possibility as well. What I'm looking forward most of all is seeing how a large, conservative shop will adjust moving to several new technologies (almost simultaneously) and moving to Feature Driven Development, which they've also asked for my help with. &lt;/p&gt;&lt;p&gt;&lt;br /&gt;So, as far as .NET posts, I'll have some WCF, TFS and FDD stuff coming pretty soon.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;But don't worry; there is still plenty of other non-work stuff to blog about. Like, what’s up with this new Bobby Flay show&lt;em&gt;"Throwdown&lt;/em&gt;?&lt;em&gt;"&lt;/em&gt; Has he gotten tired of beating up on people on &lt;em&gt;"Iron Chef"&lt;/em&gt; that he now has to go embarrass people in their own homes? So, is this the culinary equivalent of him knocking on someone’s door and sucker-punching them when they answer? Doesn't he have a restaurant to run or something...&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115158934080461457?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115158934080461457/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115158934080461457' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115158934080461457'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115158934080461457'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/07/ok-now-what.html' title='OK, now what?'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115151653735450404</id><published>2006-06-28T13:36:00.000-04:00</published><updated>2006-07-01T01:09:16.166-04:00</updated><title type='text'>Kneel before Zod!</title><content type='html'>I found this via &lt;a href="http://blogs.msdn.com/noahc/default.aspx"&gt;Noah Coad's Blog&lt;/a&gt;. You take a quiz and it tells you which superhero you are (see the link below).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Your results:&lt;br /&gt;&lt;b&gt;You are Superman&lt;/b&gt; &lt;table border="15"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;Superman&lt;/td&gt;&lt;td&gt;&lt;hr align="left" width="80" size="4"&gt;&lt;/td&gt;&lt;td&gt;80%&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Robin&lt;/td&gt;&lt;td&gt;&lt;hr align="left" width="70" size="4"&gt;&lt;/td&gt;&lt;td&gt;70%&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Spider-Man&lt;/td&gt;&lt;td&gt;&lt;hr align="left" width="60" size="4"&gt;&lt;/td&gt;&lt;td&gt;60%&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Supergirl&lt;/td&gt;&lt;td&gt;&lt;hr align="left" width="60" size="4"&gt;&lt;/td&gt;&lt;td&gt;60%&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Hulk&lt;/td&gt;&lt;td&gt;&lt;hr align="left" width="60" size="4"&gt;&lt;/td&gt;&lt;td&gt;60%&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;The Flash&lt;/td&gt;&lt;td&gt;&lt;hr align="left" width="60" size="4"&gt;&lt;/td&gt;&lt;td&gt;60%&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Green Lantern&lt;/td&gt;&lt;td&gt;&lt;hr align="left" width="60" size="4"&gt;&lt;/td&gt;&lt;td&gt;60%&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Wonder Woman&lt;/td&gt;&lt;td&gt;&lt;hr align="left" width="40" size="4"&gt;&lt;/td&gt;&lt;td&gt;40%&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Iron Man&lt;/td&gt;&lt;td&gt;&lt;hr align="left" width="40" size="4"&gt;&lt;/td&gt;&lt;td&gt;40%&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Batman&lt;/td&gt;&lt;td&gt;&lt;hr align="left" width="20" size="4"&gt;&lt;/td&gt;&lt;td&gt;20%&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Catwoman&lt;/td&gt;&lt;td&gt;&lt;hr align="left" width="20" size="4"&gt;&lt;/td&gt;&lt;td&gt;20%&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;td&gt;You are mild-mannered, good,&lt;br /&gt;strong and you love to help others.&lt;br /&gt;&lt;img src="http://www.seabreezecomputers.com/superhero/pics/superman.jpg" /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;a href="http://www.seabreezecomputers.com/superhero"&gt;Click here to take the "Which Superhero are you?" quiz...&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Ha! I knew it all along!&lt;br /&gt;&lt;br /&gt;Be sure to go out and see my movie which opens tomorrow.&lt;br /&gt;&lt;br /&gt;Say, who do I see to get my share of the merchandising money?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115151653735450404?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115151653735450404/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115151653735450404' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115151653735450404'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115151653735450404'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/06/kneel-before-zod.html' title='Kneel before Zod!'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115110202008155216</id><published>2006-06-23T18:24:00.000-04:00</published><updated>2006-11-27T08:07:42.243-05:00</updated><title type='text'>For Entertainment Purposes Only, No Wagering Please...</title><content type='html'>Finally, I can live the dream of every blogger; having an outlet to handicap a second-tier reality-show.&lt;br /&gt;&lt;br /&gt;I'm not a huge fan of reality TV. I do like &lt;em&gt;"The Apprentice"&lt;/em&gt; because I work in the business world and I like &lt;em&gt;"Hells Kitchen"&lt;/em&gt; (the primary subject of this installment) probably due to the fact that I like eating. A lot. I just can't get into shows like &lt;em&gt;"Survivor."&lt;/em&gt; Maybe it’s because unlike the other two, I have no real sense of "common-ground" with the premise. In actuality, I send a certain percentage of effort each day trying to avoid being stranded on a desert island, as you can see from this chart:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://photos1.blogger.com/blogger/7791/3148/1600/effort2.0.gif"&gt;&lt;img style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://photos1.blogger.com/blogger/7791/3148/320/effort2.0.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;So, the second season of &lt;em&gt;"Hells Kitchen"&lt;/em&gt; began while I was in Boston. I didn't pick it up till the third episode, which is OK since a lot of the chaff is already gone and we are left with either the superstars or the people so bad they are kept on for pure comic enjoyment. &lt;em&gt;That's entertainment!&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;So here are my picks:&lt;br /&gt;&lt;br /&gt;&lt;img style="FLOAT: left" src="http://www.realitytvcalendar.com/shows/hk2/heather.jpg" border="1" /&gt;&lt;br /&gt;Heather aka the "Bossy Know-It-All"&lt;br /&gt;&lt;br /&gt;Seems to know her stuff and be a hard worker. She is kind of a bitch to the other contestants though. I give her 2:1 if she can avoid having an "unfortunate celery chopping accident" in her sleep, courtesy of Sara.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img style="FLOAT: left" src="http://www.realitytvcalendar.com/shows/hk2/sara.jpg" border="1" /&gt; Sara aka "The Bumpkin" &lt;/p&gt;&lt;p&gt;Again, knows her way around a kitchen, but comes of as a kind of "ditzy southern girl." This may be by design. She has issues with Heather, so I wouldn't be surprised to see Sara throw her under the bus the first chance she gets. I give her 1.5:1 &lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;img style="FLOAT: left" src="http://www.realitytvcalendar.com/shows/hk2/garrett.jpg" border="1" /&gt; Garrett aka "The 'Bad' Boy"&lt;br /&gt;&lt;br /&gt;He's the only real "leader" I see here. Once the dead-weight from the men’s team is gone I think he'll emerge as the favorite. No odds; I wouldn't bet against him. Partially because he was in prison and I don't want to get "shived."&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;img style="FLOAT: left" src="http://www.realitytvcalendar.com/shows/hk2/keith.jpg" border="1" /&gt; Keith aka "The Old, White Guy Who Thinks He's a Young Black Guy"&lt;br /&gt;&lt;br /&gt;I'm giving this moron 6:1. From what I've seen he can cook and knows how things work in a commercial kitchen. But, who the hell wants their food cooked by a guy who sweats so much that he looks like he just came in out of the rain. That and the fact that he seems to lack the ability to pull his pants up don’t bode well for ol’ Keith.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;img style="FLOAT: left" src="http://www.realitytvcalendar.com/shows/hk2/rachel.jpg" border="1" /&gt; Rachel aka "'Rachel?'... uh, nope not ringin' a bell. Are you sure you have the right show?"&lt;br /&gt;&lt;br /&gt;15:1. Flying so far under the radar that I can't even think of anything to say about her. Which may not be the worst strategy considering the show she is on.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;img style="FLOAT: left" src="http://www.realitytvcalendar.com/shows/hk2/maribel.jpg" border="1" /&gt; Maribel aka "The Home-Sick Mommie"&lt;br /&gt;&lt;br /&gt;Like Rachel, she is flying under the radar, only emerging long enough to get kicked-off her station by Ramsey or annoy her fellow contestants by crying about missing her home and family. 20:1; Maribel is a nice person. Ramsey is not a nice person. Which one runs the famous restaurant again? Point made.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;img style="FLOAT: left" src="http://www.realitytvcalendar.com/shows/hk2/virginia.jpg" border="1" /&gt; Virginia aka "The Shameless Flirt"&lt;br /&gt;&lt;br /&gt;Lust is attractive, desperation is not. Not even if the woman is attractive. If even an ego-maniac like Ramsey is embarrassed by the way Virginia is throwing herself at him, then you know it's not working. Combine that with the fact she can't even cook tortellini and I give her 30:1. Her title is "salad chef" and I'm pretty sure people who go to four star restaurants want their food cooked.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;img style="FLOAT: left" src="http://www.realitytvcalendar.com/shows/hk2/tom.jpg" border="1" /&gt; Tom aka "The Bitter Old Dude"&lt;br /&gt;&lt;br /&gt;How the hell did Tom get on this show?! He seems to be a menace in the kitchen. He got a &lt;strong&gt;very&lt;/strong&gt; minor burn on his hand. Ramsey and his team checked him out and all concluded that is was nothing, yet Tom basically shut-down. Kitchens are full of hot things; you're gonna get little burns from time to time. If you want to be a professional, you have to shake it off and move on. His confrontational attitude with Ramsey is not earning him any points either. 50:1&lt;br /&gt;&lt;/p&gt;&lt;p&gt;I hear a lot of the people who watch this show complain that Gordan Ramsey is too hard and "mean" to the contestants. I have two comments for that:&lt;/p&gt;&lt;p&gt;When I lived in Las Vegas, I worked at a couple of hotel/casinos. I didn't work in "F &amp; B" (food and buffet) but being in the back of the house, I saw what went on. I went to college at UNLV, which has a very well respected hotel management program, and friends of mine who were in the program would get me "back-stage" at some of the nicest restaurants in town (for a while I was considering going to culinary school, obviously I decided against it) and I have to say that the way things go down in Hell's Kitchen is pretty much the way it is in real life. The executive chefs, especially at the nicer “upper-tier” restaurants are supremely up-tight perfectionist. Not to mention complete bastards. I heard them say things to the people underneath them were just evil. But, the bottom line is that if you can't stand the heat, well, you know.&lt;/p&gt;&lt;p&gt;The other thing to keep in mind is that this is a TV show. On Fox. The people who brought you &lt;em&gt;"Celebrity Boxing"&lt;/em&gt; and &lt;em&gt;"The Glutton Bowl."&lt;/em&gt; Fox doesn't do "nice." It's the devils network. If it was &lt;em&gt;“Chef-Sensitive's Group Hug Hour”&lt;/em&gt; no one would watch it. If you’re that upset by it, the answer is simple; turn it off.&lt;br /&gt;&lt;br /&gt;And remember, I don't condone illegal gaming, but if you choose to indulge, 10% goes to the house.&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115110202008155216?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115110202008155216/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115110202008155216' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115110202008155216'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115110202008155216'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/06/for-entertainment-purposes-only-no_23.html' title='For Entertainment Purposes Only, No Wagering Please...'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115082642372737063</id><published>2006-06-20T19:21:00.000-04:00</published><updated>2006-06-20T19:25:00.720-04:00</updated><title type='text'>Final thoughts on Boston and new adventures in .NET 3.0</title><content type='html'>Boston was cool but I'm glad to be back. My flight didn't leave till Saturday afternoon (last minute planning) so I had some time Friday after Tech Ed ended and a few hours Saturday morning to go exploring.&lt;br /&gt;&lt;br /&gt;One of the things I liked about Boston was the subway. For an investment of $1.25 and a short walk you can be anywhere in the city in about 20 minutes. This is good because the streets can be a bit confusing. Between all the tunnels and the "spaghetti-roads" I'm sure some of the cabs were taking the "scenic route" but not knowing the area, I couldn't really argue with them.&lt;br /&gt;&lt;br /&gt;I did notice that the cost of living in Boston is a bit higher than Columbus as well. For example, they are paying about $.30 more for a gallon of gas than we are.&lt;br /&gt;&lt;br /&gt;So, Tech Ed ended at 4:00, and I was back to the hotel by 4:30. I decided to check out the &lt;a href="http://www.mos.org/"&gt;Boston Museum of Science&lt;/a&gt; which was pretty cool. They have the world's largest air-insulated &lt;a href="http://en.wikipedia.org/wiki/Van_de_Graaff_generator"&gt;Van de Graaff generator&lt;/a&gt; that they used to scare the crap out of the kids. They were hosting an Accenture party there, but the place seemed pretty empty, which was great frankly. I'm not a big "crowd" person.&lt;br /&gt;&lt;br /&gt;For dinner I went to a place called "Legal Seafood" (as opposed to fugitive seafood I suppose) largely on the recommendation of Brian &amp;lt;Anzalone&amp;gt; who has gotten some of their stuff mail-order. Everybody talks about the Clam Chowder in Boston and how wonderful it is, so I had to try some. I ordered a cup of it and..... it was OK. I didn't have the religious experience everybody describes, but it was better than Campbell’s.&lt;br /&gt;&lt;img id="productpaneimg" src="http://www.chunky.com/images/products/bowl_chowder.jpg" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;I walked around part of the city and Chinatown, where I was offered drugs three separate times. Welcome to the big city.&lt;br /&gt;&lt;br /&gt;The next morning I had several hours to kill, so I went to Quincy market and got souvenirs for a few people, then back to the airport and home. Boston is a cool city with a lot of stuff to do. Definitely someplace to consider next time I go on vacation.&lt;br /&gt;&lt;br /&gt;As a "welcome home" gift from the Sharon Township police department, I got a $100.00 ticket for driving with expired plates, which the officer amazingly was able to pick out at 70MPH on I-270. I completely forgot to get that taken care of last month, and apologized profusely to the officer. No dice, I still go the ticket. Well, it was after the 15th and they do have a quota to meet I suppose...&lt;br /&gt;&lt;br /&gt;So now that I'm back at work and the client I'm currently working with want's to know what's up with "the .NET 3.0 thing." I explained to them the re-branding and that a first blush it seems like a stupid idea. But, between the announcement last week and my return to Columbus, I've had a little time to think about it. In retrospect, I don't know that it's really that bad of an idea. Does including the components of WinFX in .NET qualify it as a "major upgrade" to the framework?&lt;br /&gt;&lt;br /&gt;Well, seeing first hand last week what WCF and WF are capable of and hearing from Tim how much he was impressed with CardSpace (formerly InfoCard) I would say it sounds like a major upgrade. And the naming makes a little more sense. One of the criticisms I see with Java is that there are too many frameworks. It's not enough to just be "Java" it's got to be "Java with struts" or "Java with Spring" or "Java with whatever." And while I think a few powerful frameworks are a good thing, I don't necessarily subscribe to the "more is better" philosophy here. If it suddenly became ".NET with WinFX" you could make the argument that .NET would be sliding down the same slop. There are already a lot of frameworks available for .NET, but you don't hear a lot about them because, well, .NET already does a lot out of the box. Sure, I use nHibernate, but my whole .NET app isn't inexorably tied to it like it would be to WinFX. So I guess in that regard, making it .NET 3.0 makes sense.&lt;br /&gt;Now that I've had a chance to talk to a few people about it, I think the major source of fear around this is falls into two categories:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;We just upgraded our code to .NET 2.0 and went through that learning curve. Now we have to do it again?!&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;and&lt;/p&gt;&lt;ul&gt;&lt;li&gt;We just spend a butt-load of money on Visual Studio 2005, now we're going to have to pay for another upgrade?&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Obviously, the answer to both questions is "No." I'm describing .NET 3.0 to people as (for better or worse) just an addition and extension to what .NET 2.0 already does. The core language and CLR didn't change; your .NET 2.0 code will compile and work in a .NET 3.0 world. Yes, there is a learning curve to use the new stuff in WinFX, but if your developers are worth their salt, they've already known about WinFX and what it can do for about a year. Maybe they've done some &lt;a href="http://msdn.microsoft.com/virtuallabs/default.aspx"&gt;Virtual Labs&lt;/a&gt; and visited the &lt;a href="http://msdn.microsoft.com/winfx/default.aspx"&gt;WinFX homepage&lt;/a&gt; or even better, they've already &lt;a href="http://msdn.microsoft.com/windowsvista/downloads/products/getthebeta/#runWinFXApps"&gt;downloaded the beta&lt;/a&gt; and read the &lt;a href="http://msdn.microsoft.com/winfx/downloads/products/golive/default.aspx"&gt;Go-Live licence&lt;/a&gt;. In any case, most developers I know are chomping at the bit to start using &lt;strong&gt;something&lt;/strong&gt; in WinFX. And if they aren't, well, this is just my opinion, but you may have bigger problems on your hands....&lt;/p&gt;&lt;p&gt;There is also no new Visual Studio on the horizon except "Orcas" which is still a ways off. But, I think I can see where this bit of FUD may come from. When .NET 1.0 came out, so did Visual Studio 2002 and in short order, the .NET 1.1 framework was shipped with Visual Studio 2003. .NET 2.0 hits the streets, and so does Visual Studio 2005. All of these Visual Studio upgrades have also brought a certain degree of pain (besides the kind that hits you in the wallet) although my experience so far has been that the move from 1.1/2003 to 2.0/2005 has been much smoother than the move from 1.0/2002 to 1.1/2003, but of course your mileage may vary. What Microsoft has done here is seems is break with the notion that each version of the .NET framework necessitates an upgrade to the development environment. I like this. Frankly, you're programming to the frame work (in this case the .NET CLR) and too many people think of development in terms of what the IDE will allow you to do easily. Not that I’m saying that Visual Studio is limiting in anyway, but you could write a .NET program in note pad. Visual Studio makes it a lot easier and faster, and I'm glad I don't have to use notepad, but it would work. I guess what I'm saying is that the IDE is a great tool, but the framework is the key.&lt;/p&gt;&lt;p&gt;And no, I'm not volunteering to start doing my development in notepad!&lt;/p&gt;&lt;p&gt;Of course this is just what I think; I may be reading too much into this...&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115082642372737063?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115082642372737063/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115082642372737063' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115082642372737063'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115082642372737063'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/06/final-thoughts-on-boston-and-new.html' title='Final thoughts on Boston and new adventures in .NET 3.0'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115022906879140522</id><published>2006-06-17T20:45:00.000-04:00</published><updated>2006-06-19T13:51:11.806-04:00</updated><title type='text'>Booth Babes</title><content type='html'>&lt;a href="http://photos1.blogger.com/blogger/7791/3148/1600/06-15-06_1828.0.jpg"&gt;&lt;img style="CURSOR: hand" alt="" src="http://photos1.blogger.com/blogger/7791/3148/400/06-15-06_1828.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://photos1.blogger.com/blogger/7791/3148/1600/06-15-06_1828.jpg"&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:0;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:0;"&gt;&lt;/span&gt;&lt;br /&gt;No two words in the English language, except maybe "Dual Core" or "Free X-Box" fan the flame of nerd-lust as much as those...&lt;br /&gt;&lt;br /&gt;Anyway, what's changed over the years is that companies no longer seem to have to rely on "hired talent" for this need. Women, especially attractive women are getting smarter and smarter it seems. Which is good, the computer industry is no longer thought of as a place for social outcasts and frankly, it's easier to interact with members of the opposite sex when you have more in common.&lt;br /&gt;&lt;br /&gt;That being said, there was one booth that decided to dress an attractive young woman up in a skin-tight wet suit. Oddly enough, I can remember every detail about her, but I couldn't tell you what the company sold if my life depended on it.&lt;br /&gt;&lt;br /&gt;Aside from my favorite booth babe, I’m not posting any pictures. I though about it. But it turns out smart, professional and technically savvy women don't appreciate being singled out and reduced to merely a collection of desirable body parts. Chicks are weird that way.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:0;"&gt;As for SQL girl, she's all mine fellas! :) &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115022906879140522?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115022906879140522/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115022906879140522' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115022906879140522'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115022906879140522'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/06/booth-babes.html' title='Booth Babes'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115047714187744884</id><published>2006-06-16T14:31:00.000-04:00</published><updated>2006-11-24T17:29:00.896-05:00</updated><title type='text'>Last post from Tech Ed (probably)...</title><content type='html'>... but probably not my last post about Tech Ed.&lt;br /&gt;&lt;br /&gt;The part last night at FENWAY park (Geesh, like it really makes a difference) was pretty cool. They serves a lot of "base-ball" realted food; hot dogs, Italian sausage, BBQ chicken, burgers, that kind of thing. I got to sit in the visitors dugout and check out the park. It's really old. Not a big Train fan, but I stayed for their first two songs. This may be my musical snobbery coming through, but all their songs kind of sound alike to me.&lt;br /&gt;&lt;br /&gt;This morning I hit another service factory chalk talk by Don Smith and Shy Cohen. There is a lot to this (more than can really be covered in an hour) but I think it's a pretty cool tool to help write WCF services (with the large number of "contracts" that it now uses) and I'm eager to start working with it when I get back.&lt;br /&gt;&lt;br /&gt;I also went to Web307 ASP.NET: Best Practices in Creating Scalable, Data-Driven Web Sites by Rob Howard. This was pretty cool. There was a lot of stuff in it most people already know (like turning off Viewstate or Session if you're not using them) but he showed a lot of the cool caching capabilites for data base calls. He has a sample, and by tweaking some of the cache settings, we was able to increase the amount of page requests he could server from 150 to about 750. He also showed how to teak some memory setting in IIS and talked about hardware architecture and when and how you should seperate your business logic from your presentation layer. Basically, he said try not to and use ISA if you can.&lt;br /&gt;&lt;br /&gt;Just got out of CON440 .NET Framework 2.0: Advanced Serialization. This was pretty good, and I thought I should attend since WCF is so dependant on contracts and serialization. The speaker didn't touch on WCF till the end, and kind of blew through it. I was kind of out of scope for the presentation, but it was pretty informative and I have a much better picture of how .NET serialization works.&lt;br /&gt;&lt;br /&gt;I have one more session this afternoon, but they are already folding up the tent here so to speak, so I might not get a chance to post after it.&lt;br /&gt;&lt;br /&gt;Since someone did ask about the food, and I'm sure other people have mentioned it, I have to weigh in. I am a well knows food-snob, I think we can all agree on that. And I understand that you don't come to Tech Ed for the food. AND I understand that the logistics invovled in feeding thousands of people in a short period of time for a reasonable cost are difficult parameter to work in sometimes. But, the food has frankly been awful. I try to live a healthy lifestyle, especially where it applies to what I eat, and maybe that make me more sensitive. But, this week has been nothing but offerings of bland, luke-warm food served in pools of grease and lots of highly processed crap. Even trying to pick out the "healthy" options as mealtime (which has been no small feat!) I have had the worst stomach ache in my life since Tuesday evening up till this very moment. It feels like I've been punched in the gut. It all kind of came to a head between the chalk talk and the ASP.Net session this morning when I was violently ill in the mens room. I do feel a little better since then, so hopefully things will get better now that I am "on my own" to go out and seek healthier options. The good news is, I don't seem to have gained any weight while I've been here, maybe because I've been hitting the cardio VERY hard in the morning. I ate breakfast with someone from Microsoft this morning, and she told me that I'm not alone; a lot of the feed back about the food and the facility have been very poor. She thinks it may be awhile before Tech Ed returns to Boston...&lt;br /&gt;&lt;br /&gt;During our converstaion, somone else at the table asked, somewhat annoyed, why Bill Gates and/or Steve Balmer did not make an appearance this year. The nice lady from Microsoft said that she believed that they had conflicts (?) and that "Well, this isn't really &lt;em&gt;their&lt;/em&gt; people."&lt;br /&gt;&lt;br /&gt;What? What about "DEVELOPERS! DEVELOPERS! DEVELOPERS! DEVELOPERS! DEVELOPERS! DEVELOPERS! DEVELOPERS! DEVELOPERS! DEVELOPERS! DEVELOPERS! DEVELOPERS! DEVELOPERS!..."&lt;br /&gt;&lt;br /&gt;I guess I have a little problem with this. Now, I know that Microsofts long money comes from Windows and Office. But, we developers are generally the ones out there carrying the message and evangelising to our clients about .NET and all the tools taht Microsoft sells and why these are better than free Linux and Java. I understand we may not want a week of marketing rhetoric, but I think a token appearance during the keynote (aside from Balmers cameo in the video) would have made some people happy.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115047714187744884?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115047714187744884/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115047714187744884' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115047714187744884'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115047714187744884'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/06/last-post-from-tech-ed-probably.html' title='Last post from Tech Ed (probably)...'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115039735884004118</id><published>2006-06-15T17:46:00.000-04:00</published><updated>2006-06-16T15:09:54.756-04:00</updated><title type='text'>More Tech Ed stuff...</title><content type='html'>OK, I actually started this post a day or so ago. But, It's been hard to finish it, primarily because I've been using the computers provided here at Tech Ed between session (gotta bring a laptop next year) and because Brian has been using the time between sessions to introduce me to some Microsoft people, which has been very cool. I've also had a real nack for picking back to back sessions that are on the complete opposite ends of the convention center.&lt;br /&gt;&lt;br /&gt;The other reason is that this is a personal blog. I am soley responsible for all editorial content, and I answer to no one. Well, maybe still my Mom on occasion...&lt;br /&gt;&lt;br /&gt;Yeah, I work in technology, and a lot of content here will be technology related because of this. But, it isn't going to be limited by my job. For one thing, I have a lot of friends and family who read this and frankly, I don't think they would be interesting in reading a pure-techno blog. And frankly, that's not the kind of blog I want to write! This blog is about what interests &lt;strong&gt;me.&lt;/strong&gt; If that's going to be a problem for some people, then I suggest finding another blog, God knows there are plenty out there.&lt;br /&gt;&lt;br /&gt;Here is an update on the sessions I've been to;&lt;br /&gt;&lt;br /&gt;CON320 (WinFX) Windows Communication Foundation: Building Peer-to-Peer Applications: Very interesting. WCF seems to be a very powerful technology that is capable of a lot of things. I'm not sure peer-to-peer is high on my list of things to do with it, but it was nice to see how it could be used to facilitate this type of connectivity.&lt;br /&gt;&lt;br /&gt;DAT320 An Inside Look At an exciting New Addition to Visual Studio Team System (part 2). I missed part 1. They are talking about the new Visual Studio for DBA's. I missed the first one because it wasn't in the schedule since they hadn't announced the product yet. The second session was about refactoring databases and running test cases. Pretty interesting. They handed out the CTP to everyone, so I'll have to play around with it when I get home.&lt;br /&gt;&lt;br /&gt;ARCTLC14 Introduction to the Service Factory. I really like this. I've had the GAX and GAT downloaded for a while, but haven't had time to play with them. After this session, I'm going to make the time. This thing will basically generate the stub code for all your WCF based services (there are about half a dozen contracts you use) which is a great time saver. I just hope it doesn't inspire some people to "cut corners" with their WCF education. It will do a lot of the work, but you still need to know what's going on under the hood.&lt;br /&gt;&lt;br /&gt;DEV233 Visual Studio 2005 Team Foundation Server: Using Metrics to Manage and Troubleshoot Your Projects. This was mostly a re-hash from a previous session. It talked about the reporting capabilities of TFS when you track code and changesets to workitems. He showed the same "out-of-the-box" reports that I've already seen a hundred times. He did a couple custom reports, and that aspect it pretty easy, but he didn't do a "deep dive" by any streach.&lt;br /&gt;&lt;br /&gt;Dev237 Visual Studio Team Foundation Server: Step-by-step Migration and Adoption planning. This wasn't step-by-step anything! It was a re-hash of a previous session about creating custom guidance and work item types. I didn't' get anything really new out of it except that he did go into a discussion of how TFS scales and what and how much hardware you &lt;em&gt;really&lt;/em&gt; need based on your team size. It was less than I thought, which should help get this into more clients shops.&lt;br /&gt;&lt;br /&gt;ARC220 How to Get Your Grandmother Building Missle Defense Systems: This was a good session, unfortunately the presenter, Martin, was having some major technical problems with the projectors and the SVM switch on the stage. For those who don't know, each stage has on PC that generally hosts the Power Point slide, and the presenters plug their laptops into a KVM to do their demos. This session was mostly about how Architects provide guidance to developers using Frameworks and tools. I think he had to cut a few corners in his presentation because of the technical difficulties.&lt;br /&gt;&lt;br /&gt;CON423 (WinFx) Windows Communication Foundation: Desgining Bindings and Contracts. The more I learn about WCF, the more I like it. This really blurs the lines between all the service paradigms out there to the point where you can really design for the business, not around the technology. For those who don't know, at any WCF session they will talk about the "ABC's". Address (where), Bindings(how) and Contracts(what). This was a session on all the different contracts that exist in WCF (more that I care to list here) and how and when to use each one. Good stuff!&lt;br /&gt;&lt;br /&gt;Con335 (WinFX) Windows Workflow Foundation: Creating a Host for the Workflow Runtime: This was an OK session. Kind of a re-hash of the intro session, but he did go into binding custom events to workflow events and how the runtime is contained and works.&lt;br /&gt;&lt;br /&gt;That's all for today. The "party" is tonight. It's at Wrigley Field and Train is playing. Not my kind of music and baseball stuff and'm kind of tired, so I probably wont go for long.&lt;br /&gt;&lt;br /&gt;BTW: I appologize for any and all spelling errors. Blogspot spellchecker sucks and I don't have access to a machine with Word.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115039735884004118?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115039735884004118/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115039735884004118' title='10 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115039735884004118'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115039735884004118'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/06/more-tech-ed-stuff.html' title='More Tech Ed stuff...'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>10</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115040280127427035</id><published>2006-06-15T16:14:00.000-04:00</published><updated>2006-06-15T17:18:59.916-04:00</updated><title type='text'>Brian's BizTalk Session</title><content type='html'>This is going to be mostly for my co-workers and fellow techie's. If you're not in one of these categories and are looking for some stupid jokes, you'll have to come back for a later post.&lt;br /&gt;&lt;br /&gt;Brian and Keith did their BizTalk planning session this morning at 8:00. This was kind of a crappy slot since the conference starts earlier and earlier each day, and the audience at 8:00 can be really "iffy." On top of that, Brian was making tweaks to his slide deck as late as Tuesday (as I understand) and there was the fire alarm last night that I already posted about.&lt;br /&gt;&lt;br /&gt;Well, without getting into a lot of detail (because I have five minutes to find my next session) it was great! They took a pretty difficult topic to speak about in just over an hour (Enterprise Integration) and gave a great presentation.&lt;br /&gt;&lt;br /&gt;And the number reflected it; right now they are carrying an 8.5 out of 9! For a while this morning they had one of the top ten highest scores of ALL the sessions.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115040280127427035?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115040280127427035/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115040280127427035' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115040280127427035'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115040280127427035'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/06/brians-biztalk-session.html' title='Brian&apos;s BizTalk Session'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115037285824868191</id><published>2006-06-15T07:53:00.000-04:00</published><updated>2006-06-16T14:30:38.263-04:00</updated><title type='text'>New for Tech Ed 2006!</title><content type='html'>Come on out for our Thursday morning all-nerd pajama party!&lt;br /&gt;&lt;br /&gt;That's right, everyone meet in the Hilton parking lot at 3:30 AM and see what your fellow Tech Eder's wear... or &lt;em&gt;don't wear&lt;/em&gt; to the sack!&lt;br /&gt;&lt;br /&gt;Discuss interesting topics like:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Is there really a fire?&lt;/li&gt;&lt;li&gt;Has the fire department been called?&lt;/li&gt;&lt;li&gt;When can we go back to our rooms?&lt;/li&gt;&lt;li&gt;Are we getting a free night out of this?&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;We're looking forward to see all of you there!&lt;/p&gt;&lt;p&gt;---&lt;/p&gt;&lt;p&gt;Selected comments from the Tech Ed Pajama Party:&lt;/p&gt;&lt;p&gt;&lt;em&gt;"Man, this sucked! All the speakers were half asleep!"&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;"The room was too cold."&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;"Why weren't refreshments provided?"&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;"Hellllloooo..... Swag?"&lt;/em&gt;&lt;/p&gt;&lt;p&gt;So, if you haven't' figured it out already, there was a fire alarm last night (actually this morning) at the hotel. So we all had to shuffle to the parking lot while the fire department checked it out. I did notice several people, at 3:30 AM mind you, already fully dressed with their Tech Ed "man purses" ready to go. Wow! Turns out it was just "steam." Yeah... uh.... steam.... of course....&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115037285824868191?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115037285824868191'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115037285824868191'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/06/new-for-tech-ed-2006.html' title='New for Tech Ed 2006!'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115029312406581330</id><published>2006-06-14T09:33:00.000-04:00</published><updated>2006-06-14T15:21:19.486-04:00</updated><title type='text'>Hate and Discontent...</title><content type='html'>This morning is off to a rocky start....&lt;br /&gt;&lt;br /&gt;I guess it mostly started yesterday; it was my "cheat-day" when I am allowed to go off my "diet" and indulge. Which is pretty easy at Tech Ed, it's junk-food heaven. I had more sugar yesterday then I think I normally have in a month.&lt;br /&gt;&lt;br /&gt;After the conference, I attended a Microsoft event, which I really enjoyed (Thanks Drew!) and where I continued to indulge in rich "no-no" food, and was out much later than normal. I got back to my room about 11:30 PM, which is basically the equivalent of 2:00 AM for me with a splitting head-ache. I had to get up at 5:30 to work out (sprints, yay) so I went straight to bed.&lt;br /&gt;&lt;br /&gt;5:30 came, and boy did it suck. I downed an energy drink and hit the gym. I was hoping to do 45 minutes, but at about 30, all of yesterdays gastronomical indiscretion came crashing down. I had the stomach ache to end all stomach aches. Imagine the worst hang-over you've ever had and now picture it focused in your stomach. I went back up to my room and got ready to head over to the conference. On the way I stopped in the little store in the lobby of the hotel to get some Pepto Bismol. The total came to $9.71 (I got some Rolaids too, and it &lt;em&gt;is&lt;/em&gt; a hotel gift shop) but the very nice lady working there keyed it into the credit card machine as $97.10. It took are about ten minutes to straighten it out. Meanwhile the $97.10 charge is still pending on my account.&lt;br /&gt;&lt;br /&gt;Here's where the suckiness starts.&lt;br /&gt;&lt;br /&gt;I go get on a shuttle bus at 7:30 AM. The conference starts at 8:30. I figure if I get some "real" food into me before the sessions, I'll be cool. I got on a shuttle but run by "Datco" The bus loads, and instead of leaving at the appointed time, they driver spends and extra ten minutes hitting on the nerd-herder. When he FINALLY realizes that he's not getting anywhere, he climbs in and we take off. He heads to the next hotel, and proceeds to go through the wrong entrance. Then he spends another ten minutes hitting an another nerd-herder. Realizing he's 0 for 2, he gets back on and we head to the next hotel, and the next nerd-herder. Sorry dude, three trips to the line and three air-balls. So, finally we are off to the convention center, right? Wrong. And this part wasn't really his fault. The guy in the truck in front of us decides to stop (on a one lane road) and have a conversation with his buddy walking along the side walk. Apparently he doesn't notice the tour bus behind him, and why would he, it's not like it's a giant, several thousand pound object or anything. Why our driver does start laying on the horn and get the guy to move, I'll never know. So truck guy FINALLY finished his conversation and we are off. Home free, right? Wrong. The driver got lost twice on the way to the convention center. And lets be clear, it is not a long trip. I've been here three and a half days, and I'm pretty sure I could find my way. It took us an hour to get from the hotel to the conference. On the way, we were passed by two busses from our route. I practically inhaled breakfast before I had to sprint to the next session. Gah!&lt;br /&gt;&lt;br /&gt;Thanks Datco, next time I'll just walk. :(&lt;br /&gt;&lt;br /&gt;OK, enough anger for today. I promise the next post will be happiness and sunshine.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Update:&lt;/strong&gt; I was informed earlier that there is a Boston-wide bus strike. Apparently it's gone so far that several drivers have "commandeered" a bus, plastered it with signs, and are driving around area hotels taunting people waiting for their much-delayed busses.&lt;br /&gt;&lt;br /&gt;I don't know that this tempers my irritation from earlier, the bus business is a business and they need to do what it takes to provide service. But, I'm &lt;strong&gt;no&lt;/strong&gt; fan of the unions in general either...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115029312406581330?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115029312406581330/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115029312406581330' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115029312406581330'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115029312406581330'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/06/hate-and-discontent.html' title='Hate and Discontent...'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115020765277711784</id><published>2006-06-13T10:04:00.000-04:00</published><updated>2006-06-21T14:29:08.600-04:00</updated><title type='text'>Day two begins, and more lucid thoughts on last nights expo...</title><content type='html'>OK, now that I'm more awake, and not worried about missing the last bus from the convention center, I can opine a bit about last nights vendor-expo-reception-type-thingie...&lt;br /&gt;&lt;br /&gt;All in all it was exactly what it sounds like; free food, free booze and lots of marketing. Some of the vendors are doing some very cool, interesting stuff. Others.... uh, did I mention the free food and free booze?&lt;br /&gt;&lt;br /&gt;The free food was of the "on-a-stick" variety, which I know is easy for these kinds of events; it's easy to handle and you don't have much to clean afterward. But, I question the logic of grouping several tired, half-drunk swag-frenzied people in close quarters with what are essentially very small pikes. It was so crowded I almost accidentally stabbed four people! Ok, one of them wasn't as accidental as I claimed...&lt;br /&gt;&lt;br /&gt;The swag was good. As I mentioned I was pretty "weighed-down" with it when I left. The hoops they are making you go through to get it are more and more invovled every year. To get a t-shirt I had to retrieve the Golden chalice from the Red Castle and return it to the Yellow Castle while being chased by some very disturbing looking ducks! And all I had was the aforementioned very small pike to defend myself!&lt;br /&gt;&lt;br /&gt;But I got someone to snap a picture for me:&lt;br /&gt;&lt;br /&gt;&lt;img height="173" alt="" src="http://upload.wikimedia.org/wikipedia/en/d/d7/Adventure1.png" width="288" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Anyway, here's the run down so far for today....&lt;br /&gt;&lt;br /&gt;ARC206 Evolving to Patterns (James Newkirk): I really enjoyed this. Someone pointed out he "reused" stuff from Fowlers website, but I don't care. I plan to re-reuse the stuff when I work with developers.&lt;br /&gt;&lt;br /&gt;CON213 Integration Technologies: What to use When (Kris Horrocks): So... did I mention that the Expo last night had free food and free booze? Actually, this wasn't bad, I think I was just "flooded with information" and since I'm relatively new to BizTalk, WCF and their ilk, didn't pick up as much as I had hoped.&lt;br /&gt;&lt;br /&gt;SEC307 Baking Security into the Development Life Cycle (Michael Howard): To be honest, I didn't strictly go to this as my first choice. A co-worker of mine wanted a signed copy of his new book. I was sort of on the fence about this or another session, but decided to go so I could get the book signed and Brian could go to another session. I'm glad I did. This session was great and Michael really explained the value of the SDL and demonstrated (with real numbers from production Microsoft products) how using this can help generate more secure software. I went right afterward and bought my own copy of his book. Not sure about getting it signed though... :)&lt;br /&gt;&lt;br /&gt;If my co-workers are reading this, I just picked up a &lt;strong&gt;SWEET&lt;/strong&gt; piece of swag that I'll be giving away at some unspecified future event.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115020765277711784?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115020765277711784/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115020765277711784' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115020765277711784'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115020765277711784'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/06/day-two-begins-and-more-lucid-thoughts.html' title='Day two begins, and more lucid thoughts on last nights expo...'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115015950575412101</id><published>2006-06-12T20:24:00.000-04:00</published><updated>2006-06-12T20:50:53.240-04:00</updated><title type='text'>End of the first day...</title><content type='html'>&lt;span style="font-size:0;"&gt;&lt;img style="WIDTH: 376px; HEIGHT: 317px" height="397" alt="06-12-06_1757.jpg" src="http://mail.google.com/mail/?view=att&amp;disp=emb&amp;amp;attid=0.1&amp;th=10bcace0da049652" width="548" /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:0;"&gt;&lt;/span&gt;&lt;br /&gt;Well... it's about 8:30, and time for my bed time. The first day has been a lot of fun. I hit two more sessions....:&lt;br /&gt;&lt;br /&gt;CON314 (WinFX) Windows workflow Foundation: Building Workflow-Enabled Services with WCF. Pretty good. The speaker showed us some ways to integrate WCF with Workflow stuff from both angles (easy and neat vs. wider WS* support and security). He also pointed out that in the new VS (Orcas?) this latter will somehow be merged with the former. It will be a neat trick.&lt;br /&gt;&lt;br /&gt;ARC204 Web Services Security: Scenarios, Patterns and Implementations. Another good session. It was put on by two guys from the Patterns and Practices group. They have just published a book (which I was able to get a free copy of!) of guidences and practices for implementing security patters with web services (as the title suggests.) I've flipped though the book a little. I is kind of structured like a questionnaire, helping you determine what approach is best depending on your situation. It also explains the benefits/drawbacks of one approach vs another for each case and how to implement each one. I didn't see any mention of how (if) it interacts with EL (or if it even should) but if I track one of the speakers down, I'll be sure to ask him.&lt;br /&gt;&lt;br /&gt;The expo reception was fun as well; lots of people. Oh, how I &lt;em&gt;love&lt;/em&gt; a crowd. If I pick up one more piece of swag, I'm gonna tip over!&lt;br /&gt;&lt;br /&gt;OK, that's all, I'm tired. More tomorrow...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115015950575412101?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115015950575412101/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115015950575412101' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115015950575412101'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115015950575412101'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/06/end-of-first-day.html' title='End of the first day...'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115013899919476828</id><published>2006-06-12T14:50:00.000-04:00</published><updated>2006-06-13T08:28:31.586-04:00</updated><title type='text'>Tech Ed so far...</title><content type='html'>Just have a moment to make a quick post. Here's what's been going on so far...&lt;br /&gt;&lt;br /&gt;First Session Web301 ASP.NET: accelerating Web Application Development with the Microsoft Enterprise Library. To be honest, I was not impressed with the content for this as a "300" level course. I expected some really in-depth stuff about extending it and writing your own providers. This was a basic "see spot use EL" thing. Not NEARLY deep enough. The speaker did seem to be half-asleep, but some of the comments I heard people making were just mean. That's not cool.&lt;br /&gt;&lt;br /&gt;Then one to DEV304: Delving into Visual Studio 2005 Team Edition for Software Architects. This was MUCH better. I've played with the Logical Datacenter Diagram and the Application Designer a bit. They are pretty cool. But this speaker went into some great detail with the System Designer and the Deployment Report. I'm definitely gonna try to get my clients (especially those with big data centers) interested in this!&lt;br /&gt;&lt;br /&gt;Just got done with CON206 (WinFx) Windows Workflow Foundation: Introduction. I hadn't done much with WF (very clear, it's NOT WWF. Those people are very... litigeous) but I'm excited about it now. It seems like there might be &lt;em&gt;some&lt;/em&gt; overlap with BizTalk... I'll ask Brian about it later and see what his take is. But, I think it's going to be a very helpful tool.&lt;br /&gt;&lt;br /&gt;One non-technical observation. And an explanation. If you meet me here at Tech Ed, and I seem hesitent to shake your hand, there is a reason. Everybody is pressed for time and the bathrooms are full. I get that. But, PLEASE take a moment and &lt;strong&gt;WASH YOUR HANDS AFTER YOU "GO"&lt;/strong&gt; for Christ's sake! It's just gross.&lt;br /&gt;&lt;br /&gt;For some non-Microsoft technical (sorta) content, I did learn something about my iPod this morning. I have a travel adapter for it. I plugged it in after my workout this morning and.... nothing. No charging, no nothing. After several minutes of what my Mom would refer to as "Sailor Talk" I figured out (and no, it wasn't in the directions) that the iPod must be in standby BEFORE you plug it in. WTF? Anyway, crisis averted.&lt;br /&gt;&lt;br /&gt;Time to go get my "learn-on." Later....&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115013899919476828?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115013899919476828/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115013899919476828' title='9 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115013899919476828'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115013899919476828'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/06/tech-ed-so-far.html' title='Tech Ed so far...'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>9</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-115003461004288808</id><published>2006-06-11T09:52:00.000-04:00</published><updated>2006-06-11T10:05:26.336-04:00</updated><title type='text'>Scene from a Boston highway....</title><content type='html'>Highway Patrolman: "Sir, do you know what we do to drunk drivers here in Massachusetts?"&lt;br /&gt;Driver: "Uh, re-elect them to the Senate?"&lt;br /&gt;&lt;br /&gt;Apologies to whoever I stole that joke from.&lt;br /&gt;&lt;br /&gt;Well, I made it, and I am standing in the BCEC right now writing this entry. I got to ride through one of the "Big-Dig" tunnels, which was, uh... like being in a tunnel....&lt;br /&gt;&lt;br /&gt;So far, I only have two observations...&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;There were about three people on my flight in, besides me, who were waiting for suitcases at baggage claim. In addition to our suitcases, there were about 20 going around and around on the carousel. This tells me that either American Airline just pissed of several people, or several people got lost somehow during that harrowing 50 yards between the plane and baggage claim.&lt;/li&gt;&lt;li&gt;Even though it's only Sunday, the convention center is a buzz. I know some people are here for pre-conference stuff, but I'm wondering how many of the rest of us are just excited to be here (or don't have anywhere better to go. :) )&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;At any rate, I'm waiting for the bookstore to open up. They have a sign up (several actually) that say that for every purchase, you get an entry in a drawing for one of two 360's (SWEEET!), a Microsoft directors chair (That's OK too) or a pair of those sunglasses-MP3 player combos like "Dogg the Bounty Hunter" wears. &lt;/p&gt;&lt;p&gt;&lt;img class="center border" height="311" alt="dogoak.jpg" src="http://www.gizmodo.com/gadgets/images/dogoak.jpg" width="400" /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Now THERE'S a look I think we can ALL appreciate!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-115003461004288808?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/115003461004288808/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=115003461004288808' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115003461004288808'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/115003461004288808'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/06/scene-from-boston-highway.html' title='Scene from a Boston highway....'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-114999288856399134</id><published>2006-06-10T22:26:00.000-04:00</published><updated>2006-07-24T20:10:45.733-04:00</updated><title type='text'>Put THAT in your blog reader and ... uhh, read it I guess...</title><content type='html'>I added RSS syndication via feedburner (the button on the right.)&lt;br /&gt;&lt;br /&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-114999288856399134?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/114999288856399134/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=114999288856399134' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/114999288856399134'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/114999288856399134'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/06/put-that-in-your-blog-reader-and-uhh.html' title='Put THAT in your blog reader and ... uhh, read it I guess...'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-29534694.post-114997839100093586</id><published>2006-06-10T18:21:00.000-04:00</published><updated>2006-06-10T19:11:43.350-04:00</updated><title type='text'>First Post</title><content type='html'>Woo-hoo!&lt;br /&gt;&lt;br /&gt;Well, my first post isn't going to be really compelling. It's the day before I leave for Tech Ed in Botson.&lt;br /&gt;&lt;br /&gt;It's been about three years since I've been to Tech Ed. I also went to a PDC years ago, and I've been itchin' to go back. Luckily, I was able to convince my company to send me this year. Hopefully it will be an ongoing thing.&lt;br /&gt;&lt;br /&gt;I'm really interested in the Team System and Team Foundation Server stuff. I've been using it for about a year now and have seen it grow from a quirky beta to a pretty cool platform! I also want to check out some of the WinFX stuff (mostly WCF and workflow stuff) and I'm really interested in the BizTalk stuff. In fact, my boss &lt;a href="http://www.brianhprince.com"&gt;Brian&lt;/a&gt; will be giving a presentation on it. (CON329  BizTalk Server Solution Lifecycle: Planning and Design (Part 1), Thursday at 8:00)&lt;br /&gt;&lt;br /&gt;I'll make some "TechEd-related" posts this week. I'll make an officially official "first post" when I get back.&lt;br /&gt;&lt;br /&gt;Till then...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/29534694-114997839100093586?l=benders-blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://benders-blog.blogspot.com/feeds/114997839100093586/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=29534694&amp;postID=114997839100093586' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/114997839100093586'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/29534694/posts/default/114997839100093586'/><link rel='alternate' type='text/html' href='http://benders-blog.blogspot.com/2006/06/first-post.html' title='First Post'/><author><name>James Bender</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_GwK7Z7uA4os/STlCRpUKTEI/AAAAAAAAAJg/uxX9mM2dPfI/S220/Me3.jpg'/></author><thr:total>0</thr:total></entry></feed>
