Home » business

Tag: business

Website maintenance for WordPress

Gone are the days when you would set up your web pages and you would be done for the next 10 years or so. In today’s world, most websites require some sort of maintenance work and that is especially true for WordPress.

Why is maintenance important?

The number one reason is security. Your site is not alone. It exists in an ecosystem and it is connected with many other systems for it to work and do its job. All of this is in a continuous state of change. Change means that potentially new software problems are introduced that could affect your site. This change also means that new security exploits are discovered that could make your site vulnerable.

Unless you are a security expert and keeping on top of web security issues is your job, it is a daunting task to keep up with all this change. I get it. But that is no reason to just give up on it entirely.

At the very least keep your website components updated (core and plugins) and have good backups in place [link to backups].

The second reason is to continue to be relevant. As the services and business around you evolve, your website needs to evolve to keep up or even to lead the way. So maintenance, in this case, can go from simple website updates to constant incremental improvements so that your users’ experience gets better and better. The most common issue here is that integration points with other services change and without a maintenance plan in place, your site would just stop working at some point.

The third reason is to make sure your website is still functioning properly. You don’t want to hear from your customers that your store is not working. How many sales did you lose before someone took the time to contact you? You don’t want to wait months to discover your most valuable page is broken and so Google dropped it from the search index. The solution here is to have a test plan in place. Once a week you could check your home page, your purchase process, and the signup process and make sure they work. For bigger businesses, an automated test plan may be a better solution.

The Cost of Website maintenance

There is a cost for maintenance. That is time if you need to do it yourself, or money, if you need to hire someone to do it for you.

Instead of thinking just in terms of costs and maybe decide not to do it, ask yourself how much would it cost you in the long run *not* to maintain your website. In that sense, maintenance is a form of insurance that you pay for your peace of mind. It can also be an investment that you make in your business growth.

How to do it?

At the most basic level, you need to keep your software updated. For WordPress, that means updating to the latest stable version, and also updating your plugins. It also means that you delete (not just deactivate) old plugins that you no longer use.

A more intermediate level would also include some database operations to keep lean, optimized and fast.

For more advanced users you may have to hire someone to do this for you constantly: monitor the uptime, make sure that the core business processes are still functioning, check the integration points and update the software as required, optimize for performance and so on.

The Take-Away

Don’t ignore maintenance. When you build a new website make sure you include a budget for it and that you also discuss it with your developer. And if you already have a website, you should also have a maintenance plan in place.

Do you have any “lessons learned” the hard way? I’d love to hear about them in the comments below.

Facebook ads? Love them or hate them?

Let me start by saying that I am not a big fan of ads in general or social media for that matter. In fact, I used to dislike the word “marketing” altogether. It seemed that marketing would be something that only con-artists would do to get a sale :).

But that was because of all of my bad experiences with ads and marketing in the past. However, it turns out that there are good ads and good marketing!

Here is a definition of marketing that I like (probably by Seth Godin):

“Marketing is generously solving other people’s problems”.

So marketing in this sense is serving not only selling.

And out of this definition follows a good ad. A good ad is one that is more of a training than a sales pitch. It adds value to your life just because you paid attention to it. You have learned something and if you are ready and willing to go deeper, then yes, you can buy the product, service or training.

I cannot say that I am an expert with Facebook ads, but I have run ad campaigns on Facebook for a couple of years so I have learned a thing or two.

What I like best about them is that you can really focus on your target audience. That is very useful when you are looking to reach people who are interested in what you have to share.

The next thing I like is the format. At least on Facebook, it feels organic and if crafted correctly it looks like a regular post and not like an ad.

Next is the way you can control your budgets so you have a clear picture of your spending.

There is one thing that I don’t like, however. That is tracking the results.

Maybe I am still doing something wrong, and I still have to fine tune my processes, but I have not yet figured out a reliable way to determine which ad is performing better, especially when it comes to converting into sales.

The setup I have worked most with is a WordPress site with a WooCommerce store. On top of that, I have used the “Pixel Your Site” plugin to integrate all of it with Facebook.

If you know of a good resource about conversion tracking with the Facebook pixel, drop a link in the comments below!

Why use Facebook ads?

After testing this for some time, it is clear to me that Facebook ads are a good way to reach new people, or just to send reminders to your current audience. Ideally, new prospects would find you through word of mouth. What you have to say is so remarkable that it has to be shared with other people! But when that does not happen, you can test out ads and look for a new audience. (I am assuming of course that what you have to say or offer is indeed really good, but you did not find the right audience yet).

