search
Carter Cole LinkedInCarters Twitter PageCarter Cole on Facebook Carter Coles RSS
Showing posts with label tools. Show all posts
Showing posts with label tools. Show all posts

Thursday, May 19, 2011

Sorezki SEO Plus stole its code from SEO Site Tools... and heres the proof

Roi Sorezki has contacted me and said that the code was copied by a developer and that the copied portions of code would be removed.

Imitation is the sincerest form of flattery... unless they are stealing your code

Hey there! I'm Carter Cole, the developer of the wildly popular SEO Site Tools Google chrome extension. It's currently boasting a little over 34,000 active users and it's my 2nd most pride and joy (I've got a son, Seth). My extension took a lot of hard work and time to create and today I found someone had stolen my work and reskinned it, calling it their own, adding only minimal changes to the ui and almost no functionality. As a kind of counter, to hopefully shame the person who stole my code, I'm going to run through all my code. How it works, the history of how I created it, then im going to show the copied UI elements and finally I'm going to show the copied code stolen from my extension.

Skip to copied code or Skip to copied UI (warning i kinda go on a rant to explain why I care so much about this little tool).

I like to think of my tool as the Borg of SEO tools. I first got the idea to build it when I heard SeoMoz had a free API. I hoped to create a 1 to 1 copy of the SeoMoz extension for Firefox as a Google Chrome extension and give it to SeoMoz to try and give credibility to get a job there and also to take credit for the chrome version. They didn't want to go for that and were going to keep it in-house but would help and give feedback. After my first prototype it felt like something was lacking. There were so many more data sources that the moz tool didnt show... So I downloaded every Firefox and chrome SEO Extension I could find and started sniffing the API calls they made (or scraped off serps, the best way to do this is with something like Fiddler). By combining only the metrics that really matter and adding in a few of my own ideas I had something awesome. Thats why I call it the Borg, it was made by replicating the best parts and as soon as another extension (in this case that was "Chrome SEO") created a new feature I would replicate (but not steal) the functionality and add it to my tool. I was doing almost weekly update and the user-base was growing like crazy. Then I got a new job and things stagnated. My extenstion is run on almost 10k pages a day and because of scope creep I've lost sight of my original goals and haven't made an update in months. I really need to block out time to make updates. My tool getting stolen has been a rude awakening that I need to get coding again. So enough about why this matters so much to me. I'll get into how they stole my tool.

Now, because of the nature of Google Chrome extensions (they are all just HTML and JavaScript) it's quite difficult to protect your source code so you expect it to be seen. Knowing this, I didn't even try to obfuscate the code because its pretty easy to reverse and if they really want the code they will get it. But there are some trade secrets you want to keep so you do them in a way that's not that hard to figure out but will trick a few. One of the problems I identified with SeoQuake (my closely following competitor) was that they only hit one Google datacenter, that caused there pagerank queries to look automated and thus get the violation of tos message. Google has tons of datacenters and I figured not all of them are telling each other who's asking for pagerank, so if we loop through all of them then we will have a kinda snowshoe that will let us make as many pagerank queries as we want without hitting those rate limiters. Cool, eh? Well, here they are, all the Google Datacenter IPs DWORD encoded to try and help hide what they were. They appear in my SEO Site Tool like this: and here is the stolen copy... on his server. Hmm, those kinda look the same... that's a little weird! But hey, I mean, that's just some regex and IP constants. There's nothing really magic in there right? Not so bad.
Then we look at the gwebtools.js. It's obfuscated on his server, where it's here gwebtools-remote.js but that packer is easily defeated by the JS Beautifyer and we find that its an exact copy. Except, he removed my branding logo.

OK, so there are giant portions of code that are copied from your tool and obfuscated on a remote server where he AJAXes it in to be evaled so none of the code he stole shows up in his tools file.

Here's how his eval function works executing my code... he ajaxes it in and executes it. I can keep showing example after example of copied function names and entire scripts that run different enhancements I wrote, but what made it so blatantly obvious that it was mine was the layout and display. I mean, it's all also copied. I even found a file they distributed with the extension called changesList.txt that had this in it. They took my code and just started Frankensteining it with their branding. But let's get to that stolen UI.
So, they actually AJAX in the HTML from my page from this url indexhtml-remote.html when the popup loads. I used the google chart API to make my link pie chart... heres theres (as blue).


