APS9: One Map to Rule Them All

Chad Killingsworth 
Assistant Director of Web & New Media, Missouri State University


The audio for this podcast can be downloaded at


Chad Killingsworth: All right.

So, maps are fun. Let me rephrase: well-designed maps are fun. People really enjoy playing with them and interacting with them. And when they're well-designed, their usefulness is only part of their appeal. The trick is presenting the user with just enough information--what they want to find--and just enough more to keep them playing.

For a developer, though, maps are often overwhelming and underappreciated. They are a ton of work. But it doesn't really have to be that way. Given the right map, it can be both easy to maintain and get you a stack of kudos this high, and I'm not kidding.

Even with the right map, it can be a recruitment source. Now, I didn't just say "tool". Source.

 01:03

This last week I had a salesman in my office, and he was telling me that his son was getting ready to go to school and was trying to decide between Missouri State and one of our competing institutions. And he said, "I'm trying to get him to go to Missouri State because I know about your map, and if you've got a map that's that cool, you must be doing a lot of other things right."

And I thought that was a really big testament to just how something like this can be used and can be such a reflection on university.

All right. But before we can really talk about maps, users have a really, really low tolerance for maps that are out of date. They want yesterday's events to be shown on today's maps.

You know what else they have a low tolerance for? A map they can't really interact with.

Think about if you'd showed up for this conference and you'd driven here and you'd parked four blocks or so away, and you realized you forgot your directions from how to get to the parking garage to the hotel. So you will put up the conference website and you'll see, "Oh, look! They've linked a map." But when they've linked the map, it's a PDF. That's what your visitor in the parking lot feels like.

 02:18

The other thing is, if you overload them with information, or don't give them what they're looking for at all. There's this huge balance. Or if you tried to brand your map so much that you reinvent the whole user interface design, they don't know how to use it. Zero tolerance for that.

Here is an example of too much information. This is a printable map from an actual institution. Names are hidden to protect the guilty. Every road, every building, whether it's university-owned or not, every sidewalk, all their landscaping: you don't need that.

 03:06

You want your buildings, your buildings, on there, major streets, and probably your major parking lots de-emphasized. That's it. Don't overload them. Just because you have the information doesn't mean they need it.

There's really only one response to this map.

Video 1: You chose...poorly.

[Laughter]

Chad Killingsworth: The other one is, don't reinvent the wheel. We all know how to use Google Maps. When you see a Google map, you expect the controls to be on the right, the map tops to be in the top right. You know how to use them. You expect when you double-click it, it's a zoom. Don't change those things. Just because you can doesn't mean you should.

Maps are not fun if they require a manual.

 04:05

There are plenty of ways you can customize your map that have nothing to do with the default controls. One of the things to keep in mind is, your maps, whether printed or online, should be a family of publications and should match.

Now, for some of you, because I used to be in this position, you have 12 different maps maintained by 12 different offices.

Last year at HighEdWeb 2009, Joel Herron from University of Wisconsin did a great presentation on the process to go through your institution to get all your maps combined into one. If you're not there, I recommend you go listen to his presentation last year. It's online. Great presentation.

We're going to assume that you've already done that for the rest of this, but know one caveat: if you have to go through that process, expect to be the person that either is the owner of the maps or at least coordinates the whole process. It just kind of comes with the territory.

 05:06

All right. Customizing your map.

Video 2: We do not follow maps to buried treasure and 'X' never, ever marks the spot.

Chad Killingsworth: The easiest way to customize your map is with markers. It really sets your maps apart without doing that much work.

Here's a few examples from my map. My buildings in search markers are at the top. They look a lot like the Google Maps' default markers. Basically I re-colored them, we tweaked the shape just a little bit. But it's not a brand-new paradigm. People get it.

Our shuttle bus stops. We have a multi-route shuttle system on campus. Our signage at the street that says, "This is a bus stop" looks like that. Our print map used to use the icon, but when we started putting in the exact print icon online, their border was a lot wider, the bus was bigger and fatter, and it just at a smaller scale didn't look right. So our designer tweaked it. But then we sent it back to the print shop and they replaced that on the printed maps.

 06:05

