Nov 24

Internal Affairs for Recruiting; Testing your assumptions and Google Recruiting

Google, Tech with tags: 5 Comments »

Bobs

Peteris Krumin has another My Job Interview at Google post which is always a sure fire way to drive traffic to your site. People seem to really want to hear about Google interviews for some reason!

Google is a great, big company (the comma is important) and had an amazingly short list of foibles that really irked me during my tenure, and a huge laundry list of items that made me excited to get to work. That being said, I once changed my internal IM status to “Recruiting needs a Code Yellow” instead of latency.

The hiring process drove me batty, and to some extent so did the performance review process too.

So, As I read Peteris’ diary of his interview process I wondered if it would be time for large companies to have an Internal Affairs group to test their assumptions.

They could have current employees be interviewed again by groups that don’t know each other (this is when it matters if you are big). You could have Bob “I’ve been at the company for five years” Hunter come in to interview for a “new job” and see how it pans out. I am guessing that it would be quite enlightening from both sides. I wonder how many people wouldn’t quite make it in, so to say. I am pretty sure that although my one path to Google worked out, there were many folks in the road where I could have had a slightly different interview panel or hiring committee and I wouldn’t have made it (I won’t argue who would have been right ;).

InternalAffairsRecruiting.com could send trained people into interviews to do reports on the companies too. A lot of fun would be had by all. And, maybe some hazing would end?

On another Google recruiting note, the process worked well and Alex Russell is joining the Chrome team. Congrats to both Google and Alex on the move. I can’t wait to see what he comes up with there. Having an Ajax fellow working inside a browser team can only be a good thing for us developers. And, with Aaron, Arv, Dan, and many others… Google has top notch talent. It also means a Dojo fellow joins the existing crew of Brad, Gavin, Abe, and I am sure others.

And then I see Google Layoffs – 10,000 Workers Affected which has already been read into far more than it should be. I actually think it can be good for Google to focus a little and rein in. Instead of layoffs I am sure we will see a bit of a thinning due to attrition and not hiring quite as fast. Laying off the bottom performers isn’t a bad thing though!

This is a fantastic time to hire top talent. Just look. Google got Alex, and probably let go of a few fringe folks (no offense to them) that aren’t engineers. I am excited to start a new group at Mozilla with a great pool of people talking to us. Remember Apple was built in the 70s ;)

Nov 12

Gmail video lands; What if it was a Gear?

Gears, Google, Tech with tags: 13 Comments »

By blurring the boundary between Ajax and RIA, Google has found a way to grow into the Mesh that Microsoft is close to delivering from IT outward. In many ways, this strategy is supportive of the new Microsoft as much as it is disruptive of the old. Just as Microsoft can’t be stopped from executing on its cloud strategy in the enterprise, neither can Google from its base in the user cloud. Where the two platforms meet in the middle looks a lot like a hybrid of iTunes and Office.

That is from Steve Gillmor as he compares video chat with Silverlite :)

You can look at this as some amazing plan, or maybe a Gmail chat team that thought video would be a natural progression?

One key aspect of the new Gmail chat is mentioned as part of the launch blog post:

We designed this feature using Internet standards such as XMPP, RTP, and H.264, which means that third-party applications and networks can choose to interoperate with Gmail voice and video chat.

Once again, standards lead the way for a Google team. This shows how this can be so much more than just an end user feature.

Let’s do a thought experiment: What if?

  • This was not yet another plugin (a la Lively 3D), but rather just a Gear? Something that could be reused by developers right away so they could add video and audio in a way that reaches many end users, using standards
  • And what if it used the audio and video HTML 5 tags? Chrome could implement them, and Gears could give us a shim to at least give us the APIs, if not more. Of course, other browsers have implementations too!

Google’s “Silverlite” is already here: Gears. If we all kept building on that we could do so much. Add the ability to load and update seperate Gears (modules) so in this case people would have gotten a video/audio module update to their existing plugin.

This is important

Video is huge, and is exploding. It is something that the Open Web doesn’t have a good answer for yet, and we need one. Right now you have to use Flash or Silverlight, and I would prefer more choice ;)

First we need to get players and codecs out there. The video/audio tags are fine, but what can they play? Apps such as Gmail video could deploy that technology. Then the next step is in tooling. How do we plug in to the current video development process? How do we reach the creative types? Without the toolchain, the technology won’t matter.

Can we get from here to there?

Oct 13

