Embedded

View Original

445: I Do Not Like Blinking

Transcript from 445: I Do Not Like Blinking with Charlyn Gonda, Chris White, and Elecia White.

EW (00:00:06):

Welcome to Embedded. I am Elecia White, alongside Christopher White. Our guest this week is Charlyn Gonda. It is really sad that this is all audio, and you will be missing out on some beautiful blinking lights. And you know I do not say that lightly.

CW (00:00:22):

Hi, Charlyn. Welcome.

CG (00:00:24):

Hi. Thanks for having me.

EW (00:00:27):

Could you tell us a bit about yourself, as if we met at a, I do not know...

CW (00:00:33):

Maker Fair.

EW (00:00:34):

Maker Fair. Thank you.

CG (00:00:36):

Ooh, awesome. Yeah. I am Charlyn. I often like to say that I am a coder by sunlight, maker by moonlight. I am currently a senior software engineer at a company called Pave. And previously worked at other companies like Google and Uber. But when I am not working, I am in my home workshop, making delightful things that my brain will not shut up about. And those things are usually glowy, and sometimes they have code in it. I am also a co-organizer for Hardware Happy Hour in San Francisco.

EW (00:01:11):

That all sounds like things we are going to ask more about. Except your job, we do not really care.

CG (00:01:15):

<laugh>

EW (00:01:17):

But first we want to do lightning round, where we ask you short questions, and we want short answers. And if we are behaving ourselves, we will not say "how" and "why", and "are you sure?"

CW (00:01:29):

Are you ready?

CG (00:01:32):

Yes.

CW (00:01:32):

Favorite color on a NeoPixel?

CG (00:01:35):

Ooh, pink.

EW (00:01:37):

What is your puppy's name?

CG (00:01:39):

Biscuit.

CW (00:01:41):

Mountain folds or valley folds?

CG (00:01:44):

Mm. Mountain folds.

EW (00:01:46):

Complete one project or start a dozen?

CG (00:01:49):

Complete one project, while starting a dozen.

CW (00:01:52):

Best Animal Crossing islander?

CG (00:01:54):

Oh my God. Celeste, even though she is not really an islander.

CW (00:02:00):

That is the owl with the astronomy.

EW (00:02:02):

Oh, no, I got that.

CW (00:02:02):

I was reminding myself.

EW (00:02:03):

I just was wondering if she liked the sport ones or the quiet ones or...

CW (00:02:08):

Oh, right.

EW (00:02:08):

But I did not remember all four of them, so I could not ask.

CG (00:02:11):

<laugh>

EW (00:02:14):

What is your favorite way to learn a new technical skill?

CG (00:02:17):

Hmm. Doing a project with it.

CW (00:02:22):

Favorite material to work with?

CG (00:02:24):

Ooh. Right now it is brass.

CW (00:02:28):

Really?

CG (00:02:29):

Yeah.

EW (00:02:31):

And do you have a favorite fictional robot?

CG (00:02:35):

<laugh> BMO. BMO from Adventure Time. Absolutely.

CW (00:02:40):

If you could teach a college course, what would you want to teach?

CG (00:02:47):

I would teach a Pass/No Pass course on just making a bunch of creative projects. And every two weeks you have a new prompt, and you have to build the project. You pass if you actually build the project, that is somewhat related to the prompt.

CW (00:03:03):

I like prompt based learning. I have taken some courses recently that were done like that. It is very creative.

CG (00:03:09):

Yeah. I have never had a course like that, so I feel like that is what I would want to take. So that is what I would want to teach.

EW (00:03:15):

I am just finishing Paper Engineering with Kelli Anderson. It was a cohort based art class that lasted 11 weeks. We went through popups, and building sensors with paper, and all kinds of things. And it was like that, where you kind of got a prompt, and then you just went away and did something along that prompt.

CG (00:03:42):

Oh my God! You cannot see me, but my jaw just dropped <laugh>.

EW (00:03:49):

It was really fun. In fact, the parts where I was disappointed was when she told us what to do, instead of giving us a prompt. It was like, "Finish this." And I am like, "Well, yes, but you gave us all the instructions. That is not as much fun."

CG (00:04:02):

<laugh> Yeah. It is most fun when you get to twist the prompt, and then justify why it is related <laugh>.

EW (00:04:12):

Exactly. Well, clearly we are done with lightning round. So you do work with paper some?

CG (00:04:19):

Yes!

EW (00:04:19):

And you work with LEDs a lot.

CG (00:04:21):

Yes!

EW (00:04:21):

What are your favorite papers, and what are your favorite LEDs?

CG (00:04:26):

Oh my gosh. Okay. My favorite papers are- So I really like this vellum paper that is just the right level of translucent, because they are super flexible, like super versatile. I have used them in glowing greeting cards, and then I have used them for origami. I have even thought about using them for jewelry projects. So they are very versatile, and they diffuse light really well. And that is why I really like them.

(00:05:07):

My favorite LEDs are definitely the NeoPixel kind. But it definitely depends on the day <laugh>.

EW (00:05:22):

That is fair. There are days when I just want, you know, something simple and something really flexible. They are not usually the same days.

CG (00:05:29):

Yeah. Exactly <laugh>.

EW (00:05:33):

How much origami do you do?

CG (00:05:35):

I feel like I did a lot more origami last year. Although- Wait, what year is it now? It is 2023. Okay. Late last year, I actually was able to do a little workshop. We called it a "Glowagami Workshop," and it was for work <laugh>. I basically took, I do not know, 30 of my co-workers. I stuck them in the room, and I made them fold 12 of those Sonobe modules. I am sure you are familiar with those <laugh>. We made the- I guess it is kind of like a icosahedron, or maybe it was a octahedron. I actually do not remember how many sides, but the smaller sort of ball shape that you could make with 12 Sonobe modules.

(00:06:30):

It was a lot harder than I thought it was going to be, to teach 30 people how to fold this one module, and then how to put everything together into a 3D shape. Because I feel like on my best days, I have to really think hard about where the little pockets and little tails have to go. <laugh> So it was a struggle, but it was super fun.

EW (00:07:02):

Yeah. The little modules, the Sonobe? I have never known how to say that. They are very easy to fold, especially after you folded your 400th. But putting them together to make a ball or any, I think they are called "kusudamas", but the structures are just, I never really get that, especially when you get down to the last three and they do not fit. Yes. I agree.

CG (00:07:31):

Yeah.

EW (00:07:32):

But you did this origami wall. That was not like that.

CG (00:07:35):

Yeah. The origami wall was actually one of my first Sonobe module projects. It was made out of woven pyramids, basically. Some of the woven pyramids are all made up of the vellum paper so the light can shine through them. They are scattered randomly across the surface, so it looks like there is a random smattering of lights that pop up whenever they glow. They were pre-planned, instead of random. It was a very, very fun project. I even connected it to Google Home for a short time, although that integration has probably died by now <laugh>.

CW (00:08:27):

We need to make one of these.

EW (00:08:30):

Yeah. It was super pretty. It was little, I want to say like flower shapes, but geometric shapes. A whole bunch of them. And I did not realize that there were only some that could light up.

