Archive | Uncategorized RSS for this section

New Semester Musings

Well, I have successfully (?) survived my first semester at a startup school. It wasn’t always pretty, I’m a little bruised, but I have some changes I am ready to make. Here they are.

  1. I am determined to get better quality work from my students. I think the students I had in my venture project class enjoyed the course and made creative projects, but I was disappointed in the quality if I’m being very honest. Their communication products were especially poor. Without a good poster, presentation, or research paper to accompany your project, it kind of looks like a 4th grade diorama. And some of the projects even by the 8th – 10th graders kind of looked like 4th grade dioramas. As a staff, we came to some common understandings about what makes good research – and I will also spend some time digging up exemplars and industry examples that the kids can look to for inspiration. Communication will be a full third of their “grade” for their projects and I need to leave enough time at the end of the semester to work on this piece instead of squealing into the exhibition still throwing hot glue on a project.
  2. I’ve carved out my space. I really needed part of a classroom to call my own, and I kind of took over the makerspace in the school. I needed to feel like I had some ownership over my little section of the building, in order to take pride in the work that takes place there. I hung posters, organized all of the shelves, set up the 3-D printers and sewing machines, carved out some space for student projects, and I made little journals for the kids. We were in such a rush to open the building that a lot of this basic stuff just got left. Living in a pile of clutter and unfinished setup is stressful on its own. Now things are organized and set up and I am calmer. I also recognize that claiming space is a big part of what gives the kids ownership in the school, so I’ll look for ways the students can display their work and label their own areas.
  3. I set up protocols for the makerspace. Because of our disorganization last semester, a lot of our equipment was used carelessly. Students would just grab anything from jumper wires to knitting needles to impact wrenches and either use them incorrectly or fidget with them. For any equipment that is either dangerous or delicate, I’ve set up a 3-tier badging system. A level 1 badge means you can follow a basic tutorial to use the tool with support. A level 2 badge means you can use the tool independently. A level 3 badge means you can troubleshoot the tool and also teach others to use it. When you have reached level 3, you can use the tool without staff supervision and also teach other students how to use it. I posted lists of our students that have level 3 badges next to everything – the 3D printers, the sewing machines, the Glowforge, the soldering irons, the podcasting system. Currently the lists are empty, but as students level up, they can start using the tools independently and showing their friends what to do.
  4. I think I have the start of a really fun venture project. This quarter’s venture project asks the question “What does it mean to be a Maker?” I toyed with the idea of having the students make inventions that were purposeful and noble, but when I reflected on how I got started as a “Maker”, I realized I only started being able to make purposeful things after I had spent some time tinkering and making a bunch of crappy things. I needed to have the permission and courage to use tools to make things that were lousy but fun and interesting to me. So the secondary title is “Useless Inventions”. We’ll learn about Arduino and micro:bits and 3D printing, and we’ll visit Fort Collins’ Creator Hub, and as the kids’ final project they will make their very own Useless Invention. It should be joyful and interesting but it’s perfectly OK if it’s crappy. Making a few crappy, entertaining things will help them build resilience and grit in a non-threatening way. The inspiration is this TED talk by Simone Giertz. When I’ve pitched this idea to students, they have been VERY excited about it and rattled off a list of a few things they’d like to make. A jellybean cannon. A fantasy carousel. A jump-scare machine. A virtual aquarium. I want them to appreciate the Maker Mindset and get involved in the open-source community. The students will share and publish their projects, giving credit to whatever inspired them. They can publish tutorials on a site like “instructables”, or even make YouTube videos. I’ve got a formal planning document but that’s the gist of the project.

It’s late and I will write more about venture project and what I expect from math this quarter… I’ll do that part later. I see my first group of students tomorrow and I ought to get some rest.


Coding Camp and Hackathon

I am posting my CS Education week report waaaaay after CS Education Week – for someone who cares about CS like I do, this feels weird!

At Compass, our school leadership felt strongly that we needed some “teacher time” to wrap up semester 1 and plan for semester 2. They’re not wrong… we did need it. There are an awful lot of loose ends we never really tied up for the beginning of first semester, and we NEEDED to tie them up for second semester. Huge questions, like how will we give feedback to students, how will we measure them with respect to graduation requirements, levels of autonomy, competency and such. We didn’t even have clarity on basic questions like will we measure their content knowledge, core competencies, social-emotional intelligence or some combination… So yeah. We needed the time! During the past two weeks, the teaching staff at Compass met every day for a couple of hours and our main task was to assess every single kid. And we did. We spread rubrics all over a room at Colorado State and we had a conversation about EVERY KID. It was empowering and also exhausting, but I came away feeling like what we did was important and good. How great is it to say we know every single one of our 150 students, we know where they stand and what they need to do in order to graduate as a well-adjusted and competent member of society.

While we were assessing and planning, that left our school leaders and a bunch of volunteers with 150 students in the building for a couple of hours every day. So we ran a coding camp for the students, led by volunteers! It was so strange to not be involved in the coding camp, but I had to let it go in order to get our act together as a school. But it turned out to be a fantastic experience and I am so very humbled by what our volunteers and kids can do.

