Showing posts with label MicroBit. Show all posts
Showing posts with label MicroBit. Show all posts

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.

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.

Monday, January 19, 2026

Funding for CS Educational Tools

Mark Guzdial posted a link to an interview with Jens Mönig. Jens is the main person behind Snap! which developed out of Scratch (which Jens worked on). It’s a great interview and I recommend it. The story of Snap! is an interesting one. I think it is great that SAP is funding the team behind it. This blog post, which sort of rambles a bit (sorry) was inspired by that interview.

There are basically two and a half ways that software for teaching programming and computer science are funded. One is research funding. Usually by universities but sometimes by research groups that are part of major companies. The later is the half I refer to. The other is commercial products. I.e.. products that actually make money for companies.

The problem with commercial products is that they are really designed for professional software developers. That means a number of things that are great for professionals but harder for beginners. Complexity is one of those issues. Visual Studio, which I use for my own development and used for years in the classroom, using a number of different files for every project for example. That’s just the beginning. Development on professional tools adds features for professionals but often subtracts features that are helpful for beginners. I first ran into this when Visual Basic became Visual Basic .NET and arrays of controls when from intuitive to complex with extra code necessary.

Commercial software often has free versions which is the only way schools can generally afford to use them. Simple versions that work on a school’s limited resources tend to go away over time though. They don’t pay for themselves.

I have seen other cool tools from commercial tools, or tools commercial companies provided for free, disappear over the years. Corporate research projects generally last while the principle investigator remains interested and can keep getting funding. If the research doesn’t wind up in a commercial product that doesn’t help with funding.

App Inventor is an exception. Originally developed at Google, App Inventor had an academic sponsor (It resides at MIT these day) and Google provided some seed money to get the open source version started. It phased easily from corporate research to university research.

MakeCode (largely a Microsoft Research project)  is still going strong. It appears that industry/ academic cooperation is helping keep that going. That combination seems to be key in keeping some projects going.

University research projects tend to last longer than corporate research projects. As long as someone can get grants, usually tied to graduate students coming up with good research topics involving the tool, they keep going. I wonder how well some these will continue when the principle academics lose interest, retire, or pass away. Some projects have depth of involvement which is helpful.

 Alice out of Carnegie Mellon has been going strong for 30 years even though it’s originator, the great Randy Pausch passed away in 2008.  External funding, required for most academic tools has stayed strong for Alice. That takes a lot of work to maintain of course.

Most of the long lasting tools have some level of corporate sponsorship. Oracle helping with Greenfoot and BlueJ are other examples.  There used to be a lot of NSF (US National Science Foundation) money around. Somehow I suspect there is a lot less of it these days. It’s risky to depend on it as well given the rapidly shifting state of US Federal funding.

And then there is Artificial Intelligence to think about. That’s sort of the elephant in the living room these days. If funding agencies (government, non-profit, industry) decide that coding is dead because of AI what happens to funding for the tools educators are using today?

I don’t believe that coding is dead but I know that some people have decided that  it either is or soon will be. Computer science education is going through a change caused by the winds of AI. Industry seems to think that they don’t need inexperienced software developers. Development of developers has to start somewhere though. One can’t go from zero to experiences expert without starting somewhere.

I believe we need good teaching software. I hope we can keep seeing good things supported and developed in the future. We live in interesting times.

Note that Mike Zamansky wrote a riff on this post. Recommended at Funding for CS Educational tools - C’est la Z

Thursday, July 18, 2024

CSTA 2024 Exhibit Hall

The exhibit hall was impressive this year. I believe three are something like 80 exhibitors. Below is a snapshot of s few of them that caught my eye. The usual suspects are here of course. Google, Amazon, and Microsoft. You'd think Apple would be here if you'd never been to an educational technology conference. They are not here. I am surprised that Code.Org doesn't have a booth. Though of course you will see their team showing up in many sessions.

