Toby's Ramblings http://tosbourn.com The personal blog of Toby Osbourn Mon, 13 Oct 2014 19:06:24 +0000 en-US hourly 1 http://wordpress.org/?v=4.0 Space Invaders http://tosbourn.com/space-invaders/ http://tosbourn.com/space-invaders/#comments Mon, 13 Oct 2014 19:06:24 +0000 http://tosbourn.com/?p=2353 I love this, I am guessing you have played space invaders before and you are aware how the game works. As you shoot the invaders they gradually get faster and faster. It was a nice game play mechanic as it made the level progressively harder the closer you got to finishing it. Well apparently this […]

The post Space Invaders appeared first on Toby's Ramblings.

]]>
spinv_1

I love this, I am guessing you have played space invaders before and you are aware how the game works.

As you shoot the invaders they gradually get faster and faster. It was a nice game play mechanic as it made the level progressively harder the closer you got to finishing it.

Well apparently this wasn’t ever actually programmed in! In the original game hardware struggled to keep up with all the graphics on screen, as you removed some of those assets the hardware was able to render stuff faster and so things started to speed up.

The hardware that he had assembled was not powerful enough to display graphics in color and the enemies moved slower than he had intended. Fortunately he discovered that the more enemies that were removed from play, the faster the processor could render those that remained. Rather than attempt to design the game to compensate for the speed increase, he opted to leave it in as a challenging gameplay mechanic.

This certainly has to be one of my favourite – It’s not a bug, it’s a feature! moments.

Share this on

The post Space Invaders appeared first on Toby's Ramblings.

]]>
http://tosbourn.com/space-invaders/feed/ 0
Nokogiri won’t install? Check that you have accepted Xcode’s EULA http://tosbourn.com/nokogiri-wont-install-check-accepted-xcodes-eula/ http://tosbourn.com/nokogiri-wont-install-check-accepted-xcodes-eula/#comments Mon, 06 Oct 2014 11:21:50 +0000 http://tosbourn.com/?p=2350 Here is a pro tip I never thought I would need to share! For Nokogiri to install on OSx out of the box it requires some of the command line tools that come with xCode. I have everything like that installed because I have had to install things like Nokogiri several times in the past. […]

The post Nokogiri won’t install? Check that you have accepted Xcode’s EULA appeared first on Toby's Ramblings.

]]>
Here is a pro tip I never thought I would need to share!

For Nokogiri to install on OSx out of the box it requires some of the command line tools that come with xCode. I have everything like that installed because I have had to install things like Nokogiri several times in the past.

Today though I was getting this error message that suggested that I didn’t have those required tools installed.

Building native extensions.  This could take a while...
Building nokogiri using packaged libraries.
ERROR:  Error installing nokogiri:
	ERROR: Failed to build gem native extension.

    /Users/tobyosbourn/.rvm/rubies/ruby-2.1.1/bin/ruby extconf.rb
Building nokogiri using packaged libraries.
checking for iconv.h... *** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers.  Check the mkmf.log file for more details.  You may
need configuration options.

10 minutes of yak shaving later and I decided to open up xCode to see what the craic was, turns out a point release had been downloaded and installed and came with a new EULA, as soon as I accepted this I was able to install the nokogiri gem successfully!

Share this on

The post Nokogiri won’t install? Check that you have accepted Xcode’s EULA appeared first on Toby's Ramblings.

]]>
http://tosbourn.com/nokogiri-wont-install-check-accepted-xcodes-eula/feed/ 0
WhiteHat Aviator Phoning Home? http://tosbourn.com/whitehat-aviator-phoning-home/ http://tosbourn.com/whitehat-aviator-phoning-home/#comments Fri, 03 Oct 2014 15:16:46 +0000 http://tosbourn.com/?p=2348 Recently I was contacted by someone who wishes to remain anonymous (which is fair enough!) about my review of WhiteHat Aviator. In the email I was asked to look at how WhiteHat Aviator phones home. The person who contacted me was concerned that they had noticed network activity coming roughly every five hours from Aviator […]

