Podchaser Logo
Home
#355: Python 3.12 is Out!

#355: Python 3.12 is Out!

Released Tuesday, 3rd October 2023
Good episode? Give it some love!
#355: Python 3.12 is Out!

#355: Python 3.12 is Out!

#355: Python 3.12 is Out!

#355: Python 3.12 is Out!

Tuesday, 3rd October 2023
Good episode? Give it some love!
Rate Episode

Episode Transcript

Transcripts are displayed as originally observed. Some content, including advertisements may have changed.

Use Ctrl + F to search

0:00

Hello

0:00

and welcome to Python Bytes where we deliver

0:02

Python news and headlines directly to your earbuds.

0:05

This is episode 355 recorded October 3rd, 2023. And I am Brian

0:07

Ocken.

0:12

And I am Michael Kennedy. I almost said the second

0:14

because I thought we were going to record yesterday and we

0:16

didn't.

0:17

But, add it off. Anyway, welcome

0:20

everybody. It's

0:22

good to have the show. Thank you everyone

0:24

for supporting us through purchasing

0:27

courses at TalkPythonTraining or purchasing

0:30

the PyTest course, of course,

0:32

or supporting us on Patreon. We love Patreon

0:34

supporters. And if you want to

0:37

reach us, reach us through Fostadon

0:40

on Mastodon at MichaelKennedy,

0:43

at

0:43

BrianOcken, and at PythonBytes.

0:47

And if you're listening to this, you can also join us

0:49

live sometimes. We

0:52

usually are Tuesdays at

0:54

11, Tuesdays at 11-ish

0:57

on Pacific time. So

1:00

join us and you can just go to PythonBytes.fm

1:03

to see the link. But we have

1:05

some exciting news. Yesterday was exciting

1:07

day.

1:08

Tell us why.

1:11

We've been waiting a year for this one. Python 3.12

1:15

is out. Absolutely.

1:18

Absolutely big news. If you

1:21

look at how much stuff, it's easy

1:24

to just go, Oh, what are there's like,

1:26

these four new features I care about

1:28

or something along those lines. It's like, okay,

1:31

well, there's a new Python. If you look

1:33

at the changelog, Brian, if

1:35

you look at the, what's new and you scroll this, I

1:38

threw this into omnivore.app.

1:42

And it said it's 48 minutes of

1:45

reading to read the what's in this release.

1:47

Wow. That's a lot. That's a lot

1:49

of stuff. That's a lot of good

1:51

things. I think

1:54

it's, I don't even know how much it's even

1:56

called out in the what's new because it's

1:58

a little tricky to put in. the not

2:01

new, it's just more. But

2:03

the faster CPython initiative,

2:05

I think, you

2:08

know, is going strong for 3.12 as it was for 11 and

2:10

it will be for 13. So not even covered in the

2:15

what's new, I think is Python 3.12 should

2:18

just be faster. That's really cool. Yeah.

2:21

But if you look at the, you know, they kind

2:23

of have, it's really nice, even though it's 48 minutes

2:26

of reading, they do put the

2:28

headline items at the front here. So

2:31

there's new type parameter syntax

2:34

and pep 695. So,

2:36

Brian, how do you like your generics? I

2:40

haven't talked about it, actually. Or your

2:43

templates. If you're a C++ guy, they don't call

2:45

them generics, like C sharp and Java,

2:47

they call them generics. But C++ calls

2:50

them templates. Yeah.

2:52

So Python calls them generics. We

2:55

have that. We had it before, actually. So this is

2:57

not

2:58

new, new.

3:00

Like there were ways if I scroll

3:02

down somewhere in the big long list, there was

3:05

like, here's how you do it before. And

3:07

here's how you do it now.

3:09

Honestly, meh,

3:11

I mean, no disrespect

3:13

to people working on it, but it's just not like a thing

3:15

that, that I'm going to be focusing.

3:17

