The New School Year

September 25, 2020

It is going to be rough.  We are back full-time face-to-face.  Masks and as much spacing as possible.  Staggered lunch time, one-way halls, a lot of classes outside and whatever we can think of to make things as safe as possible.  Only two of our 165 students are remote.  They both have medical issues that would greatly increase their vulnerability.  All that is not the rough part.  The rough part is the environment in the school.  It is not bad, it is just different.  The traditional closeness in our school is restrained.  A lot of our social groups are broken.  The lunch gangs are no longer.  I expect this to be the new normal for quite a while.  It is interesting how quickly the kids adjusted to this.  No need to constantly pester kids about their masks.  They just do it.  At least in school.  Spacing is an issue but we have spread desks out as much as possible and we now have four lunch shifts when before there was one large crowd in the lunchroom.  The kids are least crazy about that.  Friends are not able to eat lunch together.  They used to be able to eat lunch in a classroom but no more.  Covid cases are on the rise in Missoula but so far we have had nothing in the school or with any contacts.  We do not think this will last but while it does we are sticking with face-to-face five days a week.

 

Dull pencil

September 5, 2020

I have known for years I am not the sharpest pencil in the box.  I regularly do really stupid things.  I proved it again this year.  My principal made sure I was only teaching four classes out of an eight period schedule.  The other four periods were to do my IT job.  I am the school’s only IT person and she figured I would have a busy year with the possibility of going remote and some of the other changes we are going through.  So the counselor comes to me with a story about a really sharp kid who wants to take my Unity course.  The only time he can take it is during one of my free periods.  OK, no problem.  Only one kid and only one period.  The kid is really sharp and is already trying to do things I do not know how to do in Unity.  Cool stuff so this independent study is now a one-on-one full time class.  I still have three periods for IT work.  Then I accidentally stumbled across the Unity tutorial “Real-time Animated Story Telling”.  Really cool.  We can make our own animated 3D stories.  It would be so cool to make Shakespeare scenes with to go with what they are doing in English.  I think I will make a new course called “Intro to Graphic Design Using Unity”.  Three kids are interested immediately.  Luckily all can take it at the same period.  I am now up to five different preps, two periods where I am teaching two different preps at the same time, two courses which I have never taught before and require I learn the material with the kids.  I have one kid who is a frigging rocket scientist with great ideas and questions I have to figure out the answers to.  Another two kids working with Unity VR for the first time.  A Programming 1 class working with Scratch and I have not looked at Scratch in ten years.  I gave this class a Scratch programming assignment today I figured was good for a period and a half.  Little buggers had it done in 15 minutes.  Smart kids can be such a pain in the posterior.  

So I am totally convinced I am a stone cold idiot.  But it is going to be one heck of a fun year.

Show Starts Wednesday

August 21, 2020

We start school next Wednesday.  We have done everything economically feasible to have a safe environment for the students and staff.  Masks are required.  Spread the kids out as much as possible in the classrooms.  Hallways and stairs are one-way.  Four lunch times to reduce numbers in the lunchroom.  Teachers are going to wipe down desks between classes.  Hand sanitizer stations everywhere.  The computer lab is no more and the only classroom computers are for specialty software.  It is BYOD.  Very few shared computers.  I have some loaners if there is an economic issue with a family.  The building is old (1922) so there is not a lot we can do ventilation-wise.  We were going to get fans for every room but a consultant said all that would do is ensure that any air droplets got spread all over the room.  We have some staff and parents that are nervous about starting up.  Understandable.  I am a bit nervous myself but I have a bit of a different perspective on the danger involved.

In 2005 I spent a year deployed in Iraq with the Montana Army National Guard.  We were not in a quiet area.  Lots of bad people and lots of bad things happened.  We were involved with helping the Iraqi Army keep their schools safe.  Their schools had armed guards.  Their teachers had armed escorts and guards at their homes.  Many of the students were escorted to and from school by armed guards.  Their schools were subject to random mortar attacks.  Girls were regularly  threatened with death.  Did their teachers sign up for this?  No.  Many did find different jobs but many decided to teach anyway.  There was no threat of a strike for safer conditions.  There were no safer conditions.

