P@ Log

Patrick Chanezon about Google Platforms and Software Development

 

Waza conference report

January 13th, 2012 · No Comments

Two days ago I attended Waza, Heroku’s first developer conference, “a free developer event for the study of technique” (Waza means technique in Judo and Aikido).

It was a very good event, held at Yoshi’s San Francisco, a wonderful jazz club/japanese restaurant. The choice of venue meant they kept the event small, I counted between 200-300 developers, but there were cameras everywhere, and all talks were taped, so I expect the videos from the talks to be published soon. Holding the event in a jazz club made it very convivial, there were tables, couches and seats everywhere, which favored small groups gatherings and conversations, and that part worked really well, I saw developers in conversations everywhere. They also had alcoves specialized by topic (Java, Ruby, Data) where you could come sit down and ask questions to Heroku staff. Heroku is now part of Salesforce.com, and you could feel the powerful Salesforce marketing machine behind the event organization: stylish decoration, with a purple theme, including purple lightning in the whole venue, Japanese theme, exquisite sushis and finger food, green tea and even drip coffee.

What worked a bit less well were the rooms: the large concert room holds 300 people comfortably, but the 3 rooms were other sessions were hosted held between 20-50 people maximum, it was hard to hear and you had to stand during the sessions.

Here are a few pictures I took at the conference, to give you an idea of the atmosphere.

The talks I found the most interesting were:

  • Smashing Your App Into Pieces, by Josh Kalderimis (@joshkalderimis) from the Travis CI project. The gist of the talk is that a polyglot PaaS platform enables you to split your monolithic app coded in a single language, in several very focused services that focus on one concern and use the best tool and language to perform that service. He gave the example of the Travis CI open source project that he contributes to, where they refactored the initial ruby app in several more focused apps: they ditched Resque to use RabbitMQ for messaging, Travis Hub is deployed on JRuby 1.6.5 so that it can use the Java Rabbit drivers, and Travis Core runs on Ruby 1.9.2. Since Cloud Foundry is a great platform to deploy polyglot apps (with Java, Ruby and Rabbit support out of the box), this argument resonated very well with me.
  • Build As A Service, by David Dollar from Heroku (@ddollar), about Heroku’s buildpacks and the vulcan build server that is at the base of their whole polyglot strategy. A cool aspect of buildpacks is that by specifying –buildpack git-repo-url-for-your-buidpack, you can configure your app to run on a custom version of whatever platform it runs on (ruby, node,…).
  • Add-ons: Inception to Implementation, by Chris Continanza (@em_csquared) from Heroku. This one was my favorite after Rob’s. Chris explained how their add-on self service system works for add-on providers. They define a simple api with 4 calls that you have to implement: provision, deprovision, change plan, single sign on, and a gem, kensa, to help you develop and test the add-on. This is simple and seems easy to use. I wonder if it would work as a mechanism to add services to Cloud Foundry. I need to dig into this:-)
  • Concurrency Is Not Parallelism, by Rob Pike (@rob_pike) from Google. Rob as usual a great speaker, with a lot of food for thought. The session was about the distinction between concurrency, which is about how to structure a program, and parallelism, which is about its execution, and the fact that the Go programming language has very natural constructs to structure concurrent programs, that may be parallelizable. One example he gave at the end that made sense to me is Sawzall, a programming language he created a few years ago, to make it easier to script MapReduce jobs, that is parallel but does not let you express concurrency. The main message of his talk was: go read C. A. R. Hoare’s 1978 paper “Communicating sequential processes” (context on wikipedia), which influenced the design of Go.

The conference ended with Rob Pike opening a barrel of Sake with a hammer, Sake for everyone,, an open bar, and a live concert by Devotchka.

Overall this was a great event, very polished, with some solid and interesting talks, both specific to Heroku’s platform, and some more generally applicable to any application you are building using any cloud service. I will update this post when the videos and slides for the talks have been published.

On the Cloud Foundry side, our developer events so far have been a bit more grassroots, like Google developer events in the early days: no sushi, concert, sake or drip coffee: just engineers, source code, demos, presos and pizza:-) Next week, tuesday 1/17, the Silicon Valley Cloud Computing Group organizes a meetup about Cloud Foundry in Palo Alto. We were initially planning to host it at the VMware cafeteria, but 600 developers signed up, so we had to move it to the Crowne Plaza. I hope to see many of you there, it should be fun. If you are coming and don’t have a Cloud Foundry account yet, you can signup with this promo code to get your account right away.