CW (00:08:42):

Yeah.

EW (00:08:42):

Because they look so uniform, and the lights are slow and subtle enough that you do not really realize that only a few of them are lighting up, because they do not all light up at the same time.

CG (00:08:55):

Yeah. That was the trick. I felt like it would be too much, if the entire thing lit up. Plus that was one of my first projects, so I was not really confident that I could manage the power requirements for that many LEDs. Because each of those pyramids actually has seven NeoPixels.

CW (00:09:19):

Oh, okay.

CG (00:09:19):

And that is how I achieved the fade effect, because I just add more pixels, or subtract. They are the NeoPixel Jewels from Adafruit. It was such a fun project. I would not really recommend it <laugh>.

CW (00:09:44):

Oh, but it looks so good.

CG (00:09:46):

<laugh> Just because it is so- Oh man, it took a few days to fold all of those modules and...

CW (00:09:55):

Well, that is no problem for her.

EW (00:09:56):

<laugh>

CG (00:09:57):

Oh, yeah. There we go. <laugh>

EW (00:09:59):

They may already be lying about the house. <laugh>

CG (00:10:01):

<laugh> Amazing. Yeah. There was a middle of the project where I fully folded, maybe 50 of them, the wrong orientation.

CW (00:10:11):

Oh, no!

CG (00:10:15):

<laugh> So I had to put it down. I had to wait until the morning. I had to have some tea to calm myself. And then I opened up all of the 50, and then refolded them in the correct orientation <laugh>.

EW (00:10:29):

But during the day you are a software engineer, right?

CG (00:10:31):

I am!

EW (00:10:31):

And that is your background, being software person?

CG (00:10:34):

Yeah. Uh-huh <affirmative>, yes.

EW (00:10:37):

You went to school for computer science?

CG (00:10:39):

I did, yes.

EW (00:10:41):

And now you are doing hardware things.

CG (00:10:44):

Mm-hmm <affirmative> <laugh>.

EW (00:10:48):

What was the first step on this path to darkness?

CW (00:10:51):

<laugh>

EW (00:10:51):

I mean, lightness. Lightness, because of course you are using light.

CG (00:10:56):

<laugh>. Hmm, that is true. Yes. Well, it was actually- Okay, so I have always really liked coding, and I was really lucky that I was in high school when my school started offering a computer science course in high school. I fell in love with it and it was really awesome. And on the side, when I was not in this computer science class, I really liked arts and crafts. I like to paint, I like to do some origami, I like to do a bunch of crafty stuff. But I had always considered these skills separate.

(00:11:37):

I always thought that there was no way that I could do them at the same time. And then, one of my co-workers challenged me to make a light. It is a long story why he challenged me, but he said, if I could make a hat that would light up, depending on the state of your Uber ride, that would be a really interesting educational tool. And that is when I started wondering about like, "Well, how would you do something like this?"

(00:12:22):

My first exposure to, or my first reason that I found out about microcontrollers, or how they work, is because there was some conference that had this electronic badge. It was a Twilio conference. They made it seem so easy, because they were catering to software developers. They were like, "Look, you already know how to code. Just stick your coat in here, in this specific spot, and you can do stuff with it." So all of the combinations of things started coming together.

(00:12:57):

And then I made this hat. It ended up being a shark shaped hat, with a unicorn horn. The unicorn horn would animate differently, depending on where you were in your Uber ride.

EW (00:13:15):

This was the Sharknicorn.

CG (00:13:16):

Yes.

EW (00:13:16):

I saw this hat. Yes.

CG (00:13:18):

Yes. It was so fun to make. That was my gateway project. Sorry. That was my gateway project that succeeded <laugh>. There was one other project that I tried to do, where it was a button that you would hit, and it would augment some score on a scoreboard. But I did not know about the Adafruit Learn Guides when I embarked on that project, so it totally failed <laugh>. So yeah, that was how it started. I guess it just started because somebody asked the question, and that question intrigued me, and then I answered it with a shark hat.

EW (00:14:07):

What was the controller you used?

CG (00:14:11):

That one was actually a Particle board, Particle microcontroller.

EW (00:14:12):

That makes sense.

CG (00:14:12):

Yeah, and it was actually the LTE one too, because I wanted you to be able to take it on the Uber ride, and then have it light up differently. <laugh>

EW (00:14:25):

Phone modem, not Wi-Fi.

CG (00:14:27):

Cell modem.

CW (00:14:28):

I noticed you use Particles in a lot of your projects. I do not see that very often. What attracted you to those?

CG (00:14:35):

I actually came across it. Why did I came? Oh yeah, it was probably because of one of the tech conferences that offered this badge. They made it super easy, because you do not even have to really plug into the USB. You just open up a webpage, and you paste some code in <laugh>. And that was really appealing to me, because I had no idea how any of the tool chains worked. So it was the least intimidating way to get into it. Although these days I feel like most of my projects are in CircuitPython. All of the Adafruit stuff. <laugh>

CW (00:15:24):

Which has a similar low friction development system.

CG (00:15:28):

Absolutely. Yeah. I could probably do an Arduino project. It just seems like there is so much work that I need to do, in comparison.

EW (00:15:40):

<laugh>

CW (00:15:42):

I am sorry. It is very funny to hear somebody say that. And you are right, but it is also very funny.

EW (00:15:45):

It is totally right.

CG (00:15:48):

<laugh> I know it is probably just a minuscule amount of work more to do an Arduino project. I do not know. I am a lazy developer. <laugh>

EW (00:15:58):

Well, going beyond Arduino, which is a little bit more work, but not a lot more benefit in my book, from a CircuitPython. If you went further down into the realm of truly awful development environments-

CW (00:16:14):

To the realm of normal development environments, yes.

CG (00:16:17):

<laugh>

EW (00:16:18):

You do get step-through debugging, and all the things you get when you are developing at a higher level. But there is this bit of a chasm between making it easy enough to use, like Arduino and CircuitPython, and-

CW (00:16:33):

There is a vast gap between Arduino and normal development. I do not know what the adjective to use, prof-?

EW (00:16:42):

"Professional development" is what I say. Although people use CircuitPython for professional things.

CW (00:16:47):

I say "normal," but that does not make sense either.

EW (00:16:49):

Yeah. For deeply embedded development.

CW (00:16:50):

Non-hobby development.

CG (00:16:51):

Mm-hmm <affirmative>. Like productionized.

CW (00:16:53):

Sure.

CG (00:16:53):

Oh my gosh. Yeah. That is actually a question that I had for you all, but we can talk about that whenever you want to talk about it. <laugh>

EW (00:17:02):

Oh, go ahead.

CG (00:17:03):

Yeah! I feel like that gap- I have no idea how far the rabbit hole goes. But every time somebody asks me like, "Oh, I guess you want to be a hardware engineer now. You want to do that for your job. Right?" I cringe a little bit, because I know as a software engineer, that the gap between doing a little coding project or doing a little programming exercise, and performance scalable software engineering that has to be used by thousands of people every second, is such a different world. And there is so much tedium in the spectrum in between.