Our main volunteer for the coding camp was Karthik Palusa – he’s a CSU student and the owner of his own startup company in Fort Collins. He rallied some other volunteers and came in every afternoon for two weeks to run the camp. The structure was fairly simple. For the first hour every day, the kids did self-paced tutorials on coding at, Khan Academy or the coding environment of their choice. For the second hour, they worked with a team on a hackathon project. The project could solve any problem they wanted, but they had to collaborate and create something that went through the entire design cycle from identifying a problem through prototyping a solution. Many students coded webpages, Scratch games, apps on… some went a little farther and we even had some student groups make games in Unity. At the end, the students submitted their programs online. Karthik and a group of volunteers graded the programs and awarded prizes in three categories: younger beginner, older beginner, and intermediate / advanced. Some examples of winning programs included a math-education game, an anti-whale poaching game, an educational mobile app about climate change, and a Scratch animation about deforestation.

The kids had a great time. They learned so much. It was really liberating for me, honestly. I’ve been the only computer science teacher in a building for such a long time. Then here comes a group of volunteers and they prove that if kids have motivation, a chance to collaborate and be creative, and some support, they can indeed learn to enjoy coding. I’m really excited to take our program farther at the school, but look what an awesome head start we have. I was skeptical at first, but I would recommend this structure of a coding camp. You don’t need to have a staff with a lot of CS expertise to help children learn about computer coding. You can round up some helpful volunteers and some self-paced websites, add a competition and some prizes… and look what happens.

This coming semester, I’ll be teaching a venture project on “whimsical inventions”. The idea is to learn about the Maker Mindset. How to tinker, create, and make fun things just for the joy of making and sharing. It’s about building resilience and the ability to fail upward. And we’ll learn to code and create cool things with micro:bits and Arduinos. I’m very excited to teach real CS again and it should be a great followup to this coding camp experience.

Thank you to all of our volunteers and our administration for making the past two weeks happen. It was awesome.


First Semester Report

I’ve been teaching at my new school, Compass Community Collaborative School, for almost a semester now and thought I ought to process a little by blogging. It was exciting to open a new building – our school was an old thrift shop before we leased the building, and seeing it transformed as a school has been amazing.

Our main stage area. We spent the day before school assembling all the furniture!

What a whirlwind. Parts of the job are a more intense version of what I was doing as a public schoolteacher. I have four “preps”, essentially. Our morning schedule consists of intensives, and I teach math exclusively during these blocks. I have a section of Pre-calc, a section of Pre-algebra, and two sections of Geometry / Algebra II. I’ve been teaching these sections mostly with resources on Summit Learning Systems and then some resources I create. One take-away is that I really, really wish Algebra / Geo / Algebra II weren’t so heavily recommended as college prep courses. It is so difficult to make the classes authentic and hands-on, especially when the content is new-ish for me. My pre-calc class is working on a construction project making a parabolic trough solar oven, and we’ve done some interesting math around conic sections. I code a little bit with Geo/Algebra II using Khan Academy and we’ve explored quadratics using that tool. The real-world applications don’t just jump out at you though; you really have to work to create them.

My fourth “prep” is my astronomy / space exploration / robotics venture project. I made a decision early on to offer participation in FIRST Lego League and FIRST Tech Challenge as full-fledged venture projects. I am a big fan of the FIRST family of programs since they entail real world problem solving, a tournament which is also an exhibition of learning, and a full network of support. The setup has been a little challenging, since in my venture project group, I have some students participating in FLL, some in FTC, some doing neither but doing a project related to space exploration… and some students doing both. I believe very much in allowing for FLL/FTC participation during the school day; I think it’s equitable. But it really makes classroom management a huge challenge!!

I worked hard to give the students plenty of experiences outside the classroom; we went to the science museum’s planetarium, visited Colorado State’s science lab, had a guest lecture from an instructor at Front Range Community College, went to observatories, researched at the CSU library, toured the robotics lab in the Electrical Engineering department, and toured the manufacturing floor at Wolf Robotics. I did very little actual “teaching” and have mostly been coaching, facilitating, and guiding the kids through the design process. For our final exhibition in December, we’ll have robotics demos and a showcase of student projects related to astronomy and space exploration. I have kids working on their own science fiction novels, self-sustaining biospheres, treatments for the mental health of astronauts, hygiene products for space travel, scale model maps of Mars, Arduino-based robots and more.

So yeah, it’s been busy! Some parts of the school model have been slow in coming, and some parts have strayed from our original vision and we’ve had to do some hard course corrections. I don’t want to do a full analysis of it here – but our tiny staff is trying extremely hard to make this whole thing work.

As it’s the holiday season, my little break from reality is to work on my annual Ugly Christmas Sweater. This year I envisioned having an IoT-enabled sweater that people could activate from their phones. I ended up purchasing an Adafruit Flora, some Neopixels, a wearable Bluetooth LE module, and then reusing my LilyPad MP3 player from last year. It took me a solid day just to get a prototype working, but I love this kind of problem-solving and can’t wait to see the sweater actually come together. Once I get it sewn together, I’ll just have to finish “choreographing” some of the music. It’s difficult to choreograph without all of the neopixels sewn together, and it’s a pain to prototype all those neopixels with alligator clips.

Will blog when the sweater is done, I promise.

I will blog about our exhibition in December also. That will be a better time to process the successes and challenges of this semester!


Using the micro:bit radio in Python

