Mastermind groups are awesome

Freelancing Consulting can get lonely

As a freelancer (don’t use that word!), more than likely you work alone a lot of the time. Whether that’s in a home office, from a coffee shop, or a shared office space, you’re the only one working on your business. Now, working alone can be great, of course; it means you’re the sole decision-maker, you have complete autonomy over how you run your business, you get to decide how to deal with difficult client situations, etc.

The problem is, sometimes outside input can be immensely valuable! Other people often have valuable perspectives to offer, based on their experience and their lack of emotional investment in a situation.

Having a business partner (which I do) helps with that, but even so, it can still be great to get input from another trusted source. That’s why I think being part of a mastermind group is one of the most valuable changes you can make in your business.

A little over four months ago, Michael and I joined a mastermind group with Nick, Jane, Philip, Zack, Kai, Kurt, Jeremy, and Jonathan. Joining this group has been the single most valuable change we’ve made to our business in… ever. That may sound extreme or flippant, but I believe it’s true. We continually push each other to be better at what we do, help each other communicate better with clients, deliver (and charge for!) more value, and encourage each other.

Convinced, but don’t know what to do next? Read on.

Talk to people

The only reason I’m in this mastermind group is because Nick somehow knew of me, and knew we were working on a productized consulting service (inspired by his, as a matter of fact). I think perhaps Philip also knew of me, and they colluded on starting the group, but I can’t remember the details. However, I do know that it only happened because I’d interacted with them on Twitter at various times. If not for that, none of this would have happened.

If you know a few people local to you who is also independent and at roughly the same point in their journey, great! Start talking to them and suggest you formalize things somewhat and form a mastermind group.

Don’t know anyone local? No problem. Hop on Twitter, make some connections, and ask a few folks once you’ve built a relationship with them. Don’t know anyone there? Follow me on Twitter, see who I follow, see who follows me, etc.

Once you do get a group going, if you’re not sure what to talk about (especially if you’re all fairly new), I’d suggest reading a book or two together to give you some structure. Brennan Dunn’s Double Your Freelancing Rate and Alan Weiss’ Value Based Fees are both great choices. That will give you something to talk about, and help you improve your consulting acumen and pricing fairly quickly.

Need help?

If you have any questions about starting a mastermind group, what to talk about, etc., leave a comment or shoot me an email, and I’ll help however I can.

Don’t call yourself a freelancer

The other day, I tweeted some advice to freelancers, including “don’t call yourself a freelancer.” I got a few responses asking why, so here’s an explanation.

In your clients’ minds, freelancers are inherently less valuable than [professional whatever you are]. Their neighbor’s unemployed college dropout kid who has a nice camera calls himself a freelancer. Their stoner second cousin who makes a pittance on Fiverr calls herself a freelancer. Is that who you want to be associated with?

Besides being asked why, I also got replies asking if not freelancer, then what? If you’re a writer, call yourself a writer. If you’re a designer, then say so. If there’s not a succinct term that encompasses what you do, then use “consultant” as your title.

Call yourself a professional, conduct yourself like a professional, deliver professional results, and set professional prices. You’ll enjoy your work a lot more, and earn more in the process.

Advice to a new freelancer

I’ve been exchanging emails with a friend about his career, which includes considering whether to make a stronger move toward freelancing over employment. Yesterday he asked me this:

I guess I’m more of at of a loss of where to get clients. I honestly have no idea. I was thinking there was two routes to go down. 1) work with agencies or 2) work with small businesses. I figured the agency route would be much easier from a developer point-of-view, but since I haven’t done either, I’m just guessing. Which do you work with? Have a preference? Advice?

Here’s what I said, which should be useful to others not in his specific situation as well:

We (The Bright Agency) pretty much exclusively work directly with the end client. We’ve been happy with that, but if I were starting from a blank slate, I’d be going after whatever I could find, and building some agency relationships would almost certainly be part of that. I wouldn’t advise making that a long-term strategy as I believe your profit would be very limited, but it would get some projects under your belt and pay the bills. At the same time, I’d be trying to find end-client work as well. I think I’d give Robert Williams’ Workshop a try – I haven’t paid for the service as we get enough work without it, but his content is great, and I think it’s a compelling sales pitch for someone in your position.

I’d also strongly suggest reading Double Your Freelancing Rate if you haven’t already – it has a pretty solid foundation on pricing, how you position yourself and communicate that to leads/clients, etc. I’m a big believer in moving beyond the “$xx/hour for ____ development/design service” model, and toward the “$xxx/hour or $xx,xxx/week for making your business big money” model. I’d also suggest calling yourself a “consultant”, instead of a “freelancer”. Again, it’s all about the positioning.

Setting up scheduled posts with Member Mouse

On a recent membership site we built, we had a few specific criteria for how members would be able to access content:

  1. New content is published every week on the same day of the week
  2. Each week, all members get access to the same new piece of content (as opposed to a drip schedule)
  3. Members should only be able to access content that has been published since they signed up (as opposed to all old content)

