Monday, November 04, 2019

CSTA at 15 #CSTAat15

The Computer Science Teachers Association is now 15 years old. I’ve been a member from the start and I have to say that in some ways it feels like it has always been there but in other ways it feels like it just started.  There was a K-12 computer science education community before CSTA. But it was small and one could easily feel alone. CSTA brought a new sense of community and togetherness. Most of all, perhaps, it brought us organization and a stronger sense of belonging.

There was the CS & IT Conference (now called the CSTA Annual Conference)  before CSTA as well but it didn’t have the same feeling of permanence and sustainability that CSTA brought to it. CSTA brought growth and strength to the conference. It’s been the annual highlight of my professional development for years now. Presenting at several of these conferences has been a huge privilege and honor. And added to my learning as well.

After I left industry some years ago I ran for and won a seat on the CSTA Board. What a wonderful experience those four years were. Hectic as we changed Executive Directors during that time. It was a real time of transition. That wasn’t as smooth as many of us would have liked and I think we experienced some growing pains during those years. We’re on our third ED now but things seem to be well on track. Kudos to the Board (after me) who lead the way through the last couple of years and another ED transition. We have an amazing board at CSTA who work very hard for the membership.

The growth of chapters has been a big part of the CSTA story.  Fairly early on, CSTA developed programs to train and prepare chapter leaders and that has paid off in spades. There are more and stronger chapters than ever before. CSTA is both national AND local and that is important.

CSTA has helped train advocates among teachers and support them locally. CSTA members have advocated, lobbied, pushed, and otherwise promoted CS in their states, counties, school districts, and yes even nationally. Some of the companies and other groups get a lot of credit for the growth in computer science education in the US but the real heroes are individual teachers who alone or with other CSTA members did the ground work to make things happen.

From conferences to board membership to involvement with committees and connections with life long friends CSTA has been an important part of my life. I can’t wait to see what the next fifteen years bring.

Friday, November 01, 2019

Magic 8 Ball and Projects From Real Life

There has been a 12 inch tall Pez dispenser on my desk for a couple of years now. It’s a great visual aid for talking about stacks. Today I got a Magic 8 Ball as well. It turns out that a lot of my students were unfamiliar with this staple toy of my youth. Since I really like using the Magic 8 ball program as a demonstration I decided I really had to get a physical ball.

At this point in the semester we have covered loops and arrays and it is time to make programs more interesting by adding more data. I want to use something that makes sense and is not just a demo without meaning or purpose. Having code you can have some fun with is always a plus as well.

I went to Wikipedia and found the classic 8 ball answers and placed them in a text file. My demo reads the file into an array when the program loads. Once the array is built clicking a button displays a random answer. It’s pretty simple to code and we code it together as a class. Students love asking it questions when we’re done.

Usually I have students add their own answers to the text file and then modify the program to handle the new set of answers. We also talk about different ways this could be coded. What if we didn’t know how many answers/lines were in the file? Would be use a different loop and/or a different array type like an arrrylist? What options (methods or functions) should we use to provide the most flexibility?

This also provides students with some sample code to look at when I assign larger projects and expect them to do much more on their own. Is this a good project? Magic 8 ball says “Yes definitely.”

Friday, October 25, 2019

A Loop By Any Other Name

My first programming language was FORTRAN IV. As I recall we had Do loops. They worked pretty much the same as what we call For loops in most languages today. We didn’t have while loops but we did the same sorts of things with line numbers, if statements, and the powerful but “evil” Go To statement. As time went on I learned more ways of specifying looping constructs including recursion. Recursion took me some time to wrap my head around. Possibly because I used some languages that didn’t even support it back in the day.

These days there are all sorts of iteration loops of various complexity and power. For a software developer that is wonderful. For a teacher? Well, it means you have to make decisions about what to teach. For a one semester, first programming course I like to keep things simple. A C-family For loop has all sorts of possibilities from the simple to some pretty complex structures. Eventually students will learn many of them but I could probably spend half a quarter just on For loops if I tried to get everything possible in and understood. The cognitive load on some possibilities feels like it would be too much for many students.

Mostly I try to focus on the base concepts. A loop has a set up piece. Variables are set to a known starting state. A loop has some sort of comparison it see if it is finished. A counter it checked, a flag is checked, or maybe an interrupt happens. But something has to stop the loop sometime. usually but we can get into those times when an infinite look is useful later. And of course something has to happen that changes the values or states that the loop is checking.

