Friday, November 12, 2010

[Gd] Simpler pricing for Site Search

| More

Google Custom Search: Simpler pricing for Site Search

Based on user feedback, we’ve simplified our pricing for Google Site Search, our hosted search offering for businesses and organizations that want Google-quality search on their sites without ads.

To date, we’ve charged for Google Site Search based on both the number of submitted search queries and the number of pages indexed. Our new pricing is based only on queries. It is much simpler and scales to accommodate the size of your organization.

A bonus -- as part of this change, we’ve doubled the allocation for On-Demand pages indexed per search engine.

For more details, please check our post on the Google Enterprise Blog.

Posted by: Hui Xu, Staff Software Engineer

[Gd] An Ingredients List for Testing - Part Seven (of Seven)

| More

Google Testing Blog: An Ingredients List for Testing - Part Seven (of Seven)

By James Whittaker

When to stop testing? It’s the age old testing question that many researchers have tried to quantify. In fact, the best answer requires no science whatsoever: never. Since testing is infinite, we can never really stop. A more practical answer also surfaces in the real world: when the software ships, you’re done. Of course this is only true for the duration of the ship party, after that testing continues on the next version.

At Google we are experimenting with test completeness measures that describe how well actual testing covers the risk landscape. In other words, we are measuring the extent to which our testing covers the things that require the most testing. Tests that cover the high risk areas well count for more than tests that cover lower risk features. Testing is, after all, a business of risk mitigation.

The set of tools necessary to accomplish this were described in my GTAC 2010 talk which should appear on YouTube soon and are collectively being called Google Test Analytics. More about these tools in future posts.

[Gd] Market Housekeeping Alert

| More

Android Developers Blog: Market Housekeeping Alert

We’ve had quite a bit of discussion in this space recently about how to make sure that your app is visible in Android Market to any device that can run it, and only to those devices. In particular, check out two recent pieces by Reto Meier, Future-Proofing Your App and The Five Steps to Future Hardware Happiness.

As Reto points out, Market used to infer some <uses-feature> settings for older apps that were uploaded before certain device features arrived. This hasn’t been the case for applications uploaded since June of this year; developers have had to be careful about <uses-feature> and its android:required attribute. From what we see, it looks like most of you have got this sorted out and things are working smoothly.

However, there are still apps that haven’t been re-uploaded since June. In preparation for introducing some new Market features (that we think you’ll like), we’re about to launch a re-scan of all those legacy apps, looking at their Android Manifests and updating Market’s database. This means that if you have an app that you haven’t updated since June, and it lacks up-to-date <uses-feature> settings, it may stop being visible on certain devices.

We think the set of apps that will have this problem will be small, if only since most successful apps are updated regularly. If you want to be sure, check Reto’s advice here under "Android Market Rule #2”.

We’ve said it before but it bears repeating: There are a lot of different sizes and shapes and flavors of Android devices in the product pipeline, and you want your app available on every one that can possibly run it. So this is an area that is going to be requiring attention from developers on a continuing basis.


[Gd] More Channels to Feed On

| More

YouTube API Blog: More Channels to Feed On

The YouTube API’s standard feeds are a great way to expose your users to the best of what YouTube has to offer. To compliment the existing standard video feeds, which contain lists of individual videos that meet certain criteria (the top rated videos in the United States for the current day, for instance), we’re happy to introduce a new set of standard channel feeds.

While standard video feeds contain lists of videos, standard channel feeds contain lists of channels, or user accounts. The two types of standard channel feeds are most_viewed and most_subscribed, and just like with video feeds you can narrow down your results even further with time, region, and category or user type parameters. For example, the URL for requesting the most viewed channels with videos related to music in Great Britain for the past week is Each entry in a standard channel feed provides detailed information about a specific YouTube channel, including a element with info on how many comments, videos, and views that channel has received.

Once you have these lists of channels, a natural next step would be to allow your logged-in users to subscribe to a given channel or view a list of videos uploaded in that channel.

Standard channel feeds are only available in version 2 of the YouTube API, which will soon be the default version in the production environment. In the meantime, be sure to explicitly specify that you want to use version 2 when making your YouTube API requests.

Jeff Posnick, YouTube API Team

[Gd] OpenSocial Meetup in RTP, North Carolina

| More

OpenSocial API Blog: OpenSocial Meetup in RTP, North Carolina

