.:[Double Click To][Close]:.
Get Paid To Promote, Get Paid To Popup, Get Paid Display Banner




Showing posts with label weekly roundup. Show all posts
Showing posts with label weekly roundup. Show all posts

Thursday, August 28, 2008

Code Review: JavaScript, Gears, GeoLocation, Android, and more



Code Review is produced in a variety of formats, from text to audio (iTunes) and video.



The last several days have been exciting. We are seeing great new technology that can enable us to do new things, and have old things run a lot better.

Mozilla announced TraceMonkey, which promises large JavaScript performance improvements based on their trace based JIT technique. This, which backs on to the earlier SquirrelFish announcement from Apple and the WebKit team, and IE8 beta 2 arriving today with performance improvements too.

Running a new browser and seeing Gmail get a lot faster is just as good as buying a new computer to get a speed up!

Gears 0.4 has been released and people have picked up on the main points.

One side is Geolocation, and the two new ways to access location data through Gears and the Ajax APIs.

As an experiment, I wrote a shim that would bridge the W3C Geolocation API that Andrei Popescu of the Gears team is editing, and the other APIs. This is shown via a simple Where are you? sample application.

Giving you access to location information is fantastic, but this isn't all Gears 0.4 has to offer.

The new YouTube multi-file upload page gives you the ability to upload many files, with progress on the upload, and the ability to resume uploads after a connectivity problem. Brad Neuberg wrote a sample that ties together the new APIs (Blob, HTTPRequest improvements, Desktop API file system addition) and shows how you could create the experience too.

For more of this content, you can follow our two new series: Open Web Podcast, and the State of HTML 5.

Mobile News

A much awaited SDK update from Android that includes the new Home screen and many UI changes. New applications are also added (Alarm Clock, Calculator, Music player, etc) and new APIs and developer tools.

We also continue to add iPhone-friendly views of the Google world. THe latest is the Google Translate view.

Been playing with Google App Engine? If so, you should be aware of datastore updates that give you the ability to do batch updates, and discussions of indexing improvements. It is fascinating to watch cool new applications: from mini-services, to full applications, to platforms themselves, giving App Engine a go.

Open Source

The Google Summer of Code is moving along, and since we are now in August we get to see the progress that the students that have been flipping bits and not burgers this summer. One example is the work of 6 students working on the Git version control system.

Steve Weis has released Keyczar, a "toolkit that makes cryptography safer and easier to use". We all commonly make mistakes including the wrong cipher modes, bad algorithms, or working with keys incorrectly. Keyczar has got your back, is there to help keep your code secure.

Speaking of security, Thomas Duebendorfer of our Swiss office gave a talk titled Are internet users at risk? that delves into the practices of browsers and plugins, and how they update themselves. This just reaffirmed my desire to have silent updates getting pushed to me to keep me more secure!

Another video that we published that caught my eye was Where the hell is Matt?. Matt Harding is the guy who you may have seen on YouTube dancing badly around the world. We got him to the office and he chatted on his adventures. If you find yourself waiting for a compile (or a Map Reduce) this Friday, give it a watch while you wait.

Finally, registration opened up for the Google Developer Day events in India, Italy, the Czech Republic, and Russia. These join the first wave of events in the UK, France, Germany, and Spain. I really hope that we get to see you at one of those locations!

As always, thanks for reading, listening, or watching, and let us know if there is anything that you would like to see.

Friday, August 1, 2008

Google Code Review: OWF, Content Licenses, Secure Ajax APIs, CalDAV and more



How do you like your Code Review? Choose from text to audio (iTunes) and video.



We have had a varied couple of weeks, so I decided to turn on the camera, even though I am in Eldora, Colorado, up in the mountains.

First up, the Open Web Foundation. I discuss the new foundation and what it is trying to accomplish (not another standards org!).

Then we stay on the topic of the Open Web and browsers, and how Vladimir Vukićević has an promising implementation of Canvas in IE. excanvas has done this for awhile by first emulating VML, and more recently with a Silverlight bridge. Vladimir is a Mozilla hacker, and he managed to shoehorn the Firefox Canvas code in via an <object>.

We have worked out how to license our code, but what about the other stuff that a project has? What about the documentation, the samples, the protocols? The Google Code team now allows you to choose a content license to cover those bases. Just a simple drop down away in your project hosting area.

Elsewhere, in Google Code land, the code review tool that we talked about early has now made its way to Google Code. Now you can say "Looks Good To Me" to your buddies source code as he puts in a new commit on your new opensource project.

One of the most requested features on Google Code is more RSS feeds, and we have obliged with support for issues, downloads, subversion changes, and wiki updates.

Now you have the new tools, how about searching over that large amount of code that we are putting out there? Code Search just got a lot better with rich outlines showing you meta data on the file that you are in, and hyperlinking includes and such.

Moving to Ajax and the Web for a second. One of the common requests that we have had since we launched the AJAX Libraries API, is to be able to access the Google hosted popular opensource libraries on https as well. And, now we do. If your application is on https and you don't want users to see any "mixed content" messages, go ahead and use https on us too!
Google XML Pages (GXP) is a templating system we use at Google. Its main focus is markup: we mostly use it for generating HTML and XHTML, but it can work with other flavors of XML, like Atom, KML, and RSS. It also has some support for a few non-markup languages (JavaScript, CSS and plain text), though mostly for embedding them within markup.
Check it out and see how some of the Google products do the view side of MVC on the Web.

I didn't even know that Google Health was built using GWT, so it was interesting to read a retrospective on the decision.

What else has been going on?

