The Eric Normand Podcast-logo

The Eric Normand Podcast

Education Podcasts

An off-the-cuff stream of Functional Programming ideas, skills, patterns, and news from Functional Programming expert Eric Normand of LispCast. Formerly known as Thoughts on Functional Programming.

Location:

United States

Description:

An off-the-cuff stream of Functional Programming ideas, skills, patterns, and news from Functional Programming expert Eric Normand of LispCast. Formerly known as Thoughts on Functional Programming.

Language:

English


Episodes
Ask host to enable sharing for playback control

All about the stratified design lens

9/25/2023
In this episode, I introduce the stratified design lens, which talks about how and why we split things into layers.

Duration:00:12:24

Ask host to enable sharing for playback control

All about the time lens

9/19/2023
In this episode, I introduce the time lens, and I posit a law about representing time in complex domains.

Duration:00:10:36

Ask host to enable sharing for playback control

All about the volatility lens

9/11/2023
In this episode, I introduce the volatility lens, which seeks to help us write code that deals with a changing world.

Duration:00:18:28

Ask host to enable sharing for playback control

All about the architecture lens

7/31/2023
In this episode, I introduce the architecture lens, its questions, and its goal of modeling architectural domains to manage complexity.

Duration:00:24:20

Ask host to enable sharing for playback control

All about the executable specification lens

7/24/2023
In this episode, I introduce the executable specification lens, its questions, and its goal of getting to runnable, testable code as quickly as possible.

Duration:00:15:18

Ask host to enable sharing for playback control

All about the composition lens

7/10/2023
In this episode, I introduce the composition lens, its questions, and its goal of figuring what's true when you perform multiple operations in a row.

Duration:00:13:44

Ask host to enable sharing for playback control

All about the operation lens

7/3/2023
In this episode, I introduce the operation lens, its questions, and its goal of capturing the use cases of your software.

Duration:00:19:40

Ask host to enable sharing for playback control

Data lens

6/26/2023
In this episode, I introduce the data lens, its questions, and its goals of capturing relationships among data values in data.

Duration:00:23:18

Ask host to enable sharing for playback control

All about the domain lens

6/19/2023
In this episode, I introduce the domain lens, its questions, and its goal.

Duration:00:19:54

Ask host to enable sharing for playback control

How does executable specifications compare with other modeling paradigms?

6/12/2023
In this episode, I compare executable specifications to UML, DDD, and software design.

Duration:00:23:25

Ask host to enable sharing for playback control

What is the title of my new book?

6/5/2023
I've found a better title for my book: Executable Specifications. Listen to find out why it's better.

Duration:00:07:26

Ask host to enable sharing for playback control

What are the domain modeling lenses?

5/29/2023
I'm organizing my new book in terms of lenses. Each lens focuses our attention on one important aspect of software design. In this episode, I briefly introduce each lens.

Duration:00:20:58

Ask host to enable sharing for playback control

How is domain modeling evolving these days?

5/22/2023
I talk about the progress I've made on my book and why I'm throwing it away and starting over.

Duration:00:20:20

Ask host to enable sharing for playback control

Why don't I encounter more type errors when programming in Clojure?

5/15/2023
I give another reason why I don't encounter so many type errors in Clojure.

Duration:00:07:17

Ask host to enable sharing for playback control

What is the "reify to an interpreter" refactoring?

5/8/2023
Watch the creation of a simple refactoring to turn functions into data.

Duration:00:07:13

Ask host to enable sharing for playback control

How to teach an essential skill in domain modeling?

4/24/2023
One important skill in domain modeling is learning to see the semantics of your language, past the habits you've developed. To do that, it helps to see the same example in multiple languages. So how do I show examples in multiple languages without expanding the size of my book?

Duration:00:12:05

Ask host to enable sharing for playback control

What is an isomorphism?

4/17/2023
An isomorphism is a one-to-one mapping from two sets, and encoding your domain model involves finding a mapping between the real world and your code. So does domain modeling involve isomorphism?

Duration:00:05:12

Ask host to enable sharing for playback control

Applying domain modeling to an existing data structure

4/10/2023
Domain modeling also works after you've already got lots of code. How can we apply domain modeling analysis to existing data structures?

Duration:00:09:44

Ask host to enable sharing for playback control

What is the commutative property?

2/20/2023
We discuss the commutative property, why we use it, and three different possible meanings.

Duration:00:06:21

Ask host to enable sharing for playback control

Why is the associative property important?

2/13/2023
We look at several examples where the associative property gives us expressive power.

Duration:00:12:31