Change Makers: A Podcast from APH

All About CJ Threads

On this episode, learn about CJ Threads and how it helps students learn Python code. After that, Tech Takeaway discusses an exciting new feature now available on the Monarch.

On this episode

  • Narrator
  • Sara Brown, APH Public Relations Manager
  • Katrina Best, APH STEM Product Manager
  • Michael McDonald, APH Senior Software Engineer 
  • Jennifer Wenzel, APH Technology Product Specialist
  • Michael Dennis, APH Technology Products Specialist


Additional Links

Narrator:

Welcome to Change Makers, a podcast from APH. We're talking to people from around the world who are creating positive change in the lives of people who are blind or have low vision. Here's your host.

Sara Brown:

Hello and welcome to Change Makers. I'm APH's public relations manager, Sara Brown, and today we're learning all about CJ Threads. After that, we'll have our monthly Tech Takeaway. Up first, I have APH's Product Manager on the STEM team, Katrina Best, and Senior Software Engineer Michael McDonald here to tell us all about CJ Threads. Hi Katrina, hi Michael, and welcome to Change Makers.

Katrina Best:

Thank you for having us, Sara.

Michael McDonald:

Yeah, thank you for having us. I look forward to this.

Sara Brown:

Great. And I'm excited to learn a little bit more about CJ Threads. But before we get into that, do you mind to introduce yourself and let our listeners know what it is that you do at APH?

Katrina Best:

Absolutely. My name is Katrina Best, and I'm a product manager on the STEM team here at APH. I oversee technology and coding products from concept through launch, which means working across teams, managing prototypes, and incorporating user feedback. It's a role that's strategic and creative, and I absolutely love getting to work with the software engineers like Michael that build tools that make a diff real difference for students and educators.

Michael McDonald:

And I'm Michael McDonald. I'm a senior software developer at APH, and I have been the lead developer on CodeJumper and have led it through CJ Threads as well as a number of other products at APH.

Sara Brown:

Great. Well, get to know, and it's always interesting to hear the backgrounds. Now talk about CJ Threads and share exactly what it is in case those, in case any listeners aren't familiar out there.

Katrina Best:

Yeah, so CJ Threads is the newest module in the CodeJumper ecosystem. CodeJumper started as a way to teach students coding concepts through a very tactile hands-on experience with physical pods. It's a really great entry point, especially for students who are blind or low vision, or for younger learners who benefit from something concrete. It's also used widely in the general education setting, and the state of Pennsylvania is a state to reach out to if any of our listeners are interested in finding out more about using it in the general education setting. CJ Threads builds on the CodeJumper Foundation and it takes students to the next step, moving from block-based coding into text-based coding. And that's a really big transition in computer science education because text-based coding like Python is what students will encounter in their classes and eventually in the workforce. Our goal with CJ Threads is to make that leap approachable, engaging, and accessible so students not only learn the concepts, but also gain confidence while working directly with the text that's within the realm of CodeJumper. And Michael, if you have anything to add, feel free.

Michael McDonald:

So, you know, while this is in Python, um, you know, we are still very much um in the realm of what the students are already learning in CodeJumper. So you know they should be very familiar with every all the concepts and everything that are doing in CJ Threads.

Sara Brown:

Great. Now talk about how it does transform block coding that students have already learned into actual Python code.

Michael McDonald:

So there's there's two things um that we can do with um CJ threads. Um so the first thing is it will transform whatever code you have created with blocks into Python code. So if you have a student that's you know already pretty uh proficient with code jumper, they can go and create you know all the programs that they've been doing for a long time and then you know press one button and it will convert it to Python code. So that'll allow students who you know are already familiar to to see how they would do that same thing in Python. But beyond that, um once they get a little bit familiar, more familiar with the Python side, we also have a toolbox, and so that toolbox is gonna allow the students um, you know, to not have to, you know, just go right into Python and having to learn to type everything and keeping all their syntax correct and stuff. It will allow them to, you know, use either a hotkey or a button to add new code that is very familiar with uh what they have already learned in um Code Jumper. And it also allows them to learn some new um skills um beyond just text-based coding, um, because we have some extra ability um like expressions and more threads in CJ in the Python side.

Sara Brown:

