44 comments

[ 4.0 ms ] story [ 99.7 ms ] thread
I just found out about a new cafe near me. Funny!
Yes. You should be able to find all sorts of stuff. Whilst right now it mainly collects from foursquare tips and geolocated tweets it can also permanently store tweets marked #geosay on geosay.com There is also an iphone/android mobile version that kicks in if you browse using one of those devices.
I should have also said that you need to tweet from a client that posts your geo lat/lon
I discovered a café near me that apparently does really good "smoked salmon and cream chess bagels". I would love that to be true.
It is pretty interesting to read what people have to say about their apartment buildings (mine, and those around me) - I live in Manhattan.
I think it is super interesting because I doubt those buildings would end up on foursquare. We want this to become a place for local information that doesn't have to be bar or restaurant focussed.
I clicked on it, after approving the use of my location, I see a totally empty map of the approximate area that I live in... am I missing something? I tried search and it said it couldn't find the location, not sure what I was supposed to put in the search bar (an address? search term?)
It should just be a location. What browser are you using? What was your search term(s)?
I didn't know what to search for so I searched for "bars" assuming I was searching for bars around me... didn't realize it should be a location.
There is also a link in the bottom left to "search here" (admittedly, maybe not the best UI)
Once I clicked search here it made sense, I would automatically search based on the location even on the desktop.. then I can always change the location if its not right.
One thing we weren't sure of was whether to automatically populate the map when you arrive. So by default it will just try to locate you (on the desktop edition) then you need to actually search. Do you think it would be better to auto load your local data?
Yes. Or say (on the main page) that you should search for (whatever it is you call search results). If you autopopulate the map, I'd consider renaming that field "filter".

I also don't know what to search for. I typed "test" and it moved me to some result in New Mexico (several states west of where I am right now). I'd strongly recommend including some example searches that will consistently bring up good results.

If you try it on your iphone or android it will automatically get the local data.
Pretty nice app. Reminds me of Buzz

1) When I drag the map, it didn't follow me with chatter 2) You should link your logo (what's with the "done" button?) 3) On google maps, when you click on a marker, it highlights the sidebar, maybe you should do that? 4) Might as well add a get directions button? 5) How about the little yellow guy?

Cool stuff.

Thanks for the suggestions.

1) Agreed - we should make it do that (there are reasons that it is a little tricky - but not insurmountable)

2) Agreed

3) Agreed

4) The mobile version has that. As desktop locations seem a lot less accurate, I wonder what the true utility of that in the desktop versi0n would be.

5) "Little yellow guy" - erm - what little yellow guy (am I missing something?)

I think the "Little yellow guy" is the Street View icon.
That would be cool. It would rock to have geosay stuff on the street view map
How is the geo-IP lookup performed?

It put's my location in rural Algeria (I'm in Nottingham, UK). It does this even if I check the 'share my location with geosay.com' type warning that Firefox provides.

With Chrome & Opera it again puts my location in rural Algeria, however clicking on 'Share location' narrows it down to a map of the whole of the UK (better, but still not too useful).

Saying that, I don't think it's a problem with your site, as clicking on the 'show my location' button (above the streetview guy) in Google maps can't find me either and I'm guessing you're using the same google maps API to do your lookups.

We try and get a real geo lookup from your browser basically using HTML 5 JS if your browser supports. If you have gears it will fall back to that, if I remember correctly that is!, then it will go to maxmind.com javascript service to try and find you.
On that note, would you mind talking about what you use to store the data, efficiently query it etc?

I am in the nascent phases of developing a location based app, but have gotten stuck in trying to figure out a good way to store the data. Currently cassandra is the top contender.

We use mongodb as the backend datastore. It has built in location searching which so far has worked really well.
Check out this code for searching locally with mongo. It doesn't get simpler. Straight from geosay.com

class GeosayController < ApplicationController

  def api

    expires_in 1.minutes, :public => true

    results = Tweet.near(params[:lat].to_f,params[:lon].to_f)

    render :json => results
  end
end

....

class Tweet

  include MongoMapper::Document

  def self.near(lat, lon)

    self.all( :latlong  => {'$near'  => [lat, lon]}, :limit => 30) 

  end
end
We chose mongodb after reading this page http://www.mongodb.org/display/DOCS/Geospatial+Indexing

Before then we were looking at Postgres for its geo stuff and things like cassandra also.

as someone building a location based service, why not just store the lat/long in a table column and query for < >? Is it that much more efficient to use a specialized product?
Our understanding is mongodb should scale to tens of millions of rows better than a SQL database (which would be a nice problem to have)

Once we made the decision to use mongodb, it made sense to use the built in near functionality, rather than roll it ourselves.

Indeed. I am using Django to build my app and a mysql db with 2 float fields for lat/long. GeoDjango and GIS extensions for mysql seemed like over kill, plus I don't really know what I am doing but it seems to work. Django doesn't have very good support for mongo. Well, the django orm.
To be honest I can see absolutely no reason why you can't use floats as you describe and < , >. Depending on what you are doing it may be a little tricky due to lat/longs being angular values, but over small distances I think this can be largely ignored. (In geosay we have some front end code that sorts out the niceties of the angular stuff)
There are 2 lookups. If you say "yes" to share my location in firefox then it uses the browser's navigator.geolocation functionality. If you say no, it uses MaxMind's geoIP service (see http://www.maxmind.com/)
What this mostly did for me was drive home the point that non-geeks don't really use Foursquare all that much. Kinda embarassing to notice that I know almost half of the people behind checkins in my little 80000 ppl town. Thanks for putting the foursquare hype in perspective for me.
I think that is true to a large extent. I think it also shows that many people don't turn on location in twitter (as it is off by default this is no surprise)

We do think there is room for a location based service for sharing information that isn't about check-ins, and gaming mechanisms. That's what we're trying to do anyway...

Anytime! We think that foursquare is great but there is simply more scope for local information than just showing information about venues.
Oh btw, please try in in your phone (if you are an iphone or android user) as well as your desktop browser.
I've just found out that there's a supposedly very good bakery nearby. But I don't know how geosay works, and if I should thank geosay or foursquare.
Thank us both. If the comment originated at Foursquare, of course that is down to them, but there is much less friction to finding the data on geosay (IMO)
I clicked the link and got a prompt to install Chrome. I understand that you might be using some Chrome-specific (HTML5-specific, whatever) features, but throwing out potential user without even showing what he's missing is not cool. Why not to show some demo/screenshots page in case of not supported browser and only then prompt to upgrade?
Initially it didn't bring anything up for my hometown (quite small but there are some foursquare users) but after going to my uni city and back again it actually brought up a surprising amount of stuff. There's a business networking group and a hidden cafe nearby!
I really like it, but there are a couple of things:

Populate the map when you get my location, otherwise I think the app is broken.

A search for Bloomington, IN (verbatim) got me a tweet for Bloomington, IL. You don't want the same problem for cities like Brown or Jackson.

Maybe get rid of the left sidebar altogether? It's just redundant.