370: This Is the Whey
Transcript from 370: This Is the Whey with Alvaro Prieto, Elecia White, and Christopher White.
EW (00:07):
Hello, and welcome to Embedded. I am Elecia White, here with Christopher White. This week, our guest is Alvaro Prieto, and we'll be talking about cheese, the weather, robots, who knows really?
CW (00:24):
Hey, Alvaro. How's it going?
AP (00:25):
Hello. Hi. It's going well. I just have to say this is very weird, because I usually listen to the podcast at 2X speed, and that intro was so slow.
EW (00:37):
So slow.
CW (00:37):
We'll try to match 2X during lightning round. How's that?
AP (00:41):
Yeah, that would -
CW (00:41):
We'll ease you into it, and then we'll slow down.
AP (00:43):
Sounds good. Yeah, that just caught me off guard, because when we were speaking earlier, it was normal. And then the intro is something I hear a lot, and that was just wrong.
EW (00:54):
For people who haven't heard you be on the show in the past, could you give us an introduction?
AP (01:02):
I'm Alvaro. I am a electrical and firmware engineer, and I like cheese. Yeah. [Laughter]. That about covers the basics.
EW (01:17):
Okay, well, we'll get into more details. Probably not just cheese, but maybe some other things.
AP (01:22):
I like other things as well, yes.
EW (01:25):
Are you ready for lightning round?
AP (01:27):
Yeah, absolutely.
CW (01:27):
Favorite obsolete technology.
AP (01:30):
Obsolete? Oh, shoot. Okay. I'm not ready for lightning round. I take that back. [Laughter]. Obsolete... but if it was obsolete, I wouldn't... uh.. Phone calls.
EW (01:44):
Favorite kind of cheese.
AP (01:46):
La Tur.
CW (01:48):
Describe it.
AP (01:48):
Well, that's not a kind, that's a specific cheese, but -
CW (01:51):
But what makes it good?
AP (01:53):
Oh, it's three different kinds of milk. So you've got cow, sheep, and goat's milk, and that's kind of a soft spreadable cheese, and it's amazing.
CW (02:01):
So it's tres leches cheese?
AP (02:05):
It's good cake.
CW (02:07):
Favorite kind of weather.
AP (02:10):
Cold and sunny.
EW (02:13):
Favorite kind of robot.
AP (02:16):
A working robot.
CW (02:17):
For Swiss cheese, what happens to the hole when cheese is gone?
AP (02:21):
Whoa. What happens to the hole when the cheese is gone? It reenters the universe, I don't know, the cosmos? It goes back to where it came from? Where did it come from?
EW (02:35):
Would you bring back the dinosaurs?
AP (02:37):
Sure.
New Speaker (02:39):
Which ones?
AP (02:41):
All of them. But, okay,...if I were to bring all of them back, I would bring dinosaurs from specific periods in separate areas.
AP (02:51):
I wouldn't want to mix them, because I know that not all the dinosaurs lived together, so yeah. So we'll have different of the Jurassic Park islands for each different period.
EW (02:59):
Okay. Do you have a tip everyone should know?
AP (03:01):
Don't give up. Just try again later.
CW (03:09):
Try again later. 404.
AP (03:12):
That's what I'm doing.
EW (03:15):
Okay. So you have been doing cheese, and there's water robotics involved in jobs, and there's some electrical things with a weather station. But first, you not only are cheating on us with another podcast, you started your own podcast.
AP (03:34):
I don't cheat, no. I've only been on a few others, but I think this was my first podcast that I was on, 2015. So, I'm just saying.
AP (03:48):
But yeah, I do have the Unnamed Reverse Engineering Podcast with Jen, who's also been on probably one of the first podcasts, I guess, right?
EW (03:58):
Oh, many of the first podcasts.
AP (04:00):
Yeah.
EW (04:01):
What's the show about?
AP (04:04):
About reverse engineering. We talk to people that are much smarter than us about reverse engineering topics and just kind of taking things apart.
AP (04:12):
And not just hardware, but a lot of it is hardware, taking apart, reverse engineering, silicon, what protocols, all sorts of stuff. The most recent ones, we talked to folks who make the tools for reverse engineering.
AP (04:28):
So the open source ones, or some commercial ones. But yeah, we kind of talk all things reverse engineering.
CW (04:37):
Okay. What's a recent one that you are super happy about?
AP (04:41):
Oh, Samy Kamkar came on and did one about the firewall, what was it called? But basically you go to the website, and it can open up any port on your firewall from the outside, which is pretty neat.
CW (04:59):
Neat?
AP (04:59):
Yeah.
EW (04:59):
NAT Slipslipstreaming?
AP (05:01):
Slipstream. Yes. NAT Slipstreaming. Yeah. He came on to talk about it a little bit after he published it, and since has gotten a lot scarier. Other people have figured out ways to do more things with it. Yeah, so that was fun.
AP (05:16):
And I've also gotten to talk to some of my, I wouldn't say childhood, but when I was younger, heroes, of security, computer security. Or Joe Grand was a really fun one.
AP (05:30):
Or I talked to this one person, his handle was Major Malfunction, who I saw at Defcon in Vegas back in 2006 when I was 18. And I saw a talk by this person, and it was really cool, about hacking magstripes...on train tickets on credit cards, all that stuff.
AP (05:49):
And I sent him an email, and he replied, and back then I was like, "Oh, this is super cool. This person actually is helping me out."
AP (05:56):
And many years later, at hardwear.io, which was a hardware kind of security conference here in the Bay Area, he happened to be there. And I didn't realize, because he was going by his real name, but I got to interview him for the podcast, which is pretty cool.
EW (06:12):
How far were you into the podcast before you realized you knew this person?
AP (06:17):
Oh, no, no...Thankfully I did know when we started the podcast, but I was in the conference already, and then somebody mentioned the name. I was like, "Wait a second, that's this person?" And then I went and asked him if he could be on the show.
EW (06:37):
Cool. What have you learned from the show that you didn't really expect to learn?
AP (06:44):
Whoa. I don't think about these things. I just like talk to people, and it's fun, but what have I learned? I've learned there's way too much fun things and not enough time to do them.
AP (06:57):
I learn about all these really cool technologies and techniques people use for kind of taking things apart or learning about things. And I always want to try them, but there's never enough time.
AP (07:09):
And just hearing the stories of how people ended up figuring things out is always a ton of fun. And I'm blanking out, but if I look at the list of episodes, I could tell you some really cool things that I've learned.
EW (07:25):
It's hard to do it on the spot, you know?
AP (07:28):
On the fly, right?
EW (07:28):
Yeah. Okay. So what are you doing for work these days?
AP (07:36):
I am doing firmware again, finally, after kind of doing all sorts of other things, but I'm doing firmware for ocean remote-sensing buoys.
EW (07:49):
What else can you tell us about it?
AP (07:52):
It's a lot of fun. So it's a company called Sofar Ocean, and folks might know the name OpenROV, which was -
EW (08:02):
Yes.
AP (08:02):
- kind of a, I don't know if it was a Kickstarter, or something, back in the day, that they built an open source underwater kind of Rover or drone, or whatever you want to call it.
AP (08:15):
And then that company later on merged with another company called Spoondrift Technologies, and then they formed Sofar Ocean. And right now I am working on the next generation of kind of remote-sensing buoys.
AP (08:28):
And these are buoys that, well, we have...a couple of types, but you basically throw them in the ocean. And they just float in the middle of nowhere and measure sea surface temperatures, and wave heights, and other things, and then send the data back over satellite.
AP (08:42):
But you can also buy them if you're an individual or company for research and deploy them kind of off the coast. Or there's a company that's deploying them to monitor coral reef water temperatures and stuff. And then you can get data back over satellite, I mean, through our API, or whatnot...
CW (09:01):
I was going to ask who the typical client was. Is it NOAA, or private companies, or - ?
AP (09:08):
Yeah, there's different ones, right? So, there's private companies. And so we sell the buoys themselves, that you can put somewhere, wherever you need to get the data, and you can moor them, or put them in a static location.
AP (09:25):
Then we also have our own that are just drifting across the ocean. That's why it was Spoondrift, back in the day and those we can just sell the data. But another thing we're doing is using that data ourselves to create much more accurate weather models.
AP (09:41):
So NOAA releases their own, and then we can augment it. Because we have data points that are all over the place, and we use that to do kind of ship routing services.
CW (09:51):
Oh, okay.
EW (09:51):
Can you look for tidal waves?
AP (09:56):
I think the science people could answer that. I don't know. Hopefully...Yeah, I'm not sure. But there's a lot of kind of grants with,...I don't know who does them, but to do research, right? Of these kinds of things.
AP (10:13):
So I'm trying to figure out what I can talk about and what I can't. But...they are doing kind of wave measurements, and I don't know if it's sensitive enough to just catch the one rogue wave kind of thing. Is that what you mean?
EW (10:26):
Yeah.
AP (10:28):
I wonder. I would have to ask. And actually the CTO has been on the show before, back when he was working at a baby monitoring startup, I think? Right?
EW (10:41):
Yeah.
AP (10:42):
Evan Shapiro?
EW (10:42):
Evan Shapiro. We talked about baby monitoring, and I think -
AP (10:46):
And poker.
EW (10:46):
- using machine learning to win at poker.
AP (10:50):
Yeah.
EW (10:51):
It was a weird show, but it was pretty cool.
AP (10:56):
Well, yeah, he's a CTO at Sofar now.
EW (10:59):
Is there anything about engineering for the ocean that people don't necessarily realize right off?
AP (11:05):
I mean, I think, I hope, most people realize that the ocean is incredibly harsh in all sorts of ways. Salt water will corrode everything, but that's not the worst part.
AP (11:18):
Then critters, all sorts of things just start growing on every surface you can imagine, and starts growing, and growing, and growing, and then kind of takes over it.
AP (11:29):
You can't get your things back because they're in the middle of the ocean and debugging can be exciting when you can never get it back. So there's a lot of interesting problems.
CW (11:44):
Yeah, but you don't have to worry about rock slides, or hard things running into it, except for maybe -
AP (11:49):
I guess a boat could hit it.
CW (11:51):
- shipping.
AP (11:51):
But, yeah.
EW (11:51):
Icebergs.
CW (11:53):
Ehn.
AP (11:54):
Hopefully those come slow enough that -
CW (11:55):
I think it would be more of a -
EW (11:58):
Is there any reason why that was the job you took?
AP (12:04):
So...let me recap what's happened since I was last on here. I was here right after I quit Apple and I think I was at Planet Labs, right? Maybe?
EW (12:16):
Yes. Yes.
AP (12:16):
Well, that was the first time I was on. So I joined Planet Labs, and six months later I quit. Because it wasn't a great fit. And then I took what I call my self-funded sabbatical.
AP (12:28):
It was originally supposed to be a month or two, just to kind of recap, get my act together, and find a job, but then it was too much fun. So I just started traveling and meeting up with friends, that kind of thing.
AP (12:39):
And then I joined a company called Verily, which used to be Google Life Sciences... Ben Krasnow was there, and it was a lot of fun. And I was there for almost a couple of years.
AP (12:52):
And then I kind of did a switcheroo to Project Loon, which was also within Alphabet. So it was kind of like switching jobs within the same company. It wasn't, it was different companies, but it was all still under Alphabet.
AP (13:04):
So I went to Project Loon, and then I was there doing ground station stuff for the balloons. And last year, in March, I had the brilliant idea of quitting my job to go traveling. I didn't have that idea in March, but my last day was March 4th or something.
AP (13:21):
So I quit my job, and two weeks later I was locked down in my apartment. So that didn't work out as expected. And that's for everyone else as well. And so, yeah, I didn't really have a job.
AP (13:36):
I was just kind of not doing anything, working on projects at home, watching lots of movies, walking around the hills, and then a recruiter from Sofar reached out. And it seemed like a really interesting project.
AP (13:51):
And for me, my favorite part was the chance to work on something from scratch. Because I'm working on the next generation of the buoy, and it was a full redesign.
AP (14:02):
So do the processor selection, start the firmware, I don't want to say from scratch, but a lot of it from scratch, because it's an entirely different system.
AP (14:11):
Some of the algorithms will port over, but the underlying system is totally different. So it was a chance for me to kind of do the whole thing. And I got to play with FreeRTOS. Well, I ended up choosing FreeRTOS, but I had to choose which RTOS we wanted to use.
AP (14:29):
"Do we want to use an RTOS? Which toolchain do we want to use?" And then going through the whole process of writing the drivers, optimizing power consumption, debugging, all sorts of different things.
AP (14:41):
So it was a really fun, puzzle if you want to call it, problem for me that I've never done the entire... or never owned that entire thing. I usually come into a project that's already started, and somebody already made all of these decisions. And then I just have to live with them.
AP (14:57):
And this was an opportunity to do that. And also it's really cool that we're doing remote ocean measurements and stuff. I like both the company and the opportunity.
CW (15:05):
It can be really fun to come into a company and be able to kind of start things from scratch. Because you know the mistakes people have made before, so you feel like you can kind of skip some of those. And you know what things are important and what aren't.
AP (15:20):
Yeah, and I'm sure I'll make some myself, right?
CW (15:22):
Right.
AP (15:22):
But at least I can not do what I've had other people, and be like, "Oh, this is stupid. And then I don't want to do that." So now I have a chance to not to do that.
CW (15:32):
I've noticed that you've worked at space companies, and air companies,...and ocean companies. But you need to do one more company to -
AP (15:43):
Wait.
CW (15:45):
- to own all kinds of things.
EW (15:47):
You just need an ag tech company? Is that what you're saying?
CW (15:49):
No, a land company of some kind.
AP (15:50):
Oh, land -
EW (15:50):
Mining? Mining or ag tech.
CW (15:50):
Yeah, mining, ag tech.
AP (15:53):
I've worked in trains before, technically.
CW (15:56):
Ehhh, that's, okay.
EW (15:57):
Wait a minute, worked in trains? Does that mean you were working while on BART?
AP (16:00):
Well, so the trains went on the things that I worked on. So my first -
EW (16:05):
Ahh, okay.
AP (16:05):
- internship in college was at a company called Railcom, and they did remote track switching equipment.
AP (16:12):
So I was writing the code that communicated with a radio and actually moved these giant track switches, the actuation. And somehow my code made it out to lots of CSX train yards. So yeah, that was a fun one. So I have worked, I guess in, sort of -
CW (16:35):
It's like the embedded version of an EGOT, right? Air, land, sea, space. Gotta catch 'em all.
AP (16:42):
I haven't done underground stuff, I guess, seismic. I don't know what I would do -
CW (16:46):
Well, we just saw Godzilla. So there are those tunnels that go to the center of the earth. So there's -
AP (16:49):
Oh, yeah, that -
CW (16:49):
- probably some stuff you can do there.
AP (16:51):
That's a good one.
EW (16:52):
Godzilla versus Hong, versus King Kong. And versus Hong Kong, actually.
AP (16:55):
I have not seen that one. I've seen the other ones.
EW (17:00):
Okay. So work aside, because we're not quite sure what details I can ask you about that.
AP (17:06):
Oh, you can ask. I just don't know if I can answer.
EW (17:08):
Right. That would get boring real quick.
AP (17:12):
Well, it's just going to be fun for Chris during editing, right? We can talk whatever. It's great.
CW (17:18):
I'm not going to get in trouble if I don't edit it out.
EW (17:20):
Cheese. You've been -
CW (17:25):
Let's go somewhere where there's cheese.
EW (17:27):
Let's go somewhere where there's cheese.
AP (17:32):
That's a good place.
EW (17:32):
I guess, wait, I should have asked him if the moon was made of Wensleydale.
CW (17:37):
Wasn't it Stilton?
EW (17:38):
I don't know. Anyway, you've been making cheese.
AP (17:43):
Yes.
EW (17:43):
Do you know that you can buy that in stores?
AP (17:47):
I've heard. No, I do buy it in stores, because they have really tasty versions that I can't make yet.
CW (17:55):
Take us through what making cheese is all about...The most I've seen about making cheese is when I tuned in to your short Instagram live broadcast of making bread.
AP (18:07):
[Laughter].
CW (18:09):
Which was interesting. It was very interesting.
AP (18:11):
Sorry, yes. I forgot about that.
CW (18:11):
It seems like it's a lot of biochemistry.
AP (18:15):
Yes.
CW (18:15):
So can you explain what cheese is, and why I never want to eat it again after hearing you tell me what it is?
AP (18:22):
Well, okay. I will tell you about a specific type of cheese that I am currently making. I can say a couple, but yeah, basically the one that you saw me making in my Instagram live, the one and only time I've done that, featured my parents even, which is great.
AP (18:40):
But...your ingredients that you need are basically milk and heavy cream, if your milk isn't fatty enough. But basically you have your dairy, your milk. So I got a bunch of milk. Then you have cultures you introduce.
AP (18:59):
So it's this bacterial culture, and then also molds, and your coagulant, which is rennet. And then depending on which milk you use, you might add citric acid as well, just to play with the pH, I think.
AP (19:11):
But what you do is you warm up the milk, you add the cultures, you let them kind of rehydrate, because you buy them powdered form from the web of cheese. And then you add the rennet, which will coagulate it.
AP (19:28):
And then you kind of let it sit, and you have now kind of a jello, a big jello thing of milk, and that's what you call your curds. And so you cut it, you cut it all up, chop it all up into smaller pieces, and you stir it up -
EW (19:43):
And they squeak, right?
CW (19:44):
They squeak?
AP (19:44):
Not in this case. You're probably thinking of the cheddar ones. And those, I believe they wash them with hot water after this step. They do something else to it. Depends on the cheese. You do different things once the curds are set.
AP (20:01):
But for brie, it's a soft cheese. After the curds have set, you cut it up, and then you put them in these molds. And they're kind of like, imagine a cup, but it's sort of a strainer.
AP (20:12):
So it lets the liquid out in the form of the whey, W-H-E-Y, the whey, and the whey kind of falls out. And then you flip the cheese a couple times -
EW (20:28):
And then you take it to someone, and you say, "This is the whey." Sorry.
AP (20:32):
This is the whey of the cheese. I don't know why that reminded me of Star Wars, but -
EW (20:38):
The Mandolorian.
AP (20:38):
Oh right, yes. "That is the way." I just watched the last weekend for the first time...So you have the cheese curds, you put them in these molds, the whey kind of falls out, or drains out, that's a better, more technical term.
AP (20:56):
You turn it a couple times, and this is over the course of hours. So you might do 12 hours. Leave it overnight at kind of a room temperature while...basically the cheese forms can hold themselves up without the molds.
AP (21:11):
And then you take them out of the molds. So you put them in your cheese cave, or aging container, which for me is a plastic...Tupperware container inside of a small fridge. And that is where the mold grows.
AP (21:26):
So if you've ever had brie, it has this white rind. That's actually mold. And if you see it grow, and I can actually share, I have a little time-lapse that I took of the mold growing. It's just kind of fuzzy, cotton-like mold that grows out.
AP (21:41):
And the roots of that mold are what actually age the cheese. That's what is actually changing the cheese from just milk flavor to whatever different flavors you're going to get.
AP (21:54):
So after about 10 days or so, you're kind of turning it every day, just so the mold doesn't grow into the surface that it's sitting on, just turn every day. And then you can wrap it. And that's when the rind for the brie gets smooth.
AP (22:07):
And that's why you don't eat brie that's kind of fuzzy. But it's smooth. So you wrap it, and then you age it for another four to six weeks, depending on the temperature. And then you have cheese, or brie cheese. Or camembert, or something like that.
EW (22:21):
Okay. Setting aside what rennet is made out of, and that there was a lot of mold in this story, which I thought wasn't what you wanted on cheese -
AP (22:30):
Well, it depends. And actually, most rennet in use nowadays is not animal-based.
EW (22:39):
Oh, really?
AP (22:39):
Yes.
EW (22:39):
Oh, phew.
AP (22:39):
So there's a few different kinds. And yes, originally rennet is made from, I don't know, the inside of the stomach of a baby cow or something. Something like that. It's animal parts.
AP (22:52):
So technically, cheese isn't vegan, or vegetarian, but -
CW (22:57):
It's definitely not vegan.
AP (23:00):
Yeah, no, it's not vegan.
EW (23:00):
It's not vegan.
CW (23:00):
Although we'll come back to that.
AP (23:00):
Although there is cashew, I'm not going to go into that, but now there is microbial rennet. And...so they actually use, I forget which critter, I don't know if it's a yeast, or a bacteria, or something, or a virus, to actually make the same proteins that are in regular rennet without using the animal.
AP (23:23):
So I guess they got the original, -
CW (23:24):
Right.
AP (23:24):
- the specifications, the user manual. They basically made a copy of that, I think it's protein, but whatever chemical composition, they're able to reproduce it now without using the animals.
AP (23:39):
And most, I think it's over 60%, or 90%, something crazy in the U.S., of commercial cheeses actually don't use animal rennet anymore.
AP (23:48):
If you go to France, and you go with the old school diehards, they're going to tell you that it makes a big difference, and you've got to use the old school stuff. But it doesn't seem to be the case for most places.
EW (24:00):
Okay. I stand corrected. But I still don't know where the electronics comes into this picture, or into this cheese, as the case may be.
AP (24:08):
What electronics? I don't know what you're talking about. Yeah, so,...I have a problem. Yeah.
EW (24:18):
Is it an electronics problem or a cheese problem?
AP (24:20):
Well, I just love making things, right?
CW (24:20):
Or a personal problem?
AP (24:21):
I do have a cheese problem, that too, but I have other problems. But I love making things. So whenever I'm doing something at work, I'll still come home, and still work on electronics, or firmware, or software, or whatever, because it's fun.
AP (24:36):
And I find excuses to work on these side projects in ways that teach me something I don't know yet. So I don't know. This was 2017, maybe. I started thinking about making cheese. And I went into it with the perspective of being an engineer.
AP (24:59):
And I started designing a circuit board, with temperature and humidity sensors, and relay output, so I could turn the fridge on and off to control the temperature. And then I had another relay to control a little motor for a water pump so I could introduce humidity.
AP (25:13):
I had no idea what I was actually going to need, but I kind of just started making circuit boards. Because why not? And then I actually started making cheese and found out -
EW (25:21):
Engineer it first, figure out what you need later.
AP (25:25):
Yeah, yeah. I was like, "I'm just going to do all the things." And to do this, I wanted to play with the STM32F0, I don't know, some microcontroller, right? And so I wrote some code, I got to work with USB, and that thing.
AP (25:40):
And then later I knew, I realized that I don't need to control this so much. I just need to measure it. So I started making my circuit boards smaller, just because...I don't need a fan controller. I don't need a relay controller for the fridge.
AP (25:55):
So I made it smaller. And then somebody, I don't know if it was Windell from Evil Mad Scientist, or someone recommended it. It's like, "Hey, what if your boards were shaped like cheese?" And I was like, "What?...That's a great idea."
AP (26:11):
So then the sensor boards themselves, that had a temperature and humidity sensor, I started making them like little wedge-shaped, like pizza slice or cheese-shaped. But these were OSH Park boards, so they were purple. So then I found out how can I make these yellow.
AP (26:25):
And then I made yellow, cheese-shaped, cheese temperature and humidity monitors. And then I kept going, because why not? Because there's a lot of wires, I thought, "Why not make this wireless? Why not make this Bluetooth?"
AP (26:38):
So I made these kind of stand-alone little cheese wedges, and they have an nRF52, a little 2032 coin cell battery, and the sensor, and Bluetooth. So now I've learned how to do weird-shaped circuit boards. I've learned about STM32. So I've learned about nRF52s.
AP (26:58):
I decided to teach myself mynewt, the operating system, for the RTOS, for playing with Bluetooth. And then I wanted to learn low-power design, right? How low can I go?
AP (27:08):
And then I was able to get it to one to two microamps, average current, and I'm transmitting every minute the temperature and humidity, which I thought was pretty good. But it took a lot of work to get there. And then, yeah, so these are just excuses to learn things and monitor the cheese.
EW (27:27):
So when you have Bluetooth on a wedge-shaped board, does that make it blue cheese?
AP (27:37):
Oh, no. No. It's yellow. I'm not going to acknowledge that.
EW (27:41):
Did you put extra large vias, or extra large drilled holes through the board so that it could look like Swiss cheese?
AP (27:50):
I thought about it, but I didn't. I think the most I would do is weird silkscreen. The main problem is the battery. The CR2032, I guess I could probably get away with some holes, but the bottom is mostly just battery.
AP (28:07):
So you can't really see much, and the top's components. So there's not a lot of room to cut out any shape that would look good, I guess.
EW (28:16):
Do you have all this online? Can somebody else make your cheese board?
AP (28:20):
It's on GitHub...I don't have a page describing it all, but yeah, all my stuff is open hardware, open source, and I have pictures...
AP (28:28):
I had a Crowd Supply Teardown. I gave a talk about it a couple years, well, okay, no, maybe more than a couple years ago, but all of the "don't do this" lessons learned. So all the mistakes I made, I made a talk about that and how I ended up where I was at the time.
CW (28:49):
So you're sending temperature and humidity every minute -
AP (28:53):
Yeah.
CW (28:53):
- while your cheese is being, what's the word here? While the cheese is -
AP (28:57):
Aging.
CW (28:57):
- fermenting?
EW (28:59):
Slowly digested by the -
CW (28:59):
Forming? While your cheese is cheesing -
EW (29:03):
Mushrooms?
CW (29:03):
Mushrooms?
AP (29:03):
[Inaudible].
CW (29:03):
Are you sitting here watching a big display and seeing if there's an error or something? How do you use this?
AP (29:12):
Yeah, I have a projector on the wall with the live, no, no.
CW (29:16):
Alerts coming into your phone, emergency cheese humidity, out of range?
AP (29:19):
I get text messages every three minutes. No. So I don't really look at it very much to be honest. So...the boards transmit temperature and humidity, and right now it goes to a Raspberry Pi that just saves them to an SQLite database.
AP (29:37):
And then I do have a web interface I could use, but I don't really look at it unless something's wrong. So, I'll check it every few days, just to make sure that the temperatures are what they're supposed to be and the humidities aren't crazy.
AP (29:52):
But the main goal right now for me, since I'm able to make it without the sensors, checking them too much, it's if something goes horribly wrong, I have kind of the history of the data to go back and see what happened.
AP (30:07):
Or if something goes very right, I'll have that as an example of what environment it was in. So it's mostly kind of a backup of if something goes wrong right now. And just the current measurements.
EW (30:23):
When you started out making cheese, you started out making possibly over-engineered sensors.
AP (30:32):
Yes.
EW (30:33):
And then you got more into the actual product, and now you're barely monitoring them unless something happens.
AP (30:41):
Yeah.
EW (30:44):
Do you draw any conclusions from that?
AP (30:48):
I mean, the monitoring was always the excuse, right?
CW (30:50):
It was about the journey.
AP (30:50):
People have been making cheese, sorry?
EW (30:53):
But was it about the cheese, or was it about the electronics? That's what I'm trying to get to the heart of.
AP (30:56):
Yes. It was about both, really. They kind of drove each other, right? Sometimes the cheese, there was a year and a half where the cheese was failing repeatedly. We couldn't get it right. And so I worked more on the sensors, because that was actually working.
AP (31:18):
And then eventually the cheese started working again. So this year I've been making lots and lots of cheese, but I haven't done anything with the sensor. I did change from SQLite. I am playing with InfluxDB, which is a different type of database.
AP (31:31):
Just because why not? Because it's fun. But yeah, it kind of goes back and forth, and like I said, it's just an excuse to learn new things.
EW (31:41):
Do you think your adventures with your cheese board helped you get your current job, but with the whole monitoring and low-power part?
AP (31:49):
Yeah. So, Sofar has a pretty neat interview process where you do your regular kind of interviews, and I guess we're all remote, but one of the last steps of the interview process is to do a presentation to the entire company.
AP (32:06):
It's a very small company. But do a presentation to anyone who wants to show up about anything you're passionate about. They don't tell you what to give a talk on. And so, I did a five minute, "How do you make cheese?"
AP (32:21):
And then I went on after about how I made all my cheese boards, because why not? And then I talked about my weather station after. And these were all very relevant projects to a remote weather measuring company. So I don't know if that's the reason I got it, but I think they helped.
EW (32:44):
It was more, did the skill building that you were attempting succeed in getting your new job?
AP (32:49):
Oh, absolutely. Yes. A hundred percent. And this has been kind of historical. This has helped me get jobs in the past as well. When I first showed up for my interview at Apple, it was for firmware engineering, but I brought some circuit boards I made for fun just to play with.
AP (33:09):
And they weren't super relevant to the writing code part of it, but they were like, "Okay, that's cool." And then that also means that you know your way around hardware.
AP (33:18):
And as you both know, if you're a firmware engineer that works with hardware,...if you're comfortable with hardware, that's a lot more debugging you can do, right? If something's wrong, you don't just go hand the board to the hardware engineer and say, "It's not working."
AP (33:33):
You can actually dive in and pull out the oscilloscope, logic analyzer, and do some more debugging without needing anyone else's help. And showing up with my hobby projects that were hardware-related for a firmware engineering interview was impressive to them.
AP (33:49):
Because it was like, "Oh, okay. You know more than more than that." And same with Verily. I showed up, and I had these other side projects that were related to the job, but not specifically what I was wanting to go do. So I think it absolutely has helped. Long story short.
EW (34:09):
Do you consider it a portfolio, or are you just taking random projects to interviews? Do you do the formal thing?
AP (34:17):
No. I just do it for myself, basically for my own, one of my high school teachers would say "my personal edification." And yeah,...I do it because I think it's fun, and I want to learn these things.
AP (34:30):
For example, with some of the cheese projects, and some of the kind of in-between projects, I wanted to learn surface-mount technology, right? And...I had done surface-mount before, but with a soldering iron. But I wanted to do reflow.
AP (34:44):
So,...for my personal projects, I started getting stencils made, and I got some solder paste, and I got a little reflow oven...And my second job at Verily was doing a lot of hardware prototyping. And I was doing all that myself, and I got it, because they knew that I could do it.
AP (35:03):
And they knew, because I had my little side projects that I'd been doing just for myself. But I didn't go and say, "Oh, I should learn how to do surface-mount, solder paste, whatever stuff," because it was going to help me get a job.
AP (35:16):
I could've done that, but that was not my primary driver, I guess. It's mostly my own curiosity.
EW (35:23):
Do you have any tips for people who don't have the energy, motivation, ambition, to be able to do both work and projects at home?
AP (35:36):
I mean, that's a tough one, right? Because I am that crazy person that likes this so much, that does it for fun as well as for work. But if I'm going to be perfectly honest, I don't always do the exact same thing at work and at home.
AP (35:52):
Whenever my job is more firmware-related, I might do my hobby projects more hardware or something else, right? If I'm doing electronics at work, I might go home and do more software and firmware. This year I've been doing a lot more mechanical. I got myself a 3D printer.
AP (36:06):
I've been learning FreeCAD, just doing kind of 3D modeling stuff. So, that's kind of a way so your brain doesn't get totally tired. But as far as making time, anything like that,...and I'm sure y'all have told people before is you just need a project, right?
AP (36:23):
You need something that you're excited about, and then you learn the tools you need to do it. And then this case for me was making cheese, right? I thought that was cool. And I was like, "I can make a tool to make my cheesemaking easier" or something.
AP (36:39):
And then that was my excuse. And that's what kinda got me motivated to do it. But how to get that motivation is kind of a hard question to answer.
EW (36:50):
Yeah. I think if we could bottle that, we could really make a lot of money.
AP (36:53):
Yeah, well, then we don't have to work anymore, right? But also, but I don't -
EW (36:58):
But we'd still want to because of the bottle.
AP (37:00):
...Yeah, that's true. That's so true. But, yeah, no. And this year, or the past year and a half, I would say actually, has been not very productive for me,...even though I do have all these side projects, and it looks like I do a lot of stuff, I haven't.
AP (37:17):
I've been trying to stay off the computer, because I have a lot of repetitive strain injuries and stuff. So I've been trying to find other hobbies, which is really hard to do without using your hands. So even if you do this for a few hours a week, it's still something, I guess.
EW (37:39):
There is some value to realizing that you didn't do this all in the last five months.
AP (37:45):
No, no. This has been very long long-term, yeah. And yeah, that's why I mentioned earlier that one of my talks was all the things I did wrong. Because you see, yeah, a lot of YouTube videos, blog posts, you see those amazing projects that are super intricate, and then it looks like they just did them really fast.
AP (38:05):
And some people do work really fast, but you don't get the perspective of all the hours that were put in, all the suffering, the pain and suffering of things not working. And yeah, for example, the cheese thing, I think I started in 2017, so it's been four some years on and off just doing these things a little bit at a time.
EW (38:28):
But it's never been, "I have to put in 20-hour-a-weeks in addition to my job for the next four months"?
AP (38:35):
No, absolutely not...I watch a lot of movies, so if you just add up the amount of time I spent watching movies, you'll know that I don't spend most of my time outside of work working on projects. Because I do keep track. I can -
CW (38:51):
You can do things while watching movies, you know.
EW (38:52):
That makes the movie less good.
AP (38:52):
No, I -
CW (38:55):
I'm kidding, I'm kidding.
AP (38:56):
I don't multitask at all. If I'm watching a movie, I'm watching a movie...But yeah, I do keep track of all the movies I watch so I know exactly how many hours I watch. So I could tell you.
EW (39:08):
Okay. So one of your other major projects, as you mentioned, is weather station things.
AP (39:16):
Yeah.
EW (39:17):
What do you do? I mean, I've read some of your blog posts, but -
CW (39:21):
And he brought it to the Embedded party which -
AP (39:23):
That's right.
EW (39:23):
Which was only -
CW (39:23):
- which was only a year and a half ago.
EW (39:27):
A year and a half ago.
AP (39:27):
Oh, no.
CW (39:28):
Disturbingly enough.
AP (39:30):
The second one, right?
CW (39:31):
Yeah, yeah, yeah.
EW (39:31):
Yeah.
CW (39:32):
I feel like it was eight years ago, but no. It was -
AP (39:35):
I feel like it was two weeks ago. The past year has been a blur, -
CW (39:38):
Oh, God.
AP (39:38):
- year and a half, however much.
CW (39:42):
Feels like a century.
AP (39:42):
I think I brought my cheese board that one too, but yeah. So how did I end up doing a weather station...I found a different excuse to work on a project, and that excuse was my dad, because he's a nerd just like me. And his father before him, and his father before him, we were all nerds.
AP (40:02):
And my dad's family has a thing of, they love measuring things, measuring everything. My grandpa had his own little rain gauge in the back of his house. And he would measure every day and write down how much did it rain. He would write down temperatures.
AP (40:16):
We would log the car mileage every time you get the car serviced, or you fuel up, or anything, they would write down in a little log book, and that kind of thing. So I thought it'd be neat for my dad's birthday to build him a little weather station.
AP (40:31):
And I could just buy him a weather station, but then I don't learn anything. So I was like, "Why don't I design a weather station and give it to him for his birthday?" So that's kind of how it started, I don't know, three years ago, I think. And again, it was an excuse to learn new technology.
AP (40:47):
So let me learn about radio stuff. So I started playing with Zigbee's. Well, actually, so I should go back, and this will be relevant to what we're talking about earlier. I started this project, and I went, and I got a little radio module.
AP (41:02):
And I built kind of a sort of working weather station, but then it stopped working. And then I just got tired of it, and gave up, and didn't touch a project for a year.
AP (41:11):
And then I realized that the project suffered from premature optimization, as a lot of people do, where I try to get it ultra low-power, ultra small, super efficient, everything all at once. And then it wasn't quite working. And then I gave up. And so I realized that's stupid. I need to do this better.
AP (41:34):
And I kind of gave myself a break, and said, "Look, just build it as big as it has to be with as many wires and development boards. Just get it working. Make something work. And then once you have something working, start optimizing it, start making it smaller, but always having something that works."
AP (41:50):
And then you still have that kind of shot of joy that you have something that works, and then you can keep iterating while still having something that's working. So then I started making it smaller I was using, I think, yeah, xBee radios, and an STM32 something, and a big solar panel, and a big battery.
AP (42:16):
And I learned about weatherproofing, because that was my excuse to learn "How do I make electronics that survive outside? How do I make solar? I've never done solar charging stuff. I've never done weather measuring besides the temperatures and humidities inside fridges."
AP (42:31):
And yeah, so then I got it to my dad in Mexico, and we put it on his roof on his house. And then it would send the data to a Raspberry Pi, and then the Raspberry Pi then has a web interface, and then you can see that. And then over the following year, I started making it smaller.
AP (42:47):
I switched from, was it Zigbee, to Bluetooth, because Bluetooth was long enough range, but then I switched now to LoRa. And then I switched from nRF52 to STM32.
AP (43:01):
And I've just been kind of making smaller, lower-power, different technologies. And it's just an excuse, again, to learn all these different things.
EW (43:10):
LoRa versus BLE versus Zigbee. I mean, those all have really interesting use cases, but they're not always the same use cases. They kind of are a spectrum.
AP (43:23):
Right. Yeah.
EW (43:24):
What did you think of them? What would you use them for in the future?
AP (43:28):
So the nice thing with the xBee modules is that they just work. They're not cheap. I mean, relatively. For one-offs, it's whatever, but...you do have kind of to set them up with their little GUI program unless you want to read the datasheet, but basically,...you can set them to do a mesh network.
AP (43:49):
You can set them to do point-to-point or one-to-many, and the radio just works. You can kind of do a serial bridge if you will. So you just send data through your yard, and then it appears somewhere else, and it's easy to use. So that was really cool.
AP (44:05):
Unfortunately, I think most of them now are 2.4 gigahertz, which is fine. It's just the range is not as much. They used to have a 900 megahertz one that would reach a little bit further. Then you have Bluetooth.
AP (44:17):
And I think you're the most familiar with Bluetooth. And it's a nightmare,...depending on what you want to do, if you want to talk to a phone, then yay. But if you're just trying to communicate between devices, I feel like it's a little too much.
AP (44:35):
It's...a lot of overhead, but the reason I wanted to use it is that the nRF52 is pretty cheap. And then the nRF52811 and the nRF2840 supported the new protocol, what was the -
EW (44:55):
The BLE mesh one?
AP (44:57):
No, not BLE mesh, but the long range one. It's a different kind of coding they do.
CW (45:03):
Yeah, I don't remember what it was called. It's part of Bluetooth 5.
AP (45:04):
But it's basically Bluetooth, but long range. So they actually dropped the bit rate significantly.
CW (45:09):
Yeah.
AP (45:09):
And can get much further range. And it's still 2.4 gigahertz, but they do more for error correction, I think.
CW (45:17):
[Affirmative].
AP (45:17):
And then I was like, "Oh, that's really cool. I can use the same chips I've been doing and get much longer range." But I never actually got there...Because it was working well enough without trying to figure it out.
AP (45:30):
And also, because Bluetooth is complicated, and I didn't want to learn all of the, I've already forgotten all the names. But you have to make your connection, and then you have the things. I just do broadcast packets.
AP (45:45):
So I just send advertisements with the data, and that's very easy to scan for advertising packets. And you don't have to actually make connections.
CW (45:54):
I mean, you're making fun of yourself, but...I mean, nothing wrong with that. Nothing wrong with that at all.
AP (46:00):
That's how they choose to send my work too, they just send advertisements -
CW (46:02):
Yeah.
AP (46:02):
- with like, "Hey, here's my serial number, and temperature, and humidity, and battery level, do what you want." And then I don't have to write in any fancy phone apps or anything. I just kind of scan for broadcast and read it. And so that's Bluetooth.
AP (46:17):
And then LoRa is much, much longer range and it's a very different protocol. Again, it's not quite as cheap, because Semtech, the company that basically has, I don't know if it's a patent. So the rights to the actual encoding, any other company that wants to make LoRa radios has to license it from them.
AP (46:36):
So there's a little bit of a tax on that, but the protocol is designed to be very long-range, very low bandwidth, but long-range...Which is kind of what the weather station is great for. And then you can do LoRa, just point-to-point, kind of what I was doing with Bluetooth and with ZigBee.
AP (46:59):
But then there's LoRaWAN, which is kind of the protocol on top of that...You can send it straight to the internet. There's gateways all over the place. And then you don't need to have kind of your own gateway, because there's lots of public ones.
EW (47:19):
Do you have your own gateway, or do you use a WAN point?
AP (47:24):
Right now, I'm doing it myself, just point-to-point, because it's easier again. I do have a LoRa, it's called The Things Network, and it's kind of an open LoRa network.
AP (47:34):
And then if you have your own gateway connected to their network, then...any of your devices can also use their network for free around the world. Now Amazon snuck LoRa gateways into everyone's houses with the Echos.
CW (47:48):
Excuse me, what?
AP (47:50):
Yeah. Most Amazon Echos have a LoRa gateway in them that they're turning on. Surprised?
CW (48:00):
Why?
EW (48:00):
Sensors.
AP (48:00):
Amazon Sidewalk, I think it's called.
CW (48:00):
Why would they do that?
EW (48:07):
For all of their Internet of Things.
CW (48:10):
I guess so.
EW (48:10):
Widgets for all around the house. I mean, Zigbee doesn't work that well around a house. Bluetooth -
CW (48:16):
Except we have seven hundred Zigbee nodes in our house.
EW (48:19):
Well, yes. Yes, but they're not all on the same Hive and channel, so they are... or, uh, PAN ID and channel, so they don't necessarily talk to each other.
AP (48:31):
[Affirmative].
EW (48:31):
And LoRa is a little nicer in that you can talk to strange devices and still expect things to get to where they're supposed to go.
AP (48:38):
Yeah. If you're using LoRaWAN, then it will route it to where it needs to get. But, yeah, so,...I think it's called Amazon Sidewalk. And I think what they're doing is they snuck these gateways into everyone's houses, and then they're going to sell the service.
AP (48:53):
So if you have any device, or any connected device, that you need to connect to a LoRa network, then you can use Amazon's. And they're probably going to have global coverage already.
EW (49:04):
Well, and since they're probably providing the backend where you can monitor -
AP (49:07):
Yep.
EW (49:07):
It's part of their AWS services.
CW (49:10):
Yeah, okay.
EW (49:12):
That makes sense.
AP (49:12):
AWS IoT or something.
EW (49:14):
Yeah. AWS IoT.
AP (49:16):
But yeah, if you're developing a gizmo, that's very convenient, because then you don't have to worry about the other end. You can just make your device, make sure it speaks LoRaWAN, and then register it with the Amazon network. And it'll work almost anywhere, which is convenient.
EW (49:35):
You're not using that yet.
AP (49:38):
No, not yet.
EW (49:40):
Do you think you will?
AP (49:40):
I'm thinking about it. It's just more code. I just have to spend the time to kind of write the code or port the open source code to my device, and it's a little bit more testing. But that introduces more uncertainty, just because, yeah, it's now bi-directional communications.
AP (50:01):
I'm not just transmitting out into the void and then hoping it gets there. I actually have to leave my device on for a bit, wait for a response, or turn on every so often. And then the power consumption goes up a lot, I don't want to say a lot more, but I have to do more profiling just to see how much it's going to last.
AP (50:19):
And again, it's not a huge deal. I can always put a bigger battery, but I'm very obsessive with like, "Oh, I need it to be the most efficient."
EW (50:26):
Okay. So cheese and weather stations.
AP (50:31):
Yes.
EW (50:31):
Do you have any other micro-obsessions, or plans for -
CW (50:37):
I thought you said microbe obsessions.
EW (50:39):
Well, we did talk about cheese.
CW (50:40):
So that's why -
EW (50:40):
So that's fair.
CW (50:41):
Yeah.
EW (50:41):
Do you have anything that you're starting or thinking about doing?
AP (50:47):
Well, I did do, over the break, over the break.
EW (50:51):
Break. It's not a break.
AP (50:51):
I don't think that's what people consider -
CW (50:51):
Geez.
AP (50:56):
While I was on vacation. So while I was unemployed last year, I found...for some reason I had...one of my dad's kind of lab reports from college for one of his digital systems classes. And he had made, this was in the late seventies, he made a digital clock out of logic gates.
AP (51:17):
It was a 555 timer as a clock source, and some counters, and then HEX encoders or decoders, I guess. And so I found my dad's notes, and then I thought, "Hey, I have some of these logic gates. I should see if I can put this together."
AP (51:33):
So I breadboarded the entire clock. And then I kind of tweeted about it, which was fun, just people kind of reminiscing. And then I thought, "Why don't I make a soldering kit out of this?" So I made a circuit board with my dad's original design, and then I sent him a soldering kit to put together, which was fun.
EW (51:58):
Did he?
AP (51:59):
Yeah.
EW (51:59):
Did it work?
AP (51:59):
Yeah. He's got a working clock he designed 40 some years ago.
CW (52:05):
That's a great idea.
EW (52:07):
That is a great idea.
AP (52:08):
Yeah. But, new projects, I'm trying not to. So, you always ask the start a dozen or finish one kind of thing.
EW (52:17):
Yeah.
AP (52:18):
And I'm trying to finish these two before I take on any more ambitious things. I've been doing 3D printing stuff, just learning, And mostly as an excuse to make enclosures and kind of things to hang other things in for storage.
AP (52:34):
I do have my obsessive storage system, where I have all my components cataloged, and labeled, and databased. But that's another condition that I have. But yeah, nothing new. I really do want to finish these before I move on to something else. I have lots of ideas, but I don't -
CW (52:58):
I want to talk to you at some point about FreeCAD and stuff. Because I haven't been doing much 3D printing, but I'll probably get back into it a little bit.
AP (53:04):
It's fun once the printer's working.
CW (53:07):
I always have trouble with the CADs.
AP (53:09):
Yeah. They just released FreeCAD 19 finally, or 0.19. It was in beta forever, but it's pretty good. And I can recommend some tutorials as well. Some pretty good YouTube videos.
CW (53:23):
Cool.
AP (53:23):
...So Sophy Wong back, I don't know how many years ago, maybe two years ago, did a 30 days of Fusion 360, where she was...doing a new 3D model in Fusion 360 every day of the month.
CW (53:39):
Oh, right. I saw you doing something like that.
AP (53:42):
...Well then Greg Davill, who's a wizard of the electronics was doing one circuit board every day, which is -
CW (53:49):
Whoa.
AP (53:49):
- mental. And then that was also very inspiring. So I think in January or February, I decided to do a FreeCAD model every day just for practice, because that's the best way to learn, is to do something.
AP (54:01):
And then I put the ridiculous and arbitrary condition of I'm going to make a 3D model every day. So yeah, I did do that.
CW (54:10):
How long did you spend on them? It was a question I meant to ask you while you were doing it, but I didn't. So is this three hours of homework or a half an hour or what?
AP (54:18):
It depended. In some cases it was less than half an hour when it's like, "Okay, it's 11 o'clock, and I just want to get something out quick." And yeah, it'd be half an hour, 25 minutes. But others, I did spend a few hours, because it was something useful that -
CW (54:32):
Sure.
AP (54:32):
- I wanted to do.
CW (54:33):
Sure.
AP (54:35):
But yeah. It was mostly an excuse again to practice...Yeah. And that's a very arbitrary excuse, but it's something.
CW (54:47):
I really like that idea of doing something every day, even if it's small, to keep you kind of engaged with the skills -
AP (54:54):
Yeah.
CW (54:54):
- that you're supposed to be learning.
AP (54:55):
And then you can just choose, yeah,...even if it's not something useful, it was like, "Maybe I'll use this different tool instead of -"
CW (55:02):
Right.
AP (55:02):
" - or different feature of the tool." And at the beginning, because I am terrible at ideas, I did find this one YouTuber who posted kind of 3D modeling challenges, if you will, like puzzles. Where he'll post the mechanical drawing, the 2D drawing with dimensions, and then you just have to draw it, or make it in CAD.
AP (55:24):
And that was actually pretty helpful. Because it was some pieces that aren't super interesting if you just look at it, but going from the drawing to the 3D model is kind of a different way of thinking. And also he designed some to kind of force you to use different parts of the tool, which was cool.
CW (55:43):
Sweet.
EW (55:44):
I like the hundred days of art, hundred days of code to get you into the habit.
AP (55:47):
100? [Aa!] This was just one month.
EW (55:47):
Well, those are more general habit-forming things.
AP (55:55):
Oh, yeah.
EW (55:55):
Where 30 days of FreeCAD is more learning a tool all the way down and not learning the first 10 minutes 30 times as you do it over a year.
AP (56:08):
Yeah.
CW (56:08):
Well, and if you're trying to solve problems you're -
AP (56:10):
Exactly. Yeah.
CW (56:11):
There's a necessity to find, "Oh, I cannot do this with my first 10 minutes of knowledge. What's the other tool I need?" Right?
AP (56:18):
And if you have a 3D printer, you can actually print stuff and kind of hold that thing you made, right?
CW (56:24):
Yeah.
AP (56:25):
But yeah, there was a couple that I took several days to do. So, I did a 3D model of my headphones. So one day I just did kind of the arc, the cups, and then the other day I did the headband. And that still counted, because I still modeled every day.
EW (56:42):
Well, it's been wonderful to talk to you, and thank you very much for standing in for a guest who couldn't make it. I really appreciate the -
AP (56:52):
Any time.
EW (56:52):
- the, "Hey, I need help." And you saying, "Okay." Do you have any thoughts you'd like to leave us with?
AP (56:59):
Yay, have some cheese. Cheese will make you happy, unless you're lactose intolerant, don't have cheese. Please.
CW (57:08):
I mean, there's still some lactose intolerant people who still like cheese and will suffer through it.
AP (57:11):
Oh yeah. I know. But the people around them don't appreciate it usually. That's what I've heard, but just with projects, the biggest lesson I learned from the weather station one was, just get something working. Don't get fancy at first, because you might get discouraged early.
AP (57:33):
So just get something working. Even if it's not elegant, even if it's kind of unwieldy or hacked together, once it's working, you'll be happy you got something working, and then you can build up from there.
EW (57:44):
I'm so glad we didn't have to end the show on flatulence jokes.
CW (57:47):
Nobody said anything about flatulence.
EW (57:49):
It was implied. Our guest -
AP (57:52):
Well now we have.
EW (57:53):
Our guest has been Alvaro Prieto, electrical engineer, firmware engineer, maker, traveler, and co-host of the Unnamed Reverse Engineering Show.
CW (58:05):
And cheesemonger.
EW (58:06):
Oh, and cheesemonger.
AP (58:09):
Sure.
CW (58:10):
Thanks, Alvaro.
AP (58:12):
Oh, no problem.
EW (58:14):
Thank you to Christopher for producing and co-hosting. Thank you for listening. And oh, I do have a quote here...Oh, if you want to contact us, show@embedded.fm, or hit the contact link on embedded.fm.
EW (58:28):
My quote is from Patrick Rothfuss, from his book, "The Wise Man's Fear." "I was one of those. I meddled with dark powers. I summoned demons. I ate the entire little cheese, including the rind.
AP (58:48):
Yes.