So, what inspired the creation of CJ threads? I mean, was it just you finished with or you with code jumper, you just saw was this like the next logical step, or did you see that Python was you know becoming more more popular or becoming the more used program and felt the need to create the next step? How did how was this created?

Katrina Best:

The inspiration for CJ Threads came from listening to teachers and students, but also working alongside uh Michael as well as Cecily Morrison from Microsoft. So it was always the plan from the beginning to transition students from accessible block-based coding into a text-based. And then Michael really did a lot of work on figuring out if we want to start with Python or Java or C. And Python is really the next logical step. It's a more friendly language to learn because structurally it's very similar to like the English language. And it's the inspiration for CJ Threads, um, that's really where it came from. And CodeJumper has always been a great entry point using the physical pods to teach the fundamentals of sequencing loops and conditionals in a tactile way. But we really wanted to make sure we took students and taught them those concepts, and then we created a bridge to get them into a text-based coding environment. So while we're transitioning into CJ threads and into the Python concepts, we then will expect students to work with their teachers to get into Python even further through other programs.

Michael McDonald:

You know, Python is a very popular um programming language for students, especially at that age group, to learn. And so we thought that was a great um entry point for them.

Sara Brown:

What specific learning gaps or user needs does CJ Threads aim to address in the educational tech space?

Katrina Best:

We wanted to be very intentional about designing CJ Threads with inclusive practices. Too often students who are blind or low vision end up sitting on the sidelines while their peers dive into programming. With CJ Threads and the CodeJumper ecosystem as a whole, our goal is to make sure they're included in that journey from the very beginning. At the same time, the transition from block coding to text coding is a challenge for many students, not just those with vision loss. CJ Threads bridges the gap by providing a supportive, engaging way to connect the concepts they've already learned, like sequencing loops and conditionals to actual Python syntax syntax within the realm of CodeJumper. That combination of accessibility inclusivity allows more students to build confidence and see themselves as coders.

Sara Brown:

As in the in the space of product managers and product development and software engineers, can you walk walk me through the product development lifestyle of CJ Threads, you know, from concept to release? And were there any milestones, major milestones or pivots that you encountered?

Katrina Best:

Absolutely. Um, the development of CJ Threads followed APH's full product life cycle, which we strive for 18 months, and this product took three years. Um, we started from concept discussions and market research, looking at where CodeJumper would naturally grow and what educators and students were asking for, as well as in our conversations with Cecily Morrison and then also Michael McDonald taking the lead on thinking through what programming languages we could transition into next. From there, Michael and Mark Clare built some early prototypes and we began testing them internally before moving into field testing with teachers and students. We actually did two rounds of field testing, one very early on, and then one we called it a beta test, and we did it closer to release. So in the summer months leading up to August 11th, one big milestone was deciding to expand beyond just coding into a full storyline with characters and the ability for students to create music within Code Jumper. And that pivot came directly from educator feedback. They wanted something that felt engaging and fun for younger learners, but also maybe the middle school age group and not just technical. Another milestone was refining the toolbox to mirror the physical code jumper pods, which helped create continuity for students with low vision.

Michael McDonald:

One other aspect is um you know the decision on how closely to mirror what we had on the physical side for CodeJumper. And originally we had looked at you know making it a little bit more expansive than what we finally went on, but working with Cecily at Microsoft, um, we what we decided was that it was very important to you know sort of keep that spirit of what you can do on the physical side. So, you know, if you look at the two sides, well, CJ Threads gives you a little bit more uh ability to do some things that you can on code jumper. Um very much the the two sides are sort of a one-to-one. So what you can do in CJ Threads is very closely mirrored um to what you can do in Code Jumper, and we thought that was a a very good transition for students who are learning um Python.

Sara Brown:

Okay, so when you talked about feedback, I'm curious as to how did you incorporate the feedback? How did that shape the the final design?

Michael McDonald:

The more feedback for me that is always the better, and so it's great when we get some good feedback. Um you know, you know, I I can only do what I can imagine. So um working with Cecily first um was great because she I think she really helped us hone in on what CJ Threads was about, and what CJ Threads is about is um following through with what Code Jumper is and is sort of a stepping stone. And you know, from the educators and um some of the other people we worked with, um things like line numbers, um it's it's really helpful to have line numbers, and originally we didn't have that incorporated. Um adding a new sound set. Um, you know, we have a new sound set called CJ the DJ, and that allows students to play with uh sounds and music in a way that they haven't been able to with CoJumper before. And I think it's very exciting for students. Um, you know, some of the accessibility and visual aspects of the um app have also been improved. Um, you know, so it just feedback um from educators, um, from Cecily at Microsoft, from, you know, QAs has been really helpful in, you know, really honing it to the best product possible.