The first Enterprise OpenSocial interop was last week with a number of participants testing container and gadget interoperability. One of the things we took away from the conversation was the need to reach out and engage a broader audience, including application developers who may not be as focused on Apache Shindig or the OpenSocial specification work.

In order to promote the standards work and share new features that are coming soon, a number of OpenSocial members have pulled together in Research Triangle Park, North Carolina, to host our first OpenSocial RTP Meetup on November 30, 2010. Here are a few ideas to get the conversation going for the first meeting:
  • An introduction to OpenSocial
  • Getting started with Apache Shindig
  • ActivityStreams integration with OpenSocial
  • How to use the new Pub/Sub feature in OpenSocial 1.1

This is a B.Y.O.G event!! (Bring Your Own Gadgets) -- We'll try to do a test/interop session. This will be an informal gathering and we're open to topics, interests and questions, so please jump in and update the wiki page with your ideas. Please be sure to RSVP for the event so that we can get an accurate count.

Note: Because of spammers, we've had to turn off open registration to the OpenSocial wiki. If you need an ID, simply e-mail the coordinators or post a request on the OpenSocial Community group.

We look forward to seeing you there!

Posted on behalf of Andy Smith (IBM), by Mark Weitzel, President, OpenSocial Foundation

Thursday, November 11, 2010

[Gd] Beta Channel Update

| More

Google Chrome Releases: Beta Channel Update

The Chrome Beta channel has been updated to 8.0.552.200 for all platforms.

This release contains a number of stability and UI improvements.  Full details about the changes are available in the SVN revision log. If you find new issues, please let us know by filing a bug. Want to change to another Chrome release channel? Find out how.

Jason Kersey
Google Chrome

[Gd] Android Market Action

| More

Android Developers Blog: Android Market Action

Almost instantly after I joined Google, it became obvious to me that the number-one area where Android developers wanted to see action and progress was in Android Market; your concerns in this area vastly outweighed whatever issues might be bothering you about the handsets and the framework and the programming tools. In recent months there has been a steady, quiet, incremental flow of improvements and upgrades. They add up. This is by way of a glance back at developments since the arrival of Froyo last summer.

First, we introduced error reporting to Market, so developers can see if their apps are locking up or crashing; and if so, exactly where.

Second, we upgraded the Market publisher site to include user comments, so you can read what people are saying about you, or at least what they’re saying in a language you understand.

Third, we added the licensing server, which, when used properly, tilts the economics of Android apps toward you, the developer, and against the pirates.

Fourth, we cranked up the number of countries people can buy and sell apps in: as of now, you can sell them in 29 countries and buy them in 32.

Fifth, we rolled in a “recent changes” feature, a place for developers to put their release notes. Android Market has a zero-friction process for app update, and the really great apps have followed the “release early, release often” philosophy. As a developer, I like having a place to write down what’s behind an app release, and as a person who downloads lots of apps, I like to know what the goodies are in each new update.

Sixth, Market now has a “draft upload” feature; this removes a lot of the tension and strain from the app-update process. Get your screenshots and feature graphics and text and APK all squared away with as much editing as you need to, then update them all with one click.

You’ll notice that I didn’t say “Sixth and last”, because this is a team on a roll and I expect lots more goodness from them; if you care about the larger Android ecosystem, or are already a developer, or are thinking of becoming one, stay tuned to this channel.


[Gd] Dev Channel Update

| More

Google Chrome Releases: Dev Channel Update

The Dev channel has been updated to 9.0.576.0 for Windows and Linux

This release fixes several crashes as well as:

  • Typing on a form with highlighted profile, keeps its highlighted value. (Issue 58774)
  • Handle selection changes due to AutoFill more carefully. (Issue 58774)
  • Autofill popup labels should reflect the contents of the HTML form. (Issue 58887)
  • Port SSLClientSocketNSS to use Windows CryptoAPI for SSL client authentication. (Issue 37560)

More details about additional changes are available in the log of all revisions.

You can find out about getting on the Dev channel here:

If you find new issues, please let us know by filing a bug at

Karen Grunberg
Google Chrome

Wednesday, November 10, 2010

[Gd] Instant Previews

| More

Official Google Webmaster Central Blog: Instant Previews

Webmaster Level: Intermediate to Advanced

