Ain’t nobody got time for that.

Damned if you do, and damned if you don’t.

Sometimes, I feel caught in that conundrum. Especially when it comes to things like planning meetings, or retrospectives. If we stop to plan better, we lose development time, but we should make up that time by doing the work properly the first time. If we stop to figure out what we did well and what we did not so well, then we lose development time, but we should be making ourselves more efficient by reflecting and improving.

Specifically in an agency environment, where the pressure to deliver MORE ALWAYS MORE AND EVEN MORE NOW AND WHY CAN’T WE JUST SQUEEZE THIS IN TODAY, it can be difficult to prioritize those things. We live or die by happy clients and billable hours.

Sure, we plan. But do we sit down and do nothing but plan and do deep thinking exercises over what really is needed? Not consistently.

It’s a matter of priorities, really. If we don’t feel the meetings are important enough, then they slide by.

So what’s in the way of prioritizing these events?

Constant adjustment of client expectations.
…which can lead to unhappy clients.
The loss of billable hours, potentially.
The lack of staff buy-in, that these things are valuable.
The lack of a process champion to convince the staff to just try it for a while.

It’s all about how much risk we’re willing to take on. Is it more risky to slow down delivery for these clients, understanding the theory that development becomes more effective over time, ultimately (one hopes) leading to happier clients? Or is it more risky to devote as little time as possible to planning and reviewing, only enough for a general understanding, while keeping billable hours and deliveries as frequent and comprehensive as possible?

Can you convince an unseasoned client to value quality over volume? How many meetings will a client tolerate on their invoice before they start to balk at what most clients think is just useless overhead? On a 4 month project, how much client education can you legitimately expect to accomplish?

I suppose there’s only one way to find out!

Unexpectedly delightful

I walked by our “atta-boy” wall the other day and realized that I hadn’t updated it in a while. I used to be better about pointing out our successes, both as a team and as individuals, and I have let that fall by the wayside.

I do deeply appreciate the staff here. And I need to be more explicit about that.

For all the effort we put into the experience of our products, we aren’t focused on the experience of the staff. What’s the UX of your workplace?

It got me thinking about the unexpectedly delightful. How do you fashion an experience where each person feels appreciated, feels safe, and still experiences moments of delight in the workplace? It’s a challenge, since we are all such individuals. There are some team members who are truly overjoyed by a free burrito lunch. And there are some who feel a long office lunch is an intrusion on their workday, it doesn’t match their style.

There really is no one-size-fits-all answer here, but I feel a solution is worth pursuing. Time to inspect, adapt, and deliver.

Agile delightment FTW!

Regulating development

An interesting post on the Ken Schwaber blog:

Our  shortcomings were surprising to me. When I rolled out Scrum, I thought that the excellent developers that had been stifled by waterfall processes would emerge, and we would again do great work and build great software. Much to my surprise, many never had those skills or had lost any skills they had. The pressure of “get it all out now, cut quality to do so” had reduced most developers to unskilled, unprofessional, angry drones. The larger the organization, the worse the situation as “mediocrity scaled.” Organizations whose software is only five years old are already crippled by technical debt.

He posits that governance of software developers is imminent – whether the industry elects to self impose these guidelines or the government demands it – and that formal regulation of skills and capabilities is needed.

It reminds me of my real estate days – an industry with a very low barrier to entry, and an extraordinary range of practitioner proficiency.  (Sound like software development to you?  Yeah, to me, too.)  There is a plethora of “certifications” that are intended to provide proof of an agent’s skill.  A Certified Residential Specialist?  How about a Graduate of the REALTOR Institute?  When working with an agent with a set of fancy letters after their name, did the transaction proceed more smoothly?

Not generally, no.  In my experience.  They’re generally pay to play: read the handout, sit in a chair and exist for the required number of hours, pass a simple test, pay the man for the honor of putting the letters after your name for a year.  Clearly, this is not the model to adopt.

This, however, is certainly a problem:

If I were on a team, I wish that I knew the level of the developer that I was bringing on board, instead relying on personal references and “the usual suspects” to avoid getting swamped by unfounded braggarts.

I don’t personally believe a governance board can replace screening candidates for my personal standards for proficiency.  Might it give me some warm fuzzies that the candidate has at least tried to gain a skill?  Possibly.  But in a world where even a college degree is seen as optional, an archaic proof of capacity, what can a governance board provide?

It’s an interesting thought.  Can you regulate development processes across an entire industry?  Can anyone really certify skill, if proficiency is a relative determination?  Things to ponder.

Being proud of ugly babies

