
Show HN: Stop asking your clients "What browser are you on?" - jonasvp
http://www.browser-details.com
======
meaty
We wrote our own version of this which took about 2 minutes to write.

1\. Client hits /support/client-info which generates a specific system error
with a unique ID (right 6 digits of a GUID) and pumps browser, error and user
context information via log4net into our logging system. Client tells us the
error ID.

2\. Open monitoring system, type error ID in. It's all there.

Not only that, we use it for error monitoring too.

~~~
davidw
Seems kind of awkward.

Thinking about it offhand using some Rails terminology, let's see.

* Naive version: save user information after every request via after_filter or some other hook. Probably slow for sites that get a lot of traffic.

* Slightly less naive version: check to see if current_user.browser_info has changed compared to the current request in an after_filter or other hook. If so, save it in the DB. This way you can not only check what they're using right now, but what they were doing yesterday when they did something that caused your site to go haywire.

* I'm sure the above can be improved on: it'd be nice to package it up as a gem. This is not rocket science.

Looking in the logs is easy enough, but it's data that should be very easily
available to support people, and they probably should not have ssh access to
the server...

~~~
meaty
That's naive and inefficient.

We only care if there is a system error, if the user phones up or they fill in
the online support form. This is only to satisfy the path of the phone call.
Everything else is passed around with context.

For the phone call, our logging system has a web interface (log4net appender
-> postgres -> asp.net web forms page). you just visit a web page and copy and
type the error ID in and you get everything from the entire context, session
and client info to the stack dump.

~~~
davidw
> That's naive and inefficient.

So is having a user read stuff over the phone that you already know.

~~~
meaty
Some people like to call up and chat or vent. We give them the choice.

------
mootothemax
You need to add support for custom domains so that I can tell people to visit
blah.mydomain.com by setting a CNAME record in DNS.

This is especially important given that your domain name is less than ideal at
present for support purposes; I've had enough of reading out hyphenated
domains over the phone, and will avoid services that involve doing so.

Looks good though! Do you remember previous visits to the page as well?

~~~
jonasvp
Thanks! CNAMEs are supported in the Pro version you can upgrade to. Previous
visits are remembered, you can access all the data from your control panel or
click the permalink in the e-mail you receive on new visits.

~~~
taf2
how do you handle SSL with CNAMEs? I'd like to offer CNAMEs for my customers
as well, but the lack of SSL support means I don't for security. Suggestions?

~~~
jonasvp
Tricky one. I don't think there's any way to solve that, other than creating
certificates for every CNAME - which is too expensive and complicated for your
clients.

I've run into this with Campaign Monitor and they simply don't do SSL for
CNAMEs. Since they do everything else perfectly, I'm assuming there's no way
to solve this problem.

~~~
professorTuring
You can solve this problem by using a "wildcard certificate". It's like 300$
more expensive than a normal one.

You can test how it works creating your own:
[http://www.justinsamuel.com/2006/03/11/howto-create-a-
self-s...](http://www.justinsamuel.com/2006/03/11/howto-create-a-self-signed-
wildcard-ssl-certificate/)

~~~
mootothemax
_You can solve this problem by using a "wildcard certificate". It's like 300$
more expensive than a normal one._

Incorrect. You cannot create a wildcard domain for every domain in existence.
That would somewhat undermine the whole point of SSL.

Edit: I think I misunderstood slightly. You're correct if you mean using the
same domain for clients (e.g. client1.domain.com, anotherclient.domain.com),
but not if you want clients to be able to use their own domains with your
service.

