Author PhotoBy +Scott Knaster, Google Developers Blog Editor

This week Google and the Comparative Constitutions Project launched Constitute, which puts constitutions online for people everywhere to explore. Constitute includes 177 constitutions, many of which weren’t online previously.

Each country’s constitution is tagged for easier navigation, marking such attributes as citizenship, foreign policy, and electoral oversight. Having them all online together, tagged and searchable, enables unprecedented research. For example, you can quickly see which countries grant rights to minorities, and even how each country defines a minority. You can also watch the progress of trends such as marriage equality and voting rights.

With dozens of new and amended constitutions in the world each year, Constitute can become a central source for exploring what’s new and for helping drafters of future constitutions think about how to proceed with their work.

Constitutions have been around for thousands of years, but a discovery in the Yukon earlier this year revealed something far older: dinosaur tracks. Dozens of fossilized dinosaur footprints were found by scientists from the University of Alaska on an expedition near the Arctic Circle. According to researcher Paul McCarthy, “The tracks were so abundant along the Yukon River that we could find and collect as many as 50 specimens in as little as 10 minutes”. That’s a lot of footprints made by a lot of big feet.

Finally, we congratulate the winners and participants in this year’s Google Science Fair. First place went to Eric Chen, who studied ways to fight the spread of flu. Other winners included Vinay Kumar, Ann Makosinski, and Elif Bilgin. But we think the best part is the cool Lego trophy each winner gets to take home.

All we are is dust in the wind, or tracks in the Yukon, or something similarly temporary. But while we’re here, there’s Fridaygram to bring some fun nerdy news for your weekend. Thanks to our Yukon correspondent +Louis Gray for the dinosaur tip.

Author PhotoBy Josh Livni, Maps Developer Relations Team

Cross-posted with the Google Geo Developers Blog

Last week Felipe and Michael from the Google Cloud Platform Developer Relations team released a video demonstrating the new Pearson correlation analysis available in Google BigQuery. Their example used more than 70 million flight records to find correlations on departure times, which could be used to predict whether your plane would be late. Specifically, you can find out which set of airports best predict your airport’s possible flight delays the following day.

As you can see from their code (watch the video for context), they’re using iPython Notebook to work with the BigQuery results, and matplotlib to get a quick visual of results. But one aspect that’s hard to see in these results is the spatial relationship of the airports. Maps to the rescue!

My goal was to create a simple visualization, where selecting any airport would highlight which airports you should look at to predict delays the next day. Using the Google Maps JavaScript API I went ahead and did just that:

To create this map, using the same code noted above, we first created a JSON dump of the correlations on departure time for each airport to each other airport. Then, using an article on visualizing earthquakes as a template, I modified the code so that we have a simple dictionary of all airports, keyed by their airport id. Last but not least, I added a function that gets called when an airport marker is clicked in order to restyle all the other airport markers according to their correlation. This method checks the selected season (winter, for example, has different correlations than spring), and highlights correlated markers by setting the color and scale of the circle symbol.

Thanks to BigQuery, running complex correlations over billions or trillions of attributes is surprisingly easy. But don’t forget if your data does have some spatial component, a quick mapping visual can add some great context to your results.

Josh Livni works with maps at Google, where he helps developers tell compelling stories using the Google Maps APIs. As you read this, he's probably writing code, thinking about snowboarding, or both.

Posted by Scott Knaster, Editor

Author PhotoBy +Scott Knaster, Google Developers Blog Editor

Regular Fridaygram readers know that Street View goes places even if there aren’t any streets, like the Galapagos Islands. This week we launched the panoramic images collected earlier this year with the Street View Trekker, and they’re pretty cool.

As we mentioned back in May, we also used an underwater camera to collect images of marine life in the waters off the Galapagos. Between the land and the sea, we collected pictures of blue-footed boobies, Magnificent Frigatebirds, and other island creatures. These images will help with Galapagos environmental research. If you’re interested, you can read more about it.

