Friday, September 30, 2011

Here's a question I get asked a lot: Why does Google do it? Why create things and give them away for free? Why is the Google Maps API free? What does Google get out of Google Earth?

Because it's the right thing to do. The Google Maps API was the world's first monster web mashup platform and is still the most used web API in the world. When we started Google Maps, we thought "Oh great, people can search on maps for directions, and look at satellite imagery." We though we were making a really cool app that people could visit. And we did.

But external developers showed us how it could be used to create mashup, data visualizations that really gave meaning to data. And they could do it without having a geography degree or a certification in GIS software. And they could do it with that then unique slippy map feel that we now expect from Google Maps. So we released the Maps API.

Because we could get sites like HealthMap, or the Ushahidi project. We did it because people wanted to see realestate on maps. We did it because mapping crime alerts was meaningful to people. We did it because people want to share KML files, mark up the earth, and have now created over 1 billion of them. We did it because in a crisis, people can turn to our maps and yours.

Sure, there's a business model behind it, Google makes money on advertising, and the more sites out there, the more people are search. So, yeah. And we do make money from people who want to make the mapsprivate, or offline.

But fundamentally, we do it because it's the right thing to do, we do it because we believe that people want to, that they benefit from using maps as a platform for understanding data.

Saturday, September 24, 2011

I give a lot of talks. I talk to developers, engineers, gis people, students, professors, geologists, NGO workers, and many more. And there's one statement that comes up quite often, a statement people make to me all the time. Usually not engineers or developers, but just about anyone else. It is some variation of:

Oh, I'm just not good with technology.

This statement puzzled me for a long time, even though I think I understand what they are trying to say. The truth is, even the remote stone age tribe that hasn't made contact with the rest of the world uses technology. The light switch you flipped on? Technology. The paper you write on? Technology. The radio, car, dish washer, technology. The fork you eat with. Even the fact that you wear clothes. Technology. Anyone who has played Civilization or some other strategy game with a tech tree knows this.

What they are trying to say is that they are not good with computers. But chances are, they email regularly, post on [insert favorite sns], or use some IM client.

So what do they mean? I'm going guess they mean something like this:

I am intimidated by how much you know about geo/programming/mobile phones etc. And I feel I could never learn that much.

This is a much more reasonable proposition. Still likely untrue, but much more reasonable. I generally find that if I work with them, they can learn a surprising amount in a short period of time. My personal theory is that it is fear of failing more than anything that prevents people from actually being able to do something. Once they get past that, they tend to see how easy something can be, at least at the start. I know there are things I've been scared to try for fear of failing or looking bad. That's natural. I think obsession with certain terms, like "technology" in our cultural make it harder for people to start, create a class of things they don't understand.

I am not saying that everyone can be good at anything, or that some people aren't better at things than others. But one of our jobs as technologists and developers is to make it easier for people to understand what they are already doing, and to learn new things by relating them to things they've already learned. I've taught rudimentary JavaScript programming to people who didn't know what a text editor was, and some of them have gone on to make really amazing maps visualizations, by showing them the basics and relating it to what they already know.

OK related note, some of you have heard this before, but a short story:

A friend of mine, a UNIX systems administrator, told me that he didn't think he was a geek. Oh, he's also a SciFi fan. And I mean he organizes SciFi conventions in his spare time fan. I should say Fan with a capital F. So he says to me, he doesn't think he's a geek.

After a moment of stunned silence on my part, I said "OK. So, let me ask you a question. What's your favorite text editor?"

"Well..." he began and I said "You're a geek." He looked at me and I explained "If your response was anything beyond 'Huh?' or 'You mean like Word?' then you're a geek." He then went on to explain to me why it used to be EMACS because of the capabilities, but was now vi because it existed on any machine he cared about without installing anything extra. My point was made.

Saturday, September 17, 2011

I went to FOSS4G this week, and had a great time. Believe it or not, this was the first time I went to a FOSS4G, and now of course I am hooked.

First let me say that everyone I talked to and every talk I went to really was great. Such a friendly and smart crowd of people. And everyone was working on really interesting problems. I missed several talks because I just got into a conversation with someone and we didn't want to stop!

There were a few things I wanted to call out in particular that I found really compelling.

CartoSet and CartoDB: Awesome early stage project that draws inspiration from Fusion Tables. Nice functionality, great designers working on it. The folks at Vizzuality are doing great work.WebGL Earth: A nice 3D globe written entirely in JavaScript. Especially compelling in the developer release of Chrome. From Petr Klokan, of GDAL2Tiles and MapTiler fame. PostGIS Raster (pg Raster): This year a lot of buzz was around PostGIS Raster, which would as much as possible treat queries on raster data as SQL queries. It is still pretty experimental, but shows a lot of promise, especially attached to the mature PostGIS project. But the other thing that shows is there is a lot of desire for treating rasters as data, not just overlays. Of course, we believe that at Google, which is why we're working on Google Earth Engine. But I'm also glad to see so much desire for it in the FOSS community.