WordPress and the Email Problem

Have you ever had a WordPress site and your outgoing email was just getting sucked into some kind of black hole, never to be seen again?

I have discovered through experience that this is very common. And the problem is not with WordPress, it is actually with your hosting provider.

The only reason WordPress seems to be the most affected it is because it is so widely supported by hosting environments and that it is free. And not all of the hosting providers do a good job with delivering your email.

When your website is using what is called a “shared plan”, this means you share the server resources with other websites as well. And those websites may not be as friendly and ethical as you are. In fact, because it is free and so easy to use, there are many people who abuse the email feature of WordPress to send spam.

The easiest solution for the hosting providers, in this case, is to just block the outgoing email capability for everyone, including you!

This does not only affect shared plan users.

After 10 years or running an online business, and keeping an email quality score of 9+ out of 10, our email got suddenly dropped. We had a dedicated server, so we were not sharing our IP with anyone else. And we only found out of this problem because of our customers complaining about not getting their orders delivered. Yaiks!

Contacting support did not help. There was just a general reply that all outgoing email was now routed through a different grid and they were very strict in their rules. The problem was that everyone was treated the same: spammer or genuine business! And of course, the common rules were those applied to spammers. The good history and reputation of our business did not matter anymore.

Complaining did not help so I had to look for

Alternative solutions

There are two that I found:

1) Move to a different hosting that knows how to manage outgoing email well. At the moment of writing, the only one I can recommend is SiteGround.

2) Buy an outgoing email service.

I will focus on the second one because there are some mistakes I made and lessons that I learned.

Since we were used to having free outgoing email with our server, it did not make sense to me to get a paid service. So I just looked for companies who offered free email delivery if you stayed under a certain quota.

This plan backfired big time. Most of our email was sent all right, but it was going straight into the spam folder of most of our customers.

Out of the Spam Folder

The problem was that the free plan was again shared with other people who were in fact spammers.

It was time to do the math and it became obvious that we were losing a lot of customers because we could not communicate with them any longer. At this point paying for a high-quality outgoing email service began to make much more sense. Once I took the leap I had no regrets. The kind of tools you get with a paid service, and most importantly the deliverability, generated more than enough customers to cover the costs.

For an online business where it is important to stay in touch with your audience, it makes sense to have a paid email solution.

I have used SendGrid in the past and I was very happy with them. But I have moved to MailChimp because of their better automation and better integration with WordPress.

Some Technical Details

Correctly setting up outgoing email involves some technical details about DNS, MX records, DKIM, SPF and others. These are beyond the scope of this article, but if you need some guidance ask me in the comments section.

The Successful WordPress Recipe

In almost all of the cases where I was hired to help with a website, I had to deal with a WordPress setup. I have done this often enough to discover some patterns and to create a “WordPress Recipe” that I can use and apply really fast and that was proven to work!

Why the recipe?

WordPress’s power is that it is simple to install and set up by a non-technical person. But that is also its weakness. It is easy to conclude that after a successful install “you’re done and ready to go”, but that is usually not the case.

The common elements

The online store. Most of the websites today sell a product or a service. The most flexible solution that I know of is to use WooCommerce, connected with PayPal. And of course, there are all sorts of add ons you can use to customize the store to your needs.

The newsletter service. As a business, you need a way to stay in touch with your customers and to get leads. The best way I know how to do this is by capturing emails and using them with a newsletter service. MailChimp is a common choice. Contact Form 7 is the plugin that connects MailChimp with your site.

The contact form. If you are selling a product, you need to allow your customers to ask for support. Also, prospective customers should be able to reach you with presales questions. You can solve this with a contact form done right. What do I mean by “done right”? Two things: first you need some sort of spam protection so that only genuine contact requests get to your inbox. And secondly, you need to save these requests in a database in case your email happens to not be working.

Website Analytics. It surprises me how many website owners do not have any analytics reporting setup. If you don’t use analytics you could be missing out on potentially vital information ranging from technical problems with your website to discovering how your customers find you and where, in turn, you can find them. The best tool for this is Google Analytics. It is easy to set up and does not require any maintenance. Once you have it on your website any time you need to make a big decision about your business you can consult the analytics data to determine what the impact may be on your traffic and customers. Usually, the WordPress theme has a way to add this code. If you need something more advanced then PixelYourSite is the tool I’d recommend.