→ No Comments

Goodbye Google, Hello VMware!

September 8th, 2011 · 7 Comments

In july 2005 I joined Google as AdWords API evangelist, to start developer relations, be the public friendly face for developers, of a company mostly driven by algorithms, with little human front end. Google then had 3000 employees, and 5 developer products.

I left Google last week after 6 years, friday september 2 2011 was my last day in the beautiful San Francisco office. Google has now nearly 30 000 employees, more than 90 developer products, and a developer relations team of more than 200 extremely talented people. Participating in building that team, defining the roles, the job ladders, hiring the best in the world, and managing several teams has been very rewarding. I am thankful to +Vic Gundotra and +Michael Winton for making it possible. Introduction to Google Developer Relations has details on what the team is doing and how it is organized.

I learned a lot, had fun, and made many friends at Google and outside, all over the world, in the past 6 years, building developer ecosystems for Google services in Ads, Commerce, Social, Browser and Cloud. I worked with many partners, gave talks at numerous conferences and GTUGs (30-50 talks/year in the past few years), traveled a lot, and met thousands of developers who are changing the world with code.

I loved Google, for its focus on technology, culture of innovation in the open and risk taking, ambitious mission, and the joy of working with people who are talented, passionate, and data driven. The “don’t be evil” corporate value, as well as the strategy of innovation in the open, leveraging open source and open standards, were also aspects I loved.

Why leaving then, and to do what?

On tuesday, I joined VMware as Senior Director, Developer Relations, to help them build their developer relations team. I love Google but this is an opportunity that I could not resist!

In the past 2 years I managed the Google Cloud and Apps Developer Relations team, focused on the Google App Engine Cloud Platform and Google Apps collaboration suite (special thanks to +Simon Meacham for taking over the team from me). I believe that the move of software and data to the Cloud is a profound architecture transition like we see every 15 years (the previous ones being mainframe, client-server, web). Modern HTML5 browsers, as well as mobile platforms like iOS and Android represent the client side of this transformation, the server side being a set of software, platform and infrastructure delivered as services, and known as Cloud computing. Nick Carr has a good layman explanation of this transition in his book The Big Switch, where he likens it to the industrialization of electricity in the beginning of the 20th century, and if you prefer a video, Simon Wardley‘s 2009 OSCON talk Cloud Computing – Why IT matters is full of wisdom and fun to watch, on that same topic.

My recent talk Cloud is such stuff as dreams are made on gives a good summary of the Cloud space as I see it today, for software, platform, infrastructure and development (video from Paris JUG, in french).

In the same way the tech industry has put a PC (or Mac), with a big pile of software, on everyone’s desk in the 30 years from 1980 to 2010, the next 15 years will be about getting a mobile device in everyone’s hands, with myriads of cloud services to make them useful. Apple, Google, Amazon, Facebook and others will provide most of the consumer Cloud services, with many vertical players like Netflix. But a huge market is Enterprises moving their software to the Cloud. After talking to many customers in the past 2 years, I realized that there are 2 requirements for Cloud services for Enterprise: they must be based on open source and open standards, to avoid lock-in and allow the level of control Enterprises want to have, and must provide the ability to create private, public and hybrid clouds. It is true for Enterprises, Governments, the military (cf my talk AFCEA C4I Symposium: The 4th C in C4I Stands for Cloud), and even consumer startups once they start to scale.

6 months ago Vint Cerf came to give a talk to our team, and explained that when he was young, standardizing how machines talked together, with TCP/IP was a great career opportunity for him, and that today the same opportunity existed for standardizing Cloud technologies. In april VMWare released an open source Platform as a Service (PaaS) called Cloud Foundry. It is multi-language/frameworks, multi-service, and multi-clouds (private, public, hybrid). When I saw it launch I recognized the open source platform that could become the de facto standard for Cloud platforms, public and private, the same way TCP/IP standardized how machines communicate. My favorite industry analyst, James Governor, understood right away what Cloud Foundry means for the industry.

I had been following VMware for a few years, seeing Paul Maritz and his team avoid the innovator’s dilemma associated with their stronghold in IaaS, following a “go big or go home” strategy, embracing PaaS and SaaS through clever acquisitions and product creation over the whole value chain, assembling the whole Cloud stack from both ends: virtualization products at the IaaS bottom layer, for sysadmins, Zimbra, Sliderocket and Horizon at the top SaaS layer, for end users, and Cloud Foundry in the middle PaaS layer, for developers. Add SpringSource developer tools and frameworks, and you have the start of a very strong developer story. VMware is going to lead the cloud enterprise cloud transition, and while today they talk mostly to IT departments, Devops and Sysadmins, I strongly believe that they are going to become the first provider of cloud technology for developers: I am joining them to build their developer relations team, help them write and tell that story.