Understanding these concepts will, I sure hope, prepare students for what ever syntax or iteration style they run into over time.

When we teach students for a career rather than just for a job the concepts are much more important than the programming language or the IDE. Concepts – what a concept!

Tuesday, October 22, 2019

How Many Words in That Text?

One of the projects I have used for years is a letter counter program. The idea is to count the occurrences of each individual letter. It’s a nice project that includes arrays, loops, and some string manipulation. This is the sort of thing that does have some real world utility. Cryptography uses word counts to try to crack substitution cyphers. Linguists use it to study languages. And that is just two of what comes to mind.

The next logical (to me anyway) step is to count words. I’ve been thinking about adding this in for a while. It is actually something I was assigned as a project many years ago when I was an undergraduate. It’s not as simple as counting letters. The most obvious method involved counting spaces. What happens if someone is old school and places two spaces after every period? Well, that is something to take into consideration. And what about other white space like tabs or line feeds? Or special characters?

Doug Peterson related in a recent post (About words) that two different programs gave him two different word counts for the same piece of text. The counts were off by 3 on a text of about 486 words. Not a huge percentage but on a book length text that could make a difference. Some articles in magazines are paid by the word. That means getting the count right means money.

Now people can count words with greater accuracy though I don’t want to do it myself. At some point someone is going to feed a lot of data into some artificial intelligence. Long sections of text that have accurate (human counted perhaps) word counts will be fed in and the AI will learn what words are and how to count them. It’s not going to happen until someone decides that developing this is worth the time and money. I wonder if it will be an academic or an industry researcher?

For the time being I think this will make an interesting conversation in class. Maybe we’ll have a contest to see  who can come up with the most accurate algorithm?

Friday, October 11, 2019

What Time Is 30 Minutes From Now?

Got the proctor guide for the PSAT that I have to proctor next week. There is a chart to help proctors determine stop times that are 25, 35, 50, and 60 minutes from a time after the start time hour.

Wait! What? Someone needs a chart to tell them that if the start time is 5 minutes after the hour that 60 minutes later will be 5 minutes after the hour? Apparently someone does. Or someone thinks some one does.

Some of my students, when being told to return to class in a half hour, ask me what time that will be. I blame the analog clock. That and laziness.

So obviously I am wondering, should there be an app for that? Yep, I found a new coding project. Now I just have to decide which class to use it in.

Thursday, October 10, 2019

Michael Backus Alaska Middle School Computer Science Teacher

Every so often I run into a computer science teacher’s work online and ask myself “how have I never heard of this person before?” This week I listened to a podcast by Vicki Davis with a middle school CS teacher from Alaska by the name of Michael Bachus. (How to Make Programming Easier) This guy is doing some cool stuff with middle school students. Robots, artificial intelligence, hardware  and software, and helping a lot of teachers do the same.

Michael Backus teaches computer literacy and computer science at Teeland Middle School in Wasilla, Alaska. As the creator of the http://www.akrobotnerd.com, he has shared many projects that he has developed over the years, the most famous being his Artificial Intelligence with Arduinos curriculum.

Vicki Davis has a lot of great interviews as part of her daily 10 Minute Teacher podcast. She’s had me on a couple of times as well.

In any case, listen to this podcase and check out Michael Backus’ resources. Curriculum, videos, projects, and it looks like a lot more.

Someone needs to get him to CSTA to present some time.

Wednesday, October 02, 2019

ACM/CSTA 2020 Cutler-Bell Prize in High School Computing

Applications for the ACM/CSTA 2020 Cutler-Bell Prize in High School Computing are now open. The deadline is 12 January 2020.


The Award

The ACM/CSTA Cutler-Bell Prize in High School Computing is a prize designed to recognize talented high school students intending to continue their higher education in the areas of computer science or technology. The program seeks to promote and encourage the field of computer science, as well as to empower young and aspiring learners to pursue computing challenges outside of the traditional classroom environment. The prize is a made available through a $1 million endowment established by David Cutler and Gordon Bell. Dr. Cutler is a software engineer, designer and developer of several operating systems including Windows NT at Microsoft and RSX-11M, VMS and VAXELN at Digital Equipment Corporation. He is Senior Technical Fellow at Microsoft. Dr. Bell is an electrical engineer and an early employee of Digital Equipment Corporation where he led the development of VAX. He is now a researcher emeritus at Microsoft Research. Up to four winners will be selected annually and each will be awarded a $10,000 prize which will be administered through the financial aid department at the university the student will attend.