Search Engine Optimization. This a very broad topic, but a good start can get you a long way. At the very least choose a theme that is SEO friendly and properly configure your website structure through permalinks. Also, install the free plugin from YOAST and follow the configuration steps to make your pages more “google friendly”. I should add here that starting with 2018 the mobile users have surpassed the desktop users (in the data I have access to), so the website needs to look great on mobile first and desktop second! This is a big departure from: let’s make a great desktop website and then we’ll fix it on mobile.

Social Share. This is one is optional in my mind because I am not very convinced that it helps. If you know better let me know in the comments below. Some themes do provide this feature as do some plugins, but I have not found anyone that I could recommend. What I usually end up doing is to create custom code to add social share on the pages that I need to.

Website Security. Unfortunately, none of the websites I was hired to work with had good security in place. In fact, many times I was hired to try and salvage a hacked website and that is not always possible. WordPress is notorious for being easy to hack. This is not actually their fault. The paradox is that the software is so easy to use and install that many people who use it are unaware of the online security pitfalls so they fail to take the required steps to secure their website. To get you started you should only use popular plugins that have a good reputation of high quality. And you need to install and configure a security plugin. The one that I use and I recommend is All In One Security. Your hosting can also help here if they provide a malware scanning service.

Backups. I have learned the lessons of good backups the hard way. These days I don’t even take on clients if they don’t agree with a backup policy. It is too risky and so easy to make a mistake that costs both me and the client. I don’t have a plugin to recommend here. I personally have a backup server, with custom code, where I keep version mirrors of my work and my client’s data. This allows me to do quick restores in case of trouble and to work fast, knowing that even if I make a mistake, I can always roll back.

The WordPress quick setup Recipe

  1. Install WordPress
  2. Install a theme. I recommend DIVI (with some caveats)
  3. Install WooCommerce and connect it with PayPal (or Stripe)
  4. Install Contact Form 7 and connect it with MailChimp
  5. Setup the contact form in Contact Form 7 and also install Flamingo. Configure spam protection with recaptcha. Do a test of the contact form to make sure it works.
  6. Add the Google Analytics code in your theme
  7. Install and configure YOAST
  8. (optional) Install a social share plugin (or use custom code)
  9. Install AllInOne Security plugin and configure it.
  10. Setup automatic, versioned backups.

A note about choosing a theme

As you know I recommend DIVI from Elegant Themes. What I like about it is that you can quickly have a beautiful website that is mobile friendly, it is super easy to update and it’s very customizable without having to write any code.

But all this comes with a price!

I am not very happy with the performance of the theme. Sometimes it feels bloated. But there are ways to mitigate this problem. Another much bigger issue is that you are locked in with this theme. If you decide to use DIVI you might as well purchase the lifetime package because it will be incredibly hard to change to another theme down the line. If you think this may be an issue for you then you may want to look into Beaver Builder.

What is Value Based Pricing and Why should your business care?

If you hire me to do a website for you and it takes me 40 hours to do it, would you pay me $6,000 dollars? What if it takes me 20 hours? Should I charge only $3,000 because it takes less time and effort?

I used to think that indeed, if something takes less time to do, then I should charge less.

But there is a problem with this approach. Charging for time punishes me for being good!

As I have built many websites, I can work really fast, I have a lot of prebuilt components that I know how to integrate, and I can foresee and prevent a ton of problems. This means that I can produce a quality site much faster than a couple of years ago. But because I put less time into it I get less money for much better work. The better are more efficient I get, the less money I make.

Because of this conflict, there is always a counter pressure that says: “don’t work fast, don’t be efficient… because the slower you work the more you can charge the client”. When I charge for time-spent there is no incentive for me to deliver high-quality work fast, other than my personal integrity.

An alternative way is to do “value based pricing”.

This means that you should charge what is worth to the client, regardless of how much time or effort you put into it.

This may sound unfair to you. I know that was my first reaction! Just because I have more money to spend this means I should be charged more? That sounds like a rip off!

So let’s look at an example.

You have realized that you have more mobile users on your website than you used to. But your website is not mobile friendly! This means you are potentially losing a lot of customers.

After crunching the numbers you realize that if you got 10% of the mobile users to buy from you, you would double your annual revenue from say $200k per year to $400k. So that is an increase of $200k per year.