(00:17:56):

So I just feel like I get to do all the fun stuff in hardware engineering, but I do not really know what comes after making one or maybe ten of something, versus making a thousand or a hundred thousand of something. Can you enlighten me on what is the hardest part of it? Or what is the most tedious part of it?

EW (00:18:27):

It depends a lot on what you want.

CW (00:18:30):

Or what you are making.

EW (00:18:31):

What you are making. The short answer is, Alan Cohen has a book called "Prototype to Product," and he goes through the steps, and it is very good. It is also like 500 pages long. And that is more the hardware side, and the paperwork side. I mean, nobody thinks about FCC certification being part of an electrical engineering curriculum, but it is always the EE's job.

CG (00:18:58):

Oh.

EW (00:18:58):

Like, somehow they have some sort of magical ability to deal with frequencies in radio, when what they really did was put together a schematic for a digital board. So yeah, there are all these hidden things. Manufacturing, how you talk to contract manufacturers. It is the same chasm as you said about software. It is fun to make a few. And then when you make a few thousand, and you have people paying for it, there is a lot of tedium that goes into that <laugh>.

CW (00:19:39):

Well, that is too where you start having to move away from things like CircuitPython or Arduino, because you cannot spend that much money on your electronics. If you are making hundreds of thousands, you are not going to say, "Oh, a $10 CircuitPython module is a good bet," probably. So you are going to drive cost out, you are going to make a custom board with a custom microcontroller, and you are going to probably write all the software bare metal with the libraries that the vendor provides.

CG (00:20:11):

Yeah. People always ask me, "Hey, are you going to sell that thing? The one thing that you made?"

CW (00:20:17):

Right.

CG (00:20:17):

<laugh> Mm. I do not really want to <laugh>.

CW (00:20:24):

It can work for tens and dozens. That is totally fine. And you charge an appropriate amount to cover your extra costs.

CG (00:20:32):

Right.

CW (00:20:32):

But yeah, it is really when you get into the thousands of things, that stuff gets really tricky.

CG (00:20:36):

Yeah. And then, I do not have the luxury of just pushing out some software update, if I figure out that there is a bug in my code. Because there is always a bug in my code <laugh>. Yeah, that just gives me a lot of anxiety <laugh>.

EW (00:20:56):

Well, in things like Particle, you can. I mean, that is what their whole shtick is. That you-

CW (00:21:04):

You can manage these. Yeah.

EW (00:21:04):

You can manage a whole bunch of IoT devices.

CG (00:21:07):

Mm-hmm.

EW (00:21:07):

But you pay a cost for that.

CG (00:21:11):

Yeah, absolutely. And sometimes you do not really need the IoT part of it, really.

EW (00:21:18):

I mean, for security reasons, sometimes you do not want the IoT part of it.

CW (00:21:21):

<laugh>

CG (00:21:23):

True. Very true.

EW (00:21:25):

So yeah, that same chasm you see between software and projects, exists on the other side. It is often just as frustrating and tedious to do that last, what seems like it should be 1%, but is actually all the hard parts, now that you have done all the fun parts.

CW (00:21:47):

I would also say it is not super cut and dried, because you can certainly do a custom board with a cheap microcontroller that supports CircuitPython, and continue to use CircuitPython for development. Thea did that with all of her synth boards.

EW (00:22:00):

Mm-hmm <affirmative>.

CW (00:22:01):

A lot of people do that. And that is a way of splitting the cost, <laugh> your development cost, making that a little bit easy, but also cutting down on the electronics cost. But then you do lose some performance in that, if you care about that and stuff like that.

EW (00:22:19):

And so your product is a little bit more expensive.

CW (00:22:21):

Yeah. Because you might need a bigger microcontroller than you otherwise would.

CG (00:22:23):

Mm-hmm <affirmative>.

EW (00:22:24):

Which is not a problem, until you start doing consumer levels of things, where pennies matter.

CG (00:22:30):

Right. Yeah. And then you have to get into the economics of, "Well, how much are people willing to pay?" And mergh <grimace>.

CW (00:22:38):

Exactly. <laugh>

EW (00:22:39):

Yes. And what does it cost to have a penny added to the bill of materials, versus having an engineer spend a month on a problem?

CG (00:22:51):

Mm.

EW (00:22:52):

Right now we are like, "Oh yeah, if it will save me an hour, I will totally spend five bucks." But that does not make sense when you are building a lot of them.

CG (00:23:02):

I had a follow up question about this, just a small one.

EW (00:23:05):

Mm-hmm <affirmative>.

CG (00:23:07):

I was reading about how, what was it? Oh yeah. I was reading about a blog post that described how software developers had to figure out, back in the eighties or something, how they had to fit, or do spell check. Spell checking used to be this entire niche set of algorithms, that had to be created because there was a limited amount of memory.

EW (00:23:44):

Mm-hmm <affirmative>.

CG (00:23:44):

So you could not just store everything in memory and then do a hash map check or whatever. But how much of that- Obviously this is not a problem in laptops now or whatever, but how much of that mental Olympics has to happen at the embedded level? I imagine that maybe there is still a lot of that zhuzhing of code that needs to happen when you are that far down.

EW (00:24:22):

See, that is my favorite thing.

CW (00:24:24):

Controversial answer is: Not very much anymore.

EW (00:24:27):

Yeah. Controversial answer. It is my favorite thing. He says not. It depends. I mean, it depends on what you mean. When we talk about firmware update, there is this idea that you have code coming in and you have code running on the device, and you really do not want to erase the code on the device until you are sure that the code coming in is good and will all arrive. So there is this juggling, almost like the goat and the cabbage and the wolf trying to cross the river.

(00:25:01):

It is very much like that, where you have to do some inexplicable things with dividing parts of code and putting it here and there. So you can buy a bigger processor or a bigger flash and not have as many problems. Or you can be as cheap as possible and you do have to do this puzzling.

CW (00:25:25):

I would say it depends on what your device or thing is doing. If you are doing something that has to do a lot of math or computation, then people do spend a lot of time trying to balance how cheap can I make this processor, and how optimized can I make my algorithm, and have those meet in a place where I have got the best cost.

EW (00:25:45):

All the machine learning things happening right now-

CW (00:25:47):

Oh, yeah. All that stuff.

EW (00:25:48):

Those are all having that problem.

CW (00:25:49):

The same thing with memory. Like, "Okay, we are going to run out of memory." That happens a lot. It is like, "Okay, we are going to run out of memory." How do you plan that up front and pick the best part? And usually for prototypes you pick a bigger part, figure out <laugh> when you get sort of done with your software, does this fit? And if it does, then maybe get a cheaper part that does not have as much memory.

(00:26:08):

There is still a little bit of that. But it is not the- I do not think generally it is- Unless you have got a really specific application that needs some specific computation thing, or a very specific algorithm and it also needs to fit on something...

EW (00:26:22):

Cheap.

CW (00:26:23):

Cheap, or you need to optimize that. It does not happen as much anymore. It is certainly not like the spell check example, where it is like, "Okay, there does not exist in the world, a cheap computing platform that we can do this on with a brute force algorithm, so we are going to have to finesse this.

