Tuesday, July 14, 2026

CSTA 2026 Day Two

There is a lot of talk about networking at conferences like this. While there is nothing wrong with networking if you do it right you are really making friends. Friendship pays all sorts of dividends. For example, I met Tommy Gober at some conference. It may have been CSTA, it may have been SIGCSE, but we’ve seen each other at conferences. Tony is not at CSTA this year but we are friends on Facebook and this morning he recommended a restaurant for me to try. So I did and it was a wonderful real New Orleans style breakfast. Meeting people at CSTA is much more than just computer science.

Prior to sessions I did a pass through the exhibit hall identifying robots on exhibit. Read about that here.

I went to one morning session on using GitHub. It was very well done and walked everyone through the mechanics. It just wasn’t what I was looking for. What I want is someone to teach about source code management. Not the mechanics but the concepts and the vocabulary. It seems like every presentation I attend understands what a pull, branch, merge and what not means and why you want to do it. I don’t think that many students or teacher really understand the why of a source code control system. I want someone to walk us through a real project. Something with two people adding code and doing a merge maybe. But start with the why and words.

After that I spent some more time talking to people. Some of the talks were just catching up with people. Some were about issues facing CS education today. I may blog about that after the conference is over.

The afternoon keynote was focused on artificial intelligence and how people who think about this sort of thing for a living are thinking about it. It was interesting but it is clear that things, like standards, are not really settled. That isn’t to say that there are not standards – there are – several of them. But I think we don’t really know what the near future is going to bring. To say nothing of 4 to 5 years down the road.

I attended one session in the afternoon. I thought it would be about how to teach students to write code using AI agents. It was mostly about the presenter talking about how they use AI to develop code for their start up company. He was also pushing the case that this was the future. Interesting look into one person’s view of how the industry has and will continue to develop but I did not find a lot of actionable information.

I spent the next hour talking CS education and CSTA with a friend. There will be more about that conversation in the future.

JuiceMind sponsored a reception over a bar in Decatur Street. The food and company were great. I assume the drinks (one per person) were good as well. I appreciate it. They are nice hosts.

Some years there as been a big event someplace special hosted by one or more companies. Two years ago there was a big shindig at Caesar's Palace for example. Not this year. There are a number of large companies who have had booths in the past who are missing this year as well. I think corporate funding for CS education is drying up as many companies think AI means we don’t need to teach computer science.

CSTA did have grade level receptions  for networking. I dropped into the one for grades 9 through 12. There was food and (2) drinks there. A bingo game to get people started meeting people and it looked like some small table games came out as well. People were having a good time for sure. Nicely done.

Robots at CSTA 2026

It seems like robots are everywhere at CSTA in the exhibit hall. I made a pass through and looked at most of them. So who was showing robots?

Ozobot is first. I love these little robots. They are adorable, come fully assembled and students also love them. Their new Ari robot has a bunch of new features including a display screen that is touch sensitive and some additional sensors.

G-cube from  Roborisen is a new one for me. It consists of cubes that are building blocks to make programmable robots. Anywhere from one to six can make up a robot so there is a lot of creative potential. So worth checking out..

Stemfinity sells itself as a one stop stem shop and they offer a lot of STEM related materials. They were showing a bunch of different robots.

Firia Labs was showing a couple of robots including the Codebot which is pretty nice. They also have recently announced CodeAIR, a programmable drone where the code is loaded onto the drone so not remotely controlled. They have curriculum available as well.

Crexo is the parent company for a number of edtech companies including Birdbrain, makers of the Finch robot originally developed at Carnegie Mellon University.They had a number of robots as well as other items I would characterize as physical computing devices.

Pitsco Education is another on stop shop for STEM related items. They have robots, drones, and a lot more. One could spend a good amount of time at their booth or browsing their website.

Vex Robotics has one of the largest booths at CSTA 2026. Needless to say, they are all about the robots and have a lot to show off.

Forward education is not primarily about robots but they have some on display and they are related to some of their curriculum. The curriculum looks interesting.

Well, that is an overview. If you are at CSTA, now maybe you have some exhibits to visit. If you are not at CSTA, you have some links to exhibitors and some idea of what they are about. Hope this helps.

Monday, July 13, 2026

CSTA 2026 Day One

