Don’t just say no, have recommendations

It’s been a few weeks since I talked about client calls. So far I’ve covered:

  1. Why you shouldn’t psych yourself up for a client call
  2. Why taking that client call is probably a bad idea
  3. Why I do take that client call

Today I want to offer an alternative to my ‘polite no’ email from the 2nd post above.

Why not polite no?

So why on earth would I kill more time on a client that doesn’t have the money currently, or isn’t a good timeline match by sending anything other than a polite no?

Someday that client may fit with you and you want to make sure that you’re still considered an awesome option by them.

Specifically with the client I was talking to, I simply didn’t have a good option to refer them to.

My normal recommendations

WP Site Care – they are awesome at handling the maintenance your clients need and taking care of SEO, backups…a bunch of stuff I just don’t want to do.

Grow Development – Run by Daniel Espinoza, Grow Development is a killer place to go for custom eCommerce plugins. I do that too, but some just fit Daniel and his team better. Payment/shipping gateway integrations I just send his way.

Zao – Run by Justin Sainton (lead dev of WP eCommerce) Zao actually works in all the WordPress eCommerce platforms. Justin has been at this for years and can build anything you need. When it’s not something I’m interested in I always ping Justin to see if he’s interested.

But in all that I still didn’t have a good recommendation for that client than had $1000 for an eCommere site. Then Cliff Seal reached out about Evermore.


I won’t dig in deep to Evermore because Post Status and Chris Lema have done a great job telling you all about it.

The short version is that Evermore is a great turn key WordPress solution. Think SquareSpace but WordPress.

So the next time I get that email for a $1000 eCommerce site I’m sending them to Evermore since that client will be in great hands.

photo credit: casaperlanonviolenza cc

Even I’m tempted to chase short term dollars

In October I made the most money ever via Amazon Affiliate links.

A whole $54. Yeah, I know, you’re totally jealous.

I’m rolling in Benjamins right?

Joking aside, I bet you couldn’t guess what the big product that earned 80% of that income was can you?

I’ll give you a second to sit and think about it.

Off focus

When I started out I billed myself as a ‘WordPress Developer’.

I had no specialty at all, I just built sites with WordPress.

And some people paid me for it.

Now they didn’t pay me very well, but of course not, because I wasn’t selling on value at all.

I was just saying give me a PSD and I’ll turn it in to a WordPress theme.

Like 90% of the other ‘WordPress’ businesses out there.

Probably just like you.

My Focus

I’ve got a few properties going.

My company SFNdesign focuses on eCommerce and Membership sites. Sure, I can still build a theme, but that’s not what I specialize in.

I still actually build themes as part of many projects, but people come to me for help with custom tools for their eCommerce or Membership site.

Here I focus on one thing: Helping you learn to run a better business so you can live the life you want.

The life I want

Today I got up at 7am (yeah that’s late, the baby was up till 1am) and ran 5km after reading my kid a story and getting her ready for school.

Then I road my bike to work.

Which got me to the office around 9am.

I’ll leave at 3pm to return something to Future Shop then take the long way home which will be a 15km bike ride.

That means I’ll be home around 4pm and have an hour to hang with my kids before dinner.

That is the life I want to live.

Not rushed and lots of time to be an awesome dad.

Each of my business decisions is framed around that.

Will that next opportunity mean I have to travel regularly and cut a bunch of my time with the kids?

Then it’s not a good opportunity for me.

I want to help you learn to be effective (not efficient, which is a post for another time) so you can build the life that you want.

It doesn’t have to bear any similarity to what my life looks like.

Back to Amazon

Now do you have a few guesses about what someone bought after clicking on my Amazon link?

It was this quad-copter (yes that is an affiliate link).

That has nothing to do with the content I write here. Someone just clicked on of my links and then bought the copter.

That brought in about $46 of the $54 earned.

It’s tempting to break your focus and chase short term dollars.

People also bought about 20 books after clicking on my links and that brought in the rest.