Member Mouse has support built in for protecting content on a drip schedule. With that setup, what content a member sees each week (or day, or month, etc.) depends on how long they’ve been a member. For instance, they might immediately get access to post 1 when they join, then post 2 a week later, post 3 a week after that, etc.

One benefit of a drip setup is that if you only have a set amount of content that you’ll ever publish, once you prepare it all, you’re done. The downside to that approach is that once a someone has been a member long enough to access all of the content, there’s no reason for them to continue paying. As a result, the lifetime value of a member is capped. Another drawback is that because each member isn’t seeing the same new content each week, you can’t discuss that specific piece of content when promoting the site (for instance “this week, members get XYZ – join now!”).

With all that in mind, this site needed some customizations to make the content protection work as desired. We can use Member Mouse’s built in content protection settings and grant access on day 0, but that’s not enough.

Member Mouse content protection


With that in place, when a new member joins, they’d be able to access all previously published content, which isn’t what was needed for this site. To prevent that, I simply ran a quick check to compare a member’s “days as member” value in Member Mouse to the number of days a piece of content had been published, and if it had published more than seven days prior to a member joining (well, not really – more on that in a minute), the member is redirected to an error page. Here’s the code to do that:

Remember how I mentioned that I’m not really comparing to a member’s join date above? Take a look at the “days as member” calculation. I’m not actually checking the member’s join date. Instead, I’m referencing the Member Mouse “days as member” number. The important difference there is that once a member joins, that join date can never be changed (at least not from within the Member Mouse UI). By contrast, the “days as member” number can be manually changed later on:

Member Mouse days as memberWhy does that matter? Well, the truth is, it probably doesn’t. However, I believe it’s always good to design a solution with edge cases in mind. Perhaps someone will join the site at some point, then want to pay extra to be given access to all old content. It doesn’t take any extra work to write the code in such a way that that kind of scenario is easily accommodated, and it’s one less issue that might crop up in the future.

Actually, all of the above is really just extra protection. The way we set up the site, a member shouldn’t ever actually see a link to a piece of content they aren’t allowed to access. To ensure that this is the case, we alter the query on the meal plan (the custom post type we’re protecting) archive page with the following code:

Here, we again check for the “days as member” value, then add seven days, and get only content published after that date. Why the seven days in both of these functions? Because content is published weekly (on Fridays, in this case), and we want to avoid a situation where someone signs up and has nothing available to them. This way, as long as content is published every week, a new member will immediately have access to a piece of content.

Additionally, on that meal plan archive view, we filter the message that’s displayed if no posts are found and replace it with our own message. If the user is logged in, then we apologize (because they should be able to see something), and request that they contact us. If they’re not logged in, we tell them, and provide a login form (helpfully provided by Member Mouse) in case they’re already members but just happen to not be logged in.

We also encourage them to view the plans available if they’re not a member yet, and link to the relevant page on the site. Non-members shouldn’t ever get to that page, but again, we’re trying to anticipate the edge cases and design for them, rather than ignore them. I’m sure our client would rather a visitor be encouraged to browse membership options if they happen to land on that page, rather than being rudely turned away!

Got any questions about Member Mouse customization? I’d love to help out if I can. Also, if you see any issues with the code I shared, please let me know!

The Value of Participating

One thing I’d like to do a lot more of this year is helping others, especially in the WordPress community. I am by no means an expert developer or mover and shaker in the community, but I do know that there are things I can do to help and teach others.

In that vein, I often offer up suggestions (especially grammatical suggestions) when people I follow on Twitter publish blog posts or other content on the web. Sometimes I wonder if it might come across as annoying, but I usually get a thank-you of some sort in response. I figure having a better-written post helps them look better to more people, so it’s probably welcome in most cases.

Brian Krogsgard is one person I’ve done that to a few times, and it must have made a a good impression on him, because the last time I did that, he responded by saying he’d like me to just make those edits myself:

I told him I’d love to help:

However, I didn’t expect what happened next. Brian emailed me a few days later, and asked if I’d be interested in coming on as a Contributing Editor to help with edits, writing posts, and generally growing the site. I was surprised, and very excited! The result is Brian’s post today announcing that I’ve joined the Post Status team.

I’m thrilled with this development, for two reasons. First, I really like Brian and what he’s doing in the WordPress community, and I’m really looking forward to working with him and getting to know him better. Second, I’m excited about the opportunity to get even more involved in the community, and help more people however I can.

My point in sharing this with you? Participating in a community, whether that’s WordPress or any other group of people, can result in unexpected opportunities. Sometimes it can be easy to keep your head down all the time and just focus on what you’re doing. Try to remember to talk with people, help out where you can, and stretch your boundaries every now and then. You never know what might happen.

And finally, I’ll note that I got Brian’s email inviting me to be a Contributing Editor on January 27th, my birthday. Coincidentally, I tweeted Brian an offer to help with working on Post Status exactly one year prior:

What took you so long, Brian?!?!

Git clean

Thanks to Josh Eaton, I recently discovered git clean. This command came up because I had somehow created a rogue file in the root directory of a site I was working on (I’m not even sure how it got there), but couldn’t figure out how to delete it, due to its odd name:
Bizarre filenameJosh helpfully suggested that I try using git clean, which worked!