Speaking of the wonders of nature, researchers have used high-speed video cameras to record insects with natural gears that mesh to enable movement. Scientists Malcolm Burrows and Gregory Sutton of the University of Cambridge found that young planthoppers have microscopic gear teeth that synchronize their legs when they jump. Their legs move within 30 millionths of a second of each other, ensuring that their jumping is effective. As the insects mature, they lose these baby teeth and learn to jump without them.

Finally, last Wednesday’s Google Doodle honored the birthday of legendary physicist Léon Foucault, namesake of the Foucault pendulum, which shows the effect of the Earth’s rotation. The doodle itself is a working Foucault pendulum, complete with controls to change its time and location. We hope it inspires you to do some weekend inventing and adventuring of your own.

The world keeps turning, and Fridaygram keeps publishing. Look us up for nerdy cool news right before you start your weekend. And for still more amazing Galapagos stuff, see Darwin for a Day, built by the Charles Darwin Foundation and iNaturalist using the Street View API.

Author PhotoBy Felipe Hoffa, Developer Programs Engineer

Cross-posted from the Google Cloud Platform Blog

Google BigQuery is designed to make it easy to analyze large amounts of data quickly. This year we've seen great updates: big scale JOINs and GROUP BYs, unlimited result sizes, smarter functions, bigger quotas, as well as multiple improvements to the web UI. Today we've gone even further, announcing several updates that give BigQuery the ability to work in real-time, query subsets of the latest data, more functions and browser tool improvements.

Real-time analytics
BigQuery is now able to load and analyze data in real time through a simple API call, the new tabledata().insertAll() endpoint. This enables you to store data as it comes in, rather than building and maintaining systems just to cache and upload in batches. The best part? The new data is available for querying instantaneously. This feature is great for time sensitive use cases like log analysis and alerts generation.

Using it is as easy as calling the new endpoint with your data in a JSON object (with a single row or multiple rows of data).