I’ve been having fun getting to know the micro:bit with my students this year. I often plan lessons based on what they tell me they’d like to learn, and they were really intrigued by the idea of radio communication between micro:bits.  So I decided to learn about it. There is a “firefly” tutorial on the documentation page here:

micro:bit python radio documentation

But I felt what I wanted to learn was even simpler than that. I just wanted to know how to send simple messages, like numbers and text, between micro:bits. I ended up making my own little tutorial and maybe someone else will find it useful.

First, I had the students copy this program and download it to their own micro:bit.

from microbit import *
# must include these two lines to use the radio
import radio

# any channel from 0 to 100 can be used for privacy.

while True:
 if button_a.was_pressed():
 # send this message over the radio. Up to 32 bytes OK.
 if button_b.was_pressed():
 # if there's a message in the queue, retrieve it. Up to 3 messages
 # can be in the queue at once, and if it's full, messages are dropped.
 msg = radio.receive()
 # ALWAYS CHECK for None..
 if msg != None:
 # as long as there is a message, display something
 if msg == 'HAPPY':
 elif msg == 'SAD':


After the students downloaded the program, of course they started fiddling with the buttons to see if anything would happen. The buttons don’t seem to do anything on their own device, but they would notice their device would randomly show smiley faces and sad faces.  Eventually a pattern starts to emerge and students realize their button-presses are affecting the other micro:bits in the room. After a few minutes I ask the students to try and make my micro:bit happy, and they all press button A. They make my micro:bit sad by pressing button B. If a student or two can make inferences from the code, they change the code and make it send messages other than “HAPPY” or “SAD” and then my micro:bit, and the others, start scrolling strange messages. It’s hilarious and chaotic.

So next we look at the example code and dig into how the radio works. We analyze the program that’s already on their micro:bits and then, I help the kids write a very basic skeleton program that just selects a channel, sends a message and scrolls all received messages on the display. Students could use it with friends to send secret messages during class. They had fun making their skeleton programs and sending messages to me and each other.

Some students took it farther and started setting up a protocol for their micro:bits – a little agreed-upon system of communication between them. If one message is received, play a tune. If another is received, sparkle the LED’s and send a message back. This is a great direction to take future lessons – to chat about how we can make computers communicate with each other so the communication is efficient, flexible and free from errors in different situations.

I envision using the radio commands when we learn about looping and iteration. I’ve seen fun examples of games that use multiple micro:bits and think there is a lot of potential there!

I made a video with the basics of the lesson – maybe someone else will find it useful if you’re using Python with your micro:bit.




Great American Eclipse Report from Glendo, Wyoming

I spent the last 10 months (well, 9 years really) planning to take my family to see the Great American Eclipse. When I started teaching, in 2008, my mother gave me a computer program called Starry Night as a little gift for my classroom. I used it during a middle school astronomy unit, and discovered with my students that the next total solar eclipse that would be accessible to us would occur near Casper in 2017. I vowed to go see it. When I was able to zoom in on a map location, I decided Glendo State Park, right on the centerline and just off I-25 in Wyoming, would be a perfect location. As soon as reservations opened up in October 2016, I grabbed a campsite and urged all of my friends to do the same. Many families took the opportunity also, and a whole group of us reserved eclipse viewing campsites. We spent the last 10 months planning our equipment, our activities, our travel times. Finally the big weekend came!

My husband and I and our two daughters traveled to Glendo on Friday, August 18th. We traveled in very light traffic, just us and a few more than the usual number of RV’s, but nothing you’d notice. We brought our 1981 pop up camper and packed extra propane, ice, food and water. I brought my “eclipse box” with paper maps, our camping passes, eclipse glasses, stuff to make a binocular projector, a video camera with a filter, a white sheet for viewing shadow bands, contact times written down, and various tools for making pinhole projectors.

We had a lot of fun at camp on Saturday and Sunday. We rented a pontoon boat from the marina, and we brought some paddle boards as well. We enjoyed boating, paddling, swimming, and lounging on the beach. Jason went on a nice mountain bike ride. None of us had ever camped at Glendo before. It was just wonderful. We liked the campsites, we liked the lake, we liked the beach access.

On Monday, I woke up with the sun after a restless night sleeping. I had been checking the weather forecasts for days and watching them go from partly cloudy to sunny and back again, and things were looking really good for Monday now. We woke up to glorious clear skies. Made breakfast, cleaned up, grabbed the eclipse box. We had some debate over where to watch the eclipse. We could be up on the bluff or down on the beach. On the bluff, we could see the 360 degree sunset and catch both horizons. On the beach, we’d have shadows from cottonwood trees and be able to see the shadow rushing toward us over the lake. I really didn’t care as long as I experienced totality, and as long as I was with my friends. I wanted to experience it with people. In the end, the beach won out because the kids wanted to splash in the water while waiting. It was also very windy on the bluff top, and we thought the beach would be less windy.

The beach was not less windy at first. I set up my binocular projector and got out poster board for pinhole creations. The wind kept knocking down my tripod and I was so focused on problem-solving that I almost missed first contact.

We watched the moon slowly take bites out of the sun with our glasses and with my projector (when it wasn’t being blown over).  The kids made pinhole projects.

Pinhole projects the kids made. This kept us busy until close to totality!




An image from my binocular projector. Instructions here!


