Would you like to explore the functional programming side of Python? What are the advantages of this approach, and what tools are built into the language? This week on the show, author Bruce Eckel talks about functional programming in Python.

Bruce is the author of several programming books, including Thinking in Java, Thinking in C++, Thinking in Python, Atomic Scala, and most recently, Atomic Kotlin. He’s been an explorer of programming languages over his career. Functional programming—with its lack of side effects, its transparency, and its potential for parallelization—has recently caught Bruce’s attention.

Bruce’s talk “Making Data Classes Work for You” at PyCon US 2022 explored the idea of the invariance of objects.

We also discuss his next book project, the Python community, and his affection for “un-conferences”. Bruce is hosting the upcoming Summer Tech Forum in Crested Butte, Colorado, this August.

Course Spotlight: Using Data Classes in Python

Data classes were introduced in Python 3.7. When using data classes, you don’t have to write boilerplate code to get proper initialization, representation, and comparisons for your objects.

Topics:

  • 00:00:00 – Introduction
  • 00:02:15 – Musicians as programmers
  • 00:03:40 – Happy Path Programming Podcast
  • 00:04:19 – The essence of functional programming
  • 00:10:55 – Making Data Classes Work for You - PyCon US 2022 talk
  • 00:15:14 – What are things that have drawn you to Python?
  • 00:17:39 – More than just a scripting language
  • 00:21:35 – Consulting with companies
  • 00:23:40 – Video Course Spotlight
  • 00:25:04 – The frozen flag in a data class and __post_init__
  • 00:29:02 – Invariance and functional programming
  • 00:31:02 – How do you see it changing your programming?
  • 00:34:49 – Not forcing an “approach” to Python
  • 00:38:46 – Writing style in programming and books
  • 00:42:31 – Who has been the intended audience for your books?
  • 00:45:26 – Educational debt
  • 00:46:50 – Python’s community
  • 00:51:03 – New book about concurrency
  • 01:00:51 – Winter and Summer Tech Forums
  • 01:07:23 – Conference precautions and safety
  • 01:08:51 – What are you excited about in the world of Python?
  • 01:11:40 – What do you want to learn next?
  • 01:12:23 – How can people follow the things you do?
  • 01:13:13 – Thanks and goodbye

Show Links:

Level up your Python skills with our expert-led courses:

Support the podcast & join our community of Pythonistas