Every once in a while, we finish something we think is awesome. Shiny. Spectacular. Perfect in every way. A tiny little flawless newborn code-baby, clearly demanding your adoration and unbounded love.

And then the client doesn’t like it. “Take that head off,” they say. “Paste it to the stomach, and then put both arms on the same side.” “Can we make it more monochrome? And there’s no reason for five toes on each foot, we only need seven toes, total.”

Agency work can be tough, sometimes. We want to be proud of our work, we want to build awesome things. And sometimes, we have to build what we think are monsters.

That’s okay though. Opinions are like, uhm, belly buttons. Everyone has one. And clients are always going to have their own. They are entitled. It’s their money and time and product, after all.

I do believe we have the obligation to advise when we see clients turning down the road to creating monster babies. We may have expertise, and I believe we have the responsibility to advise and inform. But ultimately, though we are building this thing, it is not ours. It is theirs. It is their right to not agree with us.

Perhaps we can take pride, instead, in our process. In the ability to build a great *anything.* To make happy clients. To enjoy the opportunity to shape a product, even if we are not the final decision makers. To enjoy and welcome the diversity of opinion.

…even if we do think that’s the ugliest baby we’ve ever produced.

Shifting expectations

I have a client that we have favored highly over the past few weeks – often at the expense of other clients, or at the expense of my development staff’s sanity. After riding out a wave of unforeseen emergencies, we are now transitioning into a regular maintenance schedule.

It’s difficult, at times, to transition clients to new expectations while still keeping them happy. We generally release to production weekly for our web maintenance clients – but for some people, that just seems too infrequent. On their side, they are not accustomed to planning that far in advance. Or a low priority item suddenly becomes urgent because of the time spent waiting in the backlog.

Therefore, we live in a reactionary state to their lack of planning.

Transitional times like this, I try to focus on my empathy – what is the client feeling now? Why aren’t they thinking ahead? Have they ever done this sort of thing before? What pressures are they feeling, and how can I help them feel more in control?

There is certainly a balance – how much I’m willing to give, how much I need to enforce the rules. And certainly, the more precedent I set of disregarding our process, the more difficult it is to enforce process. In the end, an open mind and an open line of communication, laced with a heavy dose of empathy and understanding, tends to do the trick.

Efficiency and Effectiveness

I went and got myself a certification this week – I am now a Certified Scrum Master, thank you very much.

Overall, the class was interesting. The teacher was engaging and the format was interactive. I enjoyed having time to dive into “true” scrum practices, see them at work, and better understand the reasoning behind the process.

A common complaint about scrum is the volume of meetings – the sprint planning, the daily scrum, the backlog grooming, the review, the retrospective. That’s 5 mandated meetings per sprint!

The teacher made an interesting comment, however, that scrum is an effective solution, but it might not always be the most efficient solution. This, I believe, is very true, at least from the day to day perspective. As a project, using scrum might indeed be more efficient, but as an individual contributor on a daily basis, scrum can seem like a lot of overhead.

Indeed, in some agency environments, and in very small teams, scrum may be too much process – there are many situations where a leaner solution like kanban would be more appropriate.

As a systems engineer, I am typically hyper-focused on efficiency – but that should never come at the price of effectiveness. What may be most efficient on a daily basis might not be most effective in the long run.

Things to consider.

Accountability, responsibility, and trust

One of the fascinating things about agile team structure is the delineation between responsibility and accountability. While I may be in charge of making sure something gets done, I may not actually be the one to perform the work. I am accountable to a task without being responsible for actually doing it.

As a scrum master, I may be accountable for explaining and improving the team’s velocity, but I do not directly impact the velocity – I am not responsible for the work done that creates or alters the velocity. Only the development team can be responsible for the estimation and volume of work that is completed.

It’s an interesting paradigm, to separate who is held to the fire for something from who will actually do that something. That takes a huge amount of trust within the team – to trust the responsible party will do what they say they will do.

And if there is no trust? That’s a huge problem if a team member doesn’t fulfill their responsibilities. Which gets exacerbated if there are no reciprocal dependencies between us – if mutually assured destruction is not an option, albeit a last resort, clearly.

If I am accountable for things that you are responsible for, and you never fulfill your responsibilities, then there is a problem. A foundational breakdown of trust and responsibility, fracturing a team from the inside.

Be on the lookout, team leader, for small breaches that may lead to larger collapses. Defend your team vigilantly against actions that erode trust.

We can’t all possibly be the expert, all the time.

This video has been making the rounds via social media:

It’s painful and hilarious at the same time.

The thought that niggles at the back of my brain is how everyone identifies with the expert – and we can’t all possibly be the expert.  Surely, there are times that we play each role in this little spectacle, to some degree or another.  We aren’t all experts at everything.  We can’t possibly be.  At some point, we must all say something incredibly backwards and painful to real experts, and cause in them the frustration and disbelief portrayed here.

