On Snake Oil and Experts

I just announced promotejs.com, which as described in my talk at the epic JSConf.eu is the following:

Through pirate techniques and guerrilla SEO we can change how search engines present answers to common queries about our language. By driving traffic to the proper documentation, we can change search rankings and ensure that people interested in JS are connected with the proper educational resources. First target for promotejs, unseat w3schools.com for standard new JS developer queries with proper MDN documentation.

Also please note that this was in the context of improving the experience for new entrants and those continuing their education of the JavaScript language. When you boil down the mission statement of promotejs and the talk in general was this very simple point:

It is up to the experienced developers to point out the proper documentation for the inexperienced. 

Of course the first group to get excited by this, and properly so, where the developers who followed developers that were in attendance of JSConf.EU. Unfortunately by the time we had reached the afterparty the other side of the conversation had arrived. The so-called SEO Experts who, without full context, go off and explain how this is stupid and will not work. Awesome, there is nothing like hitting the hornets nest of a bunch of people that doubt everything. So lets put some facts around this discussion before we start selling FUD in metric tons ;) (note, when the JSConf EU video is released, that joke will make a lot more sense).

1. It has already worked

The goal of PromoteJS is first and foremost to better the documentation visibility and by the sheer viral nature of PromoteJS with a backplane of Twitter and Facebook, it wasn’t long before most of the development community knew a couple things.

  1. JavaScript documentation visibility is surprisingly horrible
  2. There are proper documentation elements out there like the Mozilla Developer Network and such
  3. A lot of people believe in better visibility

When I say “a lot” I am being humble, let me put it this way, immediately after the initial launch of promotejs.com, not more than three (3) days time total - the site had over 4.5 million unique visitors and according to Google already had over 20,000 backlinks from people writing about promotejs.com on their site. So what does that mean? Well in simplest terms, this is obviously an issue that needed discussion and a rallying call mind you that even if no one put the badge on their site and backlinked the hell out of PromoteJS, thus giving a substantial amount of authority, we still win. Why? Well the first and highest quality link on the site not going back to google is to the top level Mozilla Developer Network site for JavaScript, as well as the second link, oh and the third link. So any discussion about the success or failure has to account for this before continuing anywhere else, a major factor that all the so called “SEO Experts” have not yet addressed.

2. Haters gonna hate

This is no more certain than the backlash against PromoteJS where as best I can see a total of 2 blog posts were generated by “experts”. Posts which mind you are providing highly organic back links to both PromoteJS AND the MDN site, links without the rel=”nofollow” or rel=”noindex” attributes. So let me start by saying thank you! Most of what I have read in these articles skips the main thrust of the #promotejs and that is getting people to link to proper documentation, to start discussing it, and to build better community awareness about the problem. In essence, the gist of their arguments are similar to mine - link in your articles it has greater weight than any single link or button ever will. That was a core fundamental of the educational component of the talk, #promotejs is just a way of getting people talking about it.

As for the “keyword stuffing” claims, I would contend that they just don’t get it. People do not search of “JavaScript”, but for specific items like “JavaScript Array Length” or “JS array.length” in order to find the specific target, the alt tag and name tag were crafted based on the actual searches done by actual people actually learning and using the language. Also bear in mind that the whole page and its context, its content, and its backlinkage are taken into account to determine the likelihood of a link being a link farm. So yes, if we had put it on a thousand one of sites each of which with little to no google page rank, I would agree, BUT THATS NOT THE POINT. These are going on high page rank, high value, high content sites that have lengthy histories. If anything this working with google’s algorithm, not against. It is people saying I believe this is the best documentation (for now) and if you want to know about JavaScript, like I write about it then go here. 

3. I repeat, it is working!

We built a site to track our progress within the google page ranking across all key terms called Are We First Yet. The site stopped working on March 1, 2011 due to API changes that google made (deprecated the API we were using). What it does show us is that from launch to March 1, we took almost all terms and got them two the first two page results - most above the fold on the first page. We can do even better and we are doing better. I actually wrote this article 3 days after launch, we all the SEO experts were clammering about how this is a flawed or failed effort and how its essentially going to do more damage than good. I ask you now, 5 months later, where are these “experts” with the big bowls of claim chowder? I can promise you this they aren’t on the first page of a common Google search, like umm… Learn JS which went from position 54 to link 3 or JS which went from 254 to link 68.

The thing I love most about SEO is that expertise is complete BS. Google changes their algorithm regularly in order to actually teardown the SEO experts and ensure that community determined proper content is placed above otherwise content. The goal of PromoteJS is, agreeably not to create a link farm, but to get us, JS developers, to start linking and start fixing the problems within our community. To take a stand and do instead of sitting and complaining. 

jsconfeu ftw