Thursday, 21 December 2006
Facebook StumbleUpon Twitter Google+ Pin It

Programs crashing? Airbag helps you practice "safe hex"

Post by Brian Ryner and Mark Mentovai, Google Software Engineers

Every program, open source or not, has to cope with crashes - it's just an unfortunate fact of life. Software developers hate crashes and dream about eradicating them, but sometimes they're difficult to reproduce. If developers could get reliable and automatic reports when their programs crash, they'd be able to figure out which ones happen most frequently, and more importantly, be able to fix them. Writing a system to handle crash reports is a lot of work though, and writing a crash reporter that works across a variety of hardware configurations and operating systems is even harder. Wouldn't it be great if someone wrote a crash reporter and made it easy to integrate into other projects? Wouldn't it be even better if they made an open-source project out of it?

That's exactly what we're doing here at Google. We like making developers' lives easier, and like you, we hate crashes. Airbag is our codename for an open source project that handles all of the dirty work when it comes to crash reports. Best of all, it works across several platforms - we've got Windows and Mac working now, and Linux support is coming soon.

Not everyone needs to know how the stack works on Intel Macs or how function calls work behind the scenes in Windows, which is why Airbag provides a simple API to catch crashes in your application and upload crash reports to a server. On the server side, we've implemented a library that can process the crash reports by matching them up with debugging symbols, so that users of a program don't need any of these symbols on their computers, and download sizes stay small. The server library is intended to be integrated into any kind of server infrastructure - for example, you could use Apache to collect reports and store them in MySQL. We were excited to hear that the folks at Mozilla are integrating Airbag into Firefox, and hope it can help them and other open source communities continually improve the quality of their products. Check it out!

Wednesday, 20 December 2006
Facebook StumbleUpon Twitter Google+ Pin It

Beyond the SOAP Search API

Post by Mark Lucovsky, Software Engineer

On December 5th, we stopped accepting new sign-ups for the Google SOAP Search API. This change does not impact current users of the SOAP Search API -- you can continue to execute queries, and we have no plans to turn off the service in the future.

While the product was Google's first API and inspired a lot of Google's current developer products, we are no longer devoting resources to increase the capacity of the service, instead focusing our efforts on the AJAX Search API. While the AJAX Search API does not provide server-side access to search results, it has a number of more powerful features, including access to Video, Maps, Blog Search, and News search results.

Open Source Developers @ Google Speaker Series: Leslie Hawthorn

Alright, so technically I am not a developer - I'm a geek herder. However, I will be moderating a panel discussion between developers this Thursday evening!

Joining us for the December 2006 installment of the Open Source Developers @ Google Speaker Series will be three former Google Summer of Code students: Angela Byron (Drupal developer, student in 2005 and program administrator for 2006), and Hannes Papenberg and Laurens Vandeput (both developers for Joomla!). Angie, Hannes and Laurens will share with us some insights into their respective projects and communities, as well as telling us a bit about GSoC from the student perspective. Please feel free to join us Thursday, December 21st at our Corporate Headquarters in Mountain View, CA at 5:00 PM. Doors open at 4:30 PM, and refreshments (including plenty of coffee :) will be served; please plan to sign in at Building 41 reception when you arrive. We hope to see you there!

For those unable to attend the November 2006 session, you can watch Guido van Rossum's talk, "Mondrian: Code Review on the Web," on Google Video. This Thursday's session will also be taped and made available on Google Video, as will all OSS Devs @ Google meetings.

Friday, 15 December 2006
Facebook StumbleUpon Twitter Google+ Pin It

Happy Holidays, Open Source Developers!

It's the time of year for giving, and thus I have the pleasure of giving you two much-awaited gifts for Google Code's project hosting!

File Downloads - this has been the most-requested feature since we launched project hosting here on Google Code. We knew it would be, but wanted to ship earlier rather than later. We think you'll like what we did... one-click downloads and scriptable uploads, as well as searchable summaries and labels.

Wikis - all projects now have a tightly-integrated wiki appearing under a new Wiki tab. The really cool thing here is that the content is stored in your Subversion repository under the /wiki/ directory. You can edit the pages with your favorite editor and commit them with your favorite Subversion client! Additionally, you can add labels and page summaries to wiki pages for improved searching.

We hope you will enjoy these new features - let us know what you think!

Note: for an example, check out the GWT downloads or the Serf project's status page.

