« September 2012 | Main | November 2012 »

October 25, 2012

The Good News about Computer Science

As is my usual practice, I have been mulling over what to write in my blog post for approximately the last month. The good news about computer science is that it is definitely in the news. Almost every day! 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.

One issue near and dear to me is the issue of women in CS or the lack thereof. The first article I encountered was titled Fewer Women Obtaining Computer Science Degrees published in the Orlando (FL) Sentinel in September. The article notes that "Officials at the National Center for Women & Information Technology report that women accounted for 18 percent of computer and information-science bachelor's degrees across US colleges in 2010 - a 51 percent drop from 1985 when a wave of women earned high-tech degrees." Wow, 18% is woefully low. (The article also notes the abysmal lack of CS courses required for high school graduation as well as stereotype issues for CS.

But, the good news is that we can work to improve on both of those. An opinion piece in Mashable noted that only 25% of the STEM workforce is comprised of women and that it is critical to get girls interested in STEM early on. Yet another article noted that whereas the number of women in CS and IT-related jobs is still lagging, there are more startups that are actively recruiting women by giving them the "red carpet treatment" because "two-thirds of my users, my most valuable users, are women". Another article in Science Daily noted that the problem is world-wide. The report found that "the number of women working in the science, technology, and innovation fields is very low, and in some cases declining, in the world's leading economies". The research shows that women have greater parity in countries that support health and childcare as well as equal pay.

More good news came in the form of articles about how people are addressing the gender gap in CS. Chicago Tech Academy is "pretty evenly split between male and female students" and the girls don't seem fazed by the gender gap they will face in the world of employment. (Isn't that the way it's supposed to be?) The Girls Who Code program in New York City enrolled female students, ages 13 to 15, in their summer program and exposed them to CS, Web design, robotics, and other STEM subjects. Tech Crunch reports that Square is hosting a Code Camp Contest, "a three-day, expense-paid immersion program at Square's San Francisco headquarters called Code Camp" for female engineering students. Forbes pondered whether toys would inspire girls to pursue engineering. We do in this in CS with Legos and robots, but they are considering something called "GoldieBlox" designed to appeal to young women the way American Girl dolls did. USA Today reported that a Seattle middle school invited female engineers to spend time at the school teaching girls to write computer code. This is a great way to provide role models! Gamasutra.com reported that the Entertainment Software Association Foundation provided 30 scholarships to women and minority college students who are studying game development and computer science. And, the University of Texas at Austin received a grant to attract more women to the engineering and computing fields and to retain more women in those fields.

STEM was another area of good news for CS. Most of us realize that CS is an integral part of STEM, but I'm not so sure that the general population realizes that. US News and World Report noted in an article titled High Schools Not Meeting STEM Demand that of "the more than 42,000 public and private high schools in the United States, only 2,100 high schools offered the Advanced Placement test in computer science last year, down 25 percent over the past five years" according to a report conducted by Microsoft. This is a great way to look at the need for improvement in STEM in our nation's high schools. The article, drawing on research conducted but CSTA and ACM, goes on to note that only nine states allow computer science courses to satisfy core math or science graduation requirements.

CS in our K-12 schools was another notable topic in the good news. In an Education Week article, Tony Wagner notes that we need to graduate all students to be innovation-ready. His method for inspiring students to be innovators involves focusing "primarily on teaching students skills and not merely academic content, including critical thinking and problem-solving, effective oral and written communication, and many of the other survival skills, such as collaboration and initiative". These are things that we can do so well in computer science! US News and World Report reports that Microsoft finding that "high schools nationwide are not training enough students in computer science" and that the participation rate in the AP CS exam has declined 25% within the last five years. Ross Pomeroy cites that Microsoft report and declares that CS should be required in K-12: "Implementing and requiring uniform computer science education, a course that actively encourages modern age computational thinking, logic, reasoning, and problem solving, and leads to riveting, futuristic careers in video game design, robotics, cognitive science, cryptography, and computational physics, is a good way to catch up."

A great way to promote CS for high school students is to reach out to parents and administrators about the employment outlook for CS. TechRepublic reported that there is a predicted 19% increase in CS jobs by 2020. The Washington Post cited a report from the National Association of Colleges and Employers that its members plan to hire 13% more new college graduates in 2013 with a particular demand for graduates with degrees in finance, computer and information science, and accounting. The increase in the demand for CS graduates has prompted business and industry to partner more with K-12 education. A New York Times article noted that Microsoft is sending employees to the front lines and encouraging them to teach for a full year in a high school computer science class. The Microsoft engineers earn a small stipend for their classroom time and are in two to five hour-long classes a week. Time reports that a New York City non-profit group is teaching students in underserved areas "the computer science skills they need to land jobs in this high-tech economy," by teaching JavaScript to high school freshmen twice a week after school.

So, the good news is indeed that CS is in the news. But we do need to continue to promote our message and to attract young people, especially women and other underrepresented groups to computer science.


Fewer Women Obtaining Computer-Science Degrees

Graduating All Students Innovation-Ready

The Growing Field of Computer Science

Why more women should consider STEM

Microsoft Sending Engineers to High Schools

High Schools Not Meeting STEM Demand

Why Women are Getting the Red Carpet Treatment at Startups

High Schools not Focused Enough on Computer Science

STEM Program Helps Girls Overcome Stereotypes

Female Engineering Students Sought for Code Camp

New York Non-Profit Teaches Underprivileged Students Computer Coding

Numbers of Women in Science and Technology Fields Alarmingly Low in Leading Economies

Chicago High School Tackles Tech Gender Gap by Teaching Girls to Code

Can Toys Inspire Girls to Pursue Engineering?

Computer Science in K-12

Outreach Efforts to Encourage Girls to Pursue Technology

Class of 2013 to Find Improved Job Market

Scholarships to Support Women, Minorities in Game Development

University of Texas at Austin Receives Grant to Increase Number of Women in IT

Deborah Seehorn
CSTA Chair-Elect

Posted by cstephenson at 01:52 PM | Comments (2)

October 23, 2012

Let Me Buy You a Beer: A Message from a CSTA Advocate

While I'm truly honored to be the first recipient of the CSTA Leadership Cohort APP (Advocacy Points Program) award, I wish to recognize members of CSTA Chicago Chapter whose sustained advocacy efforts over the past few years have contributed to this more than any individual action on my part. I didn't do this on my own and I couldn't have. So I share this honor with Don Yanek, Jeff Solin, Dale Reed, Lucia Detori, Terry Steinbach, Gail Chapman, Brenda Remes and Wilkerson, Diane Bell, Ron Greenberg, and dozens of other hard-working teachers and advocates in Chicago.

I didn't do anything special to receive this award beyond what I do on a daily basis; working with my teacher-friends to convince anyone who will listen of the importance K-12 CS education. I know many of you out there do the same thing, day and in and day out, and I hope that you will be similarly recognized.

At the CS & IT Symposium in July, I talked about "Baker's Rules for Advocacy," which served as a gimmick for organizing the presentation. But in the months since then I've realized that, with a few modifications, these rules are powerful strategies. While situations vary from one district or state to another, my hope is that teacher advocates will find these ideas applicable. So here we go: Baker's Rules for CS Advocacy:

Rule #1: You must believe (in your heart of hearts) that our country and the world would be a better place if every student learned something about CS before graduating from high school.
I really believe this, and quite frankly, the fact that many of the people I come into contact with on daily basis don't, drives me to work even harder. This rule, above all others, is the most important one. You won't be an effective advocate for K-12 CS without this belief and without being able to articulate this belief to others. There are many good reasons to believe why CS Education for all students is important; I was fortunate enough to find a group of similarly-minded people in Chicago to work with who helped each other articulate exactly what that belief meant for our community. If there is any "secret sauce" to our success in Chicago it's that despite our numerous failures to make an impact over the years, we kept returning to this core belief and trying until our message stuck with policy makers who could help us make a difference.

Rule #2: Beer. It works.
This is my tongue-in-cheek way of saying that we're in a people business, both as teachers, and advocates. To make an impact you need friends, and you have to be closer to the other CS teachers in your community than just professional acquaintances. A small group of passionate people can make huge changes, but that group must trust each other, like each other, and be driven by the same goals. We're not used to doing this, either as computer scientists or teachers, so it helps if some kind of social lubrication is applied, for me, beer works.

It's funny that the members of CSTA Chicago rarely socialize in Chicago. At home, CSTA chapter meetings are mostly business and, of course, we have families and daily teaching responsibilities and obligations that always seem to prevent us from getting together. Almost every good thing that has come out of CSTA Chicago was started at an out-of-town conference, including meeting each other in the first place. While it's often a struggle to make time for it or pay for it, there is nothing like an out-of-town conference in terms of efficiency for getting together with colleagues from home, unencumbered by typical distractions. You have to get out there into the broader community and make yourself known.

Rule #3: Location, Location, Location
Imm reluctant to go into detail about any specific effort we made in Chicago because the reasons things worked or didn't is inextricably linked with local politics and realities. The same will be true for you. Our chapter essentially started by indentifying a need for Chicago schools (more CS courses) and then set about figuring out who we needed to convince of that need, how we were going to convince them, and what could actually be done to solve the problem. Four years later, we've really made an impact. Your community also has a need for more and better K-12 CS. But the reasons your community needs it might be different from ours, and certainly figuring out who you need to convince and how to work your way through the maze of details will be different. That is your work as an advocate: to figure out the path to success. While the challenges and solutions will be unique to your situation, you won't be alone in your quest. There are a growing number of teacher advocates out there, like me, who can help you. Just ask, and see rule #4.

Rule #4: CSTA is the force that binds us together.
While a lot of the advocacy efforts in Chicago have come from a variety of sources, our CSTA chapter is the glue that binds them all together. A local university received a large NSF grant to convert an introductory technology course in 35 schools into a real CS course because of the efforts of CSTA Chicago members. Several teachers are Co-PIs on the grant. Google, Oracle, Microsoft, and other companies that want to sponsor events for teachers in Chicago, now know to contact our CSTA chapter to coordinate their efforts. When the mayor of Chicago announced the formation of some new STEM schools in the city, CSTA was there pushing for required CS, and it looks like that will become a reality. No single person in our chapter made all of these things happen; the work in the trenches was done by teachers like you and me wearing our CSTA hats.

Follow four simple rules to be an effective CS Teacher Advocate:
1) believe K-12 CS should be a part of every student's education
2) find other teachers in your community who believe the same thing
3) figure out what's important to your community, and
4) and tap into the support and resources of CSTA. Along the way, you'll make great friends, have an important impact in your community, and maybe, enjoy a beer or two.

