This is an old blog. My new blog is moved here.

Is Yodle.com worth your money?

6/30/2009

Last week of one my clients was approached by of the yodle.com sales people about purchasing an advertising campaign. My fried called my right afterwords asking me to validate that this company was worth the advertising funds they were asking for. Asking over $3000 for a 3 months commitment is quite an investment for something that you have not tested.

The sales person would not stop calling, so finally my friend gave him my phone number and have me talk to them to ask a few questions about how they were going to spend thousands of dollars of my friends hard earned money.

I was told that part of the sum would go to set up fees, and some monthly fees for using their lead generation phone system. The answer I was trying to get however was if I give you $600 and then you go out and buy my site some traffic, how much of that $600 do you keep. What I was told was that yodle.com just bought a very expensive PPC management system which manages all their PPC campaigns and that the cut is variable. Wait, this is shady I said, if you control how much you buy your traffic for based on efficiency and keyword conversion, then who is going to decide with each whole sale click how much it is going to cost me? This PPC management "black box" started to smell to me. Somebody could just change the "profit margin formula" and totally cook the books. But still I said to myself, this company understands the advertising space and with its package deal, though overpriced may provide some kind of value to its clients. My final consensus was that I will recommend my client to try this service for month, and then run a campaign with the same budget on Google AdWords comparing the amount of leads each generate. What bothered me however was the push techniques the sales person used.

One week later, I started doing research for my friends Google AdWords campaign and typed "AC replacement" in google to get some ideas what catch phrases other advertisers use on their paid ads. I was also hoping to see some of the campaign that yodle.com is running for their clients using their brand new PCC system. I cold not believe my eyes. I saw a single ad pointing to the Local.Yodle.com directory that lists all the other AC contractors (competitors). In fact, this is exactly what Superpages.com or yahoo directory does for fraction of the cost. Even if Yodle.com understood their clients keywords, conversions and lead generation channels, since there is not accountability check on how much Yodle.com will spend on driving traffic this page. By the way, speaking of directory, Local.Yodle.com is a joke. If I type "AC replacement" in "Avanel, NJ" it returns a mix of HVAC compaines some not even in the right area! So even if this company spends money on branding as a directory that helps you compare local contractors, my user experience horrible!!!

AC System Installation.
Research Local HVAC Companies.
Compare, Choose, & Book Appt's.
Local.Yodle.com/New-York/HVAC

I spend close to an hour on the phone with the sales rep, who actually gave up half way though and his manager had to picked up, and this information that my clients website would be included in an advertised directory was totally omitted. I who understand how the online ad wold works was the whole time lead to believe that at least part of my clients money was going directly towards driving paid search to their website. I can live with the fact that somebody manages my traffic portfolio and takes a cut out of the budget, but tell me that you will run a camping for me and then put me in your directory for thousands of dollars in fees, this my friend I have to call a ... Especially, if you are selling this to people who have no clue what they are buying. In layman speak, what they will do is basically take lets say $600 from 20 contractors (collect $12k) and then say, hmm so how much revenue are we going to make this month, lets make it 80% because we have to pay our investors back, and then spend 2400 on Google AdWords to drive the traffic to this page... no accountability to the clients, just a fancy PPC system that can even increase the profits... oh and before I forget, that landing page with all the other contractors even has google ad on it right on the top, so some of the costs with getting the traffic to this page are made right back.

All summed up, yodle is a company that has a very appealing products, and very good sale force making a lot of money through exploiting small businesses because lack of knowledge about online advertising. Rule of thumb: never trust a pushy sales guy from New York if you did not learn the lesson yet!

new place where you can have a controversial dialogue: dialoggr.com

6/22/2009

In this post, I would like to introduce my newest web 2.0 project: dialoggr.com. This site aims create an online destination where people can have their "fights" over their favorite issues. In addition, it will help those trying to make a decision.

Originally, I thought of this site as a SEO traffic site, which would utilize the fact that many searches are made with the 'vs." (versus) keyword, comparing two things. However, the new vision is to make this into full social networking site, with facebook app, and JavaScript widgets, that could be shared through social media.

JavaScript Class inheritance using the jQuery desgin pattern

6/3/2009

In the last article I have explored how the Netflix developers use the jQuery plugin style of development to write a well organized JavaScript framework.

Here is another pattern that I have observed from their code: creating an anonymous function, and inserting needed classes that are to be inherited as the function auto-execution parameters. I think this is really neat, and allows for very elegant chaining of your object/classes in Javascript. So here is the example:

//some class
var someClass = {
    someVar: "some value",
    someVar2: "some other value",
    someMethod: function(A){
        return A + " " + this.someVar;
    }
};

//other class that is being 'extended
(function(A) {
        var E = A.someMethod("other value"),
            F = function(H) {
                console.log(E);
            }();
})(someClass);

...and of course, this is inheritance pattern you will find in many jQuery plugins.

Netflix JavaScript code: AJAX library as jquery plugins

6/2/2009

Recently I have been exploring the best approach to write a custom JavaScript framework. We all use JavaScript libraries these days, and some of us have heard about object oriented principles in organizing our javascript code. The dilemma I have have had recently was that I love jQuery's simplicity approach, but how should I marry this with a custom framework, and how much should those two be tied together. In this pursuit, I have actually explored other libraries, and to be frank, loved the clean OO approach of MooTools, or YUI. Yet, I had a feeling that jQuery had some way to match this.

Finally, Netflix shed some light into my problem: why not to write all your libraries as jQuery plugins. I have actually though of this myself, but still wanted to find a proof that this idea was not totally insane.

So, lets take a look at some code samples.

(function(A) {
netflix.fang = function(B) {
var C = A.extend({
id: "fang" + new Date().getTime(),
visibleborder: "bottom",
color: "#000000",
bgcolor: "transparent",
width: {
t: 10,
l: 10,
b: 10,
r: 10
},
opacity: 0.8
},
B || {});
return {
ui: A("<div>").attr("id", C.id).css({
"border-style": "solid",
overflow: "hidden",
opacity: C.opacity,
"border-left-width": C.width.l,
"border-top-width": C.width.t,
"border-bottom-width": C.width.b,
"border-right-width": C.width.r,
"border-color": C.bgcolor
}).css("border-" + C.visibleborder + "-color", C.color).width(0).height(0),
width: C.width.l + C.width.r,
height: C.width.t + C.width.b
}
}
})(jQuery);

so this is clearly a plugin style of writing custom class, with the jQuery famous return object, that allows for chaining... just looking at the code briefly, looks pretty brilliant to me...

Disable Refresh using JavaScript in Ajax application with window.onbeforeunload

5/8/2009

In an Ajax application, loading a page becomes your session. A nice feature to have especially when your application uses managed popups is alert the user before he tries to refresh or close the application window. This feature is for example in browser based Ajax client meebo.com.

I have seen several approaches to this problem, some have tried to disable the F5 key, other hide the status bar so that the user cannot click the refresh button.

This is the most elegant way to do this: use the window.onbeforeunload function.

This is what the code looks like:

window.onbeforeunload = function(){
return "You may loose some session data!";
}