It's just not a huge deal to me, right? It's something I feel

3:20

like I'm going to do a lot of

3:21

maybe. I

3:22

feel like most of the places

3:25

that I would have wanted to use it, it's kind of like

3:27

the self parameter sort of takes care of that

3:29

for me. But anyway, very exciting for people

3:31

who do it, do need to use this. And

3:33

if you're building a library, like a package,

3:36

possibly, this will

3:38

give you a lot of flexibility for

3:40

extensions and sensibility

3:43

and whatnot. But I

3:44

don't know. What

3:45

do you think? Exciting? I

3:47

think I'm not excited about yet, but I think I'll be using

3:49

it probably pretty soon. So yeah.

3:53

Yeah. F strings are all grown

3:55

up now. Oh boy, they can do all the Python.

3:57

So F strings, I don't know. People

4:00

know, but fstrings have their own separate

4:02

implementation separate to

4:04

like regular strings and stuff and

4:07

it's a lot of it was done in C. They're

4:10

really wild. Because

4:12

of that, they're somewhat limited in what you can

4:14

put inside the curly braces. There's like different

4:16

kinds of expressions. You can do ternary

4:20

like if tests and you can just say

4:22

like thing.upper as what goes

4:25

in there, but you can't write full

4:28

Python in fstrings. And

4:30

the most obvious was you couldn't put

4:33

quotes in the little curly between

4:35

the curly braces or you couldn't put the same

4:37

quotes that you had on the outside. Yeah,

4:40

I'd always be like, okay, this one's

4:43

getting single quotes because the string is a double

4:45

quote or vice versa. You have to kind of think

4:47

it out. So now it's like a

4:49

little more freeform. What

4:51

can go in there? I don't know. That's

4:53

initially a recommendation of writing your app

4:56

inside the fstring, but you know, it

4:58

gives you more flexibility. So there it is. I

5:01

am super psyched about 648, which

5:04

is a unique per interpreter

5:06

Gil Eric Snow. Man,

5:08

you've been on this for a while. Congratulations and

5:10

that this is out. So this

5:12

has mega possibilities to unlocking

5:16

multi-threaded performance in Python. Don't

5:19

know that it's actually has anything

5:22

to do with threads yet. I

5:24

think it's way more manual and maybe even just at the

5:26

C level. Yeah,

5:28

it said that the pep says it's at the

5:30

C API right now. Three

5:33

thirteen might have a Python

5:35

API access to it. Yeah.

5:38

I mean, what I would love is like, I'm going

5:40

to create a thread and I'll pass

5:42

a flag that says use your own

5:44

Gil LA or

5:47

I'm going to create a thread pool

5:50

executor and say for every thread that you create,

5:53

get a new Gil. That means full

5:55

on parallelism in Python. I

5:57

mean, I'm sitting here on my. Well,

6:00

what we're talking about then is basically

6:02

forking off a new interpreter

6:05

from Python. Yes, in

6:08

a sense, but without a new process.

6:11

Okay. Right? Yeah. So,

6:14

why not? I don't believe you can

6:17

share. Maybe

6:19

you can share data directly. I don't

6:21

think you can share it directly because it would have to

6:23

share the gil. So, I think you've got to like

6:25

serialize the data over, but you

6:28

can get better performance if you don't have to start

6:30

a bunch of processes potentially and

6:32

do some message passing. But, you know, here on my

6:34

M2 Pro Mini, I have 10 cores

6:38

and all the Python I want to write, I'm only going

6:40

to ever be able to do one core's

6:42

worth of work for computational things unless

6:44

I go crazy with like the

6:46

no-gil, scythe on, write some

6:49

C code or, you know, things like that, right?

6:52

So, this has the possibility to take advantage

6:54

of, you know, modern hardware, right?

6:58

Very exciting. Impact monitoring. So, if

7:00

you want to like hook into events

7:03

for like profiling, debugging type

7:05

