Hacker News new | ask | show | jobs
by redguava 4867 days ago
I don't understand why people think this is a great response. They know how their routing works, just say so. It can't be that hard to give a basic overview of it before they release a more comprehensive post.

As for the comment "Improving our documentation and website to accurately reflect our product". That is a very round about way of saying "our website indicates our service does things that it does not" which is a VERY bad thing. People are paying for this service based on what Heroku claims it does.

If the website has been inaccurate for years, that is false advertising and really a bigger problem than they are giving credit to.

If anything, I am more disappointed now that I have read this response, it has not appeased anything.

4 comments

Documentation discrepancies happen. I've seen them with pretty much every platform I've worked on.

Just yesterday, I found a critical discrepancy between the ActionScript documentation and the actual behaviour of the ActionScript compiler, costing my team a day of work. (I tried to report the issue to Adobe, but the Adobe Bug Reporting System was down. Perhaps they need a Bug Reporting System for the Bug Reporting System.)

I think it's pretty heroic (yeah, pun) for Heroku to own their mistake, make the changes they've proposed, and accept the fire we've been pouring on them. They could have easily tried to weasel their way out of this, or attack the claims (Tesla/NYT comes to mind). Instead, they've accepted their own wrongdoing, and have pledged to make it right.

Who cares if the explanation comes today or tomorrow? Give them a few more hours to make sure their new round of technical claims are accurate, since such accuracy is exactly what's at issue.

In answer to "who cares if the explanation comes today or tomorrow", I care if the explanation comes today or tomorrow. I use Heroku and have hit scaling issues in the last few weeks very similar to this. More information on what is going on behind the scenes will help me immediately.

As for discrepancy in documentation, this is one of the most major parts of their infrastructure and directly relates to how well applications scale. To claim they have intelligent routing and then not having so, that is completely misleading and not just a minor documentation discrepancy. This isn't a tech document that got out of date, this is straight from their main "how it works" page... http://www.heroku.com/how/scale. Read the bit on routing.

Well, for marketing purposes, random doesn't sound as impressive as intelligent. It's a discrepancy but it does appear to be disclosed.

On the page you link to, it says: "Incoming web traffic is automatically routed to web dynos, with intelligent distribution of load instantly as you scale."

When you click on "Read more about routing..." it says: "Request distribution - The routing mesh uses a random selection algorithm for HTTP request load balancing across web processes." https://devcenter.heroku.com/articles/http-routing

It may sound more impressive, but it's simply wrong. It's not even ambiguous.

If they had said some thing like "with advanced algorithmic distribution of load instantly as you scale", its wishy-washy enough that its technically correct and those that need to know exactly how it does it will need to go and look at the docs.

As it is, intelligent distribution tells those that need to know that the distribution of load is based on intelligence gathered from the system, so they may not look farther. And it's simply not true.

I'm really confused where people are coming up with the idea that the word "intelligent" is somehow a synonym for "queueing". That doesn't make any sense to me.

The intelligent part of it is that it knows which servers and ports your application is running on as dynos come and go, and the routers is updated in near real time to reflect these changes. Since dynos move about frequently, and there are a great many of them starting and stopping per second, this requires much more intelligence than you probably think.

> random doesn't sound as impressive as intelligent

The impressive-sounding alternative is "stochastic".

@bitcartel (not sure why I couldn't reply to your comment)... I believe from my discussions with Heroku that the "random selection algorithm" is also not true.
> (not sure why I couldn't reply to your comment)

FYI, this is probably because you saw his comment at around 0-1 minutes. If you click on "link", you'll get the Reply form... or refresh after a minute or two and the "reply" link will be available.

Thanks! Always wondered about that.
There's a world of difference between a documentation mistake and sale info being wrong. And this is absolutely fundamental to Heroku.

Not impressive at all.

The thing that makes me nervous is Heroku obviously knew about this issue, yet they chose to do nothing about it until they were called out on it by a high-visibility customer.
On ActionScript your first source of information should be on Flex's new Apache site http://flex.apache.org/

I have friends in that community and while they're all volunteers I've seen first hand how hard they try and help people.

Developers are smart and capable people, but boy, what spoiled brats we are.

> It can't be that hard to give a basic overview of it before they release a more comprehensive post

Well, actually it is very hard to give a basic overview of anything complicated, without leaving your readership with their heads scratching. The person that wrote the blog post might not even understand the whole stack to be in the position of giving that overview and if he did, you'd probably be here bitching about factual errors.

> People are paying for this service based on what Heroku claims it does

Dude, this is a service used by developers and devops. You aren't meant to trust what they say. You are meant to measure and see for yourself if Heroku fulfils your needs or not. You know, how the author of the original blog post did it. And don't get me wrong, because I would agree with you, except for the fact that their website is not lying about what they provide. It's just out of date, sometimes describing details of the now deprecated Bamboo stack, a stack which also suffered through deprecation ... but hey, errors happen, we are human after all.

The response itself is an example for what other companies should do. They acknowledge sincerely that they have a problem, with a promise that they are going to fix it. How many other companies you've seen that do that? Amazon and Google sure as hell don't.

"Dude, this is a service used by developers and devops. You aren't meant to trust what they say." that is ridiculous. I use their service and I have trusted what they have said. They are the experts on their own service, why shouldn't I?

Also, the reason I chose Heroku is because DevOps is not my area of expertise, if I wanted to measure and analysis the inner workings I would have hosted elsewhere. Heroku is meant to alleviate that pain for me, I pay them excess over what I would pay elsewhere for that luxury.

As for the website not lying, yes it does. Go to "how it works" and click on routing. It's plain not true. Is it too much to ask that they update this in the last 3 years since the change?

I think the response is purely PR. Actually give something that will help their existing customers with this problem.

> Dude, this is a service used by developers and devops.

Developers, sure. Devops? Heroku's entire purpose is so you don't have to care about ops.

> You aren't meant to trust what they say.

Evidently not! I'd rather not do business with liars.

> They acknowledge sincerely that they have a problem, with a promise that they are going to fix it.

That's an optimistic interpretation of their blog post.

> Evidently not! I'd rather not do business with liars.

Is the entire startup world this naïve, or just this particular commenter?

> Developers are smart and capable people, but boy, what spoiled brats we are.

For expecting providers to provide what they say they're providing?

The scoundrels.

I agree, some people tend to think that Heroku is some kind of silver bullet that magically scales anything into the sky. But the underlying platform is nothing we haven not used before, and scaling linearly as the userbase grows is no easy task indeed. Give them some slack..
I think this is a good response, they apologized, took responsibility for what has happened and said they were committed to fixing it and what they would do next to go about fixing it. Also the message came directly from the top with the GM carrying the can regardless of if he was directly at blame or not.

I was expecting more of a 'sorry, your holding it wrong' approach.

One might charitably speculate that these are organizational challenges related to growing and being part of Salesforce.com. Things that were simple for a small, dynamic company can become shockingly complicated as the number of interests and priorities increases.

We might also consider the potential for a clash of cultures: Heroku has been relatively open about implementation details. Salesforce, on the other hand, has shown an extreme reluctance to share this kind of information.

I confess I can't help but wonder if the new willingness to make this kind of surreptitious change might in any way be connected to Byron Sebastian's sudden resignation last September. Is that nutty of me?

http://gigaom.com/2012/09/05/heroku-loses-a-star-as-ceo-and-...