So, here’s the skinny on another way to be on the shit end of 1and1’s stick.
First, sign up at 1and1 for a package. Any package. The URL is 1and1.com; you can find their hosting packages, I’m sure. Oh this one looks good… The Beginner Package: $2/month for six months, then it doubles to $4. Right on, you say, and you sign right up. Great. You’re happily going along when you decide you need another domain. So you order another domain through 1and1’s not great prices, but hey, it’s all together.
Fast forward another ten months. You’ve got a pack of domains running, but you’ve outgrown your 1and1 service. You look at the offerings and decide to go with a HostGator package instead. Since you have multiple domains, check out their “baby” level service. Unlimited domain hosting. Great.
You gently move your sites from 1and1 to HostGator. Everything goes smoothly, and you go ahead and flip the switch, changing the nameservers from the 1and1 ones to the hostgator ones. Now everything’s beautific, you’ve got great service, you’ve got fantastic uptime, hostgator is really coming through for you. You’re ready to stop paying for the hosting at 1and1; you don’t need it, and frankly it wasn’t all that great anyway. You call up their “cancel.1and1.com” instructions, enter your username and password, and … shazam! …
You can’t cancel your package without cancelling the domains!
So now you need to transfer the domains to (hostgator? I prefer namecheap) before you can cancel your account with 1and1. And you’ll probably be billed for another round at 1and1. As an added bonus, your domains will be locked in “updating status” for an indeterminite length of time) if you’ve recently changed something about them. For instance, their nameservers.
Thanks, 1and1. Again.
Written by russ on March 23rd, 2009 with no comments.
Read more articles on Projects and tips.
Taking time out for a mild rant. I think they’re wrong, but it’s their game and if I want to play with them, I have to follow their rules.
There’s a Commission Junction advertiser advertising a job search guide, the “last job search guide you’ll ever need.” The advertiser is collegerecruiter.com. When you click through the link, it takes you to “trialpay.com” to purchase the book. “Trial Pay” is obviously a payment site (like paypal, right?).
So when I advertised the collegerecruiter.com deal through adwords, I put down the collegerecruiter.com site as the destination page. It’s the honest place where the money would go. However, Google Adwords wants trialpay.com as the destination domain. Which I would be down with, if it were trialpay.com selling the book.
Anyway. I thought it was stupid.
Written by russ on March 5th, 2009 with no comments.
Read more articles on Uncategorized.
I’m working over a site; currently it’s running a bunch of McJiffy sites and getting diddly bupkiss for traffic. The fact that Google Hates It doesn’t help but there’s other sources out there. One of the subdomains is “Rachel Ray.”
Now, I don’t remember why I threw Rachel Ray up there; I suspect I was just tossing it out there because she was a hot search item about a year ago. As I do these subdomains, making them over from McJiffy to “something else,” I’m also evaluating whether or not I should keep the site alive. I mean, I removed britney-spears.portallane.com, didn’t I? And Kim Kardashian?
But looking over my stats, I saw a huge jump for Rachel Ray yesterday. Why? Because she “doesn’t regret those racy photos” and my site popped up on yahoo search for Rachel Ray.
“I think I was 35 at the time [the pictures were taken],” she says. “And I thought about it for a while, and I said, ‘You know what? This magazine has as young as 17-, 18-year-olds in hottie bikinis, and these are all actresses, models, pin-up girls. I don’t belong to any even remote club of theirs.’
“And I thought, ‘If I’m gutsy enough to do this, this is a good thing for everybody. This is the everywoman, here she is.’ And I did it, and it was the most scared I’ve ever been, and I wouldn’t change a thing. I’d do it again tomorrow.”
Yup, those FHM photos came back, and they’re still lovely. Since I’m moving the sites over anyway, I threw together a different page, just showing some of those photos and a couple of popular CPA ads. Heck, free traffic; I don’t suspect these visitors would buy eBay stuff but maybe they’ll click on these banners. And yeah, 200 free views in a day aren’t too shabby, in my mind.
So don’t be too hasty to remove old subdomains. If they’re just sitting there, maybe you should leave them alone. What’s the worst that could happen?
Written by russ on March 3rd, 2009 with no comments.
Read more articles on Uncategorized.
This post was inspired by a conversation I had with a non-native english speaker over on IRC.
The basic problem for affiliate marketers is “impressions.” You need to get as many impressions as possible. Once you have a lot of impressions, your percentages for click-through-rates are more reliable, which leads to your conversion rate percentages being more reliable. The first thing you need to worry about is impressions.
People succeed at PPC because they’re paying for impressions. If you don’t want to pay for impressions, (and this is the important part), you’ll need to get them some other way.
Since he was looking for “free money,” my suggestion to him was that he get a blogspot.com blog; note that in this case I’m not encouraging wordpress.com. Wordpress (hosted) blogs don’t allow you to add advertising. With a blogspot blog, you can “edit the template” and insert a html or javascript snippet. This is where you can add advertising.
So, get a blogspot blog, add some advertising, and then figure out how to divert traffic to it.
What I suggested to him was that he write some fabulous, kick ass content, or post boobs, and submit it to digg and reddit and fark. There are two main problems with this approach. First, I suspect his content will get lost in the flood; he was a non-native speaker, and it may have been difficult to connect with his audience (unless he posts his boobs). The second problem with this is that fark, digg and reddit traffic doesn’t convert well. However, this is still true. Compelling content to get your users to your site, getting the eyeballs actually on the page, and then watching the impressions->click ratio and the click->purchase ratio.
Written by russ on February 22nd, 2009 with no comments.
Read more articles on Current Methods and Ebay RSS Blog and ppc campaign.
Need Content Generation? Tired of outsourcing blog entries and want to get-er-done? Need a way to track the backlinks of your sites?
Check out Datapresser!
Using cutting edge technology and scripting from the deep minds that brought you the seocracy databases, Datapresser allows you to track large networks of sites, from a one-off blog where you’re ranking for “kangaroo steaks” to a huge “offshore poker” splog site. You can track the position of your site for selected keywords and you can watch the backlinks roll in.
Or if you’re confident in the success of your own sites, you can track your opponents; watch your meteoric rise in the rankings against their waterfall slide down down, down.
The tracking tools are great but where datapresser shines (and where it gets its name), is when you’re creating fresh content. What you’re doing is creating a wordpress-backup of posts in the future. You can automatically generate thousands of unique articles for any niche; for any blogs.
However good it is, it’ll be worthless to you if you don’t sign up. It’s fairly resource intensive (for the creation of literally hundreds of thousands of posts daily ), so availability is limited. sign up now for this service. You won’t regret it, but you will regret waiting until your opponents learn about it.
Written by russ on January 16th, 2009 with 6 comments.
Read more articles on Uncategorized.
Got a great email this morning about “micro niches.” But I took it a little differently than I think they intended it. You may have gotten the same email, if this “micro niche” rings a bell.
What is a microniche? Imagine, if you will, a niche for “credit cards with low apr” (those words in that sequence, not low apr credit). According to google, there are 70 pages in the whole world that come up for that page. Getting to the top of that page would be, to coin a phrase, easy. According to the google external keyword tool, there’s about 36 searches per month. About 500 a year.
Most affiliate marketers would avoid such a small niche. What if you didn’t? What if, instead, you built a page with excellent SEO and excellent information on these credit cards with low apr ?
Honestly, what if you took wordpress, whacked together a few pages, and put in some advertising for, you got it, low apr credit cards. You put it on your site and forgot about it.
Suppose your domain purchase is $8. And you put it on your current hosting plan as a parked domain. It won’t get enough traffic to warrant its own hosting plan. It might not get enough traffic to warrant its own domain. But if you’re aimed at selling credit card signups and the click - to - action rate is 1 percent, and the action pays $10, if you sell one credit card every two months, you’ll be making 52 bucks a year (((12/2) * 10) - 8). Ten of those sites would be 520. A hundred, well you see where I’m headed.
True, true, that’s not a lot.
What I’m saying, though, is that if your shotgun approach of finding something with 250,000 sites and 3 million searches per month isn’t working, maybe you should work on something smaller.
I should take my own advice. I’ve been complaining about Easy Spyware Removals not getting much traffic. However, it’s not very seo-optimized, and it’s not very sales oriented. It’s just a dumb bunny site. That specific keyword gets about 140 searches per month. There’s about 3000 sites that pop up in google for that search, and honestly, most of them suck. Of course, the niche is pretty competitive.
Written by russ on January 5th, 2009 with no comments.
Read more articles on Uncategorized.
I feel so dirty for writing this, but I was inspired by this twitterer.
After reading how to create a twitter bot in 5 minutes, I realized that I could combine this with simplepie and create a twitter spammer in less than ten minutes. Well, ok it took me fifteen.
So the steps were:
Get something to say,
Get someone to say it to,
Say it.
First, I needed an account with something to say. I used my fsbo homes already-spamming twitter feed. ( . http://twitter.com/fsbohomes ). It just takes the new stuff in the fsbo auction site’s rss feed and twitters it via twitterfeed.
As it turns out, the public feed probably isn’t the best tool for this; a better tool would be twitter’s search at http://search.twitter.com/ . Note the rss feed icon on the results page.
Here’s what I came up with:
// simplepie makes the rss parsing very easy.
include_once( "libs/simplepie.inc" );
$keywords=
array(
‘fsbo’=>
"Hey come check out great prices on real estate auctions: http://www.fsboauction.info"
);
$username = ‘fsbohomes’;
$password = ’somepassword’;
// read the public timeline. Note that this is cached for 60 seconds, so asking for it more often
// than that is silly. Also notice that it won’t catch _everything_ but you should get at least one a day.
$read=‘http://twitter.com/statuses/public_timeline.rss’;
$feed=new SimplePie( );
$feed->set_feed_url( $read );
$feed->set_cache_duration( 60 );
$feed->init();
$feed->handle_content_type();
$count=0;
foreach( $feed->get_items() as $item ){
// read the tweet.
$tweet=$item->get_title();
// split it into username and the contents.
// we’ll be comparing our keywords against the contents and
// sending the username an @ message.
list( $a, $t)=split(‘:’, $tweet, 2);
// I had a lot of multibyte-encoded lines but didn’t feel like parsing them.
// since I don’t speak the languages anyway.
$e= mb_detect_encoding( $t );
if ( $e == ‘ASCII’ ) {
// check each keyword
foreach( $keywords as $seek=>$message ){
$count++;
if ( strpos( $t, $seek ) !== false ) {
// if the keyword is found, send a message.
$msg = ‘@’.$a.‘ ‘.$message;
$msg = substr( $msg, 0, 140 );
sendTweet( $msg );
}
}
}
}
// http://twitter.com/statuses/public_timeline.format
// formats: xml, json, rss, atom
// this is from the twitter bot post referenced above
// it’s just a function for posting a twitter.
function sendTweet($msg){
global $username;
global $password;
$url = ‘http://twitter.com/statuses/update.xml’;
$curl_handle = curl_init();
curl_setopt($curl_handle, CURLOPT_URL, $url);
curl_setopt($curl_handle, CURLOPT_CONNECTTIMEOUT, 2);
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl_handle, CURLOPT_POST, 1);
curl_setopt($curl_handle, CURLOPT_POSTFIELDS, "status=$msg");
curl_setopt($curl_handle, CURLOPT_USERPWD, "$username:$password");
$buffer = curl_exec($curl_handle);
curl_close($curl_handle);
if (empty($buffer)) {
echo "failed\n";
}
else {
echo "succeeded\n";
}
}
Ta-daa. I set it to run every five minutes and it caught about one twitter every few hours.
Written by russ on November 16th, 2008 with no comments.
Read more articles on Current Methods and code and tips.
Markov content is automatically generated using some random input, based on the probability that word Y follows word X. You feed it some input text and then a script analyzes what words come after each word and then assembles an automatic post that’s supposed to look human-enough to fool web spiders. It’s not really a white or grey thing; you can create thousands of pages of keyword rich content, but it’s meaningless to a human.
One word followed by the next word is very unreadable, but basing your markoving on two words (and then randomizing the following word) is a better technique.
All code in these examples are PHP code. There’s a flaw somewhere in it, perhaps you can spot it.
Here are the steps that this markov generator goes through;
- Read in a bunch of topical content.
- Keeping it in order, split it up into an array of words.
- Go through the array, taking a pair of words:
From “The quick brown fox” you’d get “the quick”, “quick brown”, “brown fox.”
- Now that you have the list of word-pairs, get a list of words that follow this pair.
Keep that in an array, but don’t make it unique. This way it’ll weight the random selection. By which I mean, if you have a word pair like “credit card” and the array is “users, debt, debt,” the word “debt” will have twice the weight when you do a random selection from that array. Which is good, because in human-written content, the word “debt” appears twice as often as the word “users” after “credit card.”
- Start the content. I chose to start with the first word pair of my input, but it could and should be randomized.
- Take the last two words of the output ( in this case it’s the first word pair) and look up the array of words that follow. Then take a random word out of that array, and append it to the output.
- Is it long enough yet? If not, take the last two words of the output again, and look up the array of the words that follow those two words. Keep doing this until it’s long enough.
Here’s the script I came up with. Feel free to use it or abuse it. It’s got some extra verbose variables in it because I’m trying to track down a flaw. It randomly (heh) dies because it can’t find the word pair in the input. But that should be impossible, because I’m selecting it from the input. Hmm, it’s possible that the “find me” part doesn’t have the punctuation that the “input” has, and so it dies.
If I keep putting together code for this site, I’ll have to install one of those pretty-code plugins.
// how many words is our goal?
$wordcount=
1000;
// read the input files. Really this should be a glob or a readdir() loop.
$i[]=file(’source/after-you-pay-off-credit-card-debt.txt’);
$i[]=file(’source/agency-card-credit-debt-settlement.txt’);
$i[]=file(’source/a-problem-called-credit-card-debt.txt’);
/*
$i[]=file(’source/bad-debt-credit-card-what-is-that.txt’);
$i[]=file(’source/before-you-go-for-credit-card-debt-help.txt’);
$i[]=file(’source/blogging-consolidation-debt-and-new-information-technology-239.txt’);
$i[]=file(’source/card-com-credit-debt-en-language-site.txt’);
$i[]=file(’source/college-student-credit-card-debt.txt’);
$i[]=file(’source/consolidate-credit-card-debt.txt’);
$i[]=file(’source/consolidate-your-credit-card-debt.txt’);
$i[]=file(’source/credit-card-debt-consolidation-loan.txt’);
$i[]=file(’source/credit-card-debt-consolidation.txt’);
$i[]=file(’source/credit-card-debt-counseling.txt’);
$i[]=file(’source/credit-card-debt-management.txt’);
$i[]=file(’source/credit-card-debt-negotiation.txt’);
$i[]=file(’source/credit-card-debt-reduction.txt’);
$i[]=file(’source/credit-card-debt-relief.txt’);
$i[]=file(’source/credit-card-debt-settlement.txt’);
$i[]=file(’source/credit-card-debt.txt’);
$i[]=file(’source/creditcarddebt.txt’);
$i[]=file(’source/eliminate-credit-card-debt.txt’);
$i[]=file(’source/excessive-credit-card-debt.txt’);
$i[]=file(’source/get-out-of-credit-card-debt.txt’);
$i[]=file(’source/is-consolidating-credit-card-debt-a-good-option.txt’);
$i[]=file(’source/reduce-credit-card-debt.txt’);
$i[]=file(’source/re-financing-to-consolidate-debt.txt’);
$i[]=file(’source/taking-a-step-towards-credit-card-debt-elimination.txt’);
$i[]=file(’source/teen-credit-card-debt-statistics.txt’);
$i[]=file(’source/the-benefits-from-credit-card-debt-consolodation.txt’);
*/
// some print output to mark my spot while I troubleshoot.
print count( $i )." files loaded\n";
// put them all together.
for ($j=0;$j<count($i);$j++ ){
$input=array_merge($input, $i[$j] );
}
print "merged\n";
// clean up the input. We’re winding up with just a list of words separated by ONE space.
$input=implode(" ", $input );
$input=preg_replace(‘|[^a-zA-Z0-9 ]|’, ‘ ‘, $input );
// this next line cleans out all double spaces.
while( strpos( $input, ‘ ’) !== false ) { $input = str_replace( ‘ ’, ‘ ‘, $input ); }
$inputstring=$input;
$holder=explode(‘ ‘, $input );
unset( $input );
// not sure why I had empty elements in the $input array but this is to remove all of them.
$input=array();
foreach( $holder as $k=>$v) {
if ( strlen( trim( $v )) > 0 ) {
$input[]=trim( $v );
}
}
print "cleaned\n";
// this array is for the word pairs.
$segments=array();
$holder=array_shift( $input );
while( count( $input ) ) {
// take the current word and the next word from the input array.
$matchme=$holder.‘ ‘.$input[0];
$pattern="|$matchme (.*?) |";
// get all the matches from input- the long string of words not the array
preg_match_all( $pattern, $inputstring, $matches );
// add the list of matched words to the segments array
$segments[ $matchme ] = $matches[1];
// cut the first item from the input array and move it over one.
// note that the array_shift compares against the while strlen above, so the shift is important
$holder=array_shift( $input );
}
// just some output
print count($segments)." segments calculated\n";
$keys=array_keys( $segments );
// starting to assemble the output. Using $keys[0] to be the first bit of the markoved content.
$output[]=$keys[0];
// $bracket is reused each loop, but $output holds the … wait for it … output.
$bracket=$output[0];
print "assembling\n";
// yeah yeah compare the length of output against the desired length.
while( count( $output ) < $wordcount ){
// $bracket is the key for $segments.
$index=$bracket;
$possiblenext=$segments[$index];
// $possiblenext is the array of words-that-follow ‘bracket’.
if ( count( $possiblenext ) == 0 ) {
// this is where it’s dying oddly
print "no possible next for $bracket\n";
die("\n\naiee!!\n");
}
$rand=rand(0, count( $possiblenext )-1 );
// pick a random number out of the array. I had this all wrapped together but broke it apart when it wasn’t working
$nextword=$possiblenext[$rand];
$output[] = ‘ ‘.$nextword; // prepend a space so the words don’t mash together
// the next bracket is the second word of this group plus the nextword variable.
$holder=split( " ", $bracket );
// makes me sad that I can’t use split(’ ‘, $bracket)[1];
$nextbracket=$holder[1].‘ ‘.$nextword;
$bracket = $nextbracket;
}
$output = implode( ‘ ‘, $output );
print $output;
print "\n";
So in a perfect world, I’d find that flaw and then maybe substitute some links into it from this stuff to a real site ( for instance, $output = str_replace(”bad debt”, “bad debt“, $output ) ) and then use xmlrpc and post it to a splog and ping pingomatic.
Hopefully this gets you going in writing your own markov generator. It’s important to write your own stuff, so you know how it works and to keep your stuff from looking too much like someone else’s stuff. My markov generator might generate different output ( different looking output ) from Nickycake’s generator. It’ll definitely be different output, because it’s all randomized. You can feel free to use the code above any way you want, I’m sure that since it’s unfinished, your touches will make it unique.
Written by russ on November 3rd, 2008 with no comments.
Read more articles on code.
Wtf!
I’ve long been a fan of the National Novel Writing Month, NaNoWriMo. I don’t think I could keep up with the novel writing because of my other “irons in my fire” but the Old Blind Ape is hosting a shindig. We’re writing 50,000 words of content; which could be ( does the math ), 100 500 word articles for various sites.
I have sites that could use a few 500 word articles. It’ll be good to get the content running on them. And if I get the pump primed well enough, I’ll be able to talk myself into writing more often.
For instance, I don’t think I could come up with content for project car catalog, but with this, I should be able to come up with bloody something.
Written by russ on November 3rd, 2008 with no comments.
Read more articles on Current Methods and goals.
I’m so proud. I’m actually making a little money. That is, I’ve spent about 60 bucks and there’s $112 in my market leverage account.
First, thanks and props to the cakes. He’s keepin it real.
First go over to Market Leverage and sign up there. Sure, you can use my affiliate link, or just type it in your self: marketleverage.com. Or use Nicky’s affiliate link. Whatever you want, it’s a free country, you know? You need an ad before you can join MySpace Advertising.
Logging into your Market Leverage account, click on “find offers;” it’s in the top row of the menu, white on blue. Click on that and then you’ll get a filtering sort of page. If you look down a little bit to “search by category,” use the drop down box and display “$ Current top performers” (it’s the top option). Javascript will submit it and you’ll get a list.
Ok, scan down these and find an offer. You’re looking for something you can imagine a demographic for, and something that allows web media types (the blue box in the “short description” column). I picked “TriSlim.” You can too.
Look. Most people are gonna hide their creatives, their programs, their niches, and their bids. With good reason. But I don’t have a lot of expendable cash, and I’ve already spent my allotment. So it’s dead to me.
Ok, if you click on the second column link, it’ll take you to a page where you can see the banners. You’re gonna have to go t hrough them page by page; there’s eight pages for the trislim offer.
You need a graphic that’s either 728×90 or 300×250. Just find one. You don’t want one with animation, it has to be .gif or .jpg or whatever. The graphic I picked was an animated gif but when it imported, it was static. So you’ll want something that won’t lose anything if it’s staticized. ( ie, if your graphic flashes “lose weight” and then “free trial” and then “click here” your targets won’t know it’s a free trial, kwim? )
Save the graphic to your local machine. Write a webpage that looks like this
<?php
header(”Location: http:
//www.yourlandingpage.com/?t202id=asdfad&t202kw=”);
?>
That location should match the href of the link in the advertising you’re pushing.
So if the text box beneath the offer you’ve decided on looks like this
<a href="http://allybranding.com/a.php?a=CD7975&b=24714&d=0&l=0&o=&p=0&c=4533&s1=&s2=&s3=&s4=&s5="><img src="http://users.marketleverage.com/42/7975/24714/" alt="" border="0"></a>
then take out the “allybranding” piece, from http to the empty subids at the end; &s= and put it in your little php page. Save the image source to your hard drive. (right click, durrr ). Upload the php page somewhere so you can access it.
Ok, sign up to MySpace Advertising with your ad. I have to use MS Windows and Internet Explorer to view this page. It sucks ( it’s their flash thing). Anyway, when it asks for your image, upload your image. When it asks for the destination, put in the location of that little php page you wrote (http://somedomain.com/offers/trislim.php for example ). It’ll ask you to save that information. Walk through their little wizard. When it comes to “demographics” you’ll want to look at who would buy it. Since I was selling TriSlim, a diet product, I went with women from 30 to 40. You have to go American, but you can pick either gender ( or both ) and a range of ages. The advertising wizard hung a moment while it checked everything and then asked me how much I wanted to spend.
You can go with the minimum suggested bid. You can go lower, you can go higher. I started higher. My original suggested minimum was $0.36. I went with $0.40 to drive a little traffic. As MySpace figured out that people would actually click on it, the minimum went down. My current minimum is $0.34 and my bid is sitting at $ 0.35. Then you set a limit as to how much you want to spend. Because I was chicken, I set that to $40; 100 clicks. I expected at least one purchase ( that’s a 1 percent success rate. ).
The ad took three business days to be approved. I don’t know why. Maybe they were busy. I submitted it on Friday and it was approved on Wednesday. Thursday morning I had one sale. I dropped my bid by a penny and increased my budget a little. To do this, you have to suspend your campaign and make the changes and re-submit, but approval was automatic ( probably because I didn’t modify the advertisement ).
I got a second sale with my budget capped at 60, so that was $56. My income was slowly catching up to my outlay. I figured I’d boost it to $80 and call it done, so I dropped my bid again, lowered my bid and went to bed. Today, it’s up to four sales, for a total of $112, and I’m done. ( I don’t have any more money to put in ).
You, on the other hand, knock yourself out; go put in a bunch of money and make some dough!
Written by russ on October 3rd, 2008 with 2 comments.
Read more articles on Uncategorized.
« Older articles
No newer articles