293: Skateboard Tricks

Transcript from 293: Skateboard Tricks with Limor Fried, Elecia White, and Christopher White.

EW (00:06):

Welcome to Embedded. I am Elecia White, here with Christopher White, and I am so pleased to welcome Limor Fried on the show. Because it's been a long time, and we wanted to talk to her.

CW (00:20):

Hi, Limor.

LF (00:20):

Hey, hey.

CW (00:20):

Welcome.

LF (00:21):

Hello. Thanks for having me.

EW (00:24):

For the very few people who are listening who don't know who you are, could you introduce yourself?

LF (00:29):

Sure. So my name is Limor Fried, and I also go by "Ladyada." That's my handle. And I am the founder and lead engineer of a company called Adafruit, which is based here in Manhattan, which is where I'm recording from right now. And we do open source hardware and open source software and firmware.

LF (00:47):

So we are a manufacturing company. I have a manufacturing line, so I have pick-and-places, and selective solder machines and all that good stuff, and a crew of about a hundred people. And I do the designs for open source hardware, whether it be an MP3 player, or portable game system, or development boards, or breakout boards.

LF (01:06):

And then we manufacture it here in New York with our team, and then we ship it also from New York around the world. We actually recently hit our two millionth order, which is a very big number.

EW (01:16):

Yes.

LF (01:17):

So we've been doing it for about 13 years now, since 2005. I started in Boston, but then moved to New York in 2006 and have been doing it here since.

EW (01:26):

Cool. We want to do lightning round, which will be short questions and hopefully short answers. And hopefully we won't ask you for all the details.

LF (01:35):

Okay.

CW (01:36):

Alright. We already know the answer to this, but Ay-da-fruit or Add-uh-fruit?

LF (01:39):

It's Ay-da-fruit, but you know what, say however you like.

EW (01:43):

Ada Lovelace or Ada King?

LF (01:46):

Both, I think. I mean, Ada Lovelace is basically who I named the company after. It was my handle, and I just thought it was neat that there was this woman who was a gambler and kind of a troublemaker but also really good at math. And she kind of wrote the first algorithm, which I thought was really cool.

CW (02:05):

Favorite component?

LF (02:08):

I really like Schottky diodes. So handy,

EW (02:12):

Best place to visit in Manhattan?

LF (02:15):

Well you can't beat just walking around the city. I mean, the city is a character. It's alive. I love walking around. I walk around in SoHo and West Village, but around Central Park is also beautiful. It's a country unto itself.

CW (02:32):

What is a tip you think everyone should know?

LF (02:36):

Add more 0.1 microfarad capacitors. Really, you can always remove them later, and it never hurts. Actually nowadays I go for one microfarad. Why not? It's not a tenth, it's not 0.1. It's a good value.

EW (02:47):

They're like salt. It's good on everything.

LF (02:49):

Yeah. Just sprinkle them, because you don't need them, just like you don't need seat belts maybe, but then if you need them, you really need them. Makes everything better. Also farads, people, add a couple more farads. You can always just add four, and they're cheap. They're a penny piece.

EW (03:04):

Hacking making, tinkering, engineering, or programming?

LF (03:08):

You've got to do them all. There's nothing now that's just hardware, or just firmware, or just software. Everything these days is a combo of IoT, wireless, battery management, firmware, hardware. So you need to know a little bit of everything, and you tinker at the beginning, make in the middle, and then manufacture at the end.

EW (03:27):

Alright. Well, let's get into a little bit more detail on the questions. And the first one, if you are on a plane, and you are sitting next to someone who's not technical, how do you explain what Adafruit does?

LF (03:43):

Yeah, I'm often explaining things...People ask, "What is Adafruit?" And the best way I can explain it is, "Remember when you were in school, when you were in science lab, and you had a box of parts?" And they were like, "Okay, build a pendulum," or, "Build a light bulb circuit?" Basically that's what we make.

LF (03:59):

We make all the parts that you put together to learn, to create, to prototype, and sometimes even manufacture, your own custom electronics. So not using the stuff off the shelf, but making something that satisfies your or your community's needs.

EW (04:14):

And you were at MIT, and getting a master's degree in electrical engineering. And you suddenly, accidentally, started a business in your dorm room? Is this story true or apocryphal?

LF (04:26):

Yeah, no. It's true. I really didn't want to work on my thesis. And so I was spending time doing pretty much anything other than that...At the time, there were these MP3 decoder chips. So I made a little MP3 decoder and a mint tin called a Minty MP3.

LF (04:45):

And also at MIT we have this thing called rush, which, I don't know if they really have it anymore. But the freshmen, you get to choose where you live...This is the week before classes start. And so you want to get the coolest kids into your dorm. It was a little bit of a competition.

