Live data from Hacker News

Letters between Backus and Dijkstra (1979)

medium.com

71–80 of 128 posts

Re: Letters between Backus and Dijkstra (1979)

#71

You know, I'm wondering: could part of Dijkstra's reputed arrogance be due to a cultural difference? I'm Dutch, and bluntly calling out flaws in each other's work is not considered all that rude over here; it's almost the opposite: not calling someone out on their flaws implies we either consider them a lost cause or not worth the hassle of educating. I almost got fired from a teaching position in Sweden because I to…

> I'm Dutch, and bluntly calling out flaws in each other's work is not considered all that rude over here; it's almost the opposite: not calling someone out on their flaws implies we either consider them a lost cause or not worth the hassle of educating.

Woah, I do that too! Maybe I should move to Netherlands.

Re: Letters between Backus and Dijkstra (1979)

#72
post #41

Earlier quoted context omitted.

I don't know what your friend said, but the "errors are #3 killer" is a twisted fact. It comes from assigning "error" at the cause of death of every injury or illness that might have been non-fatal if every perfect test, advance in practice, technology, and mode of care were applied. It isn't a measure of how many otherwise healthy people were killed by errors that introduced new complications. One of highlighted exa…

Yes I realize that. The BMJ paper is using hyperbole to prove a point (just like Dijkstra's GOTO considered harmful). It's not really the #3 killer but to be honest it should not be in the top ten of things likely to kill you or even close to it. The medical profession, much like the teaching profession has a nasty habit of victim blaming if things go wrong when it can get away with it. They need humbling because the…

>"That we're fucking idiots all the time isn't news to us. It is news to some other professions that don't have such a tight feedback loop between success and failure."

This is great, there is nothing like thinking "wtf is wrong, someone changed some library last update and that is the cause", then hours later realizing you are a moron.

How exactly can this happen in medicine without severe social consequences?

Re: Letters between Backus and Dijkstra (1979)

#73

Earlier quoted context omitted.

> I'm Dutch, and bluntly calling out flaws in each other's work is not considered all that rude over here; quote: “Object-oriented programming is an exceptionally bad idea which could only have originated in California.” – Edsger Dijkstra Backus, on the other hand, is a genuinely lovely man. If you haven't read/seen his interview with CHM [1], then I urge you to do so. (Pay attention to his closing remarks!) [1]: htt…

Is the interview to be found on that page? I'm afraid I don't see it.

https://www.youtube.com/watch?v=dDsWTyLEgbk

Re: Letters between Backus and Dijkstra (1979)

#74
post #55

Earlier quoted context omitted.

> I'm Dutch, and bluntly calling out flaws in each other's work is not considered all that rude over here; quote: “Object-oriented programming is an exceptionally bad idea which could only have originated in California.” – Edsger Dijkstra Backus, on the other hand, is a genuinely lovely man. If you haven't read/seen his interview with CHM [1], then I urge you to do so. (Pay attention to his closing remarks!) [1]: htt…

I could never find a reliable source for this oft-quoted remark about Object-Oriented Programming. As far as I know, Dijkstra never said this, not in this exact phrasing anyway.

http://harmful.cat-v.org/software/OO_programming/

Re: Letters between Backus and Dijkstra (1979)

#75
post #56

Earlier quoted context omitted.

While I would agree with that in principle, I think the word "violence" is being stretched a bit. Being unforgiving, stubborn, demanding, hard-hearted, or anything adherence to logic might be claimed to imbue are not acts of violence, even if they are emotionally hurtful to others.

Emotional harm is still violence. it is not a strictly physical phenomenon.

That's not what that word means.

Re: Letters between Backus and Dijkstra (1979)

#76
post #41

Earlier quoted context omitted.

I've always liked the Dutch for this reason. If it isn't possible to work with somebody while disagreeing with them, then you're the problem. If you spend long enough talking to anybody you'll eventually come across disagreements. Many people take disagreements too personally. I was just yesterday talking to a paramedic. I mentioned to him the article I saw on HN about medical error being the 3rd highest cause of dea…

I don't know what your friend said, but the "errors are #3 killer" is a twisted fact. It comes from assigning "error" at the cause of death of every injury or illness that might have been non-fatal if every perfect test, advance in practice, technology, and mode of care were applied. It isn't a measure of how many otherwise healthy people were killed by errors that introduced new complications. One of highlighted exa…

A doctor failed to tell a CHILD about an appropriate level of activity for his condition, and you honestly have the gall to put quotes around that error?

Re: Letters between Backus and Dijkstra (1979)

#77
post #72

Earlier quoted context omitted.

Yes I realize that. The BMJ paper is using hyperbole to prove a point (just like Dijkstra's GOTO considered harmful). It's not really the #3 killer but to be honest it should not be in the top ten of things likely to kill you or even close to it. The medical profession, much like the teaching profession has a nasty habit of victim blaming if things go wrong when it can get away with it. They need humbling because the…

>"That we're fucking idiots all the time isn't news to us. It is news to some other professions that don't have such a tight feedback loop between success and failure." This is great, there is nothing like thinking "wtf is wrong, someone changed some library last update and that is the cause", then hours later realizing you are a moron. How exactly can this happen in medicine without severe social consequences?

Instead of library updates imagine half the doctors and nurses don't speak English with a high degree of fluency and don't come from the native culture. That is so obviously a problem for communicating subtleties that it's infuriating that it has to be explicitly pointed out.

Speaking of reform. I think the only answer is closing the gap between action and success/failure i.e. a tighter feedback loop.

Some futuristic thinking is required.

For surgery I would propose a VR sim in which they performed the same surgery again and again, with the details/features changing all the time. Then at a high level of proficiency I would copy the real movements to a machine copying the surgeons actions on a real patient with the feedback visual presenting itself to the surgeon as part of the sim.

- This helps homogenize surgeons movements.

- Increases confidence of a successful operation.

- Allows for high level practiced skill rapidly.

- Removes them from the theater directly to prevent disease.

- Calms the nerves so the surgeon is able to work without fear.

- System gets better over time with more data.

For diagnostics I would record the patient's voice describing her symptoms with a visual of the person. I would then pattern match for related conditions in my database that appear to resemble the symptoms. The system has some degree of common sense as it is a traditional expert system. Audio/Video inputs would be used to make requests e.g. can I see your arm that is paining you for more detailed visual analysis using machine learning. Vocal analysis for other detectable disease. Finally a list of options would be offered up to the doctor as plausible possibilities. In the beginning these would be offered up after the doctor made an independent diagnosis and a second opinion would also be made. This is to give feedback accuracy to the diagnosis system. Later on the 'obvious cases' would be presented to a doctor in real time as the patient began describing his or her symptoms. This would be presented either as a list or perhaps more appropriately as a mind map.

- Acts as a medical record.

- Logic behind choices can be retroactively justified.

- General practitioners can see patients faster because they won't need as many notes.

- Patients will be more confident in their diagnosis with a digital second opinion.

- Prescriptions can be autofilled to prevent error.

- System gets better over time with more data.

Now it is important to note I have no idea what I'm talking about. This took literally 30 seconds to come up with. So why hasn't something radically better already been done? I say it is very simple. It is not allowed. It is defacto illegal to do any of the above. You can't even digitize medical records properly. That is frightening.

The only way this is going to work is if we

- Provide services where they are impossible e.g. third world.

- Only provide this technology to private healthcare. Possibly even on Seasteads to avoid anti-tech litigation.

- The government creates a SMZ (Special Medical Zone) outside of the medical establishment's reach.

In addition to this you'd have to make the general public aware of how bad their healthcare really is. That's the only way to get "Tech companies screw 3rd world with experimental medicine" stories from whoever will be the next Gawker off your backs because the established order is going to do everything it can to blacken your name.

Re: Letters between Backus and Dijkstra (1979)

#78
post #41

Earlier quoted context omitted.

I don't know what your friend said, but the "errors are #3 killer" is a twisted fact. It comes from assigning "error" at the cause of death of every injury or illness that might have been non-fatal if every perfect test, advance in practice, technology, and mode of care were applied. It isn't a measure of how many otherwise healthy people were killed by errors that introduced new complications. One of highlighted exa…

There's an interesting summary of the debate about this study on Medscape [0]. Failing to tell a patient that strenuous exercise might be fatal sounds like an error to me! As it happens, my maternal grandmother was killed by a medical error (before I was born). She went in for some kind of routine surgery and didn't make it. Decades later, when the doctor involved died, among his effects were found a letter he had wr…

tell us more about your grandmother's story.

Re: Letters between Backus and Dijkstra (1979)

#79
post #19

You know, I'm wondering: could part of Dijkstra's reputed arrogance be due to a cultural difference? I'm Dutch, and bluntly calling out flaws in each other's work is not considered all that rude over here; it's almost the opposite: not calling someone out on their flaws implies we either consider them a lost cause or not worth the hassle of educating. I almost got fired from a teaching position in Sweden because I to…

Full disclosure: a) Dijkstra is a bit of a personal "hero" of mine (hero in quotation marks, because I don't like to think of myself as a hero worshipper), because it was due to him I learned of textbooks written by guys like Eric Hehner and Roland Backhouse, which ended up changing my life significantly. b) I do not really grasp the technical issues being discussed in the correspondences between Dijkstra and Backus…

Hah, I'd say that both Dijkstra and Backus are "heros" for me---scare quotes for the exact same reason. I'm mainly interested in ideology/vision in reading about the early pioneers, and I find theirs more interesting than, let's say, Knuth's.

Re: Letters between Backus and Dijkstra (1979)

#80
I'm sad that in this thread and https://news.ycombinator.com/item?id=11786193, nobody is actually talking about the technical arguments at play. I've only read the EWD692 "opening salvo" but already there are interesting things to point out.

EWD1303:

> The profound significance of Dekker's solution of 1959, however, was that it showed the role that mathematical proof could play in the process of program design. Now, more than 40 years later, this role is still hardly recognized in the world of discrete designs. If mathematics is allowed to play a role at all, it is in the form of a posteriori verification, i.e. by showing by usually mechanized mathematics that the design meets its specifications; the strong guidance that correctness concerns can provide to the design process is rarely exploited. On the whole it is still "Code first, debug later" instead of "Think first, code later", which is a pity, but Computing Science cannot complain: we are free to speak, we don't have a right to be heard. And in later years Computing Science has spoken: in connection with the calculational derivation of programs —and then of mathematical proofs in general— the names of R.W. Floyd, C.A.R. Hoare, D. Gries, C.C. Morgan, A.J.M. van Gasteren and W.H.J. Feijen are the first to come to my mind.

Backus as quoted in EWD692 (Djikstra attacks this):

> One advantage of this algebra over other proof techniques is that the programmer can use his programming language as the language for deriving proofs, rather than having to state proofs in a separate logical system that merely [sic!] talks about his programs.

From a perspective of a PL person like myself, these ideals are very compatible. Without correctness by construction, there is not enough proof reuse so formality will forever be doomed for niche applications (aka computers embedded in dangerous things). Likewise after trying out intuitionistic type theory--based things (e.g. Agda) separating the program and proof langauges just seems clumsy. Overall separating programming and proof whether spatially (seperate languages) or temporally (correctness proved after the fact) is bad, and the reasons hardly depend on the dimension of separation

Post reply on HN