Live data from Hacker News

The presumption that computers are working correctly

emptycity.substack.com

151–160 of 171 posts

Re: The presumption that computers are working correctly

#151
post #150

Earlier quoted context omitted.

Your question makes a good point. Punishment is only effective at the bottom of the funnel. A well designed system, whether a computer or an organization should always have controls that guide things to where they should be. That means carrots and sticks. In a place like a post office, that means separation of duties, audit, and clear lines of accountability. Things fail when nobody asks awkward questions or looks. I…

In principle there was already some separation of duty as solictors in England owe a duty to the Court regardless of who pays them. However it seems not to have been enough in this case. Hopefully will be looked into.

I think you mean barristers.

The problem here was that as many sub-postmasters were co owned by a husband and wife with children. There was an enormous incentive for one of the sub post masters to plead guilty and say, "my wife had nothing to do with it." Doubly so as the sentences would often be on the cusp of the "suspendible range", a guilty plea combined with contrition is much more likely to get a judge to suspend your sentence if he can.

Of course, this "plea-bargaining" is standard practice in the states but we aren't used to it in the UK.

The issue is that no barrister would allow their client to plead guilty without giving them a little canned speech about not pleading guilty if they didn't do it and having them, "sign their brief".

Re: The presumption that computers are working correctly

#152
post #117

Earlier quoted context omitted.

Come now; imagine a world where nobody could ever be convicted without mathematical verification of all components of evidence. Nobody could be convicted of anything, since even if we had 10 people and three 4k video cameras all see someone pull out a gun and shoot somebody, we can't have mathematical certainty even of the three video cameras, much less the unreliable wetware memories of 10 people. We might as well g…

I rather rely on the memories of 10 people than on 4K cameras which can be hacked. I don't mind relying on a 4K camera for something like tennis, to decide if a ball is out or not. But if it is just up to software if I go to prison for 10 years or not, I very much DO mind.

Are you aware of just how unreliable eyewitness testimony is?

Re: The presumption that computers are working correctly

#153
post #35

Earlier quoted context omitted.

Given enough eyeballs, all bugs are shallow. As such, they are complained about by thousands of people, for years. Less ironically, one can expect widely used features of widely used software to have been tested in realistic conditions so whatever bugs there might be are at least known. But it takes an insane amount of testing to cover the phase space even of a moderately complex piece of software: look how large is…

Yes. Bugs are there, but either they're shallow, well known and worked around, or have low impact for the majority of people using them. The epitome of that was utf-8 support for a long time: there were a huge number of bugs, but alaphabet based languages would be mostly ok, and most devs would know it was a mess and work around that as much as they can. To me one should expect any software to be broken in numerous w…

As they say, any sufficiently complex system always operates in a partly degraded state. This applies to complex software as well.

Microservices are not even about structuring your app; they are about the particular kind of deployment structure for your app. You can make a highly modular app along the lines of DDD and separation of concerns, and deploy it as a monolith for simplicity, or cut it into 2-3 large deployables. (Sadly, there are cases when a monolith remains tightly coupled, but the coupling is implemented as RPC, and the whole thing is purported to be "micropservice architecture".)

Re: The presumption that computers are working correctly

#154

Earlier quoted context omitted.

Yes. Bugs are there, but either they're shallow, well known and worked around, or have low impact for the majority of people using them. The epitome of that was utf-8 support for a long time: there were a huge number of bugs, but alaphabet based languages would be mostly ok, and most devs would know it was a mess and work around that as much as they can. To me one should expect any software to be broken in numerous w…

> That looks awfully close to the micro-service approach as well. The approach can be good, but it still gives me pause. Microservices aside, GP's statement seems to imply composition is like addition wrt. complexity. Unfortunately, in reality it's multiplication. Complexity multiplies with each moving part. There's hardly a better example of that to what we inherited from "original Unix" - chaining small, focused to…

Yes, composing self-contained parts is mere multiplication: if you have two sequentially connected components with m and n states, the composition has no more than m × n states (in practice much fewer).

But if you have two tightly coupled components which can arbitrarily jump into each other's code, you have (m + n)^2 states.

A four-stage Unix pipe is easy to split and thus analyze and understand, step by step, because each step is reasonably small, and has only one input and one output (presumably). Spaghetti code may be impenetrable, and only work by coincidence.