LF (05:03):

And so you would have events. And one of the events that we did was a solder together your own persistence of vision LED kit. So that was actually the first kit I designed, which became the MiniPOV. Although I think the first version was based on a PIC, not an AVR.

LF (05:17):

And it was LEDs, and the kids, they would solder together the kit, and then they would program in their name. And so it was kind of an introduction to hardware, and software, and firmware for rush students.

LF (05:29):

And then those kits that I was making, the MiniPov, and the Minty MP3, and then the x0xb0x synthesizer, became the kits that we sold at Adafruit.

EW (05:39):

How did you grow the business? I mean, as an engineer, I always find growing business to be very difficult.

LF (05:46):

It is challenging. And I think part of it is you have to constantly be making new stuff, which is exciting for an engineer. But you also have to make sure that you're maintaining and supporting the old stuff, which is not usually that -

EW (05:58):

Yeah.

LF (05:58):

- fun for engineers. So we have 4,000 products in the store, but when we started, we only had two or three. And it was just basically every week I would have to add something new, whether it was a component, or a cable, or an accessory, or a product.

LF (06:14):

So at first I had a couple kits, and then I added maybe programming cables, and then programming adapters, and then other kits. And so I would slowly and surely add more products one by one until now we have 4,000. But it's over 15 years almost. It's not two weeks.

EW (06:34):

Yeah. It's good to remember that. And that constant addition, the constant upkeep, is always required.

LF (06:42):

Yeah. Yeah. We do a show every week on Wednesdays where we do Show and Tell, and then we do Ask an Engineer, and we have the new product section. And every week there has to be something new.

LF (06:50):

I try to have one new custom-manufactured product every week. And then we usually have three or four from the community or just components and parts.

EW (07:00):

How much of your day is spent on education, like writing tutorials and outreach sorts of activities, versus engineering, versus doing business things?

LF (07:12):

It's about a quarter of each. The business stuff always takes priority. You have to take care of the people that you have, make sure that they've got the benefits, and the payroll, and everything's taken care of, and promote and nurture the people, and give them opportunities in your company if you have a hundred people.

LF (07:28):

We don't hire outside experts and consultants. We train people from within. Every week I try to work maybe eight hours a week on a new product and exploring new stuff. This week I'm exploring TensorFlow Lite, which is a machine learning platform that will run on microcontrollers.

LF (07:49):

But I'm also maintaining and updating old tutorials, and guides, and code. We have 1200 GitHub repos and some of those have continuous integrations. Some of them don't. But we get notices like, "Hey, this no longer compiles in Arduino," or, "AVR-GCC now throws an error here."

LF (08:06):

And so we take pull requests, and triage them, and merge them in as necessary. And then also try to have a little fun, see what's happening in the maker community. This weekend is Teardown And so I'm watching kind of some of those videos to see what are people doing, and getting inspired by what the community's up to.

EW (08:28):

If you could only serve one community, would you choose the artists, the STEM educators, the makers working at home, or the engineers trying new parts?

LF (08:38):

They're actually all kind of the same people, right?

EW (08:40):

Yeah.

LF (08:40):

Everything...we initially were only for makers and hackers. You would have to run GCC on your computer, and you would have to wire up a serial port. And you'd have to solder the case together. And now we're reaching more people, like the accessibility tech community.

LF (09:00):

These are people who both need and are making accessibility technology for friends or family. And some of them have technical skills. They can do 3D printing and some assembly. But a lot of them are like, "Well, it has to be kind of plug and play and easy to maintain."

LF (09:15):

Because the people who might be maintaining them are a nurse or a care practitioner. They're not somebody who's technical. So then the question is, "How do you design and engineer these kind of products and components so that they can be put together by anybody?"

LF (09:31):

It's not easy, right? It's easy to just put a README up and say, "Run, make, good luck." It's a lot harder to make something easy for anybody to use. But if you do that, the engineers like it too, right? So you get more engineers interested, because even engineers have limited time.

EW (09:48):

Oh, I'm so lazy. When you guys have a great tutorial or a bunch of code that I can just try, and maybe I have to strip out things, because I need it to be for one processor...or I need it to run faster, yes.

LF (10:05):

Yeah.

EW (10:05):

I love it. It's great.

LF (10:06):

Yeah. Make it really easy. I mean, everyone has suffered through projects that looked really cool. And then the documentation or code..., it's just a nightmare. So it's a lot more work to do that. By the way, putting together a hardware design is trivial.

LF (10:22):

It takes three hours in Eagle CAD, or KiCad, or whatever. It's very easy to design hardware. I know people say hardware's hard. Yeah. Okay. It's hard to get it perfect, perfect, low power, whatever. Hardware is easy in my opinion.

LF (10:33):