CSTA 2026 didn’t start until noon today so I spent some time exploring. I wandered around the French Quarter. Bourbon street is not the same at 8AM as it is at 8PM for sure. But I found some good food and am snacking on a beignet as I write this up.

I snuck into the exhibit hall before it opened to take pictures of some of the booths. They’ll probably wind up in a blog post after the conference. While snooping around I was able to talk to one of the outstanding people in computer science in education -  Mitch Resnick from the MIT Media Lab.

I took a workshop with him about Scratch a number of years ago. He was nice enough to let me get this picture. Mitch is the person behind Scratch and Octostudio. I was able to talk to Mitch for a bit which was great. We talked about tools with low floors and high ceilings. We also talked about letting students get creative and have fun while learning..

Getting to talk to people is one of the best things about CSTA! I have connected with many friends and talked to a lot of new (to me) people. That’s been great

I went to a couple of sessions. I spend half of an hour with two physical computing . One of the Robolink Codrone and one on Micro Bits. Both are interesting. Drones are more expensive but I think they may attract some students that micro:bits might not. I was looking for a bit more innovation because I have seen both of these before. I’ve owned and used micro:bits as well. I think that these session were very good for people who are not as aware of these tools. I do think they are both pretty cool. If you have the money for them I can see them driving interest.

Next up for me was a session on MakeCode Tutorial Editor. This one was very good. It was hands on and the handout has an exceptional number of useful links. The Tutorial Editor allows a teacher to create their own tutorials for students to use to learn hands-on with MakeCode. We did some work in the session using AII tools to write the tutorials. I’m pretty sure I want to learn more about creating tutorials “by hand” though.

BTW MakeCode and its variants is a development environment that allows students to program with blocks, JavaScript, and Python for small arcade devices, micro:bits, and more. If you haven’t checked it out yet your really should.

The opening keynote was pretty good. I was mostly interested in Jake Baskin’s part of it though. He’s the Executive Director of CSTA and he talked about the state of the association. I need to think about some of it to see if there are places for me to get more involved. One highlight was his talking about a new definition of computer science. Always good for a discussion. Anyway, it is:

Computer science is the study and human-centered practice of using data, algorithms, and computing systems to solve problems, make discoveries, and express ideas.

Jake emphasized the term :human-centered.” I really like how he made the case that students need to learn computer science, perhaps even more so, in the age of artificial intelligence. I expect to hear more about the future of CS education from more people over the next several days.

Tuesday, June 30, 2026

Previewing CSTA 2026

Less than two weeks until the annual Computer Science Teachers Association (CSTA) Conference. As far as I am concerned this is the most important professional development conference for computer science educators in K-12. SIGCSE is great for university CS educators and it’s valuable for K-12 as well but the focus is really higher education. ISTE, going on now in Orlando, is huge and there are valuable sessions for CS educators but it it really a more general technology in education conference. CSTA is all about K-12 computer science education.

After missing it last year, the first CSTA Annual Conference I have missed, I am looking forward to being in New Orleans in two weeks. I have been looking through the conference program. There are a lot of sessions!

As you might expect, there are a lot of sessions involving artificial intelligence. I’m hoping to have some conversations about AI with attendees. While some of the people I hope to talk with are actively promoting AI in CS education I am even more looking forward to talking to AI skeptics. I wonder what the worries and concerns are among active teachers. I hope people will find me in the hallways but I will be looking people out as well.

There are also a number of session on ethics (happy to see that), cyber security (surprised not to see sessions on the new AP Cybersecurity course), and physical computing. Aside, I love physical computing and wish I had used it more in my own teaching.

I saw several sessions particularly related to rural schools and students. That’s huge and very exciting. Rural areas don’t get as much attention as they need.

I don’t know what sessions I will attend. As a retired teacher I don’t have particular needs beyond personal growth. I will be sharing what I see and learn both on this blog and on BlueSky. (I don’t use Twitter/X these days). If you want to follow I am at Alfred Thompson (@alfredtwo.bsky.social) — Bluesky 

If you at CSTA I hope you will say hello. People are the main reason I am attending this year.

Sunday, June 21, 2026

My Favorite Software Development Role

I think it is fair to say that I have had an eclectic career in computing. I’ve worked for some of the largest computer companies in the world and I have spent a good bit of time in the classroom teaching. For about a fourteen of those years I had what I would call pure software development roles. Though I have written code for every job I have had for some jobs that was the main purpose of my work.