When the moon had advanced quite a bit, the wind died down and it became still. The light started to become strange and eerie. Over time, we noticed the shadows of the tree leaves became crescent shaped.

My friend Patrick had the good camera in our group, and he took a couple of pictures of the eclipse progression with a filter. (If you share any of his images, please give him credit.)


I set out a white sheet so we might be able to see shadow bands. Our solar eclipse timer told us to watch for strange animal behavior. The cicadas seemed to stop but it was hard to tell. We laughed because the dog started to become restless, wandering around and laying down random places. Did she think it was time for bed? Likely she was just tuned in to our heightened emotions and wanted some comfort.

We looked and looked for shadow bands, and a couple of minutes before totality, the quality of the light changed very suddenly and dramatically. The temperature dropped and it dimmed quickly. I never did see shadow bands because my attention was drawn to the opposite lake shore. There were colorful hot air balloons above the far shore to the west, and suddenly they were not colorful but dark, and we could see the light from the flames in the balloons like little candles across the water. We could see the darkness rushing toward us, and it was so exciting, like that moment a rollercoaster reaches the peak of a hill and you know you’re going to fall and you can’t do anything about it. The dark raced across the water, completely enveloped us – and we all screamed!

Here’s a short video of our reactions up until that point.

We took the glasses off and looked up, and I don’t know how I can find the words to describe what the sun looked like. When you see pictures of a total eclipse, you see a black background and a black disc and a white halo. This was so different and so strange and amazing!  The sky was a deep violet color, and above us was a strange, sharply defined black disc, an empty void, with a pink and white rim and white streamers glowing and flowing all around. They were huge streamers of light. It was bigger than I expected. It was the most beautiful thing I’ve ever seen, and I’m sure it’s the most beautiful thing I ever will see again. I’ve seen gorgeous mountaintop vistas and exotic cities, rainforest and ocean and NEVER seen anything that hit me right in my soul like the total eclipse did. I scanned the horizon and saw gorgeous orange and purple hues in every direction, and then Venus made an appearance in the sky. It was just glorious.

I did not take any pictures myself, but Patrick’s pictures are really good.


My ten-year-old daughter also captured video of her iPod, and although you can’t see the eclipse very well I just love everyone’s reactions… we are all in our own state of rapture here.


I could see the moon making its way across the sun’s surface, and again there was that rollercoaster feeling of an inevitable rush. The diamond ring was about to show. We saw a thin line of beads and then the flash of the diamond ring… how beautiful it was… and then glasses were on again and we had to come down from our excitement.

We were all in a frenzied state, talking furiously, hugging, crying. Everyone agreed this was incredible, it was worth any trouble in the world to see and we were so glad we had each other during the eclipse. We hugged and hugged and cried some more.

Some of us stayed on the beach a while, and others started packing up right away to try and “beat the rush”. We said our goodbyes and “joked” about the next eclipse in Chile and Argentina. Maybe we’ll actually do it! Jason and I and the girls dawdled a bit. We continued to swim and paddle, we ate lunch and later had dinner at Rooch’s Marina down the road. We could see the interstate the entire time from our campsite. It was stop-and-go the ENTIRE time. We told ourselves we would leave when the traffic thinned a bit, but it never thinned. Eventually we decided we couldn’t delay the inevitable and we left at 6:50pm. We were starting to get texts from friends about the journey from Glendo to Wheatland taking hours. But we felt if we took back roads for as long as we could, we would be OK.

To make this long story shorter, we took back roads as best as we could. We got one flat tire, took an unmaintained dirt road that resulted in way more stress than it was worth for the time it saved, got on the interstate for a couple of miles, gave up because it was horrible, took state route 34 down to Laramie, fueled up there, got stuck in more stop-and-go traffic south of Laramie and finally got home at 12:15am. It is normally a little over 2 hours to Glendo and it took us 5 1/2 hours including the flat tire. Our friends that left earlier ended up taking 8, 9, even 10 hours to get home to Denver. The traffic was relentless.

It NEVER let up.

Gas stations started to run out of gas. Google Maps was really confused as it insisted we were always 3 hours from home no matter how long we drove. I think the eclipse day traffic broke Google Maps’ estimation algorithms. It couldn’t fathom that many people driving out of Wyoming all at once.

We didn’t care. The total eclipse was completely worth all of the trouble and the ridiculously long drive. I have no regrets about the state park, or the beach viewing location or the photography or anything. It was the most incredible event I’ve ever been a part of. I thought I knew what awe was. I had no idea. That was awe in its purest form, the most beautiful thing you can imagine.

Some people feel small when they look up at a night sky, but I feel big. I look out and notice all of that matter, the random atoms that are spewed out by stars and make up everything we can see. And I think about how I’m made of a lot of those random atoms, and yet I’m here and conscious and looking out at all of it and taking it all in. What a privilege to be alive here, on this planet, and looking out at all of the other stuff in the galaxy and beyond, being part of this living, breathing universe and wondering what else might be out there.


Thanks so much to Patrick for the awesome pictures.  Thank you to my husband Jason for being a wonderful partner on this journey and enjoying it right along with me. Thanks to my kids for humoring their nerdy mom and agreeing that everything was worth it. Thanks to my awesome Glendo camping friends for the incredible weekend and viewing experience… I wouldn’t have had this any other way! Thank you to my fellow eclipse-chasing friends on the internet for all that you have taught me and for encouraging me to make the journey!! I am so glad we went, and I can’t wait for the next total eclipse.