It's firmware, and software, and documentation that's hard, especially if you want to do a good job at it. And so that's what a lot of people skip out on.

EW (10:42):

How do you decide when something is done, when it is enough to publish?

LF (10:48):

...I have a gut instinct of what I think is a good completed demo, but usually I try to get 80% coverage. If I release a breakout for a sensor, I might not have absolutely everything that the sensor can do. But as long as I get the core things that are advertised for it.

LF (11:11):

I think my biggest pet peeve is when there's a device and people say, "Oh yeah, it can do this thing. And then it's never documented. It's like, "Oh, it has a Bluetooth module in it." And it's like, "Cool. Okay." Then you have this dream of, "I can use Bluetooth."

LF (11:25):

But then you actually get to the API, and there's a big to-do. And you're like, "Ah, I bought this part, because I thought that was done." And it's not. I think that's what's frustrating. So I think the top-level things, if you say it has Wi-Fi, you should actually implement Wi-Fi."

EW (11:42):

Yes. Yes. There are so many vendors that I just want to take that to and say, "Yes."

LF (11:46):

Yeah. You know exactly what I'm talking about. Everyone's like, "That makes no sense." But anyone who's actually done this engineering is like, "I have absolutely experienced this."

LF (11:52):

And it's so frustrating, because now you're just waiting and waiting like, "Are they ever going to do it? Who knows? Maybe." So I think on release...any top-level things should be working.

EW (12:04):

Do you have any favorite Adafruit projects or products?

LF (12:08):

My current favorite stuff is, well, whatever I'm working on latest, right? It's always -

EW (12:13):

Yeah.

LF (12:13):

So we just released the PyGamer and PyBadge. And so these are little portable gaming or display interface and UI interface devices...It's actually kind of the same hardware.

LF (12:27):

One is made for playing games, and you can use it with MakeCode Arcade, which is a really neat, open source, drag and drop video game building engine, but also with Python and Arduino, and then the PyBadge, which is more of...a credit-card-sized conference badge.

LF (12:44):

So it's a smart badge. And you can still run MakeCode Arcade, and Arduino, and CircuitPython on it. But it's kind of designed specifically for people who are attending events and conferences, and they want to have an interactive electronic badge that is really easy to program.

EW (13:01):

Do you foresee conference vendors buying a bunch and programming them all to be related to the conference or - ?

LF (13:08):

Yes, I can't talk about it, but -

EW (13:09):

Okay.

LF (13:10):

It's probably just likely. But I think people will be excited. For now it's just for people, individuals, but I think people will be happy to see some events coming up that will be giving these away to people or sponsoring badge giveaways.

EW (13:27):

It would be nice to have some standardization between conferences, because then you could reuse badges. It would be fun.

LF (13:32):

Personally, my whole goal here is, it's just really easy to program with CircuitPython or Make Code Arcade. It's very plug and play. I think I've seen a lot of really cool badges. But again, it's like, "Wow, this badge can do so much, and I will have to spend 12 hours to get it to do these things."

LF (13:51):

Trying to make it so people can actually sit down, and with half an hour modify the badge to display their face, the QR code with their information, their name. Multi-language support,...one of the cool things about Python 3 is it has Unicode.

LF (14:05):

So our badge demo works with Hebrew, Greek, Japanese, any language you want, not just English. So trying to think "What do people actually want to do around world with these badges?"

EW (14:18):

How much is Adafruit international?

LF (14:22):

What percentage of sales do we sell to international customers?

EW (14:26):

Sure, if you want to share that, or just how many countries do you ship to?

LF (14:29):

We ship to just about every country we are legally allowed to ship to. We ship to, I think, easily 50 countries. And I think maybe 30% of our sales are international. Note that includes Canada. We love Canada, but it isn't in our country. So we sell a lot to Canada, but also to Australia, to Germany, England, Japan.

CW (14:54):

One of the things you mentioned was that hobbyists buy the modules, and parts, and sensors, and things. And you've made it really easy for people to prototype things and put together an entire device with example code and nice, friendly hardware.

CW (15:11):

But you also mentioned that people build products on it. And I wonder how much are you trying to help bridge that gap between okay module, and "You can build a product on this."

LF (15:23):

Everything that we release is pure open source hardware. And I don't mean pretend open source hardware. It really is all licensed under MIT, or BSD, or in some cases GPL, licenses. So you can absolutely take our schematic and hardware layout, and you paste it into your product, and you're done.

LF (15:42):

You just give the credit wherever it makes sense, whether a physical leaflet, or some README file somewhere, or on the schematic, but it is open source. And we have absolutely seen, I've seen multiple products within the maker community and the tech community that definitely uses our hardware.

LF (16:01):