I spent some of my early career writing custom business software. Interesting, often fun, but it was a tough environment back in the 1970s. For about ten years I wrote and documented software used for testing large (think $10 million per system) computer systems. For about two years though I was part of an operating system development group.

Operating systems and the development of those systems was different in the 1980s than it is today. While I suspect that the Windows team has something like 1,000 people the RSTS/E development time was about 100 people. Windows has people whose job is to test software that other people write. Other people write original code while a different group fixes their bugs. I suspect that another group works on fixing bugs that customers report in released software. Maybe. Not sure. Back then members of an OS development group did it all.

While my main role was to write the user interface for a brand new, developed from scratch print and batch system I had other responsibilities. I had to look into bugs reported by customers for a number of different utilities. For example, if someone reported a bug in the backup utility or the login/logout utility I had to look into it and hopefully fix it. I was also responsible for making modifications to several utilities to support the major changes we were making to the OS. Oh, and I was the release engineer.

The release engineer was responsible for building the complete OS and packaging it for installation. I suspect that is a dedicated person (in not group) in most OS development groups today. As I said though, things were simpler back then.

Getting to my main role though. One of the things we were doing with this new version of the OS was to add layers of privileges. Previously, a user either had very limited privileges or unlimited privileges. That was increasingly seen as insecure and other operating systems had all sorts of privileges that could be set for different users. Pretty standard today but this was new for this OS.

This sort of thing has to be deep in the system. It complicates everything. So we were building a new system for printing files and running batch jobs (jobs that ran in the background without user interaction once started). My bit was the command line interface. The commands for starting, stopping, monitoring and generally anything the user was allowed to do. Oh,  and writing the help file as well.

The manager of the team was a great guy. One of the best managers I have ever had. One thing he insisted upon was that we completely design the system before we started coding. And design we did. We had all sorts of flow diagrams, data structure layouts, and lots of though being given to the security of the system. We spent longer on design than any other sub group. The overall manager started to get worried that we would not make our timeline.

Long story short, we did make out timeline. Not only that but for years after the product was released I tracked bugs reported on the OS and none were reported for our part of the system. I am convinced that the time we spent on design is why we both finished on time and without reported bugs.

The design helped me to build my test suite as well. As I said earlier, we did not have other people testing our code. Each developer was responsible for testing their own work. I know that there is a theory that people should not be responsible for testing their own code. Theory being that they will avoid, subconsciously if not consciously, testing things that are broken. I don’t buy it. I think that people who have pride in their work will want it to work and will test it thoroughly. I think that the developer also has a better idea of what code paths there are and that need testing. Unpopular opinion perhaps but I believe that trusting code testing to someone else leads to sloppy work. Especially if someone else is going to fix your mistakes.

This was my favorite development job for several reasons. One is that it was a great team with smart people who were always willing to help each other. Another was a good boss. A boss can make a job feel great or feel like punishment. They set the tone It was also very cool to be part of a major software project.

I had access to all the source code for the OS and that was an amazing learning experience. Yes, I know that source code is available for open source OS today but that wasn’t the case back then. Being a part of the design for a major new release, working with the key people, was a unique experience.. It was also a great job because I knew that hundreds of thousands, perhaps millions, of people were using software I wrote to get things done. It’s a great feeling.

I wrote a lot of code over the years and I am proud of much of it. But that time at RSTS/E is one of my fondest memories.

Saturday, June 13, 2026

What is wrong with this button?

Recently I was going through my memory box and I cameA button displaying the message The Spirit of 100110 across this button. It was given out by the hundreds at a conference in the 1970s. . What is the spirit of 100110 you ask? That represents the number 38 which doesn’t seem to mean much. And it really doesn’t because that is not the number that was supposed to be there.

Who ever was in charge of printing the buttons left off a zero where the period is located. That dropped the value in half to 38 when it was supposed to represent 76. Yes, this button was intended to honor the 200th anniversary of the signing of the US Declaration of Independence.

My guess is that the Binary number was meaningless to the person who proofread the button. Clearly, not a computer person.

This brings me back to my regular comments about the need for teaching computing foundational concepts. Sure, this button thing is fairly trivial but Binary concepts and indeed number concepts are pretty important for many things beyond programming.