of stuff, you can do that with this, high-end

7:09

bug effects. And

7:12

also, one of the big things that came in 311 was,

7:14

did you mean type of recommendations for...

7:17

We couldn't import request. Did

7:19

you mean requests, plural? Things

7:22

like that, right? And so, that's further

7:25

improved. There's

7:27

a buffer protocol which allows direct access

7:29

to memory of things like byte arrays and

7:32

other low-level items that you don't have to

7:34

like go through the Python level, you just go, give

7:36

me the direct access to

7:38

the memory, that's kind of cool. Nice. Good

7:41

time, Ben. You can have,

7:43

yeah,

7:43

I bet,

7:45

path.path can be subclassed,

7:47

that's kind of cool. Hey, OS module

7:49

gets Windows things, that's nice. But

7:52

you can see, there's a command line

7:54

interface that adds a SQL lite 3

7:57

module, so you know you can do like python-m. HTTP

8:00

server or something along those lines. You

8:03

can do that for SQLite now as well, which is kind

8:05

of neat. Yeah,

8:08

this is exciting. Async.io has some

8:10

improvements with benchmarks showing up to a 75%

8:12

speed improvement in

8:14

certain areas. I'm sure not generally, but

8:18

yeah, a bunch of other things. There's also some security

8:20

updates, some C API,

8:23

there's performance improvements with comprehension

8:26

inlining and there's a Linux performance

8:29

profiler. Yeah,

8:32

a bunch of different things and

8:34

that's pretty much the highlights. I

8:37

mean there's some thinning, some

8:40

culling of the standard library. There

8:43

was an async-chat example implementation

8:46

type of things

8:47

in the standard

8:49

library, so it's not anymore.

8:52

Good.

8:55

Yeah, so that's not there, but generally

8:59

you look at some of the things that were deprecated or

9:01

removed, but yeah, that pretty

9:04

much covers a few more type things and that's

9:06

your new Python.

9:10

Awesome. Are you excited? How

9:12

long can you switch to it? I'm working on it right

9:14

now, man. Are you? Yeah.

9:18

So yeah, like this.

9:23

I'm going to tell you a story.

9:26

Okay. So yesterday, I have

9:30

been slowly becoming one of the

9:33

maintainers for a plugin called PyTest

9:35

Repeat. So

9:39

it hadn't been tested up through 3.9, I believe.

9:46

So I wanted to, but it worked fine

9:48

on the newer pythons, but I just wanted to make

9:50

sure it was updated. So I did some things

9:52

like move the

9:56

continuous integration

9:58

to GitHub Actions.

9:59

on

10:01

Travis before so moved to get our actions

10:03

and so 312 out I wanted to update

10:06

the test to 312 right so

10:08

this is using talks

10:10

and so I

10:13

I just went through and updated

10:16

the talks any file to add 312

10:19

installed on my machine what's

10:22

the problem ran it and created

10:25

a new virtual environment install

10:27

talks whatever

10:28

and ran it and it blew up

10:30

no no yeah

10:33

it what what happened is I got this

10:36

Python attribute error module

10:38

package util has no attribute

10:41

imp

10:41

importer did you mean zip importer

10:44

I'm like I didn't mean any of that stuff so no

10:48

idea so I'm

10:50

like trying to figure this out like clearly

10:53

other people are releasing at 312 that we

10:55

they surely have come up with this

10:57

I dug through a long I was researching

11:00

a ton on this

11:02

and basically I thought

11:04

there's something weird going on between pip

11:07

and talks and Python 312 because

11:09

I knew that the imp imp importer

11:12

thing was deprecated I don't know what it is

11:14

but I knew it was deprecated and it was taken out in 312

11:17

I think so it's not

11:19

there and no mostly

11:21

you don't have to care about it except

11:24

for I ran into this so what was happening I

11:26

didn't know so I did come up with a fix

11:29

though and I found out this morning with the