It’s super tempting to start looking for products that have good affiliate fees and guess what all the books I read and recommend aren’t in that category by a long shot.

Starting to write about all these other random products though wouldn’t hit my focus of the site.

Recommending good books that help you run an awesome business does fit with the focus of this site. Even though that’s not how I’m going to make a bunch of money on affiliate fees.

Your Focus

Most small businesses I talk to don’t have a focus at all.

They simply run from one project to the next many of which have little similarity at all.

They chase the short term dollars instead of building a truly established base of being a specialist in one area.

It takes a while to really establish yourself as a specialist, but that’s where the highest earning potential is.

Specialists aren’t commodities like the rest of the ‘WordPress’ companies out there.

Read about some specialists I know

I charge more than many agencies because I specialize and they don’t.

Do you have a specialty?

photo credit: wiredforsound23 cc

Why I write and teach about business

There are a few reasons I write here.


Helping others run better businesses and make more money is a good reason. I do love seeing others win and love knowing I’m a small part of someone having success.


Another great reason is that writing here helps establish my expertise.

This is a long term good thing as I plan to open a few paid Mastermind groups and some paid coaching spots.

To fill those I need people that think I can help them run a better business.

If you want to get in on some of those coaching spots get on my email list to hear about them first


The real long term reason I started writing is that it makes me better at running my own business.

I’m forced to think harder about a problem then I would if I didn’t have to explain it.

Then I have a more profitable consulting business because I’m simply better at running a business.


I coach one person for free for the same reason.

Their questions challenge me with a situation that is a bit different from my own.

The answers that worked for me may not work for the person I coach.

So I need to go back to the principles and come up with new applications. Maybe I need to throw out the principles and get new ones.

Again that helps me run a better business while it helps someone else succeed.


Obviously you read blogs since you’re reading this.

That’s one level of learning for you.

Do you write about what you learn?

Do you pass on your new found knowledge to someone who’s a few steps behind you?

If not then you’re leaving some huge opportunities for making yourself better on the table.

Take every opportunity to learn and you’re going to go further.

photo credit: kalexanderson cc

Does the market agree with you?

I’m sitting here on launch day (to my email list) for my Hope is not a Strategy course and you know what, there hasn’t been a single purchase yet.

Of course I sat around last night talking about how sales could work and running numbers.

Yes I even dreamed about selling out of all packages on day one.

Funny enough this great post from Seth Godin comes across my desk as well.

…while your intent is pure and your goal is to create magic, the most common mistake is to believe that the marketplace will agree with your good intent and support you.

I still feel like the course has way more to offer than it costs.

At this moment with no sales, so many questions about me are going around.

Have I really found a problem that other businesses are having?

Have I shown that I actually have expertise in this arena?

Have I wildly over estimated what others feel the material is worth?

and with clients

Sending estimates to clients used to be the same way with me.

I’d send an estimate and then sit around stressing about the targeting of the estimate.

Did the customer think my pricing was outrageous and totally out of line with the value I could provide?

Did they not like me?

I know that some of you are the same way when you send out estimates.

Not anymore

I don’t feel like that anymore though.

Now I’ve dug in to the value that the solution will provide to my client and state that value.

It took a long time to get that way though. Lots of estimates went out. Lots of trial and error.

You’ll get there too, just keep at it.

Focus on the value you provide to your client. Show them that you can provide the value and then tell them how much it’s going to cost for them to get the value desired.

photo credit: tijger-san cc

You’re not perfect – find a problem and fix it

We’ve all been faced with a problem that’s clearly outside our comfort level.

Maybe it’s a coding challenge that you just don’t know the answer to.

Maybe it’s an estimate for a big corporation and you just don’t know how to position it.

Maybe it’s a tough blog post that you don’t know how to write.

Shitty first drafts

Most people have heard that they should just write a shitty first draft of a blog post and then improve it.

Have you also heard that you should do the same thing for that coding challenge?

How about that estimate?

Then you need to read it again find a flaw in the work and fix it.

Solve the problem