I can see it, and I'm like, "Oh, yeah. That's the parts. I just know that layout." And that's fine. That's exactly what we designed it for. A lot of the designs we have,...there's nothing of value in them. Again, the hardware's really easy to design. It's the firmware, and software, and the tutorials that make it valuable.

LF (16:21):

Just copying a datasheet onto a PCB does not constitute intellectual property of significant value in my opinion...I know companies for sure that...either include our modules as is, or they've copy and pasted them into the design and do the manufacturing themselves. Both are totally legit and occur commonly.

EW (16:44):

That makes sense for when they're building larger things, and they're incorporating your designs into their larger things. What about the ones where it's basically the same board you make, and it's taken from all of your open information and sold for less? Does that -

LF (17:03):

That happens too.

EW (17:05):

Oh, yeah.

LF (17:05):

There's people who will take our boards and run them. In fact, one of the funny things is sometimes I look just to see what people are making on OSH Park. And I see people, they just upload our designs and make them, and that's fine. Maybe they want them in purple. I can understand that. And that's cool. Again, it's open source.

LF (17:26):

They can absolutely do that. A lot of our boards are attributions. They just have to give credit, but they can't use our logo and name.

EW (17:32):

Right.

LF (17:32):

They can't imply that it's made by Adafruit, because we don't do the tech support for those items. We just tell people, "Hey, if you didn't buy the sensor from us, we don't do tech support."

LF (17:41):

You can use our code. But we just don't have the ability to provide support to the millions of people who might be making clones and they need hand-holding support. For that you have to go to the vendor. And I think that's fair.

EW (17:58):

I think it is too. Although...because you are so open, most of the time I wouldn't need to go to the vendor. I can just buy it on Amazon from someone else and then use your tutorial.

EW (18:09):

And then at the end of the day, I start thinking about, "Well, gosh, what I really want is for them to keep writing tutorials." It's worth the extra couple bucks to make sure.

LF (18:20):

I think we tell people that, and they know it. I understand some people, they just want to get it immediately, or...they have to get it at a certain budget. And I understand that. I'd ask, "Hey, when you do have the ability to support Adafruit, do so." You can do that by purchasing. You can do that by contributing bug fixes.

LF (18:36):

You can do that by contributing projects. It doesn't have to be just financial. There's a lot of stuff you can do in the community. You can hang out on discord and chitchat with people.

LF (18:45):

There's ways to contribute, even if you're broke. If you can buy stuff from us, that's always welcome. And we think we'll give you a good value hardware in return.

EW (18:55):

What is the competition versus cooperation landscape between you, and SparkFun, and Digi-Key?

LF (19:03):

I think that we're all kind of like skateboarders at a skate park, and we're all kind of like, "Check out this trick I did." And then everyone's like, "That's a cool trick, but I can do that plus a 360," right?

LF (19:14):

So it's a little bit of this really good, healthy one-upmanship that I think makes the community, the maker and engineering community, so much more vibrant, right?

LF (19:25):

Because...if we didn't have open source electronics, if it was everybody's closed, and it's proprietary, and you had to sign NDAs, I think there wouldn't be a lot of incentive for people to try to do better. But because it's all open, it's really easy to see how you can improve.

LF (19:43):

And so people can take our designs, improve them, we'll look at them and be like, "That's pretty cool." And then we'll maybe integrate some of those improvements into our designs. And so there is this kind of healthy ecosystem of hardware, and firmware, and software all being shared.

LF (19:58):

For example, we all use the Arduino IDE for stuff. But each company has contributed to what you can do with Arduino, and some of that has actually been merged upstream as well. So...I think it's kind of a good and healthy ecosystem, I think. But yeah, I like doing tricks.

EW (20:16):

That's how it's supposed to work...I mean, we talked to Alicia Gibb recently, and she said you're supposed to give back, and then your stuff gets better. And then it's all a great ecosystem. It's -

LF (20:27):

Exactly.

EW (20:28):

I don't always believe it works.

LF (20:30):

It does work. And I think the community that we have can do that.

LF (20:35):

I mean, I think there's once in a while...people who come by, maybe they don't understand the rules of the community, some of which are spoken, some which are unspoken, such as give credit when you do something, and don't strip people's names off of their projects and then submit them as your own.

LF (20:52):

But I think when that does happen, people in the community will tell that person, "Hey, you're new...Maybe you don't know this, but this kind of behavior is frowned upon." And the the peer pressure is more powerful than anything. They'll usually quickly say, "Oh, shoot. Didn't realize that."

LF (21:07):

And they'll update their documentation or their tutorial and say, "Hey, this is based off of another person's project." And I think that's good. I think it makes everybody feel good about what they're doing and what they're contributing.

EW (21:19):

