Google Earth: 3D trees in Portland, Oregon


Thanks to sharp-eyed GEB reader ‘Donovan’, it appears that Google has just released thousands of 3D trees in Portland, Oregon (and possibly some other cities).



When Google Earth 6 was released, they included 3D trees in San Francisco, Chicago, New York, Athens, Tokyo and Berlin. In March they added trees to London in preparation for the royal wedding. In June, they added trees to Philadelphia, Boston, London and a few other cities in the California Bay Area. They followed that up in September with trees in Boulder, Denver and Los Angeles. Now we have Portland.

The tree releases have been fairly spread out, but this update comes barely a month after the previous release, so hopefully they’ll be rolling these updates out at a more rapid pace.

Google hasn’t officially announced this release, so there could be additional cities in there as well.

Session videos from Google I/O now live

With Google I/O 2011 just two days behind us, we wanted to thank the nearly one million developers who joined us at Moscone Center, attended I/O Extended events, and watched online via I/O Live from 161 countries around the world. In addition to the announcements made at the keynote presentations, we had more than 30 announcements in our 110 sessions. HD recordings of all these sessions are now available online. Here are some of the announcements:

Highlights from this year’s event are posted at, where we are featuring photos, announcements, and the latest videos. Also, stay tuned for a feature on “Backstage at Google I/O” where we will highlight the developers and artists who helped to make the event possible this year.

Google I/O kicks off the year as our biggest developer event–but we’re only getting started. As of today, we are announcing locations for our eight Google Developer Days (GDDs), which will take place all over the world with more than a few DevFests in between. Stay tuned for more info on the 2011 event details, but we’ll look forward to seeing you in Brazil, Argentina, Prague, Moscow, Tokyo, Sydney, Israel and Germany for our Google Developer Team world tour.

Test suite for rich text editing

Many web applications allow users not just to edit plain text, but also to embellish it – making it bold or underlined, adding bulleted lists or images. For example, think of online document or blog editors, or rich e-mail apps. JavaScript provides various APIs you can use to implement these apps.

Unfortunately, while these APIs are largely defined the same in modern browsers, the results often differ. To document the current state of all this, we have set up a new rich text editing test suite as part of the larger browserscope framework.

Let’s look at how a region of text, such as a

, can be marked as editable by adding the contenteditable attribute:

...some content...

You can then manipulate the content with simple calls:

document.execCommand("formatting command", showUI, parameter)

For example, you can set the color of the selected text to red with this call:

document.execCommand("forecolor", false, "red")

Although this command works well on most browsers, different browsers implement different subsets of formatting commands, and even common commands often produce varying HTML structures.

There are other APIs that affect selection and cursor movement, or allow querying of the current state, and those, too, are often implemented differently.

Our new test suite tries to capture all currently implemented commands and APIs, and runs them on varying initial HTML content and within various containers. The suite already contains well over 1,000 tests.

We don’t want to stop there. We intend to grow the suite and incorporate external feedback and suggestions so we can arrive at a common set of editing functions. We hope this can then serve as a common reference, not only for browser implementers, but also for web developers.

To achieve this goal, we would like input from anyone interested in this topic, including those with past complaints about bugs and incompatibilities in this area.