11:31

what really was going on so it's

11:33

a long story but I'll try to make it quick

11:35

the the fix I came

11:38

up with was there was a in in

11:41

talks any you can say download

11:43

equals true so when it creates a virtual

11:45

environment

11:46

it creates the it

11:48

updates to the latest pip so

11:50

what was happening was but without

11:53

that I was using an older pip but

11:55

I don't know I didn't know why why was it

11:57

using an older pip that's That's

12:00

the part where I didn't know why. So this fixed

12:02

it, but it's kind of a band-aid. It's a little

12:04

bit of an ugly band-aid. So what's

12:07

the real fix? The real fix

12:09

is, Torx uses

12:11

a package called Virtualenv.

12:14

So that's not the built-in VENV. It's

12:17

the third-party package, Virtualenv.

12:20

And

12:21

Virtualenv has some cool

12:23

features. One of the things it does is it

12:25

keeps a little cache

12:28

of third-party packages

12:30

to store, to load up. And

12:33

it doesn't update them all the time. It does it,

12:35

like, I don't know, every 14 days or something

12:37

like that. It's kind

12:39

of a slow update thing. And it makes

12:41

things run faster because you don't have to keep

12:44

downloading all the time. But I had an old

12:46

pip cached. So the real

12:48

fix was I

12:51

went through and I probably didn't have to do

12:53

the reset, but I called Virtualenv

12:56

with reset app data and

12:59

then did an upgrade. I probably could

13:02

have just done the upgrade. Upgrade embed

13:04

wheels. And it updated my

13:06

pip, cached pip to

13:08

the latest. Anyway, so I'm going to,

13:11

I wrote this article about how I patched

13:13

it. I'm going to update it today to

13:16

say the real fix is to

13:18

clean out your Virtualenv

13:20

pip cache. Or Virtualenv cache. So

13:24

yes, I'm working on updating to 312. Nice.

13:28

Yeah, that's cool. I

13:30

also have to shout out to Jurgen.

13:33

I don't know how to pronounce his last name, GMACH.

13:36

Jurgen helped me to debug

13:39

the problem today. So that was awesome. Excellent.

13:44

One more shout out. Henry Shriner says,

13:46

the buffer protocol that I described is not new,

13:48

but the pure Python version of

13:50

it, 312 is.

13:52

Ah, okay. Excellent.

13:56

All right. Over to you.

13:59

Uh, oh.

13:59

I just did this. This is my topic.

14:04

Just a follow up to my topic. This is your topic. Okay.

14:06

Excellent. Yeah, yeah, cool. All right. Let's

14:09

talk about

14:11

the present by talking a bit about the past. So

14:15

very exciting news. The Python

14:19

developers survey results are out.

14:21

It's slightly confusing

14:24

in that it says the Python developer survey 2022

14:26

results. Like wait a minute.

14:28

It's September 2023. Is

14:31

this last year's one or the, no, this is

14:33

the one that just came out on the PSF

14:36

blog they just, um, I

14:38

found they just announced

14:40

like these are finally put together,

14:43

analyze a report from the 20, the end

14:45

of 2022 is now out. So

14:49

very exciting and also new. I

14:51

did a video on YouTube actually

14:53

where I had a first reaction

14:55

to it. So this is an 18 and a half minute video.

14:58

I'll link to it. You can check it out if you want to go deep.

15:01

And because this video exists, we'll just kind of skim

15:03

it, Brian. We won't go over too much of it, but, uh, I

15:06

basically didn't open up

15:08

or read the survey results until I hit record

15:10

for this video and then I just dove into it. So that's fun. People

15:12

can can check that out if they want, but let's

15:15

see. We can hit some of the highlights, uh,

15:18

general Python usage, 85% of the people who

15:20

Python, Python primarily

15:23

that way. So it's not like

15:25

a second language, you know, but

15:27

it's mainly what they do, which is pretty cool. There's