Eligibility

To apply for the Cutler-Bell Prize, you must be a graduating high school senior residing and attending school in the U.S. Challenges for the award will focus on developing an artifact that engages modern computing technology and computer science. Judges will look for submissions that demonstrate ingenuity, complexity, relevancy, originality, and a desire to further computer science as a discipline.

Tuesday, October 01, 2019

2019 Champions of Computer Science Awards

Know a student or teacher or administrator who has achieved something this year to increase access and quality of CS education. I can think of a number of people who should be nominated. Maybe you can think of someone as well? Don’t assume they will nominate themselves! Deadline is midnight Pacific Time October 21, 2019.

2019 Champions of Computer Science Awards

The Award

Tell us about a student, educator, administrator, or organization that has achieved something in computer science this past year for the opportunity to be recognized as a 2019 Champion of Computer Science. These awards are a collaboration between CSTA and Code.org.

The Champions of Computer Science Awards identify and promote students, teachers, administrators, and organizations who have made a significant impact to improve access to and the quality of CS education.

Eligibility

Any K-12 student, teacher, or administrator may be nominated for the Champions of CS Awards. Organizations that work directly to improve access to and the quality of CS education may also be nominated (examples: afterschool coding clubs, local CSTA chapters, regional or national nonprofits, etc.).

Nominations

Award winners and a guest of choice will receive an all-expenses paid trip (travel and hotel) to attend the CSEdWeek event on December 9th (location to be confirmed). This opportunity is only available for US submissions.

This form closes Monday, October 21, 2019 at midnight PT. Email awards@csteachers.org if you have questions.






Monday, September 30, 2019

The Problem Of Cheating on Programming Projects

This seems to be the year a lot of people are really getting concerned about cheating on computer science programming projects. There has been some discussion of the issue on one of the mailing lists I am on. Garth Flint blogged about it at Finding cool projects for programming classes. And I caught a student searching for exercise solutions for Code.Org’s AP CS Principles course work.

Of course cheating on programming projects is nothing new. I know that people shared punch cards back in the early days. Yeah, I’ve been around a while. I have also caught students sharing code via Google Docs. With the tools we have today, cheating has never been easier. Solutions to popular coding projects are easily available on the Internet and found using search engines.

It’s amazing that students don’t think teachers can recognize and then find solutions that a student copied from the network. We can and we do.

One common refrain I hear is that professionals get code off the Internet. And they do. GitHub is all about sharing and reusing code. StackOverflow and sites like it are were professional and amateurs find solutions to their problems and use them. It is considered good practice to use these tools. But school is different.

School is about learning and projects are assigned both to provide practice and to evaluate what students have learned. Students have a tendency to grab code they don’t understand and try to shoehorn it into a project. Or to copy a while project and turn it in as their own. Interviews can usually determine is a student understands what they used or not.

Ideally though, students would only hand in their own individual work. That is better than catching them and docking them points. Today’s students have more pressure to get good grades and (apparently) less understanding of the correlation between knowledge of the material and those good grades.

Garth wrote in his blog about trying to come up with unique projects that don’t have solutions on the Internet already. That’s hard. It seems like a lot of us teachers think of the same projects. Or we get them from third party curriculum and textbooks. Once a project is in wide use solutions will appear on the Internet pretty quickly.  Even if a teacher does come up with a project that can’t be found on the Internet, if you have one really bright student who is willing to share their solution you can have cheating.

The only thing I can think of is making the issue part of a discussion of ethics and the meaning of school. Using code from the Internet correctly requires that students actually understand what they are using.  Students who cheat their way through are going to find themselves in a bind eventually. If not in post secondary school than in their careers.  Somehow we need to make them understand that.

Wednesday, September 25, 2019

If Statement Programming Projects