Great American Eclipse 2017


Image: By Wolfgang Strickling [CC BY-SA 2.5 (, via Wikimedia Commons

There’s a big event coming to the USA on August 21st of this year, and I’ve been looking forward to it for a decade – ever since I heard of it. We get a coast-to-coast total eclipse of the sun, and many, many people live within a day’s drive of the path of totality.  One of my favorite places to get info about the event is largely because I love their Google Map of the path, provided by Xavier Jubier, here.

As soon as camping reservations opened up along the centerline, I pounced and made our reservations. Many people are just learning about the eclipse now, however. I have started educating my students about what an eclipse is and why they should get to the path of totality on eclipse day. Every so often, I see a news story on my social media about the eclipse. It will start to get big, and I am sure many people will decide last-minute to get to the path of totality to take it in.

Since Denver and the front-range cities are within a day’s drive of the path, I wanted to use this space to share what I’ve learned about accommodations for viewing the eclipse.

If you live in Denver or Northern Colorado, you’re most likely thinking of heading north along I-25 to Wyoming to view the eclipse. Totality will occur along I-25 starting at Wheatland, all the way through where the interstate bends west and goes through Casper, then about 30 miles north into the wide open country. Most of the eclipse path in Wyoming has excellent weather prospects, so we’re lucky to have prime viewing areas so close to us!

Although Wheatland is on the southern edge of the path, most of town will still see almost a minute of totality. Recently, there were still hotel rooms available in Wheatland (although a couple of the hotels were charging premium rates, roughly $500 per night).

Just northeast of Wheatland is Grayrocks Reservoir. There’s a map of the reservoir here.  The reservoir has primitive camping, or you could bring your boat on the lake and watch the eclipse from the water – or just drive up for a daytrip as it’s less than 3 hours from Denver. It will probably be less crowded to be farther away from the interstate, and this short jog northeast brings the time of totality to almost 2 minutes.

If you keep going east past Grayrocks Reservoir, you reach Fort Laramie, and then Lingle and Torrington. Fort Laramie is a National Historic Site run by the National Park Service. Torrington has camping, hotels and restaurants. The corridor from Wheatland through Torrington can be reached in less than 3 hours from Denver, and being on the southern edge of totality, this area may see smaller crowds and give you better mobility than areas on the center line. Yet you’ll still see a total eclipse for 1-2 minutes.

Continuing north on I-25 past Wheatland, you get to the Guernsey exit. Guernsey is about 15 miles east of I-25 and is home to a state park on a reservoir and historic Oregon Trail wagon wheel ruts left in the sandstone. The camping at Guernsey State Park is booked, but there is a golf course RV campground and a couple of motels. The Wyoming State Park system is offering day passes on its website. You can use one of the day passes to get in to any state park on the path of totality – Guernsey, Glendo State Park a little farther north, Edness K Wilkins State Park in Casper, and Boysen State Park near Shoshoni. This would give you guaranteed parking wherever your eclipse-day plans end up taking you, and you’d have access to the state park programs such as ranger talks.

Further north on I-25, you arrive at Glendo. Glendo is home to another state park on a reservoir, with the same day-pass program as Guernsey. Camping there has been booked for some time. Glendo is where the centerline of the path of totality intersects a major interstate highway going north from Denver. It’s still less than 3 hours away from Denver, and as such I expect this will be a very popular location as long as the weather looks good! Glendo is doing a lot of preparation for the eclipse. The town only has a population of 200 people – but it will likely swell to tens of thousands on eclipse day. Is it possible it could be hundreds of thousands? The state park will be busy, with hikes and ranger talks, boating and camping, and the main attractions will be at the Glendo Airport right next to the interstate. This will be the main viewing area along with vendors and exhibits. The school will also have eclipse exhibits.

If you decide to keep going on I-25, you get to the Orin exit, which has a rest area but limited facilities otherwise. If you go east from here and leave the interstate, there will be roadside stops but no actual towns – and you get to experience the vast openness and nothingness that is most of Wyoming. The first town of any size is Lusk – although in the northern part of the path of totality, Lusk will still see almost 2 minutes of the total eclipse. The town website for Lusk doesn’t indicate any eclipse events yet, so I don’t think they are doing a ton of planning or expecting big crowds. The biggest groups they may see will be people migrating south from the Black Hills area of South Dakota.

Continuing on I-25 from Orin, the interstate bends west and follows the path of totality through to Casper. Douglas and Glenrock are towns along this route, with lodging, viewing areas, and eclipse-related events planned. One charming stop might be Ayres Natural Bridge, a rock formation in a county park south of the interstate.

Casper will be an eclipse hotspot, as the first really sizable town north from Denver, with great weather prospects and the presence of the AstroCon convention. It takes about 4 hours to get to Casper from Denver, making it still doable for a daytrip for people who leave really early. Lodging in Casper has been booked for quite some time.

Finally, an additional option for people heading up for a daytrip from Denver would be to stop in southwestern Nebraska. Scottsbluff is on the southern edge of the totality path, but Scotts Bluff National Monument will still see 1 1/2 minutes of totality. The communities of Scottsbluff and Gering, along with the National Park Service, have set up viewing events and plenty of parking and free eclipse glasses. There is also a beer and wine festival in downtown Scottsbluff. This area promises to have a fun, community-wide celebration with easy in-and-out access to Denver and Colorado’s front range. In addition, Agate Fossil Beds National Monument is located in a more remote location north of Scottsbluff but will see a longer eclipse. Finally, the area around Alliance, home of Carhenge, the quirky replica of Stonehenge made from cars, will have about 2 1/2 minutes of totality and has plenty of community events planned. Intriguingly, there’s a music festival named Toadstock: Party on the Prairie. Still tickets available and free camping, and close to the centerline of the eclipse. I found a couple of other lodging options but don’t know how full they are. Viewing areas in Alliance will be available in several locations. Scottsbluff is almost exactly a 3 hour drive from Denver, and Alliance is 45 minutes northeast of there.

I made a Google Map with the information I know about eclipse viewing, lodging and events in southeastern Wyoming and southwestern Nebraska. I did not include Casper in the event map, but focused on everything within a 4-hour drive of Denver. This is my first total eclipse, but I can tell I am going to want to make it to another. If you possibly can, get out there.


I got resources from these websites:
Converse County WY Eclipse Map

Goshen County WY Eclipse Map

Glendo Eclipse

Carhenge Eclipse 2017

Get solar glasses and eclipse viewing tips here:
Solar Glasses

Viewing Tips


Eclipse Chaser blogs:


And if you’re a teacher, start talking to your students, your district and your parent community about this as soon as you can. The eclipse will be seen throughout the entire USA and you’ll want to make sure all of your students have a chance to view it, get glasses and/or make pinhole viewers. The students may or may not be in school when the event happens, so encourage your school district to make plans now.



Binary Code

For my computer science class, Unit 1 is going to be about how computers work and how they use data.  I first gave a poorly-written pre-test. It contains bits of recall and procedural knowledge and is not a test of critical thinking or problem solving. But I gave it because writing the assessment helped guide me in understanding the scope of Unit 1, and it will give me at least some evidence of what kids learned during the unit… important stuff in a world of data-driven teacher evaluations. Plus, it’s easy to grade, important stuff in a world of 160+ students.

Computer Architecture and Data Pre-Assessment

I made a decision to start by introducing binary code and the rationale behind it: that it’s easy for a computer to “tell” if electricity is flowing or not flowing, and harder to decode an analog value – so a code based on switches that turn on and off makes a computer’s job easy.

I showed the kids a ribbon cable.


There are a few dozen wires running parallel to each other. Each one can have an electrical pulse that is either on or off – a 1 or a 0. A code made up of 1’s and 0’s goes through this ribbon cable. You can send any information you want if you can write a code for it made of 1’s and 0’s.

I held up a card, blue on one side and white on the other. I asked the kids if I could answer a yes/no question with it. They agreed pretty quickly that blue might be yes and white might be no (or vice-versa).

Next I asked them how many cards I would need to answer a question that I could respond with yes/no/IDK. At first the group thought I would need three cards, but when they thought about it, a group of kids persuaded everyone that 2 cards would do:

Yes = BB

No = WW

IDK = BW  (or WB)

So you can represent three different codes with 2 cards.  Next I offered a challenge.  I asked the kids if they could come up with a code for the digits 0-9 using the cards. They would have to use all of the cards for every code (after all, a computer can’t choose how wide the ribbon cable is).  They partnered up, and I said when they had a strategy, they could come to me and tell me how many cards they would need.  Some groups said they needed 3 cards.  Some said they needed 4 or 5 or 6.  One group said they needed 10 cards.

Me: 10 cards? You don’t think you could come up with 10 unique codes with less than that?
Student: Well, ok.  5 cards then.
Me: Here’s 5 cards.

After a few minutes, some groups who had originally taken 3 cards approached me and said they needed another card.

Me: You need one more?
Student: I can only get 8 codes with 3 cards.
Me: How many codes can you create with 4 cards?
Student: Uh.
Me: Let me know when you find out. Here’s another card.

Students developing binary codes for numbers

Students developing binary codes for numbers.

I found out that I hate the layout of my room for group work. I’m in a computer lab with fixed workstations that I can’t move. All the stations face the front of the room. Just awful for putting your heads together over writing or for walking around between groups.  I was able to converse with some groups, but I wasn’t even able to see how many groups were disengaged or doing other things, let alone intervene with them – I need to think hard about how group work is going to work in there.

Here were some of the conversations I did have with kids.
Me: Were you able to make a code for 0-9?
Student: Yep. Here it is.
Me: I see. Very systematic approach. How many codes could you make total with 4 cards?
Student: 16.
Me: Tell me why you think so.
Student: Because you do 2 for the first card, and then x2x2x2. It’s like that problem where you have to pick how many outfits you can make with the 3 sweaters and 4 pairs of socks and so on.


I also found some misconceptions, and I will need to check back in the coming days to see if they’ve been fixed. Why does this student think this?
Me: Why did you need 4 cards?
Student: Because I could only get 9 codes with the 3 cards.
Me: Tell me why it’s 9 codes.
Student: Because that’s 3×3 which is 9.
Me: Can you show me what all 9 codes are?
But then of course we ran out of time before he could show me.

Anyway, when we were done, as a whole class we shared a couple of solutions and processed how many codes a computer could make with 4 bits (16), 5 bits (32), 6 bits (64), 7 bits (128) and 8 bits (256).  I asked the students if 256 seemed to be a common and popular number and if they were starting to understand why computers liked this so much.  It’s the number of different codes you can make with 8 bits, which makes a byte. 4 bits has a cool name too – it’s a nibble.

I introduced binary place value to the kids using a place value chart. I wish I knew how to have them “discover” this on their own (is it important for them to?).  I know I was taught directly, and I know my understanding of place value improved dramatically when I actually understood other number bases.

Binary Place Value chart

Binary Place Value chart.

I showed them how to convert some decimal numbers to binary, like 3, 19, and 30. The kids were SO excited by this. I told them we were going to do a worksheet tomorrow and their eyes lit up. I’m not kidding. A student approached me after class and said “I think I get this and I was wondering if you could give me a little extra challenge tomorrow.”   I said “Maybe another method like base 3? Where you have the digits 0, 1, and 2?”  He said “Yeah, I’d like that!”

I had a great day and I love my job.

Number bases are not explicit in the Common Core standards, which is a shame in my humble opinion. You feel so smart when you get a different number base. But if you wanted to do a lesson like this one and attach it to CCSS, you could use this one.

Find probabilities of compound events using organized lists, tables, tree diagrams, and simulation.


Presentation for Reinventing the Classroom

I’ve attended a virtual conference before, and now I will be a first-time presenter!

My presentation is called Authentic Learning in Math through Computer Coding: Turning Consumers into Creators.

It will be Thursday, May 1, at 5:00pm Mountain Daylight Time, through the Reinventing the Classroom conference.

To tweet about it before, during, or after, use the hashtag #reinvent14.

I’m really excited!  It’s a subject I’m really passionate about, and I am looking forward to connecting with other educators who are also interested in coding as part of the core curriculum.

Here is my slide set.  It contains active links you can follow, to a bunch of documents and coding activities I am sharing.

My Twitter handle is @DuPriestMath. Please get in touch – I would enjoy the dialogue!

I hope to see you there.


Ratio and Proportion


In my seventh grade math classroom, the second unit we studied was on the power standard of “proportionality”. Students had learned about basic programming commands and how to use the coordinate grid. Their learning would be more powerful, I decided, if they had the opportunity to use the ideas of ratio and proportion with variables in a computer program.  A common task is to scale quantities, or images, up or down to make sense of a situation.  It’s a great fit for computer programming.


  • CCSS.Math.Content.7.RP.A.2 Recognize and represent proportional relationships between quantities.
  • CCSS.Math.Content.7.RP.A.2b Identify the constant of proportionality (unit rate) in tables, graphs, equations, diagrams, and verbal descriptions of proportional relationships.
  • CCSS.Math.Content.7.RP.A.2c Represent proportional relationships by equations. For example, if total cost t is proportional to the number n of items purchased at a constant price p, the relationship between the total cost and the number of items can be expressed as t = pn.

I really focused on the last standard, representing proportional relationships by equations. Variables are a new concept to middle-schoolers. It’s also one of the most important concepts in computer science, so there is great synergy there. I would focus on the use of variables and how you can use them to represent a proportional relationship. I wove these lessons in with our usual math lessons on proportionality.

1) Fractions, Ratios, and Rates starter:  To give the students a chance to explore proportionality and how it can be represented graphically, I gave them three simple programming tasks:  Draw 3/5 of a circle.  Draw two rectangles in the ratio 1:2.  Show with a diagram that I have taken 5 friends to a movie for a total cost of $75.  The students needed to use the built-in documentation to learn how to draw arcs and rectangles, and work in workgroups to accomplish the task.  It took about an entire 90-minute block, but almost everyone was successful.

FRACTIONS, RATIOS, and RATES starter program

2) Proportions and variables: Students had done a few activities involving variables and programming in the previous unit, so I wanted them to explore using variables in a proportional reasoning setting.  I gave them the Population Program which is a troubleshooting activity.  It shows two bars representing the populations of two cities, but one is clearly an incorrect length.  I asked the students to fix the program so the bars correctly showed a comparison between the populations of the two towns.