Items for physical computing are everywhere. I highlight a few here. One textbook company has a small booth. I wonder that that means. Thoughts?

I think I counted four universities promoting graduate programs for CS teachers. That gets a post of its own soon.

I'm not so impressed with the Microsoft booth. One expects more from one of the most valuable companies in the world. They have some good programs like MakeCode, Makecode Arcade (see the cool arcade machine they have to demo it?).

New is VS Code for Education which is a web based IDE and learning platform for Python and also web development. The TEALS program is sharing the booth as well.

  • BirdBrain is here again. I think they have been at the conference for ever. Their Finch and other robots show up everywhere.
  • Carnegie Mellon University is here taking about CMU CS Academy. One of the few university exhibits not promoting graduate courses for CS teachers.
  • The Hidden Genius Project is trying to get young Black men into computing. This booth doesn’t seem to be getting enough attention but I feel like it should not be ignored. We can’t ignore young Black men.
  • Koi’s Clan is one of two projects for very young students that I found interesting. I liked the little Kai Bot that is programmed with little graphic cards. Looks like fun and educational.
  • Robotical has Marty the Robot who can be programmed with a graphical (without words) language for very young programmers. Why wait for kids to learn to read? My grandson loved robots long before he was reading.
  • Lego Education had a large booth. A long time exhibitor they have some interesting stuff.

Saturday, November 12, 2022

CSTA New England Regional Conference #cstaNE2022

This year’s CSTA New England regional conference is at the University of Massachusetts (Amherst) school of Education. It’s a great venue. There are around 150 people here. I can remember when CSTA national conferences were smaller than that. It just shows the growth in CSTA and the growing strength of CSTA chapters over the last several years.

I am running into a number of people I know and meeting some new people as well. That is what makes in-person conferences so extra special.

The energy level is high here with teachers from all over New England and New York. The opening keynote was by Dr. Cheryl Swanier who talked about “Changing the Face of Technology for Social Good.” Tech has a woman problem – we don’t have enough of them. As part of her talk, Dr. Swanier showed this video Girls in Tech for Web Summit - Ruthe Farmer – YouTube We’ve been taking about this problem for a while but we really need to take our actions up a notch. The case is pretty clear.  Dr. Swanier also talked about explicitly teach problem solving. Much as we’d like to think that teaching programming does that, the truth is that it has to be taught explicitly.

My first regular session was “Teaching with Minecraft: Education Edition.” You’d think I would know all about this but honestly I have trouble grokking it. My grandson has seen it and thinks its cool so I figured I should learn more about it. Minecraft Education requires a license. That may limit what I can do initially. However, it looks like there are a lot of resources for teachers including lesson plans, the ability to share worlds, create NPCs (non player characters), and portfolios. There are Code Builder options for blocks, Python, or JavaScript with MakeCode.There is a demo that can be used with “An Hour of Code” and I will play with that. I was pretty impressed with what I saw today.

There were 10 or 12 exhibits at the event. One that really interested me was the Kibo robot from Robot Kits For Kids | KIBO | Kinder Lab Robotics.

These robots are programmed with blocks. Not virtual blocks! Physical blocks that cane be connected together. Once the program blocks are together the bar codes on the blocks are scanned into the robot which will execute the program This looks pretty interesting.

After lunch, we had a panel of CS/STEM leaders from the New England departments of Education reporting on what progress the states have made in the last few years. The tl;dr of it is that there are been a lot of progress. But the efforts could really use more money. States have created certification programs, made progress in getting states to require schools to offer CS courses. We’ve still got a long way to go. We could use more money for teacher PD. We could require CS courses for graduation. Although in several states CS courses can count for graduation credits in various ways.

Next up for me, Kathy Kleiman, Founder of the ENIAC Programmers Project, who told the story of the women behind the ENIAC. A story I have heard before but Dr. Kleinman tells it really well. I loved that she talked about the history of these women after the war. A lot of information at ENIAC PROGRAMMERS PROJECT

