An interview with Wayne Stambaugh, KiCad project leader

The podcast version for this interview is available, please check it out (contains detailed show notes).

I had the pleasure of spending an hour with Wayne Stambaugh, to discus KiCad.

KiCad, which started as a private project by Jean-Pierre Charras, an Academic at IUT de Grenoble in 1992 (just a couple of years after the Web was born!!!), is now the PCB design tool of choice for thousands of professional engineers and hobbyists.

Wayne, a self-taught programmer, is the current leader for the KiCad project. He was one of the first contributors to the project when he joined in 2006. In fact, it was a team of three: Jean-Pierre Charras (the original creator), Dick Hollenbeck (the first project leader), and Wayne.

Wayne even had to learn how to read the early documentation in French!

The KiCad core developer team. Wayne is in the middle, with the red shirt. (Photo use with permission by Mike Szczys)

In this interview, Wayne takes us back in time, to tell the story of KiCad’s early days, trials and tribulations (also known as “code refactoring”).

Of course, we also discussed the future of KiCad. With CERN backing the project, as well as other organizations (like Wit, which now employs Wayne full time to work on KiCad as its leader), and thousands of people contributing donations, I expect KiCad to grow and became perhaps the best open-source PCB tool.

Wayne spoke about his experience at the recent first KiCad conference (KiCon) and the future of KiCad.

Tech Explorations was a proud sponsor to KiCon :-).

It was a lot of fun, and I wish I could have been there. I was working on my new ESP32 course at the time.

KiCon attendees enjoying a drink and chat at the conference afterparty. (Photo use with permission by Mike Szczys)

Enjoy the interview!

Following is the transcript, if you prefer to read.

Interview transcript

[00:00:00] Peter: Wayne, good morning or good evening in your case. How are you?

[00:00:05] Wayne Stambaugh: Hi, I’m fantastic. How about yourself, Peter?