Katrina Best:

To get all of that feedback as well, APH, you know, earlier we talked about the product development lifecycle. APH has designed gate reviews. There's six different gate reviews that the product manager, after working with um engineering, um, we have to basically funnel the product through. And during those gate reviews, we're getting feedback. We're getting feedback from the field testers, the beta testers. Um, as Michael mentioned, we worked closely with Cecily Morrison as this was her uh brainchild, if you will. And then we also worked with two different curriculum providers initially, and both of those companies provided us wonderful feedback. Um, and it very much was a collaborative effort as well internally, which I know educators um were kind of like the land of oz, if you will. Um, but internally a lot of feedback came from um other engineers as well. And then marketing, um, sound design, and um really other folks at APH as well internally gave us good feedback.

Sara Brown:

Now, looking ahead, how do you envision CJ Threads evolving? You know, what do you see next on the horizon?

Katrina Best:

Looking ahead, we see CJ Threads as a tool that can continue sparking curiosity and building confidence for students who are ready to take the next big step into coding. We're excited about expanding the lesson content and adding new challenges and finding creative ways to keep students engaged through characters, sounds, and storytelling. Most importantly, our focus is on keeping the experiences accessible and fun so that every learner feels included. As computer science education evolves, CJ Threads will remain a strong stepping stone that helps students connect their early coding experience into real-world programming. And I encourage our listeners to go to codejumper.com and then navigate to CJ Threads. And under CJ Threads is where all of our lessons will be housed.

Sara Brown:

Before I let you two go, is there anything else you all would like to share or discuss?

Katrina Best:

Every student is a coder. I fully believe this. Um that every student is a coder, and by just dipping their toe into the realm of CJ threads, it's going to expand what they believe they can do.

Michael McDonald:

I I just want to second that. Um, you know, I mean, I think coding is always a great opportunity for students. Um whether they go into a computer-related field or not, I think it's important to um have familiarity with computers, not just from using applications, but you know, sort of how development works. And I, you know, I think it just makes students a more well-rounded um individuals. And I think uh CoJumper and CJ Threads is a great opportunity for students to, you know, get that education that, you know, they may have some issues getting in other ways. So um I'm I'm just I'm glad we were able to do this product and I'm glad students are enjoying it.

Katrina Best:

One thing too, Michael, that I know our team has talked about is whether TVIs are introducing CJ Threads and Code Jumper to students because it's the next step for them getting into a computer science course and in their elementary to middle school. Um, or it's really great for students to practice their screen reading skills because they're navigating around the CJ Threads module and then they're typing in edit boxes. And so we've created resources for students to practice their screen reading skills, which is not always a fun skill for students to practice. So it's kind of like, yes, you're learning CJ Threads and you're making your own beat with CJ the DJ, but you're also practicing screen reading skills.

Sara Brown:

Okay, well, Katrina and Michael, thank you both so much for taking time out of your day to come on and talk to me about CJ Threads. Thank you for having us.

Michael Dennis:

Yes, thank you.

Sara Brown:

I've put links in the show notes to CJ Threads and Code Jumper for anyone wanting additional information. Now it's time for our tech takeaway. Here's Jennifer Wenzel and Michael Dennis with more.

Michael Dennis:

Hello and welcome to our new podcast episode. Welcome to the tech takeaways. My name is Michael Dennis.

Jennifer Wenzel:

And my name is Jennifer Wenzel, and we're so glad to have you here.

Michael Dennis:

And today we want to talk about the brand new feature on the Monarch, which is the multi-line rail support with screen readers. Um, APH just launched the ability with the Monarch on its 1.3 update, which came out in July, and we had already the pleasure to show that feature at uh the NFP conference. And Freedom Scientific also just launched the newest update of DOS a couple of weeks ago, which also has now the ability to use the monarch as a multi-line brail display. And Jennifer and I will answer you a couple of amazing questions and tell you how to even set it up. And Jennifer, that is also already the first question. How can our users of the monarch even connect the monarch with their computer?