Our reaction as ‘expert’ when we come across these situations is important.  Are we able to gently teach and clarify without making another party feel dumb or – worse – attacked?  Can we speak plainly and communicate well?  That’s such a vital skill. It is well worth our time to focus on developing and nurturing this skill in ourselves, and in our teams.

The cost of what you want

An excellent point:

When you stand and petulantly demand some course of action without regard for the bigger picture, you immediately place yourself into a tiny little box. This person doesn’t understand the full scope of what he is asking, so I can disregard this particular request. Sure, you might know what you are talking about (might even be right in absolution), but the fact that you present your case in isolation makes it less compelling to the person you are trying to influence.

Instead of just taking the free ice cream, try a simple acknowledgment of the associated costs. By placing your request in context, you do a couple of things. First, you demonstrate that you are informed, which lends your position more weight. Second, you highlight that you understand the other person’s position, which helps build rapport. And finally, you open up a conversation about costs and tradeoffs, which is typically the core of the problem in the first place.

via DZone

What are you demanding from others without regard to what it will cost them?  Is that why you’re not getting results?


I’ve been wrangling my feed reader today – culling, adding, focusing, absorbing. Admittedly, recently, the only category of feeds that were read with any regularity was the “entertaining” category. Followed by the “crossfit” and “paleo” categories. This may explain my exuberance for my workouts, and my general sense of malaise at work. I’ve been uninspired.

And that’s no fun for anyone.

So it’s time to feed my brain some new information. I cut several older real estate categories. Trimmed the entertaining feeds to those that I enjoy most. And I beefed up my agile, analytics, and CRO related feeds. I added far more than I can reasonably consume, but I’ll spend the next few weeks evaluating which I enjoy, and will unsubscribe individually to those that are more noise than signal.

Let’s see what happens if I soak my little brain in some new voices.

What do you do for inspiration?

Who is going to look out for me?

Expanding spiritual capacity requires subordinating our own needs to something beyond our self-interest.  Because we often perceive our own needs as urgent, shifting attention away from them can prompt very primitive survival fears.  If I truly focus my attention on others, we worry, who is going to look out for me?

The Power of Full Engagement, Loehr, Schwartz

And so it goes in team building.  How do you convince a curmudgeonly team member to let go of fiercely protecting their personal needs in favor of the good of the team?  Fear – primitive survival fear – is not to be taken lightly.  What are they missing?  Trust of the team, most certainly.  Trust that their needs will be met.

It’s likely not resistance to new ideas out of a selfish or miserly spirit, but rather an indication of a perceived lack of safety and of trust.  Perhaps empathy is called for – seek first to understand.  Display the qualities you wish to embolden in others, oh fearless leader.

A whole lot of us go through life assuming that we are basically right, basically all the time, about basically everything: about our political and intellectual convictions, our religious and moral beliefs, our assessment of other people, our memories, our grasp of facts. As absurd as it sounds when we stop to think about it, our steady state seems to be one of unconsciously assuming that we are very close to omniscient.

Being Wrong: Adventures in the Margin of Error, Kathryn Schulz

ask not what your website can do for you

I was talking to an agent friend the other day, and she was asking me about her site analytics, wanting to better understand bounce rate and page views and whatnot.  Like many in the industry that consider themselves tech-savvy, she has a Google Analytics account for her business site and faithfully checks those numbers – having no idea how to get any value out of them.

So my first question is always the same: What’s your goal?

You get mostly the same answers – to get more registrations or blog subscribers or have them fill out a contact form.  Something along those lines.

And you can certainly maximize those things.  If your goal is as many IDX registrations as possible, we can cram everyone down that funnel.  We can make our goal to increase the number of registrations per 1000 visitors, or some such easily identified figure from our analytics.  I mean, hey.  Only a small portion of the visitors to your site are there to search properties.  Some want information, or the value of their home, or community data, or are checking out photos of a home their friend is purchasing.  But we can cram ’em all down that registration road. 

But I’m guessing that’s not what you really want.  Or ought to want.  Because what I hope you want is to deliver such a delightful experience for that visitor that they happily register, or email you, or download your market report with glee. 

So to approach your analytics with an attitude of whats-in-it-for-me gets you to the wrong conclusions, especially in a service based industry like real estate.

Because it isn’t about what our website does for our company.  It’s about what our website does for our customers.

When I look at a section of my site, first I want to think about who is using it, and what they want to accomplish.  And then I make those things easy to find and do.  And then I can identify and monitor metrics that measure those things.