They even copied the tooltip help stuff. I mean, it's like they didn't even care to try and hide it.


The way it shows the views of the elements is the same too, just some changes to my stylesheet is all it took.

Heres another example of exact copies of my tool compared to theirs (I'm showing theirs then mine).
...and here is my version: the original.

Same tools same copy same html table to resize the window... the function calls are the same all of it, along with the string tools (which were really added in there for me but i got some good ideas from ontolo tools so ill add those to the list of things to build)
Again im showing his copy and then my original...
Copy:
Original:

And finally, they copied all my automated SEO advice... something I actually hate to do because you get some users that fight to get all green and its not really the best use of their SEO time, but thats a whole different issue.

One more time... heres there copy:

...and the same exact results in the same order as my tool just different colors.


I've worked hard to create my tool and you have only begun to see the cool ideas I have planned. Hopefully I won't need to keep fighting my code being stolen, but I've worked too hard to see all my intellectual property stolen and do nothing about it.

I'm tired and wasted my night writing this whole rant. I just want credit for one of my best pieces of work, and if you want an SEO extension send me an email. I've built them for other firms and if the partner is right I see no reason why I wouldn't license the code out (the whole point is bragging rights and finding a way to make a little money), petty? I guess, but itss my code and I'm gonna fight to keep it.

Friday, August 6, 2010

New SEO API - HTTP Redirect Chain Test lets you enumerate all the jumps

One of the things that you should know about redirects and SEO is that only 301 Moved Permanently if there is more than one redirect then the crawler will use the "weakest" code it saw... You can test the tool below and see how it behaves... after about 5 redirects GoogleBot will stop following them so my script also cuts off around that point. You can put any url you like below and it will show you the destination url with any hops it makes in between

To see code and use tool you need to be on original post


You can see that this default one makes too many jumps and it cuts off but lets talk about formats and how to use the API. It can return a JSON or JSONP (requires attribution link) and will follow up to 6 redirects and return info about each leg of the journey
This is a sample call, it takes 1 required parameter url= which is url to check and an optional callback= parameter if you want a JSONP response. (an object wrapped in function as output)

Ok heres the example API url

http://cartercole.com/dev/api/redirectchain.asp?callback=testCB&url=http://migre.me/TAVJ
and a sample output from its response... it has a original url, a destination and its status code, as well as an array called "chain" that holds each leg of the jump

I created this for use with new version of SEO Site Tools but im releasing it publicly because I dont know of any other SEO APIs avaiable that do this kind of results so use the tool and I hope you find it useful. If you have questions bother me at one of my social profiles... im pretty sure theres hundreds now :)
built with CarterCole.com tech

Monday, May 24, 2010

New features in Chrome SEO extension SEO Site Tools

Be sure to rate SEO Site Tools 5 stars!




Update
the API that runs SERP demographics broke... ill have it fixed tonight  the api is now gone... looking for suitable replacement... standby

Original Post

This update has a bunch of cool new tools for SERPs and I wanted to showcase them here because Ive used all my text on the chrome seo extension download page So lets jump right in...
First you never have to wonder about Google Personal Search or how to disable it the tool knows and displays the status... and if you want to disable personal search just go to the options menu and any Google searches will have the pws=0 parameter added.




Now this is also really cool I call it Domain Highlighting any result that appears in the domain list you set in your options will be colored for higher visibility. you can even change the colors for different domains
Now remember this words in all major search engines (thats Bing, Yahoo, Google)

and the finally we are also adding demographics, search volume, CTR and PPC cost to all the SERPs


oh and here and here in Google Webmaster Tools you can now have 1 click access to the Insights for search






id love to hear feedback and any feature ideas... remember all these can be turned off in the options menu


Indispensable : l’extension qui m’a fait adopter Chrome : SEO Site Tools http://bit.ly/9XeEagless than a minute ago via Nambu

Thursday, April 15, 2010

Google Webmaster Tools is now that much better