Baker Franke
CSTA Leadership Cohort

Posted by cstephenson at 01:59 PM | Comments (0)

October 18, 2012

Using Exploratory Learning for CS

This year I am making some changes in my introductory Computer Science class. Last year, I added Scratch and BYOB as lead-ins to my standard programming language, Racket (Scheme). This year, I am going straight to BYOB, but following it up with AppInventor for the rest of the course.

Detractors of curricula using Scratch and BYOB say that learning programming through exploration is not a good way to learn computer science concepts. It lacks rigor and structure and leaves students with the idea that if they just try a different value in a field, they might get the "right" answer. However, I see benefits to allowing students to explore and investigate how different commands work and the cause and effect of changing program commands and/or parameters. I find that my students do gain an understanding of the basic concepts. They also get to be creative in how they accomplish the given task. With open-ended introductory labs they don't just accomplish the assignment and stop. They play more, are apt to experiment more, and push themselves further. As assignments become more focused, they are willing to try different approaches. They continue to experiment.

I am hoping with the introduction of AppInventor in the curriculum, students will get a real-world understanding of how to build a full application through more large scale projects. Certainly, building mobile apps is a motivator for students. Students should be able to apply the computer science concepts learned earlier to build a more complex application that involves so much more than just straight coding. Students will learn about project design, teamwork, user interaction, prototyping, user feedback, testing, and iterative engineering.