Here are a few random things:
  • Google Calendar supports CalDAV: This is experimental, but means that you can kick up iCal and have bi-directional sync.
  • QR Code in Charts API: QR codes are 2D bar codes. You can store anything you want, but commonly people put URLs and contact information in there, that mobile phones can quickly scan.
Finally, Google Developer Day is coming to Europe, so if you are in that neck of the woods in September and October, please stop by!

Wednesday, July 9, 2008

Code Review: OAuth, Indexing Flash, Protocol Buffers, Selenium Ice, and more



We are trying an experiment, putting up Code Review in a variety of formats, from text to audio (iTunes) and video.



After a great trip to Brazil and Mexico for the Google Developer Day events (Europe in September and October) I am back at it.

There has been some great news in the last week or so, shall we take a peak?

The GData team announced OAuth support around the horn. OAuth is:
An open protocol to allow secure API authentication in a simple and standard method from desktop and web applications.
And, now you can use the standard to access Google services. This is great, as you can write your applications to the one standard, and have it work across various back-ends.

There was some great news that Google, Yahoo!, and Adobe participated in. We have improved Flash indexing working with Adobe's Searchable SWF library, and some smart algorithms. We can now add URLs that are part of the SWF to the pipeline, and can fire off events to grab more data. This is another improved step (we could grok text in the SWF before) and we hope to see many more as we get better at indexing richer and more varied content on the Web.

There were some good open source releases too:

Kenton Varda discussed the release of Protocol Buffers, a core piece of Google infrastructure as we optimize working with structured data.

We also open sourced the Browser Sync code to see if a community wants to come together to continue to support it.

Testing is tough, and we saw two interesting releases that sit in very different realms of the testing world.

Firstly, the Selenium team produced Selenium Ice a great new way to drive Internet Explorer as you test your Web applications.

Secondly, if you are a C++ developer and you like testing, you may be interested to take a peak at the Google Testing library for C++ that we released.

The GData teams have also come up with a couple more releases to go along with the big OAuth announcement.

The first lies with Google Calendar. You can access your GCal data through GData, but what if you just want a nice visualization of the calendar on your website?

CalVis does just that. You get to customize the look and feel, and the library does the rest.

If you are building rich mashups and happen to access multiple Google services, we have tried to make the UI cleaner for your users. You can now add multiple scopes for both AuthSub and OAuth.

Here is a sample AuthSub URL; Note the space delimited scope:
https://www.google.com/accounts/AuthSubRequest?
next=http://localhost/authsub
&scope=http://www.google.com/calendar/feeds%20
http://picasaweb.google.com/data
&secure=1
&session=1
Mrinal Wadhwa flex-ed his muscles to add Gears support to Flex applications via a nice simple library. If you are building Flex applications and want access to the growing Gears components, check it out.

Yesterday was a very Web "3D" day. We released Lively a 3D virtual experience that is the newest addition to Google Labs. It lets you create an avatar and rooms to hang out in. I also saw that Vivaty launched, and some are talking about how virtual worlds are hot in the Valley.

Lively has GTalk integration, and we just released Google talk for iPhone just in time for the new iPhone 3G launch at the end of the week. I will probably head down to one of the Apple Stores and upgrade myself!

As always, thanks for reading, listening, or watching, and let us know if there is anything that you would like to see.

Friday, June 20, 2008

Code Review: I/O Videos, Gears release, App Engine examples, and more



We are trying an experiment, putting up Code Review in a variety of formats, from text to audio (iTunes) and video.



You have probably heard by now, but all of the slides and video of the presentations at Google I/O are now available to watch and read. There are some real gems in there, such as Steve Yegge talking about dynamic languages and server side JavaScript.

Just as we come down from I/O, we head off to Google Developer Day events around the world. I am personally off to Brazil and Mexico City, and I am looking forward to meeting the local developers.

I gave a tech talk at Yahoo! where I discussed Google Back to Front, covering Gears and App Engine. I shared a simple App Engine example that takes a Gears-enabled Addressbook application that shows how you can store history in a visual way, and ports it to save the data on App Engine. You can watch a code walk through to see it in action.

Dick Wall (Google) and James Ward (Adobe) also got together to create an AIR application that talks to App Engine on the back end. The application, called QuickFix, takes a photo and has App Engine run the Picasa "I'm Feeling Lucky" transformation.

It is really fun to watch the great applications being built on App Engine already, such as Wordle, which builds "word clouds" from a series of text.

One final piece of news on App Engine. Nick Johnson (Google) created a little application in his spare time (read: not official) that is quite useful. smtp2web.com bridges SMTP to HTTP. This means that you can have your App Engine applications accepting email as input via the proxy. smtp2web will send an HTTP request when it gets an email on its doorstep.

There has been a lot of focus on the browser this week. Mozilla released Firefox 3, and look like they have set a download record in the process. There was a lot of browser news though, including all of the major vendors.

The standards are moving too. HTML 5 has a new working draft, and we are seeing the germination of an Acid4 series of tests.

When it comes to Gears, we saw the full release of version 0.3 which included support for the new Firefox 3 browser. It also includes the ability to create desktop shortcuts, new install flow support, progress events, and much more.

We also saw more frameworks baking Gears in. Appcelerator uses Gears under the hood to make your existing Appcelerator based application a better user experience. Also, Frizione is a JavaScript development, testing, and deployment environment that also has Gears under the hood.

Speaking of testing, Markus Clermont and John Thomas wrote up an introduction to testing Ajax applications, something that is notoriously hard to do.

