Personalize your Goggles experience with Goggles 1.4

Since its launch, we have worked to make Google Goggles faster and more accurate when returning search results for a wide variety of images. Today, we are taking several steps to make Goggles a better and more personal experience. Goggles 1.4 for Android devices introduces an enhanced search history experience, the ability to suggest better results to Google if we are not able to accurately match your image, and improved business card recognition.

Enhanced search history
The new search history experience lets you search your Goggles results, make personal notes on specific results and share your results with friends. When you add a personal note to a Goggles result, the note will appear in your search history. I’m trying to learn more about wine, so when I taste something new, it’s easy for me to add a note to help me remember what I liked about the wine. Later, I can search my search history for words in my note to help me find that bottle that went so well with steak. Read more about how to enable search history for Goggles here.

To make a personal note, tap the pencil in the corner when viewing a search result.

Notes are intended to help you better organize your search history, so if you choose to share a result with a friend, your notes will not be shared. However, you can always add a personalized message to your friend when you share your results with them.

Share a result by sending a link to your friends.

Suggest a better result
We are constantly working to improve the accuracy of Goggles at recognizing certain categories of items, but visual recognition is still a complicated task. With Goggles 1.4, you are now able to suggest a better result when Goggles cannot find an image match, or the quality of the result is poor.

To send your suggestion to Google, tap “Can you suggest a better result?” on the results page. You can then select the relevant part of the image and submit a tag. Tags will be used to improve recognition in object categories where Goggles already provides some results, like artwork or wine bottles.

When suggesting a better result, you can crop the image and add a description.

Improved business card recognition
Business card recognition is one of the most popular uses of Google Goggles, so we’re rolling out some new updates to make the experience even quicker and easier. Additionally, instead of simply recognizing the content as text, Goggles now recognizes the information as a contact, making it easier to add to your phone’s contact list.

Call or add the person directly as a contact

Google Goggles is available for Android 1.6+ devices. Download it by visiting Android Market or by scanning the QR code below:

 

Bing Maps v7: The OnScriptLoad parameter

One positive thing that seems to have come out of the confusion regarding the recent Bing Maps v7 AJAX update has just been mentioned in a forum post by Chris Pendleton, in which he suggests a possible resolution to the lazy-loading errors (“xxx is undefined” / “yyy is not a Constructor function” etc.) is to make use of the OnScriptLoad parameter.

This parameter, which had been present throughout the v6.x versions of Bing Maps, was conspicuous by its absence in v7 and, despite several comments regarding its whereabouts, did not appear anywhere in the documentation for the v7 API. Based on Chris’ comments, it appears that this parameter has in fact always been present in v7, but accidentally omitted from the documentation. So, until that gets corrected, you can refer to the v6.3 documentation, taken from here: http://msdn.microsoft.com/en-us/library/cc980837.aspx

“onScriptLoad is a string parameter that specifies the name of a JavaScript function to call when the map control script is loaded. The name must contain only alphanumeric characters. The CSS and tiles will not be loaded when this function is called. (This parameter is useful for loading the map control script from an UpdatePanel in ASP.NET Ajax. Users can call Sys.Application.notifyScriptLoaded from their callback to tell ASP.NET Ajax the script has loaded.)”

Not only does this parameter provide an apparent workaround for some of the issues currently being experienced with the v7 control, but it also provides a useful method for any other functions in the future that you want to execute only after you are certain that the library has been loaded (note that this is not the same as when the map has been loaded into the page). To take the example from my last post, you can therefore safely create an instance of the Microsoft.Maps.Location class by calling the tryCreateLocation function from onScriptLoad callback, as follows:

[php]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Bing Maps v7 Initialisation Bugs</title>
<script src="http://ecn.dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=7.0&amp;onscriptload=tryCreateLocation" type="text/javascript"></script>
<script type="text/javascript">
function tryCreateLocation() {
try {
var MyLocation = new Microsoft.Maps.Location(51, -0.15);
alert(MyLocation);
}
catch (e) {
alert(e);
}
}
</script>
</head>
<body></body>
</html>

[/php]

Google I/O 2011

 

Google I/O, Google’s largest annual developer conference, will take place May 10-11 in San Francisco at the Moscone West Convention Center. Many of the tracks will feature open source products: Android, Google Web Toolkit, Google Chrome, and several Google APIs.
Open Source Program Manager Chris DiBona will be hosting a Fireside chat with the Android team on Tuesday, May 10th from 2:30-3:30pm. Earlier that day, Open Source Team Member Josh Bloch will be presenting “Java Puzzlers – Scraping the Bottom of the Barrel” from 1:15-2:15pm. Check the recently announced Google I/O full schedule for more detailed information on this year’s sessions.
The event is completely sold out, but you can watch live streaming video of both keynote presentations on the Internet. New this year is Google I/O Extended, which gives developers who are unable to attend Google I/O the opportunity to watch the keynote and other major sessions live with their peers at free viewing parties around the world. For more Google I/O updates, check @googleio.