15:30

a lot of these that add to over a hundred. So, um, take

15:33

it for what it is. There's also like

15:36

a little gray, um, like

15:39

a light gray and a dark gray, um,

15:42

I

15:44

know word or legend, and

15:46

that will, they often overlay these things

15:48

to show them side by side. So for example, it says Python

15:51

usage with what other language? Like if you're

15:53

not, you're going to use another language. What do you also

15:56

use in addition to Python?

15:58

Primarily being Python being the main language. And

16:00

it has like this one is the prior year

16:02

and this year again with

16:04

the offset by one a little bit So

16:08

guess what the top three are JavaScript HTML

16:11

and CSS are those languages? No No,

16:15

can you make it? Here's a rule for what

16:17

is a language in my mind probably can I

16:19

make a thing that runs on its own from that?

16:22

Set of syntax JavaScript. Yes

16:25

C++. Yes Java. Yes, I

16:27

forgot. Yes CSS No, but

16:30

nonetheless Yeah,

16:33

I make that distinction is it like it's like it's a it's

16:35

a I feel like it's a trade-off

16:37

of like I do Java or I

16:39

do Python or I could choose one or the

16:42

other but they're not if it's not interchangeable

16:44

I'm not sure I don't know. It's somewhat interesting,

16:46

but I'm I'm

16:48

on the fence. It's they've got they're

16:50

both complicated enough that I think

16:53

it takes training to learn it So when

16:55

I mean I wouldn't think I wouldn't think of like

16:57

any files as a language But

17:00

so there are a lot there are a lot more complex

17:02

than any file or something Sure.

17:05

All right. So I

17:07

think I put go on that every year. So the the

17:09

top Top three languages

17:12

used along with Python three

17:14

of the four because there's a Combo,

17:17

I don't know. I would really

17:19

call a separate language. But anyway, JavaScript HTML

17:22

CSS combined and SQL and those basically

17:25

that block tells you guess what people

17:28

build web apps with Python, right? That's

17:31

what it says. Yeah here and web apps are

17:33

often five six seven different languages

17:37

which is partly why the web is hard, right, but There's

17:41

that and then Bash

17:43

and shell, I mean that kind of speaks to the

17:45

DevOps Automation side of

17:47

things and then CC plus plus

17:49

Brian you're kind of down in that realm, right? Yeah,

17:51

that's most of the half my time and that's it interesting

17:54

that that's that large still so

17:57

it's cool Yeah, take another thing you

17:59

would want to consider here if you like look at this is

18:02

TypeScript and JavaScript. Those

18:04

should be the same. If you say HTML

18:07

slash CSS,

18:09

you should say JavaScript slash TypeScript,

18:12

which bumps that up even

18:14

higher, right? Because TypeScript

18:16

is just like a better JavaScript. All

18:18

right, let's go. If

18:21

you're going to do data science, most people use

18:23

SQL as their first language

18:26

that they're going to do. And

18:28

yeah, it's interesting. Let's see

18:30

some of these things are about like how

18:32

do you do work? I

18:34

think it's interesting this one here. What do you use Python

18:37

for the most? Web development

18:39

number one, data analysis

18:41

and machine learning, which is kind of like

18:43

the data science block and then other

18:48

whole bunch of other. And

18:50

I think

18:52

I kind of think of Python as having a

18:55

one-third, one-third, one-third kind of partitioning

18:57

where the web development,

18:59

API development,

19:01

stuff,

19:03

service functions, all those things live

19:05

in one-third and then data science lives in another

19:07

third and then there's like

19:10

the catch-all block of everything else.

19:13

So this kind of says that maybe the

19:15

web development side is a little smaller, but the

19:18

end of the random section is a little

19:20

bit bigger, but roughly I

19:22

think that's a good rule of thumb. Yeah.

19:26

Yeah.

19:27

And I

19:31

think finally legacy Python has

19:33

