Google Adwords is where you waste your money

Overpaying for Google AdWords, you are not alone!

AdWords is a wonderful thing, give it a bucket of money and get as much traffic to your website as your money allows. Some people might have discovered this and are happily spending their hard-earned coin, oblivious that AdWords actually requires you to research how it works, or else.

Before I dive into explaining how to effectively use AdWords, there are several problems that most people find painful to deal with when using the system. Without understanding how AdWords works, most likely money just goes to waste instead of being invested into getting results.

The goal of any successful Ad campaign is getting more money in the end than you had before starting it. AdWords is not usually used to build a brand and get recognition for your product (like Coca-Cola ads in the movies), but rather to acquire paying customers to come and pay on your website – and to invest less money, getting them to come, than they will pay you back. Simple ROI (return on investment) rule that everyone probably already knows.

Here comes a surprise, some people while using AdWords are paying a hundred times more and getting a hundred times less than their competitors. Usually after a while these people realize that AdWords is a waste of money, and they stop using it. If only they would use it correctly, this would not be their conclusion. I’ll explain the things to know so you will not make the same mistake, and start earning money instead of wasting it.

If you even tried using AdWords, a most common gotcha that bites you is getting the Ads you created get denied, blocked, or even banned in some extreme cases. This is annoying and makes you think “WTF Google? I’m paying you! Don’t you want my money?”, and the answer is: no, they don’t.

Google’s motive to annoy you comes from their belief that the customers who use Google services will get a slightly better experience, and they probably have a point. History shows that search engines which showing spam results instead of relevant results got extinct, same with ad networks that show spam annoying advertisements. Google AdWords are making it hard to create bad/spam ad copy because they want the network remaining relevant to people who see the ads. They might have a point, and it seems it is working fine for them for a very long time now.

Another issue with AdWords is trying to actually use its interface to create your advertisements, they really made it extremely hard for anyone to use it. It has a million options and making sense of how it works requires years of training and study. And then they change it every month into “yet another new version” or some such. Fortunately for us, most people who use AdWords don’t care, and thus they make mistakes by not bothering to research and you – their competitor an advantage.

If you read this far, you probably want to know how you can still use AdWords and not fall into the trap of wasting your money, so let me share with you several things I learned during the years – this post is long enough, so I will write it in a sequel.

Google AppEngine URLFetch in Unit Tests

Started using Google AppEngine for a personal project of mine some time ago, story and noticed that like everywhere else in python, viagra the state of testing (tdd) is really poor.

There are several “solutions” that provide stubs that can be used in unit testing Google AppEngine applications, patient including something called a “testbed” which is part of the API itself. But the problem with these is that they provide functional bits of API implemented on your local environment just like it would work on a deployed AppEngine application.

It sounds quite good to have a local personal instance of something similar to the datastore you get in deployed applications, but unfortunately for the urlfetch service it is not exactly what I was looking for in tests.

The thing I need is an object that will not urlfetch anything, will not access the network at all. The requirement in this case is an object that I can tinker with its state before and after my own methods have used the urlfetch facility. After a lot of digging in the current implementation of the stub, I ended up writing a very simple mock for this myself. It is far from perfect, but its a start.

GMail is broken

What happened to GMail lately?
It steals focus!
Contacts don’t work most of the time!
Mail is often not sent because the button pushing has no effect.

Is this GMail 2.0?
Fuck 2.0, I want the working GMail back!
And stop it from stealing focus to it’s own tab, that is SO annoying.

Invite the world to GMail

The other day I noticed that I have this “Invite a friend” on my GMail. I didn’t use that thing for more than a year, so I took the chance of this re-discovery to get rid of it. Within several minutes I sent 98 invitations to an imaginary friend whose mail bounced at some noreply@somewhere… address. And it worked – I got rid of that little blue box that serves no purpose on my GMail page!

Imagine my surprise when today I find that box at the same place, with 50 new invitations to give away.

No, really – I don’t have any friends who don’t have a GMail account. I don’t want to use this “feature”, ever. And it does not contribute a thing to my GMail experience – get rid of it Google! Put some AdSense there or something.