The Geo world is cooking as usual, and you can check out the numerous election mashups as the season continues to blossom.

If you fancy some fun on Google Maps, Katsuomi Kobayashi has created a 2D Driving Simulator using the new Flash API.

The folks at 360cities also have a great new interface that uses the Flash API, and they also seem to use every other Geo related product. We were fortunate enough to have them come in and sit down with them, and get a bunch of demos.

What else?

If you care about the social Web, check out Kevin Marks post on how not to be viral. It makes you think long term about your strategy.

Kevin Lim posted on the Custom Search API and the new developer guide. This API always surprises me with its richness, and how you can create a fantastic, custom, search experience on your own Web site.

Related to that API, we have another new AJAX Search API, Patent Search. I have to admit, I feel sorry for you if you have to use it (due to the content)!

And to finish up, Michael Ogawa has created some great visualizations of open source projects over time, such as the history of the Python code base. Check it out below.



As always, thanks for reading, listening, or watching, and let us know if there is anything that you would like to see.

Monday, June 2, 2008

Code Review: "I/O, I/O it's over now you know"



Phew, I am still getting over Google I/O. It is interesting to be on the inside and see the build up to the event itself. We were getting excited to hold our largest event with the developer community to date. It didn't dissapoint, and I was very happy to see developers from all walk of lives and companies. I met programmers from Apple, Microsoft, Adobe, Yahoo!, MySpace, and I could keep on going.

You can check out the keynote below, and videos of the sessions are coming very soon, so check out the Google Developers YouTube channel.



The show started well for me as I got to see a project that I have been passionate about launch, the AJAX Libraries API which has us hosting popular open source Ajax libraries on the Google infrastructure. This release is the first step and we look forward to pushing forward with the goal of aggressively getting libraries that many developers use in browsers as fast as possible. If we are successful then we can start to think of these libraries as a standard library of sorts. The community has already started to build interesting tools around this new service. For example, you can now install a Wordpress plugin that rewrites your page to use your library of choice on Google's servers.

Gears was launched at last years Google Developer Day, and the coming out party for this years birthday was a debranding of "Google Gears" to "Gears" to reflect the community effort. Talks by the Gears engineers showed new APIs in the works, how we are working with HTML5 and standards, Gears for Mobile demonstrations, and the MySpace Messaging launch that uses Gears to enable a new search feature that offloads processing from their data centers and gives lightning fast results.

App Engine came out in the keynote sharing the fact that anyone can signup now, the expected pricing model (important to note that the starting point will ALWAYS be free), and new APIs that work with Email and Memcached.

The Geo world had another set of news. Google Earth can now be used in the browser thanks to a new plugin that allows you to add a quick line of JavaScript to your Maps API code to see it in action.

Ben Lisbakken wrote a piece on his application that uses App Engine, Local Search, and Maps to make static maps interactive.

Finally, in housekeeping news, the Maps API blog has been transformed to the new Geo Developer Blog, so update your feed readers.

What else?
  • Google Web Toolkit 1.5 Release Candidate: The new release candidate is a big one, with big new features. The GWT sessions at I/O were all packed, and I heard a lot of people walking out talking about how the difficult nature of Ajax development means they will be giving GWT a try.
  • Google Visualization API update: The "GViz" API was launched within Google Spreadsheets, but now it has been expanded to live elsewhere. This includes a new JavaScript API to create add-hoc data tables on the client.
  • Google Contacts API update: The Contacts API now supports contact groups, photos, extended properties, and batch processing

Finally, to end with a bit of fun. Aaron Spangler created something very cool with his 20% time. Along with a colleague, he created Radish an indoor solar-powered calendar display that hooked into Google Calendar and once ever hour updates via epaper.

Check it out:

Friday, May 16, 2008

Code Review: Friend Connect, App Engines kick in, Flash-y maps, and documenting the Open Web



With Google I/O around the corner on May 28-29th in San Francisco, you can feel excitement bubbling within the Google Developer Programs team and beyond.

We had another Campfire One this week, and this time the team introduced Friend Connect, a way to easily add social features to your website using open protocols such as OpenID, OAuth, and OpenSocial APIs. Below is a short walk through:



The previous Campfire One was held to announce Google App Engine, and the engines continue to roar. If you are a Mac user, you may be interested to view the native App Engine Launcher, which allows you to manage your work form a UI that you know and love.

You will want to be able to write a scalable application, and Ken Ashcraft has written up some tips to do just that.

Finally, Guido van Rossum wrote a version of Mondrian, the code review system that he wrote for Googlers, that works with Subversion.

The Geo teams also had some interesting releases. First we had the long awaited official Flash API, and then we saw the new ability to find photos and Wikipedia content right in the Maps UI.

If you really liked the My Map editing tools that were made available on the Google Maps destination site, you will be happy to know that a quick polyline.enableDrawing(); will turn it on for your own mashup, hanks to new API support.

Google Doctype is a bold new undertaking spearheaded by the prolific Mark Pilgrim. Doctype aims to build a test-driven reference to the Open Web. Mark "humbly offers this fledgling encyclopedia under a Creative Commons Attribution license, and we invite the web developers of the world to contribute to it."

When you think of developers around the world, you think of translation. The AJAX Language API can now piggy back on Google Translate adding 10 new languages.

I have been having a great deal of fun with the translation API; translating Twitter on the fly, and more importantly having bookmarklet that can translate any selected text on a page.

I will finish up with some interesting thoughts on ipv6 and the new Google Reader version for iPhone.