Today Google introduced Instant Previews, a new search feature that helps people find information faster by showing a visual preview of each result. Traditionally, elements of the search results like the title, URL, and snippet—the text description in each result—help people determine which results are best for them. Instant Previews achieves the same goal with a visual representation of each page and where the relevant content is, instead of a text description. For our webmaster community, this presents an opportunity to reveal the design of your site and why your page is relevant for a particular query. We'd like to offer some thoughts on how to take advantage of the feature.

First of all, it's important to understand what the new feature does. When someone clicks on the magnifying glass on any result, a zoomed-out snapshot of the underlying page appears to the right of the results. Orange highlights indicate where highly relevant content on the page is, and text call outs show search terms in context.

Here’s the Instant Preview for the Google Webmaster Forum.

These elements let people know what to expect if they click on that result, and why it's relevant for their query. Our testing shows that the feature really does help with picking the right result—using Instant Previews makes searchers 5% more likely to be satisfied with the results they click.

Many of you have put a lot of thought and effort into the structure of your sites, the layout of your pages, and the information you provide to visitors. Instant Previews gives people a glimpse into that design and indicates why your pages are relevant to their query. Here are some details about how to make good use of the feature.

  • Keep your pages clearly laid out and structured, with a minimum of distractions or extraneous content. This is always good advice, since it improves the experience for visitors, and the simplicity and clarity of your site will be apparent via Instant Previews.
  • Try to avoid interstitial pages, ad pop-ups, or other elements that interfere with your content. In some cases, these distracting elements may be picked up in the preview of your page, making the screenshots less attractive.
  • Many pages have their previews generated as part of our regular crawl process. Occasionally, we will generate screenshots on the fly when a user needs it, and in these situations we will retrieve information from web pages using a new "Google Web Preview" user-agent.
  • Instant Previews does not change our search algorithm or ranking in any way. It's the same results, in the same order. There is also no change to how clicks are tracked. If a user clicks on the title of a result and visits your site, it will count as a normal click, regardless of whether the result was previewed. Previewing a result, however, doesn't count as a click by itself.
  • Currently, adding the nosnippet meta tag to your pages will cause them to not show a text snippet in our results. Since Instant Previews serves a similar purpose to snippets, pages with the nosnippet tag will also not show previews. However, we encourage you to think carefully about opting out of Instant Previews. Just like regular snippets, previews tend to be helpful to users—in our studies, results which were previewed were more than four times as likely to be clicked on. URLs that have been disallowed in the robots.txt file will also not show Instant Previews.
  • Currently, some videos or Flash content in previews appear as a "puzzle piece" icon or a black square. We're working on rendering these rich content types accurately.

We hope you're as excited about this next step in the search results as we are. We're looking forward to many more improvements to Instant Previews in the future.

Posted by Jeremy Silber, Software Engineer


[Gd] A Chrome extension for reporting webspam

| More

Official Google Webmaster Central Blog: A Chrome extension for reporting webspam

Webmaster Level: All

At Google, we continually strive to improve our algorithms to keep search results relevant and clean. You have been supporting us on this mission by sending spam reports for websites that violate our Webmaster Guidelines, using the spam report form in Google Webmaster Tools. While you might not see changes right away, we take your reports seriously and use them to fine-tune our algorithms -- the feedback is much appreciated and helps us to protect the integrity of our search results. We also take manual action on many of these spam reports. A recent blog post covers more information on how to identify webspam.

For those of you who regularly report spam, or would like to do so, we’ve now published a Chrome extension for reporting spam that makes the process more convenient and simple. The extension adds “Report spam” links to search results and your Web History, taking you directly to the spam report form and autocompleting some form fields for you. With this extension, Google’s spam report form is always just one click away.

The Google Webspam Report Chrome extension provides further tools to help you quickly fill out a spam report:
  • a browser button to report the currently viewed page
  • an option to retrieve recent Google searches from your Chrome history
  • an option to retrieve recently visited URLs from your Chrome history
As before, you need to be logged into your Google Account to report spam. You can find a more detailed walkthrough of the use cases and features in this presentation and on the Chrome Extensions Gallery page, where you can also provide feedback and suggestions. We hope that you find this extension useful and that you continue to help us fight spam.

The extension is available in 16 languages. If your Chrome browser is set to a language supported by the extension, it will automatically use the localized version, otherwise defaulting to English.

Note: We care about your privacy. The Google Webspam Report Chrome extension allows you to access your personal Chrome history for the purpose of reporting spam, but does not send data retrieved from it to our servers. The source code of the extension has been published under an open source license.