We can discuss bounce rates and page views and whatnot, but that’s such a small part of the bigger picture.  Without the context of what those things mean in terms of our consumers’ needs and wants and goals, we’re operating in a vacuum.  We optimize for our consumers. And happy consumers take care of us.

the answer is always more data

I’m convinced the answer is always in the data.  At least, as far as generating business is concerned.

There’s a whole treasure of answers, just sitting there waiting – you just have to have the analysis cycles in place to take advantage of it. 

Do you know what people are searching for most often in your particular vertical?  Have you figured out which keyword battles are worth fighting?  Do you have a strategy in place to fight those battles – and a system in place to keep you informed and accountable to your progress?

Can you tell me, right now, without researching your analytics for an hour – which source of traffic to your site converts most often to business?  Or which keywords convert best?  What’s your most highly trafficked page, and does it support your business goals?

Are you talking to your customers using the kinds of words they prefer?

Have you checked, recently?

And if you have, what did you do about it, and is it working?  Do you know?

how to ensure you’re always worse than you could be

I’m a little OCD. 

I’m a little exacting, and precise.

I blame it on my background.

I’ve got an engineering degree where I was taught to define and measure systems.  To improve performance, reduce risk, to evaluate alternatives and measure results.  I spent a quarter century in a ballet studio, perfecting the nuances of both small and large movements, where every tiny detail counts, from the specific lift of a pinky to balancing your entire body weight perfectly centered on a single toe.

It made me an awesome software tester.  Quality assurance and me are like peas and carrots.  It’s part of who I am now.  I can’t visit your site without automatically thinking about ways to break it.  I can’t look at your form without wondering how much testing you’ve done to improve conversions. 

And I get a little frustrated when things don’t work.  Especially stuff that I consider pretty basic. 

I get even more frustrated when I see you trying to fix those things without any regard to testing, or to quality.  Just code the fix, cram it in, and move on.  And when I run into the exact same problem after you’ve told me it’s been fixed?  Lather, rinse, repeat, I guess.

Testing has always been the red-headed step child.  No one likes it, no one wants to do it.  No one wants to implement testing systems at the same time they start development.  So by the time anyone starts testing and running any kind of quality control, it’s already too late.  Your testers will find problems you should have fixed years ago.  And while your dev staff wants to move on to the next fun new feature, those pesky testers keep shouting about the same old stuff that still doesn’t work.

If your development staff is running your testing?  If they’re checking the same code they just wrote?  You’re screwed.  Not only does your developer hate testing, but they’re not objective anyway.

I used to test the software that runs traffic lights.  I did that for 5 years, banging away on the same thing, running through the same battery of tests over and over and over again.  And then I’d do it all over again on multiple operating systems.  For each iteration of the software.  Because if the developer missed something, and I didn’t catch it, there was potential for huge danger.  Putting an entire city of street lights into flashing red, simultaneously.  Not making the light at a railroad crossing change fast enough when there’s an oncoming train.  Some major safety issues.

Now, maybe it isn’t life or death if your little widget doesn’t go blinky-blinky at the right time when I enter a properly formatted phone number.  But if you haven’t implemented independent, iterative, consistent testing for whatever it is you’re doing?

Then you’re creating a sub-par product.  Simple as that.

does anyone really get any mobile traffic on their sites?

I keep hearing how mobile is the next big thing.  And I don’t disagree.  More and more, I do everything I want and/or need from my Blackberry.  So when I hear consistent chatter about an ever increasing wave of mobile users, it makes me think:

How do I, as a business, prepare for and capitalize on these mobile visitors?

First, I wanted to see if I even had any mobile traffic.  And then I asked other real estate agents about their mobile traffic, just to compare.  I had 9 responses in this oh so scientific study.  Here’s what I found.

On average, mobile traffic accounts for 3.46% of a real estate agent’s site visitors.  Answers ranged from 0.55% to 5.98%.

For most, that mobile traffic arrives via a search engine – most answers were 50% to 80% search engine traffic.  And you know what those users were searching for?

The same random stuff they search for on their laptops.  Lots of long tail type keywords mixed with those nice juicy real estate type of phrases.  And while only one person I asked had an individual property address in their top 10 overall site keywords, nearly everyone had an address (or subdivision search) in their top 10 mobile keywords.

There were, however, 2 people that had half or more of their mobile traffic from direct visitors – people who came to the site directly by either typing in the URL, navigating to the site via some kind of saved bookmark, or possibly those who clicked on a link within a document or email.  It’d be interesting to look at those two further, to look at the behavior of those direct visitors, confirm they already have a loyal mobile user following.  Perhaps not coincidentally, those two have the least traffic by far of all the agents I asked, they target the smallest areas, and tend to cover more community type events rather than the larger ‘real estate in your area’ kind of stories.  Food for thought, anyway.