This change is a bit scary, but exciting as well. I hope it will open the eyes of the students to all the work that goes on in order to make the mobile devices they carry around so powerful. And I hope that it empowers the students to realize that they can be the creators, rather than just the users of those devices.

Karen Lang
CSTA 9-12 Representative

Posted by cstephenson at 02:52 PM | Comments (0)

October 15, 2012


There is a recent news story about a 14 year old Pakistani girl who was shot by the Taliban because she was advocating for girls to be able to attain an education. At such a young age, she recognized the value education could have for her and took a stand when the Taliban started blowing up schools to keep girls from being able to attend school.

I think about education in the United States and the contrast is so overwhelming. By law, our kids are entitled to a free public education and yet we have kids (and parents) who do not want it. Certainly, one could argue there is a bit of a glorification of education in our society and that not everyone *needs* an education to do what they want. But what does this have to do with computer science?

Am I suggesting we throw traditional education systems out the window and strictly work from an apprenticeship model? No.

Am I suggesting we track our kids from birth to force them into a pre-destined career? No.

What I am suggesting is that we use this news story to shape our students' ideas of education among gender. Remind them of how much choice they have in what they do, where they go, and the effort they put into things. Remind them that sometimes things are hard, that you must study to learn something new, and that doing well in computer science is about hard work and not innate ability. Remind them that computer science is a tool to help them accomplish other goals andnot just learning a programming language.