The same thing, we have a bike route system on campus and we have a biking map. And they had just used little square blocks to indicate bike racks. Well, I didn't really want to legend; I just wanted people to know what we were talking about. So my designer came up with the bike rack icon. Again, we sent that back to the print shop and now they use that to indicate bike racks.

So we just try to keep everything in synch, and because we all work as a team together on this, everyone's open to having these discussions.

When we're talking about online maps, we're really talking about the Google Maps API. There are others, and you can use them. I'm not talking about them.

There's two different versions. And I don't want to get too technical, but you do need to know just a little bit. Version 2 is what 90% of people are used to. It was released in 2005 and it was never, ever designed to work on a mobile device. They didn't even really think about that.

 07:09

They measured how long it takes for them to parse the JavaScript file for the main maps' API for Version 2 at four seconds on the iPhone 3G. That's not how long it takes to load your map. That's how long it takes to parse the JavaScript, in which case your phone is locked up and you can't do squat. It took 17 to 19 seconds just to load the initial tiles. That's none of your markers or customizations. That's totally, totally unacceptable.

So they redesigned, and now they have the Version 3 API, which is what we're going to talk about for the rest of today. Just so you know, Version 3 API has become the official API. Version 2 is deprecated. If you have a Version 2 map, you get three years to fix it. They guarantee you three years on Version 2.

Will probably be around longer than that, but just so you know, it's not as simple as switching a version number. They changed the API. So you kind of have to redo. A lot of the same ideas work, but it's different JavaScript.

 08:09

So this was released this May, but there's a lot of support behind this. It does not have as many features as Version 2 right now. But it is designed to work on mobile devices from the get-go.

If you remember nothing other than "Maps are fun" from here, I want you to remember KML layers. KML is just an XML document. But it lets you, with very little coding, maintain this really cool map.

Let me show you an example. Here's my map. The buildings that are overlain...when my web connection is not timed out. Hold on just a sec. Didn't work. There we go.

 09:10

So the buildings that are overlaid are my KML file that I will go put on there. One of the coolest things people love is that functionality--to be able to click your building. All right. If you're coding that by hand, it's a real pain in the butt. KML does it all for you.

So, a KML file is pretty simple. It looks something like this. Really just an XML document. How to create it? Load up Google Earth. This is one of my campus buildings. Sorry, I did not have high-res satellite data. You're going to have to deal with this.

So you're going to go up here and choose the polygon icon. And you're going to type in the building name. And you're going to put the description. And you're going to set a style and a color.

 10:05

I want you guys to be able to see this. I'm going to do something obnoxious.

All right. So here's the trick. You've got to move this one out of the way and leave it open. But then I'm going to go down and literally just click the edges of the building. I'm not going to do a real good job, so... But you can come back and get the idea.

Chad Killingsworth: There we go. OK. Here it is. There's my pop-up.

Now here's the cool part. Edit, copy. Favorite XML editor. Edit, paste. Voila.

 11:09

Now, just like WYSIWYG HTML editors, this does not necessarily do the KML that you exactly want. The part you do want is the place mark. That defines your building.

And you'll notice it references a style URL. Well, this is the part you don't want. It does a unique style for every building you put on there. At the top of the file is a style map. And there is the one it was referencing, one of those two.

So you just get one style that you want and then you make all your place marks reference that style. But that's the only other changes. You just copy and paste and make one big KML document. Your KML document, the description for the pop-up, can contain HTML.

 12:00

So right here, this description. I can put P tags in there. I can put links in there. I can reference absolute images in there. All of that. Works great. You just have a flat file to maintain.

All right. How do you use that? Here's the JavaScript. This is the Version 3 API script tag at the top for maps. And I have an initialized function that creates a map, sets the center to zoom level, and tells that I want the road map. And then down here is the KML.

Now here's the trick. KML works by the Google servers come out to your web server and grab your KML file. They draw it all in memory, chop it up into nice little image tiles, and send it back to the client. That means the Google servers have to be able to see your KML file. Don't try to do this on your desktop. It just won't work.

