Monday, July 27, 2026

Designing STEM Experiences Where Students Want to Think

 Why will a student spend an hour solving a puzzle voluntarily, but resist spending five minutes on a worksheet?

This question has fascinated me throughout my two decades teaching physics and mathematics. The challenge in STEM education is not simply explaining concepts. We have developed countless ways to present information. The deeper challenge is creating experiences where students become curious enough to wrestle with ideas themselves.

The people who love STEM usually do not love it because they memorized formulas or followed procedures. They love it because of the ideas: the wonder of discovering how the universe works, the satisfaction of finding patterns, and the challenge of solving problems that initially seem impossible.

One of the most powerful ways to create that experience is through puzzles.

A good puzzle creates a different relationship with difficulty. When students encounter a traditional exercise and get stuck, they often conclude that they do not know how to solve it. But when students encounter a well-designed puzzle, being stuck becomes part of the process. An unsuccessful attempt is not simply wrong, it is information. It narrows possibilities, reveals patterns, and helps students build a better understanding of the problem.

This is very close to the way scientists and mathematicians actually work.

Over the past several years, I have explored what makes mathematical puzzles genuinely engaging. This last year, as part of that exploration, I designed and programmed six online math puzzles using GameMaker Studio and published them at mosaic-paths.com. Each puzzle focuses on a different mathematical idea, but the goal is not simply to practice a skill. The goal is to encourage different forms of mathematical reasoning.

For example, in Venn Diagrams with Unnecessary Lava, students work with multiplication, factors, and Venn diagrams. Those concepts are important, but they are only part of what students are learning. To solve the puzzle, students must form hypotheses, test their ideas, observe the results, and revise their thinking.

They are practicing the habits of scientific inquiry.

They also learn that mistakes are valuable.

To make progress, students have to become comfortable making bold attempts and occasionally being wrong. Each mistake provides information. The unsuccessful attempts are not failures; they are steps toward understanding.

Creating these puzzles has also changed the way I think about educational design. The first version of an activity is rarely the best version.

When I create a puzzle, there are always assumptions built into the design. Sometimes I believe something will be obvious to students, only to discover that it creates confusion. Other times, I expect students to struggle with an idea, only to watch them solve it immediately in a way I never anticipated.

Those moments are some of the most valuable parts of the process.

Student interactions provide the feedback needed to improve the experience. Each iteration is an opportunity to make the puzzle clearer, more engaging, and more intellectually rewarding.

This process has many similarities to scientific investigation itself: propose an idea, test it, examine the results, and refine the model.

This is one reason I am excited about the possibilities of immersive STEM learning. Technologies such as virtual reality are not valuable simply because they are new or visually impressive. Their real potential is that they can create environments where students explore, experiment, build models, and develop understanding through experience.

The future of STEM education will not come only from better explanations. It will come from creating better experiences—experiences where students are invited to be curious, where mistakes become information, and where solving problems becomes something they genuinely want to do.

That is the kind of STEM learning environment I have been working toward creating.


