Hate to be a killjoy, but I just looked at one of the Code.org activities for programming turtle graphics in App Lab.
As someone who has taught various dialects of Logo to kids and teachers for 34+ years, I was horrified by the missed learning opportunities and design of the activity. My concerns are in lesson/interface design and lost learning opportunities.
https://studio.code.org/s/cspunit3/stage/2/puzzle/1
First of all, you connect any blocks and then hit Next. It doesn’t matter if you solve the actual problem posed or not.
Second and MUCH more importantly, ALL of the power and intellectual nutritional value of turtle geometry is sacrificed in order to teach a much simpler lesson in snapping blocks together in service of “efficiency.”
The power of turtle geometry is well – geometry, also measurement, and number. There are no numerical inputs to the turtle geometry blocks and all of the turns are in 90 degree increments.
The use of Javascript (presumably the blocks were added to the environment for this exercise and are not actual primitives) adds needless and confusing punctuation to the command structure WITHOUT the benefit of allowing users to change the input to FD or LT. Therefore, any opportunity to explore powerful mathematical ideas
As we approach the 50th anniversary of Logo and are celebrating the 35th anniversary of the publication of Mindstorms – Children, Computers, and Powerful Ideas, it sure would be nice if Code.org would learn some fundamental lessons of children, computers, and powerful ideas instead of depriving kids of an opportunity to learn mathematics while learning computer science.
Discussion:
Since posting the above statement to a CS discussion forum on Facebook, Hadi Partook – founder of Code.org responded as follows.
Gary, the goal of this course isn’t to teach turtle programming. Most of the students in our course sequence would have done that years earlier. This is a high school course to introduce students to JavaScript (including the syntax) and making apps. It begins with a few turtle stages because turtle programming would be familiar to these students as a concept fully explored in our CS Fundamentals courses – including all the geometric glory you mention, and problems that tell you whether you solved them or not. In our high school course the theme isn’t “solving puzzles” because it’s about “making apps,” with just a few turtle examples to carry forward from something students already know.
- Low engagement
- Limits on student creativity, exploration, and tinkering
- A missed opportunity for students to learn/use mathematical ideas while learning Javascript
Veteran educator Gary Stager, Ph.D. is the author of Twenty Things to Do with a Computer – Forward 50, co-author of Invent To Learn — Making, Tinkering, and Engineering in the Classroom, publisher at Constructing Modern Knowledge Press, and the founder of the Constructing Modern Knowledge summer institute. He led professional development in the world’s first 1:1 laptop schools thirty years ago and designed one of the oldest online graduate school programs. Gary is also the curator of The Seymour Papert archives at DailyPapert.com. Learn more about Gary here.