Now you can do with the whole web page on your desktop. You just have to put the KML file somewhere public. And it has to be an absolute URL.

 13:04

So I just specified the URL for the KML file and the fact that I want it to preserve my view fort. So when I load the KML file, I don't want it to automatically zoom the map to set the dimensions of the KML. And I want info windows to open. You can turn them off.

When you do that, what you're going to get... I have that open? So this is that file I just created. It's using my KML file from campus. And there it is. That was the entire page. There's nothing else. And you click the building, and you get the pop-up.

That's all you have to do. Makes a great, nice interface. You get a lot just by that. That's the number 1 usability thing people like.

Maps do no good when they're back on your desktop. You want your map where you are, and you need it when you need it. You don't want to have to plan ahead. Turns out, people use maps on their phones.

 14:01

This is data from this last spring for the iPhone and it shows the usage of apps. Google Maps, third-most used app on an iPhone. Similar data--actually, I think it's one higher on the Android. People use them all.

So it's definitely worth your time to develop a map interface for a mobile device. Developing for a mobile device goes something like this.

Video 3: Phenomenal cosmic power!

Video 4: Itty-bitty...

[Laughter]

Chad Killingsworth: Screen size is definitely an issue.

Before the Version 3 API, every phone, every device you want to use had their own STK you had to deal with as a developer. I do not have that much time.

Now, with maps API Version 3, the same JavaScript, the same KML can be used on iPhone, Android and all your desktop browsers.

 15:03

By the way, that is the limit of what is officially supported by the V3 API. So Windows Mobile. I have hopes for Windows Phone 7, but I haven't heard any official word from the maps team yet on that. Opera Mobile is definitely not officially supported. You can get it to work, but you don't get dragging, you don't get any touch events.

So you're basically talking about Android and iPhones. However, think about who uses your map and how many of them you're going to get just from those two.

When you're developing a mobile map, so much of it centers around your UI. You want it to rotate properly. You want your branding and required footer information to be as small as possible. You want as much of that screen real estate for your map.

You want any feature or special controls that you develop, maybe do something really cool and have different overlays that turn on and off or can search the map. You want those to by default be small and only be active when the user does something.

 16:07

Also remember that don't reinvent the wheel. Look at other paradigms. Look at the default maps applications. Look at other people's maps. Steal it. That's what you want. Make it familiar to the user.

As a starting point, as part of this presentation--and it should be posted online now--I referenced a mobile map template I developed. It's actually an official article now on the Version 3 API articles.

So it's a starting point that does all of the best practices. It has a header and a footer, the map that takes the full screen in between, handles device rotation, loads a KML file, and shows you geolocation. You can have all of that as default.

Start from there, have some basic CSS to go with. Start there, customize it for you. Works well on all of the devices. It's been tested. It's even a great starting point. I do some best practices things in there like HTML5 Cache Manifest files. That's an advanced topic, but that optimization alone will double the speed of your map.

 17:11

When you're developing these KML files, there are a lot of tedious work. Don't forget, you have a student workforce.

This is a lot of details, but it's not highly technical. I gave the entire project to one of my students. On his own, he called the campus architect office and they just happened to give him, which I couldn't believe, all of the Google SketchUp files that they use for the visioning plan, which had all of our buildings as made from CAD drawings.

Those were way too complicated to use directly on a Google map, but what we did was place those on Google Earth and use those to draw around, and that worked phenomenally.

And so he did all that. He developed the full KML file, tested it, and then I just took his KML file and put it into the map.

 18:01

Audience 1: Do one of your architectural roots actually have KML already?

Chad Killingsworth: They might have KML if they, for some reason, are demonstrating in Google Earth. I wouldn't expect that. Yours does? You're lucky. Your best bet would be to get a SketchUp file. If not that, if you can get basic building data, it helps.

Otherwise you can do exactly what I just did and just draw over the satellite data. Hey, it doesn't have to be accurate to the foot. As long as it gets the general idea and shows the shape of the building, that's all people need.