Posted by Manuel Holtz, Support Engineer, Search Quality team

Tuesday, November 9, 2010

[Gd] AdWords Downtime: November 13, 10am-2pm PST

| More

AdWords API Blog: AdWords Downtime: November 13, 10am-2pm PST

We'll be performing routine system maintenance on Saturday, November 13 from approximately 10:00am to 2:00pm PDT. You won't be able to access AdWords or the API during this time frame, but your ads will continue to run as normal.

- Eric Koleda, AdWords API Team 

[Gd] Discover v201008: Remove incomplete BulkMutateJobs

| More

AdWords API Blog: Discover v201008: Remove incomplete BulkMutateJobs

The v201008 release of the AdWords API added a new feature to the BulkMutateJobService: the ability to remove incomplete jobs. This allows you to clean out your job queue after an application crash or other failure. In this post we’ll demonstrate how to use the feature and discuss some of its limitations.

When a BulkMutateJob is created the field numRequestParts is set, which determines how many BulkMutateRequest objects will be added to the job. Once the final request part has been added, the job enters into the account’s job queue, and when it reaches the front of the queue it begins processing. If the application crashes while the parts are being uploaded, the job will never start and remain stranded in the account.

Jobs that are incomplete and those that are complete but waiting in the queue behind a processing job will both have a PENDING status. An account can only have 10 pending jobs at a time, so stranded jobs can begin to fill up the account, until eventually no new jobs can be added. Prior to v201008 the only way to remove stranded jobs was to add the missing request parts so that the job would start. If the job had been stranded for a while though, the operations that were previously uploaded may make undesired changes to the account.

In v201008 the REMOVE operator can be used to delete incomplete jobs. The following code does this using the PHP client library.

$bulkMutateJobId = (float) 'INSERT_BULK_MUTATE_JOB_ID_HERE';

// Create BulkMutateJob.
$bulkMutateJob = new BulkMutateJob();
$bulkMutateJob->id = $bulkMutateJobId;

// Create operation.
$operation = new JobOperation();
$operation->operand = $bulkMutateJob;
$operation->operator = 'REMOVE';

// Delete bulk mutate job.
$bulkMutateJob = $bulkMutateJobService->mutate($operation);

After being removed, the job will be in the FAILED state and the failureReason field will contain JobError.USER_CANCELED_JOB.

A limitation of the REMOVE operator is that it only works on jobs that are in the PENDING state and that are incomplete (numRequestParts > numRequestPartsReceived). Jobs that are complete and have already entered the job queue, whether they be in the PENDING or PROCESSING state, cannot be deleted.

Code examples that show how to delete jobs are included in all of the client libraries. If you have any questions about this functionality or the BulkMutateJobService, ask us on the forum.

- Eric Koleda, AdWords API Team

[Gd] Introducing Project Hosting comments by email

| More

Google Code Blog: Introducing Project Hosting comments by email

Google Project Hosting is all about helping software developers work together on source code, code reviews, issues, and wiki pages for technical documentation. In fact, the projects we host have collectively accumulated several million issue comments. Working together means that, from time to time, the ball is in your court and you need to respond to other users.

We send out notification emails to let the appropriate users know when an issue has been entered or a comment has been added to an issue, wiki page, or code review. These emails contain a link that allows you to enter your response in your project on But starting now, we are making it much easier and faster to respond to these comments by processing email replies that you send us.

So, check your inbox for new notification emails sent directly to you. When you see an email footer line that says that you can reply, just press the reply button in your email client, bang out a thoughtful response, and hit “Send”. Project committers and owners can even update an issue’s status and other values via email. For example, to let your teammates know that you are working on an urgent defect report that just came in, reply with:

Subject: Re: Issue 123 inyour-project: data loss when src == dst
Status: Started
Owner: your-email-address
Label: Priority-High

Thanks for that detailed defect report. I never realized that we needto handle that case specially. I’m going to add a check for itright now.

Please try it out the next time you receive a notification email. If you have questions, see our documentation on inbound email and user groups.

By Jason Robbins, Google Project Hosting Team

[Gd] Dev Channel Update

| More

Google Chrome Releases: Dev Channel Update

The Chrome Dev channel has been updated to 9.0.572.1 for Mac. This release contains a new version of Flash.

If you find new issues, please let us know by filing a bug.

Want to change to another Chrome release channel? Find out how.

Karen Grunberg
Google Chrome