Tuesday, February 10, 2009

Trip to Yosemite


I missed this trip, but got to live vicariously through my friends' post


myGeoDiary


I love this widget that displays my geo content all in one tidy package. This is a widget version of my geoBlog I keep on www.mygeodiary.com. My geoDiary is actually quite a lot larger than this, but these are the only pages that I've published. Very cool. I think of it as a GeoCMS system that I can use to publish bike rides, hikes, road trips. I'm also using myGeoDiary to publish geoRSS feeds too which is a cool because my biking buddies and I can follow each other's riding feeds.

Wednesday, November 5, 2008

Bouncy Map Markers

I like the bouncy icons that gmaps has on the google maps site. If you want this in your own application though, it isn't the easiest thing to accomplish. I first tried the obvious loop, then the loop with a delay built in but that's just not going to work and the Gmaps API has some unnatural ability to filter out a series of small moves meant to animate the bounce of the marker if they are very close to each other.

What I finally tried and seems to have worked, was to use a call to move the marker wrapped in closure called by a setTimeout(). The following code is a template that you can use to implemented bouncy markers in your application.


var bounceInProgress = false;
var myMap; // this has been set prior to call

function bounceMarker(marker)
{
if (! bounceInProgress)
{
var point =
myMap.fromLatLngToContainerPixel(marker.getLatLng());

bounceInProgress = true;
myMap.disableDoubleClickZoom();
myMap.disableDragging();
bounceMarkerMove(marker, point, -10, -1);
}
}

function bounceMarkerMove(marker, point, i, direction)
{
if (i <= 10)
{
direction = (i == 0) ? 0 : direction = i/Math.abs(i);
point.y += direction;

marker.setLatLng(myMap.fromContainerPixelToLatLng(point));
markerNextMove = function () { bounceMarkerMove(marker,
point,
i + 1,
direction); };
setTimeout("markerNextMove()", 15);
}
else
{
myMap.enableDoubleClickZoom();
myMap.enableDragging();
bounceInProgress = false;
}
}

To see this template in action, check out this page, http://www.abaq.us/geo/pub/glog/john there you will see bouncy icons on the map. Select another map from the list that has a marker if the default map doesn't have one, and click it to see the marker bounce. Check out the code of the page to see it implemented in situ. I've also implemented it in the GWT as well.

Wednesday, June 11, 2008

Better Geologgers Coming Soon

I've been keeping a personal GeoDiary of places I've been, my workouts, drives I want to remember, hikes I've taken. To do this I've been using a Garmin Forerunner and a Sony CS1 (CS for CyberShot) Both do the same thing for me, though the Garmin allows me a greater degree of control and the Sony has way better battery life and batteries are changeable. I've also tried software for my iPhone which is kind of a really good looking disaster of an application, since a phone call or any touch of a button kills the application.


All of these devices though don't do what I really want to do which is turn on a logger and leave it on and then let me decide later what I want to keep or throw away. The active GPS is great but it's a power hog and the devices are not so convenient.


Recently there are two solutions I've seen that seem to be tending in the right direction.


The first is a BlackBerry logger which you can just turn on. It's Achilles heel though is still battery life, though I hear the newer BB's are really good at managing GPS power it won't do what I want which is continuous logging, at least for now.


The second is I think the more revolutionary idea, passive GPS by a company called Geotate. They have new way of looking at the problem. I should disclose that they gave me a prototype to use. No apologies here, this thing ROCKS. I can turn this device on and just leave it going, it charges on the USB port I use to download data and will run for a long long time. Did I mention how small this thing is? Like the size of a match box They tell me there goal is to run for month, now that's cool. Set it and forget it. This is the future of GPS recording

Tuesday, June 10, 2008

Losing Sleep Over Ads on Google Maps?

Let's say you have a website that relies on the Google maps API. Your application is freely available so you don't had to worry about licensing terms (yet), but Google lately has been making some noise about monetizing the maps asset.
  • Should you be developing a plan to replace the Gmaps API?
For most websites the answer is no, or at most a conditional
maybe. Why is this?
  • The grass is not going to be greener on the other map - as soon as google puts ads on maps Yahoo and Microsoft will soon follow suite, not wanting to cede any more ground to Google's already large lead in the advertising race. So moving to one of the other platforms could be a fools run. Spend a bunch of money on moving to another mapping platform only to find that the other platform ain't much better than the one you'e on.

  • Google isn't stupid - Only Google knows what their plans really are, but a lot is at stake here. There are something like 150,000 sites using the Google Maps API. This has got to account for a big chunk of the traffic being driven to their site. Why risk pissing off 150,000 partners who already have links pointing right back to Google? It's very likely that the current model is sustainable as is, so why not keep the pressure on your competitors and figure out a way to monetize that is user and partner friendly?

  • The map makers and servers can be crowd sourced out of business - There is another solution down the road that isn't spoken about much. It is Open Street Map (OSM) and a new company has just been funded to make that reality happen (Cloud Made), but the OSM content isn't there yet. What Google, Yahoo and Microsoft don't want to do is have an OSM based WikiMap generated that disintermediates them. Definitely not going to happen for years, but why make it happen sooner?

  • Worst case, it won't cost that much to get rid of ads - if ads do materialize, we know that Google (and others) will likely provide licensing terms to allow you to 'control ads'. So, if you really hate the ads and your site makes money, you can pay to control them. These enterprise terms aren't really that well firmed up yet though. They seem to change month to month, but that's just an indication that Google itself is trying to evolve the best business model
Worrying about this much? Don't. Figure out what makes your customers happier and use the mapping platform that gets you there.

Friday, May 2, 2008

Unicycling Madman

Ok, so I'm on my lunch ride, more like 5pm or so by the time I got out, but I digress, when I see this guy heading up the creek trail on a giant unicycle. So I whip the trusty iPhone out of my back jersey pocket, remove it from it's safety zip lock bag (I sweat *and* it's dusty) and click off a couple of photos while we ride (2 pushpins @ the end of N. Santa Cruz).

I'm impressed, I really doubt he rides up the two 10%+ grade sections a mile ahead of us, but I didn't stick around to find out either. A sight to see, which you can as I've attached a couple of photos and info about the ride in the map below.


View Larger Map

FYI - I use the myGeoDiary service from www.mygeodiary.com & my personal page is www.mygeodiary.com/geo/pub/glog/john