 I may finish early, which is good because there's a party. So I'm Steve Conklin. I am here to give a history of this thing that I started on a few years ago that started as a very small thing, and it's turned into a very large community. And I'm going to cover the history of some of the things that are going on now. But my part in it was very small. And there are a few points that I think are important to take away about the way that the project was released and the effect that it's had on the growth of the community. I have worked in open source for 14 years for various companies. I'm very lucky to have gotten paid to develop open source software. It's like a dream job that just keeps lasting. And I've recently moved to Heroku, who was kind enough, even though this is unrelated to anything I do at work, to sponsor me for the conference. So they deserve a slide. The story starts on this day at the NYC Resistor Hacker Space. And Susan and I were there. And as we tend to do when we travel, we were doing some Hacker Space tourism. And the reason there's a photo of this event is because there was a demo of this device called GigaPan that pans a camera and takes photographs. And so we have this panoramic photo of the Hacker Space. Coincidentally, the founders of MakerBot were there. They had started this effort in the Hacker Space. And you can see them sitting here. After this presentation on GigaPan, we were talking with Bre Pettis. And we saw it's in this photograph. In the lower right-hand corner, there's actually a knitting machine on the shelf. And we spotted it and started talking to Bre about it. Now, Bre had gotten passionate about, we also ended up buying a MakerBot while we were there. So it was our vacation and a lot of fun for the next several years. Bre had gotten very passionate about knitting machines and had bought the machine and all the accessories. And I was unfamiliar with them. But I looked at it and I was talking to Bre. And I realized in my head, a very simple idea at the time, I thought that's a line printer for knitting. And if you could just make things go to the printer, it would be just so awesome. And it has a computer in it, so how hard can it be? Now, it turns out it can be hard. These knitting machines are this 1980s technology. And I couldn't put it in the presentation, there's too much. But if you want to do a deep dive, you should go out and kind of look on the internet. It's a bed of these needles that move back and forth and a carriage that slides back and forth. And the carriage moves the needles back and forth according to a pattern. But in order to determine that pattern, there are a number of metal belts in the machine that are moved back and forth to only enable certain needles to move at a certain time. And there are as many belts in the machine as there are needles in a carriage width. And it's all mechanically linked together so that as you slide it back and forth, it selects the correct needles and it's a pattern. Now, these machines started with a very simple, purely mechanical setup that uses a Mylar or a paper belt. It's a punch card that's punched in the pattern and migrated from that through mechanical actuation to electrical, to a computer, to a computer with a disk drive interface. And as it happens, the first model that had a disk drive interface was the model that Brie Pettis had. And that's what I came into. Now, Brie is really important in this because he got really fired up, assembled the equipment, became sort of an expert on it. And then when he didn't have the time, because his other efforts were kind of getting hard, he decided to let it go and passed it on. He didn't give it to me. He made me a fair deal. I paid exactly what he had paid for all the parts. But he passed it on to somebody else who had an interest in it. And this sort of a lot of community codes of conduct and open source projects will tell you that it's important to let go gracefully. I'm very thankful that Brie did that. Now, I'm going to go back for just a second. This is June 24th, and I dove on and dove right into it. This is an area of electrical interfaces. I'm an electrical engineer by training, and I've been taking things apart up for my entire life. And I've been able to get them to work again for about half of my life. And you can ask my father. I ruined a lot of things as a child. So I figured out the electrical interfaces for the disk drive, and there was some help with that. I found some manuals and things. There's a session tomorrow. I'm plugging my session. I'm doing a session on reverse engineering. It's going to be very fast and sort of short, but we're going to walk through kind of the process that you might use to reverse engineer something like an external disk drive or an interface like that. It turns out that that external disk drive on these brother knitting machines was a Tandy portable disk drive model 1. And it gets kind of complex. It was used on the Tandy color computer, and they shifted to a 2. And then they added more operating systems features to the 2, so the 2 doesn't work with the knitting machine. And the ones are very rare to find. And I looked on eBay, and you just couldn't find them. And when you could find them, they were $500. So I wrote an emulator. And I figured out the signal levels. It's a serial connection. And then I discovered a mailing list. And John had done some work in 2004. That's 10 years ago now. That's a long time. And he had done some dumping from some of the floppy disks, which if you still had a Tandy color computer, you could dump that and sort of figure out. And he had done some very elementary work. But here's what's really important. He had only figured out a few fundamental things about the file format on the Tandy, but he published them. And he published, put documents on a Yahoo group. And they were findable by Google. And so even though he kind of gave up early in that process, I was able to find those and extend that work. So I guess the lesson is publish everything, no matter how trivial you think it is, because someone else may pick it up. So I got the emulator working. I had John's docs to start with. And then the open document people here will tell you it's very painful. This process is very painful. You change one thing. You save, you diff, and you go through this process. And the document liberation project is pretty exciting, because the binary and hex diff that they've got would have been very useful back then. I had to write my own. Was I obsessed with this? Maybe a bit, because if you look at the original date, it was late in June. And on July 16th, I announced that I had the disk emulator running. And I was going to start on the data format. Two weeks later, I had made pretty good progress on the file format, enough to do a few things with that. And I had started on a Python API module to interface to those files on disk. I released some very simple tools, a disk emulator, the pattern dumper that would dump patterns, a pattern inserter that was very hard to use because it required a bicolor uncompressed PNG image that was in a certain format. And I wrote a banner generator. It was like the old banner generator on Unix that would actually generate a pattern that you could print out. And it sat for about a year. And then Becky Stern made a blog post. And Limo Freed at Adafruit blogged about it. And they picked it up and made an interface cable and did some work with that. And all of a sudden, it was getting a lot of interest. And I got a slew of bug fixes. It had sat with almost nothing wrong with it for a while. And then all of a sudden, I got a bunch of big bug fixes, which was great. Fabienne Sarriere, Travis Goodspeed, and Arjen van der I'm sure some people here know probably all three of them, did this project where they used my emulator to load patterns in, but it was too much trouble. It's very complex on the front panel to push the buttons to save to the disk and load it. So they also wrote a button-pushing electronic board that was controllable by USB and automated the whole thing. And did this 48-hour hackathon where you played a video game. And at the end, the knitting machine would print the results out. So that way, and when these slides are online, these are links to these things. So here's Fabienne. Fabienne has done a lot of things with this code base and helped a lot of people. She's taught a lot of other people how to use it. She wrote a script to make this, that nice really simple image loader much easier to use. It supports a whole bunch of different image formats and just, I'm not sure what it, you use command line tools to convert them. It's very simple, but I hadn't taken the trouble. And she's done a lot of things with algorithmic pattern generation that are pretty exciting. And she also is kind of famous, if you look for her Matakozis that she made for an event, they were programmed using this software. ETIB in Berlin is very exciting. They have a lot of things going on. This is Victoria Pollock in the photo. I was just there and she's got lots of stuff. And this is where a lot of the work like the NITIC project, which I'll get to in a minute, are taking place. NITIC is designed to replace the controller board in the knitting machine with a USB interface controller. So you don't even have the floppy disk interface anymore. You can directly communicate with it. Open NIT project has been started. It's intended to design a completely new knitting machine that will stand by itself and be computer programmable much the way 3D printers have come about. People are using the software to do algorithmic knitting and plotting brainwave activities and then to plot that into knitting. Andrew Solomon has done a lot of things, including this open source balaclava, which is, he's also done a Bill Cosby t-shirt. Davy Post has written a closed application that he's going to market. It's very good. It does image manipulation. It's cross-platform. Davy looked at the code, the open source code, and then went off and wrote all of his own. And that's okay, I'm okay with that. He didn't use any of the GPL code. But what he did do was he extended the knowledge of the data format to extend to the 940 and other knitting machines, and he contributed all that back to the open source project. He didn't keep any of that internal, which is great. So Kano, he's at ETIB. He's now working on extending applications of NITIC. He's here working on a motor interface to do the automated carriage. There's Glitch NIT in Japan, which is trying to modify the actual memory in the knitting machine. There's an Arduino shield board for the KH910. Now this is really important because these machines have gotten very expensive as these projects have pleuraliferated, but the 910, where am I in time? The 910 is an older machine. I'm almost out of town, which is great. It's an older machine which has, it reads a punch card and it has a computer inside, which is great. There's no way to interface to what I wrote, but they're cheap, and the reason they're cheap is because there's a battery in the machine that spoils and ruins the electronics. So what this project is aimed at is to build a complete replacement board that's USB programmable that goes in these cheap, available, useless machines and brings them up to the same, because they're all internally, mechanically, they're the same. So all of those things came out of something relatively small I did and something relatively small someone before me did, and it's really interesting. So there we go. Any question? I'd like to buy some long-tailed socks. Like I upload an image and then I get the socks in my post-email. Is there any shop like that? There are no shops like that that I'm aware of. They could be facilitated. You might find an artist willing to do that for you if you search around and contact someone through the ETIB or something, but most of these people are artists and not production knitters. Let's see. Yeah. Yes, I can answer that. Actually, I heard what she said. Victoria Pollock who runs electronic and textile into Institute of Berlin, and she was there, we were just there together, is looking into this sort of business model. Okay. Nobody wants the microphone anymore. So thank you very much. You're welcome. What's the party? Everybody. Everybody.