(1/5) I grew up in the Programming Languages research community and have recently begun attending Machine Learning conferences. One perspective that I don't see much in either community is that #MachineLearning is a form of #programming.
(2/5) PL/formal methods researchers tend to think of programs as engineered objects, and study abstractions/tools for principled engineering. But the big assumption here is that you can formalize your goals and the world in which your programs run. That's not always realistic.
(3/5) In contrast, #MachineLearning lets programs be "found" objects. "I don't have a full spec for my program and can't write the code myself, but here's some data on what it does. Discover it!" This is still #programming, albeit done inductively rather than deductively.
High level #python#tutorial thread:
Python is a high level language that runs bytecode in its virtual machine.
Everything is an object.
It supports OOP up to multiple inheritance and functional programming.
Typing is polymorphic - duck typing is preferred