Next up for me, Gencyber Teacher Academy @ the Univ of New Haven: Incorporating Cybersecurity Concepts into 9th-12th High School STEM Curriculum.

This program includes a week long summer "camp" and follow up virtual sessions. Last year the program just included 25 teachers from Connecticut but applicants from other states are welcome to apply for next summer.  Anyway, it comes with a stipend and some good free stuff. And a lot of good learning,

Last regular session of the day for me, Bring Computation to Life with the micro:bit. I love the Micro:Bit and always like to learn about how teachers are using them in their classrooms. I linked to the presentation above and on slide 7 you can find the mini project that opened the session with links to the code used. It uses the ability of the Micro:Bit to send and receive messages. You will find a lot of useful links on that slide deck including in the speaker notes.

The closing plenary involved a lot of recognition of CS teacher award winners. and door prizes!

Next year the conference will be on October 20, 2023 at the University of Connecticut Storrs. Should be a good one.

Friday, October 07, 2022

Micro:Bit Programming for Grades K to 3 With #MicroCode

The Micro:Bit is a pretty cool piece of hardware being used in a lot of schools. It’s mostly used in middle school and above but that may be changing. New from Microsoft is Microcode beta. Programming is via a MicroCode web editor at aka.ms/m9. Microcode documentation is at Microsoft MicroCode for micro:bit (beta)

Take a look at the intro video below.People who have used Kodu Game Lab will see some simularity in MicroCode. Although the graphics are very different, the programming modularity is similar. With both, programming is drag and drop using cute little kid friendly icons.

Besides the Micro:Bit itself, Micro:Code supports Jacdac devices which opens a lot of new prossibilities. I wrote about JacDac back in July - Jacdac and Micro:Bit 2.0–First Look.

I haven’t tried this with my 8 year old grandson yet but I hope to soon. I think he’ll like it.

Friday, July 15, 2022

My Day Two at #CSTA2022

Day two started off great as I connected with several people from my home CSTA Chapter –CSTA New Hampshire. The CS community in New Hampshire is growing and the CSTA Chapter has been a part of that. I’m planning on getting more involved in chapter stuff  in the future.

My first session of the day was about teaching ethics when teaching artificial intelligence. Jeremy Keeshin (a last minute replacement as I understand it) from CodeHS was the presenter.  Seems like some good small group discussions took place. Maybe I was tired but I didn’t get into it very well. My fault. Wasted opportunity. I did get a copy of Jeremy’s book “Read Write Code” which I look forward to reading.

Next up for me was a session on preparing the future developers of the metaverse.  The presenters were from Carnegie Mellon. First I have heard of XR as a generic term to include Augmented Reality, Virtual Reality, and Modified Reality. We had some really interesting discussion of using virtual worlds in school. One school had a virtual birthday party in Minecraft. Minecraft has moved from pure play to an educational platform.

Students are picking different virtual worlds to play in as they age.It occurs to me that younger kids are building things in games like Minecraft and Roblox but older students, especially boys, and moving to games like Call of Duty which are more destructive. Something to think about.

My number one to look more into is Arena XR – An Augmented Reality Edge Network Architecture.

I really enjoyed this session and had some good interactions and learning with my tablemates. Slides for this session are at CSTA2022 NoStudentLeftBehind.pdf - Google Drive

Lunch break and more time in the exhibit hall. I got a close look at the Jacdac devices for use with a Micro:Bit. I may splurge and buy a starter kit. Note that I posted a brief look at Microsoft and other big companies exhibits at Amazon, Google, Meta, and Microsoft at #CSTA2022

First afternoon session was about writing for Hello World magazine. I was proctor and arrived before it started but after most people entered the room. Watching the clock is important as it is so easy to get distracted with so much going on. Anyway, the slides for this talk are available at CSTA_Writing Workshop Presentation.pptx - Google Slides  A lot of good stuff here. I hope this gets more teachers to write for the magazine.

