The Importance Of Managing Expectations

Have you ever taken a sip of sweet tea only to discover that it was soda instead? Eeww! What an eye-opening experience!

Don’t misunderstand; I like soda. But when I’m expecting sweet tea, the normally pleasant taste of the carbonated beverage is face-wrenchingly awful.

Thus, the importance of expectations.

What To Expect?

When working with your clients, your boss, your spouse, your kids, and everyone else for that matter, it’s critically important to set expectations. Let them know what to expect. Let them know when to expect it. Let them know any caveats that may exist. It gives them a sense of comfort.

As with the beverage example, expectations are important; the same result can be interpreted as good or bad depending on expectations.

If you promise a client that you’ll provide a deliverable in ten business days and you deliver it in seven, they’re very happy. Conversely, if you promise to deliver in five and you don’t have it ready until the seventh day, they’re disappointed. In both cases they receive the deliverable in seven days, yet in one case you’re a hero and in the other case you’ve failed.

How Can You Manage Expectations?

Managing expectations is not difficult. In fact, it’s straightforward.

  • Under Promise. Don’t over commit yourself. Examine your workload, your capabilities, your own expectations, and then build in some margin.
  • Over Deliver. This go right along with Under Promise. Going the extra mile and exceeding expectations is a nice way to give them a sense of “wow”.
  • Communicate Clearly. It’s been said that there are four components to communication: the sender, the message, the medium, and the recipient. A breakdown and any of those can lead to a misunderstanding. Make sure that the message that you intend to deliver is the one that is received.
  • Communicate Frequently. Providing timely updates about the progress along the way is just as important as setting the initial expectations. Any delays, any changes to the initial expectations should be communicated early in the process.
  • Be Honest. As the old saying goes, honesty is the best policy. Best honest with others. If you are unsure of the outcome, tell them. It’s better that they know this up front.

Related Posts

Book Review: The Lazy Project Manager

“There is nothing more uncommon than common sense.” Some attribute the axiom to Frank Lloyd Wright but others are adamant that he’s not the origin of it. Whoever said it had a somewhat elitist or cynical perspective about the general population.

At times, however, the saying has proven itself to be true. That’s why sometimes it’s best to state the obvious, rather than taking it for granted.

In his book “The Lazy Project Manager“, Peter Taylor doesn’t tackle the basics of Project Management as a profession. Do don’t buy the book as a Project Management how-to guide; it’s not intended to be that. Taylor rightly observes that much has already been written on the topic. He even provides list of resources that he’s found helpful in the back of “The Lazy Project Manager”.

Instead Taylor attempts to supplement the purely academic studies of Project Management with practical and actionable approaches.

A Common Sense Approach

“The Lazy Project Manager” focuses on the subtle nuances of how to shepherd a project from its initial phase through to its completion. Taylor concentrates on working with your team to move the project toward success. He advocates using humor to diffuse a situation, evaluating the team personnel, and remembering that communications is more than just the message.

Much of what he shares should be considered common sense, especially to a seasoned professional. However, the advice proffered will likely be helpful to many who are new to the project manager role.

This short book is replete with anecdotes from Taylor’s experiences. He shares some of his successes as well as his miscues over the years. He recounts his missteps and what he’d do differently now that he’s on the other side of the mishaps.

Proper Planning

Despite the intentionally eye-catching title, the book’s premise can be distilled down to the old adage of the 7 P’s: Proper Planning and Preparation Prevents Pitifully Poor Performance.

Taylor contends that most projects require an awful lot of work up front and if done well, the long middle part of the project goes very smoothly. Eventually every project wraps up with a flurry of concluding activities at the end.

The book models this as well. The first portion of the book sets the stage. Then Taylor offers to let the reader skip the middle section and just right to the end of the book where the final two chapters summarize everything that you may have skipped.

Overall

I suspect many who buy the book can easily skip to end without missing anything; I certainly felt as though I could have. Others may find the middle, though it sometimes wanders a bit, to be helpful.

The eight reviewers on Amazon give the book a 4.5 out of 5 stars. I think that’s a bit on the high side. I’d give it a 3 to 3.5 out of 5 stars. But then, I’ve been self-employed 15+ years and I’ve managed hundreds if not thousands of projects.