The post WhiteHat Aviator Phoning Home? appeared first on Toby's Ramblings.

]]>
Recently I was contacted by someone who wishes to remain anonymous (which is fair enough!) about my review of WhiteHat Aviator.

In the email I was asked to look at how WhiteHat Aviator phones home. The person who contacted me was concerned that they had noticed network activity coming roughly every five hours from Aviator to some WhiteHat servers.

My gut reaction was this was likely just the service phoning home to look for updates, but not knowing the best practice for doing this on a Mac I decided to email WhiteHat and ask about why Aviator phones home, I had mentioned this was in response to an email I had received from a concerned user.

I wanted to share parts of their response because I think it clears up any issues;

Here’s how it works – every 5 hours the browser calls back to our server with a non-unique query so we can’t correlate/track our users. We spent a lot of time working on this to try to limit our ability to track users, because browsers like Chrome phone home with the machine-ID and user-ID of the system for every update and that wasn’t something we were willing to do.

If the file that is downloaded says there is an update the browser will automatically fetch and barring any signing issues or corruption in the file it will install it for use the next time the user downloads the browser. Other browsers have paved the way in this regard, and find that it is significantly safer to always keep the user updated, since the majority of features we launch are security related anyway.

The purpose of our browser was to be used by the common person, not by the security pro or privacy nut. They have the technical chops to use Tor (in a safe manner, which isn’t actually very easy to do) or modify their own browser. The average person doesn’t have that ability, so this browser is intended to give them the right training wheels to make sure
they don’t have issues. We always allow our users to disable plugins, but if they remove them the browser will just re-download them so that doesn’t make much sense. Each plugin has been chosen specifically to achieve better usability and higher security. For example, we had to ship with UA spoofer, because too many sites are poorly programmed and don’t know that other browsers exist and don’t have a graceful failure mode. PDF.js was essential, because it’s much safer, from what we can tell thus far, than Adobe’s PDF viewer – time will tell if that was an incorrect assumption but other browsers are betting on the same thing, so I think it’s a safe bet. Disconnect is the plugin that supports ad-blocking and blocking of tracking pixels which speeds up the user experience and speeds up increases security in the process. Those are the only plugins we ship with – if the user has others, that didn’t come from us.

The end result here, is that I think this user is conflating privacy with security, and while we are a much more private browser than most, we would never claim to be 100% private, because we have to allow our users to get updates. If 100% privacy assurance is the goal, Tor browser is the one of choice – though, there are many security and privacy pitfalls due to compromised exit nodes, which is why I would never recommend it to the Masses.”

If you are a concerned user after hearing or experiencing the phoning home, then I hope this clears it up for you :-)

Share this on

The post WhiteHat Aviator Phoning Home? appeared first on Toby's Ramblings.

]]>
http://tosbourn.com/whitehat-aviator-phoning-home/feed/ 2
Converting numbers to hex using to_s in Ruby http://tosbourn.com/converting-numbers-hex-using-to_s-ruby/ http://tosbourn.com/converting-numbers-hex-using-to_s-ruby/#comments Thu, 25 Sep 2014 12:21:48 +0000 http://tosbourn.com/?p=2345 Today I learned that you can easily convert a number to its hex value by calling to_s on it along with the base you want to convert as a parameter on to_s. 170.to_s(16) => "aa" Of course this means you can also convert it to binary (base 2) 170.to_s(2) => "10101010" Personally I like my […]

The post Converting numbers to hex using to_s in Ruby appeared first on Toby's Ramblings.

]]>
Today I learned that you can easily convert a number to its hex value by calling to_s on it along with the base you want to convert as a parameter on to_s.

170.to_s(16)
 => "aa"

Of course this means you can also convert it to binary (base 2)

170.to_s(2)
 => "10101010"

Personally I like my hexadecimals to be in uppercase, I could call to_s(16).upcase each time but that feels a little wasteful, why don’t we make a method to do that for us?

class Numeric
   def to_hex
      to_s(16).upcase
   end
end

My use case for this was to convert RGB values to Hex values, now generally when you do that you would want an RGB value of 0,0,0 to be converted into 000000, but as you can will calling to_hex on 0 currently produces 0.

