Matt Cutts Talks SEO for Google



The latest Google Webmaster video features Distinguished Engineer Matt Cutts talking about what webmasters can expect to see in the next few months in terms of SEO for Google, particularly changes combating black hat web spam from many different angles in a variety of areas.
Here are nine search and SEO changes webmasters will likely see – although, as always, Cutts warns nothing is set in stone and it should be taken with a grain of salt.

1. Next Generation of Penguin – Penguin 2.0

This update is to try and target more black hat web spam. The new Penguin 2.0, which is the name Google uses internally for the next gen Penguin, will be much more comprehensive than Penguin 1.0 and it will go deeper and have a larger impact than the original.

2. Advertorials

Many advertorials (a.k.a., native advertising) violate Google's quality guidelines. More importantly, they should not flow PageRank.
Google is planning to be a lot stronger on their enforcement of these types of paid links and advertising, disguised as “advertorials”. Cutts did clarify there is nothing wrong with advertorials, simply that they don't want them to be abused for PageRank and linking reasons. If you use advertorials, Cutts suggested that they should be clearly marked and obvious that it is paid advertising.

3. “Payday Loans” in .co.uk

Cutts mentioned that this is a problematic search, and there are others like it, so they are tackling it a couple of different ways. For those that play in that space, however, you're out of luck since Cutts isn't revealing exactly how they are dealing with it, just that it will be happening.
He said that they are targeting specific areas (another example he included was porn queries) that have traditionally been more spammy.

4. Devaluing Upstream Linking

Again, Cutts isn't going into details about this, but they are working on making link buying less effective and have a couple ideas for detailed link analysis to tackle this issue.

5. Hacked Sites

They want to roll out a next generation of hacked detection, as well as being able to notify webmasters better. They would like to be able to point webmasters to more specific information, such as whether they are dealing with malware or a hacked site, and to hopefully clean it up.

6. Authority

If Google's algorithms believe you or your site is an authority in a particular area, they want to make sure those sites rank a little bit higher than other sites.

7. Panda

They are looking for some additional signals for sites that are in the "gray area" or "border zone", and looking for other signals that suggest the site truly is high quality, so it will help those sites who have been previously impacted by Panda.

8. Changes to Cluster of Results From the Same Site

If you're doing deep searches in Google, and going back 5, 6 or more results pages deep, you can see the same site popping up with a cluster of results on those deep pages.
Google is looking into a change where once you have seen a cluster of results from the same site, you will be less likely to see more and more from that same site as you go deeper. Cutts mentioned this as being something that came specifically from user feedback.

9. More Information for Webmasters

Cutts said they want to be able to keep giving webmasters more specific and detailed information via webmaster tools. He mentions specifically example URLs to help webmasters diagnose problems on their site.
He believes that the changes will really make a difference with the quality of the search results, as well as impact the amount of spam that is showing up.

Bottom Line

Cutts says if you are focused on high quality content, you don't have much to worry about. But if you're dabbling in the black hat arts, you might have a busy summer.

Display Advertising white papers

The rise of mobile smartphones and tablets makes email ever more essential. This study across the thousands of newsletters on the LiveIntent Exchange reveals how to best optimize your email design for ad revenue and engagement.

High impact search campaigns are not for the weak-hearted. With new enhanced campaigns, retargeting, display, and mobile options, advertisers have the ability to design and target campaigns with amazing granularity - and with impressive results.

Digital advertising has been known to provide marketers with tangible results, answers to their questions about ad campaign performance, and guidance on where to spend their money.    

Online Marketing-Email Strategy

Email Strategy  help you maximize your email marketing efforts. Learn about deliverability, effective communication, email formatting, tracking ROI .


  • How email strategy can help you meet your marketing objectives through lead generation, lead nurturing, direct sales, and customer retention.
  • The key components of lead generation via email, utilizing calls to action and landing pages, and the advantages of using in-house and third-party email lists.
  • The advantages of building a "drip campaign" into your email strategy to nurture and move leads through the sales cycle.
  • The benefits of direct sales emails and what you can do to successfully create high sales turnaround using calls to action and deep linking to appropriate pages.
  • The value of a quality email strategy that will help you retain customers and build relationships with your readers, keeping your brand at the top of their minds.

