The Challenge of Teaching Computer Science (in Brazil)

I just got back from a week in Brazil. My Portuguese isn’t very good (I need to take a Portuguese word, figure out its Spanish equivalent, and then try to translate that word to French — any many in Brazil speak quicker than I can do my double translation), so I’m not sure I fully “get” the status of computing teachers in Sao Paulo, the city where I was. Computer science is taught in high school, but it seems primarily limited to the technical high schools, many of which are co-located on college campuses. I had a great deal of sympathy, however, when the teachers complained about the challenges of keeping up to date with technological and pedagogic change as well as the challenges they faced trying to change courses they were teaching.
At both the high school as well as at the college level teachers I spoke with indicated that they typically taught four different classes per semester. That didn’t seem so bad until they told me that many/most had a second full-time job (either teaching at another school, or working in industry). The cost of living in Sao Paulo is quite high. Imagine spending more than $30 for a pizza, not to mention the fact that taxation results in electronic equipment costing more than double what it does in the US. And, these teachers are teaching two or more jobs simply to make ends meet.
I recall recently reading an online article describing the plight of adjunct instructors at colleges in the US, and their need to teach at multiple institutions, and thinking that those teachers who teach CS are probably “protected” from such conditions.
Well, I guess in other areas of the world, teaching in CS doesn’t afford such protection.
Steve Cooper
Chair, CSTA Board of Directors

This is My Dream Job

