

Don’t break the Internet with your Javascript - bdimcheff
http://www.olark.com/spw/2012/03/dont-break-the-internet-with-your-javascript/

======
dmethvin
The point of that blog post is that sites should track the client-side errors
that occur. It's hardly a new idea, but is worth repeating since so few people
still seem to do it.

Remember folks, for apps that use the back-end as a JSON service, nearly all
the code is running on the client. If you have no feedback about errors, you
are assuming your 15 minutes of testing with Safari on a Macbook is
representative of the entire Internet including that guy with IE7 on XP with
the Bing Toolbar. It's not a good bet.

They mention tinyfeedback but there is also DamnIT and the YC-funded proxino.

~~~
rhizome
"All requests are status 200, boss. We're doing great!"

~~~
dredmorbius
Our java engine (Jetty) logs 200s even when it's generating 500s.

Learn me to trust my own fucking logs, will you.

One of the more useful monitoring tools I've got is a simple shell-wrapped
"HEAD" script that polls our cluster and reports an "OK" or "ERR" (slow
responses trigger a "Hrm..", along with the current, median, and standard
deviation of the response, and total error counts. That sits in an
omnipresent, always-on-top small-font terminal window.

Something like:

    
    
          2012-03-30 12:03   i=9948
        Host    Status  Cur   Med   sd     Err
        www     OK      0.22  0.24  0.44    6

~~~
rhizome
That is the basic mechanism behind load-balancer healthchecks.

~~~
dredmorbius
That and connection tracking.

------
westi
Is hashmonitor open source or going to be open sourced?

Seems like it would be a really useful contribution to the JS development
community to make this available for everyone to use.

~~~
mjpizz
For sure! I'd really like to - just didn't have time to extract it out this
week :) To be useful, you will probably want the collection components too.
Maybe some weekend hacking...

~~~
westi
Nice and fast, Thanks - <https://github.com/olark/hashmonitor> :)

------
speg
Next episode: Don't break your site with HN.

~~~
bcx
For sure :-), we've had many HN articles, I wonder what was up with wordpress.

------
cageface
Ironically, the logo covers half the text on an iPad.

~~~
jemka
Had the logo or placement of the logo been a result of JS, that would have
been ironic. Your experience was unfortunate, but not ironic.

~~~
mmj48
FTA:

> We constantly have to ask ourselves: _are we causing any issues or slowdowns
> on our customers’ websites?_ [sic]

The GP's noting of irony (is that correct?) seems to be valid.

~~~
amw
Why the [sic]? Customers' is plural and possessive in this case.

~~~
mmj48
Didn't want people to assume emphasis was mine.

------
Thomaschaaf
The server is temporarily unable to service your request due to maintenance
downtime or capacity problems. Please try again later.

The seem to be backing up their site or something.

~~~
Thomaschaaf
Why do I get 2 down votes? I was just pointing out that they are down (they
still are)

~~~
kaens
They know.

~~~
16s
"Never tell a person something that they already know. It wastes your time and
only annoys others." - Old Farsi Proverb

~~~
rhizome
"Step 1: Find out everything the person you're talking to knows."

------
fforw
Breaking the internet with your javascript sounds a little like the "IP-
Tracking in VB-GUI" thing.. wish his blog was a little more stable.

------
DanWaterworth
WEB != INTERNET

~~~
randomdata
I would go even further to say that, JSON + AJAX != WEB

Like the name or not, it is why we came up with the Web 2.0 moniker. Sending
"raw" data over HTTP to a richer client is quite a bit different paradigm to
what was envisioned for the web.

~~~
DanWaterworth
Good point.

------
skizm
Oddly enough I went to this on my mobile phone and the site looked broken
because the logo that is on the left is square in the middle of the screen.
Irony?

~~~
amw
Already covered, not irony. Neeext.

------
robwgibbons
Don't break my JavaScript with your Internet