I completely understand teachers wanting a safe teaching environment and willing to go on strike if everything that can feasibly be done is not being done.  But there is a limit.  It is impossible to make schools completely safe.  It is impossible to put high volume HVAC systems with UV sterilizing systems in most schools.  Remote teaching may be safer but it is a faint shadow to face-to-face teaching.  Students need social interaction.  They need to feed off of each other for ideas and opinions.  Can remote teaching be brought to face-to-face standards?  Maybe, but my experience with it this spring says no.  I know of teachers from the local public school that just saw remote as an added three month paid vacation.  I had students of my own that just decided they were done and went out and found jobs.  My math classes lost their flavor, their spontaneity, their excitement.  Does that mean remote is totally a bust?  No, it does work for some kids and some courses but I see remote teaching for most as a last ditch effort.

In the last year teaching has become much more risky.  It never was totally safe if you look at the school shootings.  Now we have a deadly disease to worry about.  Some teachers say they did not sign up for this.  Nope, they did not but things change.  My school has done everything we possibly can do given the budget we have available.  It is still risky.  Maybe even very risky.  So be it.  If I want to be totally safe I would quit teaching and get a job with a phone tech support company and work out of my basement.

But nobody is shooting at me on the way to school in the morning nor is my school going to suffer a mortar attack during the day.  I am good to go.

Retro Biking Fun, Sort Of

August 3, 2020

Today was an exciting day.  Nothing to do with CS, nothing to do with schools but it was very educational.  Yesterday I got my 1995 Cannondale hard-tail mountain bike down from the garage hook and got it running again.  Today I took it for a ride on the local trails I ride all the time.  I ride mountain bikes, a lot.  It is my main means of recreation.  I ride 3 – 4 times a week weather permitting.  For an old fart I am pretty good.  Going up I am not as fast as 10 year ago.  Going down I am still dumb as a box of rocks.  My present bike is a Scott Genius I bought this spring.  Very trick.  For five grand it better be.  The Scott has the latest brakes, suspension and geometry.  Very stable at speed.  Great bike but pretty standard stuff for a modern mountain bike.  I help coach a mountain biking team, National Interscholastic Cycling Association (NICA), made up of kids 6 – 12 grades.  Fun stuff.  So I got thinking (bad thing, “Danger, Will Robinson”) that I need to show up with the Cannondale to do a little history and ride the bike during training.  Now I am not a total idiot so I figured I better do a test ride, after all there have been a few changes in mountain bike design in the last 25 years.  Now when I built up the Cannondale it had only the best components available at the time.  I was working at a bike shop at the time so I knew how to build a trick bike.  The best in brakes, drive train, trick custom wheels built by me and the best front suspension.  The bike was very light and for the time there was nothing better.  Things have changed in 25 years.  

I was semi-terrified almost the whole ride today.  Going up was not so bad.  Pedaling a 22 lb hard-tail bike up a hill compared to a 29 lb full suspension bike is a dream.  Of course the 21 in wide handlebars (my Scott has 30 in and those are considered narrow these days) did make the Cannondale a bit twitchy and the 45 lb tire pressure (the Scott runs 22 lbs) needed to be sure the narrow old-school tires did not get a pinch flat also made the climb a bit bumpy.  Oh, and I was using toe-clips, the things with straps over your feet.  (If I was going to go retro I was going all the way.)  

If you pedal to the top there is only one thing left to do after that, go down.  Let the pucker factor begin.  In 1995 body weight was wayyy forward.  Steering head angles were much steeper and there was a whopping 2 inches of front fork travel.  The Scott is very relaxed geometry and has 6 inches of travel front and rear.  No wonder I destroyed one or two helmets a year.  And then there are the brakes.  The Scott has Hope 4-pot hydraulic discs, maybe the best brakes money can buy.  They stop you in a hurry.  The Cannondale has Avid side pull rim brakes.  They slow you down after a while.  Pucker.  With the Scott when it gets rocky I shift my weight back and down (the bike has a dropper seat post that lowers when I press a button) and just fly across the rocks.  With the Cannondale rocks are bad things, hitting them is very bad.  Little to no suspension, rock hard tires, high seat height, narrow handlebars and twitchy handling.  Lots of pucker.  After 200 yards my shoulders were used and forearms were getting pumped.  OMG.  How did I ride this thing in the ‘90s?

I lived.  I did not crash.  Well, OK, I did fall over onto a bush when I forgot I was using toe straps at a stop but no blood was lost so it does not count.  I have decided because I am not a stone cold idiot I will not be riding this at a NICA practice.  Those kids are fast and I would be risking my life to hang on to them and riding this bike is terrifying at speed.  Now not being a stone cold idiot does not mean I am particularly smart.  I happen to have a 1996 Trek Y-bike (Google it.) that I got for free and have never ridden.  It is ready to ride.  Maybe full suspension will reduce the pucker factor?  Maybe I need to rethink the stone cold idiot assumption?

