Getting Back Into Affiliate Marketing

by dan on January 25, 2009

Back in 1996 I was only 15 but was making a few thousand a month with SEO and affiliate marketing. Times sure have changed, its much harder to rank but the traffic levels are so much higher. Since that time I mostly helped people optimize their sites to get better performance but getting back into affiliate marketing can teach you some very valuable skills.

The easiest way for me to get back into it was by getting an account with COPEAC (daily wires for high volume), Google Adwords, and paying for ads with my AMEX Plum Card (2% cash back).

I picked an offer, did a test run and shit the ads weren’t even being displayed after 6 hours. The goal was to run $100 and see how many conversions I got. The particular offer I ran had a payout of around $30. The solution to getting the test ads to show was to triple the minimum bid. Boy did that work, ads started showing immediately and still didn’t cost much more than my original bid.

Unfortunately Google over delivered my ads. Explination of daily budgets from google: “If you budget US$100 per day, and you’re charged for a 30-day billing period, the maximum you would pay is US$3,000.” End result, after 1 hour over $200 in clicks delivered, yet only one conversion at $30. Result $170 loss.

Now I’m starting on phase 2, new site, new offer, and more testing with Prosper202.

Harnessing The Cloud

by dan on January 14, 2009

On Jan 13th, 2009 I gave a talk about cloud computing at houstonrb.com. The slides are attached below.

Harnessing The Cloud

View SlideShare presentation or Upload your own. (tags: abtain cloud)

NameCheap Coupon That Doesn’t Expire

by dan on December 6, 2008

I have been moving all my domains away from Godaddy for over a year in favor of NameCheap because of their great prices and easy website that doesn’t try to make you buy extra garbage. I recently found a namecheap coupon that not suppose to expire ‘INTERFACE’. With it you get a domain registration and private whois for only $8.81 a year.

While you are at it also checkout the most reliable web based DNS provider I know Dns Made Easy. I am also using them to help make my EC2 deployments more reliable.

Robots.txt Examples

by dan on November 4, 2008

Fend off those pesky robots!

I just released a new project that resulted from having to specifically block useless bots that requests thousands of pages per day and send no traffic. Several example bots files are included that could be renamed and copied to robots.txt in the root of your web application. Your robots file should be accessible at http://www.yourdomain.com/robots.txt

Files included:

  • robots.txt Standard bot file should be usable for most sites. Only disallows know bad bots.
  • robots.major.txt Has a white-list for major search engine and blocks everything else
  • robots.noarchive.txt same as above but disallows archive.org bot which uses lots of traffic and doesn’t send much traffic
  • robots.wordpress.txt Entries for Wordpress blogs
  • robots.none.txt Block all bots

Checkout the source hosted on GitHub.

{ 0 comments }

When working with a large amount of data you often can save time by calling SQL in your migration code.

When working with over 900,000 records the migration below took hours and never completed. Yet when it was refactored to use SQL code then it took only 9 minutes.

The first migration that never finished:

class LookupCityIdForAddresses < ActiveRecord::Migration
  def self.up
    Business::Address.find(:all, :conditions => {:city_id => nil, }).each {|address|
      zip = address.zip_minus_four
      geo_city = GeocodeZipCode.find_by_zip_code(zip)
      city = City.find_by_name_and_state(geo_city.city, geo_city.state) if geo_city
      address.update_attributes!(:city_id => city.id) if city
    }
  end

The New Migration:

def self.up
  add_column :business_addresses, :base_zip, :string, :limit => 10
  execute "update business_addresses set base_zip = left(zip_code, 5)"
  add_index :business_addresses, :base_zip
  execute "UPDATE business_addresses, cities, geocode_zip_codes SET business_addresses.city_id = cities.id WHERE business_addresses.city_id IS NULL and geocode_zip_codes.zip_code = business_addresses.base_zip and cities.state = geocode_zip_codes.state"
  remove_index :business_addresses, :base_zip
  remove_column :business_addresses, :base_zip
end

{ 0 comments }

Wow. My crazy lady video is on tv right now!

by dan on September 17, 2008

TruTV (Formerly CourtTV) 9pm EST - Most Daring

Original Youtube Version

Version that appeared on TV

{ 0 comments }

Amazon is finally setting up persistent storage for EC2 instances. This means you can more reliably host a MySQL or PostgreSQL database on EC2. Never again will I have to buy more servers for my applications!  See the forum post, the blog post and signup here.

{ 0 comments }

Google App Engine

by dan on April 8, 2008

picture-2.png

http://dot.appspot.com/ is the first Google App I have seen to hit quota limits. Funny that Google App Engine is being billed as a way to build infinately scalable web apps, yet the quota limits are so small. You get around 500MB of storage and 10GB transfer.  Only google gets a huge amount of attention when offering a small hosting service. You can get much more from a $6/month web hosting account from dreamhost (500,000MB storage, 5,000GB transfer).

It  will be funny when the first Google App Engine application gets linked from digg and users see this “Over Quota” message.

If you want to discuss App Engine, join the new IRC channel I started on irc.freenode.net #appengine (23 members right now)

{ 0 comments }

Streaming Live Via Ustream.TV

by dan on March 28, 2008

I just started playing around with Ustream.tv today. It seems interesting and maybe I’ll try to do some Video Podcasting with it.

{ 0 comments }

With the Euro shooting past 1.57 dollars you can forget outsourcing to India. Places like GetFriday now charge $15 per hour for offshore workers where there is a language barrier. Instead, try posting gigs on Craigslist and you may get people near minimum wage at $6.55 per hour.

{ 0 comments }