Do you have any favorite projects or products that people haven't really noticed that you worked on? And you were like, "Everybody's going to love this. It's going to be the next greatest NeoPixels," and then nobody quite noticed yet?

LF (21:38):

I don't think so. I think most of the stuff that we've done has been picked up. The most recent technology that I think is very exciting is that one of our engineers, Hathach, who's just this brilliant firmware engineer and USB stack magician, has this USB stack called TinyUSB.

LF (22:00):

And it's a totally open source USB stack from the lowest HAL all the way up to implementing mass storage, USB host, MIDI, USB serial CDC.

LF (22:13):

And what's neat is that if you've ever done USB stack development on a microcontroller, most microcontrollers come with USB peripherals now, they require you to use their stack, which is under a not truly open source license.

LF (22:25):

They say, "The source code is available. You can use it, but you cannot use this code on any microcontroller from a competing chip vendor." So there's the microchip stack. There's the TI stack. There's the ST stack. There's the da, da, da. Everybody's got their own. And it's really frustrating, because you can't have any portable designs.

LF (22:44):

Because if you write your code and it runs on an ARM Cortex from one vendor, you're not permitted to run it on another vendor. This TinyUSB stack, what we did is made it so...I think, right now it runs SAMD chips from Atmel, Microchip.

LF (23:04):

It runs STM32F4 series chips, a bunch of LPC series chips, and Nordic nRF52840 chips, which have USB. And I know there's also a fork for iCE40 FPGAs as well, that hopefully will get merged upstream once they're done with it. And I really want to get more people using it, because we did a really nice, truly open source stack.

LF (23:27):

And if everyone who has their own chip just contributes their HAL layer, their hardware abstraction layer to it, we can have a stack that's usable by anybody for everything. We use the stack in CircuitPython. We also now have it in the Arduino IDE so you can use it.

LF (23:44):

And it opens up the possibilities of having a really good USB experience, because you're not dealing with every mystery stack. You've got everything all laid out and ready to go. So I think that's kind of the thing. I think people have noticed it, but I think maybe people don't realize how cool and revolutionary this can be.

CW (24:04):

Can you please do this for Bluetooth?

LF (24:06):

...We're looking at Bluetooth, and Bluetooth is really hard.

CW (24:12):

Yes. I know.

LF (24:12):

Because on the desktop, it's really inconsistent. On mobile, it's really inconsistent. We're doing an API for CircuitPython for Bluetooth. And the toughest problem is just, what's the API division? Where do we go to the C layer? Where do we go to the Python layer?

LF (24:28):

And it's easy if you're just doing, "Okay, I make a GAT. And I connect, and I send data back and forth." That's easy, but then there's mesh, and you want to do advertising. You want to do central. Maybe you do central and peripheral at the same time. It gets very weird, very fast.

LF (24:45):

Bluetooth, I think they kind of went a little too bonkers. Ironically, Wi-Fi's trivial, right? We figured out a sockets layer for Wi-Fi, and we're done. Everything works over sockets. But luckily that was designed back when computers were very, very underpowered compared to what we have now.

LF (25:01):

And so they couldn't go bonkers. They had to come up with something simple. And now unfortunately we have too much ability to handle complexity. So they made it complex.

EW (25:11):

We have some listener questions.

LF (25:13):

Okay.

EW (25:13):

And I want to go through some of those. Although every person we talked to said, "Thank you."

LF (25:22):

Oh, yay.

EW (25:22):

"Could you thank her for making stuff more popular? Could you thank everybody on the team?" And they listed Becky -

LF (25:31):

Becky.

EW (25:32):

- and so many other people.

LF (25:34):

So many other people.

EW (25:34):

Phil and Bre and Collin and you, and...everybody said, "Thank you." I don't know if you get that enough, but you've made a lot of people's lives quite a bit easier.

LF (25:46):

Yeah. And thanks to everybody who has been part of the community...There's people like Becky who've done videos. People like Bre who are part of the community.

LF (25:55):

He never worked for Adafruit, but he was working alongside Adafruit at MakerBot, and I think got a lot of inspiration for the open source hardware stuff that he did do from Adafruit.

LF (26:06):

And I think all we can do is every day,...we stick to our ethics, and morals, and ideas of what we think hardware, and software, and firmware engineering should be. And we hope that we bring along people with us as we do so.

EW (26:25):

So one of the questions we got multiple times was about Radio Shack...You had a picture of you with a Radio Shack certificate or something. And so people thought you bought Radio Shack and were -

LF (26:36):

Yeah, it's true. If you have a photo of a certificate, that means you own it.

EW (26:39):

Yeah. Isn't that true?

LF (26:41):

It's true. It's true.

CW (26:42):

I've got to go write something.

LF (26:43):