What Programming Language Should I Teach Beginners?

July 25, 2020

Those of us that have taught programming for a few years have seen this before.  I have been teaching programming for about thirty years and have seen the question asked for all of those thirty years.  And, believe it or not, the answer is always the same, no one can answer convincingly.  Everyone is an advocate of the language they are the best at and at the level they teach at.  I have seen everything advocated; C, C++, Java, Scratch, Python, HTML, and at least ten others.  I, on the other hand, have the answer.  I have known the answer for years and have been teaching the perfect beginner programming language for all those years with no change.  I consistently teach, without fail and without deviation, the language I am most comfortable teaching.  (OK, I deviated once and taught Java for a couple of semesters.  Bad, very bad.)  So what language am I most comfortable with you may ask (or you may not. Whatever.)  That most comfortable language has changed through years and is not consistently one language.  I know, that makes no sense.  How can my most comfortable language to teach be more than one language?  Simple.  What I am comfortable teaching rookie freshmen is totally different than what I am comfortable teaching non-rookie juniors.  Totally different.

Now let me get to the real topic of this post, teaching beginning programming remotely.  Does that change what I am comfortable with teaching?  Remote teaching requires I not only be comfortable with the language, but the language must have really good resources that are easy to find and easy to understand. In face-to-face programming classes I am there as an instant resource to help troubleshoot problems.  This does not work too well in a remote world.  Zoom does have limitations.  So using languages with good, clear resources is much more critical.  Resources that someone learning the language can actually understand.  

I encountered an example of this last year.  I teach a game making course with Unity.  It is primarily an software course with a little C# programming thrown in.  So last year I figured to give the kids a broader spectrum on game engines we would look at Unreal Engine.  Unity has many tutorials on their website and on YouTube designed for the total beginner.  Unreal Engine has nothing for true beginners on their website and a few on YouTube and those few, at least the ones I could find,  are not up to the quality of what was available for Unity.  Throwing Unreal Engine at a student unfamiliar with a fundamental feel for how game engines work would not be good.  Teaching Unreal Engine remotely would be a disaster.  

So where does that put me in the way of beginner languages?  My big three have been Scratch, Small Basic and Python.  I do throw some odds and ends like Visual Basic and Alice in but for the most part I do those three.  First semester Scratch and Small Basic, then second semester, depending on the students, is either more Small Basic, some Alice and some VB or a dual-credit Python course.  I have some kids that just want to have some more fun with easy programming and have no interest beyond that, I have no problem offering them another simple programming course.  Some of those kids get the bug and hang around for a third and fourth semester.  I have other kids looking at directions where the more intense Python course is the way to go.

Python and Small Basic should be easy to teach remotely.  Lots of high quality resources and texts.  Scratch on the other hand makes me nervous.  It may seem a bit odd that the simplest language may have me thinking the most in regards to remote teaching.  It is the language I teach the least, another teacher had been teaching the Programming I course for many years.  The drag-and-drop format is much harder for me to follow for debugging purposes.  Things get scattered all over the window and I cannot see a lot of the code at once.  I think I have built a comfort zone that includes line-code languages only.  I typically have not used a lot of resources with Scratch when I did teach it so I have to go find some stuff.  There is undoubtedly a massive amount of stuff out there, this is a language designed for beginners after all.  A new challenge.

The remote thing has thrown up a whole new set of challenges to teaching I have never dealt with; Zoom, recording lectures, writing on a screen, students having a laptop/webcam available (Tried to buy a webcam lately?  Good luck.), having quality resources for the student they can and will read on their own (Students read their math book or any textbook?  Another “good luck”.) and being able to present over Zoom in such a way that the kids do not tune out more than they would in a face-to-face classroom.  Any comfort zone teachers have built over the years is toast.  Oh well, keeps the brain young.

My Online Learning Experience

June 28, 2020

I just completed what was supposed to be a week long face-to-face professional development course on using Unity in the classroom.  It obviously got moved to an online course and lucky for me the instructor (Hunter Lloyd from Montana State University) started the course about six weeks ago.  Why lucky for me you may ask?  Because I am terrible at sitting down and grinding through online tutorials.  My eyes lose focus, my brain loses focus, and I start to reconsider my life choices.  I took the PD in order to see how someone else teaches Unity.  No revelation, he uses the tutorials on the Unity website with some videos that he makes to help with the Unity videos.  (To tell the truth he is a terrible video maker.  I learned a lot on how to not make tutorials from watching Hunter’s videos.)  The course was very worthwhile but not for the Unity content.  I have been teaching Unity for three or four years and am familiar with the Unity material that is available.  What made it worthwhile was being on the learning end of an online course.  