Taking this approach gives you the freedom to fail. The first iteration isn’t supposed to be perfect it’s supposed to have flaws.

Understanding that it’s supposed to have flaws means that you are free to make mistakes.

You’re free to fail.

Then just sit back and read it again and find a problem and fix it.

You can almost always find one errant word or optimize one line of code or tweak that bad first pass at a design.

You can’t ever write it perfect the first time. So don’t expect perfection.

You’re only going to let yourself down.

photo credit: wwarby cc

The rule of thumb I run my business by

I wrote yesterday about your screw up not being your client’s fault.

I told you about my screw up and what I did to make it better for the client.

But I didn’t tell you my guiding principle to running my business did I?

How do I think you should treat clients at every interaction?

How do I decide to treat my contractors with every interaction?

Everything is awesome

I do my best at every point to interact with others through my business and make them feel awesome.

I want them to be blown away with my generosity in gifts.

I want any contractors I hire to tell me they’ve never been paid that fast.

When my client paid an invoice they were not expecting and hadn’t agreed was needed I wanted them to say “wow he empowered us to have the payment discussion on a level playing field, I didn’t expect that”.

All you’ve got is your reputation so make sure it’s one where people think you are awesome

photo credit: gerrysnaps cc

Don’t say it’s easy, you have no idea yet if it is easy

It’s so easy when your on the phone with a client or in a meeting to tell them that a certain feature is ‘easy’ or as the tweet below says “straight forward”.

Edwin has it right, saying something is easy is often a way of saying I really haven’t thought about it yet.

Limit Comments by Team

Last year I had a project come my way where we needed to limit comments made on a custom post type so that they were visible to only users of the same ‘team’.

When the request came through to me there was some line like:

I don’t know how to do it, but it doesn’t sound too hard to me.

Now of course that’s often a flag on a project, though I’ve worked with this designer a bunch adding features to their work so I let the flag go. I know they are awesome.

Really this designer doesn’t even have a proper framework to evaluate the complexity of the project. Which means I asked all these questions:

  • but do Editors (or other roles) have access regardless of teams?
  • do Admins see all comments regardless of the teams?
  • do all users see admin comments, even if they have replied to someone from another team?
  • are we going to show comment counts for the team, or for the whole post?
  • how are we dealing with comment visibility in the WordPress admin area?

Depending on those answers, it may not be very straight forward.

You want to sound awesome

When you’re on that call or in that meeting with the client and you want to tell them that something is easy stop don’t say it.

You’ve had 5 seconds to think about it, not 15 minutes to probe the problem.

I only came up with my questions after checking out the WordPress source for a few minutes to see how comments were written so I could start to work the code out in my head.

You simply don’t have that time when you’re in a meeting.

Then you’ve said it’s ‘easy’ and the client expects a price for ‘easy’. If it’s not actually easy you’re then stuck with your price anchored at ‘easy’.

That may mean the project won’t happen because the cost is suddenly to much for an ‘easy’ bit of work.

Back to the teams

With my project above all the answers came back in the easiest way possible so the project was really straight forward. Add about 30 lines of code and push it out for testing.

One day of work and it’s all tidy.

But I wouldn’t have known that without taking the time to actually start working out the solution in my head.

Next time you want to say “it’s easy”, stop and tell the client you need to look more at the problem and get back to them about it.

Then take that 15 minutes and start to work out the solution in your head and ask your client the questions that will come up as you look at the problems.

It’s often not as “easy” as you thought and then you don’t look as awesome as you’d hoped.

photo credit: azrasta cc

How I watched my 2 year old learn about exclusion

Early in September on what turned out to be one of the last amazing weather weekends of the summer my family and I went camping. My 2 year old daughter got to use her Disney Princess sleeping bag and had half of a 6 man tent to herself.

It was totally awesome.

She got to play at the beach, swim and meet a bunch of new kids at the park.

Sadly she also got a lesson in being excluded from a group.


She ran up to play with 3 or 4 other little girls that were maybe 1 year older than her at the most. They were all already friends and had traveled to camp together with their families.