Whenever there is a hard job to be done I assign it to a lazy man; he is sure to find an easy way of doing it. – Walter Chrysler

Related Posts

A NULL Is Not Unknown

Like it or not, NULLs happen. I don’t think that’s I’ve ever seen a production database that didn’t have NULLs.

Waiter, there's a NULL in my soup.

I’m not arguing whether or not NULLs in a database are good or bad. That discussion ranks up there with religion, politics, and naming conventions. My point is that NULLs exist. They are a fact of life and we must understand them conceptually before we can handle them programmatically.

So, What Is A NULL Anyway?

Let’s start with a definition. NULL is a convenient way to represent the absence of a value. It is not zero in the case of numeric columns. It is not a zero-length string in character columns. It is most assuredly not 1900-01-01 in a date column.

A NULL means that no value has been supplied. There is no value. There is no string; there is no number; there is no date. There is only the absence of a value.

But Doesn’t NULL Mean An Unknown Value?

It’s true that we don’t have an actual value for NULL. But that doesn’t necessarily mean the value is “unknown”. Let me illustrate with an example.

Consider a web site where pet owners make appointments with a Pet Cosmetologist. (I know; just go with it.) The web site asks the pet’s name, species, etc. One of the questions is the pet’s gender. For some animals, this is a very straightforward question. For other animals, answering that question takes uncommon skill.

The web developers recognized that some pet owners may not know Puddle’s gender so they provided three options in the drop down list: Male, Female, and Unknown. That should handle most every case. Dog owners can enter Male or Female as appropriate. Owners of kittens can enter Unknown.

I'm just not myself without a mani-pedi.

Gender is not a required field on the web site. The owners of the Pet Boutique don’t want to turn away an appointment request just because the pet’s owner doesn’t answer a question. Thus, owners of kittens who are embarrassed by their sexing ineptitude can leave that answer blank.

See the difference? When the pet owner enters Male or Female, we know the gender of the animal. If they enter Unknown, we have a value provided by the owner. We don’t know whether to expect a boy or girl, but we have been given an answer to the question.

If the non-required question is left blank, we may end up with a NULL in the database. So NULL is the absence of a value altogether. It’s a question unanswered. Of course, the web developers may default to “Unknown” but that, in itself, may be misleading since it was not provided by the user.

Next Up: Nullology 101

If NULLs permeate our databases, it’s critical that we understand their affect. For example:

  • What happens when we sum a column that contains NULLs?
  • What happens if we concatenate strings that contain NULLs?
  • Can a NULL equal another NULL?

I’ll tackle these questions and more in the next post.

Related Posts

My devLINK Abstracts

For the past few years, I’ve spoken at a great event in Nashville called devLINK. I’ve really enjoyed speaking there.

Although it more developer oriented, it’s got a great SQLSaturday kind of feel. It’s heavily community oriented and has an intimate atmosphere about it. At 800 people, it’s also got the breadth of sessions and networking opportunities of a much larger event.

This year, devLINK has moved from its tradition home of Nashville to Chattanooga, Tennessee. Personally, I’m not thrilled about the move. It’s no longer just down the road and it’s going to be more a hassle for me to attend. But I’ll be there.

I’ve submitted six abstracts for the event. Hopefully some will be selected.

Locking & Blocking Made Simple

A good working knowledge of how SQL Server makes use of locking and transaction isolation levels can go a long way toward improving an application’s performance. In this session, we will explore SQL Server’s locking methodology and discover techniques for enhancing query response times.

Say Goodbye to Boring Meetings

Ever been in a meeting that drones on and on? It starts late, runs long, and doesn’t really accomplish anything. It’s a complete waste of everyone’s time. Worse yet, since nothing was resolved you’ll have to have a follow up meeting. Argh!

In this session you’ll learn some of the keys to conducting an effective meeting. You’ll gain practical tips for making your meetings more productive and dramatically improving one of the most inefficient parts of your day.

Getting Started in IT Consulting

Do you have the expressed goal or the suppressed desire to become an independent consultant? Think it’s too risky? Don’t know where to start? In this session, I’ll help you create a clear transition strategy to go from full-time employee to full-time independent IT consultant with a minimum of risk along the way.

