Geocoder 0.1.0


#1

Geocoder is a library for Ruby developers and a command-line utility
that helps with converting street addresses (U.S. only for now, I’m
afraid) to geographic coordinate pairs, specifically, latitude &
longitude.

http://rubyforge.org/projects/geocoder/

Read the docs at:

http://geocoder.rubyforge.org/

The library is useful for developers who want to incorporate geocoding
into their Ruby applications; the command-line utility, `geocode’, is
useful for one-offs, shell scripts, and non-Ruby apps.

The library is a wrapper for various geocoding web services. The two
services currently utilized are 1) Yahoo! Maps Geocoding API, and 2)
geocoder.us (looking your way, GMaps!).

CLI example:

$ geocode “1600 pennsylvania ave nw washington dc”
Latitude: 38.8987
Longitude: -77.037223
Address: 1600 PENNSYLVANIA AVE NW
City: WASHINGTON
State: DC
ZIP Code: 20502-0001

-Paul


Paul S.
aim: thaislump
Center for Neighborhood Technology
Technology Director, Wireless Community Networks
Chicago IL, USA


#2

Thank you! I’ve been looking for something like this.

Kent.


#3

Hey Paul,

I’m working on a port of the perl Geo::Coder libraries, so you can
host the tiger line data locally and not rely on any web
services. Results may differ from yahoo maps but should be identical
to geocoder.us. I know I’ve been needing something like this, and I
don’t like using too many web services.

No ETA yet though.

-Jeff


#4

Wayfaring.com thanks you :slight_smile: This appears to be much more flexible
than the system we’re currently using (and it’s not written in Perl!)

-PJ
http://pjhyett.com


#5

Hey I just thought I’d mention that I’m half heartedly porting the Perl
Shapefile library. We might end up with a nice little collection of
GIS libraries for ruby after all :wink:
.adam


#6

Paul,

Will it eventually be able to do the reverse lookup? Lat/Long to street
address?

Ed


#7

Jeff, Do you have a rubyforge project for this?


#8

On 2/9/06, Ed Howland removed_email_address@domain.invalid wrote:

Paul,

Will it eventually be able to do the reverse lookup? Lat/Long to street address?

Ed

Hm, I don’t know of any system, commercial or otherwise, that does
this. Geocoding is a relatively inexact science to begin with (re:
interpolation of street number ala TIGER/Line), I would be surprised
if anyone’s doing this reliably. That said, it could be done if you
massively indexed the lat/lng side and had a best guess algorithm that
used a nearest() function or the like. … To answer your question,
no, no plans to add that functionality to Geocoder.

By the way, I just pushed a 0.1.1 release to Rubyforge: it fixes a
minor issue with the gem, removing the redundant require statement
after require_gem.

http://rubyforge.org/frs/?group_id=1304

-Paul


Paul S.
aim: thaislump
Center for Neighborhood Technology
Technology Director, Wireless Community Networks
Chicago IL, USA


#9

On 2/8/06, Jeffrey M. removed_email_address@domain.invalid wrote:

-Jeff
Hi Jeff,

Let me know how you fare: I’d like Geocoder to provide the flexibility
to use TIGER/Line “offline” if users want it. Perhaps we can
collaborate.

-Paul


Paul S.
mobile: (773) 934-4607
aim: thaislump
Center for Neighborhood Technology
Technology Director, Wireless Community Networks
Chicago IL, USA


#10

I think Yahoo supports Canada, so would the library with the yahoo
option
support Canada?

Thanks,
Nick


#11

Perhaps we should start a rubyforge project and work together on this,
as Dominic suggested. Having a nice set of well coded Geo libraries
in ruby would be AWESOME!

-Jeff


#12

no, no plans to add that functionality to Geocoder.
For my gf’s senior project, she made a device for the blind that
basically did this; you hit a button and it tells you your current
street address (other buttons for nearest landmarks, etc). It’s
written in C, but I’ve been thinking of porting it to ruby just for
fun. The accuracy isn’t any better than TIGER/Line’s accuracy, but
it’s generally usable. Anyhow, it can be done :slight_smile:


#13

On 2/8/06, Paul S. removed_email_address@domain.invalid wrote:

The library is useful for developers who want to incorporate geocoding
into their Ruby applications; the command-line utility, `geocode’, is
useful for one-offs, shell scripts, and non-Ruby apps.

The library is a wrapper for various geocoding web services. The two
services currently utilized are 1) Yahoo! Maps Geocoding API, and 2)
geocoder.us (looking your way, GMaps!).

Cool. I’m getting this error on Win32, though…

E:\Temp>gem install geocoder-0.1.1.gem
Attempting local installation of ‘geocoder-0.1.1.gem’
ERROR: Error installing gem geocoder-0.1.1.gem[.gem]: Invalid
argument - test/mocks/csv?address=2038+damen+ave+chicago+il