• Newsletter
    • Analysis
    • DeFi
    • CryptocurrencyInformation about cryptocurrency
    • InvestingInvestment and portfolio management. Not a financial advisor, not financial advice.
    • TradingDocumenting my trading and investment journey
    • CodeA place for code php, ruby, javascript, jquery, html, css etc.
    • GitHub
    • Smart ContractsInformation and development tutorials about smart contracts
    • Web3Web3 has many definitions but to me it is the migration of data held on corporate private server to public blockchains. From a developer perspective we use web3 libraries such as ethers.js to connect traditional websites and dApps to EVM compatible blockchain networks such as Ethereum.
    • Tools
    • Newsletter
    • Twitter
    • Youtube
    • Bio
    • Work
    • Contact

  • Cupid PLC Kildermorie Lodge Scotland

    Thank you so much to all the team at Cupid PLC for organising an amazing trip to Kildermorie Lodge, near Inverness, Scotland. I’ve never been so surrounded by forward thinking people and whiskey. Here’s some photos from the trip: Fishing, shooting, Glenmorangie tour, great food and possibly the darkest game of charades ever played! Thanks

    Read more…

  • Ideas for Banner Ad Split Tests

    Here are a few ideas for split testing your banner ads. You could quite easily use these to take a single ad and knock up a 100 variations. Test them optimise out the losers and see what works best. There is no single best banner advertisement, everything needs testing and optimising continuously.

    Read more…

  • Googler Helping Affiliates…. in 2012!

    Just when you think everyone working under advertising at Facebook and Google has been treated to a common sense bypass I get a lovely message like this. Hello James, Thank you for writing in. Hope you’re doing well! I’m Jaya, from the Google AdWords Support Team and I’ll be assisting you with your queries today.

    Read more…

  • Bing URL Ripper for Dorks

    This is a URL ripper which uses bing to search for a dork i.e. “powered by wordpress” and output a list of thousands of wordpress sites. This example was actually setup to rip ning sites but you can adjust accordingly. Written in ruby for linux… #!/usr/bin/env ruby require ‘net/http’ require ‘uri’ class Search def search(search)

    Read more…

  • Script.aculo.us – Interactive Landing Pages

    Interaction is key in modern web design and one of the tools I’ve found to be very helpful in making a more interactive environment is script.aculo.us It is basically a javascript inlcude which can provide you with a whole load of effects and functions to use on your landing pages. Check out a simple example

    Read more…

  • Social Network Demographics

    Heres a little sketch I put together of the stereotypical users of each of the major social networks. I used Alexa to put this together based on their audience profiling and I’ve linked to each at the bottom if you want some further reading. Alexa profiles: Facebook Twitter Linkedin Pinterest MySpace

    Read more…

  • Virgin Media Blocks Piratebay.se

    Read more…

  • Internet World London 2012

    Earls Court, London was home to Internet World 2012 and on a wet Wednesday morning in April I jumped on a train to check it out. It was my first visit to this show and I came away with mixed feelings. I was hoping it was going to be like ad-tech but there was only

    Read more…

  • 15 Tools I Couldn’t Live Without

    Everyone has their own set of tools that makes their day to day working life easier. Below I have made a list of the tools I use regularly and recommend to others. Notepad ++ – A great little text editor for windows (I use Kate in Linux). I pretty much hand code everything now so

    Read more…

  • UK Postcodes for major cities

    This is useful for PoF advertising. A list of postcodes (Zip Codes) for major cities in the UK. Can be used for all sorts of other uses, as you can see this was formatted for a php geo-targeting script. $postcode[‘London’] = ‘W1D1AP’; // use for england radius 75miles $postcode[‘Birmingham’] = ‘B46QS’; $postcode[‘Leeds’] = ‘LS18TL’; //not

    Read more…

  • Affiliate Marketing 101 | A Timeline for Success
    Affiliate Marketing 101 | A Timeline for Success

    Time Frame: 3 Years Day 1 – The Study Period Read, read, read. You’ve probably heard from a friend, colleague or just through the grapevine that people are making alot of money promoting affiliate products online and want a piece of the action. It’s time to start soaking up knowledge to give yourself an idea

    Read more…

  • Direct Response Marketing Pushing CPC Prices Up – The Future for Google Adwords

    I was asked to setup a little campaign for an offline electrical company on “The Google”. The business they operate in is electrical testing or PAT testing as it is known here in the UK. It’s the kind of industry where I wouldn’t expect to find much competition when it comes to online marketing. That

    Read more…

  • The Neverblue Velo Bankruptcy Saga

    On April 3rd Velo Holdings the parent company of Vertrue which in turn is the parent company of Neverblue (have I got that right?) filed for bankruptcy. Performer insider released an “affiliate marketing is dead” post and I’m sure alot of affiliates, myself included, panicked. A generic email followed which stated “we intend to make

    Read more…

  • Ruby & Selenium Script to Check Google SERP ranks

    Haven’t used this in a while but it used to work really well untill google would throw a captcha at you after the first 5000 queries. Might be of use to someone. It’s designed for linux and you’ll need selenium up and running to work it. #!/usr/bin/env ruby require ‘rubygems’ gem ‘selenium-client’ require ‘selenium/client’ system(‘java

    Read more…

  • Engage BDR – Self-serve RTB

    Have you seen these ads all over the internet? Chances are pretty high it was probably served by Engage BDR. Up until now their minimum deposit just to test a campaign was $25,000 USD. Which for most affiliates is completely out of reach but now they have released a new real time bidding platform which

    Read more…

  • Handling large volumes of data with Prosper202

    IMO the default version of prosper202 isn’t really designed to handle large volume media buys. The latest version 1.7.2 does make it easier with a simple click to clear click data button but it can still prove difficult to pull off reports once the ammount of data you are analysising exceeds a certain limit. The

    Read more…

  • Captcha Cracker For PHPBB written in Ruby

    It’s been a while since I’ve done much in SEO so I am going to start publishing some of my old scripts. This is a captcha cracker which uses gocr and image magick to decipher phpbb captchas. It’s written in ruby and was designed as part of a backlink building module. You’ll need linux, gocr,

    Read more…

  • Rotating Offer Pages and Landing Pages in Prosper202

    It is really easy to setup rotation of urls in Prosper but if you actually want to track which url is doing better or you want to test different landing pages it can be a little more challenging. One way to do this is to set each url or landing page up separately and then

    Read more…

  • SiteScout RTB – A Walk Through

    Update 23/08/12 – If you are interested in working with Sitescout make sure you check out their superb knowedge base. Sitescout is a great traffic source for display advertising. They basically act as a reseller for remnant traffic from some of the biggest ad exchanges in the world. There is needless to say massive volume

    Read more…

  • My Favourite Buttons For Banner Design

    Below is a list of my favourite buttons I keep handy when designing banners. I’m a bit old school and still use Fireworks MX for design simply because I know where everything is on it and it does everything I want it to. After 6-7 years it would be really annoying to switch to Photoshop.

    Read more…

  • Jim.am Acquired

    With more than just a slight nod of the head to my favourite online marketing blog MrGreen.am I have moved the blog away from the business website to jim.am OK 3rd best might be a little bit of an exageration but if I can get the content flowing and get some interest I think it

    Read more…

  • In-Text Advertising | Ultimate Guide
    In-Text Advertising | Ultimate Guide

    Updated April 2020 In-text advertising is a form of digital advertising that replaces words on a website with links paid for by advertisers. An advertiser bids for keywords and provides a destination URL. These keywords are replaced with links using a Javascript snippet on the publishers website. In 2020 the leading in-text advertising networks are:

    Read more…

  • Tracking CPS Networks With Prosper202 and CPV Lab

    In the UK alot of affiliate marketing is done through cost per sale networks. The big ones being Tradedoubler and Affiliate Window. Here is how to integrate their backend systems with a performance based tracking system such as prosper202. TradeDoubler add &epi=[[subid]] Affiliate Window add &clickref=[[subid]] Affiliate Future add &tracking=[[subid]] Commission Junction add &sid=[[subid]] nb.it

    Read more…

  • Prosper 202 Mods 2012

    Prosper202 mods 1) increase session life – stops it logging you out every five minutes when you are trying to work add the following line just before session_start(); in 202-config/connect.php ini_set(‘session.gc_maxlifetime’,99999); 2) bypass adverts on first page – bit naughty but I prefer to jump straight into the spy section to see whats been going

    Read more…

  • Spying on Mobile Ads from Firefox

    If you want to know what ads are running on a mobile site anywhere in the world you can do this with Firefox without going anywhere near a mobile device. Simply download the following add-ons: User Agent Switcher Modify Headers Simply select the device you want to “look through” in User agent switcher and then

    Read more…

  • Big Thank You To Neverblue for Out of Bounds Dominican Republic

    Just like to say a big thank you to Neverblue for organising Out of Bounds Dominican Republic. It was an amazing experience to be surrounded by like minded people and have all the luxuries the Neverblue team laid on. Sun Rise Punta Canna 2012 My main takeaways from the trip were:- Mobile advertising is expanding

    Read more…

  • Translation Options When Advertising Globally

    When scaling successful campaigns to different countries the biggest stumbling block can be the language barrier. Unless you are a fluent or have a babelfish at hand the chances are that you are going to need some help to translate your ad copy. There are a number of options and we have outlined each below

    Read more…

  • Google confirms SEO value in Plus One

    The following snippet was displayed in our Adsense account this morning: Does this mean the plus one is affecting searches carried out by people socially linked to your gmail account or does it mean there is a global SEO value in plus ones. Probably both so why isn’t the plus one button as widely spread

    Read more…

  • Custom Facebook Share and Twitter Tweet Buttons as WordPress Widget

    The following is the php code to make your own dynamic Facebook share and Twitter tweet buttons. Just place the images in the root directory and install the Samsarin PHP widget. Copy this code into a Samsarin Php widget and drag it to your sidebar. <a target=”_blank” href=”http://www.facebook.com/sharer.php?u=<?php echo “http://” . $_SERVER[‘HTTP_HOST’]  . $_SERVER[‘REQUEST_URI’]; ?>”><img

    Read more…

  • Using Adsense Section Targeting

    If you are getting lots of Groupon and Three ads on your adsense niche site the chances are it isn’t optimised correctly. By simply writing a short, keyword rich, snippet of what your site is about and surrounding it in the following tags you can manipulate which ads are shown. <!– google_ad_section_start –> Jet internet

    Read more…

  • Googles Panda Update, Brands and Negative PandaRank

    More information has been coming out about the Panda update. Google have released a article on their webmaster blog describing how they see quality content. There were a few things that really stood out:- Would you recognize this site as an authoritative source when mentioned by name? This seems to be a big hint towards

    Read more…

  • Affiliate Network and Payment Terms

    There has been news this week of Epic/Azoogle stopping all weekly payments to affiliates. This has sent rumors of financial difficulties and cash flow problems circling the forums for one of the giant CPA networks. Just when the dust settles Maxbounty sends out a network email informing all affiliates they are improving their payment terms

    Read more…

  • Slow Site Speed Prevents Google Indexing Pages

    We had a problem with one of our database sites not getting indexed as well as we have come to expect. After about a month it still only had arround 10% of the urls indexed from the sitemaps. We looked at the differences between this and other sites we had which were all going well.

    Read more…

  • Domain Trust Ranking Sites Without Backlinks Or Social Network Indicators?

    For the last decade or more the SEO community has been obsessed with backlinks. Whether it be filling out profiles to get a quick link such as the famed Angela and Pauls packages or automated tools such as Xrumer and SENuke. Blog commenting, shout boxes, wordpress templates, sql injection, website widgets are just some of

    Read more…

  • The future of MFA (Made for Adsense) sites after the Google panda update

    The big content directories such as ezinearticles, hubpages, articlesbase etc. All took a big hit with the Google panda update. It seems Google targeted low quality article databases with heavy blocks of adverts. These article directories have been abused by black and white hat link builders for the past decade. They allow people to post

    Read more…

  • Facebook Share button more effective than Likes?

    A recent post at SEOMoz suggested that their research has found a better correlation between facebook shares than Facebook likes. The full post is here and makes for an interesting read. One of the things that really caught my attention was in the comments and I quote: “After chatting with our Google rep it seems

    Read more…

  • Custom WordPress 404 Page For SEO

    I have recently been purchasing used domain names from Godaddy Auctions and Dropcatch. When I get the domains the first thing we do is look at what traffic they were pulling for what topics via google cached web search. If there is some good content on there and things we want to keep we will

    Read more…

  • Setting up twitter feed to post to Twitter and Facebook accounts

    If you don’t already have a facebook and twitter account for your company they are really easy to setup. On facebook remember to click the “Create a Page for a celebrity, band or business” link on the homepage. Once you have those accounts setup head over to twitterfeed.com and sign up for an account. Enter

    Read more…

  • Setting up custom facebook and twitter buttons using php

    The canonical tag has been a god send for us helping to get pages indexed and clean up site structures. In many sites we use the same php variable for our share buttons. This is a great way to setup custom twitter and facebook share buttons for your pages. We always use an external template

    Read more…

  • Perfect Site Structure

    It is widely accepted that Google places the most weight on the first 100 links it finds on a web page. With that in mind we can design a website that is optimised so that every single page is as close to the root domain as possible. Even with a 1,000,000+ page website you can

    Read more…

  • Looking for an angle
    Looking for an angle

    My most successful campaigns are normally also my most creative and abstract. If you can take an offer and think of a way to promote it which is “outside of the box” then you are on to a winner. Coming up with the idea is the difficult bit and I’ve laid out an example of

    Read more…

  • Mixing php with javascrip – Heredoc

    My main issue with javascript is the fact it is full of ‘ and ” which can be a real pain when coding. I’ve started using a method called heredoc to set a start and end point, example below. // Heredoc string // $sstring = <<<TEST Hello World TEST; The word TEST could be anything

    Read more…

  • Poor mans GeoIP – Quick and Easy Geolocation

    //poor mans geoip $country=trim(file_get_contents(“http://api.hostip.info/country.php?ip=”.$_SERVER[‘REMOTE_ADDR’])); //You can then redirect customers to different offers depending on country. I wouldn’t recommend this for critical or high volume use. if ($country == ‘MyCountry’) { yadda yadda yadda; }

    Read more…

  • Two php functions for scraping content and extracting links

    ////// Grab webpage ////// function webFetcher($url) { $crawl = curl_init(); curl_setopt ($crawl, CURLOPT_URL, $url); curl_setopt($crawl, CURLOPT_RETURNTRANSFER, 1); $resulting = $resulting.curl_exec($crawl); curl_close($crawl); return $result = $resulting; } //////////////////////////////// //// extract links //// function extract_links($text) { preg_match_all(‘/<\s*a[^<>]*?href=[\’”]?([^\s<>\’”]*)[\’”]?[^<>]*>(.*?)<\/a>/si’, $text, $match_array, PREG_SET_ORDER); $return = array() ; foreach ($match_array as $serp) { $full_anchor = $serp[0]; $href = $serp[1]; $anchortext =

    Read more…

  • Three ways to debug php

    Method 1 – error.log For this to work you need to be coding in a linux environment with php, apache etc setup. This is the best way I have found and what I currently use to debug my applications/web pages. open up a new terminal and type: tail -f /var/log/apache2/error.log This will give you a

    Read more…

  • CPA Tips

    Maxbounty tracking with subid in prosper202: /tracking202/static/gpb.php?amount=&subid=#S1# The standard conversion rate I use (probably out of date): //$ > £ = x 0.64 Note that what you buy and sell dollars for is very different, 2-4% Consider setting up US bank account. Not possible without visiting the states to the best of my knowledge. Phi

    Read more…

  • list to php array list2phparray

    Code below for a script to take a list and turn it into an array. Comes in pretty useful. <?php if ($_POST[‘list’]) { $splist = explode(“\n”, $_POST[‘list’]); $out = ‘$x = array(‘; foreach ($splist as $line) { $out = $out.”‘$line’, “; } $out = substr($out,0,-1); $out = substr($out,0,-1); $out = $out.’);’; echo $out; } else

    Read more…

  • Prosper202 Hacks and Modifications
    Prosper202 Hacks and Modifications

    JiM’s Prosper202 mods 1) increase session life (stops it locking you out every few minutes) add the following line just before session_start(); in 202-config/connect.php ini_set(‘session.gc_maxlifetime’,99999); 2) Cchange the first page you see. edit 202-login.php line 80: header(‘location: /202-account’);  to   header(‘location: /tracking202’); or /tracking202/spy/ If you are doing email submits or any volume loging into spy

    Read more…

  • Dynamically modifying the landing page with TrafficVance using php
    Dynamically modifying the landing page with TrafficVance using php

    I ran into a silly issue today when dynamically modifying a landing page using TrafficVance. The script I was using was a pretty straight forward: <?php if ($_GET[‘t202kw’]) { $kw = strip_tags($_GET[‘t202kw’]); } if(strpos($kw,’jetinternetmarketing.co.uk’) !== false) { $page = ‘<h1>Dont target JiM on traffic Vance</h1>’; } ?> The problem was that the url I was

    Read more…

  • Welcome to the blog
    Welcome to the blog

    Thanks for visiting this is the first post at JiM’s Blog. To tell you a little about why we are starting a blog could take a while but in short we are trying to improve our communications throughout the industry and this is one method we are using. If you are interested in getting in

    Read more…

←Newer Posts

jamesbachini.com
  • Twitter
  • YouTube
  • GitHub