I’ll discuss:

  • The many hats of a consultant
  • Strategies for minimizing risk
  • Setting up your business
  • How to handle sales
  • Low cost promotions
  • Some best practices

The PowerShell Cookbook for the DBA

The best DBAs work hard so that they don’t have to, well, work hard. In this session, we’ll discuss how you can use the PowerShell cmdlets and snap-ins to create scripts that automate the more mundane tasks in your role as a DBA or developer. We’ll create scripts that check the status of SQLAgent jobs, verify the configuration of your servers, and retrieves information from your SQL Server database. You can even store your results in a database table if you’d like. This session is mostly demos with only a few PowerPoint slides to get us started.

“I got promoted! Now what?”

You were a rockstar DBA/Developer. You could leap tall buildings and tune databases in a single bound. Life was grand. And then you got promoted. The skills that helped make a rockstar DBA/Developer won’t help you in management. In fact, some of those skills could actually be a hindrance. In this session we’ll discuss the new skills you’ll to hone to excel as a manager like, skills like: managing former peers, delegating to get more done, working more productively, giving effective feedback, and conducting effective meetings.

The Fundamentals of Good Negotiating

Creatively resolving differences and negotiating mutually beneficial agreements is crucial in all walks of life. It’s especially important and challenging in the IT industry where soft skills are not necessarily prevalent. 

In this session, we’ll introduce the basic concepts and precepts that will aid you in negotiating better agreements with your neighbors, peers, and even your boss.

The Art of Delegation

“Just do it.” That may have been a successful slogan for an athletic shoe manufacturer, but it’s no way to delegate tasks to your team. To successfully motive and lead your team, you must delegate in a way that encourages and motives yet accomplishes your goals. In this session, we’ll discuss proven tactics to get lead your team and get the results you need through the Art of Delegation.

Which Would You Choose?

I’m curious. Which of the sessions I’ve submitted would you choose? Are there some other topics that I should consider submitting?

If you’re a speaker and want to submit an abstract or two, the call for speakers ends on May 1st, 2011.

Related Posts

Opportunity Cost versus Real Cost

One of the hardest lessons to learn and put into practice as a self-employed consultant is that of Real Cost versus Opportunity Cost.

Let’s consider an example.

Real Cost

Real Cost is straightforward. If the water pipes in my house freeze and burst due to the cold weather, I can fix the leak myself or I can call a professional plumber. Those are my options. Sure, I could do without running water, but I’m fond of modern conveniences. So, let’s way I want to fix the leak.

Which is the better option – fixing the leak myself or hiring a professional? Assuming I have the know-how, fixing the leak myself sounds less expensive. In terms of Real Cost it is.

When I repair the bursted pipes myself, my only outlay is for the supplies required to stop the water from squirting out. I’ll need to run down to the hardware store to buy some replacement pipe and perhaps a couple of shiny new tools. That’s the extent of my Real Costs. Then I can roll up my sleeves and dive into the repairs.

If I call a plumber to come to my house and do the job for me, I don’t have to go to the hardware store. I don’t have to buy the materials myself. And I don’t have to find and fix the leak. But I do have to pay him to do these things for me. I have to pay for his time plus the materials he uses to remedy the problem.

So, calling a professional costs me time and materials whereas doing it myself costs only materials.

But that’s not really a complete picture. There’s an Opportunity Cost associated with the project.

Opportunity Cost

If I spend three hours repairing the ruptured pipes, that’s three hours that I’m not doing something else like working for my clients or spending time with my family. The things that I give up by not choosing them are the Opportunity Costs.

There are Opportunity Costs associated with every decision you make. Choosing one thing, by definition, will come at the expense of another.

In this case, the Opportunity Cost of fixing the burst pipes is the time I spend doing the work myself. A professional plumber can probably do the job in half that time. So from an economic perspective, I’m spending time doing something that I’m only marginally skilled at instead of focusing on areas where I’m more skilled. That’s underutilizing my effectiveness.

So in effect, I am paying for time and materials even when I do the job myself. I’m paying with my time rather than buying the plumber’s time. So the question becomes: how much is my time worth to me?

Unless the plumber charges twice my hourly rate or I don’t actually have the client work to do instead of fixing the broken pipes, it actually costs me less to pay someone else to do the job.

Applying The Calculation To Business

