I never get tired of reviewing Joe's past talks. I didn't know him personally and I didn't always agree with him on some non-technical opinions but his disappearance was something I felt personally.
@user-uq5qw1fk3d
3 жыл бұрын
I loved Joe's The Mess We're In talk and have rewatched it multiple times over the years and am looking forward to watching this. Thanks for uploading all the older content recently!
@udirt
Жыл бұрын
I love the all sequential programming languages get error handling wrong, this would better explain the communication barrier admins face reporting structural errors to devs than any other explanation ever thought of.
@csbnikhil
2 жыл бұрын
I feel happy listening to him.
@wuschelthepuschel
3 жыл бұрын
I upvoted this before seeing it because there is no such thing as a bad Joe Armstrong talk.
3 жыл бұрын
"Scaling down" sounds good, if you know what system you're building before you start. If you don't, which is always the case, you're basically building your best guess of what the system should be and then iterating and changing it. Doing this with an already scaled up system seems unnecessarily complex to me. You first need to find your problems, fix them, and then worry about scaling those fixes up.
@LeviRamsey
3 жыл бұрын
The problem with that approach is that it's amazingly easy to (especially via premature optimization: it's fairly common that algorithms that are slow (even Big-O slow) don't parallelize well, especially when parallelism entails network communication) fix problems at small scales in ways that will require a top-down rewrite to work at larger scales.
@laughingvampire7555
Жыл бұрын
sensei 🙇🏻
@owenimholte3835
11 ай бұрын
Whoah. He called the WhatsApp acquisition perfectly! 1:02:00
@Kenbomp
3 жыл бұрын
Brilliant.
@AlexRodriguez-gb9ez
3 ай бұрын
Makes me want to learn Elixir... Any starter project ideas?
@a0um
3 жыл бұрын
He glossed over runtime upgrades… are they really working smoothly? Any pointer for further study would be greatly appreciated.
@davidjohnston4240
Жыл бұрын
That's Erlang's best party trick. You can find videos of examples on youtube.
@Oktokolo
Жыл бұрын
Runtime upgrades definitely do work, but you probably don't need them. If you have multiple machines, you can always just stop a machine from accepting more work, wait, till it is idle, shut it down, update and start it again. It probably was more useful in the mainframe era, where a single machine represented a huge chunk of the combined processing power and you didn't want to restart them for a minor bug fix.
@lepidoptera9337
Жыл бұрын
@@Oktokolo The limitations on old hardware were IO based. Unloading and re-loading memory was expensive. Today a well architected SSD array is close to saturating main memory bandwidth. A reliable architecture has to be able to freeze state anyway.
@a0um
3 жыл бұрын
There seems to be an error at 33:30 where it’s written “World is concurrent“, shouldn’t that be “parallel”? Concurrency is when processes are interleaved on a single executor, parallel is when they run on independent executor, or not?
@justin883
3 жыл бұрын
The world is at least concurrent and it might be parallel. Maybe we don't have access to the hardware it runs on to check.
@efraimcardona8452
2 жыл бұрын
Concurrency is processes being executed independently taking care at nodes of possibly shared resources. Parallelism means executing all processes at the same time while coordinating them globally with as many processors as needed. That is to say parallelism is a "synchronization" of concurrency
@Luredreier
Жыл бұрын
I wonder what he'd do with Rust...
@SneedsFeeduckAndSeeduck
Жыл бұрын
Distributed computing is easy… until you stop assuming every actor in the system is honest.
@mahdi2761
3 жыл бұрын
RIP Joe
@linkernick5379
3 жыл бұрын
I had the first enlightenment in my way of grasping CS at the moment of the end of reading Joe Armstrong's thesis.
@triularity
10 ай бұрын
@39:37 - You still need backups. It doesn't matter how reliable your storage is if the data gets corrupted (intentionally or unintentionally) and then gets propagated through out your network. Too late to realize this after your long running system has accumulated month, years, or decades of data, which is now useless due to it being invalidated. Imagine in today's world having someone hack into such a banking system and change everyone's transaction/balance history. Even if you you could detect the data was altered, you still wouldn't know what it is suppose to be. He does mention using snapshots.. but seemingly in the context of short-term restarting, not "I can go back 2 years and do a full data audit", which long term [protected] backups can provide.
@mortenbjoernsvik6550
Жыл бұрын
kubernetes done right 🙂
@kurbads74
Жыл бұрын
Machine B does not know that it is a replica. Machine A does not know it is not a replica.
Пікірлер: 27