The activity had many correct ways of solving it, and a few incorrect ways that *looked* correct, which I didn’t anticipate at first!  I found the populations of the two towns on Wikipedia, and conveniently, the population of Greeley is almost exactly 5/8 of the population of Fort Collins.  The program starts with this code:

// the population of Fort Collins (Wikipedia)
var pop_ftc = 148612;
// the bar for Fort Collins goes all the way across the screen
var bar_ftc = 400;

// the population of Greeley (Wikipedia)
var pop_greeley = 92889;
// This looks wrong.How long should the bar be for Greeley?
var bar_greeley = 10;

In the picture, you can tell the bar for Greeley is way too short.  The students started by adjusting the variable for “bar_greeley” until it looked about right.  When looking at a visual, I was surprised at how good their estimation skills actually were when dealing with these numbers.  Most students understood that Greeley’s population was more than half of Fort Collins’, but not more than 3/4, and they adjusted it approximately correctly.  Some students just left it there and called it good.

One possible solution, which many students landed on, is to divide 148612 / 400 which tells you the scale factor from the bar to the population. In this case it’s about 371. They would then divide Greeley’s population by 371 and get about 250, which is a proportional length of the bar for Greeley.

Another possibility is to divide Greeley’s population by Fort Collins’ population, and notice that it gives you the ratio of 0.625.  Greeley’s bar, then, must be 62.5% of the length of Fort Collins’ bar, so they could multiply 0.625 by 400 and get a correct length of 250 for Greeley’s bar.