Jennifer Wenzel:

That is a great question. And I'm so excited that this feature is working. It really is what they call a game changer. Um, being a totally blind person, I have never accessed multiple lines of content from my computer screen ever. I've done um multi or single-line Braille displays quite a bit, um, and that's been a great way to access Braille with the computer. But this is incredible because it actually gives me a representation really of what's on the screen. And it takes content like Excel sheets and shows them like they're supposed to be shown. So it's really exciting, and I'm jumping ahead of myself. So we'll go back to setting it up. So setting the monarch up and connecting it is really pretty easy. You have to do two things. Um, you have to on the JAWS side, you need to use the Braille and Synthesizer Manager, um in which is in the JAWS context menu under utilities, you go to Braille and Synthesizer Manager and you add a Braille display, which you select or you don't select the monarch, which many people have tried to do and found that it doesn't exist in there, you select the HID HID compatible display. You check that, you hit next, you then need to set that as your primary display whenever JAWS starts. And then you need to hit finish, and then you need to restart JAWS for that setting to take effect. Now on the monarch side, you have to make sure that the monarch is in rail terminal mode, and you have to make sure that the monarch is connected to your computer with a USB-C cable. And I recommend the cable that came with your monarch, your charging cable. Others might work as well. You want a good cable with a good connection to a USB-C port on your laptop and the USB-C port on the Monarch. If all of those things are in place, your connection's good, you've got it in Braille terminal mode. When you first select Braille Terminal Mode, it will give you a choice of USB. That is the only choice right now. But in the future, you may be able to use Bluetooth to connect. So that's why that choice exists, because in the future you'll have a menu. But for now, you hit enter on USB, and that brings you to Braille, it may say Braille Terminal. And you may have to wait a moment for JAWS to recognize that you are there in Braille Terminal. If it's not working, you may have to restart JAWS one more time, but then you will see the JAWS content on your screen, which is extremely exciting, especially if you've never gotten the experience of seeing or or having in Braille more than one line on your screen at a time.

Michael Dennis:

Awesome. And maybe one thing to add on that one is if you guys open or start your monarch and you have your main menu and you don't find the Braille terminal mode in there, just open all applications and you will find there the Braille terminal mode. Um Jennifer, you're already very excited as our listeners can hear about it, but there's also something very special about uh the monarch and JAWS, so that the monarch offers you multiple different modes. Can you tell our listeners a little bit more about that?

Jennifer Wenzel:

Yes, so there are modes that are um present in the Braille Viewer menu within JAWS. So using the JAWS key, Alt, and the like viewer, you can enter the Braille viewer menu and you'll notice multiple modes. So the one at the very top is what they call the wrapped mode, and that gives you blocks of text so that you get as much text as possible on the Monarch display. And this is great for reading documents, editing documents, um, reading email, reading anything that's very text-based. Then you have a cropped mode, which is great for tables, and it also works beautifully in Excel. I believe it's the only mode really in Excel because that's all you need is because it's Excel is presented as tables. Um it is worth noting that generally the monarch or the or Jaws with the monarch will switch automatically into wrapped or cropped based on what you need. But if it hasn't, or if you want to see it in a different view, you can do the switching for those. You also then have some other modes for split braille view. Now, split braille is something that was around with the with Jaws for it's been around for a while. And you could use it on single line displays. So what it would do is it would split the line in half. So if you had a 40 cell display, you had about 19 cells on each side with a bar down the middle. Now with the monarch, you have some really exciting ways to use that split view. You can use what they call attributes mode, where it will show a line below your line, below each line of your text to show what kind of attributes, like bold italics, underline, whatever you have on that document. You can also do an annotations mode, which would show things like comments or revisions in a collaborative Word document. The nice thing about the split editorial view on the Monarch is that you can adjust the amount of lines that are in that split view viewer. So if you want to see five lines on top of your document and five lines on the bottom that show you the annotations and comments, you can do that. You can even split your lip and have a split content on the top instead of the bottom. So it's very exciting. It gives you lots of ways to view your text. There's also a translation split mode, which is really exciting because what it will show is if you have your monarch withdraw set to view, say, uncontracted braille, and you want to see what it would look like in contracted braille, you're able to do that with this translation split mode. You can also have a split mode of speech history. You can also have some buffered text. So if there's something that you're keeping track of on a spreadsheet, and you need to be maybe you're doing an invoice or reconciling something and you need a total to reach a certain amount, you can keep that total in your buffered split view as you're changing other text on your spreadsheet. So there's just lots of different options, different ways that you can view content. The really exciting thing to me is to be able to experience Excel content in a table like it's meant to be. So instead of just seeing one cell at a time, which usually happened within a single line display, you're able to see the the whole row. Not not I'm I'm sorry, not the whole row, but more items in a row. And then you can use your arrows to see the in as much of the row as possible. The thing that limits you from seeing the whole row is, of course, the size of the monarch screen because it's only the 32 cell line. But you also can see the columns. So it's very nice, especially your left side column, right away that comes into view as an entire column. And that's a really great way to be able to check relationships or check what cell you might want to select, and you're able to route your cursor with the monarch as well so that you can you can edit certain cells. So it is great for skimming or finding relationships between those rows and columns. You're just given so much more content. It gives so much potential for what will be able to be viewed on a screen.