I am joining old friends like Guillaume “Groovy” Laforge (see our Devoxx 2009 talk), the 2 ex-Googlers who started Cloud Foundry, Mark Lucovsky and Derek Collison, thought leaders I respect like Rod Johnson, Chris Richardson and Steven Herrod, Wavemaker’s Chris Keene, and one of my favorite Twitterer, James Watters. I will be mentored by +Tod Nielsen and managed by Charles Fitzgerald.

To learn more about Cloud Foundry, download Micro Cloud Foundry for Developers, it runs on a laptop, watch the screencasts, start coding and deploying! @Cloudfoundry is the Twitter account to follow to get updates on the project, the source is on github, and the community at http://cloudfoundry.org/.

To keep in touch with me, follow me on Google+ or Twitter. My personal email is [firstname] at [lastname].com, my new professional email is chanezonp at vmware.com.

I will talk about Cloud and Cloud Foundry at many developer conferences in the next few months, starting with friday morning keynote at the Heartland Developer Conference 2011, in Omaha. If you’re at the conference come chat with me and let me know what you are expecting from your cloud! SpringOne Chicago 2011 October 25-28 will also have a whole track dedicated to Cloud Foundry.

Let a thousand clouds bloom!

When I wrote the draft for this post I started a long list of people to thank, then realized that between Googlers, partners, developers I met at conferences, GTUG members and organizers, bloggers, analysts, journalists, conference organizers, there would be more than a thousand people, and I would surely forget someone. The better idea for that kind of things is to crowdsource it! If we worked, or interacted together in the context of my role in Google developer relations in the past 6 years, please tell an anecdote on this Google+ thread (or this Facebook post, or with the #patgoogle on Twitter if you are not on Google+). I loved every bit of my time at Google, thanks to all of you, and will cherish these actualized memories. Plus, it will make it easier to create a circle called: “People from my golden years at Google”:-)

→ 7 Comments

Derek Collison RubyWorld 2011 Cloud Foundry deck

September 7th, 2011 · No Comments

Great deck from Derek Collison at RubyWorld 2011 about Cloud Foundry.

View more presentations from Derek Collison

→ No Comments

Delicious-to-Blekko search conversion hack

October 31st, 2010 · 7 Comments

I’ve learned about Blekko’s new “slashtag” based custom search engine in Danny Sullivan’s Search Engine Land Blog and it made me want to try an experiment: over the past 5 years I have used delicious to tag 6000 articles, applying 14000 tags to them, why not creating a custom search engine based on these tags?

Got to Delicious, Export your bookmarks,  then apply a unix one liner:

lynx -dump delicious-20101031.htm | egrep -o "http://[^/]*/" > cloud.txt

Which gave me a list of the 156 sites I have bookmarked on the topic cloud.
Then I created a profile in Blekko, and a slashtag, uploading the list of sites.

Here’s my custom search engine for cloud, results seem quite relevant, like in this query for App Engine.

Took me 10 minutes to create this, it was so fun that it even enticed me to start blogging again:-)

Now I wish that Blekko would implement the delicious integration themselves to avoid the need for file download, unix manipulation and file upload: that’s what APIs are for. On the other hand, this could be implemented as a Chrome Extension.

→ 7 CommentsTags:

Google is hiring a developer program engineer for the Go language

November 10th, 2009 · 2 Comments

Today Google released the Go programming language. We are hiring a developer program engineer to help manage and grow the Go developer community. The job description is similar to our generic Developer Program Engineer position with a few changes:

  • 6 years of experience or more
  • Strong C++ and Java, and others
  • a strong interest in computer languages
  • Systems and concurrent programming experience
  • experience managing an open source project

We are looking for an experienced systems programmer who is passionate about programming languages and has an interest in managing an open source community.

If you are interested, either apply on Developer Program Engineer and specify that it is for Go, or send me your resume (my last name at google dot com)

 

→ 2 CommentsTags: , ,

Tweeting Ulysses on Bloomsday

June 16th, 2009 · No Comments

bloomtweets

