Beyond Paradigms: a new key to grok Python & other languages

Focus on features, not paradigms. This new approach to the study of programming languages offers practical advice for programmers learning a new language, adopting coding idioms, and choosing suitable design patterns.


Java is object oriented and Haskell is functional. How about Python? Is it really OO with free-standing functions and weak encapsulation? Python has lambdas and closures, but is it functional? Are these useful questions?

In the last 10 years a new approach to the study of programming languages has emerged: focus on features, not paradigms. This approach offers more direct, practical advice for programmers learning a new language, taking up coding idioms, and choosing suitable design patterns.

Topics covered:

  • The problem with programming paradigms, and categories in general
  • The language features approach
  • Language features and design patterns
  • Case study: Strategy pattern with first-class functions
  • Conclusion and key take-aways

Domains: Algorithms, Code-Review Domain Expertise: none Python Skill Level: basic Link to talk slides:

https://speakerdeck.com/ramalho/beyond-paradigms-go-and-python-examples

Abstract as a tweet:

BeyondParadigms: Languages like Python and Go don't fit programming paradigm categories very well. A more pragmatic and practical way to understand languages is focusing on features. This is what "Beyond Paradigms" is about.

The speaker’s profile picture
Luciano Ramalho

Author of Fluent Python, published in 9 languages. Co-founder of the Python Brasil Association and of the Garoa Hacker Clube — the first hackerspace in Brazil. PSF Fellow. Principal Consultant at ThoughtWorks.