<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" version="2.0">

<channel>
	<title>Bob Pusateri - The Outer Join</title>
	
	<link>http://www.bobpusateri.com</link>
	<description>Bob Pusateri's thoughts on SQL Server and kindred subjects</description>
	<lastBuildDate>Fri, 26 Apr 2013 12:43:18 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.4.2</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/TheOuterJoin" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="theouterjoin" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>T-SQL Tuesday #41 Recap</title>
		<link>http://www.bobpusateri.com/archive/2013/04/t-sql-tuesday-41-recap/</link>
		<comments>http://www.bobpusateri.com/archive/2013/04/t-sql-tuesday-41-recap/#comments</comments>
		<pubDate>Fri, 26 Apr 2013 12:43:18 +0000</pubDate>
		<dc:creator>Bob Pusateri</dc:creator>
				<category><![CDATA[TSQL Tuesday]]></category>

		<guid isPermaLink="false">http://www.bobpusateri.com/?p=1086</guid>
		<description><![CDATA[<p>A huge thank you to all who took the time to write posts for T-SQL Tuesday #41. I was overwhelmed at the number of replies! I had a ton of them to read, as well as back-to-back SQL Saturdays in Madison and Chicago that have kept me busy the past few weeks, hence the delay in [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.bobpusateri.com/archive/2013/04/invitation-to-t-sql-tuesday-41-presenting-and-loving-it/" target="_blank"><img style=' float: right; padding: 4px; margin: 0 0 2px 7px;'  class="alignright" src="http://img.bobpusateri.com/bc/2010/06/TSQL2sDay150x150.jpg" alt="" width="150" height="150" /></a>A huge thank you to all who took the time to write posts for <a href="http://www.bobpusateri.com/archive/2013/04/invitation-to-t-sql-tuesday-41-presenting-and-loving-it/" target="_blank">T-SQL Tuesday #41</a>. I was overwhelmed at the number of replies! I had a <strong>ton</strong> of them to read, as well as back-to-back SQL Saturdays in Madison and Chicago that have kept me busy the past few weeks, hence the delay in posting this. Without any further ado, here are all the great replies in the order they appeared in the comments section.</p>
<p><a href="http://borishristov.com/blog/" target="_blank">Boris Hristov</a> (<a href="https://twitter.com/BorisHristov" target="_blank">@BorisHristov</a>) tells the tale of SQL Saturday #152 in Sofia, where he had <a href="http://borishristov.com/blog/t-sql-tuesday-41-presenting-and-loving-it/" target="_blank">several obstacles to overcome</a>, including sleeping in, his first attempt at presenting on a MacBook Pro, and having to migrate everything to his manager&#8217;s PC when he ran into issues. Despite the technical difficulties, Boris still believes this was one of the best presentations he&#8217;s ever given.</p>
<p><a href="http://michaeljswart.com/" target="_blank">Michael J. Swart</a> (<a href="https://twitter.com/mjswart" target="_blank">@MJSwart</a>) <a href="http://michaeljswart.com/2013/04/t-sql-tuesday-41-presenting-and-loving-it/" target="_blank">says that he&#8217;s</a> &#8220;not much of a presenter&#8221; and that he&#8217;s actually giving his third presentation _ever_ the same day that his post went live. (I had no idea!) He also gives us advice in the form of things he&#8217;s done to prepare for it.</p>
<p><a href="http://sqlblog.com/blogs/rob_farley/default.aspx" target="_blank">Rob Farley</a> (<a href="https://twitter.com/rob_farley" target="_blank">@Rob_Farley</a>) admits that <a href="http://sqlblog.com/blogs/rob_farley/archive/2013/04/09/why-i-present.aspx" target="_blank">presenting is his drug</a> and he&#8217;s addicted to it. Rob loves presenting because &#8220;at least one of the people in the audience will benefit from it. And that&#8217;s addictive.&#8221; I couldn&#8217;t agree more, Rob!</p>
<p><a href="http://mattvelic.com/" target="_blank">Matt Velic</a> (<a href="https://twitter.com/mvelic" target="_blank">@mvelic</a>) got started presenting by reading at his church, and later through music and debate in high school and college. <a href="http://mattvelic.com/tsql-tuesday-41/" target="_blank">He credits presenting</a> with helping to boost his self-confidence, and likens it to a tool for helping others.</p>
<p><a href="http://sql.richarddouglas.co.uk/" target="_blank">Richard Douglas</a> (<a href="https://twitter.com/sqlrich" target="_blank">@SQLRich</a>) was also giving a presentation the night his post went live, so Michael J. Swart is in good company! Richard <a href="http://sql.richarddouglas.co.uk/archive/2013/04/t-sql-tuesday-41-presenting-and-loving-it.html" target="_blank">answered all my questions</a> individually; he too says some of his earliest &#8220;presentations&#8221; came in the form of musical performances. He also says that attending SQLBits was a real game-changer for him.</p>
<p><a href="http://www.jimmcleod.net/blog/" target="_blank">Jim McLeod</a> (<a href="http://www.twitter.com/Jim_McLeod" target="_blank">@Jim_McLeod</a>) <a href="http://www.jimmcleod.net/blog/index.php/2013/04/09/t-sql-tuesday-41-presenting-and-loving-it/" target="_blank">was not a fan</a> of presenting at first. (I think most of us fall into that bucket.) His opinion changed though when he started working at a laser tag centre, and had to give pre-game briefings to groups of up to 60 people. Technical presentations are of course a bit more involved than laser tag, but he still really enjoys them. Jim&#8217;s advice is to respect the audience &#8211; they are giving you their time so make sure it&#8217;s worth it.</p>
<p><a href="http://skreebydba.com/" target="_blank">Frank Gill</a> (<a href="https://twitter.com/skreebydba" target="_blank">@SkreebyDBA</a>) tells us that his <a href="http://skreebydba.com/2013/04/09/t-sql-tuesday-41-presenting-and-loving-it/" target="_blank">volunteering as a tour guide</a> at the <a href="http://www.artic.edu/" target="_blank">Art Institute of Chicago</a> has been a tremendous experience and he&#8217;s learned something new every time he gives a tour. He says his experiences with SQL Saturdays and user groups have been every bit as enjoyable.</p>
<p><a href="http://blogs.lessthandot.com/index.php/All/?disp=authdir&amp;author=420" target="_blank">Jes Schultz Borland</a> (<a href="http://twitter.com/grrl_geek" target="_blank">@grrl_geek</a>) tells us about<a href="http://blogs.lessthandot.com/index.php/ITProfessionals/ProfessionalDevelopment/t-sql-tuesday-41-presenting-1" target="_blank"> the steps she takes</a> to ensure that her presentations are successful. These include writing out detailed goals of the presentation before working on slides or demos, and lots of iterative practicing. As Jes puts it: &#8220;Simply, be prepared.&#8221; If it&#8217;s good enough for the Boy Scouts and for Jes, it&#8217;s good enough for me!</p>
<p><a href="http://blogs.lessthandot.com/index.php/All/?disp=authdir&amp;author=68" target="_blank">Ted Krueger</a> (<a href="http://twitter.com/onpnt" target="_blank">@onpnt</a>) makes excellent points about <a href="http://blogs.lessthandot.com/index.php/ITProfessionals/ProfessionalDevelopment/t-sql-tuesday-41-presenting" target="_blank">choosing topics and practicing</a>. Picking topics that interest us aren&#8217;t necessarily what will interest an audience &#8211; striking a balance is key. Similarly practicing does not ensure an error-free presentation &#8211; plenty of things outside of your control can go wrong, or the audience may not respond well. Being quick on your toes and adapting your talk to keep everyone interested can be very beneficial.</p>
<p><a href="http://www.jorriss.net/blog/" target="_blank">Richie Rump</a> (<a href="https://twitter.com/jorriss" target="_blank">@Jorriss</a>) wrote about<a href="http://www.jorriss.net/blog/archive/2013/04/09/t-sql-tuesday-41-how-i-started-presenting" target="_blank"> how he was inspired</a> to start presenting while at TechEd 2011, where he realized the he really enjoyed the networking opportunities. After receiving more encouragement on twitter, he submitted to speak at the 2011 South Florida IT Camp, was accepted, and had a blast!</p>
<p><a href="http://stuart-moore.com/" target="_blank">Stuart Moore</a> (<a href="https://twitter.com/napalmgram" target="_blank">@napalmgram</a>) felt like his career was stagnating. <a href="http://stuart-moore.com/t-sql-tuesday-41-how-i-learnt-to-love-presenting-got-bored-and-then-rekindled-the-flame/" target="_blank">After discovering</a> the rest of his team had similar feelings, they all decided to start giving presentations at work about the systems they each were responsible for. Stuart says it was awesome, but the thrill disappeared after a while, but then he discovered his local SQL user group, which he really enjoyed presenting at. At this point he has presented at 2 user group meetings and has submitted abstracts for a few SQL Saturdays.</p>
<p><a href="http://stevenormrod.com/" target="_blank">Steven Ormrod</a> (<a href="https://twitter.com/sqlavenger" target="_blank">@SQLAvenger</a>) made note of the<a href="http://stevenormrod.com/2013/04/t-sql-tuesday-41/" target="_blank"> interesting fact</a> that he hasn&#8217;t participated in a T-SQL Tuesday since the last time I hosted, nearly two years ago. Glad I can inspire you to take part!! Steven has an impressive list of experiences, including some time as a high school teacher. Back in the IT world, Steven wasn&#8217;t all that happy with how his career was progressing until he discovered PASS, and got hooked on speaking after presenting at his first user group meeting.</p>
<p><a href="http://david.gardiner.net.au/" target="_blank">David Gardiner</a> (<a href="https://twitter.com/DavidRGardiner" target="_blank">@DavidRGardiner</a>) thinks his first time in front of a group was probably when he taught Sunday School as a teenager. He makes a great point by saying that <a href="http://david.gardiner.net.au/2013/04/speaking-on-ssdt-at-adelaide-sql-user.html" target="_blank">presenting can be a two-way street</a>. &#8220;Sometimes you end up learning just as much from those you&#8217;re presenting to as you hope they did from you.&#8221;</p>
<p><a href="http://sqlblog.com/blogs/allen_white/default.aspx" target="_blank">Allen White</a> (<a href="https://twitter.com/sqlrunr" target="_blank">@SQLRunr</a>) got his start in public performance in the theatre, and <a href="http://sqlblog.com/blogs/allen_white/archive/2013/04/09/t-sql-tuesday-41-presenting-and-loving-it.aspx" target="_blank">I was surprised to find out</a> he was a theater major in college! He started attending Cleveland SQL Server User Group meetings about 8 years ago, and was presenting soon after that. Allen considers presenting to be &#8220;one of those magic activities in which everyone benefits&#8221;, and I couldn&#8217;t agree more!</p>
<p><a href="http://lance-england.com/" target="_blank">Lance England</a> (<a href="https://twitter.com/lanceengland" target="_blank">@lanceengland</a>) <a href="http://lance-england.com/blog/2013/4/9/t-sql-tuesday-41-presenting-and-loving-it" target="_blank">explains how he prepared</a> to give a recent presentation on MDX, and how much he enjoyed learning more about the language and building his confidence in the process. Sometimes getting forced out of one&#8217;s comfort zone is a great way to really learn a subject, because as Lance mentioned, &#8220;if you can&#8217;t explain it, you don&#8217;t know it.&#8221;</p>
<p><a href="http://mickeystuewe.com/" target="_blank">Mickey Stuewe</a> (<a href="https://twitter.com/sqlmickey" target="_blank">@SQLMickey</a>) tells us how she got her start right out of college <a href="http://mickeystuewe.com/2013/04/09/t-sql-tuesday-41it-all-started-with-a-flower/" target="_blank">teaching Microsoft Office</a> and became an MCT soon after. She also mentions how she wanted to motivate people to ask questions, so she started tossing out candy to those that did. (Great minds think alike, Mickey &#8211; I&#8217;ve actually used this method at a few SQL Saturdays!) She says the reason she loves presenting is the same as it&#8217;s been all along &#8211; she loves answering questions and helping people.</p>
<p><a href="http://www.sqlservercentral.com/blogs/pearlknows/" target="_blank">Robert Pearl</a> (<a href="https://twitter.com/pearlknows" target="_blank">@PearlKnows</a>) makes some excellent points, like<a href="http://www.sqlservercentral.com/blogs/pearlknows/2013/04/09/t-sql-41-presenting-and-loving-it/" target="_blank"> accepting constructive criticism</a> from the audience will make you a better presenter, and that just becuase you&#8217;re speaking doesn&#8217;t mean you are the smartest person in the room. Also on the topic of preparedness I&#8217;ve seen a few times now, Robert mentions that &#8220;when [unforeseen events] occur, it&#8217;s all about how you handle them.&#8221;</p>
<p><a href="http://sqlmd.wordpress.com/" target="_blank">Mike Donnelly</a> (<a href="https://twitter.com/sqlmd" target="_blank">@SQLMD</a>) states quite simply that <a href="http://sqlmd.wordpress.com/2013/04/09/i-hope-you-are-happy-t-sql-tuesday-41/" target="_blank">speaking makes him happy</a>. He shares a point from a blog he reads which says &#8220;Novelty and challenge bring happiness&#8221;, and public speaking gives him all those things.</p>
<p><a href="http://www.midnightdba.com/DBARant/" target="_blank">Sean McCown</a> (<a href="https://twitter.com/midnightdba" target="_blank">@MidnightDBA</a>) who always makes me smile, <a href="http://www.midnightdba.com/DBARant/?p=998" target="_blank">walks us through a presentation</a> from the idea to the abstract, and the big day itself. He also manages to mention <a href="http://en.wikipedia.org/wiki/Blazing_Saddles" target="_blank">Blazing Saddles</a> and <a href="http://en.wikipedia.org/wiki/The_A-Team" target="_blank">The A-Team</a>, both of which I watched at way too young an age. After reading this it&#8217;s clear that Sean and I both love it when a plan comes together, and it sounds like that&#8217;s just what happened in this presentation.</p>
<p><a href="http://www.gethynellis.com/" target="_blank">Gethyn Ellis</a> (<a href="https://twitter.com/gethyn_ellis" target="_blank">@gethyn_ellis</a>) tells how <a href="http://www.gethynellis.com/2013/04/tsql-tuesday-41presenting-and-loving-it.html" target="_blank">speaking didn&#8217;t come easy</a> to him at first, but he now makes a living teaching SQL Server learning courses. He offers the following advice: 1) you will always be nervous. 2) Nerves are a good thing &#8211; they make you prepare. 3) Being prepared is important &#8211; without it you will fail.</p>
<p><a href="http://thesqlagentman.com/" target="_blank">Tim Ford</a> (<a href="https://twitter.com/SQLAgentMan" target="_blank">@SQLAgentMan</a>) recalls the tale of how he was <a href="http://thesqlagentman.com/2013/04/t-sql-tuesday-41-trial-by-fire/" target="_blank">thrust into the spotlight</a> at the 2005 PASS Summit when the host for the Quizbowl suddenly had to cancel. Since then he&#8217;s presented at many events, both large and small, and even started SQL Cruise! Sounds to me like a great example of the awesome things that can come from bring thrown a curveball. Thanks, Tim!</p>
<p><a href="http://www.sqlballs.com/" target="_blank">Bradley Ball</a> (<a href="https://twitter.com/sqlballs" target="_blank">@SQLBalls</a>) <a href="http://www.sqlballs.com/2013/04/t-sql-tuesday-41-becoming-sql-server.html" target="_blank">got his first taste</a> of the SQL community through 24 hours of PASS, and attended SQL Saturday Orlando shortly thereafter. His first speaking experience was at SQL Saturday in Tampa, and from there he was hooked. He also apparently worked at the White House, which I&#8217;ll totally have to ask him about sometime.</p>
<p><a href="http://www.kendalvandyke.com/" target="_blank">Kendal Van Dyke</a> (<a href="https://twitter.com/sqldba" target="_blank">@SQLDBA</a>) didn&#8217;t think <a href="http://www.kendalvandyke.com/2013/04/t-sql-tuesday-41-presenting-opens-doors.html" target="_blank">his first presentation</a> about SQL Server XML in 2006 was a very big success, but it ended up earning him the ability to speak at SQL Saturday #1. Now he&#8217;s on the PASS Board and is Director of the SQL Saturday portfolio! Kendal says his career is very different than it was back in 2006, and that&#8217;s largely due to presenting. He advises new presenters to &#8220;be careful, because you might just walk away wanting to do it again!&#8221;</p>
<p><a href="http://tenbulls.co.uk/" target="_blank">Mark Broadbent</a> (<a href="https://twitter.com/retracement" target="_blank">@retracement</a>) gave his f<a href="http://tenbulls.co.uk/2013/04/09/t-sql-tuesday-41-i-%E2%99%A5-sqlbits/" target="_blank">irst-ever presentation</a> at SQLBits 7, and considers it to be &#8220;one of the most frightening, exhilarating, scary and rewarding experiences&#8221; he has ever had. Mark also credits the preparation for that event with improving his technical skills exponentially from where they were before. He has presented at every SQLBits since then.</p>
<p><a href="http://blog.wakebi.com/" target="_blank">Steve Wake</a> (<a href="https://twitter.com/stevewake" target="_blank">@stevewake</a>) is contributing to T-SQL Tuesday for the first time! Steve <a href="http://blog.wakebi.com/2013/04/t-sql-tuesday-41-presenting-and-loving.html" target="_blank">got his start</a> doing technical presenting at the Denver Visual Studio User Group and received lots of positive comments. From there he sought out other user groups and found the Denver SQL Server User Group. Since then he&#8217;s also started doing the SQL Saturday circuit, and presenting is now an integral part of his career.</p>
<p><a href="http://sqlgator.com/" target="_blank">Ed Watson</a> (<a href="https://twitter.com/sqlgator" target="_blank">@SQLGator</a>) tells us that he&#8217;s not in love with presenting &#8211; yet &#8211; <a href="http://sqlgator.com/2013/04/09/t-sql-tuesday-41-why-i-love-presenting/" target="_blank">but he&#8217;s getting there</a>. He used to avoid it like the plague, but the SQL community and the great experiences he&#8217;s had at SQL Saturdays have really been helping him conquer his aversion. Thanks for sharing, Ed!</p>
<p><a href="http://blogs.lessthandot.com/index.php/All/?disp=authdir&amp;author=994" target="_blank">Paul Timmerman</a> (<a href="https://twitter.com/mnDBA" target="_blank">@mnDBA</a>) is not only making his first T-SQL Tuesday blog post, but <a href="http://blogs.lessthandot.com/index.php/ITProfessionals/ProfessionalDevelopment/t-sql-tuesday-41-if" target="_blank">his first blog post</a> in general! Paul says he&#8217;s never really been afraid of speaking, just often found himself lacking the motivation to get up and do it. The SQL community has changed his mind, though, and he recently presented at both the PASSMN user group and SQL Saturday Madison. He is happy to report having excellent experiences both times, and I&#8217;m sure will be presenting more in the future!</p>
<p><a href="http://www.jamesdorame.com/" target="_blank">Jim Dorame</a> (<a href="https://twitter.com/dbajd" target="_blank">@DBAJD</a>) is also making his first T-SQL Tuesday contribution. He recently <a href="http://www.jamesdorame.com/index.php/2013/04/09/t-sql-tuesday-my-first-presentation-and-how-it-came-together-tsql2sday/" target="_blank">gave his first presentation</a> at SQL Saturday in Madison and was surprised by the positive reaction he got from attendees. He&#8217;s presenting again at SQL Saturday in Fargo this weekend and really looking forward to giving back to the community that has helped him throughout the years.</p>
<p><a href="http://blog.waynesheffield.com/wayne/" target="_blank">Wayne Sheffield</a> (<a href="https://twitter.com/DBAWayne" target="_blank">@DBAWayne</a>) cut his teeth presenting when he was in the US Navy and <a href="http://blog.waynesheffield.com/wayne/archive/2013/04/tuesday-41-presenting-and-loving-it/" target="_blank">had to conduct training</a> for his entire division. (That sounds it was in front of a lot of people, Wayne!) Later he was writing articles for SQLServerCentral.com and was encouraged to turn an particularly popular one into a presentation. Not only was the presentation a success, but Wayne discovered that he really enjoys watching others learn.</p>
<p><a href="http://blog.sqlpositive.com/" target="_blank">Luke Jian</a> (<a href="https://twitter.com/sensware" target="_blank">@sensware</a>) says &#8220;<a href="http://blog.sqlpositive.com/2013/04/a-journey-of-a-thousand-miles-begins-with-a-single-step/" target="_blank">a journey of a thousand miles begins with a single step</a>&#8221; which is an excellent quote, though I must admit the first time I heard it was when Wilson said it on Home Improvement. In Luke&#8217;s case this single step was at SQLskills IE1 2011 in Chicago, which I was very fortunate to be attending. I remember Luke getting up there and schooling us all in the ways of SSDs and think it&#8217;s awesome how many events he&#8217;s presented at since.</p>
<p><a href="http://www.sqlskills.com/blogs/erin/" target="_blank">Erin Stellato</a> (<a href="https://twitter.com/erinstellato" target="_blank">@erinstellato</a>) and I have even more in common than I previously thought &#8211; it turns out she was a campus tour guide in college just like me! As a graduate student in Kinesiology, Erin <a href="http://www.sqlskills.com/blogs/erin/t-sql-tuesday-41-presenting-and-loving-it/" target="_blank">had the opportunity</a> to teach an introductory course, which helped her realize that she loved teaching. Watching one student &#8220;get it&#8221; during her first rotation was particularly gratifying. Erin also makes the comment that the term &#8220;teaching&#8221; is a lot less scary than &#8220;presenting&#8221;, and I totally agree!</p>
<p><a href="http://www.mikefal.net/" target="_blank">Mike Fal</a> (<a href="https://twitter.com/mike_fal" target="_blank">@Mike_Fal</a>) tells us about the &#8220;hook&#8221;, which for him is more than a catchy Blues Traveler song. After his first ever presentation at the Denver SQL User Group he was told that &#8220;I&#8217;ve been a DBA for over twenty years. You taught me something new tonight.&#8221; Not only is that excellent, but in my opinion that&#8217;s exactly what the SQL community is all about.</p>
<p><a href="http://www.mssqlgirl.com/" target="_blank">Julie Koesmarno</a> (<a href="https://twitter.com/mssqlgirl" target="_blank">@MsSQLGirl</a>) started <a href="http://www.mssqlgirl.com/presenting-and-loving-it.html" target="_blank">doing one-on-one tutoring</a> for high school students, and later found herself doing the same for college students. After graduating, she started presenting and found she loved the discussion aspect and how we can all learn from each other.</p>
<p><a href="http://voiceofthedba.wordpress.com/" target="_blank">Steve Jones</a> (<a href="https://twitter.com/way0utwest" target="_blank">@way0utwest</a>) was apprehensive about <a href="http://voiceofthedba.wordpress.com/2013/04/09/t-sql-tuesday-41-i-love-presenting/" target="_blank">speaking in front of strangers</a> as many of us were, but much of this was overcome by working in the restaurant business and constantly meeting (and talking to) new people. His first technical presentation was at a PASS Summit, and while he didn&#8217;t jump in right away, a few years later he was presenting regularly. Steve really enjoys the chance to teach people and help them improve their careers.</p>
<p><a href="http://www.douglane.net/" target="_blank">Doug Lane</a> (<a href="https://twitter.com/thedouglane" target="_blank">@thedouglane</a>) argues that presenting is <a href="http://www.douglane.net/t-sql-tuesday-41-my-love-of-presenting-is-nothing-new/" target="_blank">essentially the same as performing</a>, which he did a lot of when younger, especially through band. He makes the point that presenting is a lot like doing an improv solo &#8211; there&#8217;s a framework (key, tempo, measures) but the rest is filled in on the fly.</p>
<p><a href="http://www.sqlsoldier.com/wp/" target="_blank">Robert L. Davis</a> (<a href="https://twitter.com/SQLSoldier" target="_blank">@SQLSoldier</a>) says he has never loved presenting more than when<a href="http://www.sqlsoldier.com/wp/sqlserver/tsqltuesday41presentingcomesfullcircleandiloveit" target="_blank"> someone pinged him for advice</a>. He was able to give guidance on how to submit, and after the person was selected he advised them on giving the actual presentation as well. Robert also was honored to be asked to sit in on the presentation for moral support, which he did. Not only does Robert mention bacon, but he also references <a href="http://en.wikipedia.org/wiki/Revenge_of_the_Nerds" target="_blank">Revenge of the Nerds</a>, another movie I watched at way too young an age. (My grandmother let me get away with murder when I would spend Saturdays at her house.)</p>
<p><a href="http://www.jasonstrate.com/" target="_blank">Jason Strate</a> (<a href="https://twitter.com/stratesql" target="_blank">@StrateSQL</a>) had no interest in presenting in front of groups for any reason until he went to work for his first consulting company, where one of his <a href="http://www.jasonstrate.com/2013/04/t-sql-tuesday-love-for-presenting-tsql2sday/" target="_blank">co-workers gave him the necessary kick in the rear</a> to try presenting at the Minnesota SQL Server User Group (PASSMN). Jason says this presentation is widely regarded as the worst talk in the history of the group, but he was convinced that he could do better than that, so he kept speaking.</p>
<p>And last but not least, me! Yes, <a href="http://www.bobpusateri.com/archive/2013/04/t-sql-tuesday-41-how-i-came-to-love-presenting/" target="_blank">I participated in the T-SQL Tuesday I hosted</a>.</p>
<p>Once again, thank you to everyone who participated! By my count there were 38 posts in all. Of those, 3 were from people participating in T-SQL Tuesday for the first time, 1 was a first blog post ever, and 2 were by people who were giving presentations the same day their post went live. How awesome is that?!?</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/TheOuterJoin?a=53CjT3IzF40:Bia4kxwogig:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/TheOuterJoin?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheOuterJoin?a=53CjT3IzF40:Bia4kxwogig:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/TheOuterJoin?i=53CjT3IzF40:Bia4kxwogig:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheOuterJoin/~4/53CjT3IzF40" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.bobpusateri.com/archive/2013/04/t-sql-tuesday-41-recap/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>T-SQL Tuesday #41 – How I Came to Love Presenting</title>
		<link>http://www.bobpusateri.com/archive/2013/04/t-sql-tuesday-41-how-i-came-to-love-presenting/</link>
		<comments>http://www.bobpusateri.com/archive/2013/04/t-sql-tuesday-41-how-i-came-to-love-presenting/#comments</comments>
		<pubDate>Tue, 09 Apr 2013 12:50:36 +0000</pubDate>
		<dc:creator>Bob Pusateri</dc:creator>
				<category><![CDATA[Personal]]></category>
		<category><![CDATA[TSQL Tuesday]]></category>

		<guid isPermaLink="false">http://www.bobpusateri.com/?p=1051</guid>
		<description><![CDATA[<p>This month&#8217;s T-SQL Tuesday is hosted by&#8230;ME! I asked everyone to share stories of how they came to love presenting, and I have not one but two tales of my own. They both took place at about the same time: my freshman year at the University of Illinois. I can&#8217;t remember which one came first, [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.bobpusateri.com/archive/2013/04/invitation-to-t-sql-tuesday-41-presenting-and-loving-it/" target="_blank"><img style=' float: right; padding: 4px; margin: 0 0 2px 7px;'  class="alignright" src="http://img.bobpusateri.com/bc/2010/06/TSQL2sDay150x150.jpg" alt="" width="150" height="150" /></a>This month&#8217;s <a href="http://www.bobpusateri.com/archive/2013/04/invitation-to-t-sql-tuesday-41-presenting-and-loving-it/" target="_blank">T-SQL Tuesday</a> is hosted by&#8230;ME! I asked everyone to share stories of how they came to love presenting, and I have not one but two tales of my own. They both took place at about the same time: my freshman year at the University of Illinois. I can&#8217;t remember which one came first, so you get to read both!</p>
<h4>Physics Van</h4>
<p>Shortly after classes began, my Physics 111 lecture was visited by Professor <a href="http://physics.illinois.edu/people/profile.asp?mats" target="_blank">Mats Selen</a>, who got everyone&#8217;s attention by putting a small amount of liquid nitrogen into a soda bottle. He capped it, threw it into a large plastic garbage can, and fastened the lid. Seconds later the lid touched the 20+ foot ceiling from the force of the explosion. He then explained if we were interested in doing things like this more often, come speak to him about joining the crew of the <a href="http://van.physics.illinois.edu/" target="_blank">Physics Van</a>. I was at his office within a day or two.</p>
<div class="wp-caption alignright" style="width: 410px;  border: 1px solid #dddddd; background-color: #f3f3f3; padding-top: 4px; margin: 10px; text-align:center; float: right;"><a href="http://img.bobpusateri.com/bc/2013/04/PhysVan.jpg" target="_blank"><img class=" " src="http://img.bobpusateri.com/bc/2013/04/PhysVan_Sm.jpg" alt="" width="400" height="300" /></a><p style=' padding: 0 4px 5px; margin: 0;'  class="wp-caption-text">Demonstrating the power of atmospheric pressure with <a href="http://en.wikipedia.org/wiki/Magdeburg_hemispheres" target="_blank">Magdeburg Hemispheres</a></p></div>
<p>The Physics Van is an outreach program that brings a free traveling science show to elementary schools and community groups, typically within an hour&#8217;s drive of campus. The hour-long program gets kids excited about science by demonstrating basic physics experiments, many with audience participation. Of course no science show would be complete without a few explosions thrown in as well!</p>
<p>Not only did I have an amazing time and meet some wonderful people, but Physics Van taught me a ton about stage presence and engaging an audience. I also learned how to be comfortable speaking in front of large groups, and that making something appear spontaneous takes <strong>lots</strong> of rehearsing. I&#8217;ll admit that getting up and talking in front of hundreds of people is much easier when your audience is in the 4th grade or younger. It&#8217;s also nearly impossible to <em>not</em> get kids that age excited about whatever you&#8217;re going to be doing. Whether they really enjoyed the show or were just happy to not be in class, we always saw tons of smiles from the audience. In my mind, it was the perfect environment to get comfortable with speaking.</p>
<p>Bonus! You may or may not find yours truly (circa 2003) in <a href="http://van.physics.illinois.edu/video.php" target="_blank">this video</a> of a show. <em>Disclaimer: it appears to require Internet Explorer (again, this was 2003.)</em></p>
<h4>Being a Campus Tour Guide</h4>
<p>One morning early in the year, my roommate and I were startled awake by the door to our room being unlocked. It opened quickly, we heard an &#8220;OHMYGODIMSORRY!&#8221;, it closed in an instant and we heard lots of people being shuffled out of the hallway. My dorm room had previously been the &#8220;model&#8221; room shown to tour groups (I knew this because I saw it when I cam for tours) and apparently some of the tour guides never got the memo.</p>
<div class="wp-caption alignright" style="width: 410px;  border: 1px solid #dddddd; background-color: #f3f3f3; padding-top: 4px; margin: 10px; text-align:center; float: right;"><a href="http://img.bobpusateri.com/bc/2013/04/Lamps.jpg" target="_blank"><img class=" " src="http://img.bobpusateri.com/bc/2013/04/Lamps_sm.jpg" alt="" width="400" height="300" /></a><p style=' padding: 0 4px 5px; margin: 0;'  class="wp-caption-text">My lava lamp collection was always a hit with tour groups. (And hey, check out those books I had even 12 years ago!)</p></div>
<p>This really didn&#8217;t bother me or my roommate. In fact, I went to the Campus Visitors Center and encouraged them to send tour groups to our room, as we could show them what a real, lived-in dorm room looks like. They liked that idea, so our room became a regular stop on the campus tour. The model room looked so fake anyway, with perfect furnishings all straight from the store. Ours may have been totally cluttered, but at least it was authentic!</p>
<p>Over the course of my freshman year, I made more contacts in the Admissions and Records office, and applied for a job as a tour guide for the following year (they don&#8217;t allow freshmen to give tours.) This ended up being my job for the next 4 years, and I loved it. Getting paid to share my love of the University with prospective students and their parents was awesome, and there were never any dull moments. I remember one time in particular where I was walking a tour group down the street and a good friend of mine saw us going by. She came up to me and started hitting on me like crazy in front of them. Told me to come by her place because she needed my help studying for her anatomy exam that night. The look on everyone&#8217;s faces was priceless! Another time I was taking my tour group into the dorm to show them my room, and my neighbor was standing at the front desk wearing nothing but a towel. He asked if he could speak to the group for a second, and then explained that his current state was a prime example of why you never forget your keys when going to shower, as his roommate had left and locked the door, leaving him waiting for the front desk to get him a copy!</p>
<p>Tour guides at U of I developed some great skills, like the ability to talk very loudly for an hour or more while walking backwards and not running into people or obstacles. We also had to be good at answering unexpected questions. Before or after each tour there was a formal question/answer session where several tour guides went in front of a room full of people and answered literally any question about the school that the audience could throw at us. As I&#8217;m sure you can believe, most questions weren&#8217;t simple ones, like &#8220;What&#8217;s a good place to eat?&#8221; The kids would ask questions like &#8220;Can we have members of the opposite sex in our dorm room?&#8221; Parents would ask &#8220;There seem to be a lot of bars near campus &#8211; how do I know that my Timmy isn&#8217;t going to become a drunkard?&#8221; It was an excellent exercise in coming up with appropriate answers with a positive spin, no matter how much we really wanted to say that as long as your roommate is cool with it, resident advisors aren&#8217;t going to care if your significant other spends the night or not.</p>
<p>So those are my stories. In both cases I had very positive experiences getting up in front of groups of people and speaking about things I love: science and the University of Illinois. When I think about it that way I guess it&#8217;s no surprise that I enjoy giving presentations about SQL Server as well.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/TheOuterJoin?a=_eAznmnkv94:i7e-e1SwtZE:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/TheOuterJoin?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheOuterJoin?a=_eAznmnkv94:i7e-e1SwtZE:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/TheOuterJoin?i=_eAznmnkv94:i7e-e1SwtZE:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheOuterJoin/~4/_eAznmnkv94" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.bobpusateri.com/archive/2013/04/t-sql-tuesday-41-how-i-came-to-love-presenting/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Invitation to T-SQL Tuesday #41 – Presenting and Loving it!</title>
		<link>http://www.bobpusateri.com/archive/2013/04/invitation-to-t-sql-tuesday-41-presenting-and-loving-it/</link>
		<comments>http://www.bobpusateri.com/archive/2013/04/invitation-to-t-sql-tuesday-41-presenting-and-loving-it/#comments</comments>
		<pubDate>Thu, 04 Apr 2013 12:50:12 +0000</pubDate>
		<dc:creator>Bob Pusateri</dc:creator>
				<category><![CDATA[TSQL Tuesday]]></category>

		<guid isPermaLink="false">http://www.bobpusateri.com/?p=1036</guid>
		<description><![CDATA[<p>It&#8217;s been almost two years since I last hosted T-SQL Tuesday, and I&#8217;m very happy to be doing so again! If you&#8217;re not already familiar, T-SQL Tuesday was the brainchild of Adam Machanic (@AdamMachanic), who prophesized that we all could benefit from &#8220;a recurring, revolving blog party&#8221; with a new topic given each month. This [...]]]></description>
			<content:encoded><![CDATA[<p><img style=' float: right; padding: 4px; margin: 0 0 2px 7px;'  class="alignright" src="http://img.bobpusateri.com/bc/2010/06/TSQL2sDay150x150.jpg" alt="" width="150" height="150" />It&#8217;s been almost two years since I last hosted T-SQL Tuesday, and I&#8217;m very happy to be doing so again! If you&#8217;re not already familiar, T-SQL Tuesday was the brainchild of <a href="http://sqlblog.com/blogs/adam_machanic/" target="_blank">Adam Machanic</a> (<a href="https://twitter.com/AdamMachanic" target="_blank">@AdamMachanic</a>), who prophesized that we all could benefit from &#8220;a recurring, revolving blog party&#8221; with a new topic given each month. This month&#8217;s T-SQL Tuesday will take place on <strong>Tuesday, April 9, 2013</strong>.</p>
<h4>What&#8217;s the Topic?</h4>
<p>This month the prompt is <strong>how did you come to love presenting?</strong> What was the first time you gave a presentation in front of a group <strong>and really enjoyed it</strong>? Was it something that was required of you in school? Something you did in the workplace? Were you inspired by other SQL community members and thought &#8220;I think I can do that too&#8221;? Whatever your story is, I&#8217;d love to hear it. <strong>Not a presenter? Not a problem! </strong>Feel free to chime in with whatever you like that&#8217;s related to either presenting or SQL Server in general.</p>
<h4>The Fine Print</h4>
<p>- Your post must be published between 00:00 GMT Tuesday April 9, 2013 and 00:00 GMT Wednesday April 10, 2013.<br />
- Your post must contain the T-SQL Tuesday logo at the top (see above) and the image must link back to this blog post.<br />
- Trackbacks should work, but if not please put a link to your post in the comments section so everyone can see your contribution!</p>
<h4>Extra Credit</h4>
<p>The following are not required, but might be a good idea.</p>
<p>- Include “T-SQL Tuesday #41″ in your blog post’s title.<br />
- Tweet about your post using the <a href="http://twitter.com/#!/search/%23tsql2sday" target="_blank">#tsql2sday hashtag</a>.<br />
- Make one or more references to bacon or other pork products.<br />
- Contact Adam Machanic and tell him you&#8217;d like to host a T-SQL Tuesday from your blog. If you&#8217;ve kept up your blog monthly for the last 6 months and participated in at least 2 previous T-SQL Tuesdays you are eligible.</p>
<p>I&#8217;ll be reading everyone&#8217;s post shortly thereafter and will create a summary of what everyone wrote about. Happy writing!</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/TheOuterJoin?a=O-zzXhbBjJ8:ePuJwTSoyHg:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/TheOuterJoin?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheOuterJoin?a=O-zzXhbBjJ8:ePuJwTSoyHg:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/TheOuterJoin?i=O-zzXhbBjJ8:ePuJwTSoyHg:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheOuterJoin/~4/O-zzXhbBjJ8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.bobpusateri.com/archive/2013/04/invitation-to-t-sql-tuesday-41-presenting-and-loving-it/feed/</wfw:commentRss>
		<slash:comments>47</slash:comments>
		</item>
		<item>
		<title>SQL Saturday Chicago Update</title>
		<link>http://www.bobpusateri.com/archive/2013/03/sql-saturday-211-chicago-update/</link>
		<comments>http://www.bobpusateri.com/archive/2013/03/sql-saturday-211-chicago-update/#comments</comments>
		<pubDate>Wed, 27 Mar 2013 12:26:31 +0000</pubDate>
		<dc:creator>Bob Pusateri</dc:creator>
				<category><![CDATA[Events]]></category>

		<guid isPermaLink="false">http://www.bobpusateri.com/?p=1000</guid>
		<description><![CDATA[<p style=' padding: 0 4px 5px; margin: 0;'  class="wp-caption-text">Portillo&#8217;s beef sandwiches are best when the entire sandwich is dipped in gravy so the bread becomes gelatinous. (Used with permission)</p>
<p>SQL Saturday #211: Chicago 2013 is approaching quickly! I&#8217;ve gotten a few emails inquiring about what food will be served, and I&#8217;m very happy to announce [...]]]></description>
			<content:encoded><![CDATA[<div class="wp-caption alignright" style="width: 410px;  border: 1px solid #dddddd; background-color: #f3f3f3; padding-top: 4px; margin: 10px; text-align:center; float: right;"><a href="http://www.valbromann.com/photography/going-away-parties/portillos-01.jpg.php" target="_blank"><img class=" " src="http://img.bobpusateri.com/bc/2013/03/Beef.jpg" alt="" width="400" height="300" /></a><p style=' padding: 0 4px 5px; margin: 0;'  class="wp-caption-text">Portillo&#8217;s beef sandwiches are best when the entire sandwich is dipped in gravy so the bread becomes gelatinous. (Used with permission)</p></div>
<p><a href="http://www.sqlsaturday.com/211/eventhome.aspx" target="_blank">SQL Saturday #211: Chicago 2013</a> is approaching quickly! I&#8217;ve gotten a few emails inquiring about what food will be served, and I&#8217;m very happy to announce that lunch for this year&#8217;s SQL Saturday Chicago will once again be catered by <a href="http://www.portillos.com/portillos/" target="_blank">Portillo&#8217;s</a>! The menu will consist of their famous Italian Beef sandwiches, salad, and Mostaccioli. We will have grilled veggie sandwiches available for those of you who requested a vegetarian option. <strong>Please PLEASE </strong>be sure to check the vegetarian meal box on your registration form if you need one. We will have very few extra veggie sandwiches (if any), so we need an accurate count to be able to plan ahead.</p>
<p>In other news, the <a href="http://www.sqlsaturday.com/211/schedule.aspx" target="_blank">schedule</a> has now been posted. We have an amazing lineup of speakers this year, many of whom have traveled great distances to share their knowledge with you for free. Please help make sure their sessions are absolutely packed! Registration is still open, so <a href="http://www.sqlsaturday.com/211/register.aspx" target="_blank">sign up today</a> if you haven&#8217;t already.</p>
<p>We&#8217;re looking forward to another great time! Hope to see you there!</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/TheOuterJoin?a=CDng0GRtjrQ:6DwuWeUjk6U:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/TheOuterJoin?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheOuterJoin?a=CDng0GRtjrQ:6DwuWeUjk6U:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/TheOuterJoin?i=CDng0GRtjrQ:6DwuWeUjk6U:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheOuterJoin/~4/CDng0GRtjrQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.bobpusateri.com/archive/2013/03/sql-saturday-211-chicago-update/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How NOT to Fill a Position</title>
		<link>http://www.bobpusateri.com/archive/2013/03/how-not-to-fill-a-position/</link>
		<comments>http://www.bobpusateri.com/archive/2013/03/how-not-to-fill-a-position/#comments</comments>
		<pubDate>Tue, 19 Mar 2013 12:36:41 +0000</pubDate>
		<dc:creator>Bob Pusateri</dc:creator>
				<category><![CDATA[Thoughts]]></category>

		<guid isPermaLink="false">http://www.bobpusateri.com/?p=979</guid>
		<description><![CDATA[<p>Last week while at work I received a phone call from a recruiter. It was pretty standard until they decided to turn into a jerk. I sent the following letter to the recruiter&#8217;s agency. I doubt I&#8217;ll get a reply, but if I do I will be sure to share it here. Identifying info has [...]]]></description>
			<content:encoded><![CDATA[<p><em><a href="http://www.flickr.com/photos/cgc/5259321/" target="_blank"><img style=' float: right; padding: 4px; margin: 0 0 2px 7px;'  class="alignright" src="http://img.bobpusateri.com/bc/2013/03/phone.jpg" alt="" width="350" height="238" /></a>Last week while at work I received a phone call from a recruiter. It was pretty standard until they decided to turn into a jerk. I sent the following letter to the recruiter&#8217;s agency. I doubt I&#8217;ll get a reply, but if I do I will be sure to share it here. Identifying info has been removed to protect the not-so-innocent.</em></p>
<p>Dear &lt;redacted&gt;,</p>
<p>I received a phone call at work last week from &lt;redacted&gt;, one of your recruiters. Getting phone calls from recruiters during the work day is a fairly common occurrence, but I&#8217;m sure you will agree that the rest of this call was very uncommon.</p>
<p>&lt;Redacted&gt; said their records showed I&#8217;ve been working for Northwestern University for nearly two years, and they were curious if I was interested in pursuing any new opportunities. I told them I was not interested at this time, but if they would be willing to send me a job description with a salary range I would be happy to forward it to others I know. I am fortunate to have lots of contacts in the SQL Server world, and I know a few who are currently seeking out new positions.</p>
<p>Most recruiters are happy to take me up on offers like this, and I have generated some interviews through this manner in the past. &lt;Redacted&gt; was clearly not as enthusiastic about this, as they snapped back with a &#8220;Well why aren&#8217;t you interested? How do you even know you&#8217;re not interested if I haven&#8217;t even told you about the position yet?&#8221; They proceeded to explain the position &#8211; a production DBA for a respected local company that&#8217;s been in the &lt;X&gt; industry for over &lt;Y&gt; years. I was happy to hear this was at least a position relevant to my experience &#8211; I&#8217;ve received calls in the past for things like <em>&#8220;an exciting position staffing the overnight help desk at a company in [some other state]. And if you play your cards right, you&#8217;ll have the chance to move into a junior developer role after a few years!&#8221;</em></p>
<p>Still I told them I wasn&#8217;t interested, and this is where things got really strange. (I will paraphrase as best I can.) &#8220;Let me give you a piece of advice&#8221;, they said. &#8220;I&#8217;ve been an IT recruiter for &lt;Z&gt; years, and as long as you work for a University, I know for a fact that your career is going nowhere. I&#8217;m sure it&#8217;s comfortable there, but you&#8217;re not doing anything interesting, you&#8217;re not growing your skills, and you will find yourself with a whole lot less respect the next time you are looking to change employers.&#8221;</p>
<p>Wow. I told them I&#8217;m very sorry they feel that way, and that in fact I&#8217;m doing some incredibly interesting projects right now. &#8220;So <em>what is it</em> that you&#8217;re doing? I want to hear this&#8221; they said, their voice dripping with sarcasm. &#8220;Well you already told me what I&#8217;m doing is not interesting, so why should I waste my time explaining it?&#8221; I said. I thanked them for taking the time to call me, and said I needed to get back to not growing my skills. &lt;Redacted&gt; hung up before I had the opportunity to end our conversation. How professional of them.</p>
<p>Is this really the way you do business? I am no expert in the field of recruiting, but I&#8217;m pretty sure that insulting your product (yes, I do realize that I am the product, not the client) is not going to result in any placements or productive relationships in the future. If &lt;redacted&gt; has managed to stay in the business for &lt;Z&gt; years while acting like that, that&#8217;s pretty pathetic.</p>
<p>Despite what &lt;redacted&gt; told me, I happen to be furthering my career right now in ways that weren&#8217;t even possible in my previous positions. While I enjoy my current role and have no plans to leave it in the short term, I don&#8217;t plan to stay there forever either. There will come a time where I&#8217;ll find myself in need of new challenges. I sincerely hope that my next career move is to the type of position that&#8217;s not posted anywhere and hence I won&#8217;t be needing the services of a recruiter. But if that doesn&#8217;t happen, I am absolutely sure that I will never, ever, do business with &lt;redacted&gt; or your agency again. Please remove me from all of your directories and lists immediately.</p>
<p>Sincerely,</p>
<p>Bob Pusateri<br />
SQL Server DBA with a career that&#8217;s &#8220;going nowhere&#8221;</p>
<h4>Moral of the Story</h4>
<p>First of all, the vast majority of recruiters <strong>are not</strong> like this. It is by far in a recruiter&#8217;s best interest to build a positive relationship with you, because even if the job they&#8217;re contacting you about isn&#8217;t something you&#8217;re interested in, chances are good that in the future they&#8217;ll find something that does interest you.</p>
<p>Second, there are <strong>lots</strong> of recruiters and job placement agencies out there. If you get a cold call from someone who&#8217;s being a jerk, I wouldn&#8217;t hesitate to tell them to remove you from their records and take your business elsewhere. Others will be more than happy to assist you in your job search.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/TheOuterJoin?a=NAMNhs30pQY:9RW5VLGrYCU:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/TheOuterJoin?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheOuterJoin?a=NAMNhs30pQY:9RW5VLGrYCU:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/TheOuterJoin?i=NAMNhs30pQY:9RW5VLGrYCU:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheOuterJoin/~4/NAMNhs30pQY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.bobpusateri.com/archive/2013/03/how-not-to-fill-a-position/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Moving A Database to New Storage With No Downtime</title>
		<link>http://www.bobpusateri.com/archive/2013/03/moving-a-database-to-new-storage-with-no-downtime/</link>
		<comments>http://www.bobpusateri.com/archive/2013/03/moving-a-database-to-new-storage-with-no-downtime/#comments</comments>
		<pubDate>Tue, 12 Mar 2013 12:39:52 +0000</pubDate>
		<dc:creator>Bob Pusateri</dc:creator>
				<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[SQLServerPedia Syndication]]></category>
		<category><![CDATA[TSQL Tuesday]]></category>

		<guid isPermaLink="false">http://www.bobpusateri.com/?p=908</guid>
		<description><![CDATA[<p>It&#8217;s once again the second Tuesday of the month, meaning it&#8217;s T-SQL Tuesday! This month&#8217;s topic comes to us from Jen McCown (blog &#124; @JenniferMcCown). Jen is asking us to share our knowledge about filegroups, and it just so happens that I have a story about migrating to new storage that involved a large number [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.midnightdba.com/Jen/2013/03/invitation-to-t-sql-tuesday-040-file-and-filegroup-wisdom/" target="_blank"><img style=' float: right; padding: 4px; margin: 0 0 2px 7px;'  class="alignright" title="T-SQL Tuesday!" src="http://img.bobpusateri.com/bc/2010/06/TSQL2sDay150x150.jpg" alt="T-SQL Tuesday Logo" width="150" height="150" /></a>It&#8217;s once again the second Tuesday of the month, meaning it&#8217;s <a href="http://www.midnightdba.com/Jen/2013/03/invitation-to-t-sql-tuesday-040-file-and-filegroup-wisdom/" target="_blank">T-SQL Tuesday</a>! This month&#8217;s topic comes to us from Jen McCown (<a href="http://www.midnightdba.com/Jen/" target="_blank">blog</a> | <a href="https://twitter.com/JenniferMcCown" target="_blank">@JenniferMcCown</a>). Jen is asking us to share our knowledge about <strong>filegroups</strong>, and it just so happens that I have a story about migrating to new storage that involved a large number of file and filegroup operations.</p>
<h4>The Problem</h4>
<p>At work we have been very fortunate to get a new SAN, and I was charged with moving data from the old SAN to the new one. This data falls under 2 main groups: large numbers of small files which can be moved at any time without consequence, and data files from the production SQL Server database. I covered how I moved the non-database files in a <a href="http://www.bobpusateri.com/archive/2013/02/verifying-file-copymove-operations-with-microsoft-file-checksum-integrity-verifier/" target="_blank">previous post on the Microsoft FCIV</a>. This time I&#8217;ll cover the larger task of moving the databases. To make things much more <del>difficult</del> interesting, I did not have the luxury of being able to take any downtime to accomplish this move. Making use of pre-scheduled maintenance windows was fine, but those are typically 2 hours every 2-3 months, not nearly enough time to move the 22TB of data that was in need of migration.</p>
<p>Just to be clear, the instance of SQL Server was not moving or changing at all. The server was connected to both the old and new SANs, and the objective was to move a particular database from old to new. Yes, there are other databases on the server, but they are located on other storage and did not need to be moved. We use SQL Server 2008 R2 Enterprise Edition, so at least I had the full arsenal of functionality available to me.</p>
<p>I began listing out all the ways to move data that I could think of, and started disqualifying from there:</p>
<p><strong>Copy the files</strong>. This would be easy and relatively fast, but requires taking the database offline to move the files. Since uptime is paramount, this is a no-go.</p>
<p><strong>Online index rebuilds</strong>. Using enterprise edition means it&#8217;s possible to rebuild tables and indexes online without interrupting users. It is also possible to move objects to a new filegroup online as well. This is very useful, but comes with some limitations. Prior to SQL Server 2012, indexes containing LOB (large object) information such as columns of type image, ntext, text, varchar(max), nvarchar(max), varbinary(max) and xml can&#8217;t be rebuilt online. SQL Server 2012 has improved this feature so this limitation only applies to image, ntext, and text columns, which are deprecated anyway. But even though SQL Server 2012 lets you perform online rebuilds of tables with LOB data, it still won&#8217;t let you move the LOB data to a different filegroup. This solution gives us the uptime we require, but unfortunately can&#8217;t move everything.</p>
<p><strong>Mirroring</strong>. Much like a <a href="http://msdn.microsoft.com/en-us/library/bb677181.aspx" target="_blank">rolling upgrade</a>, mirroring can be used to migrate a database between instances. You can set up a mirroring session with the mirror server on the instance you want to migrate to, manually fail over, and you&#8217;re now on the new instance.  Unfortunately it won&#8217;t work in this case because the primary and mirror databases can&#8217;t reside on the same instance.</p>
<p><strong>Backup and restore onto the new SAN</strong>. This is a very strong candidate, especially since I can backup the database in about 3 hours and restore it almost as quickly. Restoring a backup on the new storage (with a different database name) can take place while the current database remains online. Cutting over would involve backing up the tail of the transaction log on the old database, restoring it on the new one, and then swapping names. The cutover would be quick enough to fit in a maintenance window, making this a very attractive option. I ended up choosing against it because the new storage would be partitioned differently than the old storage  and adjusting the files and filegroups and then rebuilding objects across them would make the process more complicated than the solution I ended up choosing.</p>
<p><strong>Add and remove files from the filegroup</strong>. This approach can be very useful, but rarely gets mentioned. SQL Server allows you to add and remove files from filegroups at almost any time, and this can be leveraged to move data between different storage systems. What makes it awesome is that the operation is completely online with no interruptions to the user, all types of data (including LOB data) is moved, <em>and</em> it works in any edition of SQL Server. As always, there are trade-offs. Shrinking data files is generally frowned upon as it causes <a href="http://www.sqlskills.com/blogs/paul/why-you-should-not-shrink-your-data-files/" target="_blank">high levels of fragmentation</a>. It&#8217;s also very slow, and <a href="http://www.sqlskills.com/blogs/paul/why-lob-data-makes-shrink-run-slooooowly-t-sql-tuesday-006/" target="_blank">LOB data makes it even slower</a>. Still, fragmentation can be solved using REBUILD or REORGANIZE, and if speed is not important, it could be the way to go.</p>
<h4>My Solution</h4>
<p>The add/remove file method is best for preserving uptime, but due to its slow speed I decided to use a hybrid solution with 4 parts:</p>
<p><strong>1.</strong> All tables &amp; indexes that can be rebuilt online on a new filegroup are moved to a temporary filegroup on the new storage.</p>
<p><strong>2.</strong> The remaining tables &amp; indexes are moved via adding &amp; removing files to the original filegroup.</p>
<p><strong>3.</strong> The contents of the temporary filegroup are moved back into the original filegroup via online rebuilds.</p>
<p><strong>4.</strong> The transaction log and primary filegroup (which cannot be moved by the add/remove method) are moved during a scheduled downtime.</p>
<p>The image below shows our starting state: the new SAN is empty, while the old SAN has a (non-primary) filegroup [FG1] with files A, B, and C in it, each 1GB in size. Most systems will contain more filegroups, but for simplicity I only show one here.</p>
<p><img style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter" src="http://img.bobpusateri.com/bc/2013/03/Files1.png" alt="" width="600" height="400" /></p>
<p>The first step was <strong>online index rebuilds</strong>. For each filegroup on the old SAN I created a temporary one on the new SAN. For example, in this case of having [FG1] on the old storage, I&#8217;d create filegroup [FG1_Temp] on the new storage. Then I did online rebuilds onto the temp filegroup for each table and index that would allow it. This can be an arduous task for filegroups with large numbers of objects, so I created a powershell script to automate this which I&#8217;m happy to share. Creating the new filegroup and files can be done via the following T-SQL:</p>
<pre class="brush: sql; title: ; notranslate">
ALTER DATABASE DB_Name ADD FILEGROUP FG1_Temp;

ALTER DATABASE DB_Name ADD FILE
(NAME = 'X', FILENAME = 'path_to_san2\X.ndf', SIZE = 1GB, FILEGROWTH = 1GB),
(NAME = 'Y', FILENAME = 'path_to_san2\Y.ndf', SIZE = 1GB, FILEGROWTH = 1GB),
(NAME = 'Z', FILENAME = 'path_to_san2\Z.ndf', SIZE = 1GB, FILEGROWTH = 1GB)
TO FILEGROUP FG1_Temp;
</pre>
<p>The powershell script will move objects online from one filegroup to another. Objects which cannot be moved online will be ignored. When you open the script file you will see variables that need to be filled in for the server name, database name, and source and destination filegroups, and a folder to log to. Optionally you can filter by schema name, object name, and size.</p>
<p>I am happy to share this with the community, but please be advised of the following: This script needs to run in <a href="http://msdn.microsoft.com/en-us/library/cc280450.aspx" target="_blank">sqlps</a>, the SQL Server powershell extension. It was written for and tested on SQL Server 2008 R2. I have not tested it on SQL Server 2012. I do not consider this to be perfect or in any sort of a finished state. <strong><span style="color: #ff0000;">And as always it is your responsibility to read and understand this code before running it on your own systems. Always test in a development environment, no warranty is expressed or implied, etc. etc., use at your own risk!</span></strong></p>
<p><strong><a href="http://img.bobpusateri.com/bc/2013/03/OnlineFilegroupMigration.zip" target="_blank">You can download the script here</a>.</strong></p>
<p>After the online filegroup migration, the storage layout will appear as follows, with a temporary filegroup on the New SAN:</p>
<p><img style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter" src="http://img.bobpusateri.com/bc/2013/03/Files2.png" alt="Storage 2" width="600" height="400" /></p>
<p>Once the migration script has completed, the old storage will contain the original filegroup with all the objects which could not be moved online. At this point all those objects still need to be moved onto the new storage, and the best (and perhaps the only) way to do this in an online fashion is by<strong> adding and removing files from the filegroup</strong>.</p>
<p>Here&#8217;s how it works: SQL Server allows the addition and removal of files from filegroups at almost any time via the <a href="http://msdn.microsoft.com/en-us/library/bb522469.aspx" target="_blank">ALTER DATABASE</a> command. (You can&#8217;t add or remove files while a backup is running.) A filegroup can be extended onto new storage by adding files to it which are located on the new storage. The script below shows how to do this by adding files D, E, and F, located on SAN 2.</p>
<pre class="brush: sql; title: ; notranslate">
ALTER DATABASE DB_Name ADD FILE
(NAME = 'D', FILENAME = 'path_to_san2\D.ndf', SIZE = 1GB, FILEGROWTH = 1GB),
(NAME = 'E', FILENAME = 'path_to_san2\E.ndf', SIZE = 1GB, FILEGROWTH = 1GB),
(NAME = 'F', FILENAME = 'path_to_san2\F.ndf', SIZE = 1GB, FILEGROWTH = 1GB)
TO FILEGROUP FG1;
</pre>
<p>After executing that, filegroup [FG1] is now spread across the old and new storage with 3 files on each SAN, as well as the 3 files containing the temporary filegroup [FG1_temp] on the new SAN:</p>
<p><img style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter" src="http://img.bobpusateri.com/bc/2013/03/Files3.png" alt="Storage 3" width="600" height="400" /></p>
<p>At this point, files D, E, and F contain very little data, if any at all. Merely creating a file doesn&#8217;t mean it will be populated with existing data, though SQL Server will start to make use of it for operations that allocate space on disk from here on out. The objective now is to remove files A, B, and C, so the filegroup has no presence on the Old SAN. This is done using the <a href="http://msdn.microsoft.com/en-us/library/ms189493.aspx" target="_blank">DBCC SHRINKFILE</a> command with the EMPTYFILE argument, which will remove all of the data from the file by distributing it across the other files in the filegroup. Depending on the size of the file and the amount of data it contains, this operation can take a <em>long</em> time. Fortunately if you have to stop it, the work that has already been performed will not be lost. Once a file has been emptied in this manner it can be removed by using ALTER DATABASE. The code to accomplish this is as follows:</p>
<pre class="brush: sql; title: ; notranslate">
DBCC SHRINKFILE (A, EMPTYFILE);
ALTER DATABASE DB_NAME REMOVE FILE A;

DBCC SHRINKFILE (B, EMPTYFILE);
ALTER DATABASE DB_NAME REMOVE FILE B;

DBCC SHRINKFILE (C, EMPTYFILE);
ALTER DATABASE DB_NAME REMOVE FILE C;
</pre>
<p>When this is complete, filegroup [FG1] will only exist on the new SAN, however there is now 2 filegroups and we started with 1. Filegroup [FG1_Temp] can be removed once all objects in it have been moved back into filegroup [FG1], again using the online migration script. I realize this method involves rebuilding some objects more than once, however in my testing it was still faster than moving everything by adding/removing files from the filegroup. I would imagine your mileage will vary depending on your environment and the number of tables containing LOB data, but this is what worked best for me. On my system about 80% of objects could be moved online, leaving only 20% that needed to be moved via the slower method.</p>
<p><img style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter" src="http://img.bobpusateri.com/bc/2013/03/Files4.png" alt="Storage 4" width="600" height="400" /></p>
<p>Once the online rebuild script completes, things will be nearly complete. All data will be in its original filegroup on the new SAN. Filegroup [FG1_Temp] and its files can now be removed via the following script:</p>
<pre class="brush: sql; title: ; notranslate">
ALTER DATABASE DB_Name REMOVE FILE X;
ALTER DATABASE DB_Name REMOVE FILE Y;
ALTER DATABASE DB_Name REMOVE FILE Z;

ALTER DATABASE DB_Name REMOVE FILEGROUP FG1_Temp;
</pre>
<p><img style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter" src="http://img.bobpusateri.com/bc/2013/03/Files5.png" alt="Storage 5" width="600" height="400" /></p>
<p>Once this is repeated for each filegroup in the database, the job will be almost complete. The primary filegroup and transaction log cannot be moved using either method just discussed, so a downtime will be required to move them to the new storage. I was able to make use of existing maintenance windows to detach the database, copy the files to the new SAN,and reattach it. Everything came back up without incident.</p>
<p>At this point the only issue left to tackle is fragmentation. The data that was moved via online rebuilds is not affected, but tables and indexes moved via the add/remove files method will be very highly fragmented. The quickest way to resolve high levels of fragmentation is to rebuild an index, but these are the indexes which cannot be rebuilt online! If an offline rebuild is not possible (and since uptime was very important in my case it wasn&#8217;t possible) the next best method is to use the REORGANIZE argument of the <a href="http://technet.microsoft.com/en-us/library/ms188388.aspx" target="_blank">ALTER INDEX</a> statement. REORGANIZE is typically slower than REBUILD, but it will allow the index to remain online for users while it runs.</p>
<h4>Final Thoughts</h4>
<p>I don&#8217;t consider this method to be perfect by any means, but it worked rather well for me given the uptime requirements I had to meet. Thank you very much Jen for the excellent topic, and thank you to all of you who kept reading to the end! I hope this proves helpful!</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/TheOuterJoin?a=ab7Fio-oIiU:TjdUJms5h2Q:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/TheOuterJoin?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheOuterJoin?a=ab7Fio-oIiU:TjdUJms5h2Q:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/TheOuterJoin?i=ab7Fio-oIiU:TjdUJms5h2Q:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheOuterJoin/~4/ab7Fio-oIiU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.bobpusateri.com/archive/2013/03/moving-a-database-to-new-storage-with-no-downtime/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>Speaking at SQL Saturday #206: Wisconsin 2013!</title>
		<link>http://www.bobpusateri.com/archive/2013/03/speaking-at-sql-sat-206-wisconsin-2013/</link>
		<comments>http://www.bobpusateri.com/archive/2013/03/speaking-at-sql-sat-206-wisconsin-2013/#comments</comments>
		<pubDate>Wed, 06 Mar 2013 15:48:41 +0000</pubDate>
		<dc:creator>Bob Pusateri</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[Upcoming Presentations]]></category>

		<guid isPermaLink="false">http://www.bobpusateri.com/?p=890</guid>
		<description><![CDATA[<p>I am very happy and honored to have been chosen as a presenter at SQL Saturday #206 coming up on April 6, 2013 in Madison, Wisconsin! As I previously mentioned I had a wonderful time there last year and am definitely looking forward to heading back.</p>
<p>This time around I&#8217;ll be giving a new presentation on [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://sqlsaturday.com/206/eventhome.aspx" target="_blank"><img style=' float: right; padding: 4px; margin: 0 0 2px 7px;'  class="alignright" src="http://img.bobpusateri.com/bc/2013/03/sqlsat206_web.png" alt="" width="236" height="115" /></a>I am very happy and honored to have been chosen as a presenter at <a href="http://sqlsaturday.com/206/eventhome.aspx" target="_blank">SQL Saturday #206</a> coming up on April 6, 2013 in Madison, Wisconsin! As I <a href="http://www.bobpusateri.com/archive/2013/01/sql-saturday-returns-to-chicago-a-fourth-time/" target="_blank">previously mentioned</a> I had <a href="http://www.bobpusateri.com/archive/2012/04/sql-saturday-118-wisconsin-style/" target="_blank">a wonderful time</a> there last year and am definitely looking forward to heading back.</p>
<p>This time around I&#8217;ll be giving a new presentation on tuning backups and restores. Despite what your SAN administrator might tell you about snapshots, you <strong>really do</strong> need to run backups on your databases, so it&#8217;s to your advantage to make sure your backup and restore processes complete as quickly as possible. I&#8217;ll be covering tips and tricks that can help dramatically speed them up so you can save the day <em>that much</em> sooner!</p>
<p>The team up in Wisconsin has put together a great <a href="http://sqlsaturday.com/206/schedule.aspx" target="_blank">schedule</a> that you won&#8217;t want to miss. And as of right now, you won&#8217;t have to! <a href="http://sqlsaturday.com/206/register.aspx" target="_blank">Registration is still open</a>, so sign up today!</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/TheOuterJoin?a=9DXYGLFGxDI:dJ5VI7pAjxs:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/TheOuterJoin?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheOuterJoin?a=9DXYGLFGxDI:dJ5VI7pAjxs:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/TheOuterJoin?i=9DXYGLFGxDI:dJ5VI7pAjxs:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheOuterJoin/~4/9DXYGLFGxDI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.bobpusateri.com/archive/2013/03/speaking-at-sql-sat-206-wisconsin-2013/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Verifying File Copy/Move Operations With Microsoft File Checksum Integrity Verifier</title>
		<link>http://www.bobpusateri.com/archive/2013/02/verifying-file-copymove-operations-with-microsoft-file-checksum-integrity-verifier/</link>
		<comments>http://www.bobpusateri.com/archive/2013/02/verifying-file-copymove-operations-with-microsoft-file-checksum-integrity-verifier/#comments</comments>
		<pubDate>Wed, 20 Feb 2013 13:56:22 +0000</pubDate>
		<dc:creator>Bob Pusateri</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://www.bobpusateri.com/?p=860</guid>
		<description><![CDATA[<p>Being a DBA and data professional doesn&#8217;t mean I always work with SQL Server &#8211; sometimes I&#8217;m not working with databases at all. We&#8217;ve recently acquired some new storage at work (aka Daddy Warbucks bought us a new SAN) and I&#8217;ve been charged with moving things to it. Some aspects of this are easier than [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/thebusybrain/2492945625/" target="_blank"><img style=' float: right; padding: 4px; margin: 0 0 2px 7px;'  class="alignright" src="http://img.bobpusateri.com/bc/2013/02/appleOrange.jpg" alt="apple &amp; orange" width="350" height="271" /></a>Being a DBA and data professional doesn&#8217;t mean I always work with SQL Server &#8211; sometimes I&#8217;m not working with databases at all. We&#8217;ve recently acquired some new storage at work (aka Daddy Warbucks bought us a new SAN) and I&#8217;ve been charged with moving things to it. Some aspects of this are easier than others and there will be a few more posts coming about that in the future.</p>
<p>For now though, let&#8217;s talk about copying files. Lots of files. Server logs, audit logs, things like that. Mostly they were small in size but large in quantity. I ended up with a handful of directories with several thousand files in them that needed to move from SAN A to SAN B. Windows gives us several ways to do this:</p>
<ul>
<li>Copy in Windows Explorer (ewww)</li>
<li>The good ol&#8217; DOS <a href="http://technet.microsoft.com/en-us/library/cc771997(WS.10).aspx" target="_blank">Copy</a> command</li>
<li><a href="http://technet.microsoft.com/en-us/library/bb491035.aspx" target="_blank">Xcopy</a>, which offers a few more features</li>
<li><a href="http://technet.microsoft.com/en-us/library/cc733145(WS.10).aspx" target="_blank">Robocopy</a>, the most advanced of the MS copy utilities (though I believe it prefers to be called Murphy)</li>
</ul>
<p>All of these will do a fine job of copying your files, though Robocopy will probably be the fastest due to its multithreading capabilities. But how do you know they all reached their destination intact? Copy and Xcopy offer the option of verification (both using the /v parameter) but sadly Robocopy does not. I&#8217;m not sure if verification is just built-in to Robocopy and can&#8217;t be disabled, or if it doesn&#8217;t exist at all. Either way I didn&#8217;t want to risk errors in moving all this data, so I decided to go the extra mile and use another tool to make sure. It didn&#8217;t take me long to find the <a href="http://support.microsoft.com/kb/841290" target="_blank">Microsoft File Checksum Integrity Verifier</a> (&#8220;FCIV&#8221; for short), a nifty little unsupported command-line utility that does exactly what I was looking for.</p>
<h4>FCIV In A Nutshell</h4>
<p>Basically, FCIV calculates <a href="http://en.wikipedia.org/wiki/MD5" target="_blank">MD5</a> or <a href="http://en.wikipedia.org/wiki/Sha-1" target="_blank">SHA-1</a> hash values for files and outputs them either to the screen or to an XML file. It can also compare files to those checksums saved in XML and tell you if anything differs or is missing. A demo is worth a lot of words, so let&#8217;s see it in action!</p>
<ul>
<li><a href="http://support.microsoft.com/kb/841290" target="_blank">Download Microsoft FCIV</a> and extract the executable wherever you like &#8211; for this demo I put it in G:\</li>
<li><a href="http://img.bobpusateri.com/bc/2013/02/demofiles.zip" target="_blank">Download the demo files</a> and extract them. I put mine in G:\demofiles</li>
<li>Use FCIV to generate checksums of all files in the folder and save to an XML file with the following syntax:</li>
</ul>
<p><strong><code>fciv.exe -add G:\demofiles -wp -sha1 -xml G:\hashdb.xml</code></strong></p>
<p><strong><code>-wp</code></strong> means we&#8217;re saving only the file names in the XML file, not their full path<br />
<strong><code>-sha1</code></strong> specifies to calculate a SHA-1 hash on each file. The default is MD5.<br />
<strong><code>-xml</code></strong> means output the checksums to an XML file, in this case the G:\hashdb.xml that follows it.</p>
<p><img style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter" src="http://img.bobpusateri.com/bc/2013/02/fciv_create.png" alt="fciv create screenshot" width="633" height="264" /></p>
<p>Let&#8217;s open up that XML file and see what it contains:</p>
<p><img style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter" src="http://img.bobpusateri.com/bc/2013/02/fciv_db.png" alt="fciv xml file" width="489" height="588" /></p>
<p>As you can see it&#8217;s very simple, just the file names and a checksum for each. Now let&#8217;s make a few changes.</p>
<ul>
<li>Change the name of the directory the files are in. I changed mine from &#8220;demofiles&#8221; to &#8220;demofiles2&#8243;.</li>
<li>Delete fileE.txt</li>
<li>In fileD.txt, delete the line that says &#8220;***DELETE THIS LINE***&#8221;</li>
</ul>
<p>Now let&#8217;s use FCIV to verify our files against the checksums we captured in the XML file. Change the current directory to demofiles2 (it won&#8217;t work unless you do this) and then run</p>
<p><strong><code>G:\fciv.exe -v -sha1 -xml G:\hashdb.xml</code></strong></p>
<p><strong><code>-v</code></strong> means we&#8217;re now in verification mode, so it will verify checksums in the current directory against those in the XML file<br />
<strong><code>-sha1</code></strong> again specifies we&#8217;re using the SHA-1 hash<br />
<strong><code>-xml</code></strong> is the file we&#8217;re comparing our calculated checksums against</p>
<p>Here&#8217;s the output it produces:</p>
<p><img style=' display: block; margin-right: auto; margin-left: auto;'  class="aligncenter" src="http://img.bobpusateri.com/bc/2013/02/fciv_verify.png" alt="fciv file verify" width="677" height="392" /></p>
<p>As you can see, FCIV is telling us that the contents of fileD have changed and fileE is missing. It&#8217;s really that easy!</p>
<h4>Final Thoughts</h4>
<p>I think FCIV is a great utility to keep in your toolbox. Some people may argue that checksum verification isn&#8217;t necessary &#8211; that Windows does it for you behind the scenes. That may be entirely true, but I wasn&#8217;t able to find any concrete documentation proving that it does. Then 10 minutes I spent finding this program online and figuring it out is a very small price to pay for some extra peace of mind in knowing that thousands of files made it to their destination intact.</p>
<p>Others may raise the point that both the MD5 and SHA-1 checksums both suffer from collision vulnerabilities and there are better alternatives out there that this application doesn&#8217;t support. They&#8217;re totally correct, but it&#8217;s also important to remember that we&#8217;re using these checksums to detect changes, not for cryptography or protecting secrets. Any form of verification is better than none, and for my purposes FCIV has proven to be very helpful.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/TheOuterJoin?a=HRp73AE1NSY:QBXdxO0leio:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/TheOuterJoin?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheOuterJoin?a=HRp73AE1NSY:QBXdxO0leio:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/TheOuterJoin?i=HRp73AE1NSY:QBXdxO0leio:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheOuterJoin/~4/HRp73AE1NSY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.bobpusateri.com/archive/2013/02/verifying-file-copymove-operations-with-microsoft-file-checksum-integrity-verifier/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Bigger Databases Aren’t Always Better</title>
		<link>http://www.bobpusateri.com/archive/2013/02/bigger-databases-arent-always-better/</link>
		<comments>http://www.bobpusateri.com/archive/2013/02/bigger-databases-arent-always-better/#comments</comments>
		<pubDate>Tue, 12 Feb 2013 13:36:06 +0000</pubDate>
		<dc:creator>Bob Pusateri</dc:creator>
				<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[SQLServerPedia Syndication]]></category>

		<guid isPermaLink="false">http://www.bobpusateri.com/?p=785</guid>
		<description><![CDATA[<p>I&#8217;m fortunate to be able to work with some rather large SQL Server instances on a daily basis, including databases over 25TB in size. Due to their bulk, &#8220;VLDBs&#8221; (Very Large Databases) present some challenges for DBAs: following best practices for small transactional systems might not be feasible on a VLDB. Regular maintenance processes such [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m fortunate to be able to work with some rather large SQL Server instances on a daily basis, including databases over 25TB in size. Due to their bulk, &#8220;VLDBs&#8221; (Very Large Databases) present some challenges for DBAs: following best practices for small transactional systems might not be feasible on a VLDB. Regular maintenance processes such as backups and integrity checks take longer when there&#8217;s more data to scan. You also really need to think twice before doing something like adding an index to a 2TB table! I&#8217;ve learned a ton about working with VLDBs in the time I&#8217;ve been at my current job, and I hope to share a lot of that knowledge here in the coming months.</p>
<p>Let&#8217;s say you have a database that receives daily imports from your company&#8217;s accounting system so users can query it and create reports. This setup becomes popular, and management asks you to add weekly loads from the payroll software. You begin importing payroll into the same database and all is good until you get a request to add hourly updates from the inventory application. These requests continue, and after a few additional systems you now have a really large database on your hands. VLDBs are great when they have a purpose and fulfill a need. If a database is huge only because more and more unrelated things kept being added to it, however, that purpose starts going the way of the <a href="http://en.wikipedia.org/wiki/Dodo" target="_blank">dodo</a>.</p>
<div class="wp-caption alignright" style="width: 310px;  border: 1px solid #dddddd; background-color: #f3f3f3; padding-top: 4px; margin: 10px; text-align:center; float: right;"><a href="http://media.tumblr.com/tumblr_lxd19bVR0p1qm7d4s.jpg" target="_blank"><img class="  " src="http://img.bobpusateri.com/bc/2013/02/big.jpg" alt="Big" width="300" height="387" /></a><p style=' padding: 0 4px 5px; margin: 0;'  class="wp-caption-text">Bigger than necessary</p></div>
<p>So we now have a database that contains data from multiple systems that are being updated at different frequencies. This is where things have the potential to get hairy. Records in the database&#8217;s copy of the accounting system, which is loaded daily, may not have corresponding entries in its copy of the payroll system, which is only loaded weekly. Even if all the systems were loaded into the database at the exact same rate there is no guarantee that all the corresponding records would be available at the same time across systems. Backups are also starting to take a considerable amount of time due to the volume of data they contain. At this point it&#8217;s probably worth taking a step back and looking at how the system is designed. A single database may be meeting our needs, but when manageability starts to become difficult we might be better served by making some changes.</p>
<p>SQL Server implements many features at the database level, however the core functionalities of a database in my opinion are logical consistency and recovery. Logical consistency (the &#8220;C&#8221; in <a href="http://en.wikipedia.org/wiki/ACID" target="_blank">ACID</a>) guarantees that the database will always be in a consistent state. This state is enforced through transactions made possible by the database&#8217;s transaction log. In our scenario the database is doing all this work to ensure everything is always in a consistent state, however there&#8217;s no consistency between the different systems being stored within the database.</p>
<p>Backups, restores and recovery also take place in terms of the entire database. You can recover to any point in time (assuming the database is using the full recovery model), but you&#8217;re recovering the <em>entire database</em> to that point in time. Restoring our example database may bring us to a point in time where the payroll system was fully loaded, however the accounting system&#8217;s load was only halfway complete. There&#8217;s no way to recover only part of the database further ahead in time than the rest.</p>
<p>In this situation since the separate systems within the database will never be consistent with each other I would lean towards splitting this database up into multiple smaller databases, one for each system. There are many pros and cons to this &#8211; here are some of the larger points:</p>
<p><strong>Pros:</strong></p>
<ul>
<li>Individual databases are smaller and more manageable than a single large database. Maintenance tasks such as integrity checks will take less time due to the smaller size.</li>
<li>Backups and restores will be smaller and will take less time.</li>
<li>Databases can be recovered individually. Should one database need to be taken offline the others will be unaffected. All downtimes are bad, but a partial downtime is often better than having everything unavailable!</li>
<li>The systems won&#8217;t have to share a transaction log when in separate databases. This can result in increased performance when the transaction logs are placed on separate disks.</li>
</ul>
<p><strong>Cons:</strong></p>
<ul>
<li>You now have more databases to maintain.</li>
<li>It&#8217;s more difficult (but not impossible) to figure out the state of all the different systems at a particular point in time when they&#8217;re in separate databases.</li>
<li>Users will most likely be required to connect to multiple databases.</li>
<li>Setting up security will involve a bit more work, especially in the likely situation of having to accomodate joins across databases.</li>
</ul>
<p>In many of the cases I&#8217;ve seen, splitting things up into multiple databases has been worth the trouble. VLDBs that were getting too large for their own good were transformed into several smaller databases that were much easier to manage. Having to connect to multiple databases proves to be trivial for most users, and things can be further simplified by creating views where appropriate.</p>
<h4>Final Thoughts</h4>
<p>VLDBs aren&#8217;t a bad thing. As time progresses it will only become more common to have a lot of closely-related data that warrants a very large database. But when a database is huge for no good reason it may be better off being split up. This is especially true in cases where the database contains data from multiple disparate sources. When faced with bringing a new dataset into your environment it&#8217;s an excellent time to think about whether this data belongs in its own database or not. While it&#8217;s easy to keep adding to a giant &#8220;one stop shop&#8221; database, bigger isn&#8217;t always going to be better.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/TheOuterJoin?a=TY7DVKyF3_I:Y1JtdcIV1-4:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/TheOuterJoin?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheOuterJoin?a=TY7DVKyF3_I:Y1JtdcIV1-4:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/TheOuterJoin?i=TY7DVKyF3_I:Y1JtdcIV1-4:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheOuterJoin/~4/TY7DVKyF3_I" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.bobpusateri.com/archive/2013/02/bigger-databases-arent-always-better/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Cat Bites Suck.</title>
		<link>http://www.bobpusateri.com/archive/2013/01/cat-bites-suck/</link>
		<comments>http://www.bobpusateri.com/archive/2013/01/cat-bites-suck/#comments</comments>
		<pubDate>Wed, 30 Jan 2013 13:09:20 +0000</pubDate>
		<dc:creator>Bob Pusateri</dc:creator>
				<category><![CDATA[Personal]]></category>

		<guid isPermaLink="false">http://www.bobpusateri.com/?p=794</guid>
		<description><![CDATA[<p style=' padding: 0 4px 5px; margin: 0;'  class="wp-caption-text">During one of his more sophisticated moments (Click to Enlarge)</p>
<p>Meet Oliver, our big orange kitty. At 16 pounds, he&#8217;s large and in charge &#8211; the complete opposite of the scrawny kitten we brought home from the shelter 5 1/2 years ago. He&#8217;s the perfect mix of [...]]]></description>
			<content:encoded><![CDATA[<div class="wp-caption alignright" style="width: 360px;  border: 1px solid #dddddd; background-color: #f3f3f3; padding-top: 4px; margin: 10px; text-align:center; float: right;"><a href="http://img.bobpusateri.com/bc/2013/01/cb02_lg.jpg" target="_blank"><img class="   " title="Oliver" src="http://img.bobpusateri.com/bc/2013/01/cb02_sm.jpg" alt="" width="350" height="233" /></a><p style=' padding: 0 4px 5px; margin: 0;'  class="wp-caption-text">During one of his more sophisticated moments (Click to Enlarge)</p></div>
<p>Meet Oliver, our big orange kitty. At 16 pounds, he&#8217;s large and in charge &#8211; the complete opposite of the scrawny kitten we brought home from the shelter 5 1/2 years ago. He&#8217;s the perfect mix of predator and sweet lap cat, but for all that he hypes his hunting skills, he&#8217;s never been outside and is afraid of his own shadow. Though not totally his fault, he&#8217;s made life around our house much more interesting since the beginning of the year.</p>
<p><strong>Monday 31 December, 6:00pm</strong>  As has become tradition in recent years, we have some guests over for New Year&#8217;s Eve. Oliver tends to get stressed out around people he doesn&#8217;t know, so we set him up in a bedroom with his food, toys, and litter box.</p>
<p><strong>7:00pm</strong>  One of our guests goes upstairs to see Oliver, accompanied by my wife Michelle. They were trying to pet  Oliver and play with him, but Oliver got scared and was backing away. Eventually finding himself cornered, Oliver went into self-defense mode and tried to bite our guest in order to get away. Michelle intervened and ended up getting bit on her middle finger. She was bleeding a little bit and cleaned it up immediately with soap, water, and rubbing alcohol, finishing with a bandage. I saw that she got bit, but didn&#8217;t think much of it. We&#8217;ve both been bitten hundreds of times before so no big deal, right?</p>
<p><em>Unbenkownst to me as the evening went on, Michelle&#8217;s bandage kept on getting tighter and tighter. She changed it at one point, thinking she had put it on too tight. She also thought maybe her finger was broken. It continued to swell and throb with pain.</em></p>
<p><strong>Tuesday 1 January, 1:00am</strong>  Our guests leave and Michelle tells me that her finger has been swelling the entire evening and is now to the point that she can no longer move it. Since that&#8217;s clearly not a good sign, we head to the emergency room. Thankfully it&#8217;s still slow there as most bars haven&#8217;t closed yet. We are seen right away.</p>
<p><strong>2:30am</strong>  After a thorough cleaning and x-ray, we head home with a prescription for large antibiotic pills. The doctor says it may take a day or two for the drugs to kick in, but we should return if Michelle gets a fever. It&#8217;s a crappy way to start 2013, but we figure the worst is behind us.</p>
<div class="wp-caption aligncenter" style="width: 360px;  border: 1px solid #dddddd; background-color: #f3f3f3; padding-top: 4px; margin: 10px; text-align:center; display: block; margin-right: auto; margin-left: auto;"><a href="http://img.bobpusateri.com/bc/2013/01/cb01_lg.jpg" target="_blank"><img title="After 6 Hours" src="http://img.bobpusateri.com/bc/2013/01/cb01_sm.jpg" alt="" width="350" height="261" /></a><p style=' padding: 0 4px 5px; margin: 0;'  class="wp-caption-text">After 6 Hours</p></div>
<p><strong>12:00pm</strong>  Her finger definitely doesn&#8217;t look any better yet, in fact it looks like it might be swelling even more. Since she&#8217;s been on the drugs for less than 12 hours, we decide to give them some time to work, rather than being those people that run right back to the ER.</p>
<p><strong>9:00pm</strong>  It&#8217;s definitely swelling more and oozing some pus as well. Comparing to photos we took earlier, it looks like her adjacent fingers are also swelling a little bit. We still aren&#8217;t at the 24 hour mark though, so Michelle opts to sleep on it and return to the hospital in the morning if things don&#8217;t appear better. I am told to go work like usual and she will keep me posted with what&#8217;s going on.</p>
<p><strong>Wednesday 2 January 7:00am</strong>  Michelle sends me a photo of her hand and it&#8217;s looking worse yet. The adjacent fingers are definitely swollen, and the swelling and redness is starting to spread down the back of her hand. I forward the photo to one of my closest friends who happens to be a clinical pharmacist. She shows it to some doctors she works with and their replies are along the lines of &#8220;What hospital is she at and what are they treating her with?&#8221; She advises me to have Michelle go back to the hospital immediately.</p>
<p><strong>8:00am</strong>  Workaholic that she is, Michelle goes to work to make sure all her things are in order. Despite the fact that her body is battling a major infection, she&#8217;d rather make sure her preschoolers have their juice ordered before checking into the hospital.</p>
<p><strong>9:30am</strong> Michelle heads back to the emergency department, and is started on IV antibiotics and painkillers. They decide to admit her soon after. I catch the first available train out of Chicago, but that&#8217;s not until the early afternoon.</p>
<p><strong>4:00pm</strong>  I join Michelle at the hospital. She&#8217;s seen by a few doctors. They tell her that a hand surgeon will be coming to see her, but they probably won&#8217;t be doing anything until tomorrow.</p>
<div class="wp-caption aligncenter" style="width: 360px;  border: 1px solid #dddddd; background-color: #f3f3f3; padding-top: 4px; margin: 10px; text-align:center; display: block; margin-right: auto; margin-left: auto;"><a href="http://img.bobpusateri.com/bc/2013/01/cb06_lg.jpg" target="_blank"><img title="After 45 Hours" src="http://img.bobpusateri.com/bc/2013/01/cb06_sm.jpg" alt="" width="350" height="261" /></a><p style=' padding: 0 4px 5px; margin: 0;'  class="wp-caption-text">After 45 Hours</p></div>
<p><strong>5:30pm</strong>  Michelle is seen by an orthopedic hand surgeon. He takes one look at it and says he&#8217;s going to do emergency surgery immediately.</p>
<div class="wp-caption alignright" style="width: 271px;  border: 1px solid #dddddd; background-color: #f3f3f3; padding-top: 4px; margin: 10px; text-align:center; float: right;"><a href="http://img.bobpusateri.com/bc/2013/01/cb09_lg.jpg" target="_blank"><img class=" " title="Virtually No Hands" src="http://img.bobpusateri.com/bc/2013/01/cb09_sm.jpg" alt="" width="261" height="350" /></a><p style=' padding: 0 4px 5px; margin: 0;'  class="wp-caption-text">Virtually No Hands!</p></div>
<p><strong>8:30pm</strong>  Michelle is out of surgery. Her doctor tells me they were able to remove all of the infection, but some of it had spread to inside her knuckle joint. He had to open the joint to get everything out, which means a longer recovery.  She&#8217;s very hungry when we get back to her room, but the hospital cafeteria is closed for the night. Her nurse gets us a sandwich and some apple sauce. Since Michelle&#8217;s right hand is wrapped up the size of a football and the other is tethered by an IV, I hand feed her after a few vomiting sessions (great practice for when we have kids, right?)</p>
<p><strong>Thursday 3 January 7:00am</strong>  Surgeon comes to see us but says he&#8217;s not taking the dressings off her hand until tomorrow. He invites us to &#8220;watch a lot of TV and have a boring day.&#8221;</p>
<p><strong>10:00am</strong>  Infectious disease doc comes in and says that whenever Michelle is discharged, she will be on IV antibiotics at home for a month. She doesn&#8217;t explain this very well, and leads us to believe we&#8217;ll have to use needles and give her an IV once a day. This does not sound pleasant.</p>
<p><strong>10:15am</strong>  Our nurse sees Michelle freaking out at the thought of having to deal with needles every day, and explains that she will be getting a <a href="http://en.wikipedia.org/wiki/Peripherally_inserted_central_catheter" target="_blank">PICC line</a> and there are no needles involved. Crisis averted.</p>
<p><strong>12:30pm</strong>  PICC nurse comes to give Michelle her PICC line. It&#8217;s a sterile procedure so I have to leave the room.</p>
<p>We spend the rest of the day watching TV, taking a couple of laps around the floor, and talking with Michelle&#8217;s sister who came to visit us. I also learn how to put her hair in a ponytail. I learned a lot of knots in Boy Scouts, but they all have nothing on a good ponytail!</p>
<p><strong>Friday 4 January 6:30am</strong>  Orthopedic surgeon comes in and removes the dressing. Her finger looks pretty good considering everything it&#8217;s been through. The doctor left the wound open (no stitches) so that it would drain itself if necessary. He says as far as he&#8217;s concerned Michelle should be going home today, though the infectious disease doc will have to agree.</p>
<div class="wp-caption aligncenter" style="width: 360px;  border: 1px solid #dddddd; background-color: #f3f3f3; padding-top: 4px; margin: 10px; text-align:center; display: block; margin-right: auto; margin-left: auto;"><a href="http://img.bobpusateri.com/bc/2013/01/cb10_lg.jpg" target="_blank"><img title="Post Surgery" src="http://img.bobpusateri.com/bc/2013/01/cb10_sm.jpg" alt="" width="350" height="261" /></a><p style=' padding: 0 4px 5px; margin: 0;'  class="wp-caption-text">Post Surgery</p></div>
<p><strong>2:00pm</strong>  Infectious disease doc stops by and says we will be going home today. He explains the drug Michelle will be on at home and wants her to have one dose at the hospital just in case she has any adverse reactions to it. He orders the new drug and says we&#8217;ll be able to leave as soon as she gets it. &#8220;It should be coming up from the pharmacy in about 15 minutes.&#8221;</p>
<div class="wp-caption alignright" style="width: 271px;  border: 1px solid #dddddd; background-color: #f3f3f3; padding-top: 4px; margin: 10px; text-align:center; float: right;"><a href="http://img.bobpusateri.com/bc/2013/01/cb15_lg.jpg" target="_blank"><img class=" " title="PICC Line" src="http://img.bobpusateri.com/bc/2013/01/cb15_sm.jpg" alt="" width="261" height="350" /></a><p style=' padding: 0 4px 5px; margin: 0;'  class="wp-caption-text">What a PICC line looks like</p></div>
<p><strong>4:00pm</strong>  Drug finally arrives from pharmacy. Over the time we&#8217;ve spent in the hospital I&#8217;ve crafted Pusateri&#8217;s Law™:  Pretty much every time the hospital gives you a timeline for something, it will really take at least four times as long as they claim.</p>
<p><strong>4:30pm</strong>  After a crash-course in PICC line maintenance from our nurse, including a stern warning not to do any drugs through it (and I bought all that heroin for nothing&#8230;) we are done and Michelle is discharged! We head to the pharmacy to pick up her prescription for painkillers, and then go home so I can wash her hair. My parents show up a little later with dinner in tow (thanks Mom &amp; Dad!)</p>
<p>Since then we&#8217;ve gotten into the routine of doing Michelle&#8217;s medication infusion every evening. With the drugs and various flushes it comes to 6 syringes per day. She also gets weekly visits from a home care nurse who comes to change the dressing on her PICC. Two weeks ago she had to have her PICC removed and re-placed on her other arm due to a blood clot forming near it (this is not typical.) Her finger is healing nicely but she has yet to regain full motion in it and will be starting occupational therapy soon.</p>
<h4>Moral of the story</h4>
<div class="wp-caption alignright" style="width: 360px;  border: 1px solid #dddddd; background-color: #f3f3f3; padding-top: 4px; margin: 10px; text-align:center; float: right;"><a href="http://img.bobpusateri.com/bc/2013/01/cb13_lg.jpg" target="_blank"><img class=" " title="Drugs" src="http://img.bobpusateri.com/bc/2013/01/cb13_sm.jpg" alt="" width="350" height="261" /></a><p style=' padding: 0 4px 5px; margin: 0;'  class="wp-caption-text">A fun night of doing drugs at the Pusateri house</p></div>
<p>Cats are not evil, but when you corner them (or any other animal) they will of course protect themselves. If you find yourself bit by one and the area starts swelling, get to an emergency room immediately. We were told that over 80% of cat bites result in an infection, way more than dogs. This is because cat teeth are long and skinny and create puncture wounds that can deposit bacteria very deeply beneath the skin.</p>
<p><strong>Update: </strong>Several people have asked if we got rid of Oliver. <strong>Absolutely not!!</strong> He&#8217;s not a mean cat at all &#8211; he&#8217;s our baby and he was just reacting like any other scared animal would. Neither of us can imagine life around our house without him.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/TheOuterJoin?a=EQv0WMTFCxs:4oNm0C5hdGU:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/TheOuterJoin?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/TheOuterJoin?a=EQv0WMTFCxs:4oNm0C5hdGU:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/TheOuterJoin?i=EQv0WMTFCxs:4oNm0C5hdGU:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/TheOuterJoin/~4/EQv0WMTFCxs" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.bobpusateri.com/archive/2013/01/cat-bites-suck/feed/</wfw:commentRss>
		<slash:comments>24</slash:comments>
		</item>
	</channel>
</rss><!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Page Caching using disk: enhanced

 Served from: www.bobpusateri.com @ 2013-05-09 00:16:53 by W3 Total Cache -->