Basically, git clean removes any “untracked files” from the working tree. That is, it removes any files you haven’t already told Git about (e.g. via git add [files]). This was useful in my case because I couldn’t easily delete the file otherwise, but it could also come in handy if you started experimenting with some new work, especially if that work were in several different new files, that you hadn’t already started tracking yet.

Warning: this will delete files, so be careful! In my case, just running git clean by itself did nothing, resulting in the error message

fatal: clean.requireForce defaults to true and neither -i, -n nor -f given; refusing to clean

However, just to be sure, you should always run git clean --dry-run first, which will show you what would be removed if you ran it with the -f or –force flag. You can also perform an interactive clean; see the linked documentation for more information.

3 systems you can set up to grow your business in 2014

In my last post, I talked about the relative value of setting up systems versus setting goals. Basically, the argument is that if you set goals but don’t set up systems, you might not get anywhere. However, if you set up systems, but don’t have a concrete goal in mind, you can still make forward progress. (The idea behind this and the motivation for that post comes from James Clear, who goes into more detail on the concept)

With that in mind, I want to share some ideas for systems you could set up for yourself and your business, based on what I’m doing in 2014. This assume you’re some kind of freelancer/consultant doing design/development/marketing type work, but these same ideas could easily be applied to other types of businesses and people in other situations. Need help applying them to your situation? Email me and just ask – I read and reply to every email I get from readers.

On to the systems!

Set up a system for regular writing

It’s no secret that writing regularly can have a huge impact on your business. What might not be obvious is all the different ways it can benefit you.

1. More traffic to your site
Google loves fresh content, and the more fresh content you post, the more search traffic you’ll get to your site. This is definitely a long-term benefit; don’t expect stunning results overnight. However, if you stick with it, the results can be very impressive (and impactful).

2. Build an audience
What should you do with all that traffic you get? Build an audience, of course. Don’t just give people to read and no way to stay connected to you: ask them to sign up for your email list (while offering them something of value, of course), then **help them** by sending them useful information often. Later on (or now, if you’re ready), when you have something to sell, you’ll have a (hopefully large) group of people who care about what you have to say and trust you, and who will thus be hot leads for whatever you’re selling.

3. Become a better communicator (and look more professional)
Have you ever received an email from someone that was poorly written? Was your first reaction that this person must be a well organized person who has great attention to detail and who would be wonderful to work with? Probably not. Fair or not, you’re judged by your writing when it comes to the web and email. Better writers are able to communicate faster, more clearly, and come across as much more professional (and thus valuable). Want to get better? Just start writing. I hunted ducks a lot growing up, and we always joked that with a new shotgun you had to “get all the misses out” – it was our silly excuse for missing an easy shot. However, in writing, there’s an element of truth there – you won’t get the bad writing out of the way until you get it out on the page. The only way to improve is to practice.

Set up a system to ask for referrals

This is something I’ve done a terrible job of in the past, but no more. Our business is almost entirely built on referrals, and yet we’ve done nothing to maximize that stream of leads. Starting this year, we’ll be contacting a past client every week (until we’ve exhausted our past client list) to ask for a referral (and something else; see #3). We also recently added to our processes a calendar event that reminds us to follow up a few weeks after a project conclusion to make sure the client is happy with everything and to ask for referrals (after we make sure they’re happy!).

Please don’t be like us and wait until you haven’t talked to a client in months to ask for a referral. Instead, check in with them a few weeks after a project’s completion, make sure they’re happy with the results, and ask for the referral. The added benefit here is that sometimes, you’ll find out they were happy with your work, and have been thinking about asking you to do some more stuff they don’t have time for, and your call was just the nudge they needed to hire you again.

Set up a system to build up a new stream of revenue

Maybe you’re trucking along just fine with your current business model and are happy with your income level. If so, that’s great! But maybe you’re like us, and you want to both grow your revenue, and have more predictable & stable monthly revenue numbers as well. We’ve found that one-off web projects, while something we’re great at, can be frustrating. We pride ourselves on building great relationships with our clients, but then we just get the final check and call it a day. What a waste! To put a stop to this, we’ve started selling productized consulting services. Basically, a client pays us a fixed monthly fee (but it’s not a retainer – this isn’t buying a package of hours), and we help them grow their business via their website.

To jumpstart this revenue stream, in 2014, when we contact past clients to ask for a referral, we’ll also talk to them about this service and see if it would be a good fit for their business. It won’t be for all of them, but at the very least they’ll learn about it, and possibly be able to refer someone else to us who might be interested in it. Also, when we talk to new prospects, we now talk about this service from the very beginning, with an eye toward either starting them off with it before doing a full website project, or moving them to this service at the conclusion of a full web project.

Can you use any of these ideas for systems in 2014? If you don’t think you can, email me; I’d love to help you figure out a system you can use to grow your business and improve your life this year.

Can I ask you a favor? If you know someone who might benefit from this (and other content like this), could you share this with them? I’d love to help more people grow their businesses and improve their lives in 2014. Thanks!