Real Costs versus Opportunity Costs apply to business as well. For example, should I outsource part of a project to another consultant?

Let’s say I’m a database consultant and I’m somewhat skilled in application development. I can do the application development work, but my area of expertise is in the database. Spending time developing the front end application is not a good use of my time. Someone else can do it better and faster than me. I should focus on the things that I do well.

The same goes for bookkeeping, web site development, and making reservations.

The concept also applies to managers and their team. If a manager does something that he could have delegated to a team member, it’s actually costing the organization. He could have delegated the task and had someone else do it, allowing him to focus on the things that only he can do.

There’s More To The Story

We must remember, however, that not all decisions are solely based on finances. Spending time with my family, working on the fence in the pasture, and volunteering as a Scout Leader all have Opportunity Costs associated with them. Despite being intangible, the results are well worth it. I’m not going to outsource some things.

Related Posts

Using PowerShell To Search The Event Log

The “30-minute DBA” was operating in a highly effective mode. He’d automated most everything that could be automated. The first half hour of each day was spent reviewing the automated reports that landed in his inbox over night, taking actions as necessary. That’s why he’s paid the big bucks and gets to spend the balance of his time playing and learning.

“I’m convinced that he actually works 30 minutes a day and the rest of his time is spent playing around with cool SQL Server things in his test lab.” That’s what another DBA told me about the 30-Minute DBA.

Searching The Event Logs

There are a lot of options for automation. PowerShell has become one of my favorites. For example, PowerShell can be used to peek into the Windows Event Log, searching for anything of interest to you. I’ve already written about one way to sift through the events; now I’ll share a few more options.

To examine the Application Event Log, invoke the following cmdlet in PowerShell

Get-EventLog Application;

You can narrow the results to only those entries that are of type Error using the EntryType parameter.

Get-EventLog Application -EntryType Error;

You can further limit the results by looking at only the past 24 hours.

Get-EventLog Application -EntryType Error -After (Get-Date).AddDays(-1);

Using the Message parameter, you can search for specific words or phrases in the error message.

Get-EventLog Application -Message "*failed*";

If a specific event becomes a sporadic problem, you can search for the event using the Where functionality.

Get-EventLog Application | where {$_.EventId -eq 1309} | Format-Table -autosize;

Using these techniques, you can easily set up your own automated Event Log review process and insert the results into an email, a spreadsheet , or a database table for review.

Question:

  • What techniques are you using to automate your daily tasks?
  • What do you wish you could automate?

What SQL Server Service Pack Do I Have Installed?

If you’ve used SQL Server for a while, you’re probably familiar with the @@version function. @@ variables are system variables that are automatically populated by SQL Server. Selecting the @@version function in a query window produces the following results on my system.

SELECT @@VERSION;
Microsoft SQL Server 2008 R2 (RTM) - 10.50.1600.1 (Intel X86)   Apr  2 2010 15:53:02   Copyright (c) Microsoft Corporation  Developer Edition on Windows NT 6.1 <X86> (Build 7600: ) (Hypervisor)

In the results, you can easily see that I’m running SQL Server 2008 R2  Developer Edition on an Intel X86 processor. Notice that the results also contain operating system information as well. In this case, it shows that SQL Server is installed on a Windows NT 6.1 machine.

This can cause confusion for many who are unfamiliar with the @@version variable. Frequently, the service pack of the operating system is placed toward the end of the text. It’s easy to assume that this is the service pack level for the SQL Server, after all we are asking SQL Server for the information. That’s not the case. It’s the operating system system pack level.

The ServerProperty Function

To determine SQL Server’s service pack level, use the built-in SERVERPROPERTY function with appropriate parameters – EDITION, PRODUCTLEVEL, and PRODUCTVERSION.

SELECT
SERVERPROPERTY('Edition') AS Edition,
SERVERPROPERTY('ProductLevel') AS ProductLevel,
SERVERPROPERTY('ProductVersion') AS ProductVersion;

In another post, I’ve shown how the SERVERPROPERTY function can be used to find the location of the SQL Server ErrorLog file.

Not familiar with terms like RTM, Service Pack, GDR, and CU? I’ve written about the terms in another post.

Enjoy.

Follow

Get every new post delivered to your Inbox.

Join 31 other followers