Skip to content

Comment on How Twitter Killed My Fish

Comments

More like how not having a heartbeat message that confirms Twitter-based notifications are working killed the fish. And why Twitter? Seems like any of email, IM, or SMS would be a better choice.

This is like not starting your emergency generators on a regular schedule and then being surprised that the fuel filter clogged.

This is one of those comments that relies on hindsight to sound smart, so it's frustrating to me. The author surely can also think up a solution now that he knows Twitter can't be trusted. In fact, as he explains in the comments, he switched to SMS months ago.

Rereading it it does sound a bit unfair in tone, but it is not wisdom in hindsight to think of a heartbeat that provides affirmative notification that notifications are working, especially in a system that's got a lot of other data acquisition that could be provided on a heartbeat.

He shouldn't blindly trust that SMS will work for for his application, using his setup, either. What if he forgets to top up the account for the device sending out SMS? That would not be the fault of the SMS system.

Realizing that Twitter is not reliable is not hindsight! It is blatantly obvious! In terms of reliability, it's one step above putting a message in a bottle and tossing it in the ocean. If you didn't already know this then you're not paying attention.

Here I take it "blatantly obvious" is code for "thing I know" or, less charitably, "thing I can claim to know so I can sound superior, now that it's obvious in hindsight". If you want to persuade me that it's really obvious, that only a fool would make this mistake, you'd have to show me where in the Twitter developer docs they say, "Hey, this is unreliable, so don't think we're going to actually deliver your messages". And then that a reasonable person would have had to see that page, read it, and ignore it before proceeding.

Half of people are below average. Everybody is ignorant about most things, and they're always learning. I have no reason to think that this guy didn't make a reasonable novice mistake. I'd rather encourage novices to try things. Telling them after the fact, "Fool, you should have known!" only discourages them and other novices.

Personally, I appreciate him producing an interesting article that will help other novices avoid his mistake.

Twitter's terms of service are located here: https://twitter.com/tos

Two choice bits:

"We may suspend or terminate your accounts or cease providing you with all or part of the Services at any time for any reason...."

"The Twitter Entities make no warranty and disclaim all responsibility and liability for: (i) the completeness, accuracy, availability, timeliness, security or reliability of the Services or any Content...."

Emphasis added.

Now I guess you'll say that a reasonable person won't read the TOS anyway so it doesn't count. And I say, that's all well and good when you're tweeting about last night's dinner, but when you're building something where you actually care about the consequences when it fails, you have to actually perform some form of research if you want reliability.

I'm rather astonished that you're still acting like Twitter's unreliability is not only non-obvious, but something I wasn't aware of until I read this post, but am pretending that I knew before so I could act superior. Do you just assume that every random internet service out there is reliable until proven otherwise? Because that's the opposite of what's correct. Everything is completely unreliable until proven otherwise. This is, yes, obvious if you've been paying attention to the internet for any reasonable length of time. Twitter hasn't proven otherwise, therefore it is unreliable. I personally think that more than passes the threshold for "blatantly obvious".

I disagree with you on the impact of pointing out that this was a bad decision. The fact that you can't rely on random internet services is an important lesson, and I don't think he learned that lesson. He just switched from one random unreliable internet service to another. When Zapier or Xively go down or change authentication requirements or decide he's a spammer and shut down his account, does he have some way to find out?

I would much rather have someone tell me "that was pretty stupid of you, this was your real mistake here" than hide the truth from me because they're afraid of discouraging me. I want to be wrong for as little time as possible. Apparently this is an unusual sentiment, which I have a hard time coming to terms with.

Every TOS says something like that, and there are reasonable interpretations that don't include "we will silently break your shit". Even if he had read it, this particular failure case might not have occurred to him.

The third option, one between "you're stupid" and hiding the truth, is to not be a dick about it. The only way people get to the point of being experts is by making a lot of mistakes. If you'd like somebody to listen to your wisdom, there are better approaches than starting out with "that was pretty stupid of you". Especially when it was not in fact pretty stupid of him.

Tell me more about these reasonable interpretations that don't include "we will silently break your shit". Because my understanding of the sentence ending in "at any time for any reason" can be paraphrased as "we will silently break your shit if and when we feel like it".