0.to_hex
 => "0"

How do we change this? The method I went for was to pad my output after changing it to a string.

0.to_hex.rjust(2, '0')
 => "00"
Share this on

The post Converting numbers to hex using to_s in Ruby appeared first on Toby's Ramblings.

]]>
http://tosbourn.com/converting-numbers-hex-using-to_s-ruby/feed/ 0
Backing up an s3 bucket to another s3 bucket http://tosbourn.com/backing-s3-bucket-another-s3-bucket/ http://tosbourn.com/backing-s3-bucket-another-s3-bucket/#comments Mon, 22 Sep 2014 13:05:56 +0000 http://tosbourn.com/?p=2343 In a project I am working on in Rumble Labs we had cause to want to backup an entire s3 bucket before making potentially destructive changes. After some research I found that AWS have an officially supported client that would allow you to do just this. In this guide I will walk you through how […]

The post Backing up an s3 bucket to another s3 bucket appeared first on Toby's Ramblings.

]]>
In a project I am working on in Rumble Labs we had cause to want to backup an entire s3 bucket before making potentially destructive changes.

After some research I found that AWS have an officially supported client that would allow you to do just this. In this guide I will walk you through how to install the AWS client, create a new bucket and sync your stuff across to this new bucket.

Installing and Configuring AWS CLI

I had both Python and Pip installed so was able to install everything using Pip with the following command

sudo pip install awscli

If you don’t have Pip installed you can follow this guide.

Now we need to configure our AWS client by giving it our keys and such, this is explained in full in the official guide but all I needed to do was run the following command

aws configure

You will be asked a series of questions;

  • Access Key (required)
  • Secret Key (required)
  • Default Region (I left this blank)
  • Default Output format (I left this blank)

You can run the configure command as many times as you like, any blank answers will assume the previous setting is staying unchanged.

Backing up your s3 Bucket

The first thing we want to do is create a new bucket to house our backup

aws s3 mb s3://my-backup-bucket

What this does is tell aws that we are performing an s3 related action, the action we are performing is mb (make bucket) and we are supplying a bucket name, in this case my-backup-bucket.

Now we have everything in place to copy our stuff into our new bucket, we do this with the aws sync command

aws s3 sync s3://my-current-bucket s3://my-backup-bucket

What this does is tell aws again that we are performing an s3 action, this time we are performing the sync action. This action takes two properties, the bucket we are copying from and the bucket we are copying to.

Once you run this you will receive the output of the files copying in your terminal, which I wanted because I like to keep an eye on these things. If you don’t want to see this I see there is a --quiet flag listed in the documentation for sync.

Share this on

The post Backing up an s3 bucket to another s3 bucket appeared first on Toby's Ramblings.

]]>
http://tosbourn.com/backing-s3-bucket-another-s3-bucket/feed/ 4
Force a CSV download from a WordPress Plugin http://tosbourn.com/force-csv-download-wordpress-plugin/ http://tosbourn.com/force-csv-download-wordpress-plugin/#comments Tue, 16 Sep 2014 22:24:26 +0000 http://tosbourn.com/?p=2340 If you are writing a WordPress Plugin and want to automatically download a CSV file when a certain page is hit here is roughly how you go about it. All this code can sit in your main plugin file, or however you like to organise your plugins. // Standard code to add a menu item […]

The post Force a CSV download from a WordPress Plugin appeared first on Toby's Ramblings.

]]>
If you are writing a WordPress Plugin and want to automatically download a CSV file when a certain page is hit here is roughly how you go about it.

All this code can sit in your main plugin file, or however you like to organise your plugins.



// Standard code to add a menu item in the admin section
function my_menu() {
    add_menu_page('Download CSV', 'Download CSV', 'add_users', 'my_csv_download', 'csv_download');

}

// Important - Note this is not stored in a function, this is just in the main
// file, if we ran it through a function headers would already get set.
if (isset($_GET['page']) && $_GET['page'] === 'my_csv_download') {
    // Just setting some headers for our download
    header("Pragma: public");
    header("Expires: 0");
    header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
    header("Cache-Control: private", false);
    header("Content-Type: application/octet-stream");
    header("Content-Disposition: attachment; filename=\"my_csv.csv\";" );
    header("Content-Transfer-Encoding: binary");
    echo csv(); // Your CSV goes here.
    exit;
}