But most importantly, encourage students to take a stand for something they believe in. Find their passion, and use education as a catapult to follow that passion and contribute to the society in which they live.

Mindy Hart
At-Large Representative

Posted by cstephenson at 11:59 AM | Comments (0)

October 11, 2012

Good Things Come to Those Who Wait

I will start at the beginning of my story to explain why I titled my blog with the famous quote. The beginning of the 2011-2012 school year I had a conversation with one of the school board members for the school district where I am a teacher. I discovered during our conversation that she had been a mathematician and a computer scientist prior to retiring to raise her children. I had mentioned to her that I wanted to propose that the board recognize Computer Science Education Week. She suggested that I contact the superintendent and make the proposal to him. I followed through with her suggestion but did not receive a response during the school year from the superintendent. The teachers' union was in the middle of negotiating a new contract, so I felt this was not a good time to pursue my request.

During summer 2012, I wrote letters to each of the school board members asking them to support a proposal to recognize Computer Science Education Week. In my letter, I told the board members that I would be attending the next school board meeting to make my request public. I also sent an email to other computer science teachers in my district asking them to either attend the school board meeting to support me or to send a letters to the school board members requesting that they recognize Computer Science Education Week. I attached the letter I had written and the addresses of the school board members.

The following week I attended the school board meeting. I had prepared a statement and was relieved that I did. I was so nervous speaking to the board and the principals that I read the speech. The text of the statement is listed below:

Board Members and Administrators
I'm sure that you check your email, surf the Internet and use your cell phone as part of your daily life. It is computing and technology that make this all possible. Both play an important role in driving innovation and society. Since 2010 the US House of Representatives have endorsed Computer Science Education Week to raise awareness of the transformative role that computer science has played. Going forward, CS Ed Week will always be held the week containing December 9, Grace Hopper's birthday.

This year, December 9-15 has been designated as Computer Science Education Week. I am already planning my activities for the week which will include a field trip to Raytheon, a graduate student from UCI that will discuss her project using computers to help parents monitor their premature babies, and a guest speaker from the industry. I am requesting that the board recognize CS Ed Week just as you have recognized CTE, FFA, and student leaders. Please join with me to help promote awareness of the importance of computer science in our society.

