
Visitor.js - jonasw
http://www.visitorjs.com/details
======
duopixel
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.

~~~
the-cakeboss
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.

------
huhtenberg
Nice, but why the hell is this a _service_?

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.

~~~
swah
Agreed, but same could be said about github. It fits the trend of focusing in
your core business... (its expensive for me though)

------
josscrowcroft
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.

Good luck!

~~~
richbradshaw
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.

~~~
sanderjd
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.

~~~
codejoust
I liked the idea, and had already needed parts of such a library, so I put
together some stuff and made a free/open-source version.

<https://github.com/codejoust/visitor.js>

~~~
josscrowcroft
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.

------
ntkachov
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.

~~~
Hovertruck
"honestly I would pay for such a service if it comes with a nice little
dashboard and some decent stats"

Do Chartbeat/Google Analytics/etc not provide that for you?

~~~
ntkachov
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.

------
exit
i hate when my internet experience is "localized" with shit like "g'day mate".

the internet is a place in and of itself.

~~~
user24
yeah I read that and thought "gosh how patronising would that be".

also geolocation fails for my IP, says I'm 35 miles away from where I am,
which in UK terms is quite far.

~~~
freehunter
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).

~~~
recursive
That probably just means they are doing geolocation by IP instead of trying
the HTML5 browser-based geolocation service first.

~~~
glhaynes
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.)

------
instakill
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.

[1] [http://gs.statcounter.com/#mobile_browser-ww-
monthly-201001-...](http://gs.statcounter.com/#mobile_browser-ww-
monthly-201001-201101)

~~~
enko
I find those stats pretty suspicious and probably highly country-specific.
Opera in number one place? Not in any developed country I know.

~~~
instakill
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.

~~~
enko
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.

------
codejoust
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>.

------
andrewnez
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.

~~~
raganwald
_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.

------
smoody
_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?

------
buremba
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.

~~~
bestes
$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.

~~~
corin_
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.

------
hmottestad
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.

------
celalo
What is the point of this? Nothing is special but the location information,
and there are plenty of free JS APIs.

~~~
revorad
Can you recommend any good ones?

------
sparshgupta
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

------
stephen
The startup I work for, Bizo, has had some clients doing similar things with
our API:

<http://developer.bizo.com/documentation/bizaudience-api>

E.g. customizing their home/landing pages based on the business demographics
of users (is this a small business user, Fortune 500 user, etc.).

(Don't mean this as a gratuitous plug, it's just cool to see the same client-
specific customization technique used elsewhere.)

------
bitdiffusion
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.

------
cbs
Oh boy, another way to micromanage customers rather than just provide a good
product.

------
kyle_martin1
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.

------
swah
If you view <http://www.visitorjs.com/visitor.js>, that JS already has your
data concatenated with the script. Why is this?

~~~
troels
Because it's generated server side.

~~~
swah
What are the advantages of concatenating the data with the JS vs making a
request? Only page load time?

~~~
guptaneil
You can't make a cross-domain ajax request, so all of the data needs to be
included with the JS.

~~~
swah
I had never thought of doing this. Its a great idea. How widespread is this
technique?

~~~
slig
Quite, it's mostly used as JSONP. See <http://en.wikipedia.org/wiki/JSONP>

------
gesman
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.

------
lubujackson
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)?

------
mbq
Obviously they respect Mozilla's do-not-track?

------
hu_me
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

------
NHQ
Where can one get a database of IP locations any more? ipinfodb no longer
offers a download of their data.

~~~
ricardobeat
<http://www.maxmind.com/app/geolitecity>

------
jroseattle
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.

------
andrewl-hn
Opera 11.6 is identified as IE on Windows

~~~
nawariata
Maybe your Opera has an identity crisis, mine doesn't.

------
netmute
I don't understand why these 'analytics-clones' always have to be written in
js. I would much prefer a ruby gem that does all this in the backend.

~~~
shimms
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.

------
ocharles
Well this has been good motivation for me to install NoScript

------
valugi
what is so cool about this?

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 ...

------
sasha__b
Why is it better than Google Analytics?

~~~
instakill
Because with Google Analytics, you can't personalize an session.

~~~
hu_me
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.