Boolean algebra is another concept that is foundational to computer science that shows up in many areas. Foundational computing concepts are essential knowledge for people to understand the world around them as it exists today and how it will develop in the future.

I’m probably preaching to the choir here but I feel like somethings need repeating. The button is a fun story too!

Saturday, May 30, 2026

We Must Still Teach Computer Science in High School

The tl;dr is simply this “We don’t teach physics in high school in order to create more professional physicists.”

I’ve said that for years and it is true. Teaching CS in high school should not be to create more professional computer scientists, programmers, software developers or professional anything. Just as we teach physics to help students to understand the world they live in, we should teach computer science to help students understand the world they live in. Neither the hype or the reality of artificial intelligence mean that students will not be working with computers in the future. If anything, students are more likely to be more involved with computers in the future.

So yes, AI can write code. The determination on how good that code is is really yet to be determined. There are lots of indications that it is not that good right now.

I was reading an article in The Atlantic titled “There’s Never Been a Better Time to Study Computer Science” that says some interesting things. For example, Valerie Barr, a computer scientist at Bard College, is quoted as saying “You cannot make effective use of AI tools if you don’t know something about what you’re asking the tools to do”

Talks with people using AI in software development suggest that understanding software development is important in getting the most out of AI code development. But getting away from people whose job it is to develop software, pretty much everyone is going to be using or interfacing with AI in the future. Understanding what is behind it all has to be helpful in getting the most out of AI.

Now we’re going to see a lot of changes in curriculum both in K-12 and higher education. I think we need less change in K-12. Oh, sure, add some things about using AI and AI prompting. Basic fundamental concepts are still important though. Understanding what is behind AI is still important. That will help people understand the potentials and limits that will still exist. More than that, those principles are important for extending what computing can do. You can’t build a skyscraper without a strong foundation.

Monday, May 25, 2026

Artificial Intelligence and Making Bread

One of the things I have been doing since retiring is baking bread. I love some fresh bread and I want to avoid artificial ingredients in my food. That doesn’t mean I feel the need for a little artificial help in the process. Enter bread machines. Right now I have two machines I am using.

The machine on the right does the whole thing. I put in the ingredients, set a few settings, press start and in a few hours I have a loaf of baked bread. It’s not a particularly smart machine. It’s mostly some steps on a set of timers.

It does a pretty good job but its limited. The bread is a simple boxy shape but it makes for reasonable sandwiches. It doesn’t do sourdough bread and it doesn’t do anything but a standard boxy loaf of bread.

The machine on the left is called the sourdough sidekick and all it does is manage sourdough starter. That leaves a lot of work for the baker, me, to do to bake bread but it gives me a lot of options. This machine is smarter though.

Managing sourdough requires some maintenance work that I have no interest in doing. Some people name their starter and treat it almost like a pet. I have no interest in that. So the sourdough sidekick handles the part of sourdough that I am not interested in doing so I can focus on the parts I am interesting in doing.

SO what is smart about it? Well, I can tell it how much starter I want and when I want it and it will feed and careful the starter I have in order to have it ready for me. It has to balance water, flour, and temperature for me. There is an app that lets me monitor the process.

This does what I want from AI. It handles the boring part and lets me do the hands on and creative parts that I enjoy doing. The first machine gives me bread but does so in a rather boring fashion. If all food was to me was fuel that would be fine. But there is an art to food as well. There is some creativity involved. The hands on aspect of working the dough gives me a certain satisfaction.

What I want from AI is not to replace the things I like to do but to enable me to do things that I like to do. The sidekick has made baking sourdough more doable for me by taking care of the work I don’t have time and interest to do.

I feel like a lot of AI usage is mostly about replacing people when what I want it to do is enable people. I’ve read several people saying things like they don’t want AI to create art or music but rather do the laundry and house keeping so that they have time to create art or music..

I can understand how companies want to replace people and save money. I think that many of us would rather see AI saving time to enable people. Much of what regular people want AI to do requires hardware like my sourdough Sidekick. It seems like the people behind artificial intelligence are only interested in software modulinos though.  Hardware is hard.

We’re seeing more and more pushback against AI. I believe that is largely because of the use cases it is being promoted for. We really need to combine hardware and software to solve problems that make it hard for people to do they things they want to do.