On a related note, StartSSL (<http://www.startssl.com>) are a cheap option for
wildcard certificates, and SSL certificates in general, since they only charge
to validate your identity - you can issue as many certificates as you want
(for domains you own) thereafter.

~~~
professorTuring
I misunderstood your original concern :S, I meant what you said in your edit.

I don't think there is a nice solution for the other problem =)

------
dubcanada
Google Chrome on a Mac reports the following...

PDF: No - wrong Chrome has a built in PDF reader JAVA: No - wrong I do have
java OGG-VIDEO: Probably supported - lol? probably H.264-VIDEO: Probably
supported - ^ WEBM-VIDEO: Probably supported - ^

And not to be a party pooper but why do I need to signup? Why can't I just
click "Get Browser Details" get a unique hyperlink that I could then send to
someone.

What if I have mulitple clients? I have no way of saying, okay Joe is using
IE8, and Sandra is using IE9.

What if my client is using IE6. Bootstrap doesn't support IE6.

I think thats it for now.

~~~
lucaspiller
Actually Java is right. You can no longer run Java applets in Chrome on Mac as
Java 7 isn't compatible with it.

[http://support.google.com/chrome/bin/answer.py?hl=en&ans...](http://support.google.com/chrome/bin/answer.py?hl=en&answer=2429779)

~~~
dubcanada
Hrm java applets load for me... Maybe I need to investigate more lol.

------
deanclatworthy
I have found this to be useful: <http://supportdetails.com/>

What benefit does your service have over this one? Furthermore, if I send
mycompany.browser-details.com links to two people, how does your system
identify who clicked on the link?

~~~
jonasvp
Definitely, support-details.com was the inspiration. However, we didn't want
to send our clients to some other site - we needed a branded version.

As for identifying users: you can add multiple recipients in case there are
several people in your organisation using it.

We figure that you'll mostly have your client on the phone or are sending an
email and expect an answer within minutes - so you know who it was. In the
future, we might add a "Subject" line.

~~~
dubcanada
That's assuming it's a single client on the phone at a single time. Which is
wrong. There could be multiple clients on the phone or multiple phone calls
with multiple clients.

~~~
jonasvp
Right, that's when the "multiple recipients" come into play. You alone
probably won't be on the phone with multiple clients.

~~~
dubcanada
That's confusing? Okay billy you send your results to cindy and bob sends his
to chad and ashley sends hers to alex and anyone else send theirs to the next
person on the list?

lol?

What's wrong with

domain.browserdetails.com/somerandomidhere

It allows you to reference it without going into an email. Allows anyone to
view it (rather then forwarding the email to 15 different people) and makes it
easy to transfer.

I fail to see the reason why email would be better in any sense. It doesn't
allow for the same control as one would require for such a service. You also
can't organize it as it doesn't come from "client" so if you are looking for
it down the road you generally search "Client Name" and it would never turn
on.

------
ra
I think it's a GREAT idea.

Now, this might just be me, and I don't want to sound negative, or take
anything away from the effort you've obviously put into making this really
good, but ...

For $120 / year I think, hmm I could probably build something that does this
(just for me) in an hour, and it'd be fun!

However at $10 per YEAR, I would think it's a steal and jump at it. Not
suggesting you should drop your pants on price, but that's my view on it.

I think charging for a CNAME is a good strategy.

~~~
venus
You've got to be kidding me. $10 a year may as well be nothing. I wouldn't do
anything for anybody for $10/year. I probably couldn't even be bothered
invoicing you.

You're right that it's a very simple product, though. $5 a month with a 20%
discount for $50/yr sounds fair to me.

I like it though. Your textbook well executed MVP. The price might need some
tweaks but hey, it's a product. Well done Jonas.

~~~
martinced
_"You've got to be kidding me. $10 a year may as well be nothing. I wouldn't
do anything for anybody for $10/year."_

That makes no sense in the context of selling 0's and 1's where the marginal
cost is close to zero.

What you should ask yourself is this: would you rather sell one hundred
subscription at $120 per year or ten thousands subscription at $10 per year?
I'm not saying these are the numbers that GP would have but you _must_ take
this into account.

Another way to put it: quite some people are very happy sitting on hundreds of
thousands --if not millions-- of dollars selling games on the iPhone at less
than $5 a pop.

Another comparison point: there are desktop apps _way_ more complex than the
webapp we're talking about here that can bought (not a subscription, but
bought) when there are bundle sales at way less than $10. Once again, the
problem is trivial: would you rather make zero sales to that target
demographic (people buying apps bundles) or would you rather sell a few
thousands license for you app at, say, $5?

Basically the two concepts that you don't understand are: a) economy of scale
and b) it's all 0's and 1's.

 _"I probably couldn't even be bothered invoicing you."_

That just shows how lame and inefficient your invoice and tax filling process
is. (btw I can help: no latter than yesterday when the tools of the trade were
posted here there were apps taking care of automated invoicing and tax
fillings)

~~~
venus
You seem to have missed the fact that this is a _service_. It's a SAAS
targeted at businesses. The economics have little to do with iphone apps and
desktop software. And complexity of software has no relation whatsoever to its
utility.

Running a service is expensive. First you have customer acquisition, which is
not magical and free as you seem to believe, then you have servers to run,
email services to pay, security updates, new features, server admin, customer
support .. unless you are running at an amazing scale you just cannot do that
for $10/year.

> would you rather sell one hundred subscription at $120 per year or ten
> thousands subscription at $10 per year

Where on earth are you getting these numbers from? You don't automatically get
100x the sales if you drop the price. This is just pure fantasy IMO. More
likely he is going to get 100 sales either way, because he might manage to get
his product in front of 100 people for whom the problem solving value exceeds
the cost, and who has a $10/yr problem?

Fact is this a product targeted at businesses. The type of people who are
actually interested in paying money for someone to solve their problem do not
care about the difference between $10 and $100. Do you save them $101 worth of
time? Then sold! If anything I would be suspicious of a low price like $10/yr
because I know it's not viable.

------
nodata
Unless your client's problem is "I can't log in", why not just look in your
log to see which browser they are on?

~~~
mileszs
It's actually a lot easier, unless you have next-to-zero traffic, to ask
_them_ to take an action that puts the info in your inbox, rather than dig in
logs, which could have that specific user's information buried amongst
hundreds of other entries. It's a time-saver.

What if you have insufficient logging (Heroku sans a decent logging plugin,
for instance)? What if you built the thing, but it's hosted by a third-party
that limits log access? What if you want some non-technical or not-that-
technical person to handle the issue?