And, well, we're starting to get repetitive, but I disagree with the premise of the second paragraph. Building a service like this that relied entirely on Twitter (and the local internet provider and the local power company and whatever else) with no way to find out if it stopped working was pretty stupid. Yes, it's the sort of mistake a lot of people make, but that doesn't mean it's not-stupid. Pointing out that it was stupid conveys that the ultimate problem was not in choice of service but in the thought process in how the problem was considered and how the solution was conceived.

Maybe there are more tactful ways of pointing out "you didn't think this through very well". But hell if I know what they are (the thing I just said is not IMO any nicer than "that was dumb") and hell if I'm going to put a bunch of effort into figuring it out for a throwaway internet comment.

The word "will" is wrong. The TOS is more reasonably interpreted as "we can shut down tomorrow, and might break your shit". They're saying that they won't assume the user's financial liability if things break. Pretty much every modern web TOS looks like that.

Unless you have some sort of objective measure, calling something "stupid" is just your way of feeling smart at somebody's expense. It's a dick move.

The more useful standard is "reasonable", as in the legal term "reasonable mistake". Here, I think he made a reasonable novice mistake. Being a dick to reasonable novices does not reduce the number of mistakes; it just decreases the number of novices who will actually ask. And also the number who will post articles like this, ones useful in educating other reasonable novices.

I'll add that if you aren't willing to put any effort into a comment, maybe you just shouldn't make it. You can just say out loud, "Boy, that was stupid," enjoy feeling superior, and move on. If you're going to the extra effort of pissing all over somebody in public, then you might as well go all the way and make a useful comment. Or even a compassionate one. That those things are hard for you is only about what you've decided to get good at, not what's actually easy or hard.

I'm not allowed to make subjective statements? What the hell?

I like how you do everything you criticize. You keep saying I shouldn't say things are "stupid" because it'll hurt the poor guy's feelings and it's subjective anyway and people won't learn that way. But you have no qualms calling my comment "a dick move", as if that was somehow an objective fact, and then acting like I'm supposed to learn from your comment even though the guy who wrote the article is not supposed to learn from mine.

Honestly, lead by example or go away. You're not helping by committing every sin you accuse me of while claiming to be trying to educate me.

I'm not inclined to allow to you make subjective statements as if they were objective. If you want to say, "I think you're stupid for making a mistake like that," then say it. Then it will be obviously dickish. And I'm also not inclined to let dickish statements, sutble or overt, go unchallenged, because it interferes with one of my goals, which is that novice programmers experience a helpful and supportive community, so that they grow up to be accomplished ones.

That an action is dickish is indeed factual. The guy attempted to make a positive contribution to our collective dialog by offering a story of his mistake. That took bravery and generosity. You admit you made a lazy negative comment, one you now seem to realize wouldn't help him. You were, in the words of Urban Dictionary, being "brash and insensitive", "put[ting] your own interests" first.

Your last paragraph is especially funny. By your own standards, my behavior is apparently fine, but still you complain. If you think it's ok to call somebody's mistakes stupid, surely I can point out your mistakes using negative tone. Funny how you think negativity is wrong when you're on the receiving end of it.

I wouldn't care about your negative tone if 1) you weren't talking about how bad a negative tone is and 2) if you were making any kind of decent argument.

I care about substance. Your comments have none. Thus they are irritating.

You're not inclined to "allow" me to make subjective statements as if they were objective? What do you think you are, the Internet Police? Go away before I laugh at you a second time.

You're the one who brought up "allow", so I can't say what you mean by it. What I mean is that I'm disinclined to let your dickishness go by unchallenged.

Your "OMG hypocrisy" routine is cheap and lazy rhetoric. I'm not saying a negative tone is universally bad. I'm saying that replying dickishly to a positive novice contribution harms the dialog by reducing future novice contributions. Whereas I think negative tone in reply to a dickish comment can help the dialog by reducing future frequency of dickish replies.

If you don't like being irritated by people calling you out to being a dick to noobs, maybe you could try stopping being a dick to noobs. Then we can all be less irritated.

Though I can't really comment on the discussion as a whole, I can say with good authority that if Zapier zaps fail (for any reason), we will try to send out alert emails to the best of our ability!

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.