I spent the past 2 nights in Singapore coding a fun literary experiment: I was initially planning to Tweet Joyce’s Ulysses the 16th of June, Bloomsday, with some friends. But I realized it was too late for that. Then I decided to crowdsource it, and created a Mechanical Irish using Google Appengine Python.

Please try out BloomTweets and spread the word: I need around 2000 volunteers to tweet the whole book.
The app will let you login to Twitter, then take a fragment of 10 lines, and reduce it to one or two tweets of 120 characters, each assigned to a Twitter user I created for the characters.
Your post will go to your Twitter status.

When I have some time, in the next few days, I will write a cron job to post all the Tweets by their various characters, and Twitter user bloomsday09 will retweet the whole book.

You can find more details about the project in the about page.

It was a fun experiment to code, I hope there will be enough enthusiasts to tweet until “heart was going like mad and yes I said yes I will Yes.”

→ No CommentsTags: , , , ,

Google I/0: 2009 Google Friend Connect In The Real World

May 28th, 2009 · 2 Comments

Today with 3 partner sites, Time.com, HuffingtonPost and JS-Kit, we gave a talk at Google I/O about how and why they implemented Google Friend Connect on their site. The session showed that Friend Connect starts to get real traction with large sites, and that implementing a deep integration using the Friend Connect Javascript or REST API is quite easy.

Slides:

Demos:

Links:
My I/O and Friend Connect links on delicious.

Code:
Not there yet, but the social-list project will be open sourced at http://code.google.com/p/social-list/ in the next few weeks.

→ 2 CommentsTags: , , , ,

Playing with the new Google Friend Connect Javascript API

March 31st, 2009 · 4 Comments

In the past 3 weeks, since we have released the Google Friend Connect Javascript API, I have been playing Friend Connect it a bit more: the Javascript APIs let you add social features to your site without requiring the use of gadgets. Ask the user to join the site, then you have access to the OpenSocial APIs to get their profile, list of friends and post to their activity stream directly on the page. It makes OpenSocial as easy to integrate as using the Google Maps API.

I installed the Google Friend Connect WordPress plugin that Matt Cutt’s team built, on this blog: go to the bottom of this post and join the site to comment on my blog, no more form to fill out. What is nice with this integration is that the commenting system is still the wordpress native system, and not a foreign widget, so I can still use the akismet spam detection engine, and use the wordpress admin to moderate the comments.

I also built a sample to demonstrate how you can make an existing static page more social using friend connect: I took the 100 top movies page from Entertainment Weekly, not much engagement on that page, and added a few dozen lines of javascript to transform it in a social application. Take a look at the code to see how easy it is. It is hosted on app engine for convenience, but there is no backend there, I use the OpenSocial persistence API to store the list.

If you prefer server side development, friend connect also has a → 4 CommentsTags: , ,

How a Platform based on Open Web standards makes sense during an economic downturn

March 16th, 2009 · 2 Comments

This morning I gave a keynote at the EDC | 2009 Developers Relation Conference called: Google Developer Program: How a Platform based on Open Web standards makes sense during an economic downturn. Since the audience was full of people who do slideware all year long for a living, I though slides would bore them (and at 8:50 in the morning boredom means sleep) I tried a different presentation format and talked through a set of tabs in my browser, containing sites, slides for old presentations, pictures and cool demos. I hope the format worked for those of you in the room. Here are the links I presented as promised.

The main argument of the talk is that one of the inherent advantage of building your platform on open standards and open source gives you a hard to match marketing advantage over your competitors who have to buy attention: you have a lower marketing budget for the same, or more powerful effect. In the current downturn, with shrinking marketing budgets, this seems like a good strategy. I illustrated the talk with various developer events to build the opensocial ecosystem with many partners over the past 18 months.

→ 2 CommentsTags: , , ,

Teaching Open Source wiki

March 4th, 2009 · No Comments

The Teaching Open Source wiki “serves as a neutral collaboration point for everyone involved in Teaching Open Source”: this is an excellent initiative. Resource about learning Open Source development are scattered in various places and communities and I hope that this wiki will grow into a useful central repository.

They are using MediaWiki for the wiki, and Sam Ruby’s excellent Planet Venus aggregator to provide an aggregated feed about Open Source teaching. My only regret is that they did not consider integrating a social network from day one, like my colleagues did at OpenSocial.org: Shindig PHP is open source, and should not be too hard to integrate.

If you want to start learning Open Source development, I highly recommend the book Producing Open Source Software by Karl Fogel, as a good way to get started.

→ No CommentsTags: ,