Next up was a session on cryptography with an exercise in creating a Pringles can Enigma machine. We started the session with an brief introduction to Cyber.org and with an introduction to the Pigpen Cipher. (Note that this is one of the ciphers covered in my (PDF) free Tiny Book of Simple Cryptography)  We had some fun creating our mini Enigma machines and working though how they work. We only used one rotor but I brought home some sheets to make a larger one with a larger can when I get home.

Overall, a pretty good day. Some very good sessions, some good conversations at the exhibit hall, and many amazing face to face conversations with friends. I am exceedingly glad to be here this year.

Tuesday, July 05, 2022

Teaching Computer Science–Moving atoms not pixels

On my first visit to the Lifelong Kindergarten Group and the MIT Media Lab, I notices a message on the windows. “Some people would rather move atoms than pixels.” That has stuck with my for years now. And it is quite true. Robots, game controllers, Internet of Things, and more are ways that computer science interacts with physical objects and not just pixels on a screen. These are ways that teachers can bring more students to more interesting (to the student) to get involved with computer science. But where to start?

Recently I posted curriculum resources that are especially good for teaching traditional computing courses. Well, cyber security is a bit new but anyway. Read that post at Welcome New Computer Science Teachers Today I want to provide some resources to bringing physical computing into the classroom.

Starting with a couple of devices that operate as “brains” for deeper involvement.

Raspberry Pi and the Micro:Bit are two of the most popular. Arduino and the Lego ev3 have been around for longer and are in wide use as well. One could get lost exploring all that LEGO Education has to offer. The Arduino Online Shop has a lot of resources as well.

Personally, I am a fan of both the Raspberry Pi and the Micro:Bit. Both the Micro:bit Educational Foundation and the Raspberry Pi Foundation have a lot of resources. Those are great places to start your exploration.

Ok, let’s talk hardware. While the sites for the Pi, Micro:Bit, Arduino, and Lego EV3 have a lot of links to resources there are more places to go depending on your interests.

Two of my favorites are AdaFruit Industries and Kitronik Ltd. They have devices that work with a lot of "brains." They have devices for all sorts of robotics or Internet of Things projects. I can spend hours looking through both getting idees for projects.

Also for the Internet of Things, I have bought a bunch of devices from Phidgets Education. I have been using these sensors and controls with Raspberry Pi in Python but Scratch, MakeCode, and Java are among other language choices. Speaking of MakeCode, that is an awesome platform for programming Micro:Bits.

I recently discovered Jacdac from Microsoft Research. Right now these devices only work with Micro:Bit but Raspberry Pi and a USB connection for laptops/desktops are projected for the future.

I could, and probably should do a post just about robots and robotics. But here are a few places to get started.

I promise a more comprehensive post of robotics soon.

Thursday, July 15, 2021

Notes on Day Two of #CSTA2021

Today started, for me, with help desk duty. While I was there no one needed any help which I suppose says good thi8ngs about the HopIn platform CSTA is using. The other committee member on duty, the amazing Myra Deister, and I spend most of the time catching up. We’ve known each other through CSTA for a long time. It was just like a “hallway track” time for us. I’d love to see tools specifically for that sort of thing.

First session of the morning I was bad. Well, fidgety I guess. I hoped in and out of a number of sessions the whole time.

I started with Misconceptions as Learning Opportunities (slides here) and learned some good things about assessment. An area I frankly need to learn more about. I will be watching the whole session when the videos are available.
I next hopped in to Introduction to Micro:bit with MakeCode just to see what they were presenting. I did pick up a couple of links to related research that I  read later.

https://aka.ms/MakeCodeResearch ,https://aka.ms/PhysicalComp, https://microbit.org/research
Release notes: https://makecode.com/blog/microbit/2021-release

BirdBrain Technologies dropped in to the session to say that they “ loved the micro:bit so much that [they] based the newest version of [their] products on it! US educators can try a free demo of [their]micro:bit based robots: at https://www.birdbraintechnologies.com/demo