So you get this mobile map developed, and you put it out there as a web page. Any ideas what the first question you're going to be asked is?

Chad Killingsworth: Guaranteed.

Now I know I just told you the same code runs on everything and I don't want to develop applications. I don't have time for that, plus I'm a web developer. Here's the thing: you don't really have to do much in the terms of the application.

 19:04

Plus, users use it this way. And I'll talk a little bit more about that in a second. But let me promise you: if you're willing to do this work...

Video 5: If you build it, he will come.

Chad Killingsworth: All right. This is my Google Analytics from my mobile map for a month. Top line. The blue line, of course, is total traffic. The bottom orange line is how many people open my mobile map in their web browser. That is disappointingly small.

This green line is how many people use my mobile map within the application in the iPhone app store. It's totally worth your effort to do this. Plus, you might get news coverage from it.

 20:05

Map apps have been around for a long time, but some reason they loved to run stories on it. I was shocked when they were like, "You're releasing on iPhone now?" "Well, yeah." I mean, it happens.

[Laughter]

Chad Killingsworth: How do you do this without a ton of work? Concept called a 'hybrid application'. If you were a developer, this kind of feels like cheating? Get over it.

[Laughter]

Chad Killingsworth: If you're not a developer, good news. You can do this. Here's what you do. You write a basic application for the iPhone and for Android. And by basic, I mean 'Hello, world'. And by the way, I've referenced articles that tell you step-by-step how to do it, and they're not pages and pages long. They're pretty short, actually.

In that basic application, you put an embedded web browser. Not very many lines of code to do this. You point that web browser at your mobile map. You're done.

 21:08

It will literally take you longer to get approved as an iPhone developer than to write the application. I promise you.

There's really only one response to this.

Video 6: Behold, Arthur. This is the Holy Grail. Look well, Arthur, for it is your sacred task to seek this grail. That is your purpose, Arthur. The quest for the Holy Grail.

Chad Killingsworth: I love making Shelly laugh.

Your map. To be able to write one map, one data set, one XML file, and for it to work in all of these places, it's amazing. It's amazing how much that you used. Mine used all the time.

 22:00

Just an example of where you can go with this. Here's my map again. I have different KML files for each layer and I just let them toggle them on and off. There's the parking lots. We use color-coded permits. They love that.

There's the bike routes and the bike rack icons. We're becoming a bigger and bigger biking community. They love to know where they can park their bike. I use it too.

Here's the one that gets us the most. That's our shuttle routes and the live positions of where our shuttles are. That's a little bit more work. The routes themselves are just the KML files, so are the map icons. The actual shuttles have a GPS device in them that pings our server, and then we reload the location every 10 seconds. That gets used all the time.

Another feature, more of an advanced feature that people just love to do. Imagine that. People like to search.

 23:02

Visitor parking lot. They use this a lot, too. I also allow, again, more than basic maps. You know you love on Google Maps to be able to send people direct link to information. That's worth your effort to program, too, although it doesn't come by default. You actually have to do the programming to do it. But that's totally worth it.

Keep in mind when you're developing a mobile map--for the desktop it's a good practice, too--you're doing a JavaScript-heavy site. Just because you've got the map on there, try not to add extra to it that you didn't control. If you can help it, don't put jQuery on the page. It works. It works just fine. You just have them download that too. So avoid that.

Compress your JavaScript. When you're done writing, go to the one on the online compressors, paste your code in, take the output, save it. As a different file name preferably. [Laughter] But that makes a big time.

 24:04

Remember when I talked about the iPhone? The size of your uncompressed JavaScript is directly related to how long it takes to parse. Not really how complex it was, just the size. So renaming those variables actually makes a difference more than just download time.

HTML5 local storage. I've got a blog post all about that and some other mobile maps' optimizations--some cool things you can do like loading images and, when you bookmark your site on the home screen, how to do the icon. I've got a whole blog article just on those types of things. Totally worth it. Not real difficult. It takes a little bit of work, but once you're done, makes a huge difference on return visits.