They decided that screaming “ah get away from the girl” was the game to play and for a while Eden just played chase. She loves to be chased and to chase people.

After about 5 minutes she realized that what was really happening was that the ‘friends’ were running away from her and not really letting her be part of their group.

So she sat down.

Sitting by the camp fire enjoying a morning coffee I could see all this happening and my heart was breaking as she sat down. I can read my daughter and I could see she was sad.

They enticed her to play ‘chase’ for a few more minutes but her heart wasn’t really in it anymore and she left.

Coming back to the campsite she had a huge pouty lip (which is pretty dang cute really) and told me the story of the girls ‘just running away from me and screaming ah the girl stay away.’ Then she told me she was sad they wouldn’t play with her.

Talk about breaking a parent’s heart.

What’s your group

I’d love to say that as we grow up we learn that it sucks to be excluded from a group and we become more inclusive. That’s not what seems to happen though.

When we are left out we react by finding a group to join and excluding someone else.

Do ‘most’ freelancers speak poorly of those that work on oDesk or Elance? Yes they do. How do you think that the people reading your blog posts feel about you saying how terrible their work is?

Their work that is paying the family bills and keeping a roof over their heads?

When we crap all over places like that we lose the opportunity to educate the users there because they’ll never come back to read our site.

I did work on Elance when I started and I was happy for the work. I don’t do it now purely for business reasons. I don’t knock any person that gets work there, they are just running a different business than I am.

Are there strong cases not to work for Elance or oDesk clients? I certainly think so, but if we just go on about how terrible the sites are we are the group of kids running away.

We are excluding others instead of welcoming them into freelancing with open arms and working to help them run a proper business.

I hope that I can be an ‘arms open’ person and help train everyone that comes near me.

I hope that you can strive for that too.

photo credit: gfpeck via photopin cc

Technical Debt for Clients

If you’ve ever built a big software project you’re totally familiar with the idea of technical debt, but it’s unlikely that your clients are familiar with it. So lets figure out what it is, and what we can do about it.

What is Technical debt

Technical debt can also be caused by building a feature under a specific assumption, then later in the project we add new features that change the assumption. With our assumptions changed, we now have to work around that original code. We know the whole time that we can rewrite the original code, under our new working model and we will have code that’s easier to work with.

Time is also a factor in technical debt. Decide you just have to have a feature ‘by tomorrow’ then it’s more likely someone is going to have to take a shortcut to hit that deadline. Sometimes if you want a feature it’s better to move the time requirement so that it’s right the first time.

Undoubtedly, as suggested by this article in 24 Ways, a lot of technical debt can be dealt with by better planning from the outset. Building under the model of Test Driven Development can also head off technical debt. Neither of these things mean that a project will have no technical debt, just that it’s managed better.

Dealing with Technical Debt

So how do we deal with technical debt? Well every 3 or 4 development cycles, we stop and evaluate the code based on our current working model. Then we refactor the code to suit the new model.

Yup that’s it. All we need is some time to deal with it. Maybe even an outside set of eyes to look at the code. Developers become blind to their issues, just like writers become blind to spelling mistakes and errors in their manuscripts.

The Client Problem

The issue is that it’s hard to convince clients to spend $$$$ to have us rebuild something that, at least from their eyes, works perfectly fine. Then we tell them at the end of the refactoring, it’s all still going to look the same to them. They often see no immediate return on investment for refactoring.

I’ve Left Projects

It will come as no surprise to the experienced developer to hear me say that I’ve left perfectly good clients because of technical debt. At some point the debt load becomes so high that the project isn’t fun to work on anymore.

The project has become an exercise in building ‘hacks’ to make the old models work still.

So Mr and Mrs Client, part of this is on you. When developers ask for time to refactor code, you need to give it to them. If you don’t you can be sure that they’re going to be less and lest interested in the project. At some point they’re going to leave and the next developer you hire is going to see a mess of code and declare it unworkable.

Your original developer knew it was becoming unworkable, that’s why they left.