As a teacher during the school shut down I would throw material out there on Google Classroom with certain expectations.  After this PD I really need to look closely at those expectations.  Learning online is a large paradigm shift that just does not happen naturally.  Expecting learners to switch seamlessly from face-to-face to online is too much to expect.  I really did not see this until I did this online Unity course.  When I am in the classroom as a student I know what I am supposed to be focusing on (even though my mind may wander at times) and I can usually stay on task for extended periods of time if the material is interesting.  Unity is fun to play with and I can tinker with it for hours without issues.  When working on the online tutorials I just did not have it.  I wandered.  Watching a tutorial and following the directions just did not make it.  I watch Unity tutorials all the time.  That is how I learned Unity and how I expand my knowledge of Unity.  But these are tutorials I want to watch, not tutorials I am required to watch.  The difference seems small, I thought the difference would be small, it is not.  It is huge in keeping on task and focused.  

Seeing this from the student side is making me realize how this is for my students.  I had trouble with learning online with something I am interested in.  The students are typically not so crazy about what the online material they are required to study is covering.  High school students typically do not have the self discipline to do things they do not want to do.  I had several students this spring that simply refused to do any online work when I know that if they were in a face-to-face classroom it would have been a totally different result.

Now the question is how do we get kids to do online work that is not trivially simple?  Is there a physiological thing we as teachers need to address?  Is it the quality of the video tutorials?  The approach to the material that needs to be covered to make the course worthwhile?  I have seen statistics that the completion rate for MOOCs is terrible.  Single digit terrible.  Is this an indicator of how poor online is or is at an indicator of how students learn?  Can those two even be separated?  

Covid has pushed online teaching farther than I think universities wanted but they were already involved.  High schools were unexpectedly thrown to the online need.  My shutdown experience tells me online does not work satisfactorily.  After this PD experience I understand this better than I did.  Online is here to stay.  I have to look at methods to make it at least survivable for students in case I have to go back to online in the fall.

Building Game Computers

June 24, 2020

I requested $6000 to build six gaming computers to use to teach Unity and Unreal Engine using the Oculus.  Wonder of wonders the school put it in the budget.  If I were to buy a gaming computer pre-build with the specs I want I am looking at $1300+ per computer so I am building from scratch.  Newegg, Amazon and wherever.  I have three of my computer geeks helping me with the build.  We used a site called pcpartpicker.com and the Newegg builder app to build a computer in the $800 range that will do the trick.  Neither app takes into account availability.  Eek.  Parts are scarce.  I had planned to buy the parts for one computer in early July for testing purposes.  I think I am going to have to wait for August and hope the parts pipeline fills up again.  Motherboards in the $80 price range are the big issue.  I wanted to go with MSI but they just not there.  CPUs are out there but only particular ones.  AMD Ryzen 3600Xs are gone.  The task has become much more complicated.  I now have to look all over for vendors other than Amazon and Newegg.

I also have money to buy 2 Oculus Rift S goggles.  All gone.  I have not found any available as of yesterday.  I may have to call around to see if any are on store shelves.  I do not need them until school starts so the pipeline may fill up by then.  If not I will have to punt.

Driving And Thinking. Danger, Will Robinson!

June 1, 2020

So I am driving home after grocery shopping at Costco.  Traffic is smooth so I can think of something other than traffic so I start trying to figure out how to get my Stats and Math 2 Honors class assets; tests, quizzes, etc, to the new math teacher.  (OK, so that is a weird topic to be thinking of while driving home from Costco but whatever.)  All my stuff is on Google Drive but most of it is still in Word.  Google Docs does not have the math symbols easily accessible so Word it is.  I should be able to share my Stats and Math 2 H folders in Google Drive with her and then she can pluck what she wants out of there.  I can also throw everything on an external drive.  Whatever works.  

Google has made collaboration easy.  And one of the latest themes in education is using collaboration with students.  Teaching them how to use the tools and the strategy for working in teams.  Nuts, we have just shot down the ability to give online tests and individual work in a remote environment.  (Traffic is light and it is a straight shot down the road for a while so I can think on this.)  At the moment one of our primary evaluation tools in math classes is the individual test.  One kid taking a test to determine their retention on the previous material.  No team, no collaboration, no internet and no modern teaching theme.  Still old school; a brain, a pencil and a calculator (if they have not lost it already).  Something is wrong here.  (Stop light and tighter traffic.  Back to concentrating on driving.)