And as with any of your pages, if you use something like Google Page Speed, which is an add-on for Firebug, it will really help you optimize your site. It will say, "Hey, look!" If you put cache headers on these images on your web server, just send it to your server and then tell them to do it. If you have one, then it makes a huge difference. People don't re-download it. 

 25:10

I'm trying to rush through this so we have plenty of time for questions. And I'll cover a wide variety of topics that people want. I do want to leave you with one final thought about this session.

Video 7: You have chosen wisely.

Chad Killingsworth: That's my presentation URL. It should be live right now. If not, it will be shortly afterwards. Obviously, Wordpress published it on the schedule.

My email address and my twitter handle.

The best resource you're going to have when developing a map, though, is not me but the Google Maps group. Let me give you a couple rules for dealing with that group. And I feel confident giving you because I'm one of the most frequent posters there, and chances are I might even answer your question there if you ask one there.

 26:03

Please, please, please make an attempt first before you ask the question. Don't ask us to do it for you. When you do it, link what you've tried to date, even if it doesn't work. They're really good about saying, "You missed a comma there."

And they're not going to make fun of you. They will literally help you, sometimes within five minutes of posting it. So please, please, please link your map when you ask the question. Even if you're not really asking a question but making a statement, link your map. If that sounds like a broken record it's because I've made the post a thousand times.

And just be ready to interact, and then be ready to help others. And also, you may have this really complicated map with one little problem. It really, really helps if you'll simplify everything down to just the map and the exact problem you're having before you make the post. Makes our jobs a lot easier when we go look in it. If you can get it to the simplest case that still has the issue, then we can say, "Oh, that's where it is," and then you can go put it back in your full complex site.

 27:02

All right. This is APS9 for your evals. Questions. Yes.

Audience 2: [27:08 Unintelligible]

Chad Killingsworth: Our network's great. Our map partner for our parking shuttle and shuttle maps is Safety and Transportation on campus. I have a different one for the buildings. That's the campus architect. But, yes, we deal with a lot of different offices and they are great resources and they love working with us on it. In fact, they let me bill them for updates.

Audience 4: Yes. I think specifically how you used multiple KML files and how you did the layers and all that maps, did you just load mutliples...?

Chad Killingsworth: You can just load multiples. You can just do KML layer, KML layer, KML layer.

 28:01

Here's the really cool fact: when you use KML layers like that, it doesn't matter how many you use or how much data on them; it does not increase the latency or the complexity of your map to the client. It's amazing.

So, you can have a million markers on your KML. Actually, I don't think quite that many. There is a limit. It's pretty high, though. It's like 25,000 or something like that. I'd have to go look. You can have an insane amount of data in your KML file, load that in there, and it doesn't matter how many layers--it combines them all onto one image tile layer.

It only sends the image tile to the clients. When they click, it sends the coordinates they clicked back to Google servers. Google does the mapping. It says, "Oh, they actually clicked on a feature. Here's the data for the info window," and sends it back. You don't load all the data right away. They did a fabulous, fabulous job with that.

Audience 5: [28:56 Unintelligible]

Chad Killingsworth: Tab info windows? There are utility libraries that do.

 29:02

The utility library for the Maps V3 is kind of hard to find. If you just do a search on it, you'll find it. It's not directly linked. I've talked to them about fixing that.

They're not going to support everything you saw on the V2 in V3. They'd much rather you get a third party. Or some of the libraries are written by Google employees, but they'd much rather you add a separate library to do things like tab info windows than to load all that for a default for sites that don't use that.

Marker clustering--I don't know if you saw the attendee map that got sent out that showed that. That marker clustering is in the utility library. That literally took me 30 minutes from start to finish to do. That's another great one. There's all kinds of add-ons to the API that do things like that.

Yes.

Audience 6: [29:48 Unintelligible]

Chad Killingsworth: I do not. On mobile, it's a different paradigm. You want to see what it looks like?

 30:01