So now they have a much better UI in WMT that shows you all kinds of cool things and how your ranking in the all important SERP... i really like the improvement and the detailed CTR has given me an idea... some opt in anonymous gathering of SERP position info... there hasn't been much data lately that can show what average CTR for each position... by allowing SEO Site Tools users to allow cleaned position and CTR information to be sent back to my server i can compute an updated and true CTR for the average SERP. now im off to get married next week but as soon as i get back i see some code to do something along those lines...

so if you haven't see it yet you can scurry over to my SEO and Webmaster link dump and check out your new query data for yourself... im going to try to start posting more often even if its just these small little updates but ill get some nice meaty ones in there too stay tuned and thats for reading...

Friday, April 2, 2010

First Click Free! get the same content the crawlers do


i was surfing around the other day and I came across a site that i had bookmarked as interesting news to read for later and the content is hidden away... ive had a rant about this before so i thought to myself, self how would i fix this? Well i knew that it was because of Google's first click free they had to show me the clean content because I arrived from Google.I wrote it pretty quickly (im getting good at pumping them out after my success with SEO Site Tools) and it seemed to not want to pass through all the time... it was kinda lame I had to use timers and it was not very effective :( but then I thought of a very simple solution and it works perfectly now and i got the referrer coming through correctly... probably wont be any updates unless something changes so enjoy the tool!

First Cick Free

for Google Chrome

Thursday, April 1, 2010

My Status Update Optimizer - Better SEO from Facebook...

 hello all, i was reading SeoMoz today and they released their Facebook Status Optimizer... so a little work later im excited to announce that we have our own!

Start Using Carter's Facebook Status Optimizer

fully funtional it can create the most click worth updates that users have no choice but to see it... get ready to see a big jump in your CTR!

Monday, March 29, 2010

Cooler default avatars for Blogger comments... all in one line

Ive felt bad for not posting so heres another quick fix i just added to my Blogger blogs (i know you can barely tell but it is) Heres how it goes... the comments use the default def blogger profile or def open id.

Like this:


but thats not very pretty so i wrote this small little script up real quick its fast easy to implement and only injects itself when its needed... the conditional statement makes sure it will only display when comments are showing...

i found this really cool service Retro Avatar i told it to generate with transparency so it will go with any design and works with only one line of code


to add it simply go to "Edit HTML" under "Layout" in your Blogger dashboard and add it somewhere above the </body> tag

and thats it no more ugly comments and the cool thing is they will all be unique to the username that commented because the design is generated from the users name... way cool

thats it ill be on twitter as @cartercole if you need me ill try to come up with something else for your real soon...
comment so you can test it and see your icon (but it only works if you dont have one set)

Monday, March 1, 2010

The external keyword data in Google Webmaster Tools

Update II

we've added even more features to enhance SERPs read about the update with things like personal search status and Insights for search integrated into Webmaster Tools and SERPs of the major 3 search engines

Update

Well thats funny... @merrillg pointed out this is the data from the anchor text tab in the links section... makes sense its there considering it is anchor text but it shows in the keywords feed and not the keywords section which is where i got confused... I was wrong about it not being published anywhere else but this data is still pretty important... I cant believe I didn't notice that tab before... I guess I was distracted by the link data... sorry :(

Original

The keyword data that Google Webmaster Tools shows you is only part of the data that exists for your site... its up to 200 internal keywords, this comes from your pages and you can manipulate it based on the keywords you use in your content. But thats not whole story, what about that all important anchor text? Now of course you could go look at Open Site Explorer but wouldn't it be great to see what Google sees as your anchor text? I found the other keywords, the external keyword data hiding in a little known feed in webmaster tools... now aside from this guy who sounds a little like a consparicy nut and a short mention in the feed documentation nobody is talking about this data... Unfortunately i couldn't get pass through authentication so you have to put in your password but thanks to my new extension SEO Site Tools for Google Chrome you can navigate this data all from the safety of your favorite browser :)

heres how easy it is to get the data... open the tool from the Page Terms / Tools section

put in your login and it will present you a list of sites associated with that email addresses Google Webmaster Tools... choose one and you will see something like this
it will show you up to 100 external keywords... but what is this data that is published nowhere else any why is it so valuable? well lets take a look at bit of the list from my blog...
carter cole
carter cole developer
http blog cartercole com 2009 10 awesome syntax
16.52 del icio us easily embed tweets in
syntax
this feed is from my technology blog
embedding your google profile social icons
my technology blog
http blog cartercole com 2009
some code for asp and php