If it's on the internet, and there's a photo, it means you own it. Sorry, folks.

EW (26:50):

What is the deal there? Is there a deal there?

LF (26:53):

We knew someone who was a part of the finance department at Radio Shack, and as they were clearing out their inventory from a warehouse, he smuggled us this cool framed certificate...They just found it in the warehouse, and they were like, "This is really cool."

LF (27:12):

So he sent it to us so we could have it, because everything had to go into being sold to pay off their debts. But we snagged this. It's pretty cool. It's these old 1980s100 stock certificate entry, whatever it is, for some guy.

LF (27:27):

And yeah, they're framed. They look really cool. I don't think they give certificates out anymore when you buy stock. It's all completely internet-based. This is from back in the pre-cyber days.

EW (27:38):

Wow, did that story get garbled then.

LF (27:41):

I don't know. I said nothing. You guys all came up with this stuff. We just took a photo.

EW (27:47):

Exactly. And I mean, Bailey is anxiously awaiting brick and mortar stores. Matt would like stores and makerspaces all put in where the old Radio Shacks were. Everybody's ready for you to buy Radio Shack. It was pretty weird.

CW (28:00):

I think that ship has sailed.

LF (28:01):

It's kind of not for sale anymore. I think that for brick and mortar stores, I think, we have Adafruit stuff available at MicroCenter, and there's one or two Radio Shacks left over that were privately-owned. And they do stock Adafruit stuff, but it's just tough when you have 4,000 products and -

EW (28:19):

Yeah.

CW (28:19):

Yeah. What do you choose?

LF (28:20):

How do you show the data sheets and schematics when you're in a store? It's tough. And we ship same day if you order before I think noon Eastern Time. We also have same day shipping in the Manhattan area. So I think, yes, you may not be able to go physically into the Adafruit shop, but you can get it the next day.

LF (28:39):

Also our distributor is Digi-Key. You can order up to 8:00 PM and get it the next day, which is kind of magical. So that's how we get around the complexities of how would we have a store. Well, how about we just make it so you can get it the next day?

EW (28:55):

I think that's totally fair and much easier.

LF (28:58):

Easier for stocking for sure.

EW (28:59):

Yeah. Ben Hencke, "I noticed that earlier in Adafruit's life there were awesome business meta-infos, things about running a business, sourcing, all that kind of stuff."

LF (29:12):

Yeah.

EW (29:14):

"Did you stop because they were trade secrets or just busy with more engineering focused things?"

LF (29:19):

Everything that are in those articles are the same things we're doing now...I have an article about how to turn a scale and a USB barcode reader into a shipping station. We're running that exact same code ten years later. So there's actually nothing that I would add. Everything that's in there is the basis of the company.

LF (29:46):

Now, the only other article maybe I would write is, "Okay, now make more products." But the bones of Adafruit as we published it are exactly the same. There's actually nothing to add. And also we do publish a newsletter, kind of maker manufacturing, and we publish every mundane article.

LF (30:05):

We highlight other companies and information they published, like Saleae, you mentioned. They were on an earlier show. They have really good articles talking about their travels through manufacturing, insourcing, outsourcing, and Bunnie Huang just did a really great article this weekend about open source and tariffs.

LF (30:24):

So we have some articles that we've published a while ago, and I think there's other people who are running businesses, whether they be from Tindie, or OSH Park, or Crowd Supply, that are learning their own path and contributing their own documentation.

LF (30:39):

So I'd say, don't just look at our stuff. Look at what everyone else is doing too.

EW (30:44):

Cool. Alexander wanted to know if you have some lesser known, but interesting projects that have come from the convergence of open source and open hardware. Boy, that's very open-ended.

CW (30:55):

Yeah.

EW (30:56):

I mean, that's like ESP32s, and NeoPixels, and light shows...God, there's so many things you can answer, but I should let you answer. Sorry.

LF (31:05):

Yeah, I think the most interesting convergence that I've seen lately for open source hardware and software has been what ATMakers and the assistive tech community has been doing, which is really fascinating.

LF (31:21):

So assistive tech is, again, this technology that some people need, whether it is to move around the house, or pick up, or command their lights.

LF (31:31):

A lot of it is how to take something that maybe has very small buttons and convert to large, easy-to-press buttons, or adding voice commands, or interfacing with accessibility technology, like a soundboard.

LF (31:44):

And what's neat is it's a perfect opportunity for open source hardware and software, because everybody's assistive tech needs are different. Everybody has their own abilities and things that they need help with.

LF (31:59):

So even though there's a lot of off-the-shelf assistive tech, you still need to kind of glue it together to make a custom rig for whatever that person needs, whether it's, "Okay. They have a wheelchair, but they have to make the joystick easier to move," or they want voice commands, but the voice commands have to be able to handle their enunciation.