// This action adds our menu to the main menu structure
add_action('admin_menu', 'my_menu');
Share this on

The post Force a CSV download from a WordPress Plugin appeared first on Toby's Ramblings.

]]>
http://tosbourn.com/force-csv-download-wordpress-plugin/feed/ 0
Nav Elements, not just ul wrappers http://tosbourn.com/nav-elements-not-just-ul-wrappers/ http://tosbourn.com/nav-elements-not-just-ul-wrappers/#comments Sun, 14 Sep 2014 21:20:48 +0000 http://tosbourn.com/?p=2337 In a recent tweet my good buddy Derek Johnson pointed out an example of nav element usage that I could apply to my homepage. @tosbourn Check the last example for <nav> at http://t.co/bIorzgdENT. I was thinking your home page is a good candidate for that. — Derek Johnson (@derekjohnson) September 12, 2014 To quote the […]

The post Nav Elements, not just ul wrappers appeared first on Toby's Ramblings.

]]>
In a recent tweet my good buddy Derek Johnson pointed out an example of nav element usage that I could apply to my homepage.

To quote the article;

A nav element doesn’t have to contain a list, it can contain other kinds of content as well. In this navigation block, links are provided in prose

I had never considered this use case before, it makes perfect sense!

I don’t want to speak on behalf of all developers (the time will come when I will, don’t worry) but personally speaking I have been following the letter of most of the HTML5 element’s specs but not really the spirit of them. I have learned one or two uses for each one and stuck rigidly to those.

When I think of the nav element I almost immediately think of the collection of unordered links at the top of my site. This is thinking visually about markup and it is short sighted.

The way I should be thinking is with the information, I should be asking what information am I conveying and what is the appropriate way to represent that information. It shouldn’t matter if that information is at the top of my page or in the middle of an article.

If I had thought like that from the start my homepage would never have been a paragraph element, I wasn’t conveying a paragraph of text, I was conveying links in long form.

I can hear some say, but Toby, who cares, the paragraph element works for a block of text just fine.

So does a div element, doesn’t mean you should start using them instead of p elements.

Semantics are important, they are what tells machines (browsers/screen readers/website scrapers/etc) how to interpret the data you have presented them with.

Thanks so much to Derek for showing me this.

Share this on

The post Nav Elements, not just ul wrappers appeared first on Toby's Ramblings.

]]>
http://tosbourn.com/nav-elements-not-just-ul-wrappers/feed/ 1
Marketing is More Important than Your Code http://tosbourn.com/marketing-important-code/ http://tosbourn.com/marketing-important-code/#comments Sun, 24 Aug 2014 20:53:27 +0000 http://tosbourn.com/?p=2329 If you have crafted your website or app from scratch and poured your soul into it you are not going to want to hear this next line. Marketing is more important than your code. It is sad but true that the vast majority of people will make a purchasing decision based more on the marketing […]

The post Marketing is More Important than Your Code appeared first on Toby's Ramblings.

]]>
If you have crafted your website or app from scratch and poured your soul into it you are not going to want to hear this next line.

Marketing is more important than your code.

It is sad but true that the vast majority of people will make a purchasing decision based more on the marketing than the quality of a product.

What this means for your website is that if you only have 3 hours a week to spend on it you might be better spent working on the marketing than you are on a new feature.

Share this on

The post Marketing is More Important than Your Code appeared first on Toby's Ramblings.

]]>
http://tosbourn.com/marketing-important-code/feed/ 0
Generate Content Regularly http://tosbourn.com/generate-content-regularly/ http://tosbourn.com/generate-content-regularly/#comments Sun, 24 Aug 2014 20:51:10 +0000 http://tosbourn.com/?p=2327 It is cliche but content really is king on the web and if you want a good brand or presence online you need to be generating it regularly. Note that regularly doesn’t mean frequently, it means regularly. If you think you can commit to one blog post a month, make sure there is always one […]