So my mobile traffic pretty much falls within the averages mentioned.  Nearly a quarter of my mobile visitors are direct traffic – Google sends the most mobile traffic, followed by direct visitors, and a distant 3rd are my RSS email subscribers clicking through from those emails on their phone.

The vast majority of my mobile users are iPhoners and Androiders.  No surprise there, as those have the best browsers on mobile devices, IMHO.  People on iPads and iPods account for twice as many visitors as those on Blackberries. 

I didn’t have a single property address in my top 10 mobile keywords, but my mobile keywords and my regular site visitor keywords were pretty much the same.  But bear in mind, these are my blog visitors.  My property search (and quite honestly, the site where I target the juicier real estate type keywords) and my indexable IDX bit live on a different domains and different analytics profiles.  So that makes sense for me.

Other than making sure my site loads quickly for mobile visitors, is clean and easy to navigate on mobile devices – what should I do?

My gut tends to think that mobile users will turn to apps to search for property and get neighborhood information, and not to individual agent sites via browser search results.  And Lord knows I don’t have the resources to compete with the larger real estate app vendors out there.

So what can I do as an individual agent?  Make sure my site is easily readable and navigable via mobile devices, certainly.  But what are my chances to capture eyeballs that lead more directly to sales if I’m competing with really slick national mobile apps, and what’s the best way to do so?

What do you think?  Comments are open, below!

(oh, and we’ll look at how to find these numbers in your analytics in the next post.)

fun with google analytics

Two cool things some folks don’t know about

  1. You can have Google Analytics email you when you have odd patterns in your analytics
  2. You can create advanced segments to look at specific groups of site visitors.


First.  Creating custom email alerts.

Ever had a day when your traffic went crazy?  Someone linked to you from a high traffic site, or an influential person retweeted your link?  Or maybe something bad happened, and all of a sudden, you have no one on your site?

You can set up Google Analytics to email you when those kinds of things happen.  Which is cool.  I don’t look at my analytics every day, but I’d certainly like to know sooner rather than later when something out of the ordinary happens, whether good or bad.

So.  In your analytics, there’s a beta section called "Intelligence" over on the left hand side navigation.  When you click on that, it looks at the history of your traffic and identifies any days (or weeks or months) where something out of pattern happened.  Maybe your bounce rate went way up, or you had crazy referral traffic, or a whole bunch of new visitors.

Spend a little time looking at what triggered those automatic alerts.  It’s kinda cool to go back and see where the anomalies happened.

Now.  Click on "Create a Custom Alert," on the right hand side underneath the two charts.

You can create any number of custom alerts, use nearly any parameter.  I’d like to know when the number of visitors to my site either goes way up or way down. 

So now I can create a couple more alerts, and anytime something goes wonky with my site, I get an email.  Super convenient.

Now.  Let’s talk about advanced segments.

Go back to your analytics dashboard.  See in the upper right hand corner, it says "Advanced Segments" and there’s a drop down?  It probably says "All Visits" for you if you’ve never touched it.

Now’s the time to touch it.  If you click on the drop down, you’ll see you can select different options.  And you can select more than one segment, by the way.  Go ahead and play with it for a bit.

An advanced segment basically filters your analytics.  So you can look at only analytics for new visitors, or returning visitors, or mobile traffic, or search engine traffic.  Instead of looking at everyone, it filters to only those kinds of visitors you select. 

This is kinda cool.  You can look at just your mobile traffic, see how much you have, what kinds of content they’re looking at.  If you select both new and returning visitors, you can compare and contrast how new peeps to your site behave compared to those that have been there before.

Now then.  I’m trying to target local people – people in Tucson.  So often, I want to just look at their behavior on my site.  I want to make sure my local people are finding the information they need, they’re spending some time there, various whatnot.  So I created an advanced segment just for Tucson visitors.

Over on the left hand side navigation, down near the bottom, click on "Advanced Segments" and then click "Create new custom segment" up in the upper right hand corner.

You drag and drop the dimensions and metrics from the left hand side into the center to make your segment. 

So now, when I look at my analytics, there’s a "Tucson Visits" option in my Advanced Segments drop down.  So I can look at just my local traffic and see how they behave.

You can create all kinds of advanced segments and combine several parameters.  So you could just have new site visitors from Tucson as a segment.  Or people that looked at more than 5 pages.  Or you could just look at the people who visited a specific page on your site, or that found your site using one or more certain keywords.  The possibilities are endless.