Posts tagged ‘robots’
Stuart Wray has a remarkable blog that I recommend to CS teachers. He shares his innovations in teaching, and grounds them in his exploration of the literature into the psychology of programming. The quote and link below is an excellent example, where his explanation led to me a paper I’m eager to dive into. Stuart has built an interesting warm-up activity for his class that involves robots. What I’m most intrigued by is his explanation for why it works as it does. The paper that he cites by Jones and Burnett is not one that I’d seen before, but it explores an idea that I’ve been interested in for awhile, ever since I discovered the Spatial Intelligence and Learning Center: Is spatial ability a pre-requisite for learning in computer science? And if so, can we teach it explicitly to improve CS learning?
The game is quite fun and doesn’t take very long to play — usually around a quarter of an hour or less. It’s almost always quite close at the end, because of course it’s a race between the last robot in each team. There’s plenty of opportunity for delaying tactics and clever blocking moves near the exit by the team which is behind, provided they don’t just individually run for the exit as fast as possible.
But turning back to the idea from James Randi, how does this game work? It seems from my experience to be doing something useful, but how does it really work as an opening routine for a programming class? Perhaps first of all, I think it lets me give the impression to the students that the rest of the class might be fun. Lots of students don’t seem to like the idea of programming, so perhaps playing a team game like this at the start of the class surprises them into giving it a second chance.
I think also that there is an element of “sizing the audience up” — it’s a way to see how the students interact with one another, to see who is retiring and who is bold, who is methodical and who is careless. The people who like clever tricks in the game seem often to be the people who like clever tricks in programming. There is also some evidence that facility with mental rotation is correlated with programming ability. (See Spatial ability and learning to program by Sue Jones and Gary Burnett in Human Technology, vol.4(1), May 2008, pp.47-61.) To the extent that this is true, I might be getting a hint about who will have trouble with programming from seeing who has trouble making their robot turn the correct direction.
This is actually pretty scary. The goal of these reviews is to “ensure efficiency and eliminate duplication,” especially between federal, private, and philanthropic programs. Does that mean that FIRST Robotics makes all other research and outreach for robotics in CS education “duplication”?
Subcommittee Chairman Larry Bucshon (R-IN) highlighted that the COMPETES Reauthorization Act of 2010 requires the National Science and Technology Council Committee on STEM to develop and implement a 5-year strategic plan. This plan would specify and prioritize objectives and define the role of each of the government agencies which fund STEM programs and activities. In this process of strategic planning, Bucshon stated that he wanted to recognize the importance of private sector and non-profit collaborations in STEM education. He also noted that the Government Accountability Office (GAO) suggested that the Office of Science and Technology Policy (OSTP) should work with agencies to produce strategies that ensure efficiency and eliminate duplication and ineffective programs. The GAO also concluded in a 2012 report that there is a need for strategic planning in order to better manage the overlap of federal STEM education programs.
I buy this argument, and it’s more subtle than the recent 60 Minutes piece. Does the influx of robotics lead to more or fewer jobs? 60 Minutes says fewer jobs. In contrast, Henrik Christensen says more jobs. The difference is education. There are fewer lower-education jobs, but more higher-education jobs. So unless you ramp up education, it is fewer jobs.
That’s not to say the transition to this brave new world of robotics will be painless. Short-term upheaval is inevitable. For Exhibit A, look at the jobless recovery we find ourselves in today: Increased productivity has driven economic growth, yet unemployment rates remain stubbornly high. But most insiders seem to agree that if we look past the short term, the medium- and long-term benefits of the robotics revolution appear to be positive, not just in terms of economic growth but for job creation, too.
They also warn that the job creation part will require a keen focus on training and education for those low-skilled workers who get squeezed out of their jobs by robotics. Collectively, we ignore this warning at our own peril.
A common question I get about contextualized approaches to CS1 is: “How can we possibly offer more than one introductory course with our few teachers?” Valerie Barr has a nice paper in the recent Journal of Computing Sciences in Schools where she explains how her small department was able to offer multiple CS1′s, and the positive impact it had on their enrollment.
The department currently has 6 full time faculty members, and a 6 course per year teaching load. Each introductory course is taught studio style, with integrated lecture and hands-on work. The old CS1 had a separate lab session and counted as 1.5 courses of teaching load. Now the introductory courses (except Programming for Engineers) continue this model, meet the additional time and count as 1.5 courses for the faculty member, allowing substantial time for hands-on activities. Each section is capped at 18 students and taught in a computer lab in order to facilitate the transition between lecture and hands-on work.
In order to make room in the course schedule for the increased number of CS1 offerings, the department eliminated the old CS0 course. A number of additional changes were made in order to accommodate the new approach to the introductory CS curriculum: reduction of the number of proscribed courses for the major from 8 (out of 10) to 5 (this has the added benefit, by increasing the number of electives, of giving students more flexibility and choice within the general guidelines of the major); put elective courses on a rotation schedule so that each one is taught every other or every third year; made available to students a 4-year schedule of offerings so that they can plan according to the course rotation.
“Georgia Computes!” entered its “one year no-cost extension” stage last September — that means that we can tidy things up, write the last papers, do the last analyses, before all work (and all funding) ends this September. “Georgia Computes!” has been a statewide alliance, funded by the NSF’s Broadening Participation in Computing program. Our goal was to improve the quality of computing education and broaden participation in computing across the whole state. We started in 2006. Take a look at our external evaluator’s final report on “Georgia Computes!” and you’ll see that we still have lots of stories to tell, many of which haven’t yet made it to this blog, let alone to conference and journal publications.
To tie a bow on “Georgia Computes!” we held a poster session and reverse site visit at NSF in Arlington, Virginia yesterday. We and CAITE (Commonwealth Alliance for IT Education, the other statewide NSF BPC Alliance based in Massachusetts) brought 40 people and 12 posters to put on a show of the great work that has gone in our Alliances. You can see PDF’s of all the posters (watch out — 10Mb PDF), or just look at the list of posters. This poster session was a huge effort. We sent to NSF 40 people, from Massachusetts and Georgia, from Girl Scouts to high school teachers to community college vice presidents and to CS/CIS department chairs. We hauled out robots and music software, laptops and reprints of papers.
The NSF program managers in charge of our projects were happy with the turnout. We had fewer people show up than I had hoped for, but I guess it was more significant who showed up than how many. The poster session was started by Cynthia Dion-Schwarz, the deputy AD for CISE (that is, she’s the second-in-command for all CS-related funding at NSF). The deputy director for all of NSF, Cora Marrett, came down with a reporter and a photographer. We were thrilled when NSF asked if they could keep three of the posters, to show off internally.
The purpose of our visit wasn’t just the poster session, though. Both CAITE and GaComputes are coming to an end. The BPC Alliances program will no longer fund regional alliances. However, all changes to formal education pathways (e.g., public policy, articulation agreements, high school curricula) occur at the regional level. So CAITE and GaComputes are proposing a merger to create a national resource for regional change. We have proposed creation of the Expanding Computing Education Pathways (ECEP) Alliance, which will be a service organization to support states that want to make computing education reforms in their state, with professional development, access to an experts bureau, and funding. I shouldn’t say too much about a proposal currently under review at NSF (we submitted it in January — the largest and most complex proposal I’ve ever been part of), but this much was said publicly at the poster session yesterday. 11 of us were there for what’s called a “Reverse Site Visit.” A review team attended the poster session, listened to us explain our proposal (for some five hours), and is offering (and will offer, in a formal report) comments and critique on the effort, past and proposed.
It was a really long day, and it was the culmination of literally months of work. I am so grateful to all the poster presenters who flew to DC, to those who came to view the posters, to the reviewers and NSF program managers, and to the incredibly hard-working people at Georgia Tech and U. Mass-Amherst who pulled all of this together. We’ll know this summer if we get to take the next steps with ECEP. In any case, it’s been a great run with “Georgia Computes!”
Sounds pretty similar to the contextualized computing education that we’ve been arguing for with IPRE and Media Computation. The argument being made here is another example of the tension between the cognitive (abstract conceptual learning) and the situative (integrating students into a community of practice).
A math curriculum that focused on real-life problems would still expose students to the abstract tools of mathematics, especially the manipulation of unknown quantities. But there is a world of difference between teaching “pure” math, with no context, and teaching relevant problems that will lead students to appreciate how a mathematical formula models and clarifies real-world situations. The former is how algebra courses currently proceed — introducing the mysterious variable x, which many students struggle to understand. By contrast, a contextual approach, in the style of all working scientists, would introduce formulas using abbreviations for simple quantities — for instance, Einstein’s famous equation E=mc2, where E stands for energy, m for mass and c for the speed of light.
Imagine replacing the sequence of algebra, geometry and calculus with a sequence of finance, data and basic engineering. In the finance course, students would learn the exponential function, use formulas in spreadsheets and study the budgets of people, companies and governments. In the data course, students would gather their own data sets and learn how, in fields as diverse as sports and medicine, larger samples give better estimates of averages. In the basic engineering course, students would learn the workings of engines, sound waves, TV signals and computers. Science and math were originally discovered together, and they are best learned together now.
This is pretty exciting for us doing MediaComp. Tom Lauwers, who has been developing the Finch robot (from CMU), has tweak our Jython Environment for Students (JES) so that Finch support is built-in. This means that the various supports for Media Computation built into JES (e.g., visualizations for sounds and pixels) are available while programming the Finch in Python. It’s nice to see the Media Computation software getting picked up and used in new contexts!
Full instructions here:
The JES team has allowed us to repackage JES with Finch software libraries, so we now have an incredibly easy way to setup an environment for writing Finch programs in Python. To see how easy, check out our instructions and screencast, which takes you from downloading to writing and running a Finch program in five minutes.
JES (the Jython Environment for Students) was developed to support the Media Computation approach to introductory Computer Science education. Since it was designed for education, it is the perfect first Finch environment: it sports a detailed help section, an easy to use step-by-step debugger, and a number of built-in tools for creating programs that manipulate images, audio, and video. We are very excited to add JES to our list of supported software environments, and again thank the JES team for allowing us to use their hard work!
I’m still wading through the 300 unread email awaiting my return from vacation. (Yes, the last week’s worth of blogs were all pre-recorded.) The family had a great time in California and at the ACM Awards in San Jose.
One of the interesting threads that came up while I was gone were the complaints from Senator Coburn about badly spent funds at NSF. In particular, his report highlights the “low-budget rodeo and hoedown” that was held at SIGCSE 2011. If you weren’t at SIGCSE 2011, you may not have heard about the event where teachers programmed 75 robots to dance together. Senator Coburn seems disappointed that the event was “a source of enjoyment for observers.” (It’s better if educational activities are not enjoyable?)
The organizers of the hoedown put together a reasonable and well-argued response. The event was really about getting a lot of teachers to try out new computing curricula and actually install the robot software (with help) on their computers. $6,283 is a remarkably low price (which actually led to some corporate matching) for faculty professional development.
Senator Coburn’s report complains about the “low-budget” event. Would it have been better if it was more expensive? Just how much should faculty development cost? I admit that I’ve been part of much more expensive efforts (with six and seven digit budgets) that achieved less than the robot hoedown did. My sense is that the robot hoedown was a particularly low-cost way of getting some new ideas flowing among the teachers who participated. But it is scary that folks in Congress might not realize how important faculty professional development is, and how expensive it can be.
I finally finished Sherry Turkle’s Alone Together on my last trip. I strongly recommend the book, especially for computer science ethics and professionalism classes.
Turkle looks at several technologies and considers what their impact on our daily lives are, with a particular emphasis on social robotics and on-line social media. She is trained as a psychoanalyst, so she looks at human impacts a bit differently than most computer scientists. She is concerned with what it means for us as humans to use robots to take care of our elderly, for children to play with toys that seem alive and thinking, and for all of us to interact increasingly through technologically-mediated forms (e.g., texting on phones, Facebook and Twitter and MySpace). Her insights are deep and varied. For example, she talks about the strains caused by ubiquitous communications technology on family life less in terms of the always-texting teens, and more in terms of the always-distracted parents.
It’s not an easy book to read. The book is filled with dozens of case studies, which she uses to compare and contrast throughout the book to make her points. It’s like a non-fiction Russian novel: Dozens of characters, which are telling stories about themselves, who are being played off one another. I loved Doestoevsky’s The Idiot, but it took me almost a year to finish it, and I considered it an accomplishment to make it all the way through. Alone Together has some of that quality.
Most people with whom I’ve spoken who have finished the book talk about its pervasive negative attitude. Turkle is much more critical of the technology in this book than she was in The Second Self or Life on the Screen. I do agree with that assessment — Turkle is worried, and that worry comes across strongly. She’s a realist, though. She says that we can’t call our relationship to communications technology an “addiction,” because that implies something that you might remove from your life. You can be addicted to cigarettes, because you can (and should) get them out of your life. Psychoanalysts don’t call a flawed relationship with food an “addiction,” because you can’t remove food from your life. Similarly, she says that nobody is going to get rid of communications technology, once it’s available. We can, instead, re-think how we relate to it.
What I find most powerful about the book is where she sets up intriguing and insightful options — and that’s where the book becomes a must-read for future computing professionals, those who might one day design technology. She tells the story of a fifth grade class who considers the questions, “Do you want your parents and grandparents cared for by the robots, or would you rather they not be cared for at all? Do you want seniors lonely and bored, or do you want them engaged with a robotic companion?” One child in the class breaks away from the “for or against” question to ask, “Don’t we have people for these jobs?” In a similar situation in an MIT seminar, Turkle relates how a student in her class reacted to a story about robots who can flip over a bed-ridden patient to avoid bed sores. The woman in Turkle’s class had just recently lost her mother, and she recoiled from the contrast between an autonomous machine or a neglected patient.
She wanted to have a conversation about how she might have used technology as prosthesis. Had her arms been made stronger, she might have been able to lift her mother when she was ill. She would have welcomed such help. It might have made it possible for her to keep her mother at home during her last weeks.
That’s the kind of “third option” that Alone Together is good at raising. It’s a way of thinking that values the human element and is important to consider for technology designers.
More directly related to past themes in this blog, Sherry Turkle’s book speaks to us who are considering the role of the computer in education. The options should not be solely “students with no support, or a robot teacher.” There are third options. I’m still fond of the third option to “Beat the book, not the teacher.” Think how much better a weak teacher might be with a book that helped support the teacher and the students. Think how much better the students’ experience might be with computing technology available in collaboration with a caring, human teacher. In general, Turkle encourages us to think about the value for the human and how technology can enhance, not limit or replace, our valuable interactions with humans.
An interesting video on using the IPRE approach to teaching high school robotics.
Combining Python with inexpensive robots is a very effective way of teaching programming at the middle and high school levels. Since Python is easy to understand a constructivist approach is possible – students learn by creating and running simple programs, observing the results, and then modifying their code to fix bugs and add functionality.
CS Ed folk are mailing each other about the Washington Post article on CS Education (just in time for SIGCSE this week!). Eli’s class at Virginia Tech sounds great, and the project is an excellent example of how context can help to highlight the relevance of computing education — what we’ve been saying with Media Computation and IPRE for years. Jan Cuny’s comment is highlighting the more significant bit. Sarita Yardi highlighted in her email to Georgia Tech’s CSEd mailing list that the reporters missed Jan’s bigger issue, and I think Sarita is right.
We do know how to engage kids now. We have NCWIT Best and Promising Practices, and we have contextualized computing education. The real problem is that, when it comes to high school CS, we’re just not there. If you choose a high school at random, you are ten times more likely to find one that offers no CS than to find one offering AP CS. That’s a big reason why the AP numbers are so bad. It’s not that the current AP CS is such an awful class. It can be taught well. It’s just not available to everyone! The AP CS teachers we’re working with are turning kids away because their classes are full. Most kids just don’t have access.
“The sky is falling in a sense that we’re not engaging kids that we could be engaging,” said Jan Cuny of the National Science Foundation, who is helping to formulate a new AP course. While the current program focuses mostly on Java programming, a new class being piloted at several colleges would focus on problem-solving and creating technology instead of just using it.
“We’ll have no problem interesting kids in doing these things,” Cuny said. “The tough part is getting into the schools.”
Doug Blank just sent out this report on where the IPRE robot education technology Myro was going — the movement into new languages and platforms is pretty exciting!
This is a note to let you know the status of three new versions of Myro,
the API to interact with the Fluke and Scribbler. For more information on
any of these projects, please feel free to use this mailing list.
1) Myro in C++. This project has been developed at the University of
Tennessee at Knoxville, by Bruce MacLennan, John Hoare, and others. Mayro
in C++ is ready to use. For more information, please see:
2) Myro in Java. This project is underway at DePauw University by Doug
Harms. Myro in Java is under development and ready for testers. For more
information, please see:
3) Myro in the Pyjama Project. Pyjama is a new scripting environment for
Python, Ruby, Scheme, and more. This is the latest version of Myro from
the IPRE. Pyjama is designed to run very easily on multiple platforms, and
with multiple languages. Pyjama is under development and ready for
testers. Form more information, please see:
The pages at http://wiki.roboteducation.org/ will begin to change to
reflect these exciting developments and alternatives.
I invite users and developer of all of these systems to further describe
the projects, and provide additional details.
Next week is the first NSF Computing Education for the 21st Century Community Meeting, in New Orleans, organized and hosted by NCWIT. In preparing for that meeting, we gathered some of our evaluation work into handouts, and now we’ve uploaded them to our website. Some of the new things that might be of interest to readers here (Warning: Most of these are technical reports, not peer-reviewed publications! The technical reports summarize analyses — lots of data, little explanation):
- We generated this as a summary for high school principals about the work going on in the School of Interactive Computing around CS Ed: 2010 CS Education flyer
- A really interesting report coming out of the statewide survey of CS1 students that we did last year. Trevisan, B., McKlin, T., & Guzdial, M. (2011). Factors Influencing CS Participation: Introductory Computer Science Students Describe What Led Them to Computing. (GaComputes! Technical Report). Atlanta: The Findings Group, LLC.
- An analysis of survey results that helps us identify the factors that influence women and members of under-represented groups in pursuing computing. Engelman, S., McKlin, T., & Guzdial, M. (2011). Conditions that encourage participation in computer science (GaComputes! Technical Report). Atlanta: The Findings Group, LLC.
- An analysis of where we are with respect to AP CS Level A in Georgia. Engelman, S., McKlin, T., & Ericson, B, Guzdial, M. (2011). Georgia Computes! Advanced Placement Analysis (2010).(GaComputes! Technical Report). Atlanta: The Findings Group, LLC.
- This is some of the raw data that influenced the recent blog post on contexts in workshops, talking about robots, Alice, Scratch, Pleo dinosaurs, and PICO Crickets. Engelman, S., McKlin, T., & Ericson, B., & Guzdial, M. (2011).Georgia Computes! Roll-Up Analysis: Student Workshops August 2009 to August 2010. (GaComputes! Technical Report). Atlanta: The Findings Group, LLC.
- This is an assessment instrument that we use in the Operation: Reboot project (aiming at helping unemployed IT workers become computing teachers) to evaluate their attitudes toward teaching. Trevisan, B., Engelman, S., McKlin, T., Ericson, B.& Guzdial, M. (2011). Operation Reboot’s Teaching Opinion Survey (GaComputes! Technical Report). Atlanta: The Findings Group, LLC.
I finished up the “Georgia Computes!” report on our first four years just before the holidays. One of the evaluation studies we did was to look at the contexts that we use in our Girl Scout workshops and how those contexts influenced student attitude change. We asked students before and after each event (for everything — summer camps, YWCA afterschool activities, as well as Girl Scout camps) whether they agreed or disagreed with seven statements:
1. Computers are fun 2. Programming is hard 3. Girls can do computing 4. Boys can do computing 5. Computer jobs are boring. 6. I am good at computing. 7. I like computing 8. I know more than my friends about computers.
In the one study, we looked at a set of workshops over a multi-year period with over 600 Girl Scouts involved. We looked at where we got changes in attitudes, and computed the effect size. Here’s one of the tables of results:
This table shows the number of Girl Scout workshops that we had with each context, the number of large/medium/small effect sizes that we saw, and total number of effects. What we see here is that Pico Crickets and Scratch have the most effect: The most large effects, and the most overall effects. We’ve done a lot of different things in our robotics workshops, from following mazes to singing-and-dancing robots. Lego Mindstorm workshops (seven different ones, using a variety of activities) had only small effects on changes in attitudes. This isn’t saying that Lego robotics can’t be an effective context for making more positive Girl Scouts’ attitudes about computing. We are finding that it is harder than with these other contexts. I hope that someone replicates this study with even larger n, showing an approach to using Lego Robotics with Girl Scouts that leads to many large effects on attitudes. We just haven’t been able to find that yet.
Over the Christmas holiday, our extended family has been playing a bunch of great Wii games, including karaoke, “Just Dance,” and various Rock Band games. Barb and I discovered this morning that we were thinking the same thing about these games: What a great context for learning programming! Barb was noting that “Just Dance” uses a small icon to represent (abstraction!) a particular dance move, which is then repeated several times (iteration!). I was thinking about the great computing and media ideas required to build this kind of software: From digital signal processing to detect pitch, to the ubiquitous computing ideas involved in sensing the world (e.g., the accelerometers used to detect body motion in the dance games). We could use an inquiry-based approach to teach computing through these (amazingly popular!) games, e.g., “How do you think Rock Band figures out if you’re singing the right pitch?” and “How accurate do you think the motion detection in ‘Just Dance’ is?”
This is how we should identify contexts to use in contextualized computing education. What are the application areas that students find intriguing? What computing ideas do we want to teach and can be taught with those areas? Even though we may like robotics, if the student audiences that we’re seeking don’t, then it’s not a great context. There are many great contexts out there, many that are even more popular and even more powerful than what we use today. People like to sing and dance, even more than making robots sing and dance. Learning to build software to support that sounds like a great context.
There are lots of “high school kids program robots” story out there. What I liked about this one was that (alright, they’re using IPRE robots, or I wouldn’t have even found it :-) the examples weren’t the traditional maze-following or battle bots. Making robots synchronize to play “Carol of the Bells” or follow anything blue is fun and different — and particularly cool for being high school.
It wasn’t hard to tell what time of year it was in Vern Ceder’s computer programming class Wednesday. Canterbury students were busy programming robots, and two of three belonging to junior Ginger Hoade were playing “Carol of the Bells.” Over and over again. At slightly different octaves. At slightly different times.