As always, listen in to the Google Developers channel, and I hope to see a bunch of you at Google I/O. If you can't make it, be sure to follow us on Twitter as we discuss the event in real-time.

Friday, April 18, 2008

Code Review: Start your App Engine and run the cloud offline with your docs





The big buzz continues to revolve around our Google App Engine launch. We are seeing a host of applications being developed, and were even pleasantly surprised to see people port the APIs allowing you to run App Engine code elsewhere, such as appdrop.com.

One interesting feature to the App Engine which you may not have noticed, is the integration with Google Apps. Not only can you tie an application to your domain (allowing you to have myapp.mydomain.com instead of myapp.appspot.com) but you can restrict access to the given application to only members of your domain. If I ran a company on Google Apps, this would be a nice addition. I could see the small business apps that I need running there.

Jeff Scudder then released a new version of the Google data Python client library which has support for Google App Engine and the Contacts API. If you want to use this in your Google App Engine application you simply need to set gdata.service.http_request_handler = gdata.urlfetch to make sure your requests have a path out!

Google Docs offline, and Gears

I was on the road, speaking about Gears and the Open Web in Europe last week, and it was perfect timing to be mixing with the community as Google App Engine came out and I could talk to that too. We also had a few things to talk about with Gears.

We have been getting lots of questions surrounding our stance with the various standards out there, so Aaron Boodman put down our thoughts on the matter in a piece called Gears and Standards. It talks about how we are working with HTML5, and the direction that you will see Gears going. I think it is incredibly exciting to see people realise how Gears is a lot more than "offline", and is actually an open source way to teach browsers new tricks.

Brad Neuberg talked about just that as well as new features in Gears, and tools to help you get your work done, such as PubTools. He also discussed our first Google Gears for Mobile application, done by the Picasa Team. Now the blokes in London can show off pictures of their kids as they slow poke through the city down in the tube.

The biggest news of all though was the launch of Google Docs offline. If you have ever been in the situation where the internet goes flaky right when you just need that bit of info in document, no more. Now you have the option to save docs locally on your computer, so you can access them no matter where you are.

If you would like a refresher course on how to get started with Gears check out Ben Lisbakken's new screencast.

Fun with Maps

The Geo side of the house continued to output great content, including a series of Geo Developer content:
  • Quick & Dirty KML Creation: With Mano Marks, Pamela Fox, and Christiaan Adams
    A demonstration of creating KML visually in Google Earth & Google Maps, and using Spreadsheet Mapper 2.0
  • Creating Custom Maps: With John Coryat
    A comparison of various ways of overlaying data in the Maps API and an in-depth explanation of creating tile layers and custom map types
  • GigaPan In-Depth: With Randy Sargent & Ted Morse
    A demo of the GigaPan panorama-browsing website and KML files, plus a technical explanation of PhotoOverlay
  • Dynamic KML: With Mano Marks & Brian Hamlin
    An exploration of using dynamic queries from KML, using the NetworkLink, httpQuery, and viewFormat elements, plus a demo of a PostGIS-generated NetworkLink
  • Mars, Moon, and Sky Map Types: With Noel Gorelick
    A talk introducing the non-Earth Maps API map types, plus cool demos of other types of projections used with planetary imagery
  • Mapping the Votes: With Michael Geary
    A whirlwind tour of what it took to create the Elections 2008 Map/Mapplet/Gadget, including SHPfile conversion, Javascript optimization, centroid calculations, Twitter updates collection, Mapplet API tricks, and more.
  • Google API Talks - Android, KML, Google Maps, Gadgets
    A series of 5-minute talks by various developers and Googlers given before Geary's presentation, including an intro to Gadgets/Mapplets.

They were also happy to announce that KML is now a standard, and owned by the Open Geospatial Consortium. We have seen a lot of other sites consume and produce KML, so this is a great step.

Finally, a great new feature was added to Google Maps. You can now check out traffic patterns in the future. If you have a commute the following morning, you can check out an estimate of how stuck you will be based on past experience. Obviously, it can't determine if there will be any crashes or anything like that :)

And there's more...

To finish up, a few other interesting items of the week:

I hope you had a great week. Remember that our big developer event Google I/O is now just a few weeks away! We have a few posts from presenters who will be at the event to give you a little look at the content, but the best part will be having the community together to talk in the open.

Friday, March 21, 2008

The Code Review: Ajax APIs galore, YouTube, and some I/O



I got to meet developers in Colorado this week. Working from the Google Boulder office with its fun climbing wall (*so* Boulder) was a treat, and there were several API announcements that were really exciting.

First of all we had the YouTube API update. The new APIs for YouTube are very broad. Not only do you have new access via AtomPub (e.g. to upload), but you can now have fantastic control of the player with a very simple JavaScript API.

In a matter of minutes I was able to create a simple HTML little language that allows me to annotate my YouTube videos with a table of contents that jump to the correct place.

To listen to the great new features, listen in below:



Then we had the rash of new AJAX APIs.

Google AJAX Language API:

The AJAX Search and Feeds team is happy to announce a new member to their API family -- the Language API. This new API boasts two functions, language translation and language detection - which cover 13 languages and 29 translation pairs.

All this with a couple of simple JavaScript calls such as this:

google.language.translate('Gato', 'es', 'en', function(result) {
alert(result.translation);
});

Google Visualization API:

We are excited to launch the Google Visualization API, a new API designed for visualizing structured data. The API adds the ability to send queries to data sources and process the response. The first data source that already supports this API is Google Spreadsheets. We are also launching a set of visualization gadgets that use this API.