you know how sometimes when you do a search and look at Google's cache and see that "These terms only appear in links pointing to this page" thats what this keyword data is... its the external keywords Google has associated with your site... when I searched for some of the unique ones like "this feed is from my technology blog"

my site was the first result... i append that text with a link back to my site at the end of my rss feed so if someone republishes my content i can get credit for creating it... so the scrapers are sending that anchor text back to my site and whats even more interesting is that some of these keywords are from links that are no-followed so it might be that those links while not passing juice are passing something possibly even more valuable... their anchor text

the tool is still super beta and has some errors so please send me feedback to the email provided in the tool with any ideas/thoughts you may have about this very interesting data feed thats hiding in the webmaster tools data feed

again you need SEO Site Tools to get to this data and aside from doing some HTTP Gets yourself i know of no other tool that shows users this data

Update

i found some screen shots of the old tool on SearchEngineLand before it was removed

Friday, February 12, 2010

Tweets about posts in blogger (and any other page i guess)

twitter has become one of the best ways to promote a story... and the more tweets and retweets a post gets the more accreditation and recognition the page gets. showing the tweets that a page has already received can help convey the gravity of a story and encourage others to promote the story... [for tweets about news or republish them easily you should use this embed code] but back to what we are doing...tweetmeme.com does a pretty good job of aggregating and collecting tweets about pages... and are responsible for the cool retweet gadgets that appear on most websites. my script uses their API to pull the 10 most recent tweets about a page in the last 6 days (they dont keep them in their database past then) so lets get into what this does...

this will drop the tweets onto whatever page its currently on:
<script>document.write("<scr"+"ipt src='http://cartercole.com/urlstweetsgadget.asp?url="+document.location+"'><"+"/scr"+"ipt>");</script>
you will need to drop this css into the page somewhere
its what does the magic and makes the tweets look all pretty :)

if your installing on blogger you can add the script at the bottom of each post by choosing "Expand Widget Templates" and adding it somewhere around the DIVs with the class post-footer-line
<div class='tweetsonpage'/>
<script expr:src='"http://cartercole.com/urlstweetsgadget.asp?url=" + data:post.url'/>
    </div>

View the original post to see the tweets on the page

ok so to see the script in action just look below here (if you dont see a recent one listed tweet about this page real quick to get a demo) if there are no tweets about the page it wont drop anything in so you can leave it on pages to display once it has received all the recognition... if you have any questions or need help installing bother me on twitter im @cartercole

Saturday, December 19, 2009

the poor mans web beacon | tracking visits on 3ed party sites

i recently got one of my posts republished on Seomoz

and ive reached hits on my post...

(which is funny because ive only gotten 83 total from my blog)
so how did i get this pageview data from this third party site? its easy if you can inject an image on the page... which most of the time is pretty easy to do if you are publishing an article on another site. so when i wrote my post i created a custom j.mp url (same as bit.ly btw) to the location of my follow me on twitter image. by using a short url pointed at an image as the src of my badge that i put at the end of the post i was able to track the number of views my article recieved... heres the code i used in the post
and here you can see all the info http://j.mp/juicebeacon+ (you can get info on any bit.ly url by adding the + at the end) as you normally would about referrer (where the image was loaded from) as well as location information about the visits your article recieved

if you have any questions you want answered bother me on twitter im @cartercole

Monday, November 30, 2009

Webmaster and SEO dashboard

UPDATE:

The dashboard below is great but if your trying to do some on-page analysis you need a good SEO Toolbar like my newly released SEO Site Tools to help you with your work... and if you interested in your external anchor text you should defiantly run on over are read about the keyword data I found in Webmaster Tools that is published nowhere else...

i find myself constantly wanting to have one place as a jumping point for me to review all my website stuff and the way chrome does bookmarks makes it where clicking to this post is actually faster(at least for me). but i figure this is one place to start from then i don't have to go looking through all the bookmarks. ill add more items here as i find more tools that i find useful for SEOs and Webmasters


SEO Site Tools is my Google Chrome Extension with over 21,000 users 
im sure you would love it too... try it today