(no title)
romaniv | 7 months ago
https://youtu.be/wo84LFzx5nI?t=823
He mentions Alan Kay about dozen times and uses quotes and dates to create a specific narrative about Smalltalk. That narrative is demonstrably false.
romaniv | 7 months ago
https://youtu.be/wo84LFzx5nI?t=823
He mentions Alan Kay about dozen times and uses quotes and dates to create a specific narrative about Smalltalk. That narrative is demonstrably false.
Mathnerd314|7 months ago
As far as the narrative, probably the clearest expression of Casey's thesis is at https://youtu.be/wo84LFzx5nI?t=6187 "Alan Kay had a degree in molecular biology. ... [he was] thinking of little tiny cells that communicate back and forth but which do not reach across into each other's domain to do different things. And so [he was certain that] that was the future of how we will engineer things. They're going to be like microorganisms where they're little things that we instance, and they'll just talk to each other. So everything will be built that way from the ground up." AFAICT the gist of this is true, Kay was indeed inspired by biological cells and that is why he emphasized message-passing so heavily. His undergraduate degree was in math + bio, not just bio, but close enough.
As far as specific discussion, Casey says, regarding a quote on inheritance: https://youtu.be/wo84LFzx5nI?t=843 "that's a little bit weird. I don't know. Maybe Alan Kay... will come to tell us what he actually was trying to say there exactly." So yeah, Casey has already admitted he has no understanding of Alan Kay's writings. I don't know what else you want.
Fr0styMatt88|7 months ago
Honestly would love to see a Kay and Casey discussion about this very thing.
I find the discussions about real domain vs OOP objects to be a bit tangential, though still worth having. When constructing a program from objects, there’s a ton of objects that you create that have no real-world or domain analogs. After all, you’re writing a program by building little machines that do things. Your domain model likely doesn’t contain an EventBus or JsonDeserializer; that purely exists in the abstract ‘world’ of your software.
Here’s a thought: Conceptually, what would stop me from writing an ECS in Smalltalk? I can’t think of anything off the top of my head (whether I’d want to or not is a different question). Casey even hints at this.
This is probably the best Casey talk I’ve ever seen and one of the clearest definitions of ‘here is my problem with OOP’. I don’t agree with everything necessarily, but it’s the first time I’ve watched one of these and thought “yep they actually said the concrete thing that they disagree with”.