It's all down here at the bottom. Remember when I said, "Use as much real estate?" So now if you want to search exactly the same feature set, if you want to search, you just do this and type. The difference is, instead of showing the list of search results, I show more markers, and then they can click on it.

Same concept. Those are all my KML layers. And some of the things like bikes, which aren't used as much, are under there.

Yes.

Audience 7: All your push pins, like the metered-part and all that stuff, is that on one KML layer of just all push pins? Or how was it searching through all the...?

Chad Killingsworth: Searching is up to you to do. That's difficult. I've actually thought about doing a future workshop just on how to do that. I actually use my pins. My markers are actually one image file.

 31:00

V3 API uses sprites by default. It assumes if you just give it an image that it's a sprite of one icon, but if you specify the coordinates, it will shift the image for you. It's amazing at that.

Searching, though, I have a Google Mini index, all of my buildings, and I search the Google Mini, and then reference the ID. I wish there was a better way to search when you have a KML file, but there's not. It's worth your time, though. People use it a lot.

I put in things like our building codes, which are referenced on our class schedule. People don't need to memorize what those are, so I want to be able to search by those as well.

Other questions? Yes.

Audience 8: Have you ever seen this used for when you're finding the internal dating?

Chad Killingsworth: Yes. If you download the Google I/O application--if you have an Android phone only--the Google I/O application for this last year's conference, they put their floor plans for the building and you could turn on and off which floor you want, and then they put what was on each track.

 32:12

I wanted to do that here. I'm getting married in six weeks and just didn't have the time.

[Laughter]

Chad Killingsworth: But, yes, you can definitely do that.

Here's the thing: GPS within a building just doesn't work very accurately. Don't depend on that. Geolocation for other places. I'm almost afraid to click that. Where did they put this? It's using WiFi, so... Amazing. But GPS just doesn't work within buildings. Here they're using my IP address to get it, but you get the idea.

The GPS code, by the way, which is in the template, and the template looks like this. Header, footer, that's all you get. It's going to by default load it in a KML file as well. All the JavaScript for that, all the CSS, that's referenced in my presentation on the blog post associated with it. You really, really use that as a starting point. I've done a lot of the work.

 33:15

Doing device rotation without using JavaScript--I'm doing it all with CSS--was amazing. I even gave the code back to the Google guys and they loved it.

Any other questions? Yes.

Audience 9: [33:27 Unintelligible]

Chad Killingsworth: Do you have a good map data set to start from as far as do you have all your maps combined and good cooperation? How many buildings, guess? Oh, wow. You can do it less than a week.

If you give it to a student--I just went online and found some Google Earth videos on how to create a KML file. I showed my student that, showed him an example of one that I wanted to do, told him, "Spend time get it all lined up square looking nice," and he did almost a hundred buildings in three weeks...at less than 20 hours a week.

 34:11

That was all his doing, but, I mean, it's really not that big of a deal. Putting the descriptions, getting all the descriptions the way you want it, it make take you a little bit more.

If you've got a small data set, just do a straight KML file. If you've got a larger data set and actually have all your information in the database, like I do--I actually store this in a database and generate the KML on the fly. Really easy technique, but I can still maintain all my stuff in the database, which is also what my Google Mini searches against. So, one data set, that's another way to do it. Still use KML.

Other questions? Yes.

Audience 10: [34:49 Unintelligible]

 35:02

Chad Killingsworth: No. In fact, my student did it. We had a multi-year project to get all of our maps between all of our different offices combined. The print shop actually maintains it. Safety and Transportation still owns the parking layer, but they give all the changes, and the changes are actually made at the print shop in one illustrator file with multiple layers, and then we just use that layer to print which map we want.

And so we did a multi-year project to get all of that combined. And that took a lot of time. But once you have that and once they use the same map and just turn it on and off--"I want to show the trees. I don't want to show the landscaping," things like that--then, once we have that, everyone knows the process, and it was really easy.

Like I said, my student, without even asking me, called the architect and went and got all those files. And I was like, "Holy cow, I can't believe that worked." But they're really tight with their data. But, yeah, they just gave it to him and we've had great cooperation.