With this API, you can read data from a data source that supports the API. You can read an entire table, or you can run a query on the data source using the API's query language. The query response is an easy to process data table designed to simplify data visualization. It includes both the underlying values and the formatted values, column types, headers and more.

Staying with visualization and charting... we had a great response to the initial Google Chart API launch, and the team came back with new features allowing very cool new graph types, and lifting the limits on chart calls.

All of these APIs share the same property of doing their thing very well, and providing a simple API to the developer. I hope you will agree, and if not, let us know what you need!

In the land of Google Gears, a couple of external libraries were features. Malte Ubl provided a nice little abstraction for cross domain messaging which uses HTML 5 postMessage(), else Gears, else a browser hack to make the beast work on all browsers.

That is for Worker pools, and with the Database API we saw Aptana releasing an update to their server-side JavaScript database API allowing you to use the Gears API on the server.

Google Code itself got some love. We have improved performance on the site and Jacob Moon shared how we did so.

Then we added an interactive developer guide that allows you to try code on the fly as you go through the GData JavaScript API. It feels good to be able to massage and play as you go.

Finally, we announced Google I/O which is "a two day developer gathering on May 28th & 29th in San Francisco. The purpose of the event is to bring developers together to learn about products, tools, and techniques which are moving the web forward as a platform." If you would like to mingle and join Google engineers, and other Web luminaries as we discuss how to move the Web forward, join us!

Friday, March 7, 2008

The Code Review: No more contact scraping, sync your calendar, and Gears in your pocket



What a week for technology news. I feel like the industry is in overdrive this week as we have large announcements in mobile (e.g. iPhone SDK, Gears for Mobile), and we get to see a beta of IE 8 for the first time.

I was very happy to see the actual release of Google Gears for Mobile. I had just been visiting the London office where I got to chat with the team behind the mobile launch. I enjoyed hearing the story behind the birth of Gears for mobile, and their thoughts on where mobile development is heading. It seems like we hear people claiming the breakthrough of the mobile Web every year, but 2008 may finally be the right time. We are getting the combination of devices that are good enough, and better networks. The tools that Gears provides seem to almost make more sense in the mobile world, and I look forward to seeing the community build new Gears to unlock the power of the mobile devices and put that functionality into the hands of Web hackers.

Listen in to the conversation below:



The mobile release happened right as Brad Neuberg and myself were doing a mini mid-west tour of the University of Illinois Urbana/Champaign, and the University of Michigan. It was great to meet the students and see their views on the Web. Speaking on Gears at the birth of the Web browser was also a real honour.

Death to scrap-y

Whenever I see an application that asks for my Google username and password to scrape contacts I would cry. This isn't what we want users doing, but I really understand the users are asking for the functionality of mashing up their contact data, and no-one wants to re-enter it. You can't blame third party applications for offering the functionality, and now they don't have to do it insecurely. The release of the Google Contacts API offers an AtomPub based way of consuming your contacts.

Another feature that our users keep asking for is Google Calendar sync, and we just got the Outlook sync product out to you too.

There were a couple of interesting pieces of news in the Maps space. You now have access to a new static map API that gives you a snapshot image of the map instead of an embed-able interactive widget.

Pamela Fox also put together a rich Google Maps API Gallery that answers questions such as: "How do I draw a circle on the map?" or "How do I create groups of toggle-able markers?"

The open source side of Google has been busy too. The Summer of Code 2008 has launched, so start thinking of cool projects for the students to get hacking on!

We also have a group heading to PyCon 2008, so join us there as we give a talk titled: Use Google Spreadsheets API to create a database in the cloud.

Lindsey Simon created a very cool little tool, CSSJanus, that lets you take your CSS styled Web site and create a right-to-left version for locales that need it. He talked about the work behind it, gave a screencast showing it in action for you.