CG (00:26:44):

Yeah. That is incredible. We are definitely summer children, summer engineering children. <laugh>

EW (00:26:52):

I think the machine learning actually is the area of where things are still-

CW (00:26:57):

Right. Yeah.

(00:26:58):

Hitting walls much before they would like to. For most development, the processors are so cheap now that that is not the limiting cost. And then engineering time becomes a limiting cost. And then we go to things that are easier to develop. On the other hand, I find those problems, where you have to take it apart and put the puzzle back together, super fun. So if anybody is out there saying, "Oh, I have one of those, and it is awful, then I cannot-" Just let me know.

(00:27:31):

I am not saying they do not exist. I have had to do them for graphics. That comes up a lot on microcontrollers, because they are not very fast and they do not push things to memory very fast. And so how do you...

EW (00:27:41):

Everybody wants rounded corners for some horrible reason.

CG (00:27:42):

<laugh>

CW (00:27:43):

Everybody wants everything to look like an iPhone, even when you are spending a dollar, so <laugh> it is like...

CG (00:27:48):

Oh my God.

CW (00:27:50):

That comes up a lot, because it is like, "What can we do with this?" "Pretty much nothing."

CG (00:27:53):

<laugh>

CW (00:27:53):

"Okay. What is the next step above nothing? We would like 3D graphics." "Okay, you can have one D graphics."

EW (00:27:59):

<laugh> Yes. One dot at any time.

CW (00:28:01):

You can have an LED.

EW (00:28:01):

<laugh>

CG (00:28:01):

<laugh>

CW (00:28:04):

That actually comes up a lot, now that I am thinking about it. Because there is an infinite appetite for things that look good, but it is very hard to achieve them with small parts.

EW (00:28:18):

And then they put the assets into flash, and then they want to be able to change the assets as part of firmware update. And it just is...

CW (00:28:25):

Yeah, "Here are ten megabytes of JPEGs or bitmaps." Because they probably do not have the CPU to actually decode a JPEG.

EW (00:28:32):

Yep.

CW (00:28:32):

<laugh> So, yeah.

CG (00:28:37):

I love this. This is exactly the type of insight I was looking for <laugh>.

EW (00:28:41):

Do you have any specific questions?

CG (00:28:45):

No, not really. I just wanted to be floored by the amount of stuff that you have to deal with. I just wanted to get an idea of what that chasm really looked like, and yeah, it looks magnificently, I want to say, interesting.

CW (00:29:06):

<laugh>

EW (00:29:08):

Oh no, that is a slippery slope. You will be into embedded in no time.

CG (00:29:12):

<laugh>

EW (00:29:13):

One of the other areas that is different from what software was, when I was a software engineer, is having to read data sheets.

CG (00:29:24):

Mmhm.

EW (00:29:25):

And I think that is something you are starting to have to do. I mean, you have mentioned the Adafruit Learn Guides, and those are a good place to start. But are you going beyond those, into the actual chip data sheets, or LED data sheets?

CG (00:29:39):

No. <laugh> It is a little intimidating.

EW (00:29:42):

<laugh>

CG (00:29:45):

One of the skills that I really want to learn eventually, and maybe I just need to put a deadline on it, is to do some basic PCB design, or as far as I can get with it, I guess. I think at that point, I am probably going to have to be really into the data sheets of things. But I also feel like I can get away for a while, of just replicating a lot of open source designs, and then maybe munging them together. That is what I feel like I would start with <laugh>.

EW (00:30:22):

That is a good place to start. I do not do board design. I think I did Blinky. If I remember correctly, you were talking to Alex, and said something about doing Blinky.

CG (00:30:33):

Yeah.

EW (00:30:33):

I had about the same experience. It was like, "Okay, I am going to walk away slowly now. The Blinky is over there, and I will just be over here."

CG (00:30:43):

<laugh> Yes. This is my happy space, my happy place.

EW (00:30:47):

But I do read a lot of data sheets, because if I want to control an LED in a way that is not the way everybody else controls it.

CG (00:30:56):

Mmm.

EW (00:30:56):

That is when you start having to read the data sheets. Not for the electronics, but for the weird interface bits.

CG (00:31:03):

Mmm.

CW (00:31:04):

Or when you are stuck in a corner, in some part. It is a complicated part, like a display or something, and it is like, "Oh, okay. Oh you want me to rotate this display 90 degrees? Because your mechanical engineers do not want to make this fit the right way." And then you have to dive into the data sheet to find what bit you have to send it, to...

EW (00:31:24):

And it is one bit in 200 registers.

CG (00:31:26):

<laugh>

CW (00:31:26):

And it is not well-

EW (00:31:28):

It is never well-documented.

CW (00:31:28):

It is not called that. It is not like "90 degree rotate" either. It is like, "Re-"

EW (00:31:34):

Reorient.

CW (00:31:34):

"Column row read out order," or something.

EW (00:31:36):

Yes. Exactly.

CG (00:31:38):

Oh my God.

EW (00:31:39):

It is never just "Rotate."

CW (00:31:43):

Yeah.

CG (00:31:44):

That is amazing.

CW (00:31:45):

So I have a need. I need something in front of my drum set that tells me to relax. But it is not just a sign. It cannot just be a sign, because I will tune it out. So it needs to like randomly, and with some dynamic changes, to tell me to relax, and catch my eye.

EW (00:32:06):

And it should flash really brightly at you. Right?

CW (00:32:09):

I do not know if flash is the right thing. That might be distracting, but well, you are not drumming. I can handle flashing.

EW (00:32:14):

That is true.

CW (00:32:15):

<laugh> What would you suggest? <laugh>

CG (00:32:19):

Hmm. Well I guess it depends on if you want to ball out on it <laugh>?

CW (00:32:28):

Sure.

CG (00:32:31):

The first thing that came to mind is, Jason Coon makes these Fibonacci displays.

CW (00:32:38):

I think I have seen these.

CG (00:32:39):

Yeah, and just connect that to a Pixelblaze. Oh man, you can pick whatever animation you want. And they all look fantastic!

EW (00:32:49):

How different are these from the high density dot streams from Adafruit?

CG (00:32:55):

The difference is that these ones are arranged in these Fibonacci spirals. So when you think about- You have to do a little bit of mental gymnastics to figure out where the positions of each of the LED, because the index of the LED is sort of arranged in a spiral. So the zeroth one is in the middle, and the next one is in some branch of the spiral. And then you have to figure out what that would look like, if you wanted to build some sort of graphic around it.

(00:33:35):

So I feel like the math, the graphic math ends up being different. And I honestly do not even really understand it <laugh>. But they have done a lot of work figuring all that out, and then mapping it to the Pixelblaze library. So you do not really have to do any of the math. You just stick a bunch of animations in and they are all just look beautiful! Oh my God!

EW (00:34:04):

Pixelblaze is made by Ben Hencke, and he likes doing math, so it does not surprise me that they have figured out the math.

CG (00:34:13):

Yes, absolutely.

EW (00:34:14):

Have you been using the Pixelblazes much?