Now that I am home I can scratch my head in deep thought.  Over a beer.  OK, maybe not as deep as it could be if a beer is involved.  (Deemed Essential NE IPA from Great Burn Brewing.)  Where does the individual test fit in this new world of easy online collaboration, remote teaching and what students need to fit into the modern work environment?  Beats me, this is a 6.7 ABV beer and I just finished it.

Planning for Next Year Already

May 18, 2020

My principal says I am not teaching math next fall.  This year I was a full time teacher and a full time IT, techie, teacher trainer and guy who knew the most about where all the breakers in the building were located.  It did not work out well.  The IT suffered and it killed my prep time for teaching.  So next year I am losing my two math courses (three sections) so I can focus on IT stuff and also build the CS curriculum back up.  

I am really going to miss the math.  I have been teaching the Stats course too long and was starting to get bored with the material so this is probably a good thing.  The Math 2 Honors on the other hand was a kick.  We sit in a circle and BS about math stuff then go explore something.  Only 7 students so this worked out well.  Five out of the seven kids were into it and the other two were willing to go along for the ride.

We hired a new business teacher but he has no programming experience.  (Montana has a bit of a CS certification issue.  If you have a Business degree you are certified to teach CS/programming, even if you have never had a CS/programming course.  The other way to get certified is to get a CS degree and then get a separate teaching degree.  As can be expected not a lot of kids jump on that wagon.)  We need him to teach a basic programming intro course (Scratch, Small Basic).  I will need time to help him get up to speed.  He is young, he can figure it out but it is kind of nice to have help when starting out at a new school and a new field to learn.  

I have some kids coming into my Python class that are extremely sharp.  I will need to brush up on my Python skills if I am going to survive.  A couple of them are going to run me over anyway but I want to at least look knowledgeable for the first couple of weeks.  Then I just point and get out of the way.

I offered a few of my Unity Game kids a second semester in Game.  I want to do some VR with the Oculus Rift.  I had planned to do some VR with some kids taking a second semester of Game this Spring but the shutdown killed that.  I also want to tinker with apps like Displayland (https://get.display.land/). I have some halfway good Unity VR material but Unity did a VR update so I need to run through the material again to see if the changes made the material obsolete.  Unity and VR can be a challenge but many VR games are written in Unity so it is doable.  Unreal Engine 4 is much more VR friendly but there is an extreme shortage of intro level VR tutorials and material for UE4.  Again I want to look good for a couple of weeks before the kids trample me into the ground.

One of the bad things (and good things) about teaching software like Unity and UE4 is the speed at which it changes.  I just learned about Displayland today on YouTube (https://www.youtube.com/watch?v=mZcLKcyHWDs).  It looks like it may make a big difference in what the average user can do.  Scan a 3D image with your phone and then import it as an object in your own Unity project.  For free.  Cool.  Time to tinker.  (I just tinkered.  This is incredible.  More tinkering required.)  The fast evolution of this type of software requires me to troubleshoot the YouTube videos I use to teach Unity.  Sometimes they work and sometimes they do not.  I use a lot of YouTube for the Unity course for several reasons.  The biggest is I can reverse the teaching style.  Watch at home, build in class.  If the kids build in class I can help troubleshoot the inevitable weird things that happen.  One of the issues with not having a computer lab.  BYOD is the only way to go but it does cause some compatibility issues.  Too bad I cannot require every kid have a 17” Win 10 laptop with 16 gigs of RAM and a decent video card.

Now I am just hoping we actually have school next year where I can work with kids live.  The remote thing is just not my cup of tea.

Seniors are Done

May 18, 2020

Friday was the official end for the seniors.  This was their regular graduation date.  No fancy walk across the stage of course.  Today we had a drive-by.  We put paint marks 12 feet apart around the football field.  The seniors put on their graduation hats and robes and sat or stood on an “X”.  The cars drove around the track.  Forty-eight graduates, must have been 200 cars.  I was there for an hour and a half.  Cars just kept coming.  No gaps.  Impressive.  

The event sort of made something clear to me.  I do not want to be a remote teacher.  I like the kids, even the ones that are a pain in the ass.  Seeing them really brought it to me.  To me these are not cattle going through a chute called high school.  Some of the kids may think that but the teachers sure don’t.  I know public school teachers that survive the school year for the summer off.  They count the days to retirement.  I will admit if I was in public schools I might feel the same way.  In a normal year I regret summer break and I look forward to Mondays.  I cannot imagine retiring.  I plan to be found dead in my office thirty years from now.  Man, this job is fun! And I get paid to do it!

I sure hope next year is normal.