3 ms·
While I agree that it's important to stress the differences between code and CS, I still believe that, at an High School level, it's better to teach how to code
by JD557 13y ago
While I agree that it's important to stress the differences between code and CS, I still believe that, at an High School level, it's better to teach how to code instead of CS.
Programming is a practical skill. It's easier to engage kids with it and it will probably be more useful to them in the future. It's hard enough to engage kids with practical stuff ("I'm never going to need X, I'm going to become a Y"). I just don't see most HS students interested in data structures, algorithms, and complexity analysis.
I would rather see a bad programming course where the students actually learned something instead of a good computer science course that most of them completed by memorizing exercises, cheating, etc.
- highwind 13y agoIf you believe that the only role of schools is to teach useful skills, then you are correct. But I believe that the role of an educator is more than that. School should teach our kids to see the world for its beauty and to understand how it works. Practicality of subject material should not be a factor in what we teach our kids. There's a reason why we should teach Shakespeare, proofs in math, music history, kickball and beauty in algorithms. Teaching our kids useful skills is important, but as a Teacher, I believe it's more important to instill in them the eyes and tools to see and appreciate the world around them.
- p4bl0 13y ago> If you believe that the only role of schools is to teach useful skills, then you are correct. I believe the role of schools, especially before and during high school (it's another matter for college/uni) is rather to teach basic skills (read, write, count, know a bit how the world works and how to think) and to teach how to learn, and also what exists that could interest you. Teaching only useful skills is very simplistic and even seems to me like a bad idea, and I think you demonstrate why in the rest of your post.
- p4bl0 13y agoWhy should CS be treated differently than other sciences? The physics courses in high school are not civil engineering courses, the chemistry courses are not cooking classes, etc. Or do you think those should be changed too?
- Iftheshoefits 13y agoFor starters, I'd say CS is better described as a branch of applied mathematics rather than a science like chemistry or physics, if one wants to associate it with any academic category at all. Moreover, "coding" isn't really "applied computer science" in the way, e.g. electrical engineering is "applied physics of electromagnetism." In fact, one doesn't need to know or understand even the first thing about CS in order to be an extremely effective programmer. The same isn't true about most engineering:physics/mathematics analogues.
- aangjie 13y agoIt's a false comparison. Algorithms, and data structures don't have a ready, real-life examples, that a new kid from middle school can already relate to. I suppose, you can point to facebook and google and try to explain the infrastructure behind them, but he still doesn't have a way for the kid to play with and see the consequences. I also think there's a false dichotomy implicit in your question.
- edent 13y agoReally? Did your teachers never say "Ok, everyone line up in height order"?
- aangjie 13y agoReally? Have you ever seen kids younger than High school, move about in response to that?
- p4bl0 13y agoActually, you learn your first algorithm in elementary school, you just call it "doing an Euclidean division by hand". You're first data structure comes a bit later, in middle school, with vectors. That are just the first among those that I thought of, there are many more.
- aangjie 13y agoMy point still stands. You don't run into Euclidean division when you're running back home. You don't see vectors when you're waiting for the school bus to take you home. You never see Binary trees, when you're out playing. But you do see buildings and some being constructed. Not to mention the legos game. Aka, the abstractions to concreteness is harder in CS than in Civil Engineering. It still might be a good strategy to teach some subset of all students, but as general policy for the majority it'll be horribly ineffective (I think).
- deleted 13y ago[deleted]