CG (00:34:19):

I have a couple of Pixelblazes. I have been wanting to <laugh> make something with them, but I think it is going to be one of those, like paint in my palette, that will come up when the right ideas come up. You know like when you have an object, and you just know that you are going to make something with this object, but you just do not know what it is yet?

EW (00:34:48):

Oh yeah.

CG (00:34:48):

So it is like, it is there. I know I am going to make something awesome with it. I just do not know what that is yet. <laugh>

EW (00:34:57):

I mean, the Pixelblazes are really awesome when you need Wi-Fi as well as pixels.

CG (00:35:03):

Also amazing animations right out of the box. It is incredible.

CW (00:35:09):

Yeah. That is the thing is like, yeah, back to the developing stuff from scratch. I mean, you can do so much with so many modules now, it is hard to tell people to go do anything from scratch.

CG (00:35:24):

Yeah, I know what you mean. Even in CircuitPython, they have a display, LED animations library. And that already has a bunch of really cool animations you can do. So not only do you just stick a microcontroller into a USB, and then type some code with it. You also can just use this library, to make pretty things happen in your LED strips. So it is really a great time to be alive, folks.

EW (00:36:05):

You made a little cube with the high density...

CW (00:36:10):

Oh, I love this thing.

EW (00:36:10):

Grid.

CG (00:36:11):

Oh my God, yes.

EW (00:36:12):

What did you use to drive that?

CG (00:36:15):

It is actually driven- I have it right here actually. It is driven by an ESP32-S3, because I wanted to be fancy.

EW (00:36:28):

And did you- Is it CircuitPython?

CG (00:36:31):

Yep, it is written in CircuitPython. It has that QT Py, the ESP32-S3, and then it has the little charger board that Adafruit made with it. It also has an accelerometer via the STEMMA QT port, so it is orientation aware, so you can flip it and it will change animations.

(00:36:53):

And because it has ESP32, it has Wi-Fi. So I made a little webpage that can post some payload to Adafruit IO and the firmware in the cube knows how to parse that string, to draw on the top of the cube and also display some message on the sides of the cube. Definitely one of my favorite projects. <laugh>

EW (00:37:32):

How big is it?

CG (00:37:35):

It is roughly one and a half inches tall. Like what? One and a half inch cube, 1.5 inch cube.

EW (00:37:44):

And you 3D printed armature? Framework? What would you call it?

CG (00:37:51):

Yeah, it is like a press fit frame, I guess. The frame itself has a little notch for the switch, so you can turn it on and off. And it includes another little notch that you can pop the top of the- So all of the LEDs press fit into the 3D printed frame. And then you can pop the top off, and you can access the USB inside, for charging and for reprogramming purposes.

EW (00:38:27):

And there is a battery in there too, right?

CG (00:38:28):

Oh, yes. There is a-

EW (00:38:30):

Because that is the thing, is you need to make it self-contained.

CG (00:38:35):

Yeah. It is a tiny little battery. And I was so happy when I found out it just existed off the shelf. Oh man!

EW (00:38:44):

Not entirely off the shelf. You did build this.

CG (00:38:47):

<laugh> That is true. I did. But I guess the fact that I was able to build it, with a bunch of parts that I was just able to order, and not have to design a custom PCB for it, was really such a delightful thing.

EW (00:39:10):

Did you write much software for it?

CG (00:39:13):

Yes. I had to write all of the software that drives it, essentially. It is all in CircuitPython. I have a little cube object that is written in Python, that can manage the states of what is happening in the cube. Because there is an orientation state, if it is upside down or not. Then there is how do you scroll the text around it? And then how do you display the graphic on the top part?

(00:39:51):

I feel like maybe there was probably a way to display an image and wrap it around the cube. But yeah, at that point my brain was frying, so I was just very happy that I made something display. <laugh>

EW (00:40:13):

So you say you did not make a board, but you did make a 3D printed framework.

CG (00:40:21):

Yeah!

EW (00:40:21):

And you did put together six of these boards, and the electronics necessary to drive them all. Then wrote software, so that they would do appropriate things to what you wanted, when accelerometers changed and text changed, and it talked to a website.

CG (00:40:38):

Yeah!

EW (00:40:38):

Okay. I just wanted to make sure that, you kind of minimize what you did, but there was plenty there. In fact there was enough that Adafruit- You wrote a tutorial for them.

CG (00:40:53):

Yeah.

EW (00:40:53):

And that was exciting?

CG (00:40:56):

Super exciting. Oh my goodness. Yeah, I definitely felt like- So I finished it, and then I was like, "This is super awesome! But, is it awesome enough? <laugh> Is it awesome enough for me to write a guide about it? Is somebody going to pay me, to actually tell someone how to do something like this?"

(00:41:23):

I do not really know why my brain works that way sometimes. Because you are right that- I guess it is because I tend to think that if I know something, then a lot of other people know that thing. So it does not feel like something that I can talk about, or be teaching other people about.

(00:41:54):

I think it is a weird thing that my brain does, really <laugh>. I also feel like it is a habit that I need to get out of doing. I think it is sort of this mental tick that happens. And I just have to catch myself every time I do it, because I feel like the world will probably do enough of the invalidation for me <laugh>, without me helping it.

CW (00:42:28):

The special form of imposter syndrome. It is teachers' imposter syndrome.

CG (00:42:32):

Yeah? Oh, I did not even know that that one is a thing.

CW (00:42:35):

Oh yeah.

EW (00:42:36):

Is it separate?

CW (00:42:38):

Oh, it is separate, because now you have got, I mean...

EW (00:42:41):

I think about when I used to work on patents for larger companies, and the question was always, "Is this novel?"

CG (00:42:48):

Oh.

EW (00:42:50):

 "Is this non-obvious to a practitioner of the arts?" And I am just like, "Everything I do is obvious."

CW (00:42:55):

Yeah, that is a bit different though. But what I am talking about is like getting in front of a bunch of people, and- By teaching somebody, the implicit thing is, I know how to do this. And not only that, I know it well enough to tell you how to do it. Which-

EW (00:43:08):

And that the information is valuable.

CW (00:43:10):

And the information is valuable.

CG (00:43:11):

Right.

CW (00:43:12):

But I think that is a real trap, because by teaching things you learn them much better.

EW (00:43:19):

Very much.

CG (00:43:19):

True.

CW (00:43:21):

And everyone has a different perspective on things. I cannot tell you how many times I have watched different instructional videos, or read different things on the same subject, trying to understand it better. And I think having multiple perspectives on stuff is really useful. If there was just one person who knew how to do everything, and that was the person who taught- Or who knew how to do a specific topic, and that was the only person allowed to teach it, that would be very bad.

CG (00:43:48):

That is true. You know, that is actually a really helpful way to reframe this thought of like, "Oh, well, am I good enough to tell the story?" But you are right that your perspective is different. It is unique, it is you. So it is like a sort of a handle that you can grasp on, whenever your brain goes in that direction <laugh>.

EW (00:44:22):

And there is the idea that an expert often makes it a terrible teacher.

CW (00:44:28):

Oh yes.

CG (00:44:28):