been vanquished. It's been

19:35

vanquished for three years now.

19:37

Python 3 versus Python 2 basically

19:42

it's Python 3. That's like 94-95%. Ironically,

19:46

it went down a little bit to like

19:49

Python 2 made a bit of a comeback this year. It's

19:53

probably within the variability

19:56

of the number of people and the type

19:58

of people that responded to the survey.

22:00

and PSF and have them change this question

22:02

because unit testing framework. I think you

22:05

mean automated testing framework because

22:08

it might not be a unit test and people

22:11

get confused by that maybe.

22:13

I don't know. Yeah potentially. All

22:16

right.

22:19

Okay so what's

22:21

next? I'm

22:24

interested comments out in the live chat

22:26

here about like oh yeah you'll

22:28

never in a build system talks is

22:30

not a unit testing framework yeah

22:33

yeah yeah yeah it does

22:35

Turing complete complete make a CSS

22:37

a language. Is

22:40

CSS Turing complete? If it is

22:43

then yeah totally I think it

22:45

does but I

22:46

don't remember what Turing means anymore

22:50

specifically I mean I kind

22:52

of know it yeah my rule of thumb

22:54

is can I make a thing

22:56

that runs with that I

22:59

don't know but that's that's

23:02

the Michael rule Michael rule but anyway

23:05

yeah on onto the next one for you. The

23:07

next is brought to us by Henry

23:10

Schreiner who's in the audience. Hey Henry thanks

23:13

for putting this together and also

23:15

letting us know about it so we've

23:18

got the scientific Python development

23:20

guide this is a this is

23:22

a big guy so this is really

23:25

cool actually so this is a

23:27

I'm we're gonna post both the the announcement

23:30

post and a link to the guide

23:33

but it's both the same place blog

23:35

scientific Python

23:36

org

23:38

and then there's a learn scientific Python

23:40

org so this is

23:43

pretty awesome it's a very comprehensive

23:46

too so this may have this must have taken a while

23:48

to put together so

23:49

you've got basically like a

23:51

how to use how to develop in Python

23:54

for scientific people and it's

23:57

pretty comprehensive I didn't

23:59

go through

25:53

doing

26:01

things like entry points. So you basically,

26:03

once you pick back install something, it becomes

26:05

a command line. Oh yeah. Capability

26:08

is really awesome as well. There's a lot of neat things

26:10

about packaging that I think not everyone

26:13

are like, well I don't want to put it into PyPI and

26:16

have it open source. So maybe there's other interesting

26:18

aspects still. I'm sharing it internally. Nice,

26:22

and checked out, this is kind of daring

26:24

to do it live, but I checked out the

26:26

test section and yay,

26:29

they talked about PyTest. So, cool,

26:31

I haven't checked out PyTest yet. Good

26:33

job guys. We didn't just suggest none, the none

26:35

for months. None. We suggest

26:38

not testing.

26:41

The world's simplest way to write tests. No.

26:44

Yeah. What about extras?

26:47

You feeling extra? I

26:50

am feeling extra.

26:51

Do you want me to cover mine while

26:53

I'm already up?

26:54

Yeah, go for it. I

26:57

was gonna do this extra attribute thing as

26:59

an extra, but decided to just run with it.

27:03

The quick extra is

27:06

continuing to work on the course. Chapter eight

27:08

is up, configuration files. It's a short

27:10

one, but please don't skip it. It

27:13

will mess you up if you don't understand this. So

27:15

just a few minutes to cover

27:17

some configuration.

27:19

And one of the questions I always

27:21

get is,

27:22

what do the dundra.net files mean

27:25

within a

27:27

test directory? And

27:29

I'm gonna keep it a secret. You gotta watch the course.

27:32

But

27:34

they're good things.

27:36

You're making good progress on this. I

27:38

am, it's a blast. I'm getting great feedback

27:41

from people. Some people from PyBites

27:44