LF (32:19):

So I think seeing how they're taking all this open source hardware and software and gluing together these pieces to make custom devices, it's not just, "Okay. I'm making this cool drone over the weekend."

LF (32:32):

It's, "My mother needs a way to be able to page through her audiobooks without having to press the little button on her Kindle. How do I do that?"

EW (32:43):

One of the hardest things for that technology is that it is used by the people who are different than those who create it. And when it fails, it is often more frustrating than if you had never had it. For example, something to help press buttons for books...as you just said.

LF (33:04):

Yeah.

EW (33:05):

It's kind of worse when mom is used to doing that, and then it stops working because... Internet fail.

LF (33:13):

Yeah. And this is the challenge that there is with assistive tech. I remember reading many years ago about Stephen Hawking's voice system that he used to speak with people. And it was designed by someone. And I guess either that person or that company went out of business. They didn't have the files anymore.

LF (33:32):

So he had this one box that did his voice control, and there was no documentation. There was no source code. So basically this team of people had to patch putting it together. They couldn't remake it. It had to run on the original hardware, because nobody had access to the source files.

LF (33:49):

And so that's where I think open source hardware and software does do really well. If you're going to make technology for somebody, and it needs to run for 20, 30, 40 years, having it be closed and proprietary, that's more scary to me than having something where, "Okay, the source code is open and anyone can read it."

LF (34:08):

Because these companies go out of business or the person who wrote the code also is unable to maintain it, and then that person who's using the assistive technology is really stuck. So having the documentation and the design be available so other people can repair it, and update it, and upgrade it, I think it's very powerful.

EW (34:29):

Yes. Yes. We need more of that. Do you have any advice for people from software getting into hardware? Why did Alex ask her? She's a hardware engineer getting into software. Anyway, do you have any advice?

LF (34:45):

Do I have any advice for software people getting into hardware?

EW (34:52):

Yeah.

EW (34:53):

Books, or tools, or projects?

LF (34:56):

I think it's a lot easier these days because most hardware is software-based. One of the things you can do if you know software is you can get dev boards where it has all the hardware pieces you want. Find some dev board that already has the displays, the buttons, and switches that you want. And then it's all firmware.

LF (35:16):

It's just about getting that firmware running. So you do need to know C or CircuitPython these days. It's one thing that is different. A lot of people who are developers now know JavaScript, or...maybe they know Rust, or Golang.

LF (35:31):

And while those languages are being imported to microcontrollers, 95% of it is still in C or C++, and maybe 4% of it is in Python. And then 1% is assembler or something else.

LF (35:45):

So I think the most important skill is to just brush up on your C and C++. You'll need it. And there's a couple of good papers on embedded development with C and C++. Just things to watch out for, like, you don't have infinite memory, and interrupts are kind of interesting and weird.

LF (36:05):

But I think just start with the existing hardware and get your firmware or software running on it. And then you can just take a look at the schematic and then cut away the pieces you don't need or add the pieces you do need.

EW (36:18):

That totally makes sense. And I 100% agree. Find a board. Play with it. That is the way to go. I know that you wanted to get out of here a bit early. So I have one more question.

LF (36:33):

Okay.

EW (36:34):

Although Christopher may have another after that. So I'll just -

LF (36:36):

Well, I think that we got to everything, right?

EW (36:38):

No, there was so much more I could have added. I wanted to dig into how you do the engineering and all of your people. But I think one of the other things I wanted to ask you about was a little bit more personal. You've made a huge impact through Adafruit. I mean, the whole making community says, "Thank you."

EW (36:57):

But do you ever wonder what your life would've been like if at some point it was just a different path and you'd said, "No, this whole kit thing is cool. But it'd be a lot easier if I just go work for a company, and get a steady paycheck, and continual health care?" And...I mean, you get a master's in EE. You get a job. Do you wonder?

LF (37:19):

Not really, because I just know...I just wouldn't be able to survive. I can't have someone tell me what to do and not to do...I have to be able to control my own destiny and create these things that need to be created. It's like asking an artist, "Hey, don't you want to work for an advertising firm?"

LF (37:40):

And it's like, well, I mean I guess you could, but then you wouldn't be able to make the art that was in your brain. And you have to get that art out. You have to get that hardware and design and those projects out. And it's just so fulfilling. And we have really good health care by the way.

LF (37:56):

Everyone gets the same 401k and same health care. So it's a pretty good deal. And we are looking for PHP developers by the way. So if anybody is listening, and they want to move to New York possibly, and work at a very chill company where we pay well, you get great benefits, and everyone's out of the door at six o'clock.

LF (38:17):