<laugh>

CW (00:44:28):

Not even an idea. That is a fact. <laugh>

EW (00:44:31):

I mean, I would definitely love to do a lecture on pointers, on how to understand pointers. But the truth is, I have no idea how you do not understand pointers. Why does not everybody understand?

CG (00:44:42):

<laugh>

CW (00:44:42):

Same way. I-

EW (00:44:44):

Totally obvious to me.

CW (00:44:44):

I completely remember being confused by pointers, and I remember being stuck on stuff with them. But now when people ask about pointers, I am like, "This is obvious. I cannot even explain. This is like the fish and water. This makes no sense that you cannot understand this." Even though I remember not understanding it.

EW (00:45:02):

Oh yeah.

CW (00:45:02):

I cannot- It would take me days to sit down and construct from a beginner perspective, something that I thought would be a good tutorial on pointers, because it is just like, "Okay, where-" It is like addition, right? It is like explaining addition after doing it for 20 years.

CG (00:45:21):

Oh.

EW (00:45:22):

I could explain addition better than I could explain pointers.

CW (00:45:24):

Probably. Yeah. I was trying to think of another example. But yeah, that is definitely the case. And I have taken classes from people who are super- You know, you take math classes in college and stuff. There were a lot of math professors who were so into their research and stuff, that teaching calculus was impossible for them. And yet those were the people who were teaching calculus.

CG (00:45:45):

Mm-hmm <affirmative>.

EW (00:45:46):

<laugh> Yes.

CW (00:45:48):

But if you get an instructor who is into teaching, and understands teaching...

EW (00:45:54):

Into the educational part.

CW (00:45:55):

Yeah.

EW (00:45:56):

Or you get a TA who learned it last year, and totally remembers where you are coming from.

CW (00:46:02):

Right.

CG (00:46:02):

Yes.

CW (00:46:03):

Yeah, it is totally different. So yeah, it is really hard.

CG (00:46:06):

<laugh> Yeah, it is crazy. I honestly feel like teaching itself is probably one of the hardest things, hardest jobs. Because not only do you have to apply a lot of creativity around this thing that you had to do every day, you also do not really get paid a lot for it. And a lot of your students end up not liking you. So it is a really thankless job <laugh>.

EW (00:46:47):

Yes, yes it is.

CW (00:46:49):

Yeah. And when I taught, a bunch of my students kept calling me "Steve." Never figured out why.

CG (00:46:55):

Oh, <laugh> what?

EW (00:47:00):

Graduate physics?

CW (00:47:02):

No, I was teaching undergraduates.

EW (00:47:03):

But physics lab.

CG (00:47:06):

Is it in a endearing sort of way?

CW (00:47:10):

No. They did not know who I was.

CG (00:47:12):

Oh, no.

CW (00:47:13):

They thought I was some other person.

CG (00:47:14):

<laugh> Oh my goodness.

EW (00:47:16):

Well that means that if they did not understand-

CW (00:47:16):

But perhaps they called everyone "Steve".

EW (00:47:18):

If they did not understand it is Steve's fault.

CW (00:47:21):

It is true <laugh>.

CG (00:47:21):

Oh.

CW (00:47:21):

That is right. I blame everything on Steve.

CG (00:47:24):

<laugh>. Steve is your teaching alter ego. The nega-Christopher.

CW (00:47:29):

<laugh>

EW (00:47:33):

So having written the Adafruit tutorial, Adafruit Learn Guide is the right name?

CG (00:47:40):

Mm-hmm <affirmative>.

EW (00:47:40):

Do you think in the future you will be able to say, "Oh-" When you get that feeling of not being worthy, or not having done enough, do you think you will be able to say, "I wrote the Adafruit Learn Guide and people liked it, people appreciated it. I do not need to feel this way." Will it help with the imposter syndrome?

CG (00:48:05):

I think so, although I think it is kind of like exercising. Your muscle does not get strong, unless you consistently do the same sort of exercises. I think my journey right now, is to figure out how to consistently redirect my brain, whenever it tries to go the direction of like, "Oh, I am not good enough, I am not worthy." <laugh> It definitely is still a journey that I am in the middle of.

(00:48:45):

An example of this is, I was just invited to speak at Maker Faire Miami this April, which is super exciting. But I was about to book my flight, they were like, "Yeah, this is good. Go book it and then we will reimburse you." And I froze. I actually procrastinated on it for a day or two, because I was like, "What if I have nothing interesting things to say? What am I going to talk to people about? What am I going to get on stage for?" <laugh>

(00:49:29):

I had to voice it aloud, and thankfully my partner, he knows that I tend to do this to myself. So he knows to remind me that it is just my tendency, and that I definitely have interesting things to say. So, yeah, I booked the flight. I am going. It is going to happen. But yeah, it is a work in progress <laugh>.

EW (00:50:02):

One of the things I found helpful with imposter syndrome, which by the way is not something that has ever really gone away, is making a PowerPoint slide deck of things that I had accomplished, and looking at that when I needed the boost. Because usually, you know you need the boost, you just cannot figure how to do it.

(00:50:28):

But if you put your Adafruit Learn tutorial on there, and you have been featured on Hackaday and HackSpace magazine and Hackster.io, it is not that you need the external validation, it is just sometimes when the internal validation is fading, external is okay enough to get by.

CG (00:50:50):

I like that. I did read about a blog post where somebody talked about a hype doc.

EW (00:50:57):

Yeah.

CG (00:50:59):

<laugh> You have to write a hype doc for yourself, because not only does it help you in times when your internal validation is failing you, it also helps you for professional career stuff. So yeah, that is actually very helpful. I have not done an intention- I feel like I have collected them in various places, to look at later maybe. But I have not really did an intentional exercise of sort of keeping this emergency kit. <laugh> So I really like that. I think I will do that.

EW (00:51:39):

Cool. You have so many pretty projects <laugh>.

CG (00:51:45):

Thank you.

EW (00:51:45):

There are so many- I do not like blinking lights.

CW (00:51:48):

<laugh>

EW (00:51:48):

Let us just be up front with that. I do not like blinking lights.

CW (00:51:52):

<laugh>

EW (00:51:52):

But the slow fades, and the pretty colors, I can really get behind that.

CG (00:52:02):

Thank you so much. That is amazing, because I feel like your skillset is sort of in the complete other spectrum from what I know. In terms of like, you really- I feel like the way that you are able to dig into all of these lower level puzzles, like you were saying earlier, is just so fascinating. And it is so intimidating, to be honest with you, because there is so much technical depth there. So I really appreciate that you also appreciate my work. Thank you <laugh>.

CW (00:52:47):

I will tell you how that works, though. The in-depth embedded stuff. It is anger.

CG (00:52:50):

<laugh>

CW (00:52:50):

Because all this stuff is so frustrating, and you just get angry at it, until you have to make it work, because otherwise it wins.

CG (00:53:01):

 <laugh> Wow. Whoa.

CW (00:53:03):

Maybe that is just my work ethic.

CG (00:53:06):

<laugh> Whoa. So you are really like warriors. You are in this battlefield every day, and you are just not letting it win. Amazing.

