Several months ago we launched the Google Sites Data API. Since then, we've worked hard to respond to your top feature requests: the ability to list a user's sites, create new sites, copy existing sites, and manage sharing permissions. Today, we are very excited to announce the release of the Site and Access Control List feeds that make these new features possible.
The Site feed allows your client to list sites and update their properties, such as the title or the theme of the site. Google Apps users can also create new sites. Because creating new sites often involves copying existing ones (perhaps using a site template), we've enabled that feature too.
Here's an example of the kinds of applications you can build with those features. Let's say you're a professor at a university and you'd like to create a Google Site for each of the courses you teach. The Site feed makes it possible for you to create a site course template, use the site feed to create several course sites, and personalize them with the content feed.
But what if you want to restrict access to your sites to just the students taking those courses? With the ACL (Access Control List) feed, you can manage sharing permissions. Everything you can do in the Google Sites admin panel, you can do with the API.
To get the full scoop, review the documentation and change log. We've loaded the Java client library and Python client library with the new features, and offer updated developer guides for both.
Visit us in our new developer forum if you have questions!
Create and share Google Sites with new Sites Data API features
Tuesday, January 26, 2010
Extensibility + new HTML and JavaScript APIs for Google Chrome
Monday, January 25, 2010
Today's new stable release of Google Chrome for Windows includes a bundle of browser goodness, including extensions and new HTML and JavaScript APIs.
Extensions -- previously available on Google Chrome for Windows on the beta channel -- and are now available to all users. Extensions enable you to provide additional functionality not just on your site, but to bring content and functionality from your site into the browser regardless of what sites the user has open. Google Chrome extensions use the same multiprocess technology that makes the browser fast and more secure, so that extensions won't crash or slow down your browser.
In addition, we're excited to introduce a number of new HTML and JavaScript APIs in Google Chrome, including the Web Storage and Web SQL Database APIs, WebSockets, and more. For more details about these APIs, read further on the Chromium Blog.
If you have questions about the extensions APIs, the extensions discussion group continues to be the best place to get answers. For the new HTML and JavaScript APIs, check out the newly created Chromium HTML5 group. And for those of you who are interested in attending Google I/O, check out the current list of Google Chrome sessions.
By Ian Fette, Product Manager, Google Chrome
Labels: chrome, chromium, html5, javascript
Documents List API: Upload any file type and more!
Tuesday, January 12, 2010
As just announced over on the Enterprise blog, Google Docs now allows users to upload any type of file! Over the next couple of weeks we’ll be rolling out the same feature in the Documents List Data API. For now, uploading arbitrary files via the API will be restricted to Google Apps Premier domains. For starters, each user gets 1GB of storage with a maximum size of 250 MB per file.
Combined with the shared folders feature of Google Docs, we think this new feature is a great way to build collaborative applications for exchanging files with coworkers and external parties. No more email attachments!
In addition to arbitrary file upload, we’re launching several top features requested by developers:
- Copy a document - Make a duplicate of a document in a single call
- Publishing documents - Programmatically publish a document to the world.
- Change the owner of a document - While ACLs and sharing have been in the API for quite some time, you can now change the ‘owner’ of a document.
- Resumable uploads - Offers the ability to pause/resume an upload. It’s ideal for large file sizes.
Issues resolved in this release: 72, 1040, 1675, 1260, 1741, 1127
By Eric Bidelman, Google Docs Team
Google I/O 2010: Now open for registration
I'm excited to announce that registration for Google I/O is now open at code.google.com/io. Our third annual developer conference will return to Moscone West in San Francisco on May 19-20, 2010. We expect thousands of web, mobile, and enterprise developers to be in attendance.
I/O 2010 will be focused on building the next generation of applications in the cloud and will feature the latest on Google products and technologies like Android, Google Chrome, App Engine, Google Web Toolkit, Google APIs, and more. Members of our engineering teams and other web development experts will lead more than 80 technical sessions. We'll also bring back the Developer Sandbox, which we introduced at I/O 2009, where developers from more than 100 companies will be on hand to demo their apps, answer questions and exchange ideas.
We'll be regularly adding more sessions, speakers and companies on the event website, and today we're happy to give you a preview of what's to come. Over half of all sessions are already listed, covering a range of products and technologies, as well as speaker bios. We've also included a short list of companies that will be participating in the Developer Sandbox. For the latest I/O updates, follow us (@googleio) on Twitter.
Today's registration opens with an early bird rate of $400, which applies through April 16 ($500 after April 16). Faculty and students can register at the discounted Academia rate of $100 (this discounted rate is limited and available on a first come, first serve basis).
Last year's I/O sold out before the start of the conference, so we encourage you to sign up in advance.
Google I/O
May 19-20, 2010
Moscone West, San Francisco
To learn more and sign up, visit code.google.com/io.
We hope to see you in May!
(Cross-posted with the Official Google Blog)
By David Glazer, Engineering Director
Labels: conferences, developer, google io
A look back on 2009
Monday, December 21, 2009
2009 was a remarkable year for developers. Vic Gundotra, VP of our developer team declared at Google I/O, "The web has won!" and this year was full of launches and announcements that remind us how the web has become the platform of our day. We found lots of inspiration from the developers at Google I/O in San Francisco and at our Google Developer Days in Japan, China, Brazil, Russia and the Czech Republic.
Here's a look back at some of our favorite highlights from 2009:
- Faster Apps Faster - the theme for the recent Campfire One event letting developers know how GWT 2.0 decreases development time (it's being used by Google Wave & Adwords for this reason) and how Speed Tracer gives you new insight into speeding up your apps
- Make the Web faster - as part of an effort to Make the web faster we launched tools like Page-Speed and our DNS resolution service. We also made our internal JavaScript tools available, called Closure Tools, so you can rev up your js like the guys on Gmail. With PubSubHubbub all your feeds can be real-time streams.
- A faster browser - A few weeks ago we launched Google Chrome for Mac and Linux, along with an extension framework for Chrome and a gallery for developers to distribute their extensions -- there are over 900 to check out already! Chrome has a set of developer tools built on WebKit to help optimize your code. Plus, we released details of Chrome OS...a netbook operating system for speed freaks. Along the way, we've worked with the larger web community contributing to the exciting future of the web with HTML5.
- Mobile - Android launched on one device in one country on one carrier in 2008. This year, 20 devices in 26 countries on 32 carriers have been launched or announced. Developers have created over 16,000 apps in the Android Marketplace. Some were winners of our second Android Developer Challenge. We launched new mobile versions of gmail and calendar using HTML5. You can take a picture to search using Google Goggles and get turn-by-turn navigation with Google maps. Plus, we recently announced our mobile lab for Android hardware.
- Hosting - App Engine apps were allowed to scale beyond free quotas and Java developers were invited to try it out at Campfire 1 in April. Developers responded, with over 100K apps built on App Engine. Open source developers using Project Hosting were able to host projects on Mercurial, in addition to Subversion.
- New APIs - Google Wave was released early to developers at Google I/O in May. Wave is "equal parts conversation and document" and showcases what is possible in the browser. Developers can build robot extensions to automate common tasks or build gadget extensions to provide a new way for users to interact. Google Maps released v3, Friend Connect got more personalized and then got cozy w/ Twitter, Google Analytics released an API and then added asynchronous tracking.
- Google Web Elements - From maps to search to translate and more, Google Web Elements made it even easier than ever to add Google products to your site.
- Labs - Google Code Labs was created to let developers know which APIs and products are cutting edge labs "experiments" and which we are committed to supporting for the long term.
Happy Holidays from the Google Developer Team!
By Mike Marchak, on behalf of the Google Developer Team
Labels: android, app engine, chrome, faster web, Google Wave, gwt
Google Analytics API v2 Python Client Library
Thursday, December 17, 2009
We know it's easier for developers to program in the languages they know. So we updated the Google Analytics API Python Client library with all the new API version 2 features and added reference exampels for both the Account Feed and Data Feed. Now it's easier than ever to automate your analysis workflow using our API.
Taking The Library For a Spin
With the updated library, we thought it would be a great time to highlight the power of the new v2 features. So we created a sample application to do just that. The application uses the new Google Analytics Python client library to retrieve metrics for a series of segments. It then performs some calculations on the data and creates bar charts using the GChartWrapper package, an open source Python wrapper for the Google Charts API. Finally, it uses the Python Imaging Library to add a title and legend, and stitches all the charts together into a single image. We decided to release this application as open source so you can create visualizations with your own data.
Solving Business Problems
With social media all the rage, we wanted to use this new application to help Avinash Kaushik, our Analytics Evangelist, to measure "engagement" on his popular Occam's Razor blog. We also wanted to determine if the time he spends participating in social media sites is valuable and sends new readers to his blog.
First we created segments to pull all the referrals from Facebook and Twitter. Second, we chose five calculations and corresponding metrics to compare the performance of thee two segments. We then compared the segments to each other and, for context, to all the visits to the site as a control.
They say a picture is worth a thousand words, here are the results:
Let's Analyze
Some interesting observations become apparent.
- Far more visits originate from Twitter (3.6x) when compared to Facebook, perhaps not surprising given Avinash's Twitter followers (~16,120)
- Visitors from Twitter tend to be new visitors, a good thing, but they view fewer pages and spend significantly less time on the blog.
- On the other hand Facebook delivers an audience that is loyal. These visitors come back to the site more often and spend a significant time on the blog (compared to Twitter and all other visitors).
Hopefully this example shows how powerful our new features can be.
If you're interested in running this report against your own data, the application is free and open sourced. Additionally, we made it really easy to change the metrics, segments, calculations and all the other visual properties to power your own visualizations. So please download it here and give it a whirl, we would love to hear your feedback.
By Nick Mihailovski, Google Analytics API Team
Introducing Google Browser Size
Wednesday, December 16, 2009
When I started work at Google, I visited the Google Earth team, hoping to find a 20% project on my favorite Google product. There I met Bruno Bowden, who introduced me to a problem I had never thought much about: how to take browser sizes into account when designing a page.
Bruno had noticed that many people who visit the “Download Google Earth” page never actually download, even though, as you can see, the button is pretty hard to miss:
He wondered if a significant number of users might have their browser windows too small to see the button:
To analyze this, Bruno looked at how large people's browser windows were when they visited this page. His first key idea was to measure not the entire browser window, but just the client area -- no toolbars, status bars, or other chrome.
Bruno's second key idea was to render several weeks' worth of page visitor browser sizes in a contour visualization:
Using this visualization, Bruno confirmed that about 10% of users couldn't see the download button without scrolling, and thus never noticed it. 10% may not sound like a lot, but in this context it turns out to mean a significant number of people weren't downloading Google Earth. Using this data, the team was able to redesign the page to good effect.
Bruno and I realized that Web designers might benefit from this information if it could be made more generally available. We constructed a page that could overlay a DIV containing the contour visualization atop an IFRAME containing any other Web page:
This turned out to be a good way to see which controls were and weren't visible at typical browser sizes. The only problem was, the overlay DIV prevented mouse events from getting to the page IFRAME, so it wasn't possible to interact with the page.
To solve this, we split the overlay DIV into four:
Each of the outlines above (red, yellow, blue, green) represents a separate DIV. As the mouse pointer moves, we resize and reposition the DIVs to leave a small window of blank space around the pointer, and adjust background offsets for each DIV to make the overlay look like one seamless graphic. (We originally did this on a timer, but we found a simpler way: when the mouse touches any of the DIVs, resize/reposition all of the DIVs.) End result: a designer can click and otherwise interact with the page with the mouse, and thus interact with the site normally instead of repeatedly typing in URLs.
We are now making this tool available to the public on Google Labs. To try it, simply visit browsersize.googlelabs.com and enter the URL of a page you'd like to examine. The size overlay you see is using latest data from visitors to google.com, so this should give you a pretty good indication of what parts of your UI are generally visible and what aren't.
We look forward to receiving your comments at browser-size-external-feedback!
By Arthur Blume on behalf of the Google Browser Size team
New Google Analytics API Features
Monday, December 14, 2009
Over the past few months we've received a lot of great feedback from our developers about what they wanted to see in the Google Analytics API. Today we're excited to announce new powerful and flexible features to the Google Analytics Data Export API including:
Support for Advanced Segments
With advanced segmentation, you can look beyond the totals and into the nuances of the data for your site. For example, the average time on site for all visits could be 60 seconds, but when you segment by country, you might learn that average time on site of visits from Poland is over 2 minutes.
So we've added two new ways to use advanced segments through the API:
- Create them on the fly by specifying their expression directly through an API query.
- Use advanced segments created in the Google Analytics web interface through the API.
Goal 5-20 and Configuration Data
With the recent Google Analytics v4 launch enabling up to 20 goals, many of you asked for access to this valuable data, and we listened. Now there are 48 new metrics to access goal performance. We've also added all the goal configuration data, including name, type, step names for each profile.
Here's a great video describing the depth of the goal configuration data.
Custom Variables
Custom variables are powerful new ways to describe visitors, visits and pages within Google Analytics. In this new release, we've added 10 new dimensions to access custom variable data. In addition, every custom variable that you've used is now available through the Account Feed.
All the details of this release can be found on our public changelog and public notify group. We've updated all our documentatation at http://code.google.com/apis/analytics. Please continue to give us feedback to improve our product through our public google group.
Thanks!
By Nick Mihailovski on behalf of the Google Analytics API Team
Google Fusion Tables API
Today I'm excited to announce that Google Fusion Tables is releasing its own API.
What is Fusion Tables? A product launched recently in Google Labs, Fusion Tables is a free service for sharing and visualizing data online. It allows you to upload data, share and mark up your data with collaborators, merge data from multiple tables, and create visualizations like charts and maps.
Do you have data you need to share with other organizations? In Fusion Tables, you can share all or part of a table with other people. Does your data mean more when seen together with other datasets you don't own? By merging your data with other people's shared tables, you can see the whole picture in one place, discuss the data in embedded comments, and mark up the data with your collaborators. Fusion Tables keeps track of who contributed each part of the data and who has permission to edit.
Watch Circle of Blue's video description of how they use Fusion Tables to combine and visualize water data.
Often the real meaning and potential impact of a database can be hidden behind all the raw names and numbers, but a well-chosen visualization can bring the data to life. Fusion Tables has automatic data visualization built in: we've integrated with the Google Maps API and the Google Visualization API so you can view your data in maps, motion charts, and graphs. All of these can be embedded in your webpage, your Google Site, your blog...any Web page you want! The visualizations even update automatically as data is updated or corrected. Embed the visualization once, and the latest version will always be shown automatically.
Let other people help spot outliers and unexpected values in your dataset by linking them directly to data that is filtered, aggregated, and visualized for various angles of examination. Fusion Tables' data discussion features help you gather feedback from your community.
Is your dataset active, always changing? Is it being collected right now on cell phones or websites? With the new Fusion Tables API, you can update and query your dataset in Fusion Tables programmatically, without ever logging in to the Fusion Tables website. The API means you can import data from whatever data source you may have, whether a text file or a full-powered data base. On the more exotic side, imagine you're collecting data via survey software on GPS-enabled cell phones, as the Open Data Kit project is doing. Open Data Kit uses Google App Engine and the Fusion Tables API to instantly map locations of survey results.
Are you a data exhibitionist? Put your data in Fusion Tables and make it available for the world to see! Fusion Tables will maintain your attribution as your data participates in other tables, enforce your choices about sharing and exporting the data, and invite Google Web Search to index the table.
Fusion Tables allows datasets to play together in a safe, collaborative, and privacy-controlled environment. We can't wait to hear about the amazing things you will make happen with Fusion Tables.
By Anno Langen, Jayant Madhavan and Rebecca Shapley, Google Fusion Tables Team
Google Developer Days 2009 come to an end
Friday, December 11, 2009
We've concluded Google Developer Days 2009, a set of one-day developer events that travel around the world. This year, they started in Beijing, China on June 5 and ended in Moscow, Russia on November 10. At each event, attendees had the opportunity to learn about Google's newest web technologies with products such as Google Wave, Android, Chrome, Google Web Toolkit, OpenSocial, and App Engine. They also interacted with Google developers during "office hours" and had the chance to see how other developers are using Google technologies for their own applications at various demo areas.
We have finished posting the presentations and photos from our final events of the year, and hopefully each location's page will continue to be a useful resource for you. Thank you for making these such great events! We look forward to seeing you in 2010...
By Alyssa England Sachs, Google Developer Team
Labels: gdd09, google developer days