What It Means
Understand the problem, find a way to attack it, and work until it is done. Basically, you will find practice standard #1 in every math problem, every day. The hardest part is pushing students to solve tough problems by applying what they already know and to monitor themselves when problem-solving.
Computer Programming Teaches Perseverance
Computer programming is 95% logic. The computer has zero tolerance for unclear thinking, poor planning, and vague formulation of ideas. To solve a problem, the algorithm needs to be crystal clear, and the program accurate and flawless. The smallest glitch means a complete failure. Both the Karel and Python programming courses are self-paced, meaning that students need to solve the given task in order to proceed to the next level. Students are challenged. But with rewards and certificates waiting, they always want to go to the next level.
Computer programs hardly ever work the first time. Students learn quickly that trying harder without thinking does not help. They learn to go back, analyze where their thinking was wrong, and make adjustments. This teaches them critical thinking, systematic problem solving, and lots of perseverance.
Although NCLab courses are self-paced, the instructor still plays an important role, encouraging the students to trust in their abilities, to think, and to persevere solving problems.
3D Modeling Teaches Perseverance
Grace knows what she wants – a 3D print of a Chinese pagoda model. Building such a complex 3D model using just simple shapes and geometric operations takes lots of time, effort, and an extraordinary amount of perseverance. In the process of building their 3D models, students acquire an extensive knowledge of geometry and set operations – they are working with 3D point sets and Venn diagrams all the time – without even noticing. How could this be learning, when it is so much fun?