Seo Master present to you: By Dion Almaer, Google Developer Programs
As soon as Android and the Open Handset Alliance was out in the wild, we were chomping at the bit to talk with some of the people behind the platform to discuss the developer-related information.
We were lucky enough to get some time from Dianne Hackborn and Jason Parks, who have been doing this work for a long time. They used to be at Be, and PalmSource, and you will hear how that experience has come through to Android. In fact, you will see how the Android team has engineers from many other platforms (Linux, Danger, and Windows Mobile).
Dick Wall himself is an advocate on Android, and you can hear how excited he is to talk about this!
What will you learn on this podcast?
Some history behind the project
The high level architecture of Android. For example, how Linux processes handle the VM and manage security (the VM doesn't handle it)
Details on the Dalvik VM and how it is optimized for small devices
The architecture: From Intents to Views to Permissions and more
How XML is slow, but the tools convert the XML to a nicer format for you
The tooling and steps for building an application on Android
How so many objects have a URL, and how the environment is like a mini-SOA (Services across processes instead of across the network)
Thoughts on how you program for small devices, and things to watch out for if you move from the desktop
The control, or lack of control that you have over the application lifecycle
"Everything you do drains the battery"
The thread story: they exist, you don't have to deal with them if you don't want too, and the UI
Seo Master present to you: By Dion Almaer, Google Developer Programs
The announcement of the OpenSocial project is really exciting, so I was really glad to drag Patrick away from his work to take some time to chat with me about it.
Patrick is easy to talk too, and I think that comes across in the interview itself. There has been a lot of pre-release speculation on what OpenSocial really is, and the press has put out wildly different ideas over the last couple of weeks. Patrick lays out the facts of the announcement.
He covers a lot, including:
What has actually been released
What OpenSocial isn't
Details on the various APIs:
People Data API: You can get access to owners and viewers, and their friends
Persistence Data API: Store simple hash table data for the users using your application
Also, check out video from the Campfire One event and interviews with a subset of the partners involved in the OpenSocial launch. Having a large number of application developers and container vendors show what they have already done gives you a glimpse to the future.
Now I want to record the next podcast by the fire.2013, By: Seo Master
Seo Master present to you: By Jimmy Caputo, Product Marketing
Last week the folks at Pearson Education sat down with Bruce Johnson and Joel Webber to discuss the creation of Google Web Toolkit and Pearson's December conference Voices that Matter: Google Web Toolkit. Listen to the podcasts to hear Bruce and Joel explain the history of GWT and the challenges of building a cross-browser Java-to-Javascript compiler. They also talk about the sessions that they are most looking forward to attending at the conference, and their upcoming book on GWT. Thanks to Bruce and Joel for sharing their thoughts and to Barbara and Greg at Pearson for putting this together.
Registration for the Pearson conference is still open, but be sure to register before October 27th (this Saturday) to receive the early bird pricing discount. You can review the complete list of sessions and speakers on the conference website.2013, By: Seo Master
Seo Master present to you: By Jeremy Allison, Open Source Team and Samba Core Developer
Around sixty developers from over twenty different companies converged on Google's Mountain View Campus at the end of September to sample the free food. Oh yes, and also to test their implementations of the CIFS network protocol for interoperability.
CIFS, the Common Internet File System (that's Windows Networking to you and me), is the file sharing protocol build into all Windows versions, and also MacOS X, Linux, HPUX and now Solaris clients. Samba is the best known Free Software implementation of CIFS, and most of the Samba Team were there to help improve Samba3 and Samba4's interoperability along with the other CIFS vendors.
Over the three days much code was written, much beer was drunk, and the air was turned blue with cursing when bugs were found! As the Samba Team were mentoring several Google Summer of CodeTM students, we also got to record a podcast about our experiences participating in the program over the past three years.
Thanks to Google for hosting the event and setting up the gigabit networking required. The endless coffee supply was also essential when dealing with network protocol problems.
The best summary of the success of our testing occurred on the final day of the event, when a sad and frustrated CIFS client programmer wrote the following on our testing notes whiteboard:
"the server *hates* me :-) :-)"
It was great to see everyone coming together, even people from competing companies, to help fix problems with everyone's implementations of CIFS. Look for the resulting improvements in new versions of products and future releases of Samba.
The Samba Team takes a break during the CIFS Workshop.
Seo Master present to you: By Dion Almaer, Google Developer Programs
We had the pleasure of sitting down with two of the Google Mashup Editor team to discuss the product and how developers can use it to build mashups in short order.
We start out by discussing what the product actually is. The term "mashup" is a very overloaded term out there, so a mashup editor could do a number of things. What are the pieces? How does it compare to other tools like Yahoo! Pipes (complementary!)? What are the user and global feeds?
We then delve into practices for building your mashups, and discuss good examples that are out there. We finish up discussing areas that the team would like to delve into as the product evolves.
T.V. Raman is a Research Scientist at Google who knows a thing or two about accessibility. We took the opportunity to interview him, and Hubbell, his seeing-eye dog (who was nice and quiet).
We started out by asking the honest question that developers ask about accessibility: "What is in it for me?". T.V. discusses the practical issues, and what you should be doing with respect to accessibility, and how it is one piece of the usability picture.
We then delve into the problems of developing accessible websites, and solutions to some of the problems.
If you listen to the interview you will learn:
How not to develop in a user-agent specific manner
Fun issues with screen readers
How audio CAPTCHA brings equality to the pain of CAPTCHA, and how people who can see use the audio ones
Seo Master present to you: By Dion Almaer, Google Developer Programs
Mark Stahl is a technical lead on the Google data APIs team. Many of the APIs that Google offers are part of the Google data API family, so we thought it would be prudent to get some time to chat with him, and discuss all things GData.
Gregor Hohpe is a Googler who has spent a lot of time in the enterprise. He authored the book on Enterprise Integration Patterns, and has been watching and helping the integration world.
We were both at MashupCamp and started to talk about how Mashups could be called EAI 2.0, and started to discuss the similarities and differences.
Gregor also wrote an article titled Google Mashup Editor and Yahoo! Pipes: Friend, not Foe, which does a great job of explaining the mashup landscape by example. He shows how to use the Google Mashup Editor, and how it can work with Yahoo! Pipes and other tools.
In this podcast you will hear about all of these topics in that special style that only a German can offer. There are some really fun analogies here. Listen out for the graffiti artists in the Mashup world.
Oh, and on behalf of two europeans, we apologize for saying "San Franciso 49ers" when we of course meant the Giants.
Seo Master present to you: By Dion Almaer, Google Developer Programs
This week has seen two new series to cover Open Web technology. One of the messages from Google I/O was explaining how Google believes in, and is frankly betting on the Web as its platform. You should expect to see increasing examples of how we are putting our money (and effort) where our mouth is on this.
Since the Web is so decentralized, we have a deep need to communicate and discuss where we, as a collective are heading.
I have the pleasure to be joined by Alex Russell, notably of the Dojo Foundation, and John Resig, both creator of jQuery and employee of Mozilla Corp, for a new Open Web Podcast that focuses on news, events, and opinion on the state of the Open Web.
In the first episode, which you can either download directly or subscribe to, we delve into a lot of topics including new APIs and specifications, the new charge behind Firebug, the Open Web Foundation, and much more.
The early part of the podcast actually discusses the other series that started this week. Mark Pilgrim, a team-mate of mine at Google, kicked off This Week in HTML 5. Mark is taking the time to keep track of the myriad of changes to the specification, and will keep us abreast of the important features and decisions that are made by the group, head by our own Ian Hickson.
Mark discusses the big additions of Web Workers (Gears Workers standardized), and the clarification of alt tag usage in the img tag to have you using alt="{diagram}" and the like.
If you are interested in keeping up to date on HTML 5, you can subscribe to the WHATWG feed which is where Mark is doing his work.
If there is anything else that you would like to see from us, please drop us a comment below!2013, By: Seo Master
Max Ross and Maulik Shah were part of a core group that worked on the recently open sourced Hibernate Shards project.
In the podcast you will learn:
What sharding is and what it means in the world of Hibernate
How the word "shards" is common at Google (the equivalent of "smurf" in The Smurfs)
Why you would want to shard your data to give you increased scalable performance
How the Hibernate Shards project doesn't mess with the core APIs, allowing you to add sharding unobtrusively
What you need to think about if you want to shard your data, and how you can design a schema that has a dimension that is easily sharded. This includes designing without complex relationships.
How you could create a crazy project that shards data across multiple databases (as in, one mysql, one Oracle), but that would be crazy
The various strategies to define how you retrieve your objects across the distributed data store
How this compares with horizontal partitioning at the database level itself (e.g. new features in MySQL, PostgreSQL, and others)
Seo Master present to you: By Dion Almaer, Google Developer Programs
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.
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.
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.
The Google Gadget Ventures announcement was very exciting for us and the community. We couldn't wait to get Adam Sah of the Google Gadgets team to discuss Gadgets, and the new announcement.
Interview with Adam Sah on Google Gadget Ventures
What will you learn from this interview?
What Google Gadgets actually are and how they compare to widgets and blidgets and blodgets and ....
How there is a family of Gadgets. They aren't just for iGoogle!
How you can develop Gadgets in HTML, Flash, Java applets, and more. After all, this is just iframes people.
The security model with Gadgets
The subtlety behind phishing and Gadgets
The long tail of Gadgets, and how to share and promote your Gadgets
How you can post Gadgets on your blog or website
How we are in the second generation of Gadgets (not just a minimal view on your web app)
What an appropriate amount of resources to put on Gadgets
How to monetize your Gadgets
Information about the Google Gadget Ventures program
The following are links that we mentioned in the podcast:
AppleScripting Google Desktop means that you can tell the Google Desktop application to do things for you via script. Boss around the system from your own applications and scripts.
The Google Mashup Gallery is a mashup itself, that allows you to add your mashup to the mix. Now, everyone will be able to find your Britney vs. Christina mashup!
Geotagged Picasa JSON/KML Output + Driving Directions = Instant Scenic Tours: If you were following the Google blogs yesterday, you would have heard that Picasa now gives you a sleek drag+drop interface for geotagging your photos, and that the Picasa Google data API now outputs the geotagged data using GeoRSS & GML elements. And if you were excited by all that news and immediately visited Picasa to try out the new feature, you might have noticed the big blue KML icon next to a "View in Google Earth" hyperlink. So Picasa now gives developers geotagged photo data both in KML output and the standard Google data API output formats, and that means we map developers have a lot of ways to start playing around with Picasa photos.
New drag-to-route driving directions in google maps - once you have a route, drag the blue line around to have it automatically re-route using your desired roads or intermediate destinations.2013, By: Seo Master
Seo Master present to you: By Dion Almaer, Google Developer Programs
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.
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.
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.2013, By: Seo Master
We have published the fourth episode of the Google Developer Podcast, which features an interview on Google SketchUp and how developers can interact with that world.
Interview with Mark Limber on Google SketchUp
What will you learn from this interview?
Who SketchUp is aimed at, and what it contains
Creative out-of-the-box uses of SketchUp by fellow developers
How to do a Hello World model (your house) and put it on Google Earth
How to find and share your models in the 3D Warehouse
Various ways in which you can use SketchUp if you are a games developer
The various SketchUp APIs and how you can extend SketchUp with Ruby, including fun examples out there (dropping trees, manipulating cameras, animation, and much more)
How to attach and manipulate metadata to the artifacts in SketchUp
How you can use a web dialog within SketchUp
Working with materials and textures within your models
How to use the C++ SDK to use SketchUp from within your own application.
Blogger in Draft has been released for early adopters. This allows you to play with the upcoming Blogger features before they are announced in full. The first feature is video upload, and more are coming.
Tying into the SketchUp interview we discussed the new ability to use animated models in Google Earth.
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.
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.2013, By: Seo Master
We have published the third episode of the Google Developer Podcast, which delves into the world of offline applications, which is a hot topic right now. Let's get right to it.
Interview with Mike Tsao of the Google Gears team
We had the pleasure of interviewing Mike Tsao of the Google Gears team just before the Google Gears announcement went public.
It is a really fun chat, and lets us get into the mind of the Google Gears team a little.
In this interview you will learn:
What Google Gears is at a high level
How Google Gears came about
The parts and pieces of Google Gears
Information on the Datastore component (SQLite)
Information on the ResourceStore and ManagedResourceStore components
How the APIs look, and what should I be thinking about as I make my application offline
How to handle versioning with Google Gears applications
How the WorkerPool came about, and why we need to run JavaScript jobs in another thread
The code contributions made back to the SQLite codebase (e.g. MATCH() added)
The pain of finding the 90% case for syncing
Thoughts on how the client is getting smarter
How GWT supports Gears
How Google Reader is using Gears
How the UI fits in with offline behaviour
The open source vision for Gears
How other web platforms can access Gears
Future ideas for Google Gears
News
We also discussed a little of the other news that happened just before Developer Day.
Seo Master present to you: By Dion Almaer, Google Developer Programs
We have published the second episode of the Google Developer Podcast, just in time to get you ready for Google Developer Day which kicks off this week.
Seo Master present to you: Posted by Dion Almaer, Google Developer Programs
A fair few Googlers enjoy creating podcasts, and a large number choose to participate in the medium as listeners.
I have really enjoyed creating Audible Ajax, as it gives me a way to get close to the community. Not only do I get to meet great people and technologists as I interview them for the show, but the listeners also let me know what they like and want to hear back from me.
The better I've gotten to know Google developers and programmers in the community, the more I've wanted to highlight and share their contributions.
Dick Wall and Carl Quinn are two Googlers that are part of the Java Posse podcast, and we were excited to team up and start communicating. The end result is a new podcast called the Google Developer Podcast.
What will we cover on the Google Developer podcast?
Interviews with Google engineers, discussing areas of their expertise
New features, applications, and APIs that matter to developers
Open source projects that we work on and/or care about at Google
Projects that use our APIs and applications in interesting ways
News and events that we all care about, including the Google Summer of Code.
An interview with Bob Lee, Google Guice developer
As we were brainstorming our first podcast Google Guice was released. Guice is an open source, lightweight, dependency injection framework with an emphasis on tight Java 5 integration and high performance. It has already been put through its paces in production at Google for awhile and it was a great effort on the behalf of the Guice team to share it with the community as a whole.
The Java community noticed. A spark has ignited around the project and the ideas that it represents.
To learn more we contacted Bob Lee and had a conversation about the philosophy behind Guice and how it all works.
We hope you enjoy it.
As with all new endeavors, we are looking to the community to help define it. What can you do?
We had the pleasure to talk to some of the Google App Engine team to discuss the recent launch that Dick uses the tagline as "Your apps, our servers". We get to chat with tech lead on the project Kevin Gibbs, product manager Pete Koomen, and Guido van Rossum. I don't think we need to introduce Guido!
The podcast starts out answering why Google App Engine was created, and why Python was chosen as the first language. We then hear about the work that goes into making a language hardened for the platform itself.
Of all of the APIs that we expose in the App Engine back-end, we feel that the Database API is probably the most foreign for the majority of developers. Many are used to the relational model for datastores, and our datastore is different. Kevin talks about these differences, and the ramifications that come with a schema-less store. We then delve into the practicalities of having libraries such as SQL Alchemy support GQL which is a functional subset of SQL.
What about lock-in? This was one of the big questions that came out of the community when we launched App Engine. You can see how open the team is to other solutions, and how they like seeing work such as AppDrop that shows how you can do this. The choice to make the SDK itself fully open source says a lot.
Guido discussed how the Python runtime is indeed the full language, but how some libraries are not there. He talks about the reasons behind the choices, which are mainly related to security. As time goes on more libraries that developers really need will make it into the system, often with equivalent implementations. Although a traditional file system doesn't make sense in the cloud, we could very well see a virtual file system implemented.
We go on to discuss a lot more, including:
What restrictions are there for serving your applications?
What Web frameworks are available?
Can you develop Web services as well as Web applications? How about gadget and widget?
What kind of traffic can be expect with the free accounts?
Can I run these applications on my domain, and integrate with Google Apps?
If you want to see more of the team and play with App Engine, come by a hackathon when it get to your neck of the woods, or hear more at Google I/O.
I had the pleasure of taking a trip back to my home land of England to meet up with the team behind the Google Gears for Mobile product.
As someone who loves Web development, it is an exciting proposition to be able to use the Web platform to be able to develop applications on the mobile.
This release enables you to use the Gears 0.3 APIs on Windows Mobile devices. With this new version, not only do you have access to the Database, LocalServer, and WorkerPool APIs, but you can also create desktop shortcuts. Considering the disconnected nature and latency issues inherent to the mobile networks, these APIs allow you to deliver more responsive applications that can hide some of the problems.
Today, we saw the release of a new mobile version of Picasa Web Albums that uses these features. I got to sit down with Joe Walnes, tech lead of the mobile Picasa team. Joe and his team built both the Gears-enabled version of Picasa for the phone as well as the iPhone version that allows you to sit on the Tube and still flip through your family photos.
Joe tells us about his experience building the Gears application.
I have also put together an audio podcast consisting of interviews with not only Joe, but other members of the Gears team.
First, I talk to Charles Wiles, the Product Manager of the Google Gears for Mobile team. He gives us a high level view of the project in general, and this launch in particular. We also discuss the native abilities of Gears on the mobile, widget platforms, and future Gears developments.
Second, we hear from two engineers on the project, Dave Burke and Andrei Popescu. They go into detail on the platform, how you architect mobile Web applications, how you develop and debug applications, new APIs such as the Location API, and how Android fits in to the picture.
Finally, we hear again from Joe Walnes.
I am really excited about the prospect of building rich mobile applications using Web based technology.