Over the years I have used a number of projects to give students practice using if statements – especially those that involved nesting or checking lots of values. Currently I am using:

  • Hurricanes – user enters a wind speed and the program reports the storm category
  • Voting – User enters an age, and checks boxes to indicate citizenship and registration
  • Pizza pricing – Base pizza prices plus add-ons for veggies, meats, or different cheeses.
  • Movie theatre pricing – a bit easy as there is only ages to check but ranges require some thought.
  • Ski tickets – prizes based on age and whether or not they are staying at the resort. I could add holiday/weekend of midweek as well.
  • Jumanji – If the random number generator “rolls” two dice whose totals are a 5 or and 8 let the player out of the jungle.

These all work fairly well. Students relate to most of those. Voting gets kids thinking about their future so that is a plus. Obviously decision structures show up in other projects all semester long but these have that as a special focus.

I’m trying to think of some new ones. Projects that are relatable and that are complicated enough to make students think but not so hard that they get frustrated easily. What are you using? What works well with your students?

Tuesday, September 17, 2019

Book Review: "Tools and Weapons"

"Tools and Weapons" by Brad Smith and Carol Ann Browne is a look at some important computing issues through a Microsoft lens. It is a pretty revealing look as the authors write seriously about the thinking behind Microsoft’s dealing with issues like the Snowden leaks, suits against the government about over reaching subpoenas, protection of users data, transparency, cyber security, and more.

I really like this line from the introduction "When your technology changes the world, you have a responsibility to help address the world you helped create."

There were several threads moving through the book. One was the need for building guiding principles for looking at technology and its uses. An other was the need for diversity among people developing technology and the guiding principles. There is frank talk about embedded bias in algorithms and how diversity is essential to fixing that problem. Responsibility for what technology does is another key thread. Without using these words, the book suggests that “should we” is as important if not more so than “can we.”

The chapters on Artificial Intelligence and facial recognition are the best look at the pros and cons I have read so far. Many people seem to have a doomsday view of AI but Smith and Browne have a more nuanced look; one that is not apocalyptic but more practical and near term. There is a lot to think about in these chapters but the picture painted is more about how we need to think about issues going forward than that we should either panic or be unconcerned.

I found the chapter on China very interesting. It was clearly written carefully to outline cultural and political differences without appearing to attack anyone. I might have preferred a stronger stance but I’m not the president of a global company.

One clear takeaway for me is that today’s Microsoft is not the same Microsoft as it was under Ballmer or Gates. Satya Nadella is a different sort of leader altogether and ethics and principles of a company are set at the top. Where Gates was naïve in some ways and Ballmer was focused on the bottom line Nadella, while not losing sight of the bottom line and still naïve in some ways (remember his gaffs about women getting ahead) looks at things differently, listens better, and is interested in the better good.

His decision to release Windows XP patches for the WannaCry virus for free is one I have to wonder if Ballmer would have made the same way. Maybe he would have but that I have to wonder is telling.

The book is not a difficult read. The language is non technical and technology is explained in layman’s terms. That is not to say that the book is only for non-technical people. I think technical people should read it. So should policy makers in both government and the private sector. It would make a great supplemental reading for an ethics course, especially for an ethics course for technical people.

One last interesting thought from the book. No one graduates from a US military academy without taking an ethics course but many people graduate with technical degrees without taking an ethics course. Maybe that should change.

Friday, September 06, 2019

Password Checking Tools

Neil Plotnick shared some Password Checking Tools on Facebook recently. I’ve used some of these in the past and find them useful and instructive.

The more security aware of my students always ask me how safe it is to use these websites. I tell them to use things they think are good passwords but not ones they actually use. Some of the sites make the same recommendation.

The first two sites above give an estimate for how long it would take a computer to brute force crack the password. The estimates don’t always agree. This is not surprising as they are probably based on some slightly different assumptions. The time scale is more important than the actual number though.

The third site explains why a password it strong or weak which is very useful. One thing that is interesting is the impact of special characters. I have run into a number of sites that don’t allow special characters in passwords. I find that surprising and wonder why that is. I’d rather require their inclusion.

Having students in a programming class write their own password checker is a great exercise by the way. It helps reinforce string manipulation, general parsing concepts, and password safety all at the same time.

Thursday, September 05, 2019

NCWIT Award for Aspirations in Computing

This is a great program for high school girls interested in technology. I have had several students get awards at the state level and they all say it has been a good thing for them.


