Wednesday, September 23, 2026

Programming Languages as Common Ground with AI

A few days ago I had a little problem. I had a text file with a lot of lines I didn’t want. Specifically, it was a computer generated transcript with timing on just about ever other line. It made reading the document harder and didn’t provide me with information I needed or wanted. So I decided to clean it up.  Obviously, I could write some pretty trivial code to do it for me.

This being the age of AI, I thought I would let AI write it for me. I use Visual Studio (the full blown version) and GitHub Copilot is available to me there. I thought about asking it something like this:

Create some code to read a file and create a new file that doesn't;t include lines containing a user specified word or string.

That's the sort of open ended instruction I might give students.I might use something like that in Advanced Placement CS A if I were still teaching it. It's fine as far as it goes. More on that prompt later in the post by the way.

I wanted something a bit more specific. Something that worked the way I like to work. That meant a Windows Forms application. I decided to give AI what I would include as scaffolding for a student project. Some easy steps to provide a more gentle path for students. Or in this case, something particular I wanted to see.

What I gave GitHub Copilot was:

Create a C# method that:
1.    Uses a dialog box to request and save an input file name
2.    Uses a dialog box to request and save an output file name
3.    Copies a string from a text box
4.    Opens the input file and output file
5.    Reads the input file and copies lines that do not include the saved string
6.    Closes both files when finished reading the input file
7.    Displays the message “Completed” in a message box 

This gave me exactly what I wanted. That’s not a surprise really. AI tends to be good at simple projects like this. The thing I realized is that the prompt worked well and I got the results I wanted because I knew what to ask. I easily broke the task down into specific steps and was explicit about what I wanted. Yea me.

After I got my file cleaned (the reason I started this) I went back to make the program more flexible. For example, what if I wanted to keep lines that included a specific string rather than skip it?

The AI in Visual Studio was very helpful here. Or rather it tried to be helpful. It suggested all sorts of code based on the assumptions it was making about my intent. It got things wrong as often as it got things correct. Maybe it would have done better if I gave it specific prompts but maybe it wouldn't. One thing is clear though. I knew enough code to know that it was wrong and how to fix it. Experience matters.

Coming back to my initial prompt. The AI did a very good job. It does everything I asked an more. All sorts of error checking (file exist?) and even asks if the user wants the comparison of stings to be case sensitive or not. As with the other prompt, the code is nicely commented. It created a console app which is not my favorite way to work but is the way many, perhaps most, student projects are created.

I can’t help but think about what all this means in the context of CS education.

Could students use these prompts to have AI write code for them? Absolutely. Would the results be obvious to someone grading the work that the code was not student written? Also, I think, pretty obviously. The comments alone would be a good clue. The error handling, something we tend not to cover very well because of time constraints would be an even stronger clue. Yes, I have had students add error handling but when they do it tends not to be unexpected. We’ve all had those students who do more. Often they have experience prior to coming to class.

So what is an educator to do? Ban the use of AI! Have you met today’s students? They are past masters of getting around the rules. I had students from China who laughed, literally laughed, at the attempts of a national government to limit what people do on the Internet.

I think we can ask students not to use AI to complete projects. Some will listen. Some will not. In either case, I think it is up to us to make the case that they need the experience of writing their own code. Every professional developer I talk to knows that their prior experience allows them to use AI more effectively.  The people making the most effective, productive results using AI have written code on their own.

Here is what I think is the most important skill in software development today. Being able to analyze a problem and break it down into its component pieces. Compare the two prompts I used above. Admittedly, this is a simple problem and it is easy to break down. Which one is easy to produce code for? Which one is more likely to solve the problem in a way that the user wants to operate?

If a student cannot break down a “toy” problem like those we  tend to assign in early courses how can they be expected to break down larger problems professionally? Or even non-professionally to solve problems in their career.

Circling back to the tweaks I made to AI generated code for a minute. Being able to read and understand code is key to understanding where code went wrong. AI tools have their own assumptions and they are not mind readers. Communication, between user and AI just like between people, requires some level of common understanding. Programming languages are the languages of computer science.

I am reminded of stories I have read about people with tattoos in languages they don’t understand later finding out that the tattoo doesn’t say what they wanted it to say. We had better keep current and fluent in computer languages unless we want computers to get totally out of control.

Monday, August 03, 2026

Computer Science is Not Just Coding and Its NOT Dying

The discussions about the future of computer science and of computer science education are unending. We are seeing huge numbers of layoffs in the tech industry as coders are (attempted to be) replaced by artificial intelligence. Universities and high schools are seeing drops in signups for computer science courses as students don’t see the same economic future in coding that they once did. Some are trying to counter the “CS is dying” narrative. For example, the two opinion pieces linked below.

Much of this is self-inflicted. Far too many people, especially in politics and in school administration roles have pushed computer science as vocational. Dare I say, as JUST vocational. Now in a career technical school that pretty much made sense. For comprehensive schools, I maintain, that it never made sense.

I have been saying for years that we don’t teach physics because we have a shortage of physicists. Nor do we teach biology because we have a shortage of biologists. Rather, we teach those subjects, and many others, to help students to understand the world in which they live. That is the reason why students still need to learn computer science.

We need to change our messaging. No, that’s wrong, I think that computer science educators have always tried all along to promote CS as more than just vocational. That message has just gotten lost in the noise from people with louder platforms. So not “our message” but the message that the wider world is hearing.

Coding is still a language of computer science. It’s not going away. We’re still going to require coding knowledge in the future. It will probably not be the main thing in a job but understanding what AI is doing is going to require some knowledge of the language of computing.