Re: The presumption that computers are working correctly

#155
post #48

Earlier quoted context omitted.

As a programmer that works on drivers, it's my experience that hardware almost never works correctly. "We'll fix it in software" might as well be the official motto of the hardware industry.

But thinking about a court case, what should be the presumption? Should it be up to the prosecution to prove that the RAID controller / network card didn't corrupt the data or that the GPU did the math correctly? Or should it be up to the defense to prove that it didn't? And how would each side demonstrate their case to a reasonable level of certainty? As others in this thread have said, for bits of the system that h…

> the assumption should be that it does not work, and it should be up to the prosecution to demonstrate that the software is working correctly.

Phrased differently, you want them to prove there aren't any bugs. You can't prove a negative so this is a non-starter. There will always be "but what if it requires specific timing" or "maybe it relies on some other software being installed" or "maybe the computer had a virus". It's basically the same reason the government has to prove you're guilty; because you can't prove you're not guilty.

I think the onus has to be on the defense to prove some kind of a bug exists. The interesting question is whether that implies that the software provider should be required to hand over the source code in discovery. It seems unreasonable to force someone to go on a bug-hunt where their future hangs in the balance without access to the source code. Ditto for providing some kind of a test instance; I can see companies being leery of providing binaries to someone trying to publicly prove there are bugs.

Re: The presumption that computers are working correctly

#156
post #40
post #26

After a lifetime of fixing bugs I’m often surprised that computer systems work at all. I had something similar to the failed post office system affect me personally, and everyone just rejects that the computer system could be at fault, even when presented with evidence, as it too too much work for them to try to understand.

> I’m often surprised that computer systems work at all. I also remain contunually amazed that anything works. It boggles my mind, because I have seen how software gets built. How can it possibly all work? I think my answer to this conundrum and seeming paradox is that it doesn't all work. We have trained ourselves and been trained to accept things that aren't working as something else. And like you say, people treat…

>> It boggles my mind, because I have seen how software gets built. How can it possibly all work?

Wait till you uncover what the SW runs on :). From math, processor/memory, rtl design, verification, tools that generate the circuits to the fabs that create the ICs.

And when I submit this comment it appears for others to view.

It is a miracle this entire structure works. It never ceases to amaze me.

Re: The presumption that computers are working correctly

#157
post #54

Earlier quoted context omitted.

And that is only the one we know of. There are thousands of cases that are hidden in the bowels of the post office court system Oh and the compensation are uh... let say hard to get the money for.

And I've yet to hear mention of the people who weren't prosecuted because they paid the excess out of their own pocket. From the stories I have read, it seems that many who were prosecuted had tried that but ran out of money. Many more must have successfully dealt with the "shortfall" and are surely due their own restitution now? Every transaction the system touched should be inspected, because I'm sure there were pl…

Yeah, there are schemes on this and Sir Wyn Williams seems keen and driven to make his enquiry as large as needed. So there is some hope we will learn more. But let's be clear here. Nothing can compensate the reality of what these people had to deal with.

Re: The presumption that computers are working correctly

#158

Earlier quoted context omitted.

I rather rely on the memories of 10 people than on 4K cameras which can be hacked. I don't mind relying on a 4K camera for something like tennis, to decide if a ball is out or not. But if it is just up to software if I go to prison for 10 years or not, I very much DO mind.

Are you aware of just how unreliable eyewitness testimony is?

It's the least reliable form of "evidence". If anything, it's an anecdote at best.

Re: The presumption that computers are working correctly

#159

Earlier quoted context omitted.

I rather rely on the memories of 10 people than on 4K cameras which can be hacked. I don't mind relying on a 4K camera for something like tennis, to decide if a ball is out or not. But if it is just up to software if I go to prison for 10 years or not, I very much DO mind.

Are you aware of just how unreliable eyewitness testimony is?

Yes, and I still prefer it over digital only evidence. Are you aware how totally unreliable digital is?

Re: The presumption that computers are working correctly

#160

Earlier quoted context omitted.

Power control is all configuration. Hardware merely provider the signals and mechanisms for SW control.

Within limits, yes.

There's no indication that any of the components are exceeding their operating temperature range. It's just that the case becomes uncomfortably hot. It's hard to measure the peak external temperature of the case, so there can't really be a simple hardware-level failsafe for that.
Post reply on HN