Search results matching tag 'Consulting'http://sqlblog.com/search/SearchResults.aspx?o=DateDescending&tag=Consulting&orTags=0Search results matching tag 'Consulting'en-USCommunityServer 2.1 SP2 (Build: 61129.1)Agile or Waterfall?http://sqlblog.com/blogs/andy_leonard/archive/2016/10/20/agile-or-waterfall.aspxThu, 20 Oct 2016 16:26:08 GMT21093a07-8b3d-42db-8cbf-3350fcbf5496:62049andyleonard<p><a href="https://en.wikipedia.org/wiki/Waterfall_model" target="_blank">Waterfall</a> project management is a serial approach to the phases of a project. Proponents of waterfall methodologies hold it’s best to plan: gather requirements, design the solution, develop it, test it, deploy and maintain it in discrete steps. Critics maintain it is impossible to know all of the requirements prior to design or development.</p> <p><a href="http://sqlblog.com/blogs/andy_leonard/Waterfall_54B4C66E.jpg"><img title="Waterfall" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="Waterfall" src="http://sqlblog.com/blogs/andy_leonard/Waterfall_thumb_7D702BB7.jpg" width="366" height="272" /></a> <br /><font size="2">by Peter Kemp / Paul Smith - Adapted from Paul Smith's work at wikipedia, CC BY 3.0, <a href="https://commons.wikimedia.org/w/index.php?curid=10633070">https://commons.wikimedia.org/w/index.php?curid=10633070</a></font></p> <p><a href="https://en.wikipedia.org/wiki/Agile_software_development" target="_blank">Agile</a> project management is an iterative process whereby developers focus on deliverables in short deliverable cycles. Proponents of Agile methodologies believe these practices more accurately reflect the complex nature of software development and place more decision-making with the developer. Critics (accurately) point out that Agile projects are fluid in schedule and impossible to predict – especially when it comes to time and money.</p> <p><strong>Which is Better?</strong> </p> <p>The answer is: it depends. “What does it depend on, Andy? “ I’m glad you asked!</p> <p>First, we need to accept that there are no pure Agile (iterative) or Waterfall projects. Every project is a blend. But every project also leans <em>towards</em> iterative or waterfall. </p> <p><strong>What do You Prefer for Managing Business Intelligence Projects?</strong></p> <p>I lean towards <a href="https://en.wikipedia.org/wiki/Scrum_(software_development)" target="_blank">Scrum</a>, an Agile project management methodology for managing business intelligence projects. </p> <p>&#160;</p> <p>&#160;<a href="http://sqlblog.com/blogs/andy_leonard/Scrum_11894841.jpg"><img title="Scrum" style="border-top:0px;border-right:0px;background-image:none;border-bottom:0px;padding-top:0px;padding-left:0px;border-left:0px;display:inline;padding-right:0px;" border="0" alt="Scrum" src="http://sqlblog.com/blogs/andy_leonard/Scrum_thumb_377EF897.jpg" width="493" height="234" /></a> <br /><font size="2">By Lakeworks - Own work, GFDL, <a href="https://commons.wikimedia.org/w/index.php?curid=3526338">https://commons.wikimedia.org/w/index.php?curid=3526338</a> </font></p> <p>The critics of Agile are correct: there is no way to predict the end date and, therefore, the cost of a project. From a business perspective, stakeholders often feel they are being asked to continue writing checks without knowing how many more checks they will have to write, or for how long, or for how much. The critics of Waterfall are also correct: some – most, in fact – software development projects are simply inestimable. I’ve <a href="http://sqlblog.com/blogs/andy_leonard/archive/2009/09/11/adventures-in-estimation.aspx" target="_blank">written</a> about <a href="http://sqlblog.com/blogs/andy_leonard/archive/2008/10/27/on-estimating-software.aspx" target="_blank">software</a> <a href="http://sqlblog.com/blogs/andy_leonard/archive/2013/10/26/can-you-see-me-think.aspx" target="_blank">estimation</a> in the past, sometimes in the context of project management.&#160; </p> <p>Is there some way to limit the business risk? Yes there is…</p> <p><strong>Risk-Balanced Project Management</strong></p> <p>Remember, no project is purely Agile or Waterfall. I’ve been practicing a risk-balanced methodology for decades. How does it work? I combine the best of both worlds: Agile and Waterfall. Here’s an over-simplified explanation of how we deliver projects at <a href="http://entdna.com" target="_blank">Enterprise Data &amp; Analytics</a>: We treat each Scrum Sprint (iteration) as a small Waterfall project. </p> <p>Sprints remain focused on deliverables. They <em>must</em>, or they’re not sprints. The developer makes the call about what’s in and what’s out in a given sprint. This works especially well with teams of developers who can practice <a href="https://en.wikipedia.org/wiki/Kanban_(development)" target="_blank">Kanban</a> or some other <a href="https://en.wikipedia.org/wiki/Theory_of_constraints" target="_blank">Theory-of-Constraints</a>-based approach to problem-solving as a team.</p> <p><strong>Are There Daily Standups?</strong></p> <p>Yep. It’s not Scrum without daily standups. It’s important for the stakeholders to attend these meetings to maintain contact with the progress of the work. A Scrum Task Board – either virtual or physical – is a requirement. It can provide <em>some</em> feedback to stakeholders, but there is no substitute for stakeholders attending the daily standup meeting.</p> <p>Why is it important for stakeholders to attend standups? Risks – time- and money-costing issues – usually surface in the standup meeting first. I measure the risk-awareness of a stakeholder by their standup attendance. You may have read that last sentence and thought, “That’s not fair, Andy!” Maybe not. Experience has taught me that it’s accurate, though. </p> <p><strong>Where’s the Waterfall?</strong></p> <p>We usually run 30-day sprints. We shorten the Waterfall cycle to 30-days and limit it to the deliverables identified for the sprint. We’ll do a couple days of discovery followed by a couple days of design. Development starts <em>during</em> design in business intelligence projects. Data integration is a large component in business intelligence – often the largest component. Data integration is also a bottleneck for most of the downstream parts of a business intelligence project. Testing (Validation) is tightly-coupled to development, and is vital. If you get nothing else out of reading this post, please remember this:</p> <blockquote> <p><em>Deliver quality late, no one remembers. <br />Deliver junk on time, no one forgets.</em></p> </blockquote> <p>We can run shorter sprints but my experience shows this actually <em>delays</em> completion of the project. Why? We need time to manage the (inevitable) issues that surface during a sprint. </p> <p><strong>How Does This Approach Mitigate Risk?</strong></p> <p>Believe it or not, business priorities shift. New information becomes available after the project starts. Maybe a competitor reveals they are more competitive than stakeholders believed. Maybe more marketing information shows a shift in customer demand. Maybe another internal enterprise project takes priority over the business intelligence project. Any number of market and business conditions can shift the necessity, priority, or direction of a business intelligence project.</p> <p>Consider the impact of “re-Waterfall-ing” a business intelligence project during design, development, or testing. I’ve been there. It’s expensive for both the developers and business. Taking a phased approach allows an agile (double entendre intended) shift or graceful pause to the business intelligence project.</p> <p><strong>Are You Better Able to Estimate Project Completion?</strong></p> <p>Yes and no.</p> <p>There are software and business physics in play. Laws that cannot be broken; principles that simply apply whether we like them or not. A phased approach allows us to place bounds around the unknown(s). This is, I believe, the most economical and the most reality-based methodology for delivering business intelligence solutions. </p> <p>When I write <em>economical</em>, I mean experience informs me this approach costs the business less money than other approaches while delivering more with greater efficiency. How? Waterfall approaches often involve <a href="https://en.wikipedia.org/wiki/Change_order" target="_blank">Change Orders</a> with associated charges (do you remember that time a change order was free? Me neither). Some consultants win with the lowest bid and make up the difference with change orders. My <a href="http://sqlblog.com/blogs/andy_leonard/archive/2011/12/12/credibility.aspx" target="_blank">credibility</a> and <a href="http://sethgodin.typepad.com/seths_blog/2015/03/what-is-customer-service-for.html" target="_blank">delighting my customer</a> is worth more to me. </p> <p>When I write <em>reality-based</em>, I mean few software projects are completed when projected. On-time projects happen. But it’s rare. Why? Well, it’s either because a) all software developers and consultants are pathological liars; or b) software is inherently inestimable. I vote for b. When someone asks a software developer, “When will you be able to complete this task?” they are most often asking, “How long will it take you to figure out this completely new thing you’re tasked with figuring out?” I hear this question posed in many contexts. Sometimes I get asked the same question different ways. I’m not a fan of that kind of questioning, but the reason it works is <a href="https://en.wikipedia.org/wiki/False-consensus_effect" target="_blank">bias</a>. </p> <p>Sometimes the most honest answer is, “I don’t know.” It’s ok to not know. It’s not ok to not know and not know how to find out; so when I don’t know, I honestly respond with, “I don’t know but I can figure it out.” </p> <p><strong>Conclusion</strong></p> <p>The goal of a phased approach is to balance risk for consultants, developers, project managers, stakeholders, and the business. A phased approach limits risk while preserving the options of all engaged. Should things shift, stakeholders can change the direction, priority, or (in extreme cases) the <em>existence</em> of the project in response; with minimal technical and financial impact to all involved.</p> <p>A phased approach is a great way to mitigate risk for all parties. It works well for <a href="http://entdna.com" target="_blank">Enterprise Data &amp; Analytics</a> and our customers.</p> <p>:{&gt;</p> <p><b>Need help implementing an SSIS </b><b>solution?</b> <br /><a href="http://entdna.com/contact-us/">Contact Enterprise Data &amp; Analytics</a> today!</p> <p><strong>Related Posts: <br /></strong><a href="http://sqlblog.com/blogs/andy_leonard/archive/2016/09/20/value.aspx" target="_blank">Value</a></p>Valuehttp://sqlblog.com/blogs/andy_leonard/archive/2016/09/20/value.aspxTue, 20 Sep 2016 18:31:00 GMT21093a07-8b3d-42db-8cbf-3350fcbf5496:61876andyleonard<p><a mce_href="http://sqlblog.com/blogs/andy_leonard/Foghorn_71F3B862.jpg" href="http://sqlblog.com/blogs/andy_leonard/Foghorn_71F3B862.jpg"><img title="Numbers don't lie!" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="Numbers don't lie!" width="100" height="135" src="http://sqlblog.com/blogs/andy_leonard/Foghorn_thumb_223A8D19.jpg"></a></p> <p>One of our mottos at <a mce_href="http://entdna.com" target="_blank" href="http://entdna.com">Enterprise Data &amp; Analytics</a> is, “Deliver Value.” I can hear you thinking, “That’s nice, Andy. What does that mean?” I’m glad you asked.</p> <p><b>!Value</b></p> <p>Let’s start with what value is not, shall we? </p> <p>Value is not the least expensive. As a consultant, I often “bid” for consulting work, sometimes referred to as “gigs.” How does bidding work? Someone calls or emails. I usually set up a meeting to discuss <a mce_href="http://sqlblog.com/blogs/andy_leonard/archive/2015/08/10/what-customers-want.aspx" target="_blank" href="http://sqlblog.com/blogs/andy_leonard/archive/2015/08/10/what-customers-want.aspx">the problem they are trying to solve</a>. I listen – a lot. I inform the potential customer whether I can help or not. Usually, if I cannot help, I know someone who can; and often I can subcontract someone who can help. Next we talk about hourly rate.</p> <p>Let’s talk about hourly rate. And experience.</p> <p>I once had a conversation with a customer that went something like this:</p> <blockquote> <p>Customer: “We would like for you to help us develop a business intelligence and analytics solution.”</p> <p>Me: “Cool. I can help.”</p> <p>Customer: “So what is your hourly rate?”</p> <p>Me: “$___ per hour.”</p> <p>Customer: “Wow. We can hire several people to help with our business intelligence and analytics for that rate!”</p> </blockquote> <p>In this instance (and several similar instances), the client opted to hire several people at a lower rate. In this instance (and several similar instances), the client called back later and asked if I had some availability to help them. Why? Experience. The consultants they hired at the lower rate did not deliver. I’ve done this several times before. I know what to expect, and I recognize the unexpected. </p> <p><i>The value of that last phrase is not to be underestimated.</i></p> <p>Having experience means I immediately recognize something new and different. I raise the flag. Having experience also means I know what to expect. Experience often translates into saved time. My hourly rate may be double the competition, but I know how to deliver major portions of the project in 1/4th the time. (Some portions I know how to deliver in 1/100th of the time.) If I’m able, at (hypothetically) $300/hour, to deliver some aspect of the project in 25 hours; and the lower-rate consultants, at (hypothetically) $150/hour, are able to deliver the same functionality in 100 hours; which of us is the better value?</p> <p>Let’s do the math.</p> <p>Me: <br>$300/hour * 25 hours = $7,500 </p> <p>The “less expensive alternative”: <br>$150/hour * 100 hours = $15,000</p> <p>Which of us is the better value, me or the less expensive alternative? To quote <a mce_href="https://en.wikipedia.org/wiki/Foghorn_Leghorn" target="_blank" href="https://en.wikipedia.org/wiki/Foghorn_Leghorn">Foghorn Leghorn</a>, “numbers don’t lie.” Foghorn is correct. I am the better value, even though I charge more per hour.</p> <p><b>But Wait, There’s More</b></p> <p>Lots more. You see, when a project is under development everyone is laser-focused on the costs of development. Why? Well, these costs are right there in front of everyone. The math is easy, it’s the number of hours invoiced multiplied by the number of hours. But is the cost of development the highest cost of a project?</p> <p>The answer is no. Most business intelligence, data warehouse, or analytics projects are used in the enterprise for five to ten years. In my experience, the costs of maintaining and supporting are often <i>more</i> than the costs of developing the solution in the first place.</p> <blockquote> <p><i>If you read that last paragraph and thought, “Of </i>course<i> you’re going to write that, Andy! You want us to hire </i>you<i> instead of your competition who charges a lower hourly rate!” If you thought that, don’t hire me. Hire someone you trust. Your data, in 2016, </i>needs <i>a consultant you trust. Your customers need a consultant you trust. The people behind the personally-identifying information (PII) in your databases need a consultant you trust. In my opinion (again, subjective), integrity should be your number one consideration when selecting a consultant for a data project. Please hire someone you trust. If that’s not me, I will understand.</i></p> </blockquote> <p>The combined costs of developing, supporting, maintaining, and extending a solution is called the <a mce_href="https://en.wikipedia.org/wiki/Total_cost_of_ownership" target="_blank" href="https://en.wikipedia.org/wiki/Total_cost_of_ownership">total cost of ownership</a>, or TCO.</p> <p>The costs of supporting, maintaining, and extending the solution are spread across the years the solution is in production. The individual costs are small – especially when compared to the hourly rate of a consultant – but they are manifold. Over time these costs can, and most often do (in my experience), overtake the costs of development. Designing for supportability, maintainability, and extensibility can save thousands of dollars (sometimes orders of magnitude more) in TCO. </p> <p>It’s not just costs of supporting, maintaining, and extending the solution, though. Think about the <a mce_href="https://en.wikipedia.org/wiki/Opportunity_cost" target="_blank" href="https://en.wikipedia.org/wiki/Opportunity_cost">opportunity cost</a> – the cost of opportunities <i>lost</i> because your team is spending extra time fiddling with this solution – when they could be thinking up killer applications and solutions that will make you a <a mce_href="https://www.youtube.com/watch?v=jTtoClClcnc" target="_blank" href="https://www.youtube.com/watch?v=jTtoClClcnc">go-zillionaire</a>!</p> <p>I design for supportability, maintainability, and extensibility. To design for TCO, one needs experience supporting, maintaining, and extending data-related projects. Not everyone has that experience. Some brilliant consultants have never led or managed a team or project from inside a large enterprise. I led a team of 40 ETL developers when I worked at Unisys. I can tell you, experience managing a team of developers is <i>very</i> different from being an independent consultant. </p> <p><b>Conclusion</b></p> <p>Because the money for development projects usually comes out of a different accounting bucket (the capital budget) and support, maintenance, and extending projects comes out of the operations budget, it’s understandable that TCO is often overlooked and development costs are often over-scrutinized. </p> <p>Please consider experience and the total cost of ownership when selecting a consultant. You’ll be glad you did.</p> <p>:{&gt;</p> <p><b>Related Training:</b> <br><a mce_href="https://www.sqlskills.com/sql-server-training/iessis1/" href="https://www.sqlskills.com/sql-server-training/iessis1/">IESSIS1: Immersion Event on Learning SQL Server Integration Services</a> - April 2017, Chicago</p> <p><b>Learn More:</b></p> <p><a mce_href="http://biml.academy/" href="http://biml.academy/">Biml Academy</a> <br><a mce_href="http://sqlblog.com/blogs/andy_leonard/archive/2016/09/09/the-basics-of-biml-the-execute-sql-task.aspx" href="http://sqlblog.com/blogs/andy_leonard/archive/2016/09/09/the-basics-of-biml-the-execute-sql-task.aspx">The Basics of Biml – the Execute SQL Task</a> <br><a mce_href="http://sqlblog.com/blogs/andy_leonard/archive/2016/09/06/the-basics-of-biml-populating-the-biml-relational-hierarchy.aspx" href="http://sqlblog.com/blogs/andy_leonard/archive/2016/09/06/the-basics-of-biml-populating-the-biml-relational-hierarchy.aspx">The Basics of Biml – Populating the Biml Relational Hierarchy</a> <br><a mce_href="http://www.sqlservercentral.com/stairway/100550/" href="http://www.sqlservercentral.com/stairway/100550/">Stairway to Biml</a> <br><a mce_href="http://www.sqlservercentral.com/stairway/72494/" href="http://www.sqlservercentral.com/stairway/72494/">Stairway to Integration Services</a> <br><a mce_href="http://varigence.com/" href="http://varigence.com/">Varigence.com</a> <br><a mce_href="http://bimlscript.com/" href="http://bimlscript.com/">BimlScript.com</a> <br><a mce_href="http://www.sqlservercentral.com/" href="http://www.sqlservercentral.com/">SQL Server Central</a></p> <p><b>Need help or training implementing a Biml solution?</b> <br><a mce_href="http://entdna.com/contact-us/" href="http://entdna.com/contact-us/">Contact Enterprise Data &amp; Analytics</a> today!</p>My New Gig: Enterprise Data &amp; Analytics!http://sqlblog.com/blogs/andy_leonard/archive/2015/12/18/my-new-gig-enterprise-data-analytics.aspxFri, 18 Dec 2015 23:54:39 GMT21093a07-8b3d-42db-8cbf-3350fcbf5496:60256andyleonard<p align="left"><a href="http://entdna.com/" target="_blank"><img title="Enterprise Data &amp; Analytics" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="Enterprise Data &amp; Analytics" src="http://sqlblog.com/blogs/andy_leonard/EDNAlogo_702EE151.jpg" width="244" height="66" /></a></p> <p align="left">I’m excited to announce my next venture: <a href="http://entdna.com" target="_blank">Enterprise Data &amp; Analytics</a>! </p> <p align="left">My role is still Data Philosopher. My job is to help clients realize the potential of their enterprise data. “How will you do that, Andy?” I’m glad you asked.</p> <p align="left"><a href="http://entdna.com/" target="_blank">EnterpriseDNA</a> delivers consulting, analysis, and development to support:</p> <ul> <li> <div align="left">Business Intelligence and Analytics</div> </li> <li> <div align="left">Data Strategy</div> </li> <li> <div align="left">Coaching</div> </li> <li> <div align="left">Enterprise Architecture</div> </li> <li> <div align="left">Performance Tuning</div> </li> <li> <div align="left">Application Development</div> </li> <li> <div align="left">Database and Data Warehouse Development</div> </li> </ul> <p align="left"><a href="http://entdna.com/" target="_blank">EnterpriseDNA</a> is committed to the developer and database communities. We’re a Gold sponsor of the very first <a href="http://www.sqlsaturday.com/477/Sponsors.aspx" target="_blank">BI-focused SQL Saturday in Atlanta</a> and I am presenting a precon before the event titled <a href="http://ssisdesignpatterns.eventbrite.com/" target="_blank">SSIS Design Patterns and Biml: A Day of Intelligent Data Integration</a> on 8 Jan 2016. (<a href="http://ssisdesignpatterns.eventbrite.com/" target="_blank">Register here</a>!) </p> <p align="left">I’m looking forward to the new venture!</p> <p>:{&gt;</p>Leaving Linchpin Peoplehttp://sqlblog.com/blogs/andy_leonard/archive/2015/11/29/leaving-linchpin-people.aspxMon, 30 Nov 2015 02:11:00 GMT21093a07-8b3d-42db-8cbf-3350fcbf5496:60089andyleonard
<p align="left">I’m sad and excited to announce I am no longer with Linchpin People. </p>
<p align="left">I’m sad because I will miss working with and leading the awesome team at <a mce_href="http://linchpinpeople.com" target="_blank" href="http://linchpinpeople.com">Linchpin People</a>. I’m excited to return to independent consulting as <a mce_href="http://andyleonardconsulting.com/" target="_blank" href="http://andyleonardconsulting.com/">Andy Leonard Consulting</a>!</p>
<p align="left"><i>Update: My new venture is <a href="http://entdna.com/">Enterprise Data &amp; Analytics</a>!</i>&nbsp;</p>
<p align="left">:{&gt;</p>Opinions Changehttp://sqlblog.com/blogs/andy_leonard/archive/2015/08/26/opinions-change.aspxWed, 26 Aug 2015 12:30:00 GMT21093a07-8b3d-42db-8cbf-3350fcbf5496:59408andyleonard<p align="left"><a href="http://sqlblog.com/blogs/andy_leonard/DeweyDefeatsTruman_28047D3B.jpg"><img title="Dewey did *NOT* defeat Truman!" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;float:left;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="Dewey did *NOT* defeat Truman!" src="http://sqlblog.com/blogs/andy_leonard/DeweyDefeatsTruman_thumb_74C843D1.jpg" width="290" align="left" height="224" /></a></p> <p align="left">Opinions change, and they should change as more and better evidence surfaces. There are words for this: “learning” and “growing” are but two of them.</p> <p align="left">Communication plays a key role in changing opinions. I’ve been studying communication recently and I’ve decided it’s a miracle anyone is ever able to communicate with anyone else. There are several reasons; one reason is we’re wrong more than we are right.</p> <p align="left"><strong>On Being Wrong</strong></p> <p align="left">In her <a href="http://www.ted.com/talks/kathryn_schulz_on_being_wrong#t-184279" target="_blank">TED talk</a> Kathryn Schulz, &quot;Wrongologist,&quot; states “We misunderstand signs around us.” &quot;I can't actually think about anything I'm wrong about. At least not in the present tense.&quot; &quot;So effectively we all wind up… traveling through life… trapped in this little bubble of feeling very right about everything.&quot; &quot;How does it feel - emotionally - how does it feel to be wrong? How does it feel to <em>realize</em> you're wrong?&quot;</p> <p align="left">Her main point is: &quot;Just being wrong doesn't feel like anything.&quot; </p> <p align="left">Kathryn goes on to explain: &quot;The way to succeed in life is to never make any mistakes.&quot; &quot;...getting something wrong means there's something wrong with us.&quot;</p> <p align="left">In response:</p> <ol> <li> <div align="left">We assume people are ignorant. </div> </li> <li> <div align="left">We assume people are idiots. </div> </li> <li> <div align="left">We assume people are evil. </div> </li> </ol> <p align="left">&quot;This attachment to our own rightness keeps us from preventing mistakes when we absolutely need to, and causes us to treat each other terribly.&quot; &quot;The miracle of your mind isn't that you can see the world as it is. It's that you can see the world as it isn't.&quot;</p> <p align="left"><strong>Her (Brilliant, in my opinion) Conclusion:</strong></p> <p align="left">&quot;It does feel like something to be wrong. It feels like being right.&quot;</p> <p align="left">I encourage you to take a few minutes to listen to the <a href="http://www.ted.com/talks/kathryn_schulz_on_being_wrong#t-184279" target="_blank">TED talk</a>. It’s awesome, as is <a href="http://smile.amazon.com/Being-Wrong-Adventures-Margin-Error/dp/0061176052/" target="_blank">Kathryn’s book</a>:</p> <p align="left"><a href="http://smile.amazon.com/Being-Wrong-Adventures-Margin-Error/dp/0061176052/" target="_blank"><img title="BeingWrongCover" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="BeingWrongCover" src="http://sqlblog.com/blogs/andy_leonard/BeingWrongCover_0CEBAE2D.jpg" width="162" height="244" /></a></p> <p align="left">:{&gt;</p> <p align="left">Learn more:</p> <p align="left"><a href="http://smile.amazon.com/Managing-Geeks-Journey-Leading-Doing/dp/1502947609" target="_blank"><img title="Managing-Geeks-Cover-2003" border="0" alt="Managing-Geeks-Cover-2003" src="http://sqlblog.com/blogs/andy_leonard/Managing-Geeks-Cover-2003_21B189E5.jpg" width="162" height="244" /></a></p>What Customers Wanthttp://sqlblog.com/blogs/andy_leonard/archive/2015/08/10/what-customers-want.aspxMon, 10 Aug 2015 15:00:00 GMT21093a07-8b3d-42db-8cbf-3350fcbf5496:59308andyleonard<p align="left">Not once, in my combined years of direct employment by enterprises or consulting, has a customer contacted me about an issue about the grain of their date dimension in their enterprise data warehouse. Not one single time. I haven’t been contacted about cardinality either. Or trouble with execution threading models. Nope. Not ever.</p> <p align="left">Instead, I’ve been contacted about other stuff. Stuff like the accuracy and “drill-ability” of a report and how long it takes to load data and how up-to-date the data is. Those are the concerns customers tell me they want addressed.</p> <p align="left">Often the solution to the problem they are trying to solve involves data warehouse grain or cardinality or threading. </p> <p align="left">Are my customers lying to me? Absolutely not! Part of my job is to comprehend what my customers perceive, to find out what they believe is the problem they’re trying to solve. “This report takes too long to display,” is a valid description of a problem that needs solving. You don’t need to know what a <a href="https://en.wikipedia.org/wiki/Tuple" target="_blank">tuple</a> is to help. You don’t need to understand how indexes traverse <a href="https://en.wikipedia.org/wiki/B-tree" target="_blank">b-trees</a> to get what they’re telling you.&#160; You don’t even need a degree in computer science to understand what they’re saying: The report is slow.</p> <p align="left">All you need to do is listen.</p> <p align="left">What customers want is your help.</p> <p align="left">:{&gt;</p> <p align="left">Learn more:</p> <p align="left"><a href="http://smile.amazon.com/Managing-Geeks-Journey-Leading-Doing/dp/1502947609" target="_blank"><img title="Managing-Geeks-Cover-2003" border="0" alt="Managing-Geeks-Cover-2003" src="http://sqlblog.com/blogs/andy_leonard/Managing-Geeks-Cover-2003_21B189E5.jpg" width="162" height="244" /></a></p>Great Scott! Linchpin People is Going… Back to SQL Saturday Atlanta!http://sqlblog.com/blogs/andy_leonard/archive/2015/05/14/great-scott-linchpin-people-is-going-back-to-sql-saturday-atlanta.aspxThu, 14 May 2015 16:24:50 GMT21093a07-8b3d-42db-8cbf-3350fcbf5496:58662andyleonard<p><a href="http://www.sqlsaturday.com/392/eventhome.aspx" target="_blank">SQL Saturday #392</a> is happening THIS SATURDAY! I’m looking forward to returning to Atlanta, where almost everyone speaks without an accent. </p> <p><a href="http://www.sqlsaturday.com/392/Sessions/Schedule.aspx" target="_blank">The schedule looks awesome</a>!</p> <p>I’m excited that several <a href="http://www.linchpinpeople.com/who-we-are/meet-our-team/" target="_blank">Linchpins</a> were selected to present because this means we’ll get to hang out in person. I’m also excited to see so many friends from <a href="https://www.facebook.com/groups/229520433911344/" target="_blank">#SQLFamily</a>, too, including (Great) Scott Currie, who will be presenting <a href="http://www.sqlsaturday.com/392/Sessions/Details.aspx?sid=24056" target="_blank">SSIS Unit and Integration Testing with the Open Source BEST (Biml Enabled SSIS Test) project</a>.</p> <p>Linchpin People’s co-founder, Brian Moran, is delivering a half-day precon Friday 15 May titled <a href="https://www.eventbrite.com/e/secrets-of-independent-consulting-tickets-15961893453" target="_blank">Secrets of Independent Consulting</a>. It’s a steal at $50. I’m delivering <a href="http://www.sqlsaturday.com/392/Sessions/Details.aspx?sid=9554" target="_blank">Using Biml as an SSIS Design Patterns Engine</a>.</p> <p>I hope to see you there!</p> <p>:{&gt;</p> <p>Learn more:&#160; <br /><a href="http://www.sqlservercentral.com/stairway/100550/" target="_blank">Stairway to Biml</a> <br /><a href="http://www.linchpinpeople.com/tag/ssis/" target="_blank">Linchpin People Blog: SSIS</a> <br /><a href="http://www.sqlservercentral.com/stairway/72494/" target="_blank">Stairway to Integration Services</a></p> <p><a href="http://smile.amazon.com/Server-Integration-Services-Design-Patterns/dp/1484200837" target="_blank"><img title="SSIS2014DesignPatterns200" border="0" alt="SSIS2014DesignPatterns200" src="http://sqlblog.com/blogs/andy_leonard/SSIS2014DesignPatterns200_2A08FE52.jpg" width="163" height="204" /></a></p>On Kindnesshttp://sqlblog.com/blogs/andy_leonard/archive/2015/04/15/on-kindness.aspxWed, 15 Apr 2015 13:47:00 GMT21093a07-8b3d-42db-8cbf-3350fcbf5496:58448andyleonard<p>Do you remember that time kindness backfired? Do you remember kindness letting you down? Me neither.</p> <p>Kindness never fails.</p> <p>I can hear you thinking, “Yeah, Andy? Well there was this time I was kind and…” The thing you’re going to finish that sentence with, the thing that didn’t happen? That wasn’t going to happen anyway. But here’s what did happen. Because you were kind, the person to whom you were speaking was left with nothing but your request to think about as they later reflected on the conversation.</p> <p>What if you’d been unkind? Then, upon reflection, the person to whom you were speaking will reflect on your unkindness. How do I know? I’ve been unkind. I’ve experienced unkindness from others. Kindness may improve the odds that your request will be granted. Kindness <i>always</i> improves the odds of you being <i>heard</i>. Unkindness produces the opposite in effect and in being heard. </p> <p>Some will misinterpret your kindness as weakness. That’s simply inaccurate. Many kind people are meek, but meekness is not the same as weakness (even though they rhyme). One trait of the people I consider wisest is: they are meek. In Receptive Human Virtues (2011), E. A. Cochran writes, “Meekness has been contrasted with humility as referring to behaviour towards others, where humbleness refers to an attitude towards oneself.” </p> <p><b>Meek in Action</b></p> <p>Have you ever looked at the work of someone else and said, “They did this wrong.”? Or, “They didn’t know what they were doing”? or “Who wrote this crap!”? I say that last one a lot… when reviewing my older code, but I digress… When speaking to an authority or client who doesn’t understand our craft, it’s easy to make ourselves look and sound knowledgeable and important by denigrating the work of others. </p> <p>There’s risk here, though. </p> <p>If you’re operating in this fashion – especially as a consultant – you’re conditioning your client to accept the latest word from the latest “expert” when that word is critical. Are you the only person who operates in this way? Nope, you are not. If you want to grab the money and run, poo-pooing the work of others is effective.</p> <p>“But what if the work is crappy, Andy?” Find a better way to say it. “I would not have designed this solution this way.” “There are updated patterns for solving this issue.” “I found an error.” Are any of those statements derogatory towards the original developer? Nope. Does the client walk away thinking, “I have someone who <i>knows</i> how to solve my business problem!”? Yep. And, at no extra charge, you’ve <i>insulated</i> yourself from the next cut-and-run “expert” who looks at your code with the client. You’ve built a new impression in the mind of your client: <i>Real experts are kind.</i></p> <p><b>Conclusion</b></p> <p>Why am I blogging about this? For the same reason I blog about many things: I’ve failed and learned from my mistake. My hope is that someone will learn from my mistake and not fail, and that our community will be the better for it.</p> <p>:{&gt;</p> <p>Learn more:</p> <p><a mce_href="http://smile.amazon.com/Managing-Geeks-Journey-Leading-Doing/dp/1502947609" target="_blank" href="http://smile.amazon.com/Managing-Geeks-Journey-Leading-Doing/dp/1502947609"><img title="Managing-Geeks-Cover-2003" border="0" alt="Managing-Geeks-Cover-2003" width="162" height="244" src="http://sqlblog.com/blogs/andy_leonard/Managing-Geeks-Cover-2003_21B189E5.jpg"></a></p>Consulting 101: Viewing the Fieldhttp://sqlblog.com/blogs/andy_leonard/archive/2015/01/30/consulting-101-viewing-the-field.aspxFri, 30 Jan 2015 20:04:56 GMT21093a07-8b3d-42db-8cbf-3350fcbf5496:57759andyleonard<p>It’s important for a consultant to be able jump into a situation and quickly evaluate and assess the dynamics involved, in order to serve the client efficiently and effectively and economically. While a lot of people dislike military metaphors, there are a lot of good lessons to learn from military thinking. This is one area where military lessons can help, in my opinion. </p> <p>In his book, <a href="http://smile.amazon.com/gp/product/B001QWFYB6" target="_blank">The Face of Battle</a>, John Keegan writes about a skill: </p> <blockquote> <p>“…best described by the French word <em>formation</em>, aims if not to close his mind to unorthodox or difficult ideas, at least to stop it down to a fairly short focal length, to exclude from his field of vision everything that is irrelevant to his professional function, and to define all that he ought to see in a highly formal manner.” </p> </blockquote> <p>The general idea, fleshed out later in the book, is to view the current situation tactically, assessing the threat level of each component or “sub-situation” in terms of responses to potential actions of these actors. <em>Formation</em> is about prioritization with a bias for action. If you’ve read <a href="http://en.wikipedia.org/wiki/The_Alchemist_%28novel%29" target="_blank">The Alchemist</a> you know “beginner’s luck” is really a combination of the inevitability of opportunity combined with a bias for action.</p> <p>The ability to conduct a fast and accurate assessment of a situation is an important consulting skill.</p> <p>:{&gt;</p> <p>Learn more:</p> <p><a title="Managing Geeks (Kindle Edition!)" href="http://smile.amazon.com/Managing-Geeks-Journey-Leading-Doing/dp/1502947609" target="_blank"><img title="Managing-Geeks-Cover-2003" style="border-left-width:0px;border-right-width:0px;background-image:none;border-bottom-width:0px;padding-top:0px;padding-left:0px;display:inline;padding-right:0px;border-top-width:0px;" border="0" alt="Managing-Geeks-Cover-2003" src="http://sqlblog.com/blogs/andy_leonard/Managing-Geeks-Cover-2003_21B189E5.jpg" width="162" height="244" /></a></p> <p>Managing Geeks is available at Amazon in <a href="http://smile.amazon.com/Managing-Geeks-Journey-Leading-Doing/dp/1502947609" target="_blank">paperback and Kindle</a> editions!</p>Self-Awareness – Feedbackhttp://sqlblog.com/blogs/andy_leonard/archive/2015/01/23/self-awareness-feedback.aspxFri, 23 Jan 2015 12:00:00 GMT21093a07-8b3d-42db-8cbf-3350fcbf5496:55886andyleonard<p>Self-awareness is an important trait. I believe it is especially important for consultants. </p> <p>For each of us, there is some gap between reality and what we perceive. I believe one measure of humility (or pride) is this self-awareness delta. I also believe we can narrow this gap by engaging in exercises in intentional awareness. Which exercises? </p> <p><b>Seeking Feedback</b></p> <p>Asking others is a way of actively seeking feedback. I believe this requires confidence and thick skin, especially when the feedback we receive is negative.</p> <p><b>Listen to the Feedback</b></p> <p>This is especially true and simultaneously especially difficult of the negative feedback. You can choose to ignore negative feedback from mostly negative people. But consider that negative people are going to key on your (and everyone’s) faults, so don’t completely ignore their feedback.</p> <p>Consider the value of <i>de-</i>constructive criticism. One aspect of constructive criticism is that it’s communicated in a neutral manner, perhaps similar to coaching. News flash: not everyone is a coach. That doesn’t disqualify them from providing accurate – and perhaps useful – criticism. </p> <p><b>Apply Feedback</b></p> <p>I don’t know about you, but I don’t like hearing criticism. My initial reaction is not, “Awesome! Now I know where I can improve!” I doubt I will ever feel that way, but I think I should. </p> <p>I welcome your thoughts about self-awareness and feedback.</p> <p>:{&gt;</p>