Friday, October 12, 2007

[Gd] Weekly Google Code Roundup: Lots of Geo, feeling Ajax-y and another SoC graduation

| More

Google Code Blog: Weekly Google Code Roundup: Lots of Geo, feeling Ajax-y and another SoC graduation

Weekly Google Code Roundup: Lots of Geo, feeling Ajax-y and another SoC graduation

It really rained today, which has been the biggest rain that I have seen since moving to Mountain View. I am used to it, since I hail from England, and I have the chance to go back to London to speak on Google Gears at the Future of Web Apps conference. We learned more about Vortex, a simple new offline and sync abstraction on top of Gears.

In other Ajax news, the Ajax API team released a nice new Dynamic Feed Control that has a wizard that helps you find feeds.

The GWT team are looking forward to Pearson's GWT conference which offers dedicated time with GWT developers and core engineers. The Rialto framework also joined the GWT family by creating a GWT wrapper of itself.

The bulk of the news seemed to center around the geo landscape.

Chris Schalk wrote a detailed article on mashing Google Maps with Oracle XML DB and Java.

Pamela announced a new LabeledMarker which supports marker and label toggling, and the Google Mashup Editor team has updated its geo coding in maps.

There were some really fun feature additions too. You can now play YouTube videos from within Google Earth. It is great to zoom in on the Eiffel tower and see videos related to it.

The Earth team have also made it much easier to explore Earth in general. I enjoy the history of London.

If you aren't sure whether it is daytime or not when you drunkenly call your friend who is in europe, flip over to the featured DaylightMap site that always shows you where the sun shines.

We will finish with some interesting news for the newest coders:

As always, check out the latest tech talks, subscribe to the Google Developer Podcast and visit the Google Code YouTube channel.


[Gd] Trip Report: Gears and the Future of Web Apps

| More

Google Code Blog: Trip Report: Gears and the Future of Web Apps

I had the pleasure to head to my home town (London, England) to participate in the Future of Web Apps conference that brought together an interesting set of developers who want to take a glimpse at the future.... and the present.

I gave a presentation at the conference on Google Gears that covered all of the core components (Database, LocalServer, WorkerPool) and also showed off some of the great work that the community has been working on (libraries that work on top of the APIs, great examples, etc).

I really enjoyed the many questions that I got at the end of the talk, and through out the conference. Being in Europe, it was very interesting to see many questions on mobile Gears. The questions came in from app developers, mobile phone vendors, and phone networks alike. It seems that it is a common wish to have the offline abilities on their phones. I quickly realized why this was the case from the Londoners.... the tube! They need to put network repeaters in the tube, but since they have found it impossible to get air conditioning down there, I doubt that will happen any time soon!

I also got to talk to developers about architecture practices around the applications that they are taking offline. As always, it was interesting to talk to developers working with this in the real world.

The Gears project is run very much in the open, so take a peak at the Google Group for Gears and join the fun.

Here are the slides from my presentation:


[Gd] Google Sponsors Improvements to FreeBSD's Performance Measurement Toolkit

| More

Google Code Blog: Google Sponsors Improvements to FreeBSD's Performance Measurement Toolkit

Most CPUs today have built in performance measurement counters (PMCs) that can measure interesting low-level hardware events such as cache misses, branch mispredicts, and tlb misses. FreeBSD's HWPMC(4) driver "virtualizes" these hardware counters, allowing multiple processes to use them, and for multiple hardware counters to be concurrently active. Both simple counting and sampling (profiling) are supported, along with multi-CPU operation. FreeBSD's performance measurement toolset, PmcTools, is built using HWPMC.

PmcTools helps answer the following broad questions:
  • What is the system doing at this point of time? (e.g. "What hardware events are being seen in unusual numbers?")
  • Which part of the system are the symptoms associated with? (e.g. "Which are the 'hot' locations in the source?")

Recently, Google sponsored the development of an oft requested enhancement to FreeBSD's PmcTools: that of capturing the call chains leading to "hot" locations in the code. Call chains provide additional insight into the behavior of the system; in addition to determining the "hot" locations in the code, developers gain insight into why these locations became "hot" in the first place.

HWPMC and associated userland tools have been invaluable to the FreeBSD community in improving the scalability and performance of the upcoming FreeBSD 7 release. Kris Kennaway of the FreeBSD Project notes that "hwpmc is one of our most powerful tools for measuring and understanding CPU performance on FreeBSD. Support for profiling of call graphs was an important missing piece that will simplify the ability of developers to analyze performance bottlenecks in the kernel and in application code". Kip Macy notes that hwpmc has been invaluable in his 10 Gigabit Ethernet tuning efforts, and Arun Sharma notes that this work was particularly successful because it was quickly merged and is available out of the box to users of FreeBSD.

Check out this latest and greatest addition to PmcTools and let the FreeBSD community know what you think!


Wednesday, October 10, 2007

[Gd] Wrapping up Our Third Summer of Code

| More

Google Code Blog: Wrapping up Our Third Summer of Code

We just wrapped up our third Summer of Code, and as with 2006 we invited mentors from all successful organizations to Google for our annual Mentor Summit. We spent all day Saturday with our colleagues from the open source community sharing knowledge to improve Summer of Code, fostering collaboration and, of course, having fun! Our attendees proposed and led sessions, unconference style, from "How Do You Transfer an Itch?" to "The Stick, the Carrot and Sushi." Marty once again treated everyone to a day of free association and tinker toys in Casablanca.

Here's the obligatory group photo, and as you can see we've picked up a few more friends since last year.

You might also want to check out some pre and post summit pics from Bart, Seb and Wolf.

Congratulations once again to all of our students and mentors for another stellar showing in Summer of Code. Keep your eye on the program blog in the coming weeks for notes from the mentor summit and more success stories from our students and mentoring organizations.

(Photo Credit: Robert Kaye)


[Gd] Rialto GWT

| More

Featured Projects on Google Code: Rialto GWT

Author: Cyril Balit
Google APIs used:
Rialto GWT is a wrapping of the Rialto JavaScript library for use with GWT.


Tuesday, October 9, 2007

[Gd] LabeledMarker v1.1: Now supporting marker and label toggling!

| More

Official Google Maps API Blog: LabeledMarker v1.1: Now supporting marker and label toggling!

Google Project Hosting is a nifty place to store an open source project - besides offering an SVN (Subversion) repository, it also includes a wiki and an easy-to-use bug reporting system. A developer took advantage of that system to report that LabeledMarker v1.0 needed its own show and hide methods. While putting those methods in, I realized it'd be useful to have functions to toggle label visibility as well, so that a developer could add behavior to show or hide labels on marker mouseover or other events. Thus, LabeledMarker v1.1 now has: showLabel, hideLabel, setLabelVisibility, and getLabelVisibility.

Check out the example map below which uses setLabelVisibility, show, and hide to let the user toggle marker groups and labels. A full explanation of this example is located within the documentation, and a more thorough explanation of the new functions is located within the reference. If you want to use the new functions, you can grab the new javascript from the 1.1/src folder, or wait two weeks for it to be pushed into the release directory.

Link to LabeledMarker Marker/Label Toggling Example