Tuesday, July 15, 2008
Going Multi-modal
Since my last transmission, I've added a Google Maps mode for getting at the tide data. You can enter you zip code, so see what tide station is associated with it. Click on a tide station pushpin, and you'll see a tabular representation of the tide data. It's just a different presentation of the underlying data, the same data that is spoken by the phone interface.
Tuesday, July 1, 2008
Time and Tide Wait for No Man
One last thought, before I put this blog to bed for the night. When you think about it, there aren't many pieces of "news" that one can know with certainty, in advance. As it turns out, tides are predictable, to a great degree of accuracy, especially if you have the historical data.
So that kinda cool. But then you realize, with global warming, tides might be predictable, but they're not immutable. In fact, as we screw up our enviroment, they're one of the first forces of nature to start mutating.
We'll embellish these observations, as time goes on, if this blog survives.
So that kinda cool. But then you realize, with global warming, tides might be predictable, but they're not immutable. In fact, as we screw up our enviroment, they're one of the first forces of nature to start mutating.
We'll embellish these observations, as time goes on, if this blog survives.
Python Ain't Bad
I definitely second the sentiments expressed here.
And I think there's a useful distinction to be made. For years, I've resisted learning Java, but I would argue that that's different from resisting Python. In the case of Java, it seems to me, that you have to buy in to a whole environment, which as far as I can tell, isn't provided by cheap hosting services. So it makes sense to steer clear.
But in the case of Python, it appears to be readily available most everywhere, and requires very little setup. So the only thing getting in the way of trying to learn it, in my case, would be a kind of personal inertia.
Besides, I was just too excited to get a chance to host an app on Google servers to let a little thing like learning a new language get in the way. And, being a Google fan boy and all, I figued that if it was good enough for them, it'd be good enough for me.
I have to say, the learning curve hasn't been so bad. I mean, I'm no Eric Raymond, but I do believe I'm beginning to get the hang of it.
And Python-mode in Emacs goes a long way towards navigating through the dreaded indentation constraints.
And I think there's a useful distinction to be made. For years, I've resisted learning Java, but I would argue that that's different from resisting Python. In the case of Java, it seems to me, that you have to buy in to a whole environment, which as far as I can tell, isn't provided by cheap hosting services. So it makes sense to steer clear.
But in the case of Python, it appears to be readily available most everywhere, and requires very little setup. So the only thing getting in the way of trying to learn it, in my case, would be a kind of personal inertia.
Besides, I was just too excited to get a chance to host an app on Google servers to let a little thing like learning a new language get in the way. And, being a Google fan boy and all, I figued that if it was good enough for them, it'd be good enough for me.
I have to say, the learning curve hasn't been so bad. I mean, I'm no Eric Raymond, but I do believe I'm beginning to get the hang of it.
And Python-mode in Emacs goes a long way towards navigating through the dreaded indentation constraints.
Get That UI Out of the Way!
Interactive Voice Response (IVR) systems have gotten a bad rap. You all know the caricature "Press 1 if you want blah, press 2 if you want blech", ...
So with tidespot.com, I've tried to keep the UI out of the way. The first time you call in, you'll be asked for your zip code, but the value is sticky, so the next time you call, it won't ask. That means that each call will be quick, and snappy.
Of course, you may well want to change the zip code, such as when you travel to some far flung part of the coast. That's why I give you the option to change your zip code, and I offer this choice after you've received your tide info. So in most cases, you can just hang up, without listening to that part.
In fact, I'm thinking, that if I ever decide to branch out and offer more information, such as sunrise, sunset, moonrise, moonset, etc, etc, I might even want to hang those under separate phone numbers. The user would just have each mini-app on a separate speed dial.
So with tidespot.com, I've tried to keep the UI out of the way. The first time you call in, you'll be asked for your zip code, but the value is sticky, so the next time you call, it won't ask. That means that each call will be quick, and snappy.
Of course, you may well want to change the zip code, such as when you travel to some far flung part of the coast. That's why I give you the option to change your zip code, and I offer this choice after you've received your tide info. So in most cases, you can just hang up, without listening to that part.
In fact, I'm thinking, that if I ever decide to branch out and offer more information, such as sunrise, sunset, moonrise, moonset, etc, etc, I might even want to hang those under separate phone numbers. The user would just have each mini-app on a separate speed dial.
Start Simple
I'm all about voice-based applications, and I'm frankly, a Google fan boy. Add in the fact that I live by the coast, and I love to body surf with my family, and venture out in our small outboard motor boat, and it's pretty natural that I came up with the idea of tidespot.com
I wanted to keep it simple, and not rely on any particular mobile device, or set of advanced features. The more I thought about it, and started playing around with the code, the more I was taken with the idea of location-based apps that don't use GPS.
So I hit upon the idea of working from the zip code, which for the purposes of tide reporting, seems to be plenty accurate.
I pass the zip code to Google's geocoder, which give me a latitude and longitude. Armed with this I find the closest match, from a pool of about 260 NOAA tide reporting stations. Then it's just a matter of looking up the tide information in the appropriate table, hosted by NOAA.
I'll make that obligatory observation that this is a work in progress, and it is. I'd love to get your feedback.
I wanted to keep it simple, and not rely on any particular mobile device, or set of advanced features. The more I thought about it, and started playing around with the code, the more I was taken with the idea of location-based apps that don't use GPS.
So I hit upon the idea of working from the zip code, which for the purposes of tide reporting, seems to be plenty accurate.
I pass the zip code to Google's geocoder, which give me a latitude and longitude. Armed with this I find the closest match, from a pool of about 260 NOAA tide reporting stations. Then it's just a matter of looking up the tide information in the appropriate table, hosted by NOAA.
I'll make that obligatory observation that this is a work in progress, and it is. I'd love to get your feedback.
Subscribe to:
Posts (Atom)