The entire car alarm industry is a scam, promoted by Republican congressman Darrell Issa. It has seriously disrupted our lives in every way imaginable and has drowned out the beauty of nature. I can’t think of a single car that has been protected by a car alarm since they were invented. They are useless and should be banned for the health and safety of mitigating noise pollution.
For poor people whose ability to live depends on having a car, car alarms must be at least sort of useful to know if your car is being stolen at night. I’m sure they’re just a noisy inconvenience to the wealthy though.
Car alarms and smoke alarms: tradeoff between sensitivity and specificity (2012)
51–60 of 82 posts
Re: Car alarms and smoke alarms: tradeoff between sensitivity and specificity (2012)
#52Earlier quoted context omitted.
Does the alarm ever prevent theft?
Hard to prove empirically either way, I think. Even if they do, it's then arguable if this is worth the noise pollution etc. Probably depends on the circumstances in any case, so any empirical result would be too specific to be of any use. Science!
Re: Car alarms and smoke alarms: tradeoff between sensitivity and specificity (2012)
#53When the oncall gets paged, an SLO should be in jeopardy in a way that requires immediate measures to be taken by a well-trained human as described in actionable terms in a linked playbook. No SLO in jeopardy, or no immediate measure that needs to be taken? Don't page the oncall; send a low-priority ticket for the service owner to investigate the next business day. Steps need to be taken, but they're mechanical in na…
In a previous life as a full-stack Engineer at a startup, this was my white whale. The state of logging, monitoring, and alerting was such that signal quality was low, and only indirect observations of the system were possible since the logging was borderline useless. The result was multiple pages per night, with each one resulting in a scavenger hunt because signal was so low that it was nigh impossible to even iden…
Re: Car alarms and smoke alarms: tradeoff between sensitivity and specificity (2012)
#54Earlier quoted context omitted.
Visit a city
I live in one with more than 2 million people and it's something that I have to think hard about to remember the last time I heard one go off. Longer if I have to think of one that went off and wasn't some form of 'oh shit oh shit oh shit, wrong button' reaction from the person trying who accidentally turned it on.
I think this is what makes it such a scam. The amount of false positive alarms makes more people desensitized to them.
Re: Car alarms and smoke alarms: tradeoff between sensitivity and specificity (2012)
#55I do like how the author presents the case for how damaging false-positives can be in SRE monitoring. But, FYI, it can get worse if these monitors are hooked to self-actuating feedback loops! I recently wrote about a production incident on the Heii On-Call blog, in the context of witnessing how Kubernetes liveness probes and CPU limits worked together to create a self-reinforcing CrashLoopBackOff. [1] Partially becau…
Kubernetes can only do so much for you here. Liveness probes are designed to restart categorically broken software; for example, a combination of two requests causes no further requests to be handled. Maybe that's rare enough that a simple restart is an improvement over a replica that times out all requests directed at it. (You can fortunately see this behavior in real-world scenarios. You can also architect your application to self-check, of course, but the common "if path == '/healthz' { response.WriteHeaders(200) }" isn't this.) Readiness probes can shed load, but only by loading the other replicas by taking this replica's endpoints out of the service until things calm down. If the system as a whole doesn't have enough capacity, then picking one replica and saying "you can rest for 5 minutes" is just going to cause the other replicas to become overloaded and for the whole system to eventually fail.
There are other techniques here that work better.
Rate limiting is very common inside Big Tech; when a calling service induces too much load, it's told to simply go away via a fast path. That can prevent the thundering herd by allowing a % of requests to make progress, while other requests are rejected. Some progress is made while the system is degraded, and if there is spare capacity and a buffer, eventually the buffer is drained. (This post is too long to rant about buffering in distributed systems and what backpressure is, but if a buffer size of 1 can become full, then a buffer of any size can become full. So buffering is rarely a solution, but often the cause of outages.)
Circuit breaking is also common, where when a significant fraction of requests end with 5xx (usually a timeout), the load balancer just fast-paths a 5xx response for that replica's share of requests. This actually reduces load on the system, allowing it to process some requests instead of becoming a fleet of replicas in CrashLoopBackoff.
CPU limits are another complicating factor, but not much of one. Every piece of software runs with a CPU limit; only a finite number of CPUs can fit in your data center, or the Universe for that matter. A common problem that people run into is multithreaded software that doesn't understand that it's CPU limited. This does not cause failures, but typically induces a weird tail latency. CPU limits are enforced at discrete intervals; every 100ms, you're allowed to use 1 CPU. But you're also allowed to use 10 CPUs every 10ms, and sit idle for 90ms. (The system will enforce this; you may want to do work on 10 CPUs, but you're going to sleep after that first 10ms burst.) Usually, your system can be architected with CPU limits in mind; for example, by setting something like GOMAXPROCS to the CPU limit instead of the number of physical CPUs, avoiding the ability to consume the time allotted before the accounting interval ends. But, these mistakes very rarely lead to cascading failure, just very confusing 99.9%-ile latency numbers when under load, and a request spans that forced-idle interval.
Anyway, I have laid all of this foundation so I can get to my rant. There are a lot of "Kubernetes best practices" out there, and two that I have run into are that all applications must have a liveness probe, and that all applications must run at a Guaranteed QoS (and have cpu request == cpu limit != 0). These are interesting things to think about, but not a guaranteed way to enhance reliability (or lower cost). Your workload might be burstable, in which case a Burstable QoS might be exactly what you need; you trade reliability (a guarantee that all containers will be able to use a certain amount of CPU) for efficiency (you can dip into foobar service's CPU shares when barbaz needs to do a rare high-CPU activity). Liveness probes can be good too, where you have a single-threaded event loop that can get wedged accidentally, and restarting is the only way out. But, neither practice can be blindly applied to every workload that can be run in a container.
Re: Car alarms and smoke alarms: tradeoff between sensitivity and specificity (2012)
#56Earlier quoted context omitted.
In a previous life as a full-stack Engineer at a startup, this was my white whale. The state of logging, monitoring, and alerting was such that signal quality was low, and only indirect observations of the system were possible since the logging was borderline useless. The result was multiple pages per night, with each one resulting in a scavenger hunt because signal was so low that it was nigh impossible to even iden…
Going through something like this as a SWE at a startup. Lots of noise in our alerts and logging, so alert fatigue is a real problem. Do you have any advice on navigating this scenario (esp. negotiating with product to get monitoring and ops in a usable state)
Re: Car alarms and smoke alarms: tradeoff between sensitivity and specificity (2012)
#57Earlier quoted context omitted.
Hard to prove empirically either way, I think. Even if they do, it's then arguable if this is worth the noise pollution etc. Probably depends on the circumstances in any case, so any empirical result would be too specific to be of any use. Science!
A thief can disable your blaring car alarm in like 30 seconds. Enough time for anyone listening to go "wow someone must have hit the panic button in their pocket" and move on with their life.
That said, this makes them near-useless in most public settings.
Re: Car alarms and smoke alarms: tradeoff between sensitivity and specificity (2012)
#58The entire car alarm industry is a scam, promoted by Republican congressman Darrell Issa. It has seriously disrupted our lives in every way imaginable and has drowned out the beauty of nature. I can’t think of a single car that has been protected by a car alarm since they were invented. They are useless and should be banned for the health and safety of mitigating noise pollution.
> I can’t think of a single car that has been protected by a car alarm since they were invented. Many insurance companies offer lower premiums if you install a car alarm. So I guess they work at least a little, otherwise they wouldn't lower their premiums. It may not actually stop a thief, but it may get a thief to chose a car that doesn't have an alarm, or maybe it is just a correlation, but there is at least someth…
I can think of another reason.
They run their computations- and say the insurance can be priced at $100. But hey what if we just increase to $105, and then offer a $5 discount to people who have car alarms? We get extra money (average of >100) and people think they are saving money. Who knows, might even be getting some type of kick back from the car alarm industry for promoting them.
Maybe I'm making shit up- but I've grown to hate insurance companies so much that it also makes perfect sense.
Re: Car alarms and smoke alarms: tradeoff between sensitivity and specificity (2012)
#59It's a constant pain of mine to try to get people to stop having business as usual or successfully completed $PROCESS emails come out of our batch processes on our teams at work. They absolutely drown my inbox so I'm forced to filter them then the actual failures get buried in the unchecked "batch spam" folders.
I had a boss who had an inbox with literally hundreds of thousands of unread emails. A good chunk of those emails were "success" messages from batch processes. It's quite correct to send a "success" message when a batch process is completed successfully, but it's quite wrong to send that message to a human. It should be sent to a machine that should translate a missing success message into an error message/alert for…
Re: Car alarms and smoke alarms: tradeoff between sensitivity and specificity (2012)
#60Earlier quoted context omitted.
At a guess the bit 'let's learn about the base rate fallacy'.
Short, choppy sentences, lots of second-person, dropping a "punch-line" sentence to its own paragraph like they're a fucking magician revealing the card you pulled earlier. It's some kind of cross between transparent rapport-building sales-psychology crap and setting off a fireworks display to celebrate your successfully assembling a PB&J. Like listening to a used car salesman tell a mundane story about their morning…
EDIT: I tried here https://news.ycombinator.com/item?id=35533897 but hacker news filtered my title so its not as clickbaity as I wanted anymore.