The post Generate Content Regularly appeared first on Toby's Ramblings.

]]>
It is cliche but content really is king on the web and if you want a good brand or presence online you need to be generating it regularly.

Note that regularly doesn’t mean frequently, it means regularly. If you think you can commit to one blog post a month, make sure there is always one blog post a month going out. If you think you can commit to 4 Facebook updates a day, make sure there are always 4 Facebook updates a day.

Having regular content helps you build up a head of steam and as you get more and more content it is easier to find ways to make people stay on your site longer, it also gets you into the habit of committing a certain amount of time each month/week/day to your project.

Having said that, never generate content just for the sake of generating content, make sure it is quality, genuinely useful or interesting for your readers.

You might be tempted to outsource your content, that is always an option although I have had some mixed results in doing it. If you can find someone who is excellent and at a reasonable price then I say go for it.

Share this on

The post Generate Content Regularly appeared first on Toby's Ramblings.

]]>
http://tosbourn.com/generate-content-regularly/feed/ 0
The ways I have made Sites Pay for Themselves http://tosbourn.com/ways-made-sites-pay/ http://tosbourn.com/ways-made-sites-pay/#comments Sun, 24 Aug 2014 20:49:20 +0000 http://tosbourn.com/?p=2325 If you read my previous post on working out how much you currently spend on your website, I can imagine one of two things running through your head; The first is that the number is way higher than you imagined it would be. Don’t be disheartened, there are a lot of people on the internet and […]

The post The ways I have made Sites Pay for Themselves appeared first on Toby's Ramblings.

]]>
If you read my previous post on working out how much you currently spend on your website, I can imagine one of two things running through your head;

The first is that the number is way higher than you imagined it would be. Don’t be disheartened, there are a lot of people on the internet and a lot of different ways you can get them to part with a little bit of cash. The potential of the internet is almost limitless for making money, your monthly spend is well within its remit.

The second is that the number is way smaller than you imagined it would be. If this is the case you might be tempted to set your goal amount for double or triple what it currently is. Please don’t do that for now. The massive benefit of this number you have calculated is that it means something. I have found arbitrary goals are very hard to stick to in the past.

Whatever you are thinking, for now lets focus on the number you have in front of you and let me discuss things that I have done in the past to help me reach my number.

Ads

The most well known way people make money on their website is through ads, I wish this wasn’t the case because nobody likes looking at them but the fact is they are an excellent way to make money.

Ads are normally very easy to incorporate into your website, you sign up with the company you want to use to host your ads and you insert their code wherever you want the ad to appear.

Avoid Generic Ads

I have found that generic ads almost never work unless you are getting 10,000 unique folk hitting your site a day minimum, the reason for this is nobody clicks on generic ads so you are only really making money because people have viewed the ad.

The other issue with generic ads is that it is almost always a race to the bottom in terms of content, which means you are more likely to get the overly sexist ‘racy’ ads or the laughably insane ‘one weird trick to lose weight fast’.

Honestly, just avoid them.

Research Your Niche

Find similar websites to yours, they might be competitors or friends, it doesn’t matter, what matters is working out what ads they are using. Find out if they are using one company to host all their ads and research that company to see if they cater for the type of niche that suits your website perfectly.

The more niche you get the better in terms of targeted ads but there is of course a certain level when the topic becomes too niche for there to be an ad agency covering it. My experience has always been that you should drill down as much as possible but settle at the least generic level that an ad agency can cover.

Dealing with Advertisers is a Pain

Why do I say that you should use an ad agency? Because dealing with advertisers is a pain! Don’t get me wrong you are normally dealing with lovely people but finding people to advertise manually doesn’t scale particularly well, I would tend to avoid it for most sites.

My Experience with Google Adsense

I do not recommend using Google Adsense.

Google Adsense is very good at matching up adverts with content on your site, there is no doubt about it, but no matter how good they get at doing that I will not be recommending them to anyone or using them myself for the simple reason that many years ago they effectively stole money from me and to this day refuse to say why.