Long ago in a land far away (well, actually only about 2.5 hours east of here — but definitely a very different day and time), I started teaching high school math (in a very progressive school system), and I thought, “This is my dream job.” Every day was different and working with students and other educators was wonderful. Farther down the road in a new time and place, I started teaching computer programming to high school and college students, and I thought, “No, this is my dream job.” Not only was every day different and the students were still fabulous, but teaching with computers was fun! They were actually paying me to have fun! Now, much later in my career path, I am no longer in the classroom, so I miss the students. However, every day is still different, and the responsibilities of my position are so varied that I am still enthusiastic about education — specifically Computer Science/IT Education.
My primary job responsibility is in the development and maintenance of our statewide IT curriculum. I have the pleasure of networking with business and industry partners and in working closely with teams of our state educators to develop or revise curriculum. That in itself is rewarding, challenging, and fun. We recently revised our very outdated Computer Programming I and II courses. The courses are being field tested in schools throughout the state this year. Last Monday, I had the pleasure of visiting a terrific high school in the southern part of our state. I was participating in a monitoring visit (monitoring and accountability are some of my other job responsibilities). What a pleasant surprise it was to me to visit both a Computer Programming II and a Computer Programming I classroom and to see the students actively engaged in programming games to test the computer programming coding skills that they had learned earlier in the year (C# and Visual Basic 2010). They were so engrossed in their work and having so much fun working, that I hated to interrupt them, but I did. I asked what they were doing (and all were able to articulate that quite clearly), and I asked if they liked the class (and they overwhelmingly said yes). Some of the students told me that they were going to college to study Computer Science, and some told me they were going to take another programming course or take AP CS. How great is that! I was able to see the “curriculum in action” with students who loved it. What fun! Almost as much fun as teaching it, but not quite.
Responding to inquiries from stakeholders and interested parties is another fun part of my job. In January of this year, my division director forwarded me an email from a Russian Computer Science professor who was a Fulbright Scholar at the local state university. He wanted information about our Computer Science and IT curriculum, which I shared with him. He then shared a paper he had written about high school informatics in Russia. I read the paper and then we had the pleasure of meeting in person to discuss the similarities and differences between CS & IT in the United States and Informatics in Russia. Of course, the discussion included the new CSTA K-12 Computer Science Standards. We had a delightful meeting (though occasionally I had to ask for him to repeat something he had said), but otherwise we communicated quite well. We decided that there were many similarities and some differences, and that both countries had room for improvement. (Which is a perennial state, as the CS and IT world changes constantly and poses a challenge to try to keep up to date!)
Soon after I met with my Russian friend, I was asked to meet with a Japanese Computer Science Professor in my role as the CSTA Curriculum Committee Chair as well as the CSTA K-12 Computer Science Standards Task Force Chair. We met briefly at SIGCSE (though we saw each other in breakout sessions quite frequently throughout the conference). We also had a discussion noting the similarities and differences between Computer Science in the United States, and Informatics in Japan. Once again, we found many similarities in the two countries. We also had a delightful conversation before heading off to enjoy SIGCSE. Again, what fun to meet such diverse people who share the same priorities and passions for computing education as I do.
One area where both Russia and Japan seem to have a bit of an edge on us is in the integration of informatics throughout the curriculum, from the lower grades through high school. But we are working on that! Every day articles find their way to my email box and tout successes in computing education in the K-12 spectrum. Many of the newest developments are in K-8. What an exciting time to be a CS/IT educator! Every day is different. There are advances in computing technology and computing education every day. And the students are so motivated to learn computing. They just want current, relevant curriculum that provides them authentic experiences. That is our job. My primary job is coordinating teams of teachers to develop that curriculum and then providing professional development for our educators so they can facilitate the delivery of that curriculum. Even though I only get to see and work with students on an occasional basis, I do get to impact what is taught in their classrooms. I do get to meet and talk with interesting people who also love computing. This is my dream job.
Deborah Seehorn
CSTA State Department Representative, Chair Elect
Curriculum Committee Chair

Meet The Statistically Average Computer Science Teacher

Every two years, CSTA conducts a survey of current computer science teachers. We have an excellent response rate and now that the results have all been tallied, I would like to introduce you to the “average” Computer Science teacher (statistically speaking).
The average Computer Science teacher is a white male who has been teaching for more than 15 years and has been teaching Computer Science for about 13 years. He is a member of CSTA.
He teaches in a public, suburban high school with approximately 1500 students in grades 9 through 12. Almost 300 of those students speak a different language at home. He is part of the Business Department and teaches Computer Science courses full time. His state and district have no Computer Science standards.
His school offers Computer Science at the pre-AP level. The 25 students enrolled in his Computer Science elective will earn a Computing/Technology credit for the course. Three of these students are female and three represent ethnic minorities. In this class, he teaches problem solving, programming in Java, and the social and ethical issues related to the field. He’s never even heard of the proposed AP Computer Science Principles course, not surprising in light of the fact that his school does not offer AP Computer Science A. He also teaches elective courses related to web design and development.
What does he think of his enrollment numbers? He believes there are students who would like to be in his classes who aren’t. He thinks these students are dealing with full schedules and the perception that electives are not as desirable on a transcript.
His biggest challenges to teaching Computer Science? Lack of interest in the subject — from both the adults and the students at his school.
He would really like more time for professional development, as long as he can find a workshop or seminar that is relevant, nearby and inexpensive.
Are YOU the average Computer Science teacher? Leave a comment below and share your reactions!
Tammy Pirmann
School District Representative

Are Parents Supporters or a Challenge for Computer Science in K-12?

As a K-12 Computer science teacher I am often presented with different challenges and they all vary depending on the grade level. Most of the time when we think about challenges, we focus on school budgets, school administrators, and curriculum challenges, but we usually don’t stop and think about the challenge that starts at home.
Often, the biggest challenges with the younger K-8 grades are the parents’ perception of what computer science is and what their kids should be learning in the computer science class. One of the phrases that I commonly hear when a student is struggling with a CS skill is: “But my child is so good with computers, he spends so much time on it and uses it so well, you should see him using the iPad, he uses it even better than me.” These parents simply do know that playing online games and using iPad apps is not really computer science. So, I find myself explaining over and over again what computer science is and why our school wants our students to become producers and not consumers. This is why our kindergarteners are learning about developing simple games and our first and second graders creating games using KODU.
Then we have the parents who insist that our curriculum is too difficult and the students should be coming to the computer lab to play games and have fun. I once had a parent conference in which the parent insisted that we should review the computer curriculum because we were actually trying to fail all kids by asking them to learn and do thing that were beyond their ages. Some parents still think that a computer science class should be a fancy typing, word processing, creating electronic worksheets and slideshows course or that it should be a course that students can take just to raise their GPA. Some parents have a hard time understanding that their kids are capable of so much more.
I have the privilege to work in a private school where most of my kids have access to different kinds of devices at home. This is a good and bad thing at the same time, because this makes parents think that their kids are expert computer scientists. They are experts at downloading apps, creating movies with iMovie or moviemaker, downloading songs from YouTube (copyright infringement is whole separate topic). I do not want to discredit these skills or applications, but my kids are also completely capable of coding or designing their own games. We just have to give them a chance!
This week I have the opportunity of addressing parents at a school assembly and explaining to them the importance on learning computer science in K-12, so let’s hope that opens the door to have more parent support and rise to that challenge.
Michelle Lagos
CSTA International Representative

Because We Are a Community

I believe it is only human nature that, when something terrible happens at a distance from us, we immediately ask ourselves “Are our people there? Are they safe”. Twice in the last few months, I’ve come to understand that because CSTA has grown to encompass more than 13,500 members in 126 countries, the chance of our people being touched by disasters of all kinds has greatly increased.
Not too long ago we heard of the terrible tragedy in Newtown, CT. One of our Board members, Patrice Gans, teaches at an elementary school in Newtown. It is impossible to describe how the CSTA staff felt until we were able to determine that she was safe.
And yesterday, when those of us on the west coast learned of the bombings in Boston, we were instantly afraid for our Boston-area chapter leaders Padmaja Bandaru and Kelly Powers, and their families, students, and colleagues. And even now that we are sure that they are safe, I find myself filled with a kind of terrible anger that someone would put these friends and teachers who are so dear to me in harms way. Perhaps it is just human to feel angry at these times and to want someone to blame.
But like Newtown, Boston is a wonderful town full of strong and resilient people. I think this is best expressed by Padmaja in these words she sent to me last night:
This is the time to show that we are all strong and will not back down with these kind of attacks. We feel the pain, become stronger, and keep going with what we are supposed to do although we are still thinking about the people we lost. People still believe that even though this happened, we are all still united to face any adversities.
CSTA is a community and we are stronger because we care about each other.
Chris Stephenson
Executive Director

We Are the World

There have been several posts to this Advocate Blog that chat about the lack of diversity in computer science classes and STEM related fields. Quoting from Deborah Seehorn’s blog post last October:
http://blog.acm.org/archives/csta/2012/10/the_good_news_a.html
“There have been articles about Women in Computer Science, Computer Science in K-12 Education, Computer Science in STEM, Business and Industry Involvement in Computer Science, Interesting our Youth in Studying Computer Science, the Computer Science Employment Outlook, and the list keeps growing.” I’d like to add another resource to that list that appears in the October Blog.
Today, March 27, 2013, an interview with Ed Lazowska was posted in Science Careers from the Journal Science. Dr. Lazowska holds the Bill & Melinda Gates Chair in Computer Science & Engineering at the University of Washington. The title of the article says it all: “We Are the World.”
It is best that you read the entire article as it refers to an interview done with Greg Andrews in 2004 and asks some of the same questions of Ed Lazowska now. The article focuses on careers in computer science, PhD degrees in computer science, and how numbers might be interpreted then and now.
Perhaps the most meaningful quote from the interview is Lazowska’s final remark:
“Science policy in this nation, and STEM education, is in the iron grip of chemists, physicists, astronomers, and biologists. They don’t want any interlopers. But increasingly, advances in these fields are being driven by computer science. There is no field that is more important to the future of the nation and the world.
All of our national and global challenges — education, health care, transportation, energy, national security, scientific discovery, you name it — rely on advances in computer science.
Let’s recognize this, and act accordingly.”
Fran Trees
CSTA Chapter Liaison

The Changing Face of Education and Computer Science

Any person involved with education today can tell you that it is an ever changing field. What was common place just a few short years ago has been replaced by something new. One of the biggest challenges teachers face is keeping up with this constant change.
When I started teaching, we were responsible for preparing our students for Pupil Performance Objectives (PPOs) which were tested through Proficiency Tests. The Proficiency Tests were then replaced with the Ohio Achievement Tests (OATs) and the Ohio Graduation Test (OGT) which assessed the Ohio Academic Standards. Now, the Ohio Academic Standards are being replaced by the Common Core Standards and the End of Course testing or Student Learning Outcomes (SLOs). And all these changes have happened just since I began teaching 14 years ago.
Just as the standards and testing have changed, so has funding. School districts are now dealing with major budget cuts impact which courses get funding and which get eliminated. While core courses continue to get the lion’s share of the resources, electives such as Computer Science are the first to be cut. In this kind of environment, Computer Science teachers are being challenge to demonstrate that their courses are important because students are gaining critical knowledge and skills.
This is where CSTA comes in. CSTA provides a number of powerful tools that help teachers show that Computer Science learning is critical for all students. With the help of the new curriculum crosswalk documents, we can show exactly how our curriculum aligns with the CSTA K-12 Computer Science Standards. We can rely on CSTA to fight for Computer Science in K-12.
I may be only one teacher in a classroom, but as a CSTA member, I have a community. CSTA links us all together and gives us a powerful voice at the regional and national level. Because of CSTA, Computer Science is now part of the national conversation about what students need to know to be prepared for the future.
I hope that all of our members will take action and become involved in some way to promote Computer Science on the local, state, or national level. What can you do within your school to further promote your Computer Science classes? Have you checked out the opportunities offered by your state or local chapter of CSTA? Have you become involved in the state or local CSTA chapter?
Please join me in looking for every opportunity to promote Computer Science in these ever changing times.
Dave Burkhart
Candidate for At-Large Representative

Equity, Policy, and and Why “Trickle Down” Doesn’t

As a non common-core subject, computer science relies on vigorous policy efforts to help our educational leaders understand the importance of including computing in the K-12 curriculum. In just the past few years, we have witnessed how collaborative policy efforts can lead to the inclusion of computer science in government grant funding, standards development, certification guidelines, and curricular credit. This policy work has been tremendously important in raising awareness about the low numbers of U.S. students studying computer science and providing the necessary foundation for working towards increasing the numbers of students who pursue computing in higher education.
Now that these efforts have evolved to include various implementations and the CS10K movement is gaining momentum, there is a temptation to assume that “increasing” participation in computing will automatically lead to “broadening” participation in computing. As a subject with troublesomely low participation rates of both females and students of color, there is a real danger that without integration of equity-focused policy, general efforts to attract more students to computing will only extend the inequitable status quo.
A brief look at educational history highlights this point. Compulsory schooling allowed poor and working class children into American schools, but segregation remained. The Supreme Court ruling Brown vs. Board of Education was necessary to initially desegregate learning spaces, but without equal opportunity or purposeful inclusion, many public schools are more racially and socioeconomically segregated than ever. Before Title IX, girls and women were largely directed away from STEM fields and higher education altogether. In fact, many point to the subsequent gender balance in high school calculus as a direct result of Title IX legislation. These equity-focused policies were necessary because larger educational policies that benefitted majority students and boys failed to “trickle down” to students of color and girls. Yet, lessons from Brown and Title IX also highlight that equity-focused policies can open doors but do not in themselves lead to equitable access, instructional opportunities, or practices without purposeful inclusion at the state, district, school, and classroom level.
Therein lies the necessity of maintaining a focus on equity as both policy and classroom practice even as we are pursuing policy changes that are directed at “universal” CS education.
Additionally, the educational research that has been done in this area makes it clear that alongside “top-down” equity-focused policy work, equity work must simultaneously be addressed from the “bottom-up” at the classroom, school, and community level. We know from research that:

  • Development of a common course curriculum across schools fosters rich pedagogical collaboration amongst teachers;
  • Long-term professional development opportunities grounded in the courses teachers are teaching is necessary to develop pedagogical practices and strategies for effectively teaching computer science for diverse learners;
  • To maximize chances of CS learning opportunities to exist in the schools, clear pathways of study must be established for students from both academic and career tracks in computer science curricular decisions. School administrators, parents, and students need to see the trajectory of possibility of taking an introductory CS course in a series that might culminate in an Advanced Placement exam, a CTE certification, or another degree.
  • To address equity issues, we need to think about course pathways that culminate in, not begin with, AP courses. By definition, AP is a college-level course. Focusing on this class exclusively focuses attention and resources on a course that is available for predominantly high achieving, college-bound students from middle-class schools.
  • As well, there must be school-wide support and a belief system, from principal to counselors to parents to teachers, that all students are capable and belong in a computer science class. As Lucy Sanders stated at a recent NSF Broadening Participation in Computing community meeting, we need a social movement to reimagine the “norm” for who studies computer science. Changing belief systems cannot happen from a policy perspective alone but relies on the deep commitment and skills of our full community and computer science teachers in their own classrooms.
    There is too much at stake to hope that general educational policies aimed at increasing participation in computing will by themselves trickle down and lead to broadened participation. Instead, we need to hold steady our attention to all aspects of equity as we go forth to increase learning opportunities in computer science. This is a critical lesson from the educational history that has preceded us.
    Joanna Goode,
    CSTA Equity Chair

    New Thoughts on App Inventor

    In September 2011, I posted about how much I like App Inventor as a tool to get students excited about computer science along with believing that they have the ability to create technology that could potentially change someone’s experience. Since then, I have talked with more computer science educators than I care to admit who mention things about App Inventor like, “my students will find it too babyish”, “the programming isn’t advanced enough”, and “they will get bored quickly.” To them, and to anyone else who might be considering using App Inventor in their CS classes (of all levels), I want to share something that happened this week.
    A 9th grade student of mine who is also a member of the Mobile App Development Club I sponsor asked me if I could give him some advice on how he can convince his parents to buy him an Android smartphone. I chuckled as I recalled all of my failed attempts at convincing my own parents to buy me an Atari system, call waiting, or cable TV. (I was lucky enough to get an Apple IIE.) I suggested that if he could show his students that he was building apps for his phone that were useful to someone other than himself, then his parents would understand that he was creating with, and for, technology, not just using the technology. I asked him if he could think of an app that could help his parents in some way. He said he would think about it and walked away. About twenty minutes later, my student returned with a problem that he thought he could help his father with. His father works at a car dealership and often has to walk through the lot to find certain vehicles. The problem: his father is color blind. My student decided that he wanted an app that would enable his father to take a picture of the car he suspected was the right one and then announce the correct color of the car. Brilliant!
    So, we went to work. His job: start to sketch the user interface and make a list of the functionalities the app would have. My job: make sure he had learned the appropriate computer science concepts to build this particular app. The concepts I came up with:
    1) take a picture with the camera or select a picture from the phone’s gallery
    2) get the color of the pixel selected by the user when he/she touches the picture on the screen
    3) perform string concatenation
    4) initialize a list and fill the list with values
    5) create a method that traverses a list using a for loop, find the index number of the minimum value in a list, and then return that value
    And that’s just off the top of my head. Now, to address the issue that App Inventor is too elementary, item #5 is very similar to one of the free response prompts that shows up every few years or so on the AP Computer Science exam. Do we think that writing procedures or finding the minimum or maximum in a list is babyish?
    At the end of the day, what remains is that this 9th grader created a program to help someone, designed a user interface that was simple but had all of the needed functionality, worked with variables, value-returning methods, lists, for loops, and performed both pixel and string manipulation. Now he’s off to perform user testing, solicit feedback, and refine his program.
    The look on my student’s face this week as he was working on a program that will help his Dad was priceless. This experience made me remember why I became a teacher and gave me the much-needed boost I often need during the gray sky season. If the student ends up with an Android phone, that will just be the flower on top of the icing on the cake.
    Ria Galanos
    CSTA 9-12 Representative
    Thomas Jefferson High School for Science and Technology
    Alexandria, VA

    On Grades and STEM

    The other day I was reading () Desire2Learn Acquires Course-Suggestion Software Inspired by Netflix and Amazon. The article discusses a program that uses information in a student’s transcript, along with historical information about other students, to “generate individualized course suggestions based on a five-star scale”. I don’t have much of a problem with that. I’m fine with software reminding students of the courses they need for their major, what courses they still need to complete graduation requirements. What set me steaming is that the program will also suggest “what courses they will more easily pass, even offering estimated final grades.” What do we think a student will do if the program says the student might get a B or a C in a course?!?
    I don’t want to discount that grades indicate something about mastery. But I don’t think grades can tell us everything. Unfortunately, parents, teachers, and students at all levels have bought into the idea that anything below an A is a death knell. This is doing real damage to our ability to recruit and retain STEM majors. We’ve had grade inflation in STEM fields, for sure (see http://gradeinflation.com for loads of information on the subject), but I like to think we are buffered a bit by the quantitative nature of many of our assessment tools (exams, certainly, tend to be graded in a completely quantitative fashion).
    This leads to an unfortunate situation. A student who is passionate about a STEM discipline will change fields if he or she is getting Bs and Cs in STEM courses but finds they can pull off higher grades in other courses. Or a student won’t even consider work in a STEM field because “it’s hard”, or because “I can’t afford not to keep up my GPA”. I think of all the C students I’ve had in computer science whose grades do not reflect their ability in the field, but might reflect that the student was too busy building their own mail server to study for the exam. I think about the B students who were enthusiastic and passionate about computing and who I am certain will perform admirably in their jobs if they have good managers.
    I miss my elementary school days when we got a grade for the quality of our work and a number for effort. At least then you could differentiate between the B-1, meaning a student tried hard and only achieved B level mastery, and the B-2, meaning the student probably could have done A work with more effort. I don’t think we can afford to scare away the B-1 and B-2 students, or the C-2 students. But we’ll always struggle to keep them if grade inflation continues to be rampant. When 95% of a high school class graduates with an A- average, when almost 45% of college grades are As, we have very serious problem, and it’s doing serious damage to our ability to recruit and retain students in STEM disciplines.
    Valerie Barr
    Chair, CSTA Computational Thinking Task Force