Wednesday, 13 December 2006
Facebook StumbleUpon Twitter Google+ Pin It

GSoC Romance

Imagine our surprise when this awesome piece of artwork arrived in Mountain View, along with an invitation to the marriage of Oren Nachman! Oren writes that he used his Google Summer of Code (or SOC, get it?) monies to help pay for his upcoming wedding, and while the Open Source team regretfully could not attend, we're raising a glass in spirit for the newlyweds.

Congratulations to Oren Nachman and his bride, Dvorah Frielich, on their nuptials this past weekend in Crawley, Australia!

Tuesday, 12 December 2006
Facebook StumbleUpon Twitter Google+ Pin It

Google Web Toolkit Becomes an Open Source Project

When the Google Web Toolkit team asked me to mentor them as they opened their source code, I was honored not only because they're a fantastic group of engineers, but also because they wanted to make the Google Web Toolkit into an open source project. Last month I sent the entire team copies of Karl Fogel's book "Producing Open Source Software" to guide them in their decisions of how to best open their development to the world.

Of course, they started off on the right foot at their launch this past May by opening the user libraries under the Apache 2.0 license. They took another step in the right direction when they moved all their issues into Google Code's issue tracker.

But now they're taking a gigantic leap forward--not only by open-sourcing all of their code, but their entire development process. That includes development discussions, code reviews, future milestones, and the entire codebase.

So, needless to say, I'm really excited about the Google Web Toolkit's grand entrance into the open source world and hope that you'll join me in welcoming them.

Monday, 11 December 2006
Facebook StumbleUpon Twitter Google+ Pin It

Blogger Beta Overview


Our very own Eric Case recently chatted with Jay Dedman and Ryanne Hodson (videobloggers extraordinaire) about the new version of Blogger currently in beta. Relevant bits for developers include:Developers interested in coding with the Blogger Data API (which now supports JSON!) should definitely to check out the bloggerDev discussion list.

Friday, 8 December 2006
Facebook StumbleUpon Twitter Google+ Pin It

tcmalloc success

Domas Mituzas, a MySQL employee and Wikipedia hacker, just posted a great writeup of his recent experience using tcmalloc (an open source Google perftool) to debug some nasty memory leaks:
"Once we started profiling libc, one of initial assumptions appeared to be true - our heap was awfully fragmented, slowing down malloc()."

"Here comes our steroids part: Google has developed a drop-in malloc replacement, tcmalloc, that is really efficient. Space efficient, cpu efficient, lock efficient. This is probably the most-used (and sophisticated) libc function, that was suffering performance issues that not many people wanted to actually tackle. The description sounded really nice, so we ended up using it for our suffering Squids."

"The results were what we expected - awesome :) Now the nice part is that the library is optimized for multi-threaded applications, doing lots of allocations for small objects without too much of lock contention, and uses spinlocks for large allocations. MySQL exactly fits the definition, so just by using simple drop-in replacement you may achieve increased performance over standard libc implementations."

Domas' blog has further details.

Wednesday, 6 December 2006
Facebook StumbleUpon Twitter Google+ Pin It

Maps + KML update

Just wanted to highlight a post from the Maps API blog regarding updated KML support in Google Maps:
We've now got a few more tricks that you can do with KML on Maps:

To view a KML or KMZ file on Maps, just go to Google Maps, and instead of searching for a geographical address like 1600 Amphitheatre Parkway, 94043, search for a complete Web address (including the "http://" part) of your KMZ file, like Need your own web space to upload some files? Try Google Page Creator.

The Maps API blog has further details.

Friday, 1 December 2006
Facebook StumbleUpon Twitter Google+ Pin It

Google and Indiana University's Net Trust

Post by L. Jean Camp, Associate Professor, Indiana University

Net Trust is a new approach to security being developed at Indiana University's School of Informatics, with funding from Google's Open Source Program Office and released under the Apache license. It is a trust mechanism, not a security mechanism. Net Trust is designed to undermine fraud and credential subversion that use human engineering (also called pretexting) by building interfaces that make use of humans' natural trust behaviors.

The goal is to leverage social trust for online trust, not to use technological mechanisms to create new modes of trust. Net Trust provides social and human solutions to their respective elements of masquerade attacks and human engineering.

Net Trust is in early development at Google Code and is available in demo mode. It can be downloaded and used, including warning boxes and the interaction experience, though the backend is not yet constructed. Please feel free to play with it and contribute!