They come in at ten, they leave at six, and nobody stays late. Nobody works more than 40 hours at Adafruit, except maybe me and Phil. It's a very healthy company, but we get a lot done.

EW (38:28):

I think our listeners right now are wanting to know how big is the employee discount?

LF (38:33):

It's free. You get anything you want. People are always shocked. I hire engineers, and they're like, "What do you mean I get stuff for free?" And I'm like, "I'm paying you digits. If you get $200 worth of electronics - "

CW (38:47):

"Here's a hundred bucks kid. Go nuts."

LF (38:49):

I know. This is really a good deal. But you get all the free electronics you can carry.

EW (38:56):

Well, excuse me. I have to go learn PHP. Although I would never move to New York. I bet it's awesome, but -

LF (39:02):

Well apply...You never know. Send us a note even if you are not interested in relocating, and we'll take a look. But we have about a hundred people at Adafruit and very low churn. Everyone's super happy at the company. And we do everything there. It's neat. We have shipping. We have warehousing. We have manufacturing.

LF (39:23):

We have development. We have our finance and customer support teams. Pretty much all in-house. We have a couple remote folks as well. CircuitPython team is almost all remote, for example. But yeah, it's just, everyone's working together towards making cool stuff.

EW (39:39):

And there are some people who just have this image of you and Phil and maybe one or two other people, soldering things by hand.

CW (39:46):

A new thing every day.

LF (39:47):

Not like that anymore. We have about 100 people, 120 total maybe with all the remote folks. So, Phil and I, we still do a bunch of soldering and we do videos. We'll do a video tonight. And we do projects and stuff.

LF (40:02):

But we have some amazing, amazing people who help with the everyday from shipping your order correctly and on time to running the pick-and-place machine.

EW (40:13):

Cool. Well, Limor do you have any thoughts you'd like to leave us with?

LF (40:19):

Thank you for having me. I think it's so neat that we have podcasts, and videos, and conferences, and events. This maker community is something very, very special, the engineer maker community, and I love that we work together well.

LF (40:37):

I think it could have easily turned into, "You're a maker. You're an engineer. You're a prototype. You're a student. You're not part of this team. And you suck, and you don't know how to code." But instead everyone is working together and helping each other. And we're all doing these skateboard tricks and showing off.

LF (40:54):

And I think...it's so cool, and magical, and wonderful. And it's not how the world often works. So I think we should really cherish what we have. And as you are cherishing what you have, if you have a cool project come by on our show we have Wednesdays 7:30 PM Eastern Time, our Show and Tell.

LF (41:15):

Come by with whatever hardware, crafting, or electronics, mechanical engineering stuff you built and show it off on our Google Hangout. We'd love to see it. And you get a free sticker.

EW (41:27):

Cool.

LF (41:28):

Cool.

EW (41:28):

The information for that will be in our show notes, although -

LF (41:31):

Thank you.

EW (41:32):

Seriously, you can Google it. I'm sure you can, listeners.

LF (41:35):

We also have a 24-hour Discord server. So if people are like, "[Ah], I can't make it Wednesday at 7:30," check out our Discord server, adafruit.it/discord [https://discord.gg/adafruit], or just Google Adafruit Discord, and probably click the first link, and join in.

LF (41:49):

And we have 12,000 people showing and sharing, teaching debugging, helping, sharing cool gifts. It's a really good, healthy community of people having fun with making, and electronics, and engineering.

EW (42:04):

Our guest has been Limor Fried, founder and lead engineer of Adafruit Industries.

CW (42:10):

Thanks Limor.

LF (42:11):

Thank you, Elecia. Thank you, Chris.

EW (42:14):

Thank you to everyone at Adafruit, because you have made it better. And listeners, you may have noticed a lack of questions about CircuitPython. We're going to have a whole show about that in a few weeks, so I didn't -

LF (42:25):

I know. I wanted to keep it light. They'll focus on it like crazy.

EW (42:30):

We'll go deep on that one.

LF (42:32):

[Ooo], snakes.

EW (42:34):

And thank you to Christopher for producing and co-hosting. You can always contact us at show@embedded.fm, or hit the contact link on embedded.fm. And now a question to -

CW (42:45):

A question?

EW (42:46):

And now a quote to leave you with. This is from Ada King, Countess of Lovelace, as she is more properly known, if you're going to care about the titles.

EW (43:02):

"I am never really satisfied that I understand anything; because, understand it as well as I may, my comprehension can only be an infinitesimal fraction of all I want to understand."

EW (43:16):

Embedded is an independently produced radio show that focuses on the many aspects of engineering. It is a production of Logical Elegance, an embedded software consulting company in California.

EW (43:27):

If there are advertisements in the show, we did not put them there and do not receive money from them. At this time, our sponsors are Logical Elegance and listeners like you.