Without going on a massive tangent, Google is well known for its automated customer support, which most of the time works probably works perfectly well but not all of the time. One day about 8 years ago they blocked me from accessing my Google Ads account and stopped me from withdrawing my money from it. They did not tell me why and as far as I could see I had broken no rules. For this reason I am going to say avoid!

Examples of Good Ad Networks

I currently use the following Ad Networks;

Setting up Ad Networks

Here is the standard process for getting set up with an Ad Network.
After researching your niche and finding what you think is the best network for your site you will normally have a form to fill in that will be basic personal information and some basic information about the main site you want to advertise.

If you have several sites that you are considering using, always lead with the site that is currently generating the most money for you or at least has the most amount of traffic. It is way easier to get other sites approved once you are in the network and if you list several sites with small amounts of traffic they may not let you in.

Once you are in the standard process is to make some selections on the type of ads you want to show and things like that, once you do this you will be presented with some JavaScript code you can put into your site.

Affiliate Programs

Affiliate Programs are were you recommend a product or a service via a unique affiliate link and if someone buys that product or service via your link you get a cut of their money.

I love making money this way for a variety of reasons;

Affiliate Programs are Easy to Set Up

They are incredibly easy to setup, normally you just sign up as an affiliate at your selected service and you are good to start making money.

Affiliate Programs are Everywhere

Lots of companies have affiliate programs. I particularly love Amazon’s one where you can promote pretty much anything on their site. There are very few niches I have ever come across that don’t have at least the major sellers in that niche using some sort of affiliate program.

You have Complete Control over what You Promote

You have complete control over the product you are selling and how you decide to market it, I tend to do a couple of different things;

If I personally love a service or product I might write a review about it and use the affiliate code in any outbound links to them.

If the product is something that a lot of people in my niche might be interested in I will maybe include it as a generic advert somewhere on my site.

Examples of Good Affiliate Programs

This is a hard one for me to give good examples for because generally you want to advertise things well within your niche, which is obviously very specific to you. I could list of all the football betting sites I use but I am sure that won’t help 99% of you good people reading this!

One general affiliate program I can highly recommend is Amazon, we all know it and most of us use it, you can promote almost all of their products for a cut of anything sold.

Setting up an Affiliate Program

The process is very similar to what I wrote for signing up to an ad platform, essentially you fill in a form stating some basic information about yourself and your site and you will get approved or denied.

The major difference is that once approved you generally have a selection of items to promote and ways to promote them. Amazon for example will give you the option of promoting certain items or groups of items or even promote some of the other services they offer.

Once you have picked all of that you will be given a link or a bit of code that you can use to drive traffic to the site and you earn commission on anything sold. Pay attention to the rules of the affiliate program, for example some places do not let you use their code in email shots out to people.

Sponsored Slots

Normally your website needs to hit a certain critical mass before this avenue would open up to you, Sponsored Slots are where someone maybe writes a guest post for your blog or gets some prime mention somewhere on your website.

You might be thinking, woah there, isn’t this just like going after single advertisers? and didn’t you say that was a massive pain?

It is kind of similar, the main difference is I don’t think you should go looking for people to pay you to advertise them, if you focus on creating a great website people will inevitably come to you and ask to be featured in someway, when that happens you are in a much better position to ask for some money in order to promote them.

My one major bit of advice here would be make sure anything that is sponsored is pretty clearly labelled as sponsored. I have been bitten before by the community of folks that use one of my sites getting annoyed because I was inserting sponsored posts into their normal feed and making it look like it was my own work.

Getting a Sponsored Slot

The ideal process for getting a sponsored slot is that you have an excellent site and people come to you. If you have an excellent site but no one is coming to you then the easiest way to find people that might be interested in paying for such a thing is to search for blogs in your niche that have put up their own sponsored posts before.
I would contact the company who wrote the post with an email that went something like this;

Hi there,
I noticed you had a really great article on {{blogname}} advertising your services and I wanted to ask if that helped you at all?
I run {{my awesome blog url}} and I know my readers would love your product, if ever you wanted to set up something similar on my site I would love to chat.
Cheers,
{{your awesome name}}

Free Stuff

This is the first method that doesn’t actually get you more cash in the bank but is certainly a great way of making your website pay for itself.

