Putting aside this silliness of using AI to declutter AI generated noise... Can anyone explain why someone would be inclined to use this app as opposed to asking an existing AI chatbot to summarize an article? What exactly does this app add beyond that?
Also, Smalltalk was heavily inspired by LISP[0]. The line between functional and object-oriented is quite blurry. Especially in a pure OO language like Smalltalk. The dynamic and prototypical model of JS is definitely another example of the subtle harmony of functional and OO.
> If the code of the components can be written so that the communications mechanisms, and process separation mechanisms are irrelevant, then those mechanisms are details. And details are never part of an architecture.
> That means that there is no such thing as a micro-service architecture. Micro-services are a deployment option, not an architecture.
Coming from a C#/Java background, discovering Smalltalk was an eye-opening experience regarding supposed "legacy" programming languages. I would argue it's a more expressive language with simpler syntax (I dare say the simplest) and has had language features for decades that Java and C# have only recently added. That's how I learned newer isn't always better.
This bit of the article struck a chord with me: "The issue is institutional knowledge — when the people who wrote an application 20 years ago leave, the remaining people often don’t know the application with anything close to the same intimacy."
Code readability, testing practices, and the types of patterns employed (or really the types of anti-patterns avoided) are more important than the language used if you expect anyone to be able to maintain a system over time. These are like embedding artifacts of institutional knowledge in your code to guide future maintainers. The choice of language alone doesn't carry any institutional knowledge.
> Code readability, testing practices, and the types of patterns employed (or really the types of anti-patterns avoided) are more important than the language used
This is very true, but also a bit of a fallacy - in particular for unexperienced developers.
Saying it in the way you did can create the impression that the choice of the language is not important as long as the mentioned properties are taken care of. But it does not mention that these things are not independent of each other. The choice of language has a huge impact on readability, testing and patterns (all else being equal).
I would phrase it the other way around: because code readability, testing practices, etc. are so relevant, it is important to choose a language that makes these things as easy and productive as possible.
I think much more than language syntax and features, it was impressive until ~5-10 years ago just how advanced IDEs for Smalltalk and Lisps were compared to any other language. There has been a massive catch up in recent years, though I think many dynamic languages are still behind on their IDE support compared to these ancient technologies.
For a little while UNIX seemed a couple of interesting ideas when compared against MS-DOS/Windows 3.x and Amiga OS, then I discovered Xerox PARC research, and the world of Lisp Machines, Mesa XDE, Mesa/Cedar, Smalltalk.
Or if you want a closer example, RAD development tools for the desktop versus what SPA still aren't able to offer on the Web.
Yes, many organizations have made the mistake to switch language in hope of solving their problem with a messy code base when it was their own bad practices that where at fault all along and then consequently just repeating bad practices in another language.
It is not the language that is the limitation, it is the programmer.
I've heard of Bridge, but had no idea how it's played. I looked it up and it's totally not what I expected. Sounds interesting. Thanks for the suggestion.
This seems to be the sentiment from others as well. I'll probably refocus efforts on finding a less isolating and arduous hobby and instead look for more social, physical, and entertaining hobbies. Thanks for your input.
Congrats on retiring. Thanks for the suggestions. I've added them to my list. Following your example, it sounds like maybe I should encourage my dad to seek those simpler hobbies instead of getting involved in programming, which can be quite arduous. You mentioned playing a musical instrument and I remembered my dad was a pretty good piano player years ago. He hasn't played in years, but he might be interested in picking it up again now that he has the time.
In late 2019, two years after I retired, I attended a presentation by a neuroscientist who brought his grand piano. The piano had a sign on it, something like "This machine stops dementia." Since then, music has been my daily avocation.