Michael Dennis:

You already started actually answering one of the last questions I had. But never mind about that one because you already told our listeners so much about the benefits and the things which excite you personally. And let me maybe also just add to that. I think it is a huge takeaway if you use email and you have the ability, or in that moment your your outlook on your computer and you just have the ability to have multiple emails also um below each other, which makes then also skimming through like what is new, um, especially in the work setting, way easier and makes it a little bit more more exciting than going like 20 cells at a time, or maybe uh with the very bigger ones, like 80 cells at a time, but you're still in the same row. And then yet maybe like the the name only takes up 15 cells and the rest of the braille um display is just empty. So that is at least uh something I can definitely think of. And uh Jennifer, do you have any any other things which excite you about the monarch besides what you already mentioned?

Jennifer Wenzel:

Um one nice thing is if you're in a meeting and there's an agenda, you get to see much more of that agenda content instead of just one line and having to scroll to the next item. You can actually see, like Michael was talking about, an email with a list, you can see things like the list of agenda items. They might be bulleted. So you can look ahead to what the next item is without having to hit a thumb key and scroll. Um, if you're reading aloud content in a document, it's nice to be able to have more content at a time to read aloud. Um, and just for editing and really being able to check formatting, to check paragraphs, to check spacing. Um, whether you're checking the attributes with that attribute split mode, maybe you didn't want to hold on every character, or maybe you did, and suddenly you're noticing, oh, that's not there. It's just a much easier, more seamless way to proofread and edit content. And I know I'm not, I'm not giving you an exhaustive um list of all the features and all of the things. This is just sort of a teaser. These are things that I've done personally or I'm excited about. There is so much potential for this, and it's only going to get better. And people need to remember this is the first version of this multi-line support.

Michael Dennis:

Absolutely. So that is also very important to keep in mind that it is the first version of multi-line support with JOS. Um so if you ever find any anything that you think um we as APH and in collaboration with Freedom Scientific can improve, uh be always free to just reach out to APH and let us know about it. And if you mentioned already these kind of things which are exciting and which mode they exist, but there's way, way more. Um and as more that is used, as more challenges maybe come up, we would love to face and we would love to solve for everyone. And also if you have any trouble by connecting your monarch to your computer with JOS, I'd like to point you to our last episode where we had a great guest from our customer service team with Matt, who also told about the work from uh customer service a little bit. And feel free to reach out to our customer service team. They're always happy to help all of you. And um this was our fourth episode, wasn't it, Jennifer?

Jennifer Wenzel:

I think so. I think we're actually on the case.

Michael Dennis:

It's getting more and more. It's getting more and more effective. So thank you for listening again to our tech takeaways. If you have any suggestions, anything you want us to cover in the future, just send an email to changemakers at aph.org. And my name is Michael Dennis.

Jennifer Wenzel:

And my name is Jennifer Wenzel. Thanks so much for being with us today.

Michael Dennis:

Thank you, and bye-bye.

Sara Brown:

I put links in the show notes for Monarch support as well as CJ threads and Code Jumper. If you have a podcast idea or additional questions, send them to me at changemakers at aph.org. And as always, be sure to look at the ways you can be a change maker this week.