[00:00:09] Peter: Great. I had a hectic morning, as I mentioned earlier, with a few technical issues that caused a bit of stress, but everything is under control now. At least partial control. At least I think they are under control, but we’ll see. We’ll see later. I’m very happy have you on this podcast interview. I’m very excited to have you as the project leader of KiCad. As you know, KiCad is one of my favorite open source applications. It really helped me as a maker to create things. That’s the motivation why I wanted to have you on [unintelligible [00:00:44] over the years.

Recently, last week there was the first KiCon or KiCad conference ever, which was a resounding success. We’ll talk about that later as well. As I said, it’s a privilege to have you on. How about we start with just a little bit of background that tell us who you are, where you come from, and how eventually did you become the KiCad project leader?

[00:01:15] Wayne: Well, that’s a long story. I’ll distill it down into what the shortest version of it as I can. I’m actually an electronics engineer by education and experience. I graduated college in ’86. Gosh, it’s been that long. I’ve been in industry all over the map in terms of my skill set. Everything from embedded to analog, to digital. I consider myself a bit of a jack of all trades, master of none kind of guy.

Gosh, I started in 2006 working on KiCad. I started because I wanted to give something back to the open source community and wasn’t sure how to do that. I had actually started using open source software all the way back in about 2000 at least regularly. I lurked around for a while trying to figure out where I can apply my skills. It just dawned on me one day because using some of the tools that were available commercially that I wasn’t all that happy with, maybe I should see what’s out there, and I found KiCad, rather KiCad found me.

I started contributing back in the early days before KiCad was even put on any kind of code hosting service like SourceForge. It was just you go download the source archive and build, send patches back to Jean-Pierre at the time. Then things picked up from there. Anyway, that’s my background. I’m actually not a programmer by trade. I’m a programmer that’s self-taught. As you may have heard, up until last week, I was just working on KiCad part-time. Now, I’m being paid to work on KiCad full time.

[00:03:33] Peter: I want to go back to 2006. KiCad, I didn’t know about it at the time. I discovered KiCad around 2011 or 2012. I believe it was maybe version 2. Very hard to use back then, so I’ve got to admit that it didn’t really stick. It was a pain. You were a contributor from 2006. What was your contribution like? Were you contributing as a programmer, perhaps or some documentation person? What was these early days like?

[00:04:14] Wayne: I was actually using, rather I was attempting to use KiCad at where I worked. I had changed jobs with a small startup. Rather than spend a lot of capital on some of the commercial products because we were just doing little test interface boards, and I didn’t really need anything. I thought, “This might be a good– We start out small and test KiCad.” Of course, it became quickly obvious there were a lot of things that needed worked on.

I started digging around in the code. It was interesting, to say the least. All the comments were in French. Some of the actual function names and whatnot were in French, the classes. I realized that was the first order of business was that changing all that so I could understand what the code did. I spent probably the first I would say good year, year and a half work that I worked on KiCad just doing that. It’s cleaning up the code.

[00:05:18] Peter: [unintelligible [00:05:18] French.

[00:05:19] Wayne: Yes, and format. Getting the formatting all cleaned up, and then getting all the French stuff translated to English using Google translate. When things didn’t make any sense in the translation, I actually had to go back and figure out what the code did, so I could fix the internal documentation. Once we got that done, that whole process, I started seeing things in the code that I realized that if KiCad was going to ever expand, we had to clean up. There was a lot.

Probably the first three years that I was with the project, it was just refactoring and code cleaning just to get the code base to a manageable place. I did a lot of fixes and whatnot during that time, but nothing major. I didn’t really add any new features or anything like that. It was just get the code base where it was workable so other people could even contribute to it. That’s how I started. Go ahead.

[00:06:31] Peter: What was the [unintelligible [00:06:33]? The original creator of KiCad, Jean-Pierre, I think his name was still in the project. Is he still with the project today in 2019?

[00:06:45] Wayne: Yes, yes. Go ahead.

[00:06:51] Peter: I wonder back then when you were doing all this refactoring work and are really setting the stage for KiCad to grow, and we’ll get to that later, to version 5, and then version 6, which is coming out, I believe, later this year. There was a lot of work to be done. What was that kind of decision-making inside the group that you had, with the people that you had? I guess everybody was part-time contributors, so it was like a loosely integrated group. I wonder how a particular decision was made to move the project in a particular direction if you could describe that in a few words [inaudible [00:07:33].

[00:07:34] Wayne: Sure. A lot of people won’t know, Jean-Pierre or JP, which we affectionately call him. He started the project in 1992. It’s been around for a very, very long time. He pretty much worked on it by himself. For those of you who don’t know, JP is– He was a professor at a university in France, and don’t ask me to pronounce the name. He created KiCad for his students so they could design boards for the students that he was teaching. He was basically a one-man show. I’m guessing based on some of the code that I saw, he probably had some programming students contribute. It had a very sophomore college.

[00:08:26] Peter: [unintelligible [00:08:26]

[00:08:27] Wayne: You could tell that they were experienced programmers that were working on it grew–

[00:08:34] Peter: It reminds me of [unintelligible [00:08:34].

[00:08:36] Wayne: I’m sorry. That went on for a long-

[00:08:39] Peter: Sorry. Go on.

[00:08:41] Wayne: That went on for quite a long time. You can imagine the code base was pretty messy by the time. In 2006, Dick Hollenbeck, the first project leader convinced JP to make the code public and put it on a hosting site. Originally it was with SourceForge. That was when I got involved. Right when all that was taking place, that’s when I got involved. Basically, the three of us made all the decisions together because Jean-Pierre wasn’t really interested in running the project.

He doesn’t speak any English. He writes English okay, but I think even then he needs some help. He’s shy. I had a chance to meet him. I don’t think that was really something he was really interested in. We wouldn’t be here having this conversation if he wasn’t gracious enough to let go of his baby and let it loose into the wider world. We decided that we would try to make KiCad as good as we could with the manpower that we had, but we knew in order for that to happen, we had to do a lot of clean up before we started the next phase.

[00:10:13] Peter: I guess that clean up is the boring work. It’s not like you’re pumping out exciting new features that people are like, “Wow, look at that.” It’s all under the hood. You don’t really witness it as the end user, but in order to get to where you are now, you have to do that work [unintelligible [00:10:31] That sounds so familiar. As makers, we really like to get in and do some quick and dirty experimentation and get something done, but then we get bored when it’s time to fix it up and improve it, make it reliable and then something that we can build on later.

[00:10:49] Wayne: It is a thankless job. At some point, you have to decide where you want the project to go. If we would have stayed in that bolt here, bolt something on there, it would have never been able to grow the way it has. It would have been completely impossible to add on in any meaningful way to the original code base. The work just had to be done. Sometimes you have to roll up your sleeves and make that sacrifice.

[00:11:22] Peter: Yes, the hard work, somebody’s got to do it. I’m thinking now about the community because in 2010, phase six in terms of number of users still at the very beginning of that upward trend, and you’re competing with applications like Eagle, for example, that everybody knows about and there’s so much documentation. It’s all its promise ironed out. There’s competition. Then the project starts to pick up, and people know about it. Even I hear about it say, around 2011. I wonder how do you then start to listen to what the community is saying, so then that the feedback that is coming from the community, how does it contribute into the project?

[00:12:11] Wayne: Well, I think it’s been really beneficial. The community has been really good about testing, reporting bugs. I’m always surprised about the number of people who run the nightly builds because anything goes there. One of the things we’ve tried to do as a project is keep nightly the master branch as stable as possible. Of course, any time as you’re introducing new features, things go wrong. We have a really large group of people who really get bug reports out right away so we could fix those so that that branch stays usable.

In fact, when I was working, I pretty much run a nightly build when I worked. Now, I always kept a stable build just in case things weren’t working, and I had to get work done. I think the community has done us a really big favor by running nightly builds and testing. That’s been invaluable. They also shape the big– The next version, they shape the features that go in because we have a pretty good idea based on feedback from our users what they want the most.

Of course, sometimes other things have to go in because the thing that they want depends on something else. It’s not always as cut and dried as giving the people what they want. Generally speaking, we try to base our decisions for the next release version or the next development cycle on the user feedback.

[00:14:00] Peter: You as a leader, that’s your responsibility. One of those responsibilities is to [unintelligible [00:14:06] what your team is going to be working on next based on a lot of factors, including feedback from the community, and you as the lead engineer where you think the project should go because it’s also a personal thing. Is that how it works?

[00:14:26] Wayne: Yes, yes. In the end, I have the final say being the project leader. For the most part, I think I have a pretty good feel for what the users want, and what the KiCad development team can provide, and their technical skills and what they are willing to work on. It is a balancing act. If I had a blank check and I could do whatever, things would be a little different. Given our development team, we really have a solid team. I couldn’t ask for a better group of people to work with. It makes my job a lot easier. There’s–

[00:15:20] Peter: Great bringing up the team now because there’s a few ways I can– A few questions I can ask at this point. I was thinking community, maybe talk about KiCon next because it is a big expression of what the community looks like at this point in time. Maybe leave it for just another couple of minutes and talk about the team next. The team obviously, has grown. We’re now in 2019. You joined the project more than 10 years ago. It was three people back then. What is the team like now?

[00:15:56] Wayne: Well, when I say team, I’m looking out past just the developers because KiCad is a lot more than just the applications, the source code. We have a whole group of people that provide libraries, symbols, footprints, 3D packages. We’ve got a group of people that do the translations into foreign languages. We’ve got a group of people that create the packages that the installers for all the different platforms. There’s people that work on documentation. There’s people that maintain the websites, the webpage, all that stuff. There’s people that maintain the CI build, the constant integration builds.

It really is a much larger group of people than immediate development team. Right now, we have about, I would say, six, seven lead developers that contribute regularly. There’s a couple more that don’t contribute as much anymore as they used to. I think we have 10 or 12 people on the lead development team. Then there’s probably a couple dozen contributors who do just small contributions here and there. Then you have the librarians, that’s a pretty big group. I see quite a few people contributing to that. I would say, in total, it’s probably 50 or 60 people, maybe more that are pretty regular contributors to KiCad. It’s a big group.

[00:17:34] Peter: Would they be distributed around the world all over the place?

[00:17:38] Wayne: Yes, we have people–

[00:17:43] Peter: There’s no KiCad office [unintelligible [00:17:45]?

[00:17:46] Wayne: No, no. I’m sitting in it right now, it’s my office.

[00:17:53] Peter: Sorry, I was about to say you are now a full-time contributor to the project. You’ve employed by [unintelligible [00:18:08] full-time to work on KiCad. Is that unique in the group? How is the group funded [unintelligible [00:18:18] if it is funded?

[00:18:21] Wayne: Well, it is funded somewhat by donations. There’s actually several things going on there. We have the KiCad donation site which is through CERN. I don’t know if you’re aware of that. CERN also pays to developers not full-time but part-time to work on KiCad. Part of their time as work at CERN, they contribute to KiCad. Then there’s some people–

[00:18:49] Peter: Are those KiCad CERN engineers?

[00:18:52] Wayne: Yes, CERN engineers. One’s a programmer, one’s an engineer. They’ve been with the project since CERN joined in. I think CERN joined in 2010 or 2011. Yes, there is the donation.

[00:19:10] Peter: I’m just showing [crosstalk] That’s how the engineers are funded?

[00:19:18] Wayne: Well, no, they’re paid directly from CERN. Those donations actually go to pay people to contribute projects. Some of the other lead developers will work up a work package for a new feature, and we’ll assign one of the lead developers that. Then they’ll get paid when it’s done. The donations that go to CERN can only be used to pay developers to write software. The nice thing about donating to CERN is there’s no overheads. Every dollar you give to CERN goes to KiCad development.

[00:20:04] Peter: Specifically, yes, that’s right. I think this started– or I’ll rephrase that. KiCad 5, I believe was funded this way and KiCad 6 now, you have the donations through CERN has funded or are funding the development for KiCad 6. Is that right?

[00:20:31] Wayne: Yes, yes. [crosstalk] It’s not funding all of it because some of our developers, most of them are part-time. The rest of our lead development team is just doing it on the side. They have full-time jobs doing something else. Almost without fail out exception, I think they’re all electronics engineers. They use KiCad where they work, and so they help contribute to its development.

[00:21:07] Peter: Great. That’s what I like about this project that gets its funding, its support from the community can be translated [unintelligible [00:21:17] the classic in a part-time program and model that has worked for so many other open source projects, like Apache, for example, Nginx, and all that, it’s still valid. You’ve got a mix of sources for productivity. I’d say your full time supported by a private company that is graciously basically allowing you all the time that you need to work as a leader on the project.

Then there’s a lot of other engineers, some of them directly paid by CERN, others by the donation through CERN. Then there’s, I don’t know, hundreds, maybe thousands of people that contribute documentation, libraries, translations. [crosstalk]

[00:22:10] Wayne: They do that in their spare time for free.

[00:22:16] Peter: Is it possible to put a number to the number of actually the size of the project based on the number of contributors that are active even at a small scale, like a small amount of time per week or per month? Would it be within thousands, maybe or hundreds?

[00:22:36] Wayne: Probably, I would say the hundreds total. Even people that contribute just– They might contribute a symbol here or a translation there. Yes, it’s probably in the hundreds.

[crosstalk]

[00:22:53] Wayne: I don’t think it’s in the thousands yet. We’re not there yet.

[00:22:57] Peter: Yes, working there. I’d like to talk about the switching and talk about community. Yes?

[00:23:06] Wayne: Okay.

[00:23:09] Peter: Okay, because I’m looking at the time as well. I’d like to fit as much as possible to our conversation. Let’s switch to the community and the KiCad and its conference in Chicago last week that I missed. I had work, unfortunately, but I hope I can make the next one. It was a resounding success. I’m looking here at all the beer that was consumed in the fun that was had after the official part of the conference with the lectures.

Did you want to tell us, would you like to tell us a little bit about it, especially the motivation for the first KiCad conference? It’s a big event, takes effort to organize it, takes a lot of time. Chris Garnaut was the organizer here. I’m not sure. He probably had to help [unintelligible [00:24:00] but he’s the lead person conference. What was the motivation behind the conference point?

[00:24:09] Wayne: Well, that’s interesting because I’ve been going to FOSDEM, which is the biggest open source software conference in Europe for the last five years. I’ve been giving a talk on KiCad. It’s been really well received. It actually exceeded any expectations I ever had of the attendance that some of the other big projects get. Chris was there I think, two years ago and he saw the enthusiasm, and he came to me. I don’t remember what it was and asked me if I’d be interested in doing KiCon and I’m like, “Well, if you think we can get enough people to turn out,” I’m like, “Sure, I think it will be a great idea. I don’t know how successful it will be.”

I told him at that time, obviously, I was still working a full-time job and working part-time on KiCad. I’m like, “Chris, I can’t. I can give you absolutely zero help.” Other than sitting in on a conference call every once in a while, it was all him. I just told him to take the ball and run and yes, boy did he ever. He did a great job. I can’t imagine anybody doing a better job than what he did. Of course, he obviously had some help. There were volunteers, but I think he was the point man and he made it happen. It turned out fantastic.

[00:25:38] Peter: Yes, yes. I can see here. What was the attendance like?

[00:25:45] Wayne: It was interesting in about a month and a half before the event, we had only sold about 110 to 120 tickets, which would have been probably not anything to feel bad about, but that last month and a half leading up to the event, they sold out all 220 tickets. They actually ended up having to turn people away. It was pretty amazing.

[00:26:14] Peter: Yes, so you need a bigger venue? Just to talk about KiCon actually, let me search for it here about that what did I miss out on by not being able to make it? There was teaching, there was your keynote as well.

[00:26:45] Wayne: Yes, everything about it was good. There were good talks all over KiCon. There was the usual technical talks, there was some great industry talks. We had the folks from System76 and SnapEDA. There were some good maker talks, people doing things that you don’t expect from KiCon or from KiCad. I noticed when you had the pictures up, did you see the coffin? Did you see the coffin project if you looked it down? Well, the badge was cool. That was great stuff.

[00:27:31] Peter: There we go.

[00:27:33] Wayne: That’s the badge. If you go down a little further, it’s a purple board that looks like a coffin. [crosstalk] The guy that did that was a woodworker. He gave an interesting talk about how he did that. Yes, there it is on the left. The talks were all good. The vendors were all set up, we had a lot of– We had an amazing group of sponsors. Everything was taken care of, the food. There was breakfast and lunch both days. There was after hours events. Well, there was a pre-event on Thursday night. Then there was a really neat event on Friday night at the MakerSpace in Chicago, and it was really neat.

We went there and saw their facility. Then, of course, the pictures you see everybody raising their glasses, that was Saturday night at a place called Jefferson Tap in Chicago. The after hour events, yes. The after hours events were excellent. I think the thing that was most- that really struck me was how excited everybody was. It was really a high energy conference. People were just excited about KiCad and the possibilities going forward. Yes, I think the future is really bright. Everywhere from-

[00:29:24] Peter: That’s how you know you have a community, right?

[00:29:25] Wayne: – the MakerSpace all the way up to the commercial space.

[00:29:30] Peter: Well, speaking of the future, you had a keynotes, you were the keynote speaker for the conference. Here’s you down here, the first day. State of KiCad and version 4.1 and beyond. I’m very interested to know– Could you put that in a nutshell? Even if it came on yourself and not committed to a particular future and then maybe you don’t know exactly what it’s going to be like. [unintelligible [00:30:04] might be like, what should KiCad use as current, future perhaps should expect from KiCad?

[00:30:15] Wayne: Well, you can watch at my talk and then that’ll give you probably a more comprehensive view, but a rough outline is, we’re finally going to update the schematic and symbol library file formats, it’s been on our list for a long time. In fact, I’m going to probably do– I am doing all that work. That lays the foundation for a whole bunch of things, whole bunch of features that we haven’t been able to provide. Things like pen engaged swapping, selectable pen names for your symbols. There’s a whole bunch of any one of about a dozen features both in the board editor and the schematic editor that depend on that.

Above and beyond that, we already have [unintelligible [00:31:08]. We’ve got some improvements to the footprint generation tool. In terms of pads, both rectangular pads, and polygons or complex pad shapes. There’s a lot of work going on in there. Then where the auto-router or significant changes to the iron router coming up. I’m sorry, not the auto-router, the push shelf router. Sorry about that. That’s happening.

The schematic editor is going to be completely redesigned with the new tool framework. All the nifty features that you have in the board editor, like snapping and complex highlight or complex selection, those are all going to become into the schematic editor, which should make it a lot nicer to work with. Let’s see, we’re going to have the– [crosstalk]

[00:32:15] Peter: The usability and flexibility, but the way it can get there is how the libraries work, and they’re the format for the libraries. That’s where you’re starting now. Is it KiCad 6, or it is part of that? Is it six?

[00:32:32] Wayne: Yes, KiCad 6 and you can always go– I know it’s a little out of date but I’m getting ready to update that here probably any day now, but you can always go to the KiCad website. If you go into the developer documentation, there’s a link to the roadmap. You can always see what we’re working on. If you go look, [unintelligible [00:32:55] if you get at the KiCad website, it’s under Contribute and Developers. If you scroll down a little bit, you’ll see when you get there, did you not get there? Yes, scroll down a little bit, you’ll see the– That still points to the version 5 roadmap, but if you click on that, you’ll see all of it.

[00:33:30] Peter: Here.

[00:33:32] Wayne: Yes, right there on Getting Started. Click that. Then you should see, this is all of the KiCad developer documentation. On the left-hand side, you’ll see a– [crosstalk] a pane that has– You’ll be able to see V6 roadmap.

[00:34:11] Peter: There you go.

[00:34:12] Wayne: No, here it comes, and you can click on that version 6. Then there’s all the things that– There’s a lot of things going on, both in the board and the schematic editor. There’s a lot of work. It’s pretty ambitious if we get it all done.

[00:34:39] Peter: It is very ambitious. What’s the timeframe? Is this going to be available to people, at least like a stable version this year, 2019?

[00:34:49] Wayne: No, I doubt it. It’s pretty ambitious. What we’ve been doing in the past is about a two-year burn, but now that I’m working full time on KiCad, we should be able to cut that down by a lot. One of the problems was when I was working part-time, we now have [unintelligible [00:35:10] enough developers that I was becoming the bottleneck. In other words, I couldn’t get around to reviewing patches, answering questions fast enough, and I was slowing KiCad’s development down.

Now I can get on, now I can work on and get those done right away so that people who need to know or need an answer can get an answer quickly. Then they can continue on with what they’re doing, and I’ll have enough time to actually do some coding again. Because, really, in the last, I’d say in the last year and a half, that I haven’t done very much coding at all. It’s just been project maintenance.

[00:35:54] Peter: I’ve seen things take long times. Just half joking here, Wayne, if you like updating the versions, or progressing through the version certificate very fast, from five to six within less than a year, that puts a lot of stress on myself because I will have to update the book. That’s a pretty big project as well. Yes, I’m always thinking about, “Okay, how much of the book is now in my queue for an update as well?” because the KiCad get has changed.

That’s one of the- I think really good aspects of the new structure in the team and how the team works. Because KiCad was in version 4 for a few years, and then very quickly went to 5, and then now 6 is in the works right now. I’ve noticed that the productivity has increased a lot, and going through versions and new features has accelerated compared to what it used to be like. I guess a momentum is increasing.

[00:37:07] Wayne: Right. Yes, that’s because of the increase in the new developed, like you said, we have, in the last about year and a half, two years, we’ve got four new members to lead development team. They’ve been very consistent contributors, which has helped a lot. That’s really helped the project move forward pretty quickly.

[00:37:27] Peter: Great. I want to know and just we’ll start wrapping it up and completing for this interview. My next question is this, you mentioned that you are an engineer and you’ve been working [inaudible [00:37:45], but you need a computer-aided design program to build your PCBs with. You have a lot of choice like there’s the traditional commercial applications like Protel, OrCAD, Eagle, and most of those have got a free version so [inaudible [00:38:09] issue is not always a problem. Most of those have got a free version.

Of course, there’s open source. There’s KiCad, and there’s a few others. Why would such person choose KiCad? That person just to put a bit of context, it could be a maker like a lot of our listeners, a single person designing a single project, not necessarily in a team or maybe in a small team. Why would such person choose to work with KiCad?

[00:38:45] Wayne: Well, there’s several reasons. One, I’m not sure the communities around those other projects or Eagle used to have a pretty good community, but I think since Autodesk has taken them override, they’ve managed to alienate their community somewhat with our licensing changes. That’s one thing you don’t have to worry about ever happening to KiCad. They’re not going to ever change our license. You can’t, there’s too much code from too many people-

[00:39:14] Peter: That’s fixed.

[00:39:15] Wayne: – that it’s always going to be the GPL. There’s that. [crosstalk] Some people will consider that a risk, some people do. I think the whole Eagle mess was a good indication of just how tenuous that can be. Yes, it’s a decision you have to make, but the community around KiCad is really solid. If you’re looking for a community to help support you with whatever it is you’re doing, KiCad’s very good at that.

I think the other thing where KiCad’s interesting there’s a move in open hardware these days that’s really, it almost has the feel of– For those of us who are old enough to remember when the open source, freer open source software movement started way back when it has that, the open hardware movement.

[00:40:17] Peter: In 19 [inaudible [00:40:17].

[00:40:18] Wayne: It has that same kind of feel. Like we’re right on the cusp of something much bigger. In order for any design to be truly open, the tools have to be freely available. In fact, that’s what motivated CERN to help KiCad. CERN has an open hardware license, and I don’t know if you’re familiar with it or not, but one of their mandates as an organization is because they’re publicly funded, all of their development has to be open to the public. They created a hardware license so that they could open their hardware designs to the public. What they realized was all their stuff was done in Altium.

Well, yes, technically their designs were open but practically, they weren’t because not everybody can justify the cause of Altium. That’s what drove CERN to contribute to KiCad. If you are working towards open hardware designs, KiCad is really your best choice. It doesn’t make sense to do an open design in a proprietary product because at any time they could decide, “No, we’re not going to do that anymore.” That’s something you don’t have to worry about with KiCad.

[00:41:51] Peter: Very true.

[00:41:52] Wayne: It’s a tool that’s only going to get better from here. If the featuring you just got to have isn’t available yet, you’re probably only going to have to wait in the next version till it’s available.

[00:42:06] Peter: It was–

[00:42:08] Wayne: I’d like to just comment on one more thing. I think there’s a little bit of a confusion out there about how powerful KiCad is in its current state. We actually have a gentleman who designs– He has a board with a 700 PNFPGA on it that’s 30 layers. It’s immensely complex. He’s actually been asking us for more layers which hopefully we can do in version 7. If you don’t believe that KiCad is powerful enough to do really highly complex work, I don’t think you’ve looked at it closely enough.

[00:42:47] Peter: You do have a page here where you highlight project build with KiCad and look at that. That’s amazing. It is a complex device as they have pretty much all of the features that you expect, highly condensed and integrated board to have. Actually, most of these will be made with an earlier version of KiCad as well, because these projects have been here for a while. There’s real power here.

[00:43:23] Wayne: The beauty of all those projects is they’re all online. If you want to check– I think almost all of them are on GitHub, you can check them out. Check out the project files on KiCad and play around. Modify the designs to your–

[00:43:42] Peter: I’ve got to say– When I wanted to ask you maybe one or two last questions to wrap up this interview. Here’s this one. If somebody wants to contribute, so one of our listeners or people that are listening to this interview want to contribute to the project in some way other than a direct contribution, donation through CERN, how do they go about doing that? Do you have a place for example where you say, “We need the [unintelligible [00:44:09] document. We need a programmer, we need some other skill-set.” How do they go about contributing?

[00:44:19] Wayne: Well, if you want to contribute to the KiCad applications by patches or what-not, you will go to Launchpad, that’s where we currently host our source code for KiCad. You will join the developers’ mailing list, and then you probably would submit a patch. There’s instructions on how to do that in the– Remember that developers’ document that I took you to for the roadmap?

[00:44:52] Peter: Yes.

[00:44:52] Wayne: There are some hints in there how to help you become a developer. There is also some on the website itself.

[00:45:02] Peter: You go to this page here for developers, and there’s Launchpad where the source code is. Then this is open source means you can download it, make changes, contributions and then you can push it back into Launchpad, where one of your team will then accept a patch or a contribution?

[00:45:26] Wayne: Yes. We will do a patch review and comment on it. If it gets accepted, then it will get merged. I generally tell people, “Start small. KiCad’s not a lightweight project by any stretch to imagination. It’s pretty serious code-based. I think we’re over a million lines of code now. It’s not easy to just jump right in and contribute.”

[00:45:57] Peter: You’re one of the few projects like CAD projects that are cross-platform compatible. I think that was also one of the big reasons of why someone would select KiCad. It’s very rare. It works everywhere.

[00:46:11] Wayne: Yes. As far as I know, Eagle’s the only other one that’s on all three major platforms. I don’t think any of the other big commercial vendors support– Most of them are Windows only.

[00:46:26] Peter: Great. When is the next KiCon going to be held?

[00:46:35] Wayne: I don’t know. We’ll have to ask Chris. I have to laugh because right when the conference kicked off, somebody made a comment that maybe every other year that we should go to Europe. We have KiCon in the United States one year and then KiCon in Europe the next year.

[00:46:52] Peter: Don’t forget Australia.

[00:46:53] Wayne: What’s that?

[00:46:55] Peter: Don’t forget Australia.

[00:46:56] Wayne: [unintelligible [00:46:57] Yes, I’d like to come to Australia. I haven’t been there yet.

[00:47:01] Peter: It’s awesome here, and we should do one.

[00:47:06] Wayne: Now that I actually work on KiCad, I could justify traveling now.

[00:47:12] Peter: Glad to help in any way I can. I’ll be in touch. Well, I’m going to let you close anyway that you like. Actually, one thing that I ask always is how do people get in touch with you, so maybe you can briefly tell us about what’s your preferred method of communication with people from around the world? Then, just take it away and tell us anything you want, any message you have for people that use KiCad today or people that are potentially going to use KiCad, makers.

[00:47:48] Wayne: Let’s see. What was the first part of that question again?

[00:47:55] Peter: How do people get in touch with you?

[00:47:58] Wayne: Probably the best way is through the developers’ mailing list. Unless it’s something that directly needs my attention, nowadays I’ll actually have more time for that stuff but sometimes if you email me directly, if it’s something that’s related to KiCad in general, somebody else might be able to answer that question faster than I can. If it’s a question that only I can answer then I generally speak in, it’s email is my preferred medium.

[00:48:33] Peter: [unintelligible [00:48:33]

[00:48:34] Wayne: [unintelligible [00:48:33] is not perfect, but it’s the best we have when we’re online.

[00:48:38] Peter: Yes, email works. Reliable. Are you on social media?

[00:48:44] Wayne: I do. I may actually start now before I got hired it just wasn’t time. I wasn’t burning any cycles doing that because I was on full– I’d come out from work in the evening and work on KiCad for a while, and there wasn’t a lot of free time. I have not done the social media thing, although I’m thinking about maybe doing YouTube videos or something in the future, just for communications. Maybe add some stuff. There is a KiCad YouTube channel. There’s not a lot on it yet, but I hope that will happen. There’s also a Twitter feed which maybe I’ll start doing project updates from that, but in the past, no, I haven’t.

[00:49:38] Peter: Yes. It’s a good way of communication especially Twitter. I like it although I don’t use it as much. I have the same problem with you but it’s a way to broadcast short messages, and each of those messages can just be like 100 characters, quick update. It doesn’t burn too many cycles, brain cycles compared to writing a whole blog post which is something that I’m doing now for one of my previous interviews and it takes half a day. All right. The next thing that I wanted to ask you was that just anything that comes to mind and a message perhaps for current KiCad users and for that all perhaps will be using KiCad in the future, something that like a message that you want to pass over to them.

[00:50:24] Wayne: Well, I think the biggest thing is just to say thank you. The support is overwhelming sometimes. It really is humbling. I never expected this project to get to where it is today, but if you ever told me 30 years ago, that I’d be sitting here today, having an interview about KiCad and I’m not being paid full-time to run the project, I will laugh at you. I would have thought “That was completely absurd.” I certainly never started out with that in mind, but thanks to the community of people who not only use KiCad but who stepped up and helped with the development.

All the areas that KiCad has developers, it’s really been a humbling experience, and I hope we can take it. My goal for the project is– Because I’m an engineer, my goal for KiCad is to make it the best possible product that I can for board designers because guys have to get work done and that means at the highest levels. I’m not just trying to make a simple product for people to go make simple things with. You always be able to do that with KiCad, but in the end, I think the real goal is to drive KiCad as far as we can. We have a genuine place with the technical skills to do it. I think it’s just a matter of time, I really do.

[00:51:56] Peter: Definitely. Thank you. I think–

[00:51:59] Wayne: You could see a community building out up around that. People writing in python scripts and stuff like that that have really helped drive KiCad in the places that I would have not expected it to go. [crosstalk] Thank you to everyone who organized KiCon. Thank you to everyone who uses KiCad and those who donated. I’d like to thank you for inviting me on your show and for this interview.

[00:52:29] Peter: My pleasure, Wayne. I want to thank you now for all the work that you’ve done. I’m thinking you as a maker who uses KiCad every day. I use KiCad in my courses. I use KiCad for my personal little projects. It really has changed the way that I work, and that is thanks to people like yourself, Jean-Pierre, the whole team, hundreds of contributors, perhaps thousands of people that have donated.

It’s just amazing of where you can go in a communal effort, sustained effort over for years because things don’t happen overnight, it takes, for KiCad, 30 years almost perseverance. You got to stick with it and eventually you do have something that is amazing and truly worth talking about and working on, so thank you.

[00:53:27] Wayne: You’re welcome.

[00:53:31] Peter: I hope that everybody enjoyed this interview. If you have questions, please put them down in the comments below. You can always get in touch with Wayne directly or through the mailing list as well. Looking forward to the next KiCon, I’ll try to make it and to KiCad 6 later this year. This is going to be an amazing release.

[00:53:56] Wayne: Great. Thank you, Peter.

[00:53:58] Peter: Have a good day, Wayne.

[00:53:59] Wayne: Thank you, you too. Bye now.

[00:54:06] [END OF AUDIO]

Related Articles