I spend most of the rest of the time at Block-Based Machine Learning and AI with mBlock  “ mBlock is a powerful programming environment that combines the familiarity of Scratch with cutting-edge technologies like Google’s Teachable Machine and Microsoft’s Azure Cognitive Services.” (Slides here) I should have started here and I will definitely be watching the full video when available. BTW,
If you are looking for resources about teaching AI check out https://ai-4-all.org

Next up was the keynote by Dr. Amy Ko. I have been familiar with her work from both social media and published papers so I was really looking forward to hearing her speak. Follow her on Twitter (https://twitter.com/amyjko) and read her blog posts (https://amyjko.medium.com/) Dr. Ko gave a great talk which showed all of the levels involved in where things can go wrong in encouraging students to take and continue in computer science. Talks like this are a reminded for me of the many forms of diversity that I have to be aware of and how I need to adapt to meet the needs of people who are not like me. Dr. Ko posts her talks on her web site. This one should be there soon if it is not there right away.

Updated: with links to Dr. Ko’s talk:

Video: https://youtube.com/watch?v=p7IzFIDfyKY Slides: https://faculty.washington.edu/ajko/slides/CSTA2021Keynote.pdf

CSTA Keynote

After the keynote, I hopped into Teaching Exciting Computer Science Frontiers in High School for some ideas about advanced courses and students. The talk introduced me to NetsBlox which is a visual programming language and cloud-based environment that enables novice programmers to create networked programs such as multi-player games. Network programming, yeah! The system also connects to a variety of databases online. So a lot of possibilities for data science or cross curricula projects.  I need to look into this a lot more.

Next up was Selecting and Supporting a New CS Teacher. (Slides here) This mini-session was part of the administrator tack. Love that there is an administrator track BTW.  In any case, there was a lot of good information for administrators including some helpful links in the slide deck.

Teaching with YouTube with Oscar Velizin was next for me. Oscar Velizin has a YouTube channel with videos that mix math and CS. No surprise. One of the takeaways for me was the idea of providing access to the code that is demonstrated via GitHub or some other online system.  (Slide deck here) He had some good reasons for using PowerPoint compared to some other presentation tools.  Specifically the ability to screen capture, to rerecord individual slides, the built in Equation editor, and the ability to easy export videos.

Don’t tell anyone but I skipped the Birds of a Feature. Enough screen time and I wanted to be rested for the last keynote of the day.

The afternoon keynote as Zaretta Hammond who talked about Changing the Complexion of Computer Science Education. Yes, equity was a big focus at this year’s conference. I that that was wonderful. As we look at the events of the last few years we can see that a lot of work needs to be done to promote Computer Science for everyone.

A note of process. Yesterday I took notes in a text document. Today I took my notes in Open Live Writer which is my blogging tool. I filled things in during breaks between sessions. That made it easier for me. I like having my notes in blog form both to share with others and to return to for my own follow-up on sessions.

Thursday, October 01, 2020

MicroBlocks For IoT and other Physical Computing

Well, there is a new tool in town for programming micro devices like the Micro:bit and the AdaFruit Circuit Playground Express and many more! It's called MicroBlocks and was created by a rock star team with experience with creation of such tools as Scratch and Snap!. It’s pretty exciting for a number of reasons. One of them is the wide variety of devices it works with. Another is the Natural Languages it supports.

Live Coding is another interesting feature.

MicroBlocks is a live environment. Click on a block and it runs immediately, right on the board. Try out commands. See and graph sensor values in real time. No more waiting for code to compile and download.

And Multi Tasking.

Want to display an animation while controlling a motor? No problem! MicroBlocks lets you write separate scripts for each task and run them at the same time. Your code is simpler to write and easier to understand

I played with it a bit and it looks pretty intuitive especially for those with previous block programming experience. I made the mistake of trying it without having a device to use with it handy. I have several at home and so I’ll be trying them next week. But I wanted to get the word out so that if people want to try it over the weekend (yeah, I know you don’t have as much free time as you want) or have some students try it out you could.

Sometime next week I want to do a side by side comparison with MakeCode which supports several of the same devices. Some obvious differences are that MicroBlocks supports running the exact same app on different types of devices and that MakeCode has emulators. Since most people only use one type at a time and have physical devices the impact of those differences will be different in different environments.

We are living in exciting times!

Friday, June 01, 2018

Micro:Bits and Teaching Networking

This year i taught advanced Placement Computer Science Principles with a mix of high school juniors and seniors. Because of the schedule I had the juniors for several days after the seniors were done. The challenge was to come up with something useful and interesting to keep them busy and learning.  I looked at the classroom set of BBC Micro:bits and thought – networking! Obvious right? OK maybe not but I had been thinking about the ability of these little devices to communicate using radio signs and this seemed like a good opportunity for some experimentation.

I broke the students in to groups of two and three and asked them to create an app that used communication between two of the devices. Other than pointing them to the MakeCode for Micro:bit app for Windows (in beta - requires Windows 10 though there are also iOS and Android versions) and the MakeCode web site I didn’t give them more instructions. Hey, it’s an AP course!

A few students decided to use the Python editor from the Micro:bit web site but most used MakeCode. The MakeCode students used a mix of the block editing and the JavaScript editing. I think having options was a plus as students worked with what they were most comfortable using.

On one hand the students didn’t quite get to the level of application I had hoped for. I wasn’t any help there so I think I need to dig deeper into this myself over the summer. Time was an issue as well since the end of the year brings a lot of interruptions.

On the other hand, they did learn a lot. Several students told me they learned more sending between actual devices than using a software simulator. The Code.org APCS P resources I used have an outstanding simulator which the students did use. The devices made it more real, dare I say solid, to the students. One student suggested starting with the simulator and moving on to the devices for deeper learning.

As I listened to them talk about their projects under development they discussed things like throughput and bandwidth as well as how to encode information. These are all topics we had discussed during the year of course. Here though was a practical application and visuals that really brought things home. There is something about pressing buttons and seeing lights on another device light up that brings extra meaning.

My thinking now is that I will be bringing these little devices out earlier next year. We’ll do some networking with them for sure. Maybe some other projects as well. They seem motivating and interesting. Finding thinks that students want to use, want to learn more about, and which reinforce concepts is a wonderful thing.

Thursday, April 05, 2018

Thoughts on where CS education tools come from

TouchDevelop is being retired. It’s not the first tool with educational use to be retired by Microsoft. Or from other companies either. While I have used TouchDevelop with my students I was getting ready to move to MakeCode anyway so it is not a fatal move for me by any stretch. I know other teachers who have been using it more extensively who are going to feel some pain though.

I tend to divide CS educational tool sources into four categories.

Professional tools that are useful in education. In this category we see things like Eclipse, Visual Studio, and other development tools that are being used to create real products. These tools are not going anywhere anytime soon. Companies, both those that use them and those who create them, have a vested interest in supporting and improving them.

University developed tools. This includes things like Alice and Scratch but also BlueJ and Snap! and, well, far too many to mention. These are also likely to stay around for quite a while. People tend to build careers around them and use them to attract graduate students who use them, enhance them, and generally want them to be around.

Education companies. Companies like Tynker and Birdbrain are included in this group. As long as these companies can make enough money to keep going their tools will be around.

Industry Research Projects This is often the most state of the art and cool new things. On the other hand they are the least to be around for a long time. AppInventor was originally one such. Fortunately for educators who adopted it, when Google was done with it they were able to hand it off to a major university where it continues. TouchDevelop is another. Hear though, when the researchers moved on to new ideas there was no similar handoff. Both the Touch Develop web app and cloud backend are open source under the MIT license:

There is no indication that anyone is going to take it on though. I always assumed this day would come to be honest. Industry research groups have changing priorities and in some ways that is a good thing. I could argue it is a very good thing in terms of advancing the state of the art in computer science. It’s sad for us in education who aren’t always as quick to adjust as industry is.

As one tool fades another grows. MakeCode is pretty cool and there is a lot there learned from TouchDevelop, the Micro:Bit and educational uses of them both in there. Microsoft is developing a sprite-based game engine for MakeCode and a new course on game programming, in the spirit of CCGA (an interesting curriculum based on TouchDevelop.). One hopes it will be available in some form for teachers to learn it this summer.

I’m not sure where the materials developed by code.org fit into my classifications though. They are a non-profit with industry funding but they are neither industry or academia.  They have some great stuff though. I am using their CS Principles program for example. Chances are I’ll retire before they “go out of business” so I can probably depend on them plenty long enough.

Nothing lasts for ever though and change is the most constant thing in computer science. So we have to learn to adjust and change our tools and our curriculum, probably, a lot more often than educators in other disciplines. At least we’re not going to get bored.

Wednesday, July 26, 2017

Time to Include More Hardware Devices in Teaching Computer Science?

Lately I have been thinking hard about including small programmable devices in my programming courses. Talking about his on Twitter brought me both encouragement and some discouragement. The discouragement challenged me to think harder about why I wanted to use these devices. Pat of that challenge was a link to a paper by Monica M. McGill called "Learning to Program with Personal Robots: Influences on Student Motivation" IF you don't have access to the ACM Library and really want to read it let me know.

That research work focused on the use of robots as a motivational tool. The results were not that encouraging. A lot of the complexities of using robots, fickle hardware, batteries running out, software that is not quite there yet, and other logistical items probably apply to small programmable devices of other sorts. The robots didn't seem to be as motivating as the authors, and many supporters, would have hoped. Students didn't see the robots as relevant to their lives and interests. SO are the robots worth it? It's a fair question. Are my little devices going to be different? If so, different in what way? So many questions.

My thinking is that I need to look at more things to determine how or if I should proceed. Addressing some of the logistical issues is of course important. The "why" of going through that is the bigger question. Here I look to relevancy. This is were I see some potential differences from robots. The challenge becomes more than creating projects that are meaningful and motivating for the students. I have to have and communicate a reason why students should be learning g about these devices. Something beyond the project of the hour.

We're really moving, some would say have moved already, into an era with we are seeing smart devices everywhere. Many of these devices are tied in with "the cloud." Are we preparing students to deal with that reality with software only computer science education? I'm concerned that we are not.

I asked the questions "Wondering if it is time to more software people to learn more hardware? Do we need to be teaching more of this stuff as well?"and received  a lot of positive responses from both educators and industry friends. The support did not come without more questions (I have smart friends) such as where in the K-16 CS curriculum should it come and what sort of things should be included? We are really still figuring out this whole CS for All thing. (BTW Mark Guzdial's CS Curricula, Standards, and Frameworks will Need to Change for more on this.) In a way, this needing to figure things out makes me want to try more. Someone has to do it. Trying things on a small scale seems to me to be worth the effort. I want students to think about hardware and how it is part of a complete system. I want them to see that they can combine hardware and software in new ways to create new things.

Will this be more motivating? I don't know. Will it help them learn programming faster or better? Again I don't know and the research suggests not in a big way. On the other hand it seems likely to teach themselves some things they would not learn at all without the involvement of hardware.

I haven't yet seen much research out of the UK on the impact of the BBC Micro:bit. They didn't really have a full year to work with it though so it is early. People using it still seem enthusiastic  about it. People are starting to develop more software and curriculum around the Micro:bit, Arduino , Raspberry Pi, AdaFruit Circuit Playground and other similar devices so I don't feel alone. Well not completely at least. And I am going into it with modest expectations.

I'd like to hear from others who are asking these questions as well. Do you use these small devices? If so, why? If not, why not?