Posts tagged ‘computing education’
I wrote a blog post recently about Joanna Goode promoting the goal of “CS for Each.” Several commenters asked for more details. I asked Joanna, and she wrote me this lovely, detailed explanation. I share it here with her permission — thanks, Joanna!
To answer, we as CS educators want to purposefully design learning activities that build off of students’ local knowledge to teach particular computer science concepts or practices. Allowing for students to integrate their own cultural knowledge and social interests into their academic computational artifacts deepens learning and allows for students to develop personal relationships with computing. More specifically, computer science courses lend themselves well for project-based learning, a more open-ended performance assessment that encourages student discretion in the design and implementation of a specified culminating project. Allowing students to use a graphical programming environment to create a Public Service Announcement of a topic of their choice, for example, is more engaging for most youth than a one-size-fits-all generic programming assignment with one “correct” answer.
Along with my colleagues Jane Margolis and Jean Ryoo, we recently wrote a piece for Educational Leadership (to be published later this year) that uses ExploringCS (ECS) to show how learning activities can be designed to draw on students’ local knowledge, cultural identity, and social interests. Here is an excerpt:
The ECS curriculum is rooted in research on science learning that shows that for traditionally underrepresented students, engagement and learning is deepened when the practices of the field are recreated in locally meaningful ways that blend youth social worlds with the world of science[.1] Consider these ECS activities that draw on students’ local and cultural knowledge:
- In the first unit on Human-Computer Interaction, as students learn about internet searching, they conduct “scavenger hunts” for data about the demographics, income level, cultural assets, people, and educational opportunities in their communities.
- In the Problem-Solving unit, students work with Culturally-Situated Design Tools , a software program that “help students learn [math and computing] principles as they simulate the original artifacts, and develop their own creations.” In one of the designs on cornrow braids students learn about the history of this braiding tradition from Africa through the Middle Passage, the Civil Rights movement to contemporary popular culture, and how the making of the cornrows is based on transformational geometry.
- In the Web Design unit, students learn how to use html and css so they can create websites about any topic of their choosing, such as an ethical dilemma, their family tree, future career, or worldwide/community problems.
- In the Introduction to Programming unit, students design a computer program to create a game or an animated story about an issue of concern.
- In the Data Analysis and Computing unit, students collect and combine data about their own snacking behavior and learn how to analyze the data and compare it to large data sources.
- In the Robotics unit, students creatively program their robots to work through mazes or dance to students’ favorite songs.
Each ECS unit concludes with a culminating project that connects students’ social worlds to computer science concepts. For example, in unit two they connect their knowledge of problem solving, data collection and minimal spanning trees to create the shortest and least expensive route for showing tourists their favorite places in their neighborhoods.
 Barton, A.C. and Tan, E. 2010. We be burnin’! Agency, identity, and science learning. The Journal of the Learning Sciences, 19, 2, 187-229.
 Eglash, Ron. Culturally Situated Design Tools. See: See: csdt.rpi.edu