And then I do a favor when I make major changes or roll out a new interface. This interface was rolled out Friday. Oh, sorry, the main map one was rolled out Friday. I email it back to people like the architect's office and say, "Hey, here's what we're doing now."

 36:11

And they'll ask me for specific things, and I'll try to always be cognizant of that. But as long as we approach it as a team environment, yeah, we get great support for it.

Other questions? Yes.

Audience 11: Early on when you're in Google Earth making polygon and all that, you're copying the...

Chad Killingsworth: You copy the place mark...

Audience 11: Place mark out?

Chad Killingsworth: ...to a text editor.

Audience 11: Could you put all the polygons on at one point and then save it as a KML? Is it just a messier code than the KML?

Chad Killingsworth: I don't know if you could or not. I've never tried. I always do one building at a time. You can get copy and paste errors. And when I'm changing... If we actually look at my KML file... Let's see if I can bring it up by memory.

 37:11

If we actually look at my KML file, right down here, this placemarks a building which we copied out of Google Earth. Up here at the top is my style. And so what I did, since I wanted all of my buildings to have the same style and I didn't want to go through and change every one, so then that's why I was doing the copying and pasting, and so all I did when I copied it out--and by the way there you can see all the description with the HTML. When I copied it out, all I did was change this style URL to reference the one at the top.

That was great when I did my parking lots, too, because my boss actually this week came in and said, "Hey, your red looks a little pink. Can we change it?" And so I just have one area and we just played around and tweaked it.

KML... When you get looking at things like color, by the way, it's a little bit of a different beast. For instance, they use RGBA for color so you have an alpha channel, but it's really AGBR. Everything is reversed.

 38:06

So, you're in Photoshop, and then you have to flip all the numbers. It's a lot of just playing around and stuff like that, but there's great references for it. And, again, it's just an XML document.

We put all of the address information in here. This is not used by my map. I actually haven't sent this. They haven't processed it yet to Google to be able to put my building outlines on the base map. Supposedly they'll take it. It just takes them a while to get to it. I'm not one of the lucky institutions who had them do it for me. Or maybe I am one of the lucky ones in that I can do my own.

Audience 12: [38:41 Unintelligible]

 39:03

Chad Killingsworth: Yeah. When you're doing directions within private roads, it is difficult, and there's not a good answer to that.

If you go to maps.google.com now--this happened last November and I don't know if you've seen that--they're really responsive to this. If you right-click, report a problem. If you ask them for changes, I've had to make it within a month.

So I've had them remove and add things within a month. I would go report my roads. They have some of my private roads on there. You can also expect to wait a long time, like over a year. You can also request, and they will bring this Google streetcar and trike to your campus and map the interior.

I've been on the list eight years. Michael Hostad, who's on the conference committee, he actually has to leave tomorrow because they're coming to his campus on Thursday. They had put theirs on the list a year ago.

 40:02

But they'll actually do that, and so that might help with that problem as well. Not a short-term answer, though.

Audience 13: Do you have yours? Did you say engineers...?

Chad Killingsworth: I'm on the list.

Audience 13: Well, I have them on my campus and they told me it's going to be four to six months. It's about seven months now and my contact, apparently is either died, fired or something. I just got a new contact where I getting in new here. It's just difficult to do here.

Chad Killingsworth: Right. Yep. You're in the list. And I actually gave them the contact of our grounds department, and I told the guy, I was like, "When they call you, you do not have the option to say, 'This is a bad time.' You will say, 'Yes, we'll be ready for you.'" I said, "And then you'll hang up and call me."

[Laughter]

Yeah. Just be prepared. They're doing you a huge favor.

 41:01

Here's a side note which I didn't mention. With Version 3, you can do custom street view panoramas. OK. Wheels start turning. Think about your virtual tour. You could do the whole thing in street view. They'll even let you do your own custom arrows and directions and pointing at things. You can do entire building tours. They've got a great example code on how to do that.

Another great student project, by the way. They love stuff like that.

Any other questions? All right. Thank you guys very much.

[Applause]