Some Things I Have Learned Running Websites
Over the years I’ve managed or launched over 30 websites. Here is a list of the mistakes that I’ve made and hopefully will help you not make similar ones.
Separate your domain company from your hosting company
One day your hosting company will fail you and you will want to move, but if you run your domain through them, you risk being stuck with them. They might increase their rates, have a major server outage or you might outgrow them. Separate companies allow you to move away at a moments notice without risking losing your domain name.
Hosting companies all lie
They are smaller than they claim. Most just rent space from the handful of big datacenters. Unless you see outside reviews or uptime monitors (i.e. pingdom) don’t believe a word they say. They like to upsell points that you won’t understand — “Fast Dell Xeon Servers” is a worthless statement.
Use Google Analytics on everything
This is basic, but easy to forget as you add pages on the fly. Without metrics, you can’t tell what is working and what needs to go.
Your first design is going to need at least 2 revisions
You always think your first design is going to be a homerun, and to you, it always will be. But to your end users, you are going to need to change some core design elements. The first revision is just that, its a good start.
Placing ads on your site won’t make you much money
A common reply to how will this make money is to place ads on a site.
1 – you need a lot of traffic, average click through rate is under 1%
2 – you can’t get money out until you reach at least $100
Your friends will always say its awesome
You will probably be showing your website(s) to your friends all the time and they will always say it looks awesome and it’s the best idea ever. Truthfully, they just want the conversation about this to be over. Strangers are better for advice.
Keep it simple stupid [KISS]
When writing code, try to not make things too interdependent. One day a new developer (or you will come back after forgetting everything) will be trying to make one small change on one page and won’t understand a thing you did. Keep it simple.
When scheduling cron/automated jobs, don’t run them at midnight
It’s easy to set the job up to run daily which normally means right at midnight. If you actually use that setting, all of your jobs will try to run at the same time and run slowly. Also most servers use GMT, so if you happen to have daily saving times, your midnight jobs sometimes creep into yesterday at 11pm. And your job might do some weird things. Run them after 1am and put a different minute setting on each job.
There is nothing worse than contacting a client and saying you lost their data
Run daily backups of the sql databases, if something happens, and this data is lost then you will have a terrible time explaining this to the client. Also, they will find a way to blame all their business failings on this incident.
Any competent hacker will delete all of your log files
Make a backup of the logs files on a remote computer, if you do get hacked, you won’t be able to see what else they did on the server or how they got in. Also most hackers use other hacked servers to hack from, so backtracing the hack normally isn’t worth its time.