Chris Johnson | http://www.twodee.org
What do you do?
I teach people to teach machines. Every fall at the university where I teach, I meet one hundred or so new starry-eyed 18-year-olds and introduce them to the magic of computer programming. I try as hard as I can to keep those stars lit, but many fade. Across the globe, only about 66% of students pass their initial computer science course.
Part of my job is to fix this, by exposing folks to computer science at an earlier age and by improving the university learning environment.
What do you see as the biggest opportunity in your industry?
3D printing is really quite exciting to people of all ages. However, I think its strength is in its ability to produce custom one-off designs. If people don’t have the ability and interest to generate these designs, they won’t be able to fully capitalize on this technology.
I was offering a workshop on Madeup at our local public library and superintendent from a neighboring school district stopped in to see what we were doing. She lamented that students at her school were just downloading other people’s “doodads.” There wasn’t a lot of “making” going on.
For 3D printing to start a creative revolution, I think we need to start by helping our young people create rather than consume.
What impact will changes in your industry have on consumers? the world?
My hope is that technologies like 3D printing can change the misinformed stereotypes people have about computer science. A lot of folks think being a computer scientist means not interacting with people and the physical world. Supposedly we hole up in our basements and spend more time in the virtual world than the physical one. That’s certainly not been my experience, and I’m glad to be a participant in an industry that marries the virtual with the physical.
What is your biggest goal right now?
I’m hoping to get Madeup released as an open-source project in early 2016. I want teachers to be able to use it in their classrooms. I want to run summer camps with it so that young folks can see what computer science is like many years before they arrive at my university.
What kind of support or types of people do you need to accelerate your success?
I would welcome supporters of the Madeup Kickstarter project (https://www.kickstarter.com/projects/1975355456/madeup-a-programming-language-for-3-d-models). As part of the project, I also plan on releasing it as an open-source project so that others may contribute to its development.
What makes you or your work different from everybody else?
The reason I get in to computer science was to make things. My father was a mechanic, and I was fascinated by all the tools in his shop. I was pretty sure magic had to happen when one picked up those tools.
However, it didn’t happen for me. I got very discouraged by the imprecision with which I cut a board. I did not enjoy grease. I had all sorts of ideas in my head, but I found trying to assemble them in real life difficult.
Then I discovered computers. On them, I could create things with math and code. To this day, I marvel at my ability to produce a perfect right angle between two lines.
When I first heard about 3D printing, I became even more excited. I thought maybe this technology would let me build things like I never could in my dad’s shop.
I started learning some 3D modeling tools so that I could build printable objects. The modelers were very impressive, but by then I had been programming for over ten years, and I wanted the same precision I had in code in the 3D modeler. I decided to develop a programming language for modeling 3D objects with algorithms instead of the mouse. I call it Madeup, a programming language for making things up — literally.
Designers and programmers build shapes by walking paths through three-dimensional space. These paths are used to generate 3D models in a variety of ways, like revolution or extrusion or as a polytube or as a parametric surface.
Thinking about shapes as algorithms has really helped me appreciate the beauty of mathematics. Madeup is a platform for learning about and appreciating numbers and operations, process, and creativity. I see it as a way to marry the virtual and physical worlds.
I am very much interested in making Madeup available to the rest of the world. Being a full-time teacher makes it difficult to build large software projects, so at the suggestion of some of my students, I’ve initiated a Kickstarter campaign to help fund its development these next few months. You can see a 5-minute demo of Madeup and read about the campaign at https://www.kickstarter.com/projects/1975355456/madeup-a-programming-language-for-3-d-models.