A third possibility is to divide BOTH Fort Collins’ population and Greeley’s population by 400.  This scales both populations down to number in the hundreds, and since you divided both populations by the same amount, the ratio remains the same (there’s a connection with equivalent fractions).  Fort Collins’ bar changes to a length of 371 and Greeley’s is a length of 232.

So here’s the common mistake many students made which was devilish to sort out.  They simply divided Greeley’s population by 400, because that number shows up in the program right above it.  The result was 232.  When you set the bar length for Greeley to 232, it *looks* correct.  It’s more than half of Fort Collins’ bar, but not more than 3/4, and visually it seems just about right.  But the ratio between the bars is now no longer the same as the ratio between the populations!  The answer is close but the process is completely wrong. Helping students to sort out why this was a mistake was really tough when they’re still novices at abstract thinking.

Some students used variable expressions to solve it, but not many.  It turned out mostly to be a calculator activity, which was fine because that’s where they were when we tried it.  I LOVED that it tested their estimation skills and gave them instant visual feedback about whether they were on the right track.  It taught me a lot about where they were with ratios and proportions. We had a great discussion.

3) Our final unit project was pretty open-ended, but I wanted it to be creative and fun.  The students had to create some kind of diagram, based on real data, that would show proportionality.  I showed them some examples and a rubric from a Google Doc, here.