Finally, there are some other cool videos to check out too (it's Friday!)

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

After we take a breather from this week, see you next time!

Thursday, February 14, 2008

The Code Review: OpenSocial maturing, Rhino on Rails, and more



February already? Spring is here, and you can tell in Mountain View as the rain has stopped. Spring brings out your social side, and we have seen a lot of growth with OpenSocial and other social APIs.

There was plenty of talk across the Web about the new Social Graph API that Brad Fitzpatrick announced. The API uses the Google crawler to gather up the XFN, FOAF, and other public social data that is spread out already on the Web. You can ask for a social graph that puts this together and gives you back a nice set of JSON.

OpenSocial is moving forward also. OpenSocial 0.7 is now available in the Orkut sandbox, MySpace announced their new platform, and a great group of people got together at Six Apart for a Hackathon.

On another note, I had the pleasure to sit down with Steve Yegge at the Google Kirkland office to discuss his Rhino on Rails project. He gave frank feedback on the history, present, and future of the project and I look forward to hearing, and sharing, more.

There was more Web development news too. Two companies came out talking about GWT. First, YesMail talked about the work behind their 17 GWT modules and 33,000 lines of GWT code. They discuss the design, scalability, and testing practices that they employ.

Compiere, creator of an opensource ERP, talked to us about their recent GWT port from a Swing application.

Developers from Autodesk Labs also came to talk to us about their work implementing offline support to their Project Draw project using Gears.

Fun times at Google

Christian Schalk has spearheaded the new Google Technology User Groups, and there are events going on hopefully near you.

One such Mountain View event is a hackathon for JavaScript developers. Come to the Googleplex and enjoy code, beer, and prizes!

Open Source

We have created a new blog dedicated to Open Source, and there are already good posts covering: the growth of Project Hosting, sponsorships of the Freedom Training Task Force and Wine improvements, and the grand prize winners for the Google Highly Open Participation Contest.

And, to finish up, check out the new iGoogle Themes API.

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

Monday, December 17, 2007

The Roundup: An offline Shindig that is off the Charts!



I just got back from a trip to Belgium that had me speaking at JavaPolis, a conference full of Java and Web folk from Europe and beyond. Google engineers were all over, and we gave talks on Gears, GWT, Google data APIs, Guice, Google Java Collections, and Java language issues. It was capped off with an informal pub meetup where Google and Atlassian took the bill. Remember, they take pride in that Belgian beer.

GWT was in full force at the event. Many people came up to me to discuss their GWT implementations, and a lot of cool APIs and applications have been announced recently. For example, JSTM, the Java Shared Transacted Memory for GWT is a promising new library that gives you a transactional cache that can keep clients in sync. Map this onto Google Gears, and you can get offline caching. The author of the library is taking a lot at that feature right now. We also saw GWT Voices, which gives GWT developers with a cross browser sound API. Finally, Chronoscope showed us that you could take a GWT application, and with a small amount of work get it running on Android. A huge benefit of using the Java programming language across the board.

Speaking of Android, we got to have a nice long chat with Dianne Hackborn and Jason Parks of the Android team about many facets of the platform.

We also got to speak to developers from Zoho, on the release of Zoho Writer that uses Google Gears for full read/write access.

OpenSocial has been chugging away too, and it was exciting to see Apache Shindig, the open source set of components around OpenSocial, get released. This release includes a core gadget container foundation and an open source version of the gmodules.com renderer.

A fun new API was released recently too, which got a lot of buzz in the community. Out of the Zurich office, we saw the Google Charts API, which allows you to create dynamic charts in very short order. You can even integrate the new API with KML for quick data visualization.

The open source side of Google Code has had a busy time too. We released the Google Mac Developer Playground, which is a home for useful open source code produced by the Google Mac team, and any engineers at Google. With this release, Dave MacLachlan announced Statz which has already seen a major upgrade, allowing you to talk to a large swath of services.

On the back of the Google Summer of Code project, the team wanted to keep spreading open source goodness, and announced the Google Highly Open Participation Contest, and have already updated us of its performance. It is outstanding to see so many people coming together to help the myriad of open source communities out there.

To finish up, how about taking a peak at the new Knol effort, or looking at the new developer community calendar, or firing off a video download in the background to watch:

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

Friday, November 16, 2007

Weekly Google Code Roundup: The Androids are openly social



I just have to take a breath as I start this posting. The last couple of weeks have been a real trip as we first announced OpenSocial and then Android, both announcements that have drawn a lot of interest.

Let's start with Android. We started out announcing the Open Handset Alliance and made sure people realise that this effort is bigger than a Google Phone. It is a mobile platform, with many phones to come! After some of the initial surprise we released the part that you, as a developer, care about: Android SDK.

We have been astonished at the response. We now have over three and a half thousand messages on the Google Group with four thousand members. The discussion has been all over the map, from initial Eclipse setup, to discussing the sample code, to working on how to write native applications on the platform.

We have plenty of material for you to absorb, but a great way to start it:

We are so excited to see the developer interest, and can't wait to see the applications that win money from the $10M prize pool.

Finally, to show how open platforms propel themselves, we got to release open drivers for the QualcommMSM7K.

It's the social

Just before the Android launch, we unveiled the group that worked together to create the OpenSocial APIs.

We have only just begun here, and the current API is a baby 0.5 release, but it is contagious to see the container and social developers work together. Patrick Chanezon sat down and chatted with us about the new APIs and the Campfire One announcement shows you a lot.

To enable developers to get containers going quickly we have put out an opensource container sample and have also seen the beginnings of Apache Shindig, another potential container.

The container partners are coming online quickly. We have already seen the hi5, Ning, and Plaxo sandboxes go live and more are coming.

To get a feel for the various containers and applications that have already been developed, check out video interviews that tell the story nicely.

And in other news...

Android and OpenSocial are not the only bits of news out there. Let's have a quick roundup:

Gmail got a backend facelift and we announced a new email migration API.

There are a couple of fun new open source projects announced: AxsJAX aims to make accessible Ajax applications more possible, and nsscache is an open source named services system.

We put together a nice piece on a spider's view of Web 2.0 which discusses SEO principles and how Web 2.0 practices affect, or do not affect them. What about Web -1.0? That is discussed in this great tech talk on the Web that wasn't. A nice history lesson.

I got to host my first tech talk at Google. I was lucky enough to pull in Steve Souders, Chief Performance Yahoo!, to discuss High Performance Web Sites and YSlow. If you want to make sure your sites run well, check out his core principles.

Oh, and one other thing. The Google Code team did a huge amount of work in revamping Google Code which coincided with the major launches. We believe that the site is a lot cleaner now, and gives us a base to work on as we move forward to do a better job at serving all developers out there. Thanks for joining us so far.

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

Friday, October 26, 2007

Weekly Google Code Roundup: Leopard day, JavaScript fun, and the open source world.



It's Leopard day. I am really excited to get home to install the new version of OS X. It isn't actually the new operating system itself that excites me, it is the new applications that I know have been waiting for this release to be able to see the light of day. Our own Google Mac team has announced an update for Leopard, so update Google Desktop before you change your strips for spots. When you setup the new Mail.app, consider enabling IMAP in Gmail and using both (I have been looking forward to IMAP support for a long time)!

I was really excited to see our Blogger GData JavaScript client library release. I am particularly proud of the examples that came along with the release as they really show you some of our ideas and give you good starting points for your own secure mashups.

If you want to test GData endpoints, there is help for doing some testing with cURL which we documented for you.

We got to hear to some of the teams too. Bruce Johnson and Joel Webber, members of the Google Web Toolkit team, had a nice interview with Pearson before the upcoming conference on GWT.

Paul McDonald and Rich Burdon of the Google Mashup Editor Team also discussed the nuances of the GME product and where it is heading.

In the Google Maps world Pamela played with clickable Polygons and used the ability to play a game. Also, if you are a Flash-y kind of guy, you can do more with KML and Flash.

We hosted a lot of open source meetings such as:



For those that like to search across open source code, we have a new ability to tell us more about your code via the integration of Google Code Search and Sitemaps.

Fancy some video? We had some great tech talks on campus including:



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

I am now heading out to get Leopard roaring, but a couple of final points. The new Google Finance Gadgets are interesting, and take a look at how our developer team lives in a Mario World.

Friday, October 12, 2007

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.

Friday, September 28, 2007

Weekly Google Code Roundup: New Gears libraries, fixing mashups, GWT marries the iPhone, and more



It was perfect timing for Doug Crockford, the legendary Ajax curmudgeon, to come to Google to discuss Gears and the mashup problem. The same week that he chatted about the issues that we face, we saw some innovation and fun mashups abound (for example, this Campaign Trails mashup created with the Google Mashup Editor).

Just a few days after we released the ability to do authenticated, cross domain mashups with Google Calendar the JupiterIT folk created Traffik, a mashup that combines your Google Calendar with a Google Map, allowing you to login to view private events and create news ones. It is great to see early experiments with the API such as the Digg Oracle's use of WorkerPool that we went into more detail on.

Vortex is another library that sits on top of Google Gears to add functionality through a nice layer of abstraction. The library will detect if you are online or offline, and have a system to handle one use case for sync issues. Brian Dunnington liked what he saw with the Dojo Offline Toolkit, and took a lot of the ideas from there, giving us a version that isn't coupled to a particular Ajax library. Libraries like this are exactly what we want to see. Gears is aiming to give the community rock solid, low level components, and we expect to see interesting abstractions on top. XMLHttpRequest is to Prototype/Dojo/GWT as Gears it to [insert your cool new offline framework here].

After the GWT 1.4 launch / coming out of beta was announced, Bob Vawter of the GWT team was able to let his hair down and he created a GWT application for the iPhone to see what the experience was like. His take-away was:

The Google Web Toolkit can be used to create applications that, in the same code base, work well on an iPhone and a traditional desktop browser.

You can read more about the development of the GWT Feed Reader.

In other GWT news we interviewed folks from Queplix, an open source CRM company, about their experience building their products which use a lot of GWT, various Google APIs, and even the Google Mini!

Sticking to JavaScript for just a touch more, the Google Maps API team have added a new Local Search Control which makes it simple to search the map that you are on. You can add this control to your Maps mashup with a line of JavaScript.

In other API news, Jeff Scudder announced a new release of the GData Python client library which gives you access to various new releases and a refactored codebase.

What else?


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

Friday, September 21, 2007

Weekly Google Code Roundup: JavaScript and GData can now write home, Gadget Ads, presentations, and more.



We had a really fun week with launches and news across a myriad of products. From a technical perspective, it was really exciting to see the launch of a new GData JavaScript library that enables full CRUD access from the browser. No need for proxies. Jun Yang, engineer on the GData team, sat down to explain the API and how it works. People will remember when the mainstream thought it was impossible to do full read/write authenticated cross domain access in a secure way.

Jason Cooper, of the Google Mashup Editor team, took the new API that works with Google Calendar, and provided a mashup that is able to create new events in your calendar.

Speaking of JavaScript APIs, The Digg Oracle is a new Google Gears application that showcases the pattern of sucking down data, and allowing you to do local manipulations and data filtering in the client. It makes heavy use of the WorkerPool and the local database. See it in action.

The Google Maps API has also gotten some new features and news. First, a new IP based limit is coming soon, and new enhanced map tiles are available. You can also use custom map types via the Google Maps API Open Source Utility Library.

In the land of open source, Leslie showcased the summer of coders of 2007, and released a podcast on all things GCC. We also discussed our thoughts on the ISO decision on OOXML, and the Google Code for Educators program released a series of lectures on MapReduce.

The Google Gadget and AdSense universes combined for the introduction of Google Gadget Ads, which are customized "mini-sites" that run as ads on AdSense publisher websites. These ads are interactive, engaging, and will appeal to your users, simultaneously providing value to advertisers while getting visitors to stick around your site. The end result is that advertisers get more engaged users, users have a richer ad experience, and publishers opted in to image ads may see increased competition for their ad space.

When you check out your ads, you can watch what is going on via Google Analytics, and the team has created a series of videos to teach you about many advanced features.

These videos could have included a presentation, and now you can create presentations from within Google Docs itself. Now we the great collaboration experience that we have for docs and spreadsheets can be had for your presentations. Please use this power for good, and no slides with 20 bullet points!

To finish up, I can get quick access to results from two of my favourite sports. A quick cricket search gives me all of the Twenty20 scores, and iGoogle gives me the rugby world cup results.

All in all a great week! As always, check out the latest tech talks, subscribe to the Google Developer Podcast and visit the Google Code YouTube channel.

Friday, September 7, 2007

Weekly Google Code Roundup: Learning to Remember The Milk offline, flying over Earth, and searching your feeds



On the back of the stream of developer releases last week, we had some interesting activity in the community, and from our own product teams.

Omar Kilani, of the Remember The Milk team, did a fantastic, thorough write-up of his experience getting his product working offline with Gears. The article moves past an introduction to delve into the design decisions around an offline-capable architecture, and user messaging and presentation of state. We learn why Omar decided to go with the explicit offline mode, and then the five steps to offline conversion.

The Google Mashup Editor team has also been churning out new features based on your feedback. As a developer you can now enable public read only $user feed so that applications can share $user feeds to create social applications, edit XML, CSS and HTML files uploaded into the editor, work with Gadget files, and much more.

The cool easter egg of the week goes to the flight simulator that is in the most recent Google Earth application. There is something special about flying around the grand canyon, or over manhattan. Give it a try.

Flying is cool, but we all love searching. The Google Reader team released the much anticipated feature of being able to search across your feeds. If you knew that you had read about something a few days ago but couldn't find it, now you can.

Sharing is a kin to searching, and the Google Book Search, which had a significant Ajax facelift a year ago, has joined the two. A summer intern added the ability to save snippets from public domain books, and embed them to your website. It is as simple as selecting the text you want, and how you want to show it (an image of just text).

Featured Media

Mark Stahl, tech lead of the Google data APIs, talked to us about GData, the history behind it, the parts and pieces, and how people are implementing applications on top of it.

Quicksilver is a keyboard-driven launcher that is the first application that I install when I get a new Mac. Nicholas Jitkoff, creator of Quicksilver, is a Google employee on the Mac team, and they finally got him to talk all about Quicksilver: past, present, and future.

Mark Utting came to talk about Model-Based Testing and he compares two different kinds of test model: black-box models and white-box models.

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

Thursday, August 30, 2007

Weekly Google Code Roundup: New Gears, GWT out of beta, and YouTube meets GData



You know the summer is ending when the kids are back at school. We had a raft of exciting announcements this week, starting with the web developer tools of Gears and GWT, and including the latest set of Google data APIs to join the family.

The Gears team announced a new developer release. The release you, the developers, to play with new APIs including some new Gears modules (HttpRequest and Timer), and the ability to support cross-origin work.

Google Web Toolkit 1.4 was released. This release is particularly important as the beta moniker is no more. This is a fantastic release but the team is continuing to make GWT better. At around the same time, theClassConnection went public, which shows you what someone who has never written a web application before can do with GWT.

Stephanie Liu of the Google data APIs team introduced us to the new YouTube GData APIs. Now you can search through YouTube's index and get detailed video, user, and playlist information in the form of GData feeds.

Featured Projects

The Google Zurich office has released an exciting new open source virtual server management tool called Ganeti. Ganeti is built on top of Xen and other open source software, and here at Google, we've used Ganeti in the internal corporate environment to facilitate cluster management of virtual servers in commodity hardware.

Gears In Motion is the latest database tool to sit on top of the Gears Database module. It allows you to visualize your local datastores in a new way.

Featured Media

Chris Prince of the Gears team took some time to discuss the new developer release.

Philippe Ombredanne of the Eclipse foundation came to talk to Leslie Hawthorn about the structure of the Eclipse Foundation, and how it participates in the Summer of Code program.

We take the keyboard for granted, but Jaewoo Ahn came to Google to talk about MobileQWERTY a simplified keyboard concept suited for the mobile form factor.

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

Friday, August 24, 2007

Weekly Google Code Roundup: Reaching the Sky and Writing Offline



It has been a busy time recently. The Zoho team announced offline support for their Writer application this week, so we met at their offices and talked to them about their experience. This is our first video talk, but more are in the works, so head over to our new YouTube channel.

If you are a Mac developer you now have access to more of our APIs via the updated Google Data APIs Objective-C Client Library. You can now work with Google Code Search, Picasa Web Albums, and do more with Google Calendars.

Speaking of Google Calendar, we introduced Calendar Gadgets which allow you to add behaviour to your calendar via Gadgets. Some early examples include adding horoscopes, sudoku puzzles that get harder throughout the week, and the ability to keep up with the all important celebrity birthdays.

If you are new to Gadgets, Alan Williamson has written a nice introduction to creating a Gadget for the Google Desktop.

The maps world has been productive. The big news of the week is the ability to embed a Map in a YouTube like way. Now you don't need to code to be able to build a map, and place it anyway you wish.

This doesn't mean the API is slowing down. Richard Garland wrote about a new cluster zoom feature that ties DragZoom and Marker Manager.

Introducing Sky in Google Earth has gotten a lot of people excited. Looking down at the earth is great, but being able to sit on your back and look up at the stars is just what you want on a nice summer night. Now you can do just that.

Featured Projects

Who's Web maps out various Web 2.0 talent on a rich Maps API implementation.

Zoho Writer has gone offline... in a good way. Now you can keep some of your docs available for that plane trip. Read more.

Featured Media

I got into a nice conversation with fellow Googler, and EAI expert, Gregor Hohpe at MashupCamp. Listen to the conversation about enterprise Mashups and the Google Mashup Editor.

Salesforce developers came to our offices and gave an Overview and Q&A on AppExchange.

John Resig of Mozilla and jQuery gave a talk on Best Practices in Javascript Library Design based on his work on both the jQuery library, and the new FUEL library for building Firefox plugins.

Michael Still talked about Practical MythTV, which covered the powerful open source personal video recorder.

Leslie Hawthorn has made all of her Summer of Code podcasts available in ogg format!

As always, check out the latest tech talks.