I think most people here are missing the point, probably because of the gimmicky examples in the landing. Geolocation is not about localizing experiences, it's about providing sensible defaults and contextual information.
For example, the problem with "upvote" button littering, just can just show the upvote button from the referring service (say HN or reddit).
Or just autoselect my country in a form, it's a pain going through the country dropdown, even if it's a fancy autocomplete widget.
Or just provide me an appropriate zoom level when I'm looking at your world-wide locations in your embedded Google Maps.
Yes, thats what I see in this. While getting this information is fairly trivial, having a service to actually derive meaning from those metrics is valuable. One of the most interesting future for mobile computing is the prospect of contextual computing. I don't see why it couldn't apply to both desktops or laptops.
It's a rhetorical question. I understand that the devs want to make $10 to $40 a month by hosting a piece of Javascript and storing trivial stats, and it's an awesome way to make living, but - c'mon - it's like fitting a round peg in a square hole. Those who need this sort of site customization are likely to have a proper backend in place and to be able to implement the same thing themselves. And those who don't have the backend, they won't be able to afford the service.
This looks like a lot of fun, but my main concern is with the pricing model. I can recreate much of this functionality for myself, without rate limiting, in a couple of hours with standard open source libs.
The value-add they offer is good, but I'm never gonna find out about it first hand because I'm not gonna pay to try it (even with a 30 day money-back guarantee)
I predict they would have far more luck if they open-sourced the basic library (so we could use it to get say 80% of the functionality ourselves BUT would need to self-host it etc. etc.) and then offered a hosted version for $$ per month.
I agree, a lot of the useful stuff comes from the navigator object - browser, language, plugins etc.
The window object provides screen height, width and colour depth.
Modern browsers have geolocation as a JS API, but if you want it to be less accurate/less intrusive then an ajax request to a script that does a geo lookup on the IP would supply that.
The time on site and visits can be done by storing information in localStorage, or whatever the IE equivalent is called.
There are a few harder bits, but replicating most of the low hanging fruit is trivial for any web developer.
I went to the site expecting it to be an open-source library providing one convenient API into all the things you mention. In fact it wasn't until I went to the top menu looking for a Github or download link that I realized it was a hosted for-pay service. I think a library bringing all those things together (maybe without the geolocation part) would be useful, and I don't personally know of one.
Whoa! Super impressed you turned this out so quickly. You should post it as a 'Show HN' story!
Also, props for renaming it to session.js (I think it's unfair to use their name)
This might spur the visitor.js guys to release part of their codebase as open source and continue to provide a paid service with extra support and features etc.
Pricing scheme aside (honestly I would pay for such a service if it comes with a nice little dashboard and some decent stats), What I really wonder is if it would have a load of backlash from customers coming to my.
Personally whenever any site does the "you are from Lexington!" I get a little freaked out. What else is it tracking about me? is it going to use this info for anything? I know all sites have the capability to track me, but it makes me uneasy when they are showing me they are actively doing so.
Still I feel like they nailed a key service which is "If they googled "free" offer them a discount". This kind of thing would be very, very good for buisness. This is probably the future of web advertising and marketing.
That's definitely a gaudy implementation. Who needs a salutation on a website? "Hello, from Lexington, KY!" just seems to be a callout, "hey look what we're using!" braggadocio from the developers/designers/CTO. Just adjust the page if you want, but you don't have to call attention to it.
They do. But personally I would rather include 1 paid service that does everything I need than 3 or 4 that are free. Every extra service that I add adds page load time and more javascript. The app I'm developing right now already has quite a bit of javascript so adding 3 extra scripts has quite a cost.
Spend a year overseas. You'll really love the sites which decide that your accept-language header is irrelevant, and feed you stuff in a language you can't read.
Why Google look at your location rather than the browsers preferred language to chose language with is just beyond me. Oh, and then I go to Google Maps and it always shows me the US no matter where I am.
They do it because many people and most cybercafes around the world have their language configured incorrectly in their browsers. Most of the time, for novice users, the geo targeting is more accurate than browser settings.
the google maps = USA thing is probably because either you haven't set your location in google settings (or wherever...there's a thing), or you configure your browser to throw away cookies.
I find the "personalised" geolocation stuff mildly annoying in general - and not only because it's invariably miles off. It doesn't show me a site 'cares'. If anything, it looks lazy.
If it's for showing prices in my currency rather than dollars then that's useful, but more often than not it's to show some stupid "What ho, old bean!" message. I'm a Northerner living in cider country - you may as well have said that in Spanish!
I think geolocation using an IP address is known to not be particularly reliable when you try to drill down to the city level - having said that, it was spot on with my city.
I win the ip-distance-error game! I'm in Stanford, California, but sites think I'm in Quebec, 4000 miles away. We have google fiber for internet, and apparently the ip block they use previously belonged to a Quebec ISP.
Craigslist always comes up in French for me and shows me Quebec listings. And for a while we couldn't log into our bank of America web account because they don't allow foreign logins.
Plus geolocation almost always fails on a phone in my experience, the IPs generally come from the datacenter of the carrier (my old Alltel phone always said I was in Alabama, almost 1000 miles away).
If they used HTML5 geolocation instead, they'd burden the user with an annoying authorization popup (at least on the browsers I use).
edit: (The lesson, then, is to not do web geolocation unless it strongly enriches the usefulness of the site (map-related sites, etc) or your hand is forced. People rightly don't want their location freely-shared and people are rightly annoyed by location-sharing-confirmation popups.)
As cool as this might be, it has a major flaw. Take a look at the current mobile browser stats[1] (worldwide) and you'll see that Opera Mini/Mobile dominates. It, as well as any other proxy browsers such as UC browser, which are massively popular, will provide you with inaccurate information. I'm in South Africa and my IP is showing me to be in USA, and even the locale is wrong.
So, perhaps if Visitor.js had exception handling for where visitor.browser.name == [an array of known proxy browsers] then this might not be worth it if a good portion of your traffic is mobile.
We should probably define "major". If your site is visited by tons of mobile visitors and you use the geo functionality to impact user experience, then for you, it may be. However, most sites continue to have far more desktop usage than mobile, on average. So, for most visitors to most sites, it's not really all that major. YMMV, of course.
In fact, GeoIP has suffered from the problem you describe for a decade now, from every AOL user appearing to come from Virginia, USA, all the way to modern corporate proxy systems which have vast numbers of visitors all appearing coming out of, say, White Plains, NY, USA (yes, there are lots of corps there... but not every employee works in that location).
So, your idea is a good one for mobile where we kind of know the big "offenders" (Kindle Fire may rise up to become an issue as well), but it's hard to figure this out for every IP.
Commercial GeoIP companies often offer a "confidence value" with their data which reflects how confident they are than an IP would really reflect the geo of the user; unclear if this service will have that. In addition, a good user experience might be to personalize the session but allow user feedback, ala "we think you are currently in Antarctica; click here to tell us where you really are..." You might also decide not to use some functionality in your "mobile skin" or other version of the site, if you do separate designs for mobile vs. desktop.
I say, best of luck to them. Web analytics continues to suffer from a disconnect: vast reporting on users, but little connection to taking that data and impacting a user's visit, even in future visits, much less in the same session. Let's see some folks push this a bit, even if the data has some problems (which, let's face it, is always a problem with any data involving the web, imho).
It's worse than that. It seems to be using the same deeply flawed GeoIP database as many other cheap/free services. For instance, the connection I'm on, a business class fibre connection with CenturyLink, claims to be located in "Tyler, TX", even though I'm 2000 miles from there.
What are you on about? Think about what you're saying. Of the 5 billion or so connections to the internet, how many of those can possibly be from developed countries? Africa alone has ~800m Internet users, the majority of which use Opera as their primary browser. It's extremely popular in India and Indonesia too.
Well, you didn't disagree with me did you? I am just pointing out that use of Opera is strongly correlated with whether you live in a developing country. You claimed this product had a horrible flaw in its lack of attention to the Opera demographic. If your market is developed countries, then you don't need to worry about that too much. I think that is useful information.
I built a open-source version similar to this library for my own use using javascript browser checks and the google jsapi geocoding. It's on github at https://github.com/codejoust/visitor.js.
I think they will struggle to charge for this on a request/month basis.
As far as I can tell it's delivering almost all the functionality in the single javascript file except for the geocoding so you could host the js file (http://www.visitorjs.com/visitor.js) on your own server and get 90% of the functionality for free.
If they recorded the details and provided a hosted UI to view stats that might be worth paying for.
As far as I can tell it's delivering almost all the functionality in the single javascript file except for the geocoding so you could host the js file (http://www.visitorjs.com/visitor.js) on your own server and get 90% of the functionality for free.
Also, as far as I can tell, Apple provides nearly all of the functionality of Pages in a single .app file, so you could make as many copies for your company as you want for free.
As a rule of thumb, the number of script requests will be about as high as the number of unique visitors to your website. Since the browser caches the visitor.js script, it is usually downloaded only once per visitor.
If the developers of visitor.js create a new version of the script that supersedes the version cached on users' local computers, will my number of script requests suddenly spike?
This is too expensive for such a service. It's not something like Google Analytics, it just gives some information about current session. It may not even have a dashboard.
$40/month? It's almost free! And, if $40 really is a big deal, I doubt you would bite at $20 or even $5; you would just do it yourself. Or, at least comfort yourself with the idea that you could.
He said it's too expensive "for such a service", not too much money to spend on anything. If I were to charge you $40/month for a script that shows a user's IP address and nothing else would you still shout "it's almost free!"?
Yes it's not a huge amount of money, but it's enough that I, like the person to whom you were replying, would not pay it - largely because I could code it myself.
Dropbox or Evernote are far more useful to me and far cheaper, and it took me quite a while to bite at their price. This would have to be much much more capable than it appears.
$40 a month for the high end. That said, $40 a month is far from free. To put it into perspective that's about what Github charges for 20 private repositories ;)
As long as you don't switch language on your website based on the location. I hate when a website does this, and some are even horrid enough to use google translate. If I wanted the page translated I would translate it myself.
The service might be of use but my concern is the latency. If I need to use the location variables (in my headline etc), they must be available to me ideally before the body starts. If they are doing a MaxMind lookup or any lookup of IP from a database, they are not serving cached content from a CDN and hence bound to have more latency then I expect from a library.
If my site is big enough with world wide visibility that it needs custom locations, it bet to be fast also
The geolocation bit seems to be one of the last things that you can't really find for free (especially if you want one that works worldwide). In the same vein, good luck finding a free database or service that allows customers to look up the full address from the post code at least in the UK. The amount of constant updates required to keep it up to date is the kind of work prohibitive to most oss developers.
It's a nice idea but, in reality, I think most web programmers could (and would) implement this quite easily themselves with ~50 lines of code of PHP+JS. From what I saw, this product doesn't really solve any hard problems.
All this info can be gathered using free one-liner scripts and free resources, such as maxmind IP geolocation DB. It's like re-selling information pulled from wikipedia on the backend.
So this is targeting the thin audience of web site owners that can successfully install and use custom .js but don't know about the $_SERVER variable in PHP (or choose your flavor)?
its a useful service for targeting and can actually be used to personalize the site more than gimmicky g'day..
like offering deals, suggesting content (based on keywords), optimizely and reedge do offer this sort of thing in its package, but this looks easier to integrate and utilize. but a bit expensive for the service offering
It may well be a nice little library, but the next level of improvement in geo-localization is going to come from the data source. Another API is only going to be as good as the data source, and the quality ones are in limited supply.
Given the expected benefits for the cost (any cost, really), it's not a library I would use.
Clicky (getclicky.com) has a script you can hit to log visits from the backend. Not sure if there is a gem for it, but its as easy as open(url with args) and it records the visit.
Can log custom info, goals, conversions, revenue etc.
I use them for "normal" js site tracking, and now for app tracking without JS and couldn't be happier.
As a user I already know my IP, my browser locale and probably I can be more accurate on my location. I know where I came from and what browser I am using on which OS.
As a site owner I already have this info from the http headers and implementing a reverse IP geo mapping is not a big issue.
So? where is the groundbreaking stuff? perhaps in the payment scheme ...
actually you can personalize a session.. you would need to parse the __utmz and other cookies set by GA.
but this one provides a simple set and an easier way to do it.
It seems to me that this provides information real(er) time than GA. As in, you use it on pages as part of the actual data you show: http://www.visitorjs.com/details/api/setup
For example, the problem with "upvote" button littering, just can just show the upvote button from the referring service (say HN or reddit).
Or just autoselect my country in a form, it's a pain going through the country dropdown, even if it's a fancy autocomplete widget.
Or just provide me an appropriate zoom level when I'm looking at your world-wide locations in your embedded Google Maps.