Once again I did not hear any response from my request. Last week I was planning my next step when I received a surprise visit from the superintendent. He explained why it had taken so long to respond to my request. He told me that due to my request, the board had reviewed which groups they had honored at school board meetings. They discovered that sports received the most recognition and academics the least amount. It was decided, with the approval of the Athletic Directors, to decrease the number of times per year that athletics is recognized. The board decided to not only recognize Computer Science Week, but to recognize other academic areas. He asked that I send him a sample resolution for the board to use. That evening I visited the Computer Science Education Website (www.csedweek.org) to download the sample resolution that is listed under resources. I sent it to the superintendent with a thank you for dropping by my classroom.

It seems that "Good things come to those who wait" did apply to this situation.

Now, I need to get to work pulling together all of my activities for CS Ed Week.

What activities are you planning for CS Ed Week? It is not too early to begin your planning.
Myra Deister

CSTA At-Large Representative
Sunny Hills High School
Fullerton, CA

Posted by cstephenson at 11:36 AM | Comments (1)

October 03, 2012

Additional Indignity

I often talk with my students about the impact of technology on our lives: the good and the bad, the capabilities and the limitations. A great example of this was this past summer when my family spent close to a month living in Copenhagen, Denmark. It was amazing how easy living in a foreign country can be thanks to technology.

We found an apartment to rent through an online service and communicated often with our landlord-to-be via email. Money wasn't a problem once we were there, as electronic banking allowed us to use our ATM and credit cards freely (although most places required a PIN for credit cards). With a wifi connection in our apartment, we were able to use an iPad to FaceTime with family back in the states. And even though we didn't have cell service there, we were still able track our location and navigate around town using the iPhone map and GPS.

As good as technology is, however, it does have its limitations. The Google Translate app was great for translating signs or phrases, but it also demonstrated how hard language translation still is for computers. While doing laundry one day, I passed the time by translating the dryer settings from Danish to English using Google Translate. Most of the settings mapped closely to what I expected, until I tried the top one: "Ekstra tort." Based on the other translations, I expected to see "Extra hot." However, I was surprised to find that it translated as "Additional indignity." I now feel guilty every time I do laundry, knowing that I am inflicting indignity upon my clothes.


Dave Reed
CSTA Board of Directors

Posted by cstephenson at 10:44 PM | Comments (0)

October 01, 2012

Computer Science: Tool or Way of Knowing?

I gave a talk recently and, at the end, a faculty member from a non-CS discipline asked me "So, is computer science a tool or a fundamental way of knowing?" My answer was an unabashed "YES". But it depends on the context. It depends on what problem is being solved, and what is already known about the solution method, or whether there even is a solution method already. Let me give two examples.

Consider a problem I give the students in my Taming Big Data course (with thanks to Punch and Enbody). I present them with a spreadsheet of daily information on Google stock trading from the day the stock went public through the end of the month prior to when the assignment is given. Their task is to take this daily data (which includes volume traded and daily closing price) and report on the 6 best months and the 6 worst months for the stock. There's no mystery about how to compute the monthly values, given daily data. The challenge for the students is not in solving the problem, the challenge is in implementing that in a program. Computing is a tool for implementing a known solution.

Now consider the Human Genome Project. When that project began, everyone knew that computing would have to be utilized. As a discipline, however, computer science didn't really know what to do. Whole new parts of the field had to be developed in order to address the significant subproblems posed by the Human Genome Project. Computing as a "way of knowing" was critical to the success of the efforts. The combining together of computer science knowledge and biology knowledge led to developments that today are changing people's lives, thanks to fast and relatively inexpensive gene sequencing.

So we might think this is only relevant when faced with really big problems that are at the edge of today's knowledge space. No! A look at the CSTA computational thinking strand takes this approach by arguing for the integration of fundamental computing thought processes into numerous disciplines. Students will, we hope, become so imbued with an understanding of computing as a "way of knowing" that they will be positioned to help solve new problems, the genome projects of the future, the grand challenges. We can teach them to program, which is important because we do need to be able to implement existing solutions to existing problems. But we do so much more when we equip them to work at the intersection of fields, solving new problems, and we can start that process very very early.

Valerie Barr
Computational Thinking Task Force Chair

Posted by cstephenson at 11:07 PM | Comments (0)