Joining Mozilla to create new developer tools for the Web; Hoping to create a new chapter in the book of Mozilla

Google, Mozila, Tech 35 Comments »

I just announced that Ben and I are joining Mozilla. Alongside Ben, I will be leading a brand spanking new developer tools group.

To say that I am excited is a huge understatement. Ben and I have been talking about developer tools from the first day that we met on the No Fluff tour. For a very brief period I consulted together with him, and got to start on a vision for a productive Java stack. When consulting, I always saw huge productivity problems, and wanted to think of ways to solve them. Tools are one way to go, and the developer tools group at Mozilla is going to be different. We aren’t narrowly going to look at a way to build Eclipse plugins for example. Rather, we want to take a step back and see how we can help Web developers build compelling software with great user experiences in a productive way. We don’t want to think “we need VB on the Web.” We want something more.

I said a lot of this in the announcement post:

Mozilla is placing a big bet, not only on us, but in the developer tools space.

Why are we doing this? Ben and I are passionate about a couple of things: compelling software and developers. In various roles in the past, we have built tools that attempt to make developers productive. We are huge advocates for the Open Web, yet we feel that tools are lacking on our collective platform. We want to help make a difference.

As we ramp up this new group, we will be looking at the problem and seeing where it makes sense to step in. We are going to be experimenting, and thinking about how to make developers lives better in different ways, so we aren’t expecting to see traditional tools come out of this group. Also, we don’t want to do this alone. We want to involve the entire community which is one reason that we are so excited to kick off this work at Mozilla. We believe that we have a unique opportunity to put developers first. We can build these tools in the open, with total transparency; the Mozilla way.

We respect the work being done by other vendors, and very much want to work together. We can’t wait to reach out early-on in the process, involving companies that believe in the Open Web like we do. Together we can drastically improve productivity, allowing developers to build compelling user experiences.

We are just getting started. As soon as we come up with some ideas, we will be sharing then with you and asking for community participation in various forms. You, the Ajaxian community, have been phenomenal over the years, and we can’t wait to do more together.

We also included a personal message:

There are a lot of personal issues here too. I strongly feel that my best work has been done when working with Ben. He has been an inspiration, as well as a great friend, and we have long wanted to work together. It is nuts that our paths haven’t brought us together in a full time capacity in the past. I can’t wait to get started with him now. I learnt from my Dad that you should have fun at work. Part of that is being around people you truly like, working on something you feel is important, and being able to excel. I think that I will get an abundance of that.

I am also very proud to be join Mozilla, the non-profit Foundation stands for what I believe in. Being someone who thrives on Open and transparent, how great and freeing will it be to develop all of this in the Open, being directly part of the community. At any company there are things that you strategically can and can’t talk about. At Mozilla on the other hand, everything is out there for all to see. That fits me to a tee! I have also long admired the talent that lives at the company and I look forward to working together.

What about Google though? Some people will think I am crazy for leaving the fastest growing company in history! :)

I have been running an Open Web advocacy group, and Google is definitely on the right track. You could argue that it is easy for it to be, since it is dependent on an Open Web. Also, it doesn’t need to come up with a business model. That is all true, but it is still pretty amazing to see exactly how much engineering is given away, or I should say shared with the community, through Open Source and APIs.

Being on the inside you get to really see what the company is all about. People have their views on Google, and any large company. Some talk of Big Brother and the like. Of course, the reality is that a company isn’t one being. It is a large group of people with varied ideas. These employees really hold the company to a high standard, as I have talked about before. I will continue to hold Google to those standards from the outside. How many companies would make a stand on Proposition 8? Google is special.

In the time that I have worked there, it sure has changed as it has grown too. How can you grow that fast and not have big changes? I have moved offices 9 times for example :) There are some things that have irritated me, and that I have wanted to change. The hiring process is one of them! However, recently, I found peace with a lot of the issues. I realized that without them, Google wouldn’t be Google. The last thing it needs to become is “just another company.” I hope it continues being as different as it can as it scales and brings in more and more outside forces.

I have to laugh when people talk about its future. We just saw the 10 year old birthday of the place, and it has only just begun. You can talk about advertising being a one trick pony, but the scope of advertising is also very young indeed. Just watch Minority Report again, but then think about how it could be done in a useful way.

Then think about the server side processing power that the company has. A handful of companies have that much processing ability which will enable solutions to problems that only they can do a good job coming up with. It is tough for a startup to come along and tackle some of these issues.

