DevNexus 2019 – Mixed Paradigms – Method to the Madness Keynote- Venkat Subramaniam

See the table of contents for my other blog posts from the conference


We are problem solvers

Programming languages

  • For communication
  • Expressive and fluent code
  • Uses about 15 languages. Not fluent in any of theM
  • Quadrants – static vs dynamic. Strong and weak typing. Ruby gives a lot of warnings because strongly typed.

“All problems in computer science can be solved by another level of indirection” -David Wheeler

  • procedural – pointers/references
  • object oriented – polymorphism
  • functional – lambdas

Imperative vs declarative

  • more important than OO vs functional.
  • Functional programming is declarative programming with higher order functions
  • imperative is easy to write but harder to read
  • functional is easy to read. Harder to write partly because we spent so many years writing in imperative style
  • Imperative gets harder as problem gets more complex
  • need to focus on both imperative and functional. Hybrid languages
  • lazy execution does not survive mutability. Dont work around compiler errors!

Future – will care more about async than running in parallel. Want to be able to make async without changing structure of code. Kotlin and JavaScript do this now. Java will in a few years with fibers

Changing mind is important. Not whimsickly. But to make progress

Wisdom is realizing there are no absolutes

My take

Great start to the day. I like how so many languages were compared. With humor too. I like how Venkat does a mix of slides and live coding/notes. I really like that he acknowleges that it is ok for things to feel hard

Leave a Reply

Your email address will not be published. Required fields are marked *