Hello Educators! Applications for the NCWIT Award for Aspirations in Computing are now open! The deadline is November 5th, 2019. As an educator, you play a pivotal role in supporting the next generation of technologists. When 2018 AiC Award recipients were surveyed about their motivation to apply for the award, 65% of respondents named outside encouragement to apply. When asked about who most influenced the award recipient to apply, 62% of respondents named Teachers/Educators. Encourage your students to apply and spread the word!

When you endorse a student’s application, you are eligible and encouraged to apply for the NCWIT Educator Award. Applications are due December 2nd, 2019!

https://www.aspirations.org/participate/high-school

Wednesday, September 04, 2019

The Scratch Course For Teachers

This looks like a valuable free professional development course for teachers interested in incorporating Scratch into their curriculum.


"The Scratch Course" is a free, six week, online workshop style course for teachers interested in learning more about programming with Scratch. Originally created through funds from Google's CS4HS program, this course has served over 1000 teachers from around the world in the last five years. We are preparing to offer our fall 2019 section of the course starting on Monday, September 16. For more information about the course and to pre-register, visit: https://csed.uni.edu/scratch-intro/

Monday, August 26, 2019

Updating and Expanding Programming Projects

I’m always looking for new projects. I found an interesting example in the book “The Creativity Code” (Creativity Code review here). It was a poem generator that took random adjectives, adverbs, verbs, and nouns and fit them in “missing” spots in a template. It looked like fun but as I thought about it, it was really just a different version of a MadLibs type of game. It’s also similar in some ways to the Shakespearian insult project (have you seen the Shakespeare Insult Kit at MIT?)

What I would like to do is expand a project. That is to say I would like to take an existing project, like the Shakespeare Insult project and add something to it. Projects that grow and build as new knowledge is learned can be highly motivating.They mean students don’t have to start a project from scratch. This also reinforces the idea that programs can, and often are, modified and enhanced.

Currently my Shakespeare project teaches about parallel arrays. What I have been playing with is adding a class to this project later. An object of this class would store  array lists of strings and have a method to return a random string when asked. Retro fitting the new class should be fairly easy for most students. They will see how this simplifies code

insults.Next()

being easier than

insults[r.Next(0, 50), 0]

While simple at first I have realized that there are multiple constructors that should be created for this new class. An empty list and an object initialized with an array (or other list) at a minimum. Similarly there should be an Add method which would have several overlays – individual strings and an array of strings are two obvious examples. I am sure that student will think of others as we go along.

I’m optimistic that this idea will lead to some useful discussions about thinking ahead about how a class might be used and how it could be written to be useful in a number of different design cases. At the very least I had fun reviewing ArrayList as I wrote some code as a thought exercise.

Thursday, August 22, 2019

What I Want from Computer Science Education Professional Development

The CSTA 2020 Call for Proposals is out and as usual it has me thinking.   Two questions come to mind. One is, what can/should I propose to present? The other question is what do I want to learn? I think I have been to every CSTA conference (since it was the CS & IT conference) so I have attended a lot of sessions. I’ve presented quite a few times as well. So I have a lot of history to think about.

I don’t currently have any sessions or workshops I want to present. I keep asking myself is that is because I am not working hard enough to innovate or create new ideas. I suspect that a lot of people doubt if they are doing anything special enough to present. Some of those people are right but a lot of them are wrong. So I need to think about that.

I’m thinking more about birds of a feather sessions to propose and looking at my projects to see if I have something really nifty for the nifty project session. Birds of a Feather (BoF) sessions are very interactive and are great for refining ideas. And nifty projects are, well, they’re nifty.

What do I want to see presented? That’s actually hard these days. Why? Because my brain is already full of more ideas than I could learn or teach in a lifetime. Artificial Intelligence, cloud computing, Internet of Things, game development, virtual reality and on and on. Content! There is a lot of possible content out there.

What I really want to learn is how to teach better. I’m doing some reading (Computer Science Education is my current read) and I’ve been learning a lot from Mark Guzdial’s blog for a while. If you ever get a chance to hear Mark talk about how to teach computer science GO HEAR HIM! There are a number of his talks on YouTube BTW.

Lots of people want to promote a new tool (software or hardware) as a silver bullet for teaching. I’ve heard enough of them. Given a few myself. The more I teach though the more I think there is more to becoming a better teacher than a cool new robot, a fancy new IDE, a great new “educational toy.” or what ever.

Teaching is ultimately about establishing a relationship between teacher and student. It is about communicating well and sharing passion. That’s what I want to learn how to do better. And if you have research to back up what you are teaching about how to teach I really want to hear from you.