The below linked article makes some strong assumptions about “learning to code” that lead to the author’s confusion about the difference between learning to code and digital literacy. NOBODY is arguing that all students “need to learn how to build the next Dropbox.” EVERYONE is in agreement about the importance of digital literacy — but what does that mean, and how do you get there?
As I’ve pointed out several times, a great many professionals code, even those who don’t work in traditional “computing” jobs — for every professional software developer, there are four to nine (depending on how you define “code”) end-user programmers. They code not to build Dropbox, but to solve problems that are more unique and require more creative solutions than canned applications software provides. We’re not talking thousands of lines of code. We’re talking 10-20, at most 100 lines of code for a solution (as my computational engineer colleagues tell me). For many people, coding WILL be part of the digital literacy that they need.
Learning some basic coding is an effective way of developing the valued understanding of how the cloud works and how other digital technology in their world works. Applications purposefully hide the underlying technology. Coding is a way of reaching a level lower, the level at which we want students to understand. In biology, we use microscopes and do dissections to get (literally) below the surface level. That’s the point of coding. No student who dissects a fetal pig is then ready for heart surgery, and no student who learns how to download a CSV data file and do some computation over the numbers in it is then ready to build Dropbox. But both groups of hypothetical students would then have a better understanding of how their world works and how they can be effective within it.
Offering programming electives for students who want to learn Python or scripting won’t solve the underlying problem of digital illiteracy. So even if your goal is to teach all students to code, schools will first need to introduce computer-science concepts that help students learn how to stack the building blocks themselves.
They don’t need to learn how to build the next Dropbox, but they should understand how the cloud works.
“If you want to be able to use the machine to do anything, whether it’s use an existing application or actually write your own code, you have to understand what the machines can do for you, and what they can’t, even if you’re never going to write code,” Ari Gesher, engineering ambassador at Palantir Technologies, said at the event.
Quite cool that this is available for education projects, too:
NSF’s Innovation Corps Teams Program (I-Corps Teams: NSF 12-602) has created a new opportunity, called I-Corps for Learning Teams (I-Corps L). I-Corps L supports taking discoveries and promising practices from education research and development and promoting opportunities for widespread adoption, adaptation, and utilization.
I-Corps L teams will receive support – in the form of mentoring and funding – to accelerate innovation in learning that can be successfully scaled, in a sustainable manner. There are a number of analogous elements between trying to bring product discoveries to market and getting learning innovations into broad practice. Getting the best evidence-based practices out to potential adopters, where those practices can benefit large numbers of students or learners, rather than just in a few classrooms or informal learning organizations, requires an entrepreneurial approach. I-Corps L can benefit education researchers by helping them to identify approaches that are effective in STEM teaching and learning.
To be eligible to pursue funding through I-Corps L, applicants must have been associated with a prior award from NSF (in a STEM education field relevant to the proposed innovation) that is currently active or that has been active within five years from the date of the proposal submission. The lineage of the prior award extends to the PI, Co-PIs, Senior Personnel, Post-doctoral Researchers, Professional Staff or others who were supported under the award.
To be considered for NSF’s I-Corps L Teams program, Executive Summaries (see below) must be submitted by September 30, 2014 to be considered for participation in the January 2015 cohort. Funding for each I-Corps L Team is $50,000 per award, for up to six months.
Julie Flapan gave me permission to share this email to the members of ACCESS (Alliance for California Computing Education for Students and Schools) in California — thanks, Julie!
Dear Alliance for California Computing Education for Students and Schools:
We are thrilled to share the good news about two important computer science-related bills: AB 1764 (Buchanan/Olsen) and SB 1200 (Padilla) passed out of the legislature yesterday with unanimous approval and are awaiting the Governor’s signature. These bills are a step in the right direction, having the potential to expand opportunities and increase participation in computer science education. But our work is just beginning!
These bills have the potential to make computer science count for California’s high school students: with AB 1764, an advanced computer science course may count as a math credit toward graduation, and with SB 1200, computer science may count as a credit toward UC/CSU college admissions. Research has shown that making computer science count incentivizes students – especially those underrepresented in computing including girls and students of color – to enroll in computer science courses in high school. ACCESS has been working with Code.org, the College Board and UCOP to try to get math credit approval for AP CS-A. We hope this legislation will help support these efforts.
While these two bills represent a significant victory for computer science education, much work needs to be done to help establish robust guidelines for computer science coursework, promote high quality and engaging computer science curriculum, help prepare teachers to teach it, provide ongoing professional development, and most importantly, ensure that we are recruiting and retaining underrepresented students in meaningful computer science coursework that will help prepare students for college and careers.
If you have any further ideas or suggestions on how to fully realize the potential of these two bills, please don’t hesitate to contact either of us.
Julie Flapan and Debra Richardson
Executive Director, ACCESS and ECEP-CA
Alliance for California Computing Education for Students and Schools (ACCESS)
Expanding Computing Education Pathways - California (ECEP-CA)
Professor and Chair, ACCESS
The below note was posted by Jeff Forbes to the SIGCSE Members list. What an interesting idea — funding to change a whole department!
NSF has posted a new solicitation for proposals, IUSE/Professional Formation of Engineers: Revolutionizing Engineering Departments (RED).
RED focuses on efforts to effect significant, systemic departmental change that impacts undergraduate student success in their formation as computer scientists or engineers. This program is particularly interested in efforts that address the middle two years of the four year undergraduate experience, during which students receive the bulk of their formal technical preparation. RED proposals need to engage the entire department, and the effort must be led by the chair/head of the department.
See http://www.nsf.gov/funding/pgm_summ.jsp?pims_id=505105 for more information.
Note: “Engineering departments” in the solicitation refers to both engineering and computer science departments, regardless of whether those departments are in a school of Engineering.
Letters of Intent are due October 28, 2014.
The August issue of Communications of the ACM (see here) includes a paper in the Viewpoints Education column by Uri Wilensky, Corey E. Brady, and Michael S. Horn on “Fostering Computational Literacy in Science Classrooms.” I was eager to get Uri’s perspective on CS education in high schools into the Viewpoints column after hearing him speak at the January CS Education Research workshop.
Uri suggests that the best way to get computational literacy into high schools is by adding computer science to science classes. He’s done the hard work of connecting his agent-based modeling curriculum to Next Generation Science Standards. In Uri’s model, Computer Science isn’t a “something else” to add to high school. It helps science teachers meet their needs.
Uri isn’t the only one pursuing this model. Shriram and Matthias suggested teaching computer science through mathematics classes in CACM in 2009. Bootstrap introduces computer science at the middle school level as a way to learn Algebra more effectively. Irene Lee’s GUTS (“Growing Up Thinking Scientifically”) introduces computation as a tool in middle school science.
In most states today, computer science is classified as a business/vocational subject, called “Career and Technical Education (CTE).” There are distinct advantages to a model that puts CS inside science and mathematics classes. Professional development becomes much easier. Science and mathematics teachers have more of the background knowledge to pick up CS than do most business teachers. CS becomes the addition of some modules to existing classes, not creating whole new classes.
It’s an idea well worth thinking about. I can think of three reasons not to pursue CS through math/science model, and the third one may be a show-stopper.
(1) Can science and math teachers help us broaden participation in computing? Remember that the goal of the NSF CS10K effort is to broaden access to computing so as to broaden participation in computing. As Jane Margolis has noted, CTE teachers know how to teach diverse groups of students. Science and mathematics classes have their own problems with too little diversity. Does moving CS into science and mathematics classes make it more or less likely that we’ll attract a more diverse audience to computing?
(2) Do we lose our spot at the table? I’ve noted in a Blog@CACM post that there are computer scientists annoyed that CS is being classified by states as “science” or “mathematics.” Peter Denning has argued that computer science is a science, but cuts across many fields including mathematics and engineering. If we get subsumed into mathematics and computer science classes, do we lose our chance to be a peer science or a peer subject to mathematics? And is that going against the trend in universities? Increasingly, universities are deciding that computer science is its own discipline, either creating Colleges/Schools of CS (e.g., Georgia Tech and CMU) or creating Colleges/Schools of Information/Informatics (e.g., U. Washington, U. Michigan, Drexler, and Penn State).
(3) Do we lose significant funding for CS in schools? Here’s the big one. Currently, computer science is classified as “Career and Technical Education.” As CTE, CS classes are eligible for Perkins funding — which is not available for academic classes, like mathematics or science.
I tried to find out just how much individual schools get from Perkins. Nationwide, over $1.2 billion USD gets distributed. I found a guide for schools on accessing Perkins funds. States get upwards of $250K for administration of the funds. I know that some State Departments of Education use Perkins funding to pay for Department of Education personnel who manage CTE programs. To get any funding, high schools must be eligible for at least $15K. That’s a lot of money for a high school.
The various CS Education Acts (e.g., on the 2011 incarnation and on the 2013 incarnation) are about getting CS classified as STEM in order to access funding set aside for STEM education. As I understand it, none of these acts has passed. Right now, schools can get a considerable amount of funding if CS stays in CTE. If schools move CS to math and science, there is no additional funding available.
Perkins funding is one of the reasons why CS has remained in CTE in South Carolina. It would be nice to have CS in academic programs where it might be promoted among students aiming for college. But to move CS is to lose thousands of dollars in funding. South Carolina has so far decided that it’s not in their best interests.
Unless a CS education act ever passes Congress, it may not make economic sense to move CS into science or mathematics courses. The federal government provides support for STEM classes and CTE classes. CS is currently in CTE. We shouldn’t pull it out until it counts as STEM. This is another good reason to support a CS education act.