As hackers, we tend toward "do-it-yourself", but there are a lot of cases
where that isn't practical or economical.

~~~
nodata
If you can't quickly identify your client in your logs you will have bigger
problems.

~~~
Argorak
Sure, but the usual support rep has no log access. But using a good knowledge
base, he can answer things like "Flash 9 doesn't work" without tech
assistance.

~~~
nodata
Why doesn't the tech support rep have access to the information he needs? The
data is in the organisation.

~~~
Argorak
Because he might not be qualified to read it and providing an aggregation of
said data in a consumable form is too much implementation work?

In some organizations, he is not even allowed to read operational data without
pre-screening.

------
taf2
The problem this doesn't solve is the customer who emails support, includes a
screenshot. The screenshot doesn't include the browser frame, but just clearly
shows something being rendered incorrectly. You kind of are stuck - first
trying to reproduce locally, and then you have to resort to asking "what
browser are you on?"... Anyone have other ideas about how to handle the email
support when it's like this?

~~~
prawks
At the risk of making your service/site appear error-prone, you could make it
evident on each page what a user should do if there is a problem. Basically
have a method for the user to send an email to support with what is equivalent
to a stack trace for that page: include their browser info, and any other
relevant generic info.

Just spit-balling here.

------
ComputerGuru
One of these gets posted on HN every month. I'm sorry, but I don't get the big
deal.

<https://news.ycombinator.com/item?id=4499435>

<https://news.ycombinator.com/item?id=3526446>

and more.

~~~
thirit
And this product was already posted in one of those threads:

<https://news.ycombinator.com/item?id=4499937>

------
jakub_g
In my Firefox @ WinXP it displays Java 10 :)

I guess it's an issue with the values reported by the browser (about:config
lists Java plugin with 10.13.2.20). Chrome and Opera correctly say Java 7.

Also, the Flash version could be more detailed. <http://supportdetails.com/>
lists precise version. Flash 11.2 vs 11.6 might make a difference. The more
details, the better.

------
rartichoke
If I'm on the phone with a client and ask them to look at something I can
generally figure out what browser they have (minus the version) by asking 1 or
2 questions and that's often good enough.

Now... if you used this data in a way to automate some typical
developer->client BS then I could see paying for it maybe.

For example, let's say you load up a few VMs with every major browser /
browser+version combo.

Then you can tell a client to goto some url, maybe it could be something like:

<http://browser.somedomain.com?for=somepage.com/preview>

If the client goes to that address it captures his browser details just like
your site does but then:

1\. Replicates his settings with one of the VM browsers.

2\. Takes a screenshot of what somepage.com/preview looks like.

3\. Sends the screenshot and data to my e-mail or have an API letting me get
that data back in on my end.

That has pretty high value because when a client says "the border looks
weird!" that means nothing to me. I have to see the problem to be able to fix
it and people who aren't technical are horrible at explaining technical
problems.

~~~
thejosh
If you are doing that much to just see one simple page, might as well try
something like browsershots.

~~~
rartichoke
I could but I would still have to send the client to some url to get his
browser data so I know what to look up.

If I'm sending a client a url, why not take it 1 step further and eliminate
any work on my end by just providing me the correct screenshot and info? Then
I can shoot a client an e-mail, ask him to click a link and seconds later I'm
looking at what he's looking at with his browser settings without having to do
anything.

------
jonasvp
We semi-launched with a comment here:
<https://news.ycombinator.com/item?id=4499937>

Just finished the Pro version and launched for real, would love some feedback
from HN!

------
deepGem
<https://aboutmybrowser.com/> does the same without any signups

~~~
dubcanada
Oh look this one has a unique url.

------
rplnt
It detects that I have a Flash plugin. While this is correct, I have plugin on
demand enabled, so it is not available until I either play it or whitelist it.

Tested with Opera and Chrome. (Firefox supports it as well.) Could lead to
some confusion.

------
jonaldomo
@jonasvp: I would be extermely interested in reading about how many people
signed up for the service if you would be willing to share. As well as any
other one service products you guys sell.

------
churreiro
Why not just a JS API for this? I just cannot see the full application for
this app. It is interesting but the work required to get that info by using JS
and just plot it is not that high.

Just my 2cents

~~~
Rocky_Outcrop
You could also request the http info and simply show that to a person on a
page. In rails it would be as simple as calling 'request.user_agent' and
printing that value on screen.

------
btipling
We use graylog for logging plus a client side logging script, and that gives
us a lot of information. User id + agent + plus time they loaded the the site
+ any client errors they got.

------
MatthewPhillips
What would make this _really_ worthwhile, is if along with the browser details
you included common/known bugs and quirks for the given browser version.

------
Kerrick
I've always been a fan of this one: <http://supportdetails.com>

But, yours supports a few more details.

------
kvirani
The Authentication forms should ideally submit to HTTPS, but it looks like you
haven't setup SSL, but should.

------
HyprMusic
Would be great if it also took note of the DPI so retina-style devices could
be detected.

------
buremba
please stop creating projects for this issue. there are already tons of them.

------
adandy
It reports Windows Phone 8 as Windows 8.