Wednesday, August 21, 2019

Vicki Davis Interviews Alfred Thompson

Over the summer Vicki Davis interviewed me for her Ten Minute Podcast. Vicki and I have been friends for a number of years and it is always a pleasure to talk with her. We talked about a number of things including Project-based learning. Passion-based learning. Problem-based learning.


Sunday, August 18, 2019

And So It Begins–School year 2019 2020

Tomorrow (Monday) I will meet the new freshmen in my study hall. And I’ll finish getting my room ready for the new school year. First day of real classes is Tuesday. And I am not as ready as I would like.

I have a day by day plan for every day of the semester (even the year for my AP CS Principles class). Lesson plans last until they run into actual students so there will be adjustments. There always are. It’s my 5th or is it 6th year teaching honors programming so that is more settled than anything else. I still make changes as I go along because not every class in the same as any other. And who wants to do the same thing year after year anyway.

It’s my third year teaching AP CS Principles and I am making big adjustments in the schedule over last year. I am hopeful that I’m going to get it better this year but who really knows.

My third year for teaching Mobile Application Programming and I am switching from AppInventor to Thunkable. AppInventor has given me a lot of issues with the emulator and most of my students have iPhones and Apple is dragging their feet on allowing AppInventors iPhone software. Thunkable already works with iPhones, though without support for some features I would really like. Plus it seems to connect to phones more reliably. We’ll see how it goes. I’m adapting project ideas as I go along. That’s not completely new but it is not without risk.

At least I only have three preps. Last fall I had four. I also have more free periods as I am teaching a reduced load (at my request) and that should help a lot.

Are you ready? Have you begun already? Let’s do this thing!

Wednesday, August 07, 2019

Book Review: The Creativity Code

I’ve been reading a lot about Artificial Intelligence (AI) this year. Several of them have been pretty scary. It was recommended that I take a look at “The Creativity Code: Art and Innovation in the Age of AI” by Marcus DuSautoy. It was a good recommendation. This book is different from the others I have read. Or tried to read. It’s focus is not on business or about intelligent weapons. The focused as the title suggests is on creativity.

The book discusses how computers, or rather AI software, is creating art, music, and new ideas in mathematics. The author is a renowned  mathematician so the sections on using AI in math, developing proofs for example are especially well done. One unexpected benefit of the book for me was a new appreciation for what mathematicians actually do and why they find some year joy in the field.

The author shares some concerns about how AI might make mathematicians like himself obsolete. In the long run though he sees a place for human creativity in the world. AI routines are still being trained by people. They do go beyond what they are specifically trained but have to start with that training. Well, usually anyway. Will that change? Let’s just say that there are still a lot of unknowns. AI has moved in ways we haven’t expected already so there is that.

If you are interested in learning about AI in art (computers creating works in the style of famous artists for example, music (using existing styles or creating new ones), writing (fiction or non-fiction), mathematics, and several other fields we don’t usually associate with AI this is a good book for you.

It’s an interesting and usually easy read (I confess some of the math was a little deep for me). It an in interesting look at AI. Recommended.

Thursday, August 01, 2019

What Programming Concept Do I Use?

I’ve been programming a long time. I wrote my first computer program in 1972. I think the parents of some of my students were not even born yet. So it’s hard to remember what it is like to be a beginner. Late last school year it finally occurred to me that a lot of my students understood concepts in theory but were having trouble knowing which concept to use to solve problems. Honestly this was having trouble sinking it with me because this stuff is so obvious to me.

Lauren Margulieux helped me out here with her recent blog post I’ve been a Computing Education Researcher for 8 Years and just took my First Programming Course: Here are 5 Things I Learned. This is a must read post for anyone who teaches beginners. One of her five things was “Deciding which programming concept to use was harder” Just what I had been thinking about lately. I think her experience, background, and ability to self-analyze her own learning helped her to see  what I think are common beginner issues that I have had trouble seeing myself. Maybe other teachers have trouble seeing these things as well. Or maybe just me.

Suffice it to say, I have to really think about how to help students over these hurtles.  Helping students to see when to use various concepts is my first priority. Stories maybe the answer. Can I tell stories about the sorts of things various concepts are good for. I do some of that already but maybe more examples will help. It’s worth a try.