CW (00:53:19):

No, I am letting it win this year.

CG (00:53:20):

Oh <laugh>.

CW (00:53:22):

It is going to win this year.

EW (00:53:25):

But I do not- I can read schematics, but I do not write schematics. And I do not do boards.

CW (00:53:31):

Yeah.

EW (00:53:31):

And I have never put together something that has 3D prints successfully <laugh>.

CW (00:53:37):

I have only recently done that. They are embarrassing, but they work. <laugh>

EW (00:53:42):

And I have made higher level software, but it is almost always in service of the lower level software. Simulators and whatnot. So I cannot care about how that code works. I just need it to work, because it is not what I am delivering.

CG (00:53:58):

Hmm.

CW (00:54:00):

That makes sense.

EW (00:54:00):

You said earlier about thinking that because you knew something everybody else does. And I know Adam Savage has several things to say about this, but I really liked the idea of having a highlights reel. People see my highlights reel, they do not see the actual things that go on.

CG (00:54:23):

Yeah.

CW (00:54:24):

I do.

EW (00:54:25):

Christopher does <laugh>.

CG (00:54:26):

<laugh>

EW (00:54:27):

Let him tell you.

CW (00:54:29):

<laugh>

CG (00:54:32):

That is amazing.

CW (00:54:33):

I have another question for you. It is more of a thought experiment. LEDs seem to be this gateway that a lot of maker folks get into projects, making things with them. When I started in electronics, LEDs were red and they were round and fairly large. What about LEDs do you think is attractive, as this kind of gateway to doing maker projects?As opposed to things like, I do not know, motors, or audio, or...

CG (00:55:09):

Yeah. You know, I think it is super magical. For some reason, and I do not think I can fully explain it, but when I see an object, I often ask myself, "Oh, how can I make that thing glow?" Or like, "Ooh, that thing would look really cool if it had this like subtle strip of light on it.

EW (00:55:36):

Mmm.

CG (00:55:38):

<laugh> I think it is just somehow the antenna of my creative brain is tuned to the frequency of LEDs. I do not know if that makes sense. But, I often get a lot of ideas, and they just often involve something that is glowing. And it kind of goes the other way around. Like, if I see a thing that is glowing, it generates a lot of ideas.

(00:56:09):

Like, there is a strip from Nth-Light, that is a super thin printed LED strip. When I saw that object, I was like, "Whoa. I could- There are so much possibilities." I do not know what those possibilities are, but there are a lot of them. Yeah, to me, I guess it is a real life sort of magic. Like, you know, there are fantasy novels that talk about magic, and I really want to live in those worlds. And this is my way of making magic real, is making stuff glow. <laugh>

CW (00:56:59):

That is a good answer.

EW (00:57:00):

I mean, that is the first spell you learn in D&D, is it not?

CW (00:57:02):

Magic Missile.

CG (00:57:04):

What?

EW (00:57:05):

You had a very violent D&D.

CW (00:57:07):

What? Magic Missile is a first level spell. Everyone learns Magic Missile first. How are you supposed to fight monsters?

EW (00:57:13):

I thought it was light. I mean, even now when we watch the Super Star Wars show, everybody has really bad flashlights.

CW (00:57:20):

And Star Trek. Everybody has bad flashlights in all sci-fi shows.

CG (00:57:25):

What?

EW (00:57:29):

Sorry, got a little off topic. <laugh>

CW (00:57:30):

That is Magic Missile.

CG (00:57:30):

<laugh>

CW (00:57:30):

I really appreciate your answer. That is a really good answer.

EW (00:57:39):

And you mentioned being worried about power on the origami wall.

CG (00:57:43):

Yeah?

EW (00:57:43):

How much have you had to learn about dealing with power? Or does that- How have you learned about dealing with power?

CG (00:57:56):

To be honest, I have learned to- I know that voltages matter. I know that amps matter, and that is about it <laugh>

CW (00:58:11):

Well, when you multiply them, then you get power.

CG (00:58:14):

Yeah, I do not even- I do not really do any sort of calculations. I just do a lot of tilting of my head and going, "Uh, this is probably going to work." I think that is the entire other part of, I do not know, productionizing, that you really need to think about is how this works. Honestly, I feel like maybe I am getting away with doing stuff, because I do not really have to- I am not thinking about all of the theoretical, foundational things that should be underpinning some of this electronics, because I do not have that foundation. <laugh>

CW (00:59:05):

Because one of the things that I was wondering about when I was building the Cube, for example, was like, "Well, is it actually safe to stick a bunch of things that might get hot, inside of a cube that is closed and does not have a way to vent the heat?" And then I was like, "Ah, it is probably going to be fine." <laugh>

EW (00:59:28):

Oh, it is totally going to be fine.

CG (00:59:29):

Okay, great. I am really glad <laugh>.

EW (00:59:34):

I mean, volts need to be consistent. All the volts need to be about the same, or they need to have something that that translates between them. So if it is all five volts, that is good. If it is five volts and three volts, you have to have some kind of translator.

CG (00:59:48):

Oh, okay.

EW (00:59:49):

And amps are about adding things together. If your power supply is two amps, then all of the other amps have to add to less than two amps.

CG (00:59:59):

Oh. See that is the other thing, is that sometimes theoretically I feel like maybe it should not have worked, but then it kind of does. <laugh>

EW (01:00:12):

Oh, there are lots of times that works. Yeah.

CW (01:00:14):

See that is the thing-

CG (01:00:14):

I mean, amps-

(01:00:15):

There are so many people who are afraid of breaking things, that they do not get started in stuff like this. Or with software. I remember people being afraid of, "Oh, I am going to break the computer. Or what happens if I hit Del?" The way I learned was just, "Eh, whatever."

(01:00:29):

<laugh>

CW (01:00:30):

If it is going to break, it is going to break. It is probably not going to break. They would not make something like this that was going to break easily.

EW (01:00:34):

Yeah.

CG (01:00:36):

I made this ring. Have you seen the filaments, the LED filaments that are 360 degree glowy?

CW (01:00:45):

Yes.

EW (01:00:45):

Yes.

CG (01:00:47):

Yeah, they are so awesome. There are little tiny ones that are rigid, and I made a ring out of three of them. Somebody asked like, "Oh, how much power does that take?" Because I told them that it is actually just running off of a 1225 coin cell, for all three. And they were like, "Oh, does it last like 60 seconds? Ha ha ha." And I was like, "No, it lasted 15 hours."

CW (01:01:11):

<laugh>

CG (01:01:14):

Then they were like, "But there is no resistor. Do you not need a resistor?" I was like, "I have no idea. I tried it, it worked, and it lasted 15 hours." <laugh>

EW (01:01:25):

That is actually a really good response.

CG (01:01:28):

<laugh>

EW (01:01:32):

When we asked you what your favorite material was, you said, "Bronze."

CG (01:01:37):

Oh, I said, "Brass."

EW (01:01:38):

You said, "Brass"?

CG (01:01:39):

Mm-hmm <affirmative>.

EW (01:01:40):

It has been so long. I had no idea.

