In 2019 or 2020, I started to extract all Joe Armstrong from his publications and conferences. It started as a small project on Wikiquote. If you are interested, please help me! If you want to help me, you can also subscribe to this blog, you will receive more quotes from Joe Armstrong and others!
The forgotten advantage of concurrent programming
The forgotten advantage of concurrent programming, a full transcription is also available on Erlang Solution website. Recorded in 2019
I wanted to build fault tolerant systems and pretty soon I realized that you can’t make a fault tolerant system on a computer, because I think in the entire computer might crash, so I needed lots of independent computers.
"Messages take time", and they propagate through space, there’s no guarantee it gets there.
I just want to model what’s going on in the real world
We need to build a world where there are parallel processes communicating through message passing and I thought they cannot have shared memory because if they have shared memory and the remote going to be the crash.
Why are people just moving the data and not the programs. We could move both of them to some intermediate point in the middle to perform the computation there.
This is a thing that really scares me, are people developing large applications that they don’t understand.
Many programs don’t have well-defined interface. They should have.
I think we seem to have forgotten that things can be small. This way of decomposing systems into small things that I can reason about.
People keep telling me this, "you’ve got to upgrade your operating system". Then they say, "Well, that’s because of security things." I don’t really have much confidence in them. If they said we have to change it once every 20 years, I could believe that it was reliable, but telling me that I have to change it once every six weeks is crazy.
One of the things we’ve forgotten, is the importance of protocols and not describing them accurately.
If you imagine the combination of petabytes memories with LiFi and communication at tens of gigabits per second but the combination and like 10,000 Cray-Ones and a little thing like your fingernail everywhere in every single light bulb that’s like an atomic bomb hitting software. What we’re going to do with it, nobody’s got a clue.
deployment is a problem because even if somebody made an open source privacy application, it needs 50 million users to take off. Apple and Google and everybody have dominated this way of deploying something to hundreds of millions of people [...] the first one to get a hundred million users wins basically.
Google knows everything about us but we know nothing about Google.
I always imagine a historian in 2 or 300 years' time writing the history of this period. It would just be like the Dark Ages, the ages of confusion. Will it end with computer failures that kill millions of people or will it transition into something that is for the benefit of mankind? We don’t know at the moment and I don’t know how long it will be before we know.