Here's a Python example:
body = {"rows":[
    {"json": {"column_name":7.7,}}
response = bigquery.tabledata().insertAll(

Streaming data into BigQuery is free for an introductory period until January 1st, 2014. After that it will be billed at a flat rate of 1 cent per 10,000 rows inserted. The traditional jobs().insert() method will continue to be free. When choosing which import method to use, check for the one that best matches your use case. Keep using the jobs().insert() endpoint for bulk and big data loading. Switch to the new tabledata().insertAll() endpoint if your use case calls for a constantly and instantly updating stream of data.

Table decorators for recent imported data
This release introduces a new syntax for "table decorators". Now you can define queries that only scan a range or spot in the previous 24 hours. Traditionally BigQuery has always done a "full column scan" when querying data, while the new syntax will allow you to focus only on a specific subset of the latest data. Querying a partial subset of data with these decorators will result in lower querying costs — proportional to the size of the subset of the queried data.

With the new capabilities you can query only the last hour of inserted data, or query only what was inserted before that hour, or get a snapshot of the table at a specific time. The table decorators also work in all table related operations (list, export, copy, and so on), giving you the ability to do operations like copying a table as it was before a bad import job.

New window and statistical functions
To the previously announced window functions, we've added SUM(), COUNT(), AVG(), MIN(), MAX(), FIRST_VALUE, and LAST_VALUE(). Refer to the previous release announcement for a run through of how window functions work.

We also recently introduced the new Pearson correlation function, and showed how to find interesting and anomalous patterns in ambient sensors, or how to predict tomorrow's flight delays using 70 million flights dataset. Today's release adds new statistical functions, for even richer capabilities: COVAR_POP(), COVAR_SAMP(), STDDEV_POP(), STDDEV_SAMP(), VAR_POP() and VAR_SAMP().

BigQuery browser tool: Improved history retrieval
You can now query your history faster in the browser tool using the Query History panel: More information about the queries is being surfaced and convenient buttons have been added for common tasks.

You can try out the new UI features, table decorators, and new functions at You can post questions and get quick answers about BigQuery usage and development on Stack Overflow. We love your feedback and comments. Join the discussion on +Google Cloud Platform using the hashtag #BigQuery.

Felipe Hoffa is part of the Cloud Platform team. He'd love to see the world's data accessible for everyone in BigQuery.

Posted by Scott Knaster, Editor

Author PhotoBy Sandor Sas, AdSense Software Engineer

Much of the signed-in web uses Hypertext Transfer Protocol Secure (HTTPS) to protect users’ sensitive information. For instance, most eCommerce and social networking websites use the HTTPS protocol to create secure sites that protect users sensitive information such as credit card and login credentials. We’ve updated the AdSense ad code so that it now supports secure ad serving through Secure Sockets Layer (SSL) on HTTPS web pages. This means that publishers with secure sites can now use AdSense ad code to serve SSL-compliant ads.

Our current ad code looks like this:

Synchronous ad code
<script type="text/javascript" src="">

Asynchronous ad code
<script async src="">

The new HTTPS-enabled ad code replaces the old and uses a protocol-relative URL to kick off the ad request:

Synchronous ad code
<script type="text/javascript" src="//">

Asynchronous ad code
<script async src="//">

Now when the user visits your secure website via HTTPS, AdSense serves the ad via HTTPS. A visit via HTTP will still serve the ad via HTTP, as before.

HTTPS-enabled sites require all resources on the page, including the ads, to be SSL compliant to protect the user against man-in-the-middle attacks. If an HTTPS page loads an HTTP resource, the page is considered mixed content, and the browser displays a mixed content warning (like the padlock with warning triangle in Chrome). New browser releases like Firefox 23 are starting to block mixed active content (scripts) but still display mixed content warnings for mixed passive content (images).

The mixed content warnings vary in aggressiveness among browsers. Here are some examples:

To make sure that all resources loaded by our ad calls on your secure page are SSL compliant, AdSense will remove non-SSL compliant ads from competing in the auction, which in theory means less auction pressure. This feature is meant to provide a monetization solution for publishers with existing HTTPS pages and not a reason for publishers to convert sites from HTTP to HTTPS. The HTTPS-compliant ads currently are text, image and Flash ads, but we are working on enabling more as we can make sure they are safe to use on secure pages.

Note that if you load your web page from the file system using the file:// protocol while developing, you won’t see the ads appear; instead, you’ll get a 404 response. In this case the asynchronous ad code - adsbygoogle.js - will put a placeholder the size of your ad slot on the page, while the synchronous ad code - show_ads.js - will not.

If you have an HTTPS-enabled website, we’d love to get your comments on our Google+ page.

Sandor Sas is a Software Engineer on the AdSense Formats team working on new, innovative ad formats. In his free time Sandor likes to play football (soccer) and he is an amateur clarinet player.

Posted by Scott Knaster, Editor

Author PhotoBy Monica Tran, Google Maps API Team

This week's Map of the Week post from the Geo team features Adam Ratana's Sun Surveyor app, which allows photographers, gardeners and builders to visualize sun and moon paths over locations around the world. The Sun Surveyor app has both Map and Augmented Reality views, which not only let you see the sun and moon paths over satellite imagery, but also via your phone's camera, while you're onsite at the shoot.

Visualizing the sun and moon paths in Augmented Reality and Map views

Adam's users requested the ability to visualize the sun and moon paths on top of Street View panoramas, which would give them a better IRL (in real life) approximation of lighting for their photo shoots. When Street View launched in the Google Maps SDK for iOS, Adam did just that, bringing the feature to life for users in just a weekend.

Visualizing sun and moon paths on top of Manhattanhenge in Sun Surveyor

We were impressed by his clever use of overlays to mimic the sun and moon path polylines that you see in the app. In his three-step tutorial on the Geo Developers Blog, Adam walks us through his approach to implementing overlays in Street View by:
  1. Creating an overlay on top of the panorama upon which to draw the items
  2. Synchronizing the positions of the overlay items with the panorama as it moves
  3. Determining which data are visible and where on the screen to draw them
Check out Adam's post on the Geo Developers Blog for code snippets and details on the sample project.

And in the meantime, enjoy following the sun and moon to distant locations in Sun Surveyor.

Adéle Penguin Rookery, Antarctica (from the Antarctica Collection)

Hanauma Bay, Hawaii (from the Google Maps Ocean project)


Stonehenge (from the UNESCO World Heritage Collection)

Adam Ratana is a Carnegie Mellon University graduate living in, and loving, Pittsburgh, PA. He produces dance music as a member of Pittsburgh Track Authority, enjoys photography, traveling with his wife, and writing fun software in his free time. Adam also enjoys attending the Pittsburgh Cocoaheads chapter meetings.

Sun Surveyor visualizes the sun and moon in a variety of ways for photographers, filmmakers, solar industry professionals, architects, homebuyers, gardeners, and anyone needing to predict or understand the movement of the sun and moon.

Monica Tran joins us from our Google Maps API team in Sydney, where she helps developers tell stories and build businesses with maps.

Posted by Scott Knaster, Editor

Author PhotoBy +Scott Knaster, Google Developers Blog Editor

We normally talk about cool and nerdy things on Fridaygram, but today we're focused on just the "cool" bit. The Clash exploded onto the stage in the late 1970s in the UK. Led by Joe Strummer, The Clash were popular, successful, and influential. They were often billed as “The only band that matters”.

We’re talking about The Clash right now because Google Play has just released a five-part documentary on the band, which you can watch on YouTube. This documentary series shows the band at work during the recording and release of its albums, including hours of previously unreleased footage of Joe Strummer talking about the band. If you already love The Clash, you’ll enjoy learning about their backstory, and if you’re not familiar with them, here’s your chance to see what’s up.

Turning from a new subject to one of our repeat favorites here on Fridaygram, this week NASA announced that Voyager 1 has become the first human-made object to reach interstellar space. Launched in 1977, the same year The Clash’s first album came out, Voyager has been teasing us with the question of exactly where it’s located for some time now. As Voyager project scientist Ed Stone says, “We can now answer the question we’ve all been asking – ‘Are we there yet?’ Yes, we are.”

Finally, we’ve added some cool new features to Google search that you might want to spend some time checking out. Search can now answer questions about your stuff. For example, if you ask “What’s my flight status?”, you’ll get a personal result that shows you whether your plane is on time. You can also ask about your dining reservations, hotels (“When is my next hotel stay?”), packages, calendar events (“When is They Might Be Giants?”), and photos (“my photos from Austria last year”). For extra awesomeness, try this feature with voice search in Chrome, Android, or the Google Search app on iOS. Have fun!

Voyager 1 has left us behind (or has it?), but Fridaygram is still here for you. If it’s nerdy, cool, or nerdy cool, it’s fair game for us.

Author PhotoBy Jason Striegel, Creative Technologist, Google Creative Lab

I wrote my first two lines of BASIC as a five year old, and I’ve loved programming ever since. These days I’m teaching my own kids to code, and I’ve been thinking a lot about how they could have that same simple experience while learning to program for the web.

A quick sprint with my design friend +Jeff Baxter led to a little experiment called Coder. It’s an open source tool that turns Raspberry Pi into a simple, tiny, personal web server and web-based development environment – just what you need for crafting HTML, CSS, and JavaScript while you’re learning to code. Here’s a quick video that helps explain how it all works (and a huge shout out to our friends +Claire Stapleton and +Minji Hong who helped us with it):

We thought about all the stuff we could do to make Coder a more complete package, but we have a hunch that the sooner this gets into the open source and maker communities, the more we’ll learn about how it might be used. Hopefully, a few more folks will pitch in and help us make this even more accessible and helpful for new coders.

To learn more, visit, get a Pi, download Coder, and make something awesome.

+Jason Striegel tinkers, builds, and experiments with cool web stuff at Google Creative Lab.

Posted by Scott Knaster, Editor

Author PhotoBy Alex Maier, Community Manager, Google Cloud Platform

Cross-posted with the Google Cloud Platform Blog

With Google Cloud Platform, you can now get your hands on technologies that help power our infrastructure, and use it to power your own software.

In order to help everyone get more comfortable using Cloud Platform, we are hosting five events for developers to meet Cloud Platform senior leadership, learn to code on our stack of products, participate in code labs, and ask questions of our engineering team.

This fall, we’ll visit destinations in Europe, the Middle East and Asia:

Each stop has two days dedicated to developers. Day 1 offers a series of talks explaining why you would want to use Cloud Platform and how to build apps on it. Day 2 consists of three code labs which provide participants with an opportunity for hands-on learning using our lab setup.

To help each participant get the most out of their newly-gained knowledge, every attendee will receive a startup pack equivalent to $2,000 USD in Cloud Platform credits.

Pre-register soon, because space is limited and we expect the seats to fill fast. We will confirm your registration as soon as we can, but no later than two weeks prior to each event.

We look forward to seeing you!

Alex Maier’s goal in life is to grow the Google Cloud Platform community stronger and more vibrant every day. She loves discoveries, science, and racing cars.

Posted by Scott Knaster, Editor

Author Photo
By Eve Andersson, Manager, Accessibility Engineering

You work hard to build clean, intuitive websites. Traffic is high and still climbing, and your website provides a great user experience for all your users, right? Now close your eyes. Is your website easily navigable? According to the World Health Organization, 285 million people are visually impaired. That’s more than the populations of England, Germany, and Japan combined!

As the web has continued to evolve, websites have become more interactive and complex, and this has led to a reduction in accessibility for some users. Fortunately, there are some simple techniques you can employ to make your websites more accessible to blind and low-vision users and increase your potential audience. Introduction to Web Accessibility is Google’s online course that helps you do just that.

You’ll learn to make easy accessibility updates, starting with your HTML structure, without breaking code or sacrificing a beautiful user experience. You’ll also learn tips and tricks to inspect the accessibility of your websites using Google Chrome extensions. Introduction to Web Accessibility runs with support from Google content experts from September 17th - 30th, and is recommended for developers with basic familiarity with HTML, JavaScript, and CSS.

There’s a lot to learn in the realm of web accessibility, and a lot of work to be done to ensure users aren’t excluded from being able to easily navigate the web. By introducing fundamental tips to improve web usage for users with visual impairments, Introduction to Web Accessibility is a starting point to learn how to build accessibility features into your code. Registration is now open, so sign up today and help push the web toward becoming truly universally accessible.

Eve Andersson is a manager in Accessibility Engineering, within the Google Research organization. She enjoys travel, wine, and the number pi.

Posted by Ashleigh Rentz, Editor Emerita

Author PhotoBy Kuntal Loya, Software Engineer

With the Google Picker API, you can provide users of your application with a simple interface to select photos, maps, videos, documents and other content from Google using a few lines of JavaScript.

Starting today, the Picker API is available via the APIs Console. For those of you who are already using the API, this change makes it easier to manage and view traffic and authentication data alongside any other Google APIs that you may be using with your application.

To get started, register your project on the APIs Console. If you’re already using the Picker API, you’ll need to include the developer key you obtained during registration with the JavaScript used to create the picker.
<script type="text/javascript">

      // The API developer key obtained from the Google APIs Console.
      var developerKey = 'ABC123 ... ';

      // Use the API Loader script to load google.picker.
      function loadPicker() {
        gapi.load('picker', {'callback': createPicker});

      // Create and render a Picker object for searching images.
      function createPicker() {
        var picker = new google.picker.PickerBuilder().
    <script type="text/javascript" 
See the Developer’s Guide for more details.

Kuntal Loya has been making the Google Picker smarter while enjoying Bangalore’s weather and the food at the Google Café. Meanwhile, she’s nearing the end of Mahasamar, Narendra Kohli’s 8-volume re-telling of the Mahabharata.

Posted by Scott Knaster, Editor

Author PhotoBy Chukwuemeka Afigbo, Program Manager

Cross-posted from the Google Cloud Platform Blog

Google Cloud Platform is used around the world to create and deploy solutions that are affordable, scalable and easy to maintain. These qualities empower developers worldwide to solve local and global challenges with cloud technology .

This sets the stage for the very first Google Cloud Platform Developer Challenge. We're inviting you to build locally relevant web applications that solve real world problems. You will have the opportunity to wow the world with your awesome web application built on Google App Engine using Google APIs like the Google+, YouTube and Maps APIs.
The competition starts now with the first round of submissions starting on October 22nd. The categories for this challenge are
  • Enterprise / Small Business Solutions , Education, Not for Profit
  • Social / Personal Productivity / Games / Fun

Submissions will be accepted from any one of six regions across the world:
  • Latin America
  • Sub Saharan Africa
  • South East Asia
  • Middle East & North Africa
  • India
  • Rest of the World

We will be working in tandem with Google Developer Groups (GDGs), Google Business Groups and Google Student Ambassadors to put up and organize events around the challenge. Ensure you connect with your local communities for more information about these meetups.

Do you want to start hacking out a cloud based web app now and you need pointers and hints? If yes, then the Google App Engine tutorial is a good place to start.
The Form+ team, one of the winners of last year's Google Apps Developer Challenge
If your application is judged the best in your region, within one of the two categories mentioned above, you could win a prize of $20,000! We are devoted to raising the next generation of information technology experts as well as encouraging diversity among software developers. In line with this, we have special prizes for all-female teams. Any all-female all-student teams that make the second round will receive a prize of $3,000. There are also prizes available for those who are interested in mentoring contestants.

Please read through the terms and conditions on the Google Cloud Platform Developer Challenge page and follow the hashtag #gcdc on Google+ for any additional updates.

What are you waiting for? Register your app URL, apply for $2,000 worth of Google Cloud Platform credit at using the promo code gcpdc-in, and start hacking with Google Cloud Platform.

+Chukwuemeka Afigbo is a Program Manager in the Sub-Saharan Africa Outreach Team. He is passionate about making the internet more relevant to Africans. He is also an avid football (soccer) fan.

Posted by Scott Knaster, Editor

Author PhotoBy Uttam Tripathi, Developer Relations Team

Last year was the first time the Google Developer Group (GDG) community hosted a series of DevFests globally, and what an awesome DevFest season it was! There were 77 DevFests across 41 countries reaching over 14,000 developers.
Inspired by the success of last year's DevFests, we are working with GDGs around the world to enable an even larger set of events this year.
GDG DevFest logo
GDG DevFest 2013 will consist of two seasons:
  • 13th Sep. - 29th Sep.
  • 18th Oct. - 10th Nov.

Across both seasons, GDGs plan to host more than 160 DevFests spread over 63 countries that are expected to reach over 30,000 developers. More than 20 countries will have their first-ever DevFest this year!

Each GDG DevFest will be inspired by and uniquely tailored to the needs of the developer community that hosts it. While no two events will be exactly alike, each GDG DevFest will at its core be powered by a shared belief that when developers come together to exchange ideas, amazing things can happen.

Check out the global DevFest event map and join the GDG community as they celebrate DevFest in your region.

Uttam Tripathi is a Program Manger on the Developer Relations Team. Uttam is coordinating this year's GDG DevFest program worldwide and is in charge of developer outreach in India.

Posted by Scott Knaster, Editor