CG (01:01:41):

<laugh>

EW (01:01:44):

What are you doing with brass these days?

CG (01:01:46):

Yeah, I think it is a very approachable metal, and it is gold. It is probably not- Real jewelers will probably think that it is actually not that gold, but I really like the color of brass. So I have been doing some circuit sculpture jewelry with them.

CW (01:02:11):

Oh, like Mohit was doing.

CG (01:02:13):

Yeah, exactly.

EW (01:02:14):

More jewelry, pendants. With LEDs in them.

CW (01:02:15):

Yeah, right.

CG (01:02:17):

Mm-hmm <affirmative>. It is great, because it is a way to get the glow into something I can wear, that does not require a microcontroller. So it does not require a battery that is bigger than a coin cell, and it does not need to be recharged. There is just so much less that needs to happen. Just some LEDs, a positive and a negative, and as long as they do not short, you are fine. <laugh>.

(01:02:48):

I have just been having- It is a really addictive exercise for me to think about like, "Well, what can I make that is glowy and gold?" Recently I have been trying to make bezels for- I am actually trying to make a new wearable with the DotStar Grid, the same Grid that is on the cubes. It is a little bit more chunky, because I will need to have at least a QT Py in there.

(01:03:27):

But I am trying to wrap a brass bezel around it. Oh man, I was looking at YouTube videos, and there are just so- There is actually a bunch of tools that I do not have, that you can use to bend metal in certain ways, and to make it so that it looks nice when it is bent. <laugh> Because you do one bend the wrong way, and the entire thing just looks bad. You cannot really undo it. Well, you can, but it is...

EW (01:03:58):

But then it looks worse.

CG (01:03:59):

Imperfect. <laugh> Exactly. So you have to just cut it off and do it again. But yeah, I do not really have the right tools for it, but it is fun to just experiment with. And it is just so shiny. I feel like you get a really good result out of if you just bend it right. So I guess I am just fascinated by what you can do. I guess metal is my next frontier <laugh>, because I feel like I could 3D print some plastic stuff. I love working with paper. I have some stuff that I have done with wood. But getting to work with metal is very, very cool.

EW (01:04:42):

Some of your past projects that I have really noticed were the detailed woodcuts. Those come from a Glowforge, right?

CG (01:04:51):

Yeah!

EW (01:04:52):

Does the brass and the Glowforge, they do not play together, right?

CG (01:04:59):

Oh yeah. Not really.

EW (01:05:01):

I do not think you should laser shiny things.

CG (01:05:04):

<laugh>. Yeah. But, apparently, and this is something that I have been wanting to experiment with, there is a coating-

CW (01:05:14):

Oh.

CG (01:05:14):

That you can put on brass, and you stick it in your laser and you can engrave-

CW (01:05:18):

Okay.

CG (01:05:19):

On it. And then it apparently will just engrave on brass, which is very exciting. I feel like you can make trophies out of it. You can make like interesting graphical elements with your jewelry. Man, that would be cool. I feel like one thing that I really want to figure out how to do, is how to make the same sort of intricate cuts that I can make on wood, but on brass. I feel like I need an industrial laser cutter or water jet or something for that. And I do not really have access to that yet. <laugh>

EW (01:06:01):

You might want something mechanical, more like a Cricut, because then it does not matter if it is shiny. It just has to have the right tools to emboss or cut through.

CG (01:06:12):

Yeah. I got to figure that out, because there are definitely these intricate flat brass sheets, that have intricate cuts on them. I just do not know how they make it. I think it might be stamped or something?

EW (01:06:27):

Yeah.

CG (01:06:27):

Yeah.

EW (01:06:27):

I can get a stamped effect with metal on my Cricut, but I do not know if I could cut metal.

CG (01:06:33):

Yeah.

EW (01:06:35):

Although if it was straight lines, I could stamp it and then probably cut it after.

CG (01:06:39):

Oh.

EW (01:06:39):

Once I had a guide. Because I am not going to cut straight lines on my own, that is for sure.

CG (01:06:47):

<laugh> Same. I feel you.

EW (01:06:51):

Do you have a favorite project that you have worked on?

CG (01:06:55):

Ooh. I have to choose among my children. I want to say, yeah, I think the cube is probably one of my favorites right now. It is just so satisfying to hold it. Even when it is off, I sometimes fiddle around with it. It is just a satisfying thing. I also really like- I made a phone case, essentially, but it looks like a Sheikah Slate from "Breath of the Wild." I do not know if you guys have ever played that game.

CW (01:07:29):

Mm-hmm <affirmative>. The glowy- Remember Link got the glowy slates that had the-

CG (01:07:36):

Yeah.

CW (01:07:36):

I do not remember what they were for exactly. Got new information or new abilities out of them.

EW (01:07:40):

This is where the recipes were from?

CG (01:07:43):

Yeah. I think you can like- It is basically they gave Link a smartphone.

CW (01:07:47):

Yeah, that is right. Yeah.

CG (01:07:48):

<laugh> So I figured, yeah, I already have a smartphone, so I can have a Sheikah Slate. That was definitely such a fun project to work on, because the end result was really just layers of a laser cut wood. And then I painted the back, and it has a little LED eye on it. But it is one of those examples where it did not really require much, just some elbow grease, some paint, and some stuff.

EW (01:08:20):

And creativity. Some identification of something that would be fun.

CG (01:08:22):

Yes!

EW (01:08:22):

The time to finish it all. The ambition to actually get it done, instead of just starting it. No, it did not take much at all.

CG (01:08:35):

<laugh> Yeah. Mm-hmm <affirmative>. But yes, it came out great. <laugh>

EW (01:08:44):

Well, Charlyn, it has been really great to talk to you. Do you have any thoughts you would like to leave us with?

CG (01:08:52):

Yeah. Oh my gosh, it has been such a fun time talking with you. I guess my final thought would be, I make stuff because I cannot not. I do it because it makes me feel alive. I think there is a special, unique joy in thinking up a thing, and then yanking it out of your brain, and making it real.

(01:09:27):

My hope is that a lot of people- If you are like me and you like to make things, I hope you take some time to pause and savor that unique joy. And just keep making things.

EW (01:09:48):

Our guest has been Charlyn Gonda, software engineer and maker. You can find her blog and her projects at charlyn.codes, that is C H A R L Y N dot C O D E S. There will be a link in the show notes, along with many of the other things we talked about today.

CW (01:10:10):

Thanks, Charlyn.

CG (01:10:10):

Thank you so much for having me.

EW (01:10:15):

Thank you to Christopher for producing and co-hosting. Thank you to Carmelo for recommending Charlyn. Thank you to our Patreon listener Slack group for all that they do. And of course, thank you for listening. You can always contact us at show@embedded.fm or hit the contact link on embedded.fm.

(01:10:34):

Now a quote to leave you with, from Madeleine L'Engle: Unless we are creators, we are not fully alive. What do I mean by creators? Not only artists, whose acts of creation are the obvious ones of working with paint or clay or words. Creativity is a way of life, no matter our vocation or how we earn a living. Creativity is not limited to the arts, or having some kind of important career.