Intro
Adam: Hi. This is CoRecursive. And I’m Adam Gordon Bell.
Have you ever found yourself in a situation where learning felt like an uphill battle? Like no matter how hard you tried, the pieces just wouldn’t fall into place? I have for sure, definitely, but yet there’s been other situations and other times when learning has just happened so smoothly for me.
Years ago, I thought I was a decent pool player. Me and my buddies had certainly spent a lot of time at it hanging out at this pool hall, Katrinas. But then we joined a pool league and I immediately realized how much I had to learn. It turns out we weren’t good at all, but being surrounded by these better players, I improved almost without realizing it.
We just all became better. And it made me wonder why is learning sometimes so hard? Other times it just seems to happen.
It doesn’t seem to be a question of motivation. Today’s story is about Steve Krouse, a name you might recognize from Val Town or from the Future of Coding podcast. But before all that, Steve was a kid who felt like he was drowning in a sea of numbers. He was struggling with math in a way that felt very real and very insurmountable.
Steve: I remember being in second grade, and the teacher would call out which students still had to finish their sequence of time tests. It’s like a grid of tests, like four plus seven, five times two, whatever, you know, and it would get progressively harder.
It would be like a five-minute time test, and you have to put your pencil down when you’re done.
So you turn it in, and then she would grade it and let you know if you graduated to the next one or if you had to retake that one.
Adam: Oh, and then you just have to do the whole thing again?
Steve: You have to do that one again. And I was the last student in the class, and so everybody was reading while I was trying to get these time tests in. The time pressure and the social pressure of “I’m the worst in the class at this.” Oof.
Yeah, it was really hard. I’ve never been diagnosed with dyslexia, but I think I have some mild form of it. I find spelling hard, and I find what’s the word? Like computation—like that hard, like mental math kind of hard. And I was like, this, this sucks and I’m bad at it.
Adam: So that’s today’s story, how Steve went from struggling with math and grade school to mastering it, to mastering teaching and learning, and then trying to change how people learn and how people develop software. This is a story about transformation, about the power of context and about how the right environment can unlock potential you never knew you had
It’s also a contrarian look at learning and at education. But yeah, it all started with this kid who was the worst in his class at math. And then that kid took a computer programming class in grade six. It was supposed to be about computers, but it turned out it was about so much more.
IMACS
Steve: I started going to this afterschool program known as IMACS, which stands for the Institute for Mathematics and Computer Science.
It was a room where all the desks were facing the wall in a circle around a teacher seated in the middle. And everyone was going through their curriculum in a self-paced way on their computer. All the students were facing outward.
Adam: Steve was there because he loved computers and he thought they’d be teaching him more about them.
Steve: Once I got there, they made it clear that this was not about it. They weren’t gonna teach me how to hack into stuff or do any IT administration things. I wasn’t gonna be able to connect a printer or set up the internet. I wanted to do those sorts of things, and they did a very classic bait and switch kind of thing, where they’re like, “Oh, you have come for me to learn this, but instead I will teach you this.”
This is kind of like “The Karate Kid”—wax on, wax off. Teach me karate. It’s, “Hmm, wash my cars.” And it’s not like, “How does this relate?” And then, it relates at the very end of the movie. It’s, “Oh, you can wax on and wax off,” and they’re actually karate moves.
So something similar happened for me with computer science. They’re like, “We’re gonna teach you this computer science stuff first. We’ll teach you practical stuff later.”
Adam: So Steve was sitting at his desk facing his big CRT monitor at a big desktop PC.
Steve: You would see a big white area with this triangle called a turtle. And then there’d be some lines on the screen, and those would have been drawn by the turtle.
And then on the right side, you’d see the instructions I was giving the turtle. I could tell the turtle to put its pen down and then to move forward a hundred. And then it would draw a straight line, and then I could tell it to turn 90 degrees and then move forward a hundred. And then you’d see it like that.
Adam: That was mind blowing for you or,
Steve: No, no, no. Logo was not mind blowing for me. I initially did not get into it at all. I was these are weird shape puzzles. I don’t get how this, like, how, like how can I impress anybody with this? Like this, this output isn’t very cool.
but the thing that did stick with me was like some of these softer things. So I was doing it at my own pace.
I was having to figure out things on my own. It, this wasn’t like the rest of school. Like the rest of school, they like throw something at you, they like tell you a fact. And then your job is to just regurgitate the fact on a test. What is heroic or exciting about that? It’s, it’s, it’s just like demeaning almost.
But at IMACS they would give you these challenges where they wouldn’t teach you how to do it and you, you would just have to work your way through it and then the teacher would come over and help you very importantly, in a Socratic way.
But, but like all of the insights had to come from your brain.
Learning
Adam: This method made the class feel like an adventure, an exploration in discovery, rather than this kind of rote learning and mechanical operations that he was doing in school. Steve’s teacher, Ken, had a teaching style that Steve just absolutely loved.
Steve: like one of the superpowers that he taught me was how to think on a piece of paper or a whiteboard, like just how to, how to put all of your thoughts on paper.
I, I was like trying to debug some like complicated recursion problem, like the base case and the recursive case, and like I was just losing track of where the state was happening and trying to do it all in my head. And he was like, no, no, no, just, just put everything, put every possible state, any possible thing you could want. On the paper and like really take up the whole paper.
Adam: Teach me. Okay. So how do I think on paper?
Steve: If what you’re doing is you’re trying to multiply two, three-digit numbers, the problem will be there on the paper in size 12 font. Instead, get a brand new piece of paper, write the numbers huge, and then start doing it. And if you’re in our space, grab a new piece of paper and rewrite it to a more appropriate size. Just keep your thinking clean and organized and don’t let space be the thing that dictates your thinking.
But before that, scratch paper or showing your work in a math class didn’t really make sense to me. But after that, it felt like paper was this magical tool. And before a test, I would grab a whole stack of paper. Me with a stack of paper was like many IQ points smarter than me without a stack of paper. I couldn’t understand why all the rest of the kids didn’t have their stacks of paper. I was just like, you could write huge, and you could check your work in big ways.
Step into it
Adam: Ken also taught Steve to step into the problem to become the computer program, to become the turtle to.
Steve: Like many times I can remember Ken saying, stand up and go over to the, to an empty part of the classroom, and walk around, and then think through how you’re walking and then how you can translate that into discrete steps.
When you’re walking on Logo with a computer, you can only walk forward and you can turn, but you can’t do them at the same time. You have to discretize what you’re doing, but first, doing it with your actual human body, feeling intuitively like you’re in the problem space and then discretized into specific steps.
That’s a very powerful mental model in many ways. Like the first one that occurs to me is like when, as a programmer, I feel like I’m always, and I feel many programmers are like putting, saying, “Oh, all right, so you’ll describe code like, alright, so then I’m sending this message or I’m sending it to you.”
Okay, now I’m imagining myself as that other service receiving the messages. You could put yourself in the minds of parts of the program and like think through sending and receiving.
Adam: The trick with logo is that it teaches you coordinate geometry, but in a, a tangible way, a hands-on way while you’re writing little computer programs. For more on this approach, check out episode 91 of this podcast. But yeah, Steve works through the exercises, starting with drawing triangles and squares and then coming up with harder questions like, can you do a five sided shape?
How about a 10 sided shape each one building up until it’s time to draw a circle.
The Circle
Steve: I already knew to think about myself as the turtle, where I have like ink on my shoes. And I was like really puzzled. Like, how do you do a curve like that? I can only go forward and turn. So how do you do a curve? There’s no curve command.
The whole point of a circle is that it’s a curve. But Ken had me stand up and draw a circle with my feet, and I was beginning to put it like, okay, if I made the world’s tiniest step forward and the tiniest angle, right? And the tiniest step forward, it’s not a circle, but if you’re like far enough away, it could look like a circle.
And so I wrote a program that just 360 times that went forward one and turned one. And by gosh, it looked a lot like a circle.
It’s wow. Like first it was the excitement of I got something that looks a lot like a circle. And the next thing was that this can’t be it. Right? Like, how do people actually draw circles? Or what is actually a circle in the computer? Because I still, even at that time, didn’t believe that there wasn’t an even better way.
Because I guess at that time I didn’t really understand the idea of limits and that you can approximate a curve if you just get small enough.
Adam: Steve didn’t realize it, but that circle moment was right out of Karate Kid. Ken had given him an insight that went beyond the turtles, and it resurfaced five years later in a math class.
Steve: and the teacher was like, okay, so we know what slope is, but like, how about the slope right here on the curve?
I was like, oh. They just wanna know the orientation of the turtle. If I was walking along the curve, they would wanna know at at any point in time, if I just stopped what direction I’m facing. That’s like obvious what a derivative is. It’s like literally the same thing. And so I, I got derivatives like as soon as it was out of the teacher’s map, like before the teacher even explained it, I was like, oh, yeah, yeah, obviously like that’d be a useful thing to know.
It’s like the, the orientation of the turtle. Oh, it’s called derivative. Great. Like that’s, that’s good. everyone else in the class didn’t get it. I was like answering all the questions. Everyone in the class looked at me like I was a genius and I was like. I see the illusion here. Like it looks like I was born smart, born quick, born good math, I just had this, this experience you guys didn’t have.
And so I feel like a big thing for me throughout my life is that like there’s this illusion of genius that I think is, is really an illusion and that anyone could be like, made to be a genius in math, given certain experiences.
Scheme and Beyond
Adam: But back at IMACS after school, the turtle eventually went away and Steve started doing programming with the programming language Scheme.
Steve: If you were to be over my shoulder, you’d see this like very retro-looking textbook, like with internet primary colors, and it’s like a lot of text. And then there are these graded exercises that are some multiple choice, but mul mostly they just, you write code, and then you hit the auto grader, and it would auto grade your test for you and then tell you if you passed the test or not.
Like a big part of why programming is a better medium for learning mathematical ideas than math and math class is because math and math class is done on paper, and the feedback loops are terrible. And programming, you can explore pro you, you can explore mathematical ideas and then get instant feedback from, in an automated way from a computer. That’s like a huge part of why programming is a better medium to learn mathematical ideas than pencil and paper. If we could find a way to do math in school in like an auto-graded type feedback loop way, that would be great too.
The feedback made it like positive. I think normal education is like on one end of the spectrum, and then a video game is on the other end of the spectrum in terms of enjoyability due to feedback loops. And IMAX was like, just shy of video games, like this environment.
Yeah, it’s like much closer to video games than it was to normal school.
Back to Math Class
Adam: The transformation for Steve took time. He started in IMACS in grade six, and he kept at it, and the work got harder, and he learned more. But by eighth grade, during the school day, he was still in remedial math.
Steve: Um, and I slowly started liking it in eighth grade, and then I started having my big stack of papers I did this thing where I would take the test twice and hide my answers for myself and then check to see if I got the same answer twice. I try to do them two different ways and see if I got the same answer twice.
So I started getting perfect scores on all my math stuff. And then another distinct memory I have of, of math is, so we learned, the teacher taught us the the formula, like the quadratic equation, I think is what it’s called. Yeah. It’s just like an arbitrary floor formula that she threw up on the wall and that, and then, and like now we have to all go like me mechanistically do on, on pencil and paper for for no reason.
And while everyone was doing that, I was gonna do it. I, I don’t know why. I just was flipping through the textbook and I found this page that showed the derivation of it, And I was able to follow every line. I went up to the teacher while everybody was doing their work.
I was like, do you know about this? Do you know where the formula came from? Like, why didn’t you show us this? This is so much more interesting now I know why the formula is the way it is. This is so cool. She’s oh, you, you find that interesting?
Like, why, why do you, she was so confused, why I was so blown away by this derivation. That’s when that was like the beginnings of my like, love affair with mathematics.
Changing
Adam: Steve was changing and not just in the normal teenage ways, but he was changing intellectually as he tackled these increasingly challenging problems.
Steve: in, in scheme, they were giving me hard, truly hard problems and not giving me enough information to just immediately solve it.
I have to like really connect the dots and like do some novel work. Like I’m not inventing anything that nobody else has ever invented. But for all intents and purposes, I am inventing it in my own brain before anybody else. And that’s a very empowering and pleasurable, exciting feeling.
Adam: And Steve began to see himself as Matt Damon from Goodwill Hunting.
Steve: I don’t think I’d seen the movie at the time, but that’s who I was cosplaying as. If I just sit here and think, and just write big enough on this piece of paper, and just use my body, if I used all my tricks, and just don’t give up, I can, I can solve any problem.
And so this one problem, as far as I can remember, the problem was to reverse a list, and if that list has any list inside of it, to reverse those lists, and if that list had any list inside of it, to reverse those lists, ad infinitum.
Adam: And scheme lists are linked lists, right? And so you can reverse a list by kind of recursively unwinding it onto the call stack, and then putting it back together. But when a list can contain another list at any point, it’s more like a tree.
Simple recursion is not gonna do it. You need to find a way to break down the problem further. Feel free to pause here and try to solve it. But for Steve, solving this became an obsession.
Steve: I remember exactly where I was when I was walking through the halls of my middle school, just like in a daze trying to solve this problem that like I’d gotten three weeks ago at IMAX, and just feeling like so happy about this like, secret problem that I had that nobody else in the school had that like, was actually an important, interesting, challenging problem.
But the, the answer that I had to invent for myself is this technique. That ironically sounds similar to the name of this podcast, but is distinct; it’s called mutual recursion. Not not co recursion, mutual recursion, where you define a function, which calls another function, which then calls back the first function. And that was fricking wild that I had to come up with that on my own as a 14-year-old.
School Administration
Adam: Also, Steve decided that he needed to be in advanced math when he started grade nine, when he started high school next year, and the school did not think this was a good idea.
Steve: So like, they, they like make me take a test. They’re like, nobody scores high enough on this test. But you can take it anyways if I, I guess if you, if you want. I scored high enough on the test. They, they let me into advanced placement. They let me into algebra two over the summer.
It was an amazing teacher. He was retiring that summer, and so this was his like, last hurrah. And everybody else in the class was, had failed algebra two that school year, so it was remedial for them. And I was like, like in love with math. So I was like, I was like out, up in the front, like an eager 14-year-old, and everybody else was like very over it, 17-year-olds.
Rebel Learning
Adam: In high school, Steve had his own way of rebelling. He rebelled against the education system because he was sure that the way they were teaching things was broken.
Steve: Like, one thing that I remember being proud of is, uh, in physics class, she would give you one note card that you could bring with all the formulas to the class. And I remember saying, no, I will bring no formulas if I cannot derive them from first principles. I do not deserve to do well in this test.
Like, all, any formula. Yeah, like how fast an object would fall. How much time, like no, no, no. I, like I can derive those. I don’t need any of those.
Adam: So kids are looking at their formulas, and you’re like dropping a marble and timing it.
Steve: No, no, no. Like the, the, the only formula you need is all you need to know is that gravity is negative, the acceleration of gravity. And then from that all you have to know is like negative 9.8 meters per second squared. And then like from that, you can take the integral and then take the integral again, and you can have whatever you want.
Adam: This approach didn’t guarantee high marks. Others might score higher, but no one knew the material like Steve did.
Steve: because at IMACS I felt like I had learned to flip the narrative and no longer, it’s like you telling me stuff and I regurgitate to you you could say what you want. I’m gonna like, take ownership of it, figure it out in a way that makes sense to me.
You know, the teacher would teach stuff and then I would find books that I found more interesting about the subject material and read those. Or like, I’d actually read the textbook. I’d be like the only kid to read the textbook.
And then when you give me a test, like I’ll have no problem with that. Like I own this material. Like, I, like I care about it. I know it backwards and forwards in my own way.
Like unrelated to how you, however you taught it.
University
Adam: Then Steve is off to college, where this depth of computer science knowledge he now has means he was able to skip to a lot of advanced computer science classes. But also, his experience at IMACS has made him deeply dissatisfied with the university’s teaching approach.
Steve: It’s like these terrible lectures, and I’m like, education can definitely be done better. So I was trying to take the stuff I was learning in my classes and then build workshops.
I was like, it was very random, but I was like hosting these random workshops where I was like teaching people who weren’t in my classes, like in a better way than I thought the way it was being taught.
Adam: In the midst of all this, Steve jumps into a huge hackathon, and he’s on a team with talented kids who can, you know, do things besides tackle computer science problems and scheme. They can do practical things like build websites.
Steve: But even more important than that was at the end of the hackathon, I was seated in the audience pretending to watch other people present.
And on my left was just like random high schooler who showed up at the, at the hackathon. His name was Ari Weinstein. He is one of the co-founders of shortcuts app that’s on every iPhone now.
but at the time he was just, he was just a, a 17-year-old who was obsessed with Apple.
And I was telling him about my thoughts on education and how I was running his workshops and what I believed about education. And I was telling him about my afterschool program, all the stuff you’ve just heard.
Adam: On Steve’s other side is Omar Rizwan, a teal fellow who’s been flown in from California.
Steve: And Omar sitting on my right was like, you need to read this essay. He pulls up an essay called Learnable Programming by Brett Victor on his 15 inch MacBook Pro.
And I still remember feeling like the weight of it being put on my lap. Like I did not ask for this, but he just plops it on my lap, and it’s like a heavy computer. I’m like, excuse me, I’m having a conversation. I can’t read this essay right now. But that essay really changed my life.
Intellectual Rabbit Hole
Adam: Brett Victor wrote about learning and programming environments, and it took Steve years to absorb everything he could from Brett. But Brett’s work led him to Alan Kay, and Alan Kay’s work led him to Seymour Papert.
Discovering Papert was like falling down a rabbit hole for Steve.
Steve: So the Seymour Papert Rabbit Hole was just realizing that all of my questions about my own educational growth from IMAX wasn’t an accident, and I didn’t have to figure out what happened to me. Like it was very much on purpose by a guy who came up with this idea decades before I was born. And he wrote out exactly what he was trying to do, and I could just read it.
It was amazing. I didn’t have to like, do these workshops anymore. I could just read about what happened and why it happened.
Adam: So, what did you learn?
Steve: I, well, I learned why I hated math, why I learned to love math. Yeah, like, I, I learned the intellectual roots behind it all.
To me, it was, it’s like literally my childhood dream of there was a prophecy written for me. Like I feel like every boy dreams of being like the chosen one, like whom the prophets have foretold. I really loved the fact that his second book, The Children’s Machine, which I liked even better, was published days before I was born.
And it really, like, he, in the book there, there are sections that really read like their prophecies for my life. That felt awesome.
Adam: What, like, what makes it a prophecy? There will be a boy, and he will struggle with a timed math.
Steve: There will be children who struggle and hate math and think they’re bad at math, but those children will love computers because computers are awesome. So they’ll hate math and love computers. That was me. And then they will find Logo; they won’t realize that Logo is about math.
They’ll think it’s a computer game, and then they’ll do math as an activity without realizing it’s math. They’ll fall in love with that activity, and by the time it’s too late, they’ll realize that they were doing mathematics all along and actually love math. And then they’ll learn to incorporate that way of doing math in their classrooms.
And then they’ll look around and see, I’m paraphrasing his prophecy. They’ll look around and see how poorly the math education system is serving their peers, and they’ll try to reform it.
Adam: Which is what you did.
Steve: Which is, which is which is my path. Exactly.
Adam: I feel like we’re in some sort of Dune prophecy land here.
Steve: That’s how it felt. It felt really freaking poignant.
Seymour’s Fingerprints
Adam: It turns out that IMACS had its own teaching philosophy. Yes, but it was very grounded in the MIT Media Lab approach where Seymour Papert had created Logo, and started these teaching methods.
One of Papert’s big ideas was that all learning had to build upon earlier learning.
Steve: Like, your brain is, especially in this conversation, very far away from me. And the only way that I can affect it is through these words. Like, how do these words affect your brain?
They go in through your ears, and then your brain has to reorganize itself into new patterns. That’s the only way new knowledge can be made: your brain reorganizing itself. It’s an arrangement problem. Like, I can’t take an idea and then just plop it into your brain. Like, your brain wouldn’t know what to do with it. And there, and there’d be no way for me to input it.
So, the corollary of it is that how well you can learn an idea is proportional to, or directly related to, what ideas you already have in your brain. If you know how to walk around on curves as a turtle, building the derivative on top of that is like just naming something that I already have a ton of memories with.
Adam: And then the big innovation of Pepper’s approach was making things enjoyable.
Steve: And it seems like every educator misses out on this, the part of the story. When you’re building on top of ideas and you’re just thinking about the cognitive, okay, the turtles, whatever, you’re missing out on a, on like maybe the most important part of the story. That emotion is a huge part of what makes learning real, effective, alive, like that, that’s where you get a love affair with mathematics.
And so when I learned the derivative, like it lit up in my brain: very positive memories I had as a kid walking along curves, like the mental model was there and the positive effect of like me owning that thing.
Student Becomes Teacher
Adam: Pepper’s methods had shown Steve a powerful way to learn, but they had also shown him where the school system had failed him. Pepper was a contrarian figure, and being in an educational institution and reading through Pepper’s work made Steve see flaws everywhere.
Steve: Like Harvard was a seminary for priests. Princeton was a seminary for priests, and they like slowly morphed into the broader educational institutions we know of today. And that’s why what’s happening in classrooms is not the activity that they’re purporting to teach.
it’s, it’s dogma. When you, when you go, when you go to a science class and they teach you like about gravity, but they don’t show you how you yourself could have discovered gravity, it’s, it’s closer to learn to like a Bible study class than it is to a science class, in my opinion.
That is literally dogma, that is literally religion.
If you wanna teach someone how to be a robot, the best way to program a robot is to tell it all the steps.
But if you wanna teach people to be scientists or computer scientists or mathematicians that are actually gonna accomplish things in, in intellectual fields, then training ‘em to be robots is very counterproductive.
Teaching Kids
Adam: Skipping some details. Steve drops out of school. He tries some various things, and then he decides to start a school to teach kids how to code in New York City.
What he and his co-founder want to do is build the thing that comes after Logo to change how kids learn, but first, they need kids. They need a real classroom to test out their ideas.
Steve: One of our founding stories was that we went on Google Maps and we typed in “private school,” and we saw that there were so many private schools in this 20-square-block radius on the upper east side of Manhattan. And so we printed out a map with all these schools marked, and we went door to door and asked if they could use help teaching computer science.
Me and my co-founder Eli, and everybody looked at us like we were crazy and just turned us away. And uh, it was not at all productive until the very last stop. We were about to give up. They’re like, you know what, there’s just one last stop. Let’s go to the 92nd Street Y, all the way up top on 92nd Street in Lexington.
Adam: At every stop, they needed to talk their way past security guards to get inside the building so they could talk to someone at the private schools. But here it was easy. They just said they were going to the gym.
Steve: Once we were in, we just wandered around random floors and somehow we ended up on this basement floor. We saw a sign for the summer camp’s office, ‘cause it was, I guess, like, early in the summer, and we stumbled into that office, and they were like, ‘Who are you guys?’ And we’re like, ‘Hi, I’m Steve. This is Eli.’ Like, we’re wondering if you guys need any help teaching computer science.
And they were like, ‘Oh, did Josh send you?’ I don’t know who Josh is, but, um, like, yeah, who’s Josh? I don’t know what you mean. They’re like, ‘Well then how’d you know to come?’ We’re like, ‘Oh, we’re just walking around.’ And long story short, their robotics teacher had quit the day before, and so they were in desperate need of someone to teach robotics. And so they sent us home with a robotics kit and said, ‘Come back tomorrow and teach robotics.’
But by the next day, we convinced them, like, actually we’re going to do computer science instead. And the students were happier, and the parents were fine. And it worked out. So that’s how we got our first client.
Being Less Weird
Adam: One of the goals of these two was to make their learning curriculum more approachable than IMACS.
Steve: So my brother, my younger brother, for example, he couldn’t handle IMACS. He got bored of it. He quit. IMACS had a curriculum that, like I, in a studious way, learned to love their curriculum, and I had a lot of fun with it. But most people, it’s like too weird and academic for them. So my afterschool program was more aimed at my brother.
Adam: But even this more passion-driven approach didn’t always resonate with students.
Steve: I, I had a, a chat with a, with a particularly like forceful, like 10-year-old who was like doing my, my kind of uh, curriculum where like, we like didn’t teach you how to do things.
You’re supposed to like, kind of intuit and figure it out on your own and then ask questions when you get stuck. She was like, “You don’t know how to teach, you’re how to teacher.” Like, what is this nonsense like, this is how you teach. First you go up there and show us all how to do it. Then we all do it with you together.
The only then after we’ve all done it together, then can I, can I be expected to, to figure to try it on my own? And I was like, yeah, yeah, I totally understand that’s how you’ve done in the past. But like, we do it differently here. I think you can figure this out without me. She’s like, there’s no way I could possibly do that.
And I was like, all right. Let’s find out.
I, I spent a lot of time trying to figure out what kids actually wanna make. And it turns out that boys wanna make video games and girls wanna make animations and stories. For a large part. on computers. If, if, if given the opportunity to make things that are programmatic, those are the things they wanna make.
And I was initially turned off by the scratch programming language, cause it just looked so childish and everyone I talked to had only negative things to say about it. But I realized that the reason everyone had negative things to say about it is because everyone’s used it, it like, is the best answer.
Adam: Scratch was created by Mitch Resnick, a student of Papper actually. And it’s programming with a twist; it uses bright and colorful blocks that you drag around, snap together, and make coding visual and more intuitive.
So, they built a curriculum using Scratch, and it was all about creating projects that let kids explore and learn at their own pace. This idea was inspired by rock climbing gyms.
Steve: And what’s neat about a climbing gym is that there are all these routes on the wall that are graded for you, but then you can just go do whatever you want.
And so what’s wonderful about a rock climbing wall is if you wanna do something that’s, that’s way too harder for, for you, nobody’s gonna stop you. You’ll just fail.
just get the feedback and then bump yourself down a level and, and there’s no ego in it. ‘cause you are, you are, it’s a conversation with yourself.
Nobody else has to see that you failed that thing.
Like I mapped out the, this, this beginner level scratch project so thoroughly.
kids would, would try the rest to figure it out, and then they would get stuck in all in very predictable ways. And then I would socratically help them one-on-one to get unstuck
And got to the point where I was able for the beginner project to map out every possible question students could ask, and then every possible teacher question to, to ask them in response and then the possible responses they could have to that, and then the possible responses that could have to that.
It worked great.
After Scratch
Adam: Eventually, though, kids hit the end of Scratch. They wanted to do something different. And the big goal here, really, on a long enough timeline, is to take these kids from playing with computers all the way to being computational thinkers, to being the future builders of the world.
You can’t just stop with Scratch.
Steve: Now, I, as a teacher, need to provide them with something that is not much harder than Scratch ‘cause they can’t handle it, but seems harder than Scratch. I tried many things. I tried HTML and CSS and JavaScript and Python. Like, I tried many different programming languages and environments, and I was really struggling to find something good.
And so, the big insight I had was that kids, when they’re Scratch programmers, are true programmers. They can do loops, they can do variables, they can do conditionals. They’re like, they’re beyond algebra.
They’re programmers.
Adam: But if you take these kids and you try to get them to solve the same problem in Python or JavaScript, things fall apart.
Steve: They are no longer programmers because all of their intuitions as programmers, they’re still there, but they can’t bring them to bear because there’s this big gnarly beast in the way known as syntax.
And syntax is really hard to learn, especially as a 12-year-old. Syntax is just a bitch. It’s like, why do I need a semicolon there? Why do I need a brace there? If you haven’t taught a 12-year-old syntax, then you just can’t know how hard it is. If you’re a programmer, there isn’t a parser that parses in the abstract syntax trees that happens in your brain so quickly, you don’t even know it’s there. But for children, it is not there, and it takes many, many hours to put it there. And while they’re putting it there, they’re putting it on top of programming constructs that are totally unfamiliar to them.
The console printing? The console, like, what’s that? Accepting input from the command line? What’s that? Nothing, nothing in programming 101 has anything to do with all the wonderful things they did in Scratch. And so they have to learn new concepts and new syntax at the same time, and it’s a bloodbath.
Adam: So Steve built Wolff.js, a tool that turns scratch blocks into JavaScript code as you drag them. It’s sort of a bridge to textual programming from Scratch, but once kids master that, then they just face another hurdle.
Steve: I wanna make websites. I wanna make HTML pages and CSS. So we, we made some progress with HTML, CSS, and JavaScript, but really there’s a lot of concepts you have to learn there. You have to learn HTML, you have to learn CSS, the DOM—there’s just really a lot there.
But we were, we were making progress, but then there was a very big line where we just made no progress. And that was the backend. Like, as soon as anyone wanted to do anything with a server, there was like, I really couldn’t help them. That was like a bridge too far.
Ultimately, one of the big things I learned, besides the fact that kids need help making servers, is that kids don’t want to use tools for kids. Kids wanna use adult tools. They wanna use adult tools so badly. They don’t wanna screw around with kid tools. They just want adult tools to be learnable, to be accessible to them in a non-pandering way. They just want ‘em to be well designed.
Yeah, there are just all sorts of friction points that don’t need to be there. So that, so that’s the little inkling of what would later become Val town—me realizing that there was this usability problem with servers and that there needs to be a pro tool for building server things that happens to be intuitive enough for children or just anybody who’s not like a super sophisticated programmer.
Feral Phd
Adam: Steve realized that past a certain point, the real problem wasn’t just about making programming easier for kids. It was about making powerful, real world tools accessible to everybody without dumbing them down. The idea stuck with him, and it would become a seed for his next big project.
Steve had spent years obsessing over programming environments. What makes them intuitive? Why most fail new learners, and how small things like feedback loops and syntax can derail that kind of spark of curiosity that drives things. He had seen firsthand that the right environment could transform someone’s identity, just as IMACS had for him. But he’d also learned how fragile that magic was. How quickly it could disappear when a tool got in the way.
So maybe it’s inevitable that when Steve found himself dreaming about his next project, his mind was bringing all these things together. You know, the lessons from IMACS about self-directed learning, the workshops he had done, the curriculum building, the research, rabbit holes. It all brought ‘em to one place.
Could you build an environment where anyone—not just kids, but truly anyone—could become a programmer? Steve tried to build these complete programming environments inspired by Brett Victor’s intuitive approach to software development.
Steve: like, I would spend like a couple months on them and then I, I’d hit these walls, and then I would do more research and figure out that other people had tried these approaches before and failed and that, I needed to do less building and more reading.
Like I wasn’t charting new paths; I was retracing others’ footsteps, and it was just like inefficient and frustrating. So I, I felt like I switched from first gear, like startup mode, build mode to like sixth gear, like researcher, collect, and take your time and survey the space and everything like that.
And I, I call this next phase in my life of being a full-time Brett Victor fanboy.
Adam: So, Steve started his Future of Coding podcast. He started doing research. He talked to other researchers, he talked to experts. He made extensive notes, which he made public to encourage collaboration.
Steve: So, another way to describe this chapter in my life is a self-directed PhD program.
I was a real academic. I recruited this guy, Jonathan Edwards, so he’s kind of a feral academic in that he’s associated with academia but like off on the side. And so I recruited him to be my self-directed PhD advisor.
I was writing papers with him. We were submitting them to conferences. I was presenting at conferences. We were working on my thesis. We were trying to reassemble academia from first principles.
The ultimate vision was that programming is needlessly bad; programming is needlessly undemocratic. Can we make programming better? Can we get more people into programming?
There’s this phrase they have as academics: theory of change. There are many ways you can have an impact on the world. At the time, I was considering non-profits, government work, open source developers such as Linus Torvalds, essayists like Paul Graham, or visionary figures like Brett Victor or Alan Kay.
I was looking at all these people with very different structures who have had huge impacts on the world. So, which structure is right for me?
Like my friend Jeffrey Lit, we have very similar missions for the change we want to affect in the world. He talks a lot about the malleability of our interfaces and democratizing the malleability of interfaces.
But he went further down the academic path, and now he’s at Ink and Switch, which is an industrial research lab in the vein of Xerox PARC or Bell Labs. I think both my path, Jeffrey Lit’s path, and Brett Victor’s path are all very valid paths to have an impact in the world.
It just takes a lot of time, reflection, and navigating the world to figure out what’s the right path for you. There’s no easy answer.
Cynicism
Adam: That’s when fate and a venture capitalist came knocking.
Steve: I vaguely had some problems I cared about, like servers being hard, and I wanted programming to be on the web more.
And this legendary investor, I didn’t know who was legendary at the time, named Dan Levine at Excel.
The VC firm reached out and was like, “I like your work. Let’s chat.”
Adam: Steve told Dan he was feeling unsure. He thought there might be a way, you know, to change things through a dev tool startup, but he couldn’t see exactly what it was.
Something about making the web easier, something about programming backends being hard, and so he was considering joining a startup, unless Dan had a better idea. And Dan did.
Steve: His pitch was, “Isn’t it sad that there’s dead code on the web? Isn’t it sad that when you’re reading a blog post and there’s code in it, it doesn’t run, or on Stack Overflow, like people just have all this code that’s dead, and then you have to copy and paste it somewhere else, and then who knows if it’ll run?” Wouldn’t it be awesome if we could have code attached to, like everything else it needs to be able to run itself?
Adam: His new dev tool idea in a way couldn’t be further from his academic research. This needed to be a practical business that made money. But actually, He was still pursuing this goal of making server programming easier.
Steve: You start out as an idealist, and then you fail, and then you become the cynic that like, you become the thing you hated before, but like in a direction that’s like slightly more idealistic.
So Steve Jobs was a real idealist who believed in Alan Kay. And then Steve Jobs had a tough time, like he got booted out of his company. They shipped the Lisa; he went to NeXT, which also had a really tough time. And when Steve Jobs came back to Apple, he was done with Alan Kay’s bullshit.
He was all about any program that Alan Kay touched, like HyperCard, killing it. It was all about polished applications that people can use without using their brains.
So in some sense, that’s what I am doing now. I’m taking some of these research ideas and then stripping them of all their elegance and beauty and packaging them up in ways that have a chance at helping me build a sustainable business around.
Adam: Just as IMACS gives Steve the context to feel like a mathematician or a turtle thinking his way through a circle, Steve hopes that Val Town will give everyone the context to become a programmer just by being in that environment. But the path from IMACS to launching a startup comes with trade-offs.
Val Town isn’t about chasing the purest vision of hands-on exploratory learning. It’s about real world usability, and sometimes getting rid of some of that original philosophical elegance to create something that people will actually use.
The question is whether Val Town can be both a success financially and accomplish that original goal of making programming easier and making people smarter.
Steve: I think ultimately, or like in the medium term, the way to live up to that mission is just to get more people to do programming that wouldn’t have been able to before. And then through programming, through any well-designed programming environment, I think people will just become smarter.
If you go to France and you don’t speak your native language and you just hang out with French people, you will learn French. And if you go to Val Town, you know it’s a town, you will learn programming ideas. You will learn how to debug, you’ll learn how to think through state. You’ll learn how to decompose problems. You’ll learn how to recompose problems. Like it’s just the language.
If Val Town truly succeeds, you know, it’ll be a place where you can go and dive into server backend programming, because that ties into Pepper’s big observation that learning is really just all about being in the right context. Context is decisive. If you’re in math land, you learn math. If you’re in France, you learn French. And if you wanna learn a thing, really all you have to do is put yourself in a context where you will naturally learn that thing.
And for the vast majority of us, we’re not in that context. Otherwise, we would have already learned that thing naturally.
Yeah, you could self-flagellate yourself into doing it, or you could do the Duolingo thing, which is like, video gamify yourself into learning some simulacra of it, or you cannot learn it.
But to me, either come to peace with the fact that you actually don’t care enough to learn it, or move your context, like physically or whatever you have to do to actually put yourself in a context where you will naturally learn that thing. Organize some sort of a study group, or join a company where you’ll learn that thing, or join a class.
Like you have to actually put yourself into a new context where it will happen naturally, or we’re just fooling ourselves. You’re not gonna do this thing.
Theory Of Change
Adam: This is actually a great explanation for why so many adults, you know, want to learn things like Spanish or guitar or whatever, but they don’t. Yet those same adults very occasionally learn very hard things without even trying.
It’s because their life changes. They get a new job, they get a new significant other, they get a different friend group, and then all of a sudden they end up in a different place, in a place where they need to learn something.
But to me, it seems like Steve learned something else from Pepper. You can accomplish a lot if you have some change that you want to see in the world and you focus yourself in on that.
He’s someone who’s going to improve programming. That’s the context that he lives in.
Steve: I think recently, I’ve been toying with the mission of Val Town being spreading the joy of programming.
‘Cause I think that’s what I’m here for. I think programming is so much fun. I have so much fun doing it, and I just want more people to be able to, like, share in that joy.
If you’re already programming, I want to make it more joyful for you. And if you want to get into programming, I want to build this platform that’s like a joyful place for you to do your programming.
Outro
Adam: That was the show. I hope you liked it. I came to Steve with questions about learning like how do you learn hard topics? I’m right now trying to get better at doing YouTube videos for my work, and I had so many questions, and he had so many instructions.
But I think that what I really left with was instructions on how to make a difference in the world.
Reflecting on Steve’s journey from struggling math student to tech innovator, it’s clear that the right environment can transform not just the skills you have, but ultimately who you are, your identity and what you think of yourself. You can actually become a different type of person by finding the right context, by finding the right question that drives you.
You can find Steve online at stevekrouse.com. You can also check out Val Town, which is at val.town. I’m excited for what Val town will become. It’s also just a super handy tool if you need to write a cron job that emails you weekly or things like that.
But yeah, if you like this episode, you should also check out episode 101 about Hedy. It’s like a very different approach to teaching children how to code. And also don’t miss episode 91, which is all about Seymour Papert and his approach.
Thank you to all the supporters who keep me going on this podcast. If you want to join them and show your support, you can go to corecursive.com/supporters. We also have a great Slack channel. Check it out on the website. And yeah, feel free to share this episode with others. It seems like that’s how most people find out about it. And until next time, thank you so much for listening.