Most Popular Keywords


  • Google Trends: Allows you to tap into Google's database of searches, to determine which keywords are most popular. View the volume of search queries over time (since 2004) worldwide or by regions and subregions, by languages, categories, and in Google properties such as news, image, or product search. Compare multiple terms, as well. Offers a list of what is trending now in Hot Searches.
  • Google Autocomplete: Google's Autocomplete is a tool that can help round out your research by providing keywords as seen through the searchers experience. When a searcher begins to type into the search box on Google.com, additional keywords are offered for searches that could be similar to what is typed. Google's algorithm works to predict search queries in real-time based on indexed web pages, personalized search history, other users' search activity, and Google+ (for person's name). Since the results are personalized, you may wish for more control over the Autocomplete feature. This can be accomplished by logging out of Google, turning off customizations, deleting web history, and Google+ settings.
  • Yahoo Buzz Log: Shows top overall keyword searches by Yahoo users with rank, buzz score, and how the search volume has moved in rank. There are additional options to narrow the buzz log by categories such as actors, movies, music, etc.
  • AOL Search Trends: Lists the top 50 search trends both hourly and daily on AOL. Data in AOL contains web and image searches (powered by Google), video (powered by Blinkx), News, Shopping, Maps, and Yellow Pages (powered by various providers).
  • YouTube Trends: Provides insights into popular videos based on keywords and video views. Trending Topics are algorithmically-generated topics from keywords in the title, tags, and description of the video within sets of videos that are currently rising in popularity. Trending videos are based on embedded video views and views on YouTube.
  • Google AdWords Keyword Tool: Enter a term or terms, to see search volume and keyword competition. Advanced options and filters allow you to refine by locations and languages and by desktop or mobile. 
  • Fastest Falling Global Queries

    Who lost the most traction in 2011? As Google Zeitgeist reveals the queries that fell fastest this year; see if you can spot the trend:
    1. MySpace 
    2. Hi5 
    3. Mebo (we believe they meant Meebo and not the misspelling) 
    4. Nasza Klasa (social network) 
    5. Netlog (social network) 
    6. Baidu 
    7. Wer Kennt Wen (social network) 
    8. Meinvz (social network) 
    9. Hotmail Correo 
    10. Delta Airlines

    Fastest Rising People Queries in the World

    Google has released their Zeitgeist 2011 data, complete with the top 10 search queries in sports, entertainment, news, and more for 48 countries. Zeitgeist’s lists allow you to compare results of any two queries on each list across various sliding time spans on an interactive graph, with hyperlinked icons indicating where news articles are available.
    Global data shows that Rebecca Black was the fastest rising query in the world, with searches for her name increasing more than 10,000 percent in 2011. Google+ and Ryan Dunn were the next fastest growing queries worldwide.
  • Download file using curl in php


    You would need to feed CURLOPT_URL the full URL to the file. Also if you want to download a file you might want to save it somewhere.

    Working example:
    $curl = curl_init();
    $file = fopen("ls-lR.gz", 'w');
    curl_setopt($curl, CURLOPT_URL, "ftp://ftp.sunet.se/ls-lR.gz"); #input
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($curl, CURLOPT_FILE, $file); #output
    curl_setopt($curl, CURLOPT_USERPWD, "$_FTP[username]:$_FTP[password]");
    curl_exec($curl);
    curl_close($curl);
    fclose($file);
    
    
    
    
    
    
    I used the ftp_* functions for ftp, in place of curl, because curl 
    tried to change directories, but its not allowed on this ftp server, so 
    the code i used is;
    $local_file = 'output.rar';
    $server_file = '/somedir/1/bar/foo/somearchive.rar';
    $ftp_user_name='anonymous';
    $ftp_user_pass='mozilla@example.com';
    $ftp_server='server.host';
    // set up basic connection
    $conn_id = ftp_connect($ftp_server);
    
    // login with username and password
    $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
    
    /* uncomment if you need to change directories
    if (ftp_chdir($conn_id, "<directory>")) {
        echo "Current directory is now: " . ftp_pwd($conn_id) . "\n";
    } else { 
        echo "Couldn't change directory\n";
    }
    */
    
    // try to download $server_file and save to $local_file
    if (ftp_get($conn_id, $local_file, $server_file, FTP_BINARY)) {
        echo "Successfully written to $local_file\n";
    } else {
        echo "There was a problem\n";
    }
    
    // close the connection
    ftp_close($conn_id);
    It works !!

    PHP error: Cannot modify header information


    You cannot use header() once text has been output to the browser. As your header.php include presumably outputs HTML, header() cannot be used.
    You can solve this in a couple ways:
    • Move the if statement above the header include (this won't work, as you've indicated in comments that header.php sets the uid session and other vital stuff).
    • Call ob_start() at the top of the script to buffer the output.

    You can't issue HTTP headers after you have outputted content.

    unction Redirect($url) {
            flush(); // Flush the buffer
            header("Location: $url"); // Rewrite the header
            die;
        }
    
    
    
    
    function Redirect($url) {
            flush(); // Flush the buffer
            ob_flush();
            header("Location: $url"); // Rewrite the header
            die;
        }
    
    
    
    
    To ensure your error reporting level is the same across environments, you can set it in your application using error_reporting() and ini_set('display_errors', 1)
    Also check your .php files for any whitespace before the opening tag and after the closing tag.
    In addition to the points mentioned above, ensure you are not outputting anything before the headers are set, for example the following code would produce an error similar to the one you are receiving:
    echo 'Hello, World';
    header('Location: http://www.somesite.com');

    PHP Curl check for file existence


    a PHP program that downloads a pdf from a backend and save to a local drive.
    
    
    $url = "http://wedsite/test.pdf";
    $path = "C:\\test.pdf;"
    downloadAndSave($url,$path);
    
    function downloadAndSave($urlS,$pathS)
        {
            $fp = fopen($pathS, 'w');
    
            $ch = curl_init($urlS);
    
            curl_setopt($ch, CURLOPT_FILE, $fp);
            $data = curl_exec($ch);
    
            $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
            echo $httpCode;
            //If 404 is returned, then file is not found.
            if(strcmp($httpCode,"404") == 1)
            {
                echo $httpCode;
                echo $urlS; 
            }
    
            fclose($fp);
    
        }
    
    
    You can do this with a separate curl HEAD request:
    curl_setopt($ch, CURLOPT_NOBODY, true);
    $data = curl_exec($ch);
    
    $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    When you actually want to download you can use set NOBODY to false.

    PHP: How do I enable error reporting?

    How to create update or remove symbolic or soft link Linux


    Symbolic links , Symlink or Soft link in Unix are very important concept to understand and use in various UNIX operating systems e.g. Linux , Solaris or IBM AIX. Symlinks gives you so much power and flexibility that you can maintain things quite easily.I personally feel that along with find, grep and other UNIX commands, command to create soft link and update soft link i.e. ln -s  is also must for any one working in UNIX machine. Whenever I do scripting or write any UNIX script I always write for symlinks rather than pointing to absolute path of directories in UNIX. It gives you flexibility of changing the symlink or soft link without making any change on your tried and tested scripts. I have worked on many different core Java projects which run on Linux and UNIX machine and make extensive use of UNIX symbolic links or symlinks. All my project which are on finance domain and on electronic trading systems have there server running on Linux,  Since speed is major concern in online stock or futures trading where orders has to hit the market within micro seconds Linux server is ideal choice for electronic and fix trading systems and since your server is on UNIX you have to be expert of Unix command to work efficiently and these articles are my result of those effort to learn and share new UNIX commands. In this UNIX fundamental tutorial we will see How to create soft link in UNIX, How to update soft link and Difference between Soft link and Hard link in Unix and Linux. By the way this UNIX command tutorial is  in continuation of my earlier article top networking commands in Unix  and CVS command examples ,  if you haven’t read already you may find some useful information based on my experience in Unix and Linux commands.



    First difference between soft link and hard link is that  Unix Soft links are pointers to programs, files, or directories located elsewhere (just like Windows shortcuts) , while Unix Hard links are pointers to programs and files, but NOT directories.
    2) Second major difference between UNIX soft link and hard link is that If the original program, file, or directory is renamed, moved, or deleted, the soft link is broken and it will show in red color if you using ls -lrt --color option. On the other hand, If the original program or file is renamed, moved, or deleted, the hard link is NOT broken
    3) One not so important difference on soft link vs hard link is that,  If you type ls -F you can see which files are UNIX soft links because they end with @

    4)  Another difference between soft link vs hard link is how you create them, To create a soft link called "current" that points to a file or directory called "new_package", use this: ln -s new_package latest  to remember this command always remember that name of soft link comes as last argument. On the other side to create a UNIX hard link called myhardlink.txt that points to a file called myfile.txt, use this: ln myfile.txt myhardlink.txt

    5) One more significant difference on soft link and hard link on UNIX or Linux is that, soft link can point to a network mounted directory also. For creating unix soft link remember to use option "-s" with UNIX link command "ln". While, Hard links in UNIX cannot span disk drives, so you CANNOT have a hard link on /dev/hdb that refers to a program or file on /dev/hda

    FTP 550 Access is denied Error

    Probably the Firewall from Client A which is preventing this. FTP also requires a data channel to send its information