As I experienced my last week at Google, and had the tough job of saying good bye to the amazing group of people, I had a thought. It felt like I was leaving one premier league football team for another, and I knew that I would get to play with a bunch of the old team mates when the national games happened.

This is a new world. Google is of the Open Web, just as Mozilla is (and many others of course). This means that I really WILL get to work with old friends there. When in history has that been the case? If you went from factory X to factory Y, that was it. “See ya at the pub lads” was as far as you got.

The notion of company has drastically changed. The people who pay the bills may not be the people you work with all the time. I bet that Ian Hickson works with folks from Apple, Mozilla, and Opera just as much as Google counterparts! The goals that Mozilla and Google have are so aligned, that I think we will naturally continue to work together.

Finally, I am looking forward to a little sabbatical. Whenever I take a new job I am so excited that I jump right in. Then you look back and think “why didn’t I take a bit of time off then?”

This time I hope to help Obama a little on the final stretch, get some personal issues cleaned up, and in general take some time to change my lifestyle.

If you have pain points in development that you wish someone helped you with, please let us know!

Sep 30

Searching for Ajax in 2001 on Google

Google, Tech 5 Comments »

Ajax search for Google at 10

When Dylan told me about the idea to resurrect an old index as part of the 10 year old birthday festivities, I thought it was very cool indeed.

They found one, and you can search on it here. Vanity searches are fun, and Ajax returns very different results :)

Aug 22

Where are you? Using the new Ajax ClientLocation API

Ajax, Gears, Google, Mobile, Tech with tags: , 21 Comments »

We just announced two new ways to get location info from a browser client.

The Gears GeoLocation API is very detailed. It is able to use GPS, cell towers, WiFi, and ip addresses to work out the location, and you get an “accuracy” parameter to see what was available. As well as getting a position, you can watch a position so you are updated when a change happens. This is perfect for mobile devices that have Gears installed, and since the community is working on the W3C Geolocation spec it should be in many more places soon.

To go with the Gears API, we also have an API that goes along with the AJAX APIs, called ClientLocation.

This is an ip based geocoder that we have made available, and is very simple.

I put together a trivial example called Where Are You? that ties together this API with the Maps API:

You get access to the data from google.loader.ClientLocation, which is null if it can’t be calculated.

Here is a bit of JavaScript that ties it together:

google.load("maps", "2.x");
 
google.setOnLoadCallback(function() {
    if (google.loader.ClientLocation) {
        var cl = google.loader.ClientLocation;
        var location = [cl.address.city, cl.address.region, cl.address.country].join(', ');
 
        createMap(cl.latitude, cl.longitude, location);
    } else {
        document.getElementById('cantfindyou').innerHTML = "Crap, I don't know. Good hiding!";
    }
});
 
function createMap(lat, lng, location) {
    var mapElement = document.getElementById("map");
    mapElement.style.display = 'block';
    var map = new google.maps.Map2(mapElement);
    map.addControl(new GLargeMapControl());
    map.addControl(new GMapTypeControl());
    map.setCenter(new google.maps.LatLng(lat, lng), 13);
    map.openInfoWindow(map.getCenter(), document.createTextNode(location));
}
Jul 28

A second look at Dare on the OWF

Google, Tech with tags: , 1 Comment »

Dare Obsasanjo took some of my words among many others when he discussed his thoughts on the Open Web Foundation.

When I take a look at his post, I see two things:

Is using a question a way to be more passive?

Dare has used a technique that I have most recently seen in the political scene. He has disparaging words on the OWF and motives, then talks about Google participation using the question technique:

Why would Google decide to sponsor a separate standards organization that competes with the IETF that has less inclusive processes than the IETF, no clear idea of how corporate sponsorship will work and a yet to be determined IPR policy?

There are several Googlers showing up on the list and participating. This isn’t surprising since many Googlers care about the Open Web and find it a good home for them. Also note that there are plenty of contributors from Yahoo!, Facebook, Sun, IBM, various open source folks, and even Microsoft itself!

One of the values of the OWF is that it is individual based and not company, yet Dare takes the fact that some Googlers like myself are involved and claims that we speak for Google in a certain way.

What about the IETF/insert your favourite group

Dare talks about the IETF, a standards org that many of the folks participating in the OWF admire and participate in! There are plenty of groups out there that have attributes that are fantastic. The IETF is particularly light weight, and there is much to learn there too.