are reviewing it and giving me feedback.

27:46

Some people from JetBrains. It's

27:49

been a really good

27:50

community there. So, cool.

27:53

How about extras from you? Well,

27:57

I have some Mastodon extras. And

28:00

I came across Mona, M-O-N-A

28:03

app, which is a really cool, really

28:07

cool client for Mastodon. I

28:10

believe this is Mac only, yeah? Optimized

28:13

for voiced over, optimized for

28:15

Mac, native design, iPhone,

28:18

iPad, and Mac. So, sorry for people

28:21

not on that one, but if you're on these, this

28:23

is really, really nice. I tried Ivory, I know you

28:25

and I spoke about it like a couple weeks ago, maybe off

28:27

air, but Ivory drives me crazy. It's

28:30

like the big recommendation everyone has. And this is super nice. It

28:33

has a free version, or you can pay $15 once

28:35

forever, and

28:37

then you have it, which is kinda

28:39

nice. So people can check that out. I think I'm gonna move to

28:41

that. Another thing that we talked about the other day,

28:43

Brian, is why

28:46

are these weird domains so

28:48

expensive, right? We have PythonBytes.fm,

28:51

and to renew PythonBytes.fm is $170 a year. I'm

28:55

like, why didn't we just go with .com? Like,

28:57

what were we thinking? Come on, people. We should

28:59

have just done .com, but you know, when we came up with PythonBytes,

29:01

when we started it, the .fm was all the

29:04

rage for all the podcasts, so there it is. And

29:08

it's not a huge deal, but we

29:11

were talking about, where does that money go? And

29:13

the biggest winner of these is the .ai, right? There's

29:18

so many .ai domains

29:21

these days, right, with all the AI startups. And

29:23

it turns out that

29:25

the island of,

29:28

Guilia is a tiny British

29:31

territory with around 16,000 inhabitants, but

29:34

its domain name is .ai.

29:37

And so the software developer who manages

29:40

the domain told Bloomberg it could generate $30

29:42

million for this, 10% of

29:46

the GDP of this tiny island because of the

29:48

.ai domain. Anyway,

29:51

I just thought that was interesting, and I'll just

29:53

throw this in as an extra. What's the .fm, do you

29:55

know? I

29:57

don't know, actually. That's a really good question.

33:50

but

34:00

because we thought it would be easy. Exactly.

34:03

Why is

34:05

it still three months and we're rewriting this section?

34:07

It was supposed to take a week. What

34:10

a bad idea. Do

34:14

this not because it's easy, but because we thought it'd

34:16

be easy.

34:19

Okay, so David shares with us,

34:21

there's the oldschool.am domain for

34:24

Armenia, not AM

34:26

instead of FM. Should we retire

34:28

the FM and go talk radio AM? We

34:31

could put a phonograph-y

34:33

type of filter on our voices and make it

34:35

sound like staticky and kidney. Would

34:38

it be great is to, yeah, do a filter and

34:40

have both, have the AM and FM

34:42

versions and have

34:44

it sound like it's going through any speaker. Simulate

34:48

going through a tunnel and get a little

34:50

staticky and then come back just periodically,

34:52

right, why not? Yeah, and

34:55

filter the high end and low end, so there's just like

34:57

the mid range and that's it. I

35:00

love it. Because

35:03

with AM you have to have the bad car speakers

35:05

also.

35:06

Oh yeah. Anyway.

35:10

Nice.

35:11

Cool. Well,

35:13

thanks again for a wonderful episode.

Rate

Join Podchaser to...

  • Rate podcasts and episodes
  • Follow podcasts and creators
  • Create podcast and episode lists
  • & much more

Episode Tags

Do you host or manage this podcast?
Claim and edit this page to your liking.
,

Unlock more with Podchaser Pro

  • Audience Insights
  • Contact Information
  • Demographics
  • Charts
  • Sponsor History
  • and More!
Pro Features