Do you think is fair to spend $20k to get that increase in revenue? That is 10%. I think it is fair. And there are people willing to spend 50% to get that increase because they will continue to generate the new revenue year after year.

So the question should not be how much does it cost, but rather how valuable is this to me and how much of that value am I willing to spend to get it? 10%, 50%, 80%?

Why would you spend 50% and not 10%? The answer is that spending more reduces the risk of failure. You know the saying “don’t spend a lot of effort to solve a small problem and don’t spend little effort to solve a big problem”.

Why is value based pricing important to your business?

The short answer is that it gets you to think on how you can add value, instead of how you can cut costs. There is no limit on how much value you can add, but you can only cut costs so much before there are no more ways to cut.

And when you think about value, instead of cost, you get clarity.

Here is what I mean. When a client wants to hire me to do something I try to work with them to determine the value of what it is they are trying to do. And in some cases, they realize that they were focusing on the wrong thing. They were willing to spend money on a change that did not actually add any value to their customers.

Thinking about value first made that clear and allowed them to make better decisions on how to serve their clients!

Credits

This post was inspired by Chris Do from TheFutur. Thank you, Chris!

To Backup or not to Backup

Some years ago I had the opportunity to work alongside a veteran software developer. That was a treat for me and also a way to learn big lessons fast.

I remember being overconfident in my abilities, fresh out of school, and making silly mistakes when all that knowledge had to be put into practice.

I wanted to be quick, and agile, and free! I wanted to get in, fix the problem and move on!

But there was an incident that taught me a valuable lesson.

The server we were managing got hacked and crashed.

Working alongside the Veteran we managed to identify the security vulnerability, fix it and then restore the website within 6 hours. This was a big and popular forum. 6 hours recovery time was much shorter than the couple of days that this usually takes.

Shortly after restoring access, I heard from one of the members saying: “The way you recovered from this and the speed at which you did it is nothing short of impressive. In my career, I have worked for big software companies and none of them have in place such a good recovery plan.”

I could not take much credit for that, so I decided to pay attention to “the Old Veteran” because it was clear now he knew was he was doing :).

The Importance of Backups

We were able to bounce back so quickly because we had backups. Now only that, but we had versioned backups. Meaning we could go “back in time” to before the problem, see what changed and fix it. And then restore almost all of the user data, with minimal loss. Without versioned backups, this process would have been long and tedious and I do not know if we would have been able to spot the point of entry.

This is a happy ending story and here is what I have learned:

1. You always do backups – even if you think you don’t need them.

2. You test your backups – an untested backup is no backup. I have a story here where a client was paying their hosting company for a remote backup system and when the time came to use it, the backups were corrupted and so not usable.

3. You never delete things – you rename them and then archive them – this way you can always retrace your steps back to something that was working

4. When writing software you always, always use source control – which is basically a system that does smart backups of your work that allow you to “go back in time” and fix problems.

A beginner’s mistake- “I am too good for Backups”

As I have said, fresh out of school, I had bright ideas and I wanted to move very fast, but I did not ever have to deliver work that was used by real people, in a real situation, facing potential attacks from real online threats.

When you are prototyping and testing out an idea, it is OK to be quick, because if the idea is bad or not useful, you need to find out fast. But once you have something that you want to build out for the long term, then you need to switch gears and sacrifice reaction speed for being more organized.

I confess that this did not make sense to me for a long time. But as I worked in bigger and bigger projects it became obvious how the “slow work” of thinking of a structure to organize your code, setting up source control and doing backups was actually the fast lane. Why? Because it reduces risk and allows you to easily maintain the project as you move forward.

The opposite of this is working at neck-breaking speed, not “wasting time” with backups or source control, in order to put something on the market quickly. All the projects that I managed or I was a part of, that did not put in the time to be organized, eventually ground to a halt and had to be abandoned or rewritten.

I have done this mistake enough times to learn my lesson: for quality and sustainable work always do backups and use source control.

Client’s point of view – Do backups make business sense?

It is now obvious for me that backups are not just a good idea. But why should you care about them?

It depends on how well you can manage risk and how important is your data and your customers’ data to you and your business.

If you can afford to lose it all, then you don’t need backups.

If you can afford the downtime of having to rebuild your application from scratch, then you don’t need backups.

But in my opinion, good backups are a cost-effective way to mitigate the security and data loss risks associated with running an online business.

Do you have a backup policy in place? And if you do, have you tested your backups lately to make sure that you will find in there what you expect to find?