However, as others brought up, why have many of the recent APIs not gone through that body? Why didn’t OpenID/OAuth/oEmbed/… go there?

Dare talks about the IPR side of things, but in fact the editor of the RFC actually has a lot of control, so much so that you can’t always tell where you stand and you have to read the fine print. Many of the standards are done 100% correctly, but not having the rules set clearly at the org level can be a worry.

I also feel like community is a part of it too, and something that people often don’t think about. Why do we have the Dojo Foundation? It may have started out as a way to do open source correctly, according to the values of folks such as Alex Russell and Dylan Schieman, and with a safe correct legal structure. New projects come into Dojo though in a way where there is a match on those values, and as such there is a Dojo community feel. The same can be said for Apache. It has a community.

I personally hope that the Open Web Foundation creates a productive community that revolves around the core values that we are all creating as I type this. There is a reason that this is the Open Web Foundation, and not the Open License Foundation. This is about the Web.

And that is the point Dare. Come join us. I have been so happy to see people that have spent a lot of time in IETF, OASIS, W3C, ISO, JCP, and many more orgs, and have strong opinions on what needs to be done here.

Also, we need to hold off on any praise until we have projects coming through incubation. When we see the projects and the community come to fruition, then we can make more judgments.

Jul 24

License the content that goes with the code; Google Code supports Creative Commons

Google, Open Source, Tech with tags: , , No Comments »

As you can see, you can now attribute the content that goes with your open source project on Google Code.

This is a piece of news that won’t make TechMeme, but I believe it is actually a big deal (even more so than Robert Scoble blogging about blogging).

We often think of opensource projects as code. We think about the licensing of that code, and how important it is. Tell a developer GPL vs. BSD and they know the general rules.

That is great, but few projects only contain code. What about the artifacts? What about documentation, and samples in articles, and screencast movies, and protocols and formats? A good project will clearly define that area too, but the open source licenses don’t fit.

On Google Code, you can now select a content license that fits your project. A small thing, but an important one, as you yet again tell all of the users and developers of the project exactly what the rules are…. explicitly.

Jul 10

Expectations, Higher Standards, Behavioral Economics, and Politics

Google, Politics, Tech 4 Comments »

I have seen a few people a little saddened by some of Obama’s recent moves, especially geeks on the FISA vote, which upset me too. It is wrong. We need new privacy policy.

As I thought about this, I started to think about expectations. By taking the higher ground, and telling us that he will do so, Obama has set himself a higher standard. This relates to me, as I have talked in the past about the higher standard that Google has to live up to thanks to “Don’t be evil” and other such things. As an employee, and a person, I actually like the somewhat constraining higher standards. It means that colleagues can’t take shortcuts, and things can’t sneak by… and if they do? Then we pay for it as a company. Our trust is tied to our business, which is tied to who we say we are.

The same is true for Obama. If McCain does something, sure we can use it as a talking point, but there is more leeway. Ah, he is an old school politician, that stuff just happens. Not with Obama. If he does anything that we don’t agree with, he can get jumped on by many sides. This can be hard as what one person thinks is moral, isn’t the same for another. He has a tough road ahead, but the benefits are that people believe in him and we will come to a new presidency with that Hope that we have been hearing about. With the entire RNC coming after him, the battle is just about to start.

What if he does get in? Those expectations get in too. The tone gets into the office. He could go to Iran and say “let’s put some history behind us and make a change that benefits all of us.” People will be more receptive to change, and boy do we need it. So, even if he isn’t as perfect as some make him out to be, he will have to live up to the image to survive, which means a better, stronger, president of the USA.


I also got to see a fantastic and entertaining talk at Google that is now on YouTube. The talk was by Dan Ariely, an MIT professor working on Behavioural Economics. Really though, it was one of those talks that reminds you that us humans…. we are animals man.

Professor Dan Ariely visits Google’s Mountain View, CA headquarters to discuss his book “Predictably Irrational: The Hidden Forces That Shape Our Decisions.” This event took place on July 1, 2008, as part of the Authors@Google series.

In a series of illuminating, often surprising experiments, MIT behavioral economist Dan Ariely refutes the common assumption that we behave in fundamentally rational ways. Blending everyday experience with groundbreaking research, Ariely explains how expectations, emotions, social norms, and other invisible, seemingly illogical forces skew our reasoning abilities. Not only do we make astonishingly simple mistakes every day, but we make the same types of mistakes, Ariely discovers. We consistently overpay, underestimate, and procrastinate. We fail to understand the profound effects of our emotions on what we want, and we overvalue what we already own. Yet these misguided behaviors are neither random nor senseless. They’re systematic and predictable—making us predictably irrational.