RATES, RATIOS, and KHAN project

The project had some requirements that were non-negotiable.  It had to use variables to represent quantities.  The ratios had to be calculated using variable expressions.  It needed to represent the data in a way that was proportional to the collected data.  They had to explain what math they did, what they learned about proportionality, and why their graph was proportional to their original data.

The kids got really excited and started doing research.  For many, they created tally sheets and did class surveys on whatever they were interested in : favorite sport, favorite color, number of pets.  Some made Google forms to collect data.  Others did research online about what they were interested in: annual salaries for their favorite careers, populations of cities, or the number of domestic pets in the country.  Still others collected data in other ways: a popular project was to open a bag of candy and count the different colors.

Creating the graph with variables was more challenging for some kids than others, but it was extremely cool to see that moment when the light bulb went on and they realized the power of variable expressions.  If the number of skittles is “s”, and your bar has a length of “s * 12”, you can modify the number of skittles and the bar changes proportionally.  The other bars change proportionally.  It’s funny how very exciting that little insight was.

Some kids really challenged themselves to do hard math by creating pie charts which require pretty complicated variable expressions.  They were awesome projects.

Here are a few of the best ones.
Sports Salaries by Jack C.
Hours Danced by Mackenzie L.
Art Supply Costs by Annabeth S.
Cook Vs. Photographer by Jace C.

I included Jace’s project for a reason.  Jace struggles with writing and started off the year labeled as a struggling math student. He had a very difficult time with this project, but he was really engaged by the topic – he had been thinking a lot about becoming a cook or a photographer someday, and he was curious who made more money.  He did a little internet research and determined a photographer makes about $250-500 for a really good photo, whereas a really good cook can make $140,000 a year.  I sat down with him and conferred for a LONG time about what math needed to be in his program to make a graph reflecting the salaries.  Using the data, how much would a cook make in a month?  How many photographs could a photographer count on selling in a month?  The bars went off the screen, so he played with scaling the bars down until they were both easily visible. Because he struggles with writing, it was a challenge to get all of the thoughts in paragraph form for how he did the project – so instead, I had him give a presentation to our math department about programming and what he learned.  He did an INCREDIBLE job.  He explained everything so thoroughly and carefully – he knew exactly why he did every operation and what it meant – he explained variables and how they worked, and gave the department a tour of Javascript and how to program.  His most powerful insight?  “Before this project, I didn’t really understand division, but now I do.”

I gave the students a survey to find out what they thought of the Rates and Ratios project.  68 students answered the survey.  The project was:

Survey of what students thought of the project

Survey of what students thought of the project

The most popular response was “fun” which about 2/3 of the students gave.  I don’t have reference data to see what students think of non-programming math projects: are they fun?  But I was encouraged by the results and really loved what this project did for my students when it came to proportional reasoning and variable expressions.



Coding In Math Class!

Welcome! I started this blog as a repository for teacher resources on programming in the math classroom. I’m a former software engineer – turned – teacher, and when my classroom became a 1:1 technology classroom, I made a decision that I was going to introduce every kid to programming and teach them how to become better mathematicians through programming.  Not every lesson has been successful, but I have continued to try, and this year, some amazing things have been happening in my 7th grade math class.  Kids create abstractions and models.  They tinker. They visualize. They ask questions about how to go deeper into a math topic.  They get frustrated, and they persist, and they try harder, and they eventually succeed and feel the true joy of accomplishment, and they want to share with others what they did.  They can articulate what they learned, how they learned it, and what the math in the program does – because they created it.

I welcome your contributions, questions, and feedback.  I hope you decide to come along on the journey.  You won’t regret it!