(Full Disclosure:  So I spent this morning writing up a cover letter.  There was a lot of nice develpment of ideas that should be in this blog.  And since I don't have a lot of time, I asked ChatGPT to make small changes to covert the cover letter to a blog post .  So... these are mostly my words.  And I approve this message, so to speak.)


Saturday, July 25, 2026

 I as looking at the code of Venn Diagrams with Unnecessary Lava, just to make a small change, and I ended up doing almost a complete rewrite.

I did actually make that change, it's in the most recent posted version.  I reduced the amount that the lava goes up for incorrect answers, because it was too severe.

I really should be working on the Google Classroom stuff.  Maybe tomorrow.

Tuesday, July 21, 2026

 One of my interim goals is to add a name mode to each of my puzzles.  This way teachers can use the puzzles as an activity by having students take a screen shot when they are done.  And having the screens show the student name and the levels, so that if teachers want to give credit for doing a part of a puzzle , then that's an option.

This is clunky, but until I get Google Classroom integration figured out, it isn't too, too bad.

On another note.  I just attended an online talk on Growth Mindset and it started me thinking about students fearing mistakes.  In Venn Diagrams with Unnecessary Lava, some levels have no pre-loaded clues.  In order to proceed, students must risk making a guess, and that guess might be wrong.  This seems pretty important.  I like the hypothesis testing for its own right, but this does something more.  

Currently I've seen a fair amount of teaching students by telling them about growth mindset.  But I doubt even the best spiels and the best inspirational posters are going to be as effective demonstrating the principle within an authentic learning activity.   There is something, I think, important here.  In a hypothesis testing activity, guessing wrong is part of the process, gaining us as much or almost as much information as guessing right.  


#growthmindset #stempuzzles #mathpuzzles

Thursday, July 16, 2026

 Main News:

The Algebra Cypher program is live for beta testing.  

My recent additions are: 

  • A jump button to skip to a saved level.  
  • A more interesting victory screen.
  • Temporary ambiance music.
  • Scaling clue font size for bigger clues.
  • A Canvas Quiz assignment lead in with autograding.

Next work:

  • Check each puzzle for awesomeness.  
  • Make an game play video.
  • Post to social media.
  • Add more sound effects.  Whoosh?  Celebration?  
  • Minor cosmetic fixes.
  • Level Complete Screens

Other news:

 The Water Drop Function Machine program is no longer being strange.  But the code I was using didn't seem different from the code I'm using now.  Just in different places.  So this means I don't understand something about what happened.

Wednesday, July 15, 2026

 My Water Drop Function Machine program is being very strange.  I think that's oing to have to be my next priority.  I'm getting puzzles that are far too easy for the level when I specifically coded for that to not happen.  And problems that look like they might be impossible.





 My college students found 2 glitches in my programs.  The first was easy to fix.  There was an issue in the program Impulse Control where if you placed and then removed the impluse arrows that the change in momentum still persisted in the box.  

The second is a mystery.  In Water Drop Function Machines, there was an error where the goal number in the bowl was "undefined".  I couldn't reproduce it, so I put in a kludgy line of code to put in a replacement problem if that ever came up.  In that case the overall function is y=2x+3.

I'll have to keep an eye out.

While I was there, I fixed a small issue where the water drops wouldn't be visible in the last stage.

Tuesday, July 14, 2026

 Orbit Simulation:

I was using the orbit simulation program last night with my college class.  I felt compelled to improve it.

Orbit circles are now aqua instead of dark blue, for visibility.

The trail of the satellites are now drawn using an array, instead of being a bunch of fading objects.  The situation before was making things far, far too slow.

I changed the basic speed increment from 0.1 to 0.05.  This gave better results for finding the right speed for the right orbit.

There is a new Canvas assignment that I'll post to Canvas Commons that uses more conceptual problems at the top and the more precise values for velocity.

Friday, July 10, 2026

 The interface issues are now solved.  Although, I should make them a little more intuitive.  When you use the arrow keys, they don't go on the the next row if nothing is there.

But the annoying glitches are solved.  I think the next thing is an intro screen and saves.  Then it will begin to be a functioning asset for teachers, especially as a sub day activity for a math (or science) class.

At some point soon, I need to get back to working on Google integration.  Ultimately, I'd like to have the same sort of integration that DeltaMath and Quizziz have.

This is where the teacher can assign a puzzle from their Google login to the class.  The assignment shows up on Google Classroom.  Students can access the puzzle from Google Classroom.  And when the students are done and score is populated in the gradebook for that assignment.

I think it's only with that level of low friction can I expect this project to have a chance to take off.

 Okay, I'm pretty excited about this.

I'm working on Algebra Cyphers and I made some nice progress today.  Well, nice for a day when I'm sick.

I'm going through each of the puzzles and (for some reason) I have better ideas now than when I first wrote them.  The new stage 5 is one of my best puzzles so far.

Also I've broken the stages up into 3 levels with 6 stages each.  And I've included the pips for levels and stages.  I don't have an end of the level celebration yet, but those usually aren't too bad to write.

There are some interface issues.  I've added direct keys functions to the game.  But when a tile is already there, the selection disappears.  I've included hitting enter for the check and next buttons, but if they are sliding in, they slide out at an angle.

But so far, so good.  

ChatGPT has been helpful, but I can see these puzzles are on the edge of its current capabilities.  By the time teachers might use this for a class, it might be good enough at it that there is an issue.  I think these puzzles are interesting enough to justify putting in the time, anyway.

Thursday, July 9, 2026

 I changed stage 6 to an entirely new puzzle.  The old one was okay, but I wanted to do something a little more interesting.  

I'm getting pretty close to placing this puzzle with the rest of them.  

Things to do:

  • Break up the stages into levels with stages.  Easy I'll use div and mod.
  • Include completion pips.  Easy, I've done this a few times before.
  • Bring in an intro screen with name and Canvas modes.  I should be able to this in.
  • Stage autosaves.  Same.
  • Other cosmetics:  A nice gradient background would be a start.  The victory screen could use some TLC.  Some subtle sound effects would have a nice effect.  I like the lava and the aurora in my other games, I wonder if I can make something nice like that.  Ocean waves?  Waterfall?  Waterfall would probably be better for Water Drop Function Machines.

 Fixed an issue with the answer array not refreshing when a wrong answer was checked.

Next, the check answer button needs to zoom away when it's not needed.

Wednesday, July 8, 2026

Working on Algebra Cyphers.
Added some juicy elements.
Added some minor randomization.  Minor, but an important addition to prevent students from easily copying off of each other.

 Alpha Version of Algebra Cyphers is Live

I've just launched the alpha version of the new puzzle Alpha Cyphers.

In this puzzle each variable letters each represent a number.  Using the clues and logic we can determine which letter represents which number.

For the first puzzle, the letters A through E represent the numbers 0 though 4 in some random order.  Usually, though, the lettes A through J will represent the numbers 0 through 9.



Tuesday, July 7, 2026

Next in the Project

 After I finish algebra cyphers, and then after I get more Google functionality, Water Drop Functions Machines should be next.

To make the levels more mathematically interesting, there needs to be two droppers and two bowls, with the same start and end numbers.  Then the students must look for two different solutions to solve the puzzle.

No more f(x)

While I was fixing the Water Drop Function Machine coding issues, I decided that instead of something like f(x)=2x, we just have 2x.

I think this will be less confusing for younger grades, and rusty students.


Fixed the Glitch

Fixed the issue.  There was a logic issue with the main control loop.  The process was twisted, so I completely rewrote it. It tests fine now.

Glitch in Water Drop Function Machines

 A student mention that there was an issue with the puzzle. There is, big time. Too tired to work on it tonight. 

Sunday, July 5, 2026

Strange Glitch

I found out the hard way that in GameMaker, the instance_place function doesn't, well, function if the object it's running from doesn't have its own sprite.  I spent an embarrassingly long time trying to troubleshoot this one for every other issue I could think of.

Friday, July 3, 2026

I have the sign in with Google set up.  Well, a bit.  The instructions didn't match the interfaces so it was really confusing, but with the help of ChatGPT, I was able to get through it.  And there were a lot of steps that weren't obvious.  And there were menu items in the Google interface that were hidden.  

And, and, and if I had to do it again I would probably be lots again.

I wonder if a different AI chatbot would do better.

The next step is to see if my programs I made in GameMaker can access the user name.

Starting on Google Integration

 


My puzzle Blocks and Pips is in pretty shape now.  The main issues are:

  • Some of the puzzle stages don't flow like I want them to.  They're okay, but...
  • The target tiles aren't visually distinct from the other tiles.  I've tried a few things but nothing has the look I want.  It needs to not confuse the idea that the tiles we are interested in are opposites.
  • I have ideas for new puzzles, but the app already has 18 puzzles.  Maybe I'll make the new ideas random variants of certain stages.

But I'll work on those later.  I need to add Google Classroom functionality to my puzzles.  That seems complicated, but I know I need to start with a being able to login with Google.

There are instructions for doing this here, so hopefully this won't be too bad.

Freezing Tiles

 I noticed that students were spam-answering puzzles, and so I put in a freeze effect when the answer is wrong.  The tile will thaw out, but...