In the talk Dan shows so many cases of how we trick ourselves such as:

  • Spouse: A group was given a questionnaire. Half of the group was asked to write down 10 things you love about your spouse. The other were asked to note just 3. When complete, the next question was about how long you think you will stay married. What is interesting is that the people who were asked to jot 10 things thought they would last a lot shorter than the group who only had to think of 3 because….. thinking of 10 things is hard!
  • Signing: Asking someone to sign “what I am about to do is true” versus “What you just signed is true?” made a huge difference. Dan worked with an insurance, who did A/B testing on a form asking how many miles you drive and there was a drastic difference. It turns out that the majority of people lie, but just a little.
  • Comparisons: Dan saw that The Economist had a purchase page that allowed you to choose between a Web version, print version, or both. The strange thing was that the both and print version were the same 129 pound price. With that comparison people were much more likely to choose ‘both’ than the cheaper Web only version. Take away the choice, and the game changes.

And this leads us to the tie in to politics. He showed that comparisons happen with people too. Showing three photos of “similarly attractive people”, where one of the photos was a slightly uglier version (via Photoshop) meant that people selected the good looking double way more frequently.

With this election we have a young up and coming chap, and an old geezer. If a third candidate came around who was a slightly worse old geezer it would help McCain…. maybe if Nader does well? Or what about running mates, how much of the look will matter there as well as policy?

Watch Dan’s talk. Great stuff.

Jul 07

Flash indexing and SEO; Remember testing?

Adobe, Google, Tech with tags: , , 2 Comments »

Whenever you work on SEO for your Web site or application, what do you have to do? You have to test it. You have to make changes and watch what ends up in the index of search engines. Then you iterate on your task to get the correct and most relevant information in there.

Google announced that we now index SWF with a new algorithm, as does Yahoo!, in cooperation with Adobe.

The new SWF runner can “act like a human” and access elements and see what happens (e.g. click on a button). Immediately people worried that the tester could act like the Google Web Accelerator, and if you have a poorly designed application that had a [DELETE EVERYTHING] button it would get clicked and boom.

Aral Balkan asked if we are indexing too much and others went even further and randomly said don’t build your site in Flash.

The folks who came out saying that “now my internal files aren’t hidden!” are fooling themselves, as you can’t hide things via obscurity. To the real point though, if you are conservative you can use good ole robots.txt to disallow the search engine access to your SWF files.

Then, you can run some tests and see what happens. Just as everything else with SEO, you will need to play the game of seeing what happens as you make changes.

In the end, I want search engines to get a lot smarter at indexing this kind of content (ditto for rich Ajax applications) and we all need to work together to make that happen.

Jul 03

Developer Advocate versus Technical Evangelist; When names change the tone

Google, Tech with tags: , 10 Comments »

St. John the Evangelist

There is a role in the developer team at Google called Developer Advocate, and I consider myself an honorary one of those.

What is interesting, is how the name has had an effect. When the group kicked off, we really didn’t like the term ‘evangelist’. The religious connotation is so strong isn’t it? It also feels like an evangelist is going to run around with his particular religion, and will be trying to persuade you to join, without really listening.

An advocate on the other hand sounds just a touch different. I can advocate something, and part of that will hopefully be heavily listening, and participating in the open community. Of course, these are just words, and you have to make this happen. We could call ourselves evangelists and do a lot of listening, or become advocates and do none. The word choice though does make you think about what you should be doing.

More importantly, in my opinion, is the word developer. Rather than talking just about technology, we are talking about humans who use it. This again makes you feel like you need to be more part of the community, working with developers on their level.

Then you put it together: Developer Advocate and a funny thing happens. What does that mean? At first people think that you are advocating to developers, but it is also very important to think about the other connotation. You think about being an advocate of the developer.

What does this mean? It means that when you are in a meeting with your product group, you are their mouth piece. What do they think of the products? the APIs? What are they asking for? You get to almost be an outsider on the inside.

That is the power of the developer advocate role, and why it can be such a fun one at companies.

Of course, I don’t even need to tell you that we are hiring for this position in the US and elsewhere in the world :)

NOTE: Right after I posted this I saw that Jeremy Z had a post titled Two Tech Jobs: Technology Evangelist and Network Operations