The Evolving Landscape of Computer Science Education With Mike Zamansky ![rw-book-cover](https://wsrv.nl/?url=https%3A%2F%2Fcontent.fameapp.so%2Fuploads%2Fxjqp4kyq%2Fc2cf4900-61cb-11ed-a424-1f09eb2b4f6a%2Fc2cf4a50-61cb-11ed-9dbf-8bdab0b51812.jpg&w=100&h=100) ## Metadata - Author: [[The State of Developer Education]] - Full Title: The Evolving Landscape of Computer Science Education With Mike Zamansky - Category: #podcasts - URL: https://share.snipd.com/episode/948e0723-4d34-404d-a45d-509f190b2ef3 ## Document Notes ## Highlights - **K-12 vs College CS Goals** - K-12 CS education aims to provide baseline knowledge and computational thinking, unlike college which often focuses on academic research preparation. - Teachers must help students understand if CS truly fits their interests or if other tech-related paths suit them better. Transcript: Speaker 2 Because there's a lot of critiques, especially of college ones. But I haven't heard quite as many from the industry of K-12. That's really great. Speaker 1 That's like how much time we have. Speaker 2 So there's a lot going on there. Speaker 1 So one thing that's important to think about, and this has come up at least on maybe not directly but it's certainly in the room in all of your podcasts that I've listened to. You know, is it the CS degree, the code school, the self-taught? So I think we have to kind of just say a couple of words about the college level and what's going on in the transition from high school to college right now in order to start to address the High school side. And I think that's an issue where one of the issues in college is computer science programs do not align with what the majority of computer science students are looking for. I was talking to a couple of people who are in important places at a very prestigious computer science institution. And I'm like, you know, you work in so hard for your students, but all the programs are designed so that students are supposed to get PhDs. But we all know that 90% of the students don't want to get PhDs. And one of these two people had to figure out, it's like, Mike, you know what? Speaker 2 That's exactly fill in the blank with the college's name, problem. Speaker 1 You know, and it's everywhere. And so you have that, but then you have the code schools which give a vocational training, but it's more limited in scope and it's get you that job now. You know, it's a workforce program and that also fills an important niche. And there are a few software engineering programs and there are a few boutique programs as well, but that's the minority. But then you also have CS miners, which we never talk about. And CS miners can be really could fill in the gap and give the right mix for the professional to be, but too many of them are just pre major programs. And similarly, the community colleges have a similar issue to the miners. Are we part of the community and setting these pins up for a job? Or are we setting them up to go to an academic four year program that's then only going to send them to the doctorate? So that's the college most. Now we can talk about the high school. At high school, I think we have a few jobs and this goes across every subject area. One is a well educated person should have some baseline knowledge in all subject areas. They should know a little bit of biology. They should know a little bit of physics. They should be exposed to a language other than their native language. They have some grasp of history and similarly, they should know some computer science. They should be exposed to what is that? What does that mean? Deeper for all the subjects, ideally you want people to be able to think like those feel. So for example, we now talk about computational thinking. But I also, but a poet thinks about the world in a different way. A musician, a chef, a historian. And I've talked about this for years and I was listening to a keynote by a computer science educator. Great guy. His name is Mark Gozdow. And he was giving this talk. He's like, wow, I was researching this and I found out that there's this thing called historical thinking. And mathematical, and these are actually, you know, just like we're doing computational thinking now. Educators have looked at these in other fields and we want our students to be able to look at the world through those lenses. No matter what they do. So if you're on Wall Street, one of my students was on the Wall Street was working on the Enron cases, working for the Blackstone, whoever it was back in the day. And they were all super high powered MBAs and this young kid. But this young kid looked at the problem as a graph theory programming problem, coded it up on his laptop. And he was the Wall Street, whiz in Wall Street week and a couple of years ago. Because he looked at the world as a computer scientist. And then we also want to inspire these kids and give them enough so they know what they're getting into in college. And that's a real problem now because we have the hot field, right? Computer science is the it field. And we have a lot of people doing computer science or trying to go into computer science who probably shouldn't be. And can they do it? Yes, if the college lets them, but is it their calling? Are they going to be happy doing that? Or is it they're following the money? Or is it following the height? It's back, like in my day, everyone went to business school. That's what you did. And a few years later, everyone went to law school. I can't tell you how many unhappy lawyers are in my generation. Many of whom left and became teachers because now we're seeing that with CS. And part of what the K-12 teacher has to do before it's too late is give that picture, give an accurate thing. So that a kid can say, this is for me. I want to study computer science or I don't want to study computer science. I want to study data science or software engineering. Or I want to know enough so that I can instead study international studies or political science but apply these CS concepts. And at the core, that's what a K-12 CS teacher needs to do. ([Time 0:07:00](https://share.snipd.com/snip/21f2a110-ffda-4112-a18a-29bf424f8aea)) - **Bootcamps vs Longer Programs** - Bootcamps often lack strong teaching and pre-screen students to succeed, making them unsuitable for many. - Longer programs like community college software engineering tracks can better serve students needing practical skills for industry. Transcript: Speaker 1 I think there's boot camps. I think have a fundamental problem. Well, they have a few fundamental problems. And I do not mean to, you know, broad brush strokes here because they're not all the same. Speaker 2 But I think I'm using them as a stand in vocational software engineering training. Yes. Speaker 1 And I think one of the biggest problems with the boot camps are by and large, they don't know how to teach well, but they pre-screen their applicants to succeed. It's kind of like once you make it into elite private school, elite college, you know, you're going to have that on your resume for life. But the truth, you've been pre-screened when we were making the Academy for software engineering. There was a big debate about should the screen be school, be screened or not. Should you have an academic criteria to get into the school and the board of ed was no, we are not doing it. And I said, you're being disingenuous. You've got two choices. If you're saying you want to make Google ready engineers by the end of high school, they have to come in with a certain level of background. You can't be two years behind in math and expect them to be Google ready software engineers by the end of their senior year. On the other hand, so if you're saying there's no screen, then just you have to stop saying you're going to make Google ready engineers in four years. Just say this is an on screen school. It's going to be awesome. We're going to get you to the next level. And either way you go, that's going to be terrific. But the board of ed wouldn't stand for that because, you know, they got to have their PR and their height and they can never be wrong. And so they went to this meeting. I was in and there were all these founders, you know, company founders and VP engineering. It was like the executive board on this. And so the board of ed was, so what do you look for in an interview? And says, oh, well, we look for the ability to work in a team. We look for creative. And they mentioned all of these soft skills and all these things. And then the board of ed guy looked at me smugly. And then I turned to the crowds that, and where do you look for these people? And they're like, well, MIT, Stanford, Carnegie Mellon. So that's a problem with the code school. And the other problem is it's too short. It's good for what it is in that it'll turn you around and get you that entry level job. And if you're earning minimum wage, you know, at wherever at Starbucks, this is a tremendous thing to go to 60 to $120,000 after a six month bootcamp. If you're that self starter, that auto diet act, that can handle it. So I don't mean to denigrate that. I think that is a great thing. But you can't in six months. It's too much too soon. But on the other hand, if you had a year to a two year software engineering program, you know, and this is where I think the community colleges are really dropping the bowl. They really have a great opportunity here. I think for the majority of CS majors, they'd be better served with that type of program. ([Time 0:16:29](https://share.snipd.com/snip/6e388ad9-8e86-4e12-b635-f94f1013ef20)) - **Teaching Skill Differences by Level** - College CS professors often lack pedagogical training and focus more on research than teaching effectiveness. - K-12 teachers improve faster as teaching is their primary, immersive daily activity, giving them stronger practical teaching skills. Transcript: Speaker 2 Like, what do you think is going on there? Why is that? Speaker 1 Well, it just makes sense. I get into trouble because I go to CS at conferences and I've got friends who are college level educators, you know, many of them I respect to the end of days, but then there are others that, But then there are a lot of people who are experts. And this is not just computer science. These are also education professors, but people who study education are not teaching. They're studying education. And if you look at, it's just a very fundamental difference in that. If you're a professor, even if you're teaching, you know, a teaching professor, a clinical professor or a lecture, you may be teaching three or four classes a semester. You meet the classes twice a week. You are never trained to do it. These students expect a lecture and you are giving them a lecture. Now, there are many college professors who are trying to do better, you know, and trying to do more and bringing in active learning and doing all sorts of wonderful things. But if you look at the machine, it's not optimized for teaching, you know, for the improvement of teaching. Then if you're a research professor, you're not hired for teaching, you're not promoted for teaching. You know, it's a second book. Now, on the other hand, when I was teaching high school, I'm in show one starts at eight in the morning and I'm going, I got my five classes a day. They're all, even if they're the same subject, they're all different. And I, between classes, I go to my, you know, the teacher's lounge or the workroom, whatever. Am I doing research? What am I doing? I'm, because that's changed to the other teachers about how horrible my day went. You know, we're talking shop, you know, and then it starts over in the next day and it's 24-7. You know, it's kind of like they talk about that, you know, the explicit practice. So even though the feedback loop for education is incredibly slow, if you're a teacher, you know, that's what you're doing. You are all about your classes all the time. And if you're in college, if you're a professor, even if you fancy yourself, a researcher who teaches, the research is going to occupy. You know, so even if you have two people with equal teaching chops coming in, the K-12 teacher is going to get better, faster, and go so higher as a teacher, just because of the nature of The job. ([Time 0:21:20](https://share.snipd.com/snip/7e6e6ff5-1e88-4650-b845-f75b9a165514)) - **Bridge Education and Industry Gap** - Teachers and industry professionals must actively communicate to align curricula with evolving industry needs. - Regular meetups with engineers and educators foster mutual understanding and update course content effectively. Transcript: Speaker 1 That was something else that came up with back in those meetings for AF at the Academy for Software Engineering Development. And our mutual friend Evan actually had the response on this where one of the D.P. Engineering's was Adam, like, why aren't you doing Ruby? Because Ruby was really hot at that point in time. And that person's company had a Ruby platform. And Evan said, and I have to give Evan credit. I can't take credit for this, you know, because I hope Evan is listening to your podcast. You know, and he's like, well, because if we did that, then next year you'd be saying, why aren't they doing in whatever the next language is? But on the other hand, you have to do some language or multiple languages, depending on what you're doing. And so you want to do something that makes sense. You know, if there's a purely academic reason, like my intro course at STI started with Scheme, or now it's known as Racket. But I never would use that in a summer program or at Hunter. I used it at STI because I had a particular student body. And when I created the course, I had a certain reputation. So I could get away with it. You know, they'd give you the benefit of it now. But then later on, we do Python and then in the AP course, they do Java. And then in a systems course, we do see. So they're a different tool. And of course, the software engineering class, we go back to Python, but we also have a big JavaScript presence in there. So you do have to make decisions on that. The problem is it's really, it's hard teachers and professors and industry people. We all have full time jobs. So we don't have a lot of time to find out what the other person is doing. I don't know. Maybe I did this because I came from industry originally. But I always worked hard on it. I kind of keep informed for my students. Maybe it was because I've been very fortunate in that a lot of students have kept in touch with me over the years and become friends. So I would get that. But it's something we have to work at. And I think part of it. And I see this more at college. Yeah, I think there's a little bit more hubris at the college level for professors who like, well, we know, you know, why do you know? Well, because I knew somebody 20 years ago at a tech company and that everybody does this like my students are still 16, even if they're 40 years old with kids. You know, you learn something until something comes to shift your mind view. But it's funny. I was thinking about this yesterday before COVID. I used to have these teacher meetups and basically, you know, a company donates space and pizza. And, you know, shout out to both the X and digital ocean because they've always been so helpful. Google also, you know, and hopefully they'll provide us space again next year. But then COVID happened. And when I announced my retirement, they're like, the teachers in the program was like, no, you can't retire. I'm like, what do you care? You're all graduating. You're not going to need me anymore. But they're like, we should still have these meetups and we got to have good PD. And so I just thought about this the other day. It's like, you know, we got to do. We got to do. We got to do the speed dating again. And this was something I did in Stuyvesant 100 years ago. And I had I brought about like 50 to 70 of my kids along with like 50 to 70 of my graduates and introduced them to things about tech. But we got to do the same thing with teacher, you know, we got to have meetups with teachers and get our friends in tech into the same room and have them all talk shop. And the teachers can really explain to the tech people what's really going on and the tech people, you know, in this way, when it comes up, oh, you should be using Ruby, you know, the teacher Can push back. But then on the other hand, when the teacher says, we're going to be doing this on the other thing, the tech person is like, yeah, but they don't really need that. This is what they really need. You know, even if it's not a specific language and we've got to get these people in that same room. ([Time 0:24:13](https://share.snipd.com/snip/b9530c44-707e-4fd7-a4dc-e5bbe960a89e)) - **Barriers to Teacher Development** - Teacher workloads and test-score based evaluations create barriers to sustained professional development. - Low-friction support from industry, like simple dinners, can empower teachers without adding burden. Transcript: Speaker 1 Mean, part of it's because as a teacher, right now you're evaluating on test scores and there are no standardized computer science tests, which is good. But it also means that's got a full of the wayside. You know, when my eighth grade exams are coming up in history and in English and in math or the Regents exams in New York State for the high school levels. So they're not going to be evaluated on it. And also, but just the truth is it. So I used to work on Wall Street 100 years ago. And they always talk about the long hours and it's tough and whatever else. And oh my God, it was like such a walk in the park. My first week teaching, I did not know if I was going to survive. I mean, my mom was a teacher like, Mom, you didn't tell me. I was like, I did tell you, you didn't listen. You're giving five shows a day to a captive hostile audience. And I say hostile because we don't always want to be there a matter of why. You don't even know we love our kids. We love our child. And then, you know, you got to fix things. Then you got a next one the next day. And it's as grind. You know, I'm like, I briefly mentioned that I hated geometry. You know, I like, if I've got 150 kids and if I've got two geometry classes, I've got 68 geometry students. I'm supposed to grade 68 homework tonight. MF 68 proves. If I'm an English teacher, I've got 150 essays a night. There just isn't the time and energy. You know, these things could happen over the summer. But the teachers still need to recharge the batteries. Like, if Google or Facebook or Microsoft or Amazon said, you know, we want to make this, you know, we're doing these two or three dinners. And again, in the school year, if you just make it a dinner, free food, it could happen. It's got to be so low friction because there's so much on teachers plates right now. ([Time 0:29:01](https://share.snipd.com/snip/18f21a03-91e6-4618-870f-cd4d243dbe0c)) - **Effective Industry-Education Integration** - Embed industry engineers into classrooms to co-teach fundamental courses for lasting knowledge transfer. - Avoid one-off engineer-led electives without collaboration, which lack institutional memory and impact. Transcript: Speaker 1 Well, I think it's worth it in case we can do it. But my daughter is at meta. And she loves it. She's a software engineer there. But she spent a semester teaching at Georgia State as part of their engineering residence program. And there was a lot of good in that. But it had certain key flaws. And there's another program that New York City does. And we can pick it up here if we do it with that. Because it's the same floor called the Tech Talent Pipeline and QV2X. And I was involved in that at Hunter. But one of the things they do is they have engineer in residence where the tech, they'll send same deals with meta. They'll send an engineer to teach a course. And invariably the engineer teaches a class. They teach a web dev elective, something like that. But then they leave. It's gone. There's no institutional memory. And what I was pushing the city to do, what they never did was you got to have them team teach with the fundamental classes and figure out where you can push things in. You know, like I use my classes, I use Git. You know, it could be GitHub. It could be GitLab. It could be whatever. But I use that. You know, and I just do it instead. And I don't use an auto grader. I use a testing framework. You know, and this means that my kids know how to make a poll request and work in each other's code. You know, set up unit tests in my classes in my CS one CS two or CS zero CS one and CS two classes that should be everywhere. And why? Because I brought it into there because I saw this is where we integrate a software engineering practice that is beneficial and makes things easier for the college class. So by integrating that software and resident into an existing class and having them work with the professor, having them work with the professors a semester before to develop. So it's kind of misguided there. And I think part of the reason, well, I mean, it's, I've got to be a little bit arrogant here. I'm not the best classroom teacher. I'm good. I'm above average in the classroom. But there are other things I do really well. And one is that I have that experience on the professional, you know, the tech side in the industry. Yes, I was there a hundred years ago, but I've kept it current through my students, you know, so I can talk to you, you know, about containers and I can talk to your, you know, that's passé Now. That's all 10 years ago. Like I can talk, whatever the fat is, I can talk to you about it. I keep myself current. I'm pretty good at the real CS stuff. And I know my teach. But and you need people like that to run programs at these companies, but invariably they're people who don't have that background, you know, and who want to do good. But it's really, you know, they haven't, you know, where if they taught, they taught for a couple of years. ([Time 0:30:53](https://share.snipd.com/snip/b9034c3c-de89-4bb7-be3c-d90c90aeb270)) - **Fixing the Leaky Pipeline** - Pipeline focus often neglects intermediate CS courses, causing students to struggle and drop out after intro classes. - Honest program evaluation and adjustment in course difficulty and scaffolding are crucial for student success. Transcript: Speaker 1 And everyone talks about the pipeline, the pipeline from K-12 to college to industry. That's the only thing that education should be about. But to be honest, very few people are paying attention to the pipeline. They're all paying attention to the opening of the first pipe. And how do you look at when CS zero changed? The intro made a very lightweight course, but nobody else like so it's more accessible and it's more inviting. And I think all of this is wonderful. But just about every program out there forgot about something CS one and then CS two and you got to make those, who cares if you're getting great pass rates and CF one, if they all fail CS Two and drop out and feel that they are losers and they can't do this, because you didn't pay attention to whether it was a leaky pipe. Speaker 2 And so you need people who know that entire arc and are paying attention and there aren't that many people doing that. What does plug the leaky pipe, right? Because I've heard this brought up in so many different contexts. You know, I've heard it brought up in the context of diversity in tech. I've heard it brought up in the context of, you know, getting people into programming who might not otherwise have, you know, had exposure to it. Like you're right that like people often, it seems like political forces are primarily focused on the top of the pipeline, getting people in the funnel, but not necessarily what happens Afterwards. So what does get someone from A to Z? Speaker 1 I mean, I think part of it is you need to really think about a coherent program. And I was very lucky that we were able to do that at STY because we had the AP course written in stone. I mean, not written in stone because we could still teach how we want it. And the AP used to be a full year CS1 CS2. And then when they cut it down to CS1, since we taught CS1 CS2, we had all this time. We still teach or they still teach. But then we're like, when I designed my intro is like, what do we need to do before that? And how can it prepare and feed the game? You know, so it wasn't just we're making this CS0 course. We're making the CS0 course with two things in mind. One, if you never take another CS course, is this going to give you something of value? And two, if you go to the next CS course, which is our CS course, are you going to be prepared? And then we did the same at the other end since we offered AP in the junior year. The problem with high school, the college is the high schools and the college are never going to get on the same page because, you know, too many different ends on the graph. You know, like you'll have like CS principles, the relatively new AP course. At Hunter, I've had people who've taken the CS principles course who are incredibly well prepared. And I've had people who've taken the CS principles course from another school and they would have been better off with nothing. You know, and then, but also even with the AP, old AP course, the colleges are taking, you know, like, again, how do you know what you're going to get? But they're not paying attention to, okay, this is what we are now teaching in CS0. So what can we expect in CS1? So for example, if you look at the Hunter CS0, the course is so much better than it used to be. I think it could be changed in certain ways, but the old CS0 was such a weak course. And the one that they're doing now is I had nothing to do with it. And when I teach CS0, when I taught CS0 at Hunter, I do my own thing because it's an honors group. But they do a bazillion little tiny mini programs. And then in CS1, the first project in a couple of weeks is, you know, hundreds of long. No one paid attention to that. And so in a lot of ways, it's as simple as saying, let's pay attention to this. And then saying, okay, well, maybe we've got to ramp things up in the CS0 so they do larger things more a little earlier. Or maybe we got to scaffold it more at the CS1. Okay, so maybe we can't do quite as much in CS1 now. And now if we went to CS2, or maybe we even have to drop this. Like maybe we don't spend as much time on the merge sort and the quick sort. We just focus on one of them. So you make some decision, but you really have to be honest about your program. And you've got to go with it without ego. You can't be like, this is my course. And my students always know this. You've got to be able to say that are the kids getting what they need. And that's hard to do. And it's really hard to get a department to do that. ([Time 0:34:28](https://share.snipd.com/snip/8851055f-6048-4c47-8f0c-206daac15ff3)) - **Practical Project-Based Learning** - Implement project-based learning with strong scaffolding and teacher support, especially for beginners. - Account for student time constraints and provide manageable, diverse project options to maximize engagement. Transcript: Speaker 1 I like it in a lot of ways, but it's not the be all and end all. There are a number of issues. One is a lot of people, this project, and then there's also discovery, you know, and a lot of times people conflate the two. You know, the idea that you put the kids in front of a computer and they work and magic happens. And what really happens is you got a group of four kids and one kid who can learn on their own, who already knows stuff figures it out. And the others don't really get the development they need. Projects can be great, but there are a lot of issues with them that can be problematic. One, when you're starting at CS zero, like when you take a foreign language, you know, ultimately you're writing essays in that language. In French ones, like Jean-Michel and Michel, you know, it's like, we're not writing, we can't really do so many projects in French one. And it's the same thing in computer science. Yes, there are things you can do and you can build programs, but it's going to be with support of some instruction, be it the teacher, be it something you're reading, something you're Viewing. And they're going to be small. You know, later on, you can build more interesting. Like imagine that if you're learning a new language, like, you know, basically it'll be like, okay, well, write this in totally new language. You know, like, you could do it, but you're probably not. You're probably going to start much small. It takes a lot of time to develop strong project based experience. You got to build a scaffolding. You got to make sure, you know, what do you need? Like, if you ever teach people, it doesn't matter, kids, adults, whatever, this could be even helping, you know, read her email, you know, and then you just do this. And then you think about it, like, wait, there are like 30 things that I just took for granted that I just did, but you have to build that into the project scaffolding. You know, are they going to, are they going to be able to learn from what they have on their own? You know, like, what about, I mean, even stupid things like, if you were in, let's say you're at Hunter, I meet the kids. My kids twice a week for an hour and 15. Should they be developing the projects then? Or should they be doing other things because I may not have as much, you know, like, ability to help them based on where they're at the projects. Well, if they're not, how much time are they going to have afterwards and what resources are they going to have? Because just say, public school where a lot of kids have to work. You know, this is not like, if you go to the leave private school where you have money, yeah, you can go and hang out and allow them to their laptop and work on this. You can hack on this project for all, you know, all afternoon. I can't. I've got to work at the grocery store to make rent. You know, so that's a problem. If you're in high school, let's say you got 40 minutes a day, you know, so every day you got to start up in the breakdown. And if it's a team, it's even harder. So all of these things are, you know, whenever you hear somebody saying, this is the one true way, everything should be project based. Almost always you're talking to somebody who teaches in a private school with 12 kids in a class. Because they've got a small enough class and enough time and the resources to do it right. And I'm like, gee, I'd love to do it, but I got 34 kids. And that's a real challenge. Then you have other issues. And I'm getting all the negatives here. And the reason I'm giving you the negatives is because if I can do projects, I love doing projects. But these are all the things we have to overcome. You know, like a lot of people are like, do games, all kids love games. No, they don't. You love games. You know, when I taught my intro class, they're like, oh, you scheme and then you use NetLogo. Oh, I bet all the boys love scheme because it's all Matthew and the girls love NetLogo because it's graphic. No, my kids love scheme because I love scheme and it rubs off on them. And my buddy Peter, who's 10 times as smart as I am, his kids love NetLogo because he loves NetLogo. Speaker 2 So the teacher influences that. Speaker 1 And then beyond that, I've had girls love either. Boys, I've had them hate both of them. You know, if you're developing into one in-depth project, not everyone's going to be happy. You see, to make sure that it's short enough so you can get something else the next time. If they're all doing their own project, then I think there's a lot to be said for scratching the itch and having kids self-direct the project. But if they can go totally on their own, that's going to be problematic because are they going to choose something that the scope is to advance? Is it too simple? Will you be able to support them as an instructor? You know, so the sweet spot is something like we'll do a data project where they have to get data from somewhere and I give them a bunch of sources, but they can select. You can do movie database, you can do sports, you can do crimes to test. So you give them the freedom, but it's tough. At its core, I think more often than not. If you have kids working in code, that is beneficial. ([Time 0:41:04](https://share.snipd.com/snip/ce94a4c0-4b2e-44d3-84ed-8c2ef9f6ab37)) - **Hackathons as Social and Learning Events** - Hackathons foster community, creativity, and networking but often produce imperfect code reflecting real-world pressure. - Mike judged many high school hackathons, emphasizing positivity, mentorship, and balanced competition. Transcript: Speaker 1 The hackathon is interesting. I kind of go this way and that way up and down with hackathons and believe me, what you've done is really amazing. I think nothing in a vacuum is the right answer, but like you've got hackathons and you've got, anything that's creative like that, I'll put in the hackathon name and then you've got Programming competitions. And I think it's important to have a book, but I think the downside of hackathon is you're probably writing bad code. Like this is clearly good at the, which actually is modeling the real world very well. You know, it's like we're going to be two weeks later, the code spread. Let's go. And what I don't like is the advantage of people, you know, who've come in, like I got my library set up and all that. And like I hate it, like you're going to win, but this person did a better. So I've tried to do things like when I do similar things with my kids, I try to like let's highlight interesting projects, but I hate it's like, well, this, I don't want to make an absolute Winner because, but at the end of the day, these are social events for lack of a better word, tech geeks like me. And it's an opportunity to celebrate our mutual, and I want to use this in a positive light, geekiness. It should not be like we had a hackathon once and we almost kicked the kid out because like this is a high school hackathon and this kid exhibited all of the worst tech rose, Silicon Valley, Misogyn, you know, and if like, no, that team isn't winning because this kid isn't winning. Speaker 2 Because we're not going to reward that, but it's to act their best, the celebration. Speaker 1 And I think that's, you know, it's kind of like, you know, the football game, the Division One school, but for computer creatives, you know, and that's an amazing, beautiful thing. And I think that you've got the programming competitions, which are great for the people that are into competition. That has its own problems. Like, again, you want to come in knowing your algorithm, but the hackathons I love because it's like, particularly, and I haven't been to one since, well, yeah, I'm not going to be a fan Of it. And I'm just like, well, yes, it's pre-COVID. I would frequently judge a couple of New York-based high school hackathons every year and I love going to them because you get these kids who meet each other for the first time and they're Working on something and they're proud of it. Part to me, the most important thing is if you can get not, I think you need a category of judges, but not just judges, but like people to hang out there who aren't mentors, but tech people To just go around and talk to the kids. Because people don't realize this, but if a software engineer from wherever, from Twilio, or whatever company that goes in, oh, that's cool. That's something that I do. Just like a throwaway comment like that. And 10 years later, that kid is going to remember that. And it's going to have that positive impact. And the hackathon creates that environment. And it builds the networking skills, or has the potential to build the network where the kids meet each other. And I think that's an amazing thing. I'm not super sold on the 24 hour thing. Maybe this is just some old, and I don't know the last time I was out past 10 o'clock. I'm not sold if that's necessarily a good thing, or if we better to have two days, cummerally in the morning. But the basic concept, I'd love to have local events. And I might say local events. I know there are local events. But one of the things we set up at Hunter, which fell to the wayside during COVID, basically it was the kids have a month off as in many colleges during January. And Hunter kids are not traveling to Europe. They might take a class. They're not doing a whole lot. If they work during the school year, they might pick up a couple extra shifts. But they probably aren't because those shifts are already held. So they're still just working, but they have more free time. So we called it code fest. And what we did is I engaged some tech mentors. And it was kind of like a hackathon, but it was over the course of a month. And then we had an event at the end of the month, and it was usually held at Google, and they just demoed their projects. What we would do is we had the mentors or other software engineers. They'd rotate group to group, and they demo, and they get feedback. Like, oh, if you wanted to go along with this, you might be, you know, next kind of like, you know, doing the mini pitch and getting the advice. And then we show off one or two and have a little party, you know, and I'm sure of some other schools do similar things, but they should all be doing it. You know, so I think these types of events. And also since a lot of the schools don't teach a lot of what needs to be learned. The hackathon is probably not going to teach it directly, but the kid is going to go to the hackathon. And hopefully they're going to be brought along by a team or by other people, or even if they're a team of newbies with their friends, they'll see what other people are using. And then they're going to be like, you know, we've got to learn this. We got to start putting our code in a repository. We got to start before the net. And I think it can be really important, you know, for that development. You know, it's kind of like in school, it's not all about, you know, there is that thing called extracurriculars. And it's important. And those types of things, again, one of the limitations is what do you have kids at these poorer kids at these public schools. They may not have time to attend or if they do have time to attend. Like everyone says, oh, we're going to a personal project. Go to the hackathon. They continue developing it. It's like, like, what am I doing this personal project? I'm taking all my classes. I'm working in the grocer, you know, going into the one room apartment with my family. And I got a, I can't use the computer because my kid brother has the hackathon. Can't solve that. The hackathon, I think, has some serious benefit. You know, the downside, as I said, is just like, you know, I wish they weren't 24 hours. But I wish there was more of a, that other things were more equal. This was something that I loved about the previous hunter administration. You know, a hunter's president was like, I can give many grants to students. We have students that want to, that can't go to a hackathon, not because they can't afford it, because they already have some money for entry fees, but because they can't miss their shifts, I can give them a grant to cover it. Or if they got to take this mini course to learn this thing, we can give it. And she was amazing. Like, just going that extra mile. And I just think, like, people don't realize, you know, like, you know, first world problems, you know, like, one of the things in being involved in public education. And even at Stuyvesant, they're high performing kids, but there are a lot of low income kids there. But I think it's so open my eyes being in public schools and public college to how unlevel the playing field is. You know, and as much as we do, you know, everyone says the next thing will be the next equalizer. But if this thing is a good thing, you can get all the rich kids are going to be getting it first and more of it. I don't have an answer to that. Like, I wish there were a way that we could get more people access, again, to the types of things that these extracurriculars give. But yeah, that's a long way to do way of saying, I love them and I can't wait to start going back to be a judge. And, you know, now that I have time after I retired and they're going to be in person again. ([Time 0:47:57](https://share.snipd.com/snip/cc1016af-ea98-4ae1-9943-24930299e864)) - **Tradeoffs in Modern CS Education** - Modern tools hide computer science fundamentals, widening access but reducing deep technical understanding. - Effective teaching balances supporting discovery with preventing shortcuts that undermine learning goals. Transcript: Speaker 1 There definitely has been a change. I think that one of the biggest changes though is they know less, but it opened the door for more. Like back then, everyone had to know things and do things, but it was the old boys club, you know, it was the usual suspects. And now, you know, the entry funnel is much wider, but I think people have to remember that like this is not, you know, this generation doesn't necessarily, they don't know things, they Use the tech, but they don't know the tech. You know, so we've got this really wide funnel, but we can't make these assumptions. Like they don't know what a file system is. They don't know what a file like these are all because it's all automatic, but that's okay as long as we don't expect them to know that. I think one of the biggest issues, two things really grades and the need to finish a sequence, you know, like this course, like one of the beautiful things about the hackathon environment, You can have or add a technology that you don't know. And if you don't get to where you want it to be, who cares? You know, like you've gone from here to here, you've learned a whole bunch of stuff, you'll finish it off later and learn the rest of it. But we don't do that in education. In education, it's all got to be done by this time. And this goes back to the project based and also the discovery side where it's canned, like, hammer at it, you know, and take the time to let's look this up in the doc. So these docs are horrible. This is how it should be. Let's try this instead. Oh, can you help? You got this working? What did you do? Which is another issue, which we, you know, oh, you got to do this yourself. Or it's cheating or it's plagiarism until you graduate, in which case everybody, you know, like, which is ridiculous, which is why I've always been like, no, bring up over. Just put a little comment saying, Susie, help me, you know, I mean, but it's, you know, it's, um, what do they call it productive struggle? You know, whereas, you know, you learn the best where you're struggling, but not too much. And that this is something that as an educator, you want to work into your scaffolding when you're teaching things. And you got to be careful about this. I can't tell you how many times, in particular, with Python's, where I've made this great project. I've adapted it from Java or it doesn't see in another class. And like, I have intent and it's going to guide them here. And they're going to hit this wall. And they're going to, you know, hear the two or three things that they can do. And I'm like, yes, this is going to be awesome. And then like, there are two or three kids, like after five minutes. Oh, I used the dot whatever method, you know, and it totally defeated the, and it was, you know, it defeated the entire intent of the exercise. Because they did know it, or they found it out too quickly. And it also, it took away the aha moment for them. You know, and that's, it's tough. And this is why you really, it's okay. You know, like, I blew it. You know, I talked to class, like, hey, I blew it. Okay, this is, you know, and then we all live to teach another day and you fix it the next time. And that's important. If you're going to have a career in education, you don't have to do this. But if you're going to be any good, it's okay to say, I don't know, or I blew it. I hate this online where every teacher talks about their wonderful this and their wonderful that. And I'm sure they are. But it's like, not every lesson is going to be Jaime Escalante, John Keating, Captain Mike, Captain, you know, like, you'll have the magic ones. But there are going to be those days where it's just, this is not working. And you got to get through, though. And that's okay. Because then you just fix it the next day. But you got to know your stuff. You know, and if you don't know it, you got to be willing to say, I don't know it. Let me learn. So then I'm like, okay, let me dive in. What are these things I didn't know about the current, you know, version of Python. And then the next year, I was able to scaffold that lesson so that the discovery worked much better. But it comes down to, they know a lot more, but they don't know computer science. And so as long as, are they rarely know computer science? This was one of the reasons why it's diverse. And they use scheme as the first language. Because that way, you know, the hot shot kid was like, I've been programming for five years. And I know 13 different languages. They could do very rudimentary stuff. They started a level playing field. And every now and then I have a kid who did scheme. They went to this program, CTY Center for Talent. Did you really good program from what I can tell? They used to at least maybe they still do a scheme based programming course. But the kids who all had the legit background were like 99 out of 100 of those kids. And I can say that because I've taught over a thousand kids. They were always cool. They always got it. They knew don't give away the store. And they would become junior TA's. You learn over time what the kids know, what they don't know, what tools they use. Like, oh, well, they'll use Instagram for this and it'll work in this way. And this means all of this background. And then of course I could do this. I could make some bad modern reference. And I got the dad thing going for me. So they'll just like shape their head sadly at me. But it works. You know, like that's the dynamic. You miss sometimes you'll make an assumption that the wall knows something. Or that none of them will know it. And you know what? That sucks if you're teaching one semester. But if you're teaching as a career, you feel stupid. ([Time 0:57:36](https://share.snipd.com/snip/cf2ed8a7-5ab4-4193-80cb-8bc328cc1473)) - **CS Gains Ground in K-12** - CS has earned recognition as a crucial K-12 subject, with bipartisan support and increasing funding. - This embedded status can be a foundation for broader education improvements if handled well. Transcript: Speaker 1 Well, it's hard to be excited because I'm like, I have business cards that say computer science education, carmudgeon. I need to find a partner so we can be like the statler and Waldorf, you know, being a muppet something up in the balcony and like ridicule everyone. I've always been like, hope for the best, expect the worst. It's not that I'm pessimistic. But I want to be prepared for that side. I think there are there are two things that really do excite me, but they excite me with concern. One is that computer science is becoming a real field at the K-12 left. I think that certain things are going overboard. There are some states that are doing better, some states that are doing worse. But the subject area has a seat at the table. And I think that's really important. And, you know, my hope is that it doesn't go the way of other education where we miss the boat on a lot of other things because we're newer. So maybe we won't. That's such an important thing because it's bringing opportunity, you know, like society, by and large, now all pretty much agrees. You know, there's like a bipartisan computer science resolution a couple of years ago. I mean, bipartisan anything is big that this is important for all of our kids. And I think that's one. And the related thing to that, and this is a little bit newer, is that, and it's not just for people becoming soft-range news. It's for everybody and it can be for the artist and the poet and the physicist and the historian and the author. Oh, yeah, also this operation. I think that's really exciting because when I started there were like, I was one of the only ones in New York. Certainly the only program in New York. There were a couple of other people and like, it was so few in between. It was a very unique school situation. And now it's, you know, now we have government resolutions. You know, we've got big funding for efforts. And I think that's a really exciting thing. ([Time 1:03:16](https://share.snipd.com/snip/0b1c96ea-4ee8-47f0-a939-02e024208667))