There are thousands of companies that have a massive stock of product but a small advertising budget. These companies are never going to actively seek out paid sponsorship or anything like that but they may be willing to part with some of their stock in return for reviews.

Examples of free stuff I have got before that you might consider going after would be;

  • Books you want to read in your niche – if you offer to write a review many publishers would be more than happy to send you one.
  • Paid websites you want free access to – again for the purposes of reviewing them for your website.
  • Conferences or events in your niche – writing a report, live tweeting the event or if you are lucky enough to be well known in your niche just your presence can often be enough for folk to want to give you a free pass.

If you want to reconcile a figure I would take the retail value of the thing you are getting and add it as a one off payment for that month.

How to Get Some Free Stuff.

The easiest way to go about this is to ask, I would send an email to the company that went something like this;

Hi there,
My name is {{name}} and I run {{my awesome site url}}, I know my readers would love to read a review of {{their specific product or service}} and I for one would love to do the review.
I wanted to ask what is the best way for me to go about getting {{access to or a copy of the product or service}} along with any extra relevant information I could use to do a full writeup.
Hopefully hear from you soon,
{{your awesome name}}

Lead Generation

Lead Generation is when you might not make any money from an interaction but you get someones details for a later date that are potentially interested in hearing more.

Examples of this could be;

Collecting email addresses to let people know that you are working on a new book, exactly like what I did for this book!

Cross promoting your other websites, especially if they are in the same niche.

It Doesn’t have to be for a Product in Your Niche

I always make sure in any ‘About Me’ section on a website I am included on that it says I am a developer and how to contact me. The site could be a million miles away from the topic of development but that doesn’t mean a reader of that site isn’t going to have a development problem they need fixed.

Putting a Price on Lead Generation

To reconcile this against money made in the month we need to attribute a value to each lead generated, this can be very hard to do but here is what I have done in the past.

With my analytics I know that for every 100 people on my site 2 of them will convert to a paying customer.

If a paying customer has a lifetime value of £10 that means that roughly one person hitting my site is worth £0.20 (10 / 100 * 2)

Because I like to be ultra conservative with anything like this I will then half the number and say each visit is actually worth about £0.10.

In my analytics then I would track any interaction would leads someone onto that site as having the value of £0.10.

How to set up lead generation

This really depends on what leads you want to generate but the main take away should be to make the thing prominent on any page you feel is appropriate. If this is the core way a page could potentially make you money you should be doing your best to get as many eyes on it as possible.

As I mentioned above you really need to be tracking leads as early as possible, there is a section later in the book dealing with analytics that you should read if you don’t already have something set up on your site.

Selling Items or Content

I have split this section into two, because for some websites your core business model is selling stuff, in which case it is a bit of a no brainer that you should be selling stuff!

But I do have some valuable advice if you do, and if you don’t well you should read the second section where I talk about why you maybe should!

If Your Core Business is Selling Stuff

There are always more things to sell and always more ways to keep the conversation going with your audience.

What I mean by this is if you have a website selling items you may think that the only way for you to make more money is to sell more items and that a customer is the final stage one of your users can be at. That isn’t the case at all.

If we think about what it means to be a paid customer is means that the user has had enough faith in your website or product that they are going to part ways with their hard earned money, assuming you deliver the product in a timely fashion and it meets or exceeds the users expectations then we are left with a happy paid customer

Selling to a happy paid customer is orders of magnitude easier than selling to someone who hasn’t interacted with you before, think about it, the paid customer is;

  • Aware of your brand
  • Used to navigated your website
  • Has a previous positive experience with your site
  • Is clearly someone who has an interest in your niche (for whatever reason)
  • Has and can spend money online.

So the question becomes, what can you sell to them? Amazon do an amazing job of recommending related items and things like that, so that is certainly one path.

Another path would be to go down the writing path and maybe create an eBook to sell them, or perhaps you have another website in the same niche that would be of interest to them?

You can always sell yourself to them and ask them to follow you on social sites, this is of very low cost to them but makes them one step closer to being free advertising for your website, a happy customer is very likely going to share/retweet/whatever your content.