Logic is still important. It turns out that expressing logical expressions in computer languages is still a good way to learn things. Coding is still a good tool in learning about abstraction and breaking a problem down into smaller parts and assembling building blocks of processes. Understanding how computers work and how they communicate and how they tackle problems is still basic computer science. AI does not make the need to understand those concepts go away.

If one thinks of computer science as little more than writing code it is understandable to think that learning CS is less valuable. On the other hand, if one understands that computers are going to be increasing in importance and impact on society AND that CS is about what makes AI work than CS is more important than ever. Students who enter the workforce without an understanding are going to enter it handicapped and limited.

Computer science is alive and growing. It is growing in complexity, in influence, and in the need for people to understand how it works. Students need computer science education.

Thursday, July 16, 2026

Post CSTA 2026 Thoughts

CSTA 2026 was an excellent conference. No surprise there. CSTA is the biggest and best conference for K-12 computer science teachers. It’s one I recommend to anyone teaching CS. I am told that there were about 1,150 people in attendance. Not a record but a lot more than we had even a few years ago. Lots of younger teachers and a lot more diversity as well. These are all good things.

There were some surprises this week. One was who wasn’t there. Specifically, three large companies that had large booths in the exhibit hall at previous conferences had little to no presence and none in the exhibit hall. Microsoft, Amazon, and Google were not in the exhibit hall at all.

Microsoft had some people there and they made some presentations. I didn’t  see Amazon or Google. If they were there I missed it. I know that Google has dropped some of their programs completely. I don’t know about Amazon’s Future Engineer program. Of course all of those companies have let lots of staff go and cut all sorts of programs. Funding for CS education conferences was sometimes a tough sell at Microsoft even 10 years ago when I was working there. GitHub Classroom is going away and they were big at previous conferences. So there is that.

CodeAI was not present either. I understand they had a large presence at ISTE so maybe they spent their conference money there. I am sure they reached a lot of people but I have no insights on their goals. I am not sure what any of this means for the relationship between CodeAI and CSTA.

Attending CSTA as a retired teacher without a real connection to a school or company is different from attending as a teacher. That’s probably obvious. For one thing, it changes how I deal with exhibitors. The swag is really there for active teachers so I hesitate to help myself. At the same time, I do try to make myself useful to in-service teachers who can’t make it to the conference by sharing things that I learn there. So I do talk to exhibitors, ask questions, and take literature. It sometimes feels awkward to me. I wonder how the exhibitors feel.

I select sessions differently as well. I am not looking to prep for a specific course because I am not teaching. I am quite curious about a lot of things and learning for my personal benefit is important to me. So I attend sessions for various reasons i.e.. something strikes me as interesting. I also don’t lose value by skipping sessions for the hallway track. Although, to be honest, even when I was teaching I sometimes found the hallway track more useful than some sessions. Priorities!

The quality of sessions is pretty good. That is especially the case when teachers are talking about what they are doing in the classroom. Presentations from corporate people, whether they be big or small is a mixed bag. Most are very professional, very informative, and well prepared. They can be a bit sales like at times and lighter on concepts than I would like. They do tend to be very respectful of teachers and don’t try to drive the conference as much as it feels like ISTE is vender driven. I credit the conference committee for that. I’ve served  on the conference committee several times and the goal has always been about what teachers need rather than what industry wants to sell.

Circling back the the exhibit hall for a minute, I think that CSTA is a great opportunity for smaller ed tech companies to communicate with CS educators. Yes, ISTE has many more teachers but it’s also much more expensive and the target market for a CS ed product is a small percentage there. So bang for the buck I think CSTA wins every time. I talked to one exhibitor who was at ISTE this year and they thought the same thing.

It may be a good thing for smaller companies that the monster companies are staying away. A lot more conversations can happen at CSTA both because the big companies are not attracting people away with giveaways.

As always, I am leaving with a lot to think about. I hope to write up some of that thinking after it has settled. If you were at CSTA I would love to know what you took away from the conference as well.

Wednesday, July 15, 2026

CSTA 2026 Day Three

Today's opening keynote was all about the new PK-12 Computer Science Education Standards. A lot of work went into these new standards. I really want to dig into them. I did download the PDF but I think it may be easier to use the website. The PDF is 218 dense pages. It sounds like most the curriculum vendors have been tracing the development of the standards so you can probably expect any third-party curriculum to be up to standard soon.

Before the keynote, one of the Impact Fellows spoke about excluding students for a number of reasons, behavior being one, by having CS as a reward and withholding it as a punishment. This is going to lose us a lot of potential.

My morning session was probably my favorite of the conference. It was titled “Physical Computing + AI Literacy = Physical AI with MakeCode” We were al give a micro:bit and charging station to use and keep. They we used the website createAI.microcode.org to program our micro:bits. First we trained the micro:bit to recognize specific movements. Next we programmed the micro:bit to do specific actions when it recognized the trained event.

The session was high energy, lots of fun, and highly informative. I think that sort of active would go over very well with a wide range of ages. There are lots of opportunities to learn about good and bad training data. With so much focus on LLMs I think some machine learning knowledge is very useful. Check out resources at microbit.org/createai 

After lunch I sat in on a couple of flash talks. One of them was particularly interesting. It was about a school that has created a pair of computational biology courses. It it co-taught by a biology teacher and a computer science teacher. It seems really exciting as they use create and use computer programs to analyze biological data like DNA. They are looking to develop more cross curricular courses with subjects like art, chemistry,, and physics. This is a great way to make computing relevant to more students while increasing their knowledge of both subjects.

Well, its been quite an interesting week. I’ll have some final wrap up thoughts tomorrow.

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.