If Your Core Business is not Selling Stuff

Most of my websites aren’t aimed at selling stuff directly, personally I go down the membership route (more on that later) or using affiliate programs, however I will often create something to sell if I feel there is a need.

If there is a lack of information about your particular niche then I would recommend writing a short eBook, it really isn’t that hard, think of it like 5 or 6 really good blog posts tied together.

If your website has generated a group of fans then definitely consider getting some merchandise made that you can sell. Sites like Github and StackOverflow have done this, why not your site?

I haven’t looked into doing this for a few years so wouldn’t feel comfortable in recommending one service over another, but there are plenty of places you can go to get merchandise made.

Selling Stuff Online.

First things first, depending on your country you might have various laws or regulations you need to abide by. Abide by them! Believe me I know it is tempting especially when you are starting out to cut corners because you are only making a couple of quid from your site, but it will bite you.

Now we have that out of the way lets talk about the technical details.

If you are using a Content Management System like WordPress or Drupal to run your site then there are several plugins you can quickly install and setup that add basic shopping cart functionality to your site.

For most people that will work perfectly and get you up and running.

If your website doesn’t have access to such plugins then your two options are generally install an e-commerce solution along with your site or use a third party service such as Shopify.com

Getting People to Add You to Social Media.

Like Lead Generation, this doesn’t actively generate any money, and unlike Lead Generation this has the potential to never make any money no matter how many times someone does it.

There is method to my madness though, so please continue reading!
Asking someone to follow you on twitter is very low risk for the user, it requires minimal effort and they can change their mind anytime they want. Them following you does two very powerful things;
The first and most obvious is that it expands your social reach.

The second is that you have asked the user to do something and they have done it. If someone has done something you have asked them to do once my experience is that they are way more likely to do a second thing you ask them. It maybe sounds silly but you have removed a barrier to them clicking buy now or clicking on something else on your site because they are already forming a habit of doing things that you ask them to do.

Putting a Value on Your Followers

I don’t have anything to back me up on this but I attribute £0.001 as a value to followers, simply for the purposes of reconciling a value at the end of the month.

Of course if you follow me on Twitter then ignore the above, you are priceless ;-)

The Best Way to get People to Add You to Social Media

As I mention this is kind of like Lead Generation so the same rules apply, if you want people to follow you from your site you need have those options prominent.

A good place to add it is at the end of content pages as a possible next action.

Memberships / Recurring Payments

This is my preferred way of making money online when at all possible.

Selling items to people (be that directly or through affiliates) is tough going, selling five things today is no guarantee that you will sell five tomorrow, also for things that you only ever need one of selling one today means that you cannot sell the same thing to that person tomorrow.

Selling recurring memberships to people though means that so long as you keep them happy and the solution you offer is still relevant selling one membership could give you several years worth of income.
There are two ways you can do this, which I will describe in turn.

Sell Someone Else’s Recurring Membership

This is the easier of the two to get up and running but will return a smaller reward.

I actually have a really good example of why this is a great way to make money online, about six years ago I had a website that focused on selling memberships to other websites. It was making pretty good money but for a variety of reasons I decided to shut it down. One year after I had killed the site, I was still getting a cheque every month from one of the companies I have referred some folk to.

How amazing is that?

Essentially what you would want to be looking for here are affiliate programs that offer recurring revenue potential so that anytime the person renews you make a small amount of money.

This isn’t always possible depending on your niche, and if it isn’t you might want to consider creating your own membership site and having people promote it for a cut of recurring revenue.

Sell Your Own Recurring Membership

Do you have a source of content that people want to consume on a regular basis? If so then you might want to consider charging a recurring fee for access to it.

This technique gets a bad rap from a lot of folks because a lot of people want content to be free but luckily not everyone thinks like this.

What I have found works well is to provide free content regularly and then premium content that only members can see. The free content works as your way of getting people onto the site and giving value to people for free, and then your paid content is for people that see the value and just want more.

Share this on

The post The ways I have made Sites Pay for Themselves appeared first on Toby's Ramblings.

]]>
http://tosbourn.com/ways-made-sites-pay/feed/ 0