Clarifying the Dewar and Schonberg Article

There has been quite a bit of discussion about the article by Dewar and Schonberg
http://www.stsc.hill.af.mil/CrossTalk/2008/01/0801DewarSchonberg.html
claiming that:
“It is our view that Computer Science (CS) education is neglecting basic skills, in particular in the areas of programming and formal methods. We consider that the general adoption of Java as a first programming language is in part responsible for this decline.”
In http://itmanagement.earthweb.com/career/article.php/3722876 Dewar clarifies that it isn’t Java that he blames so much as the “use of the Java’s graphical libraries lets students cobble together code without understanding the underlying source code.”
The only evidence of these claims is that they see a decrease in performance in their systems and architecture classes. They also have trouble recruiting qualified applicants who have the right foundational skills for their Ada programming company that develops mission critical software.
The biggest flaw in the article is the lack of evidence supporting the claims. How many people fail the systems and architecture classes now compared to when C++ or C was used as the introduction language? Is this a problem just at their schools or nationwide? If the introductory courses switched to Java and the follow on courses never changed to introduce concepts no longer covered in the introduction course (like pointers) then of course more people will fail. It is likely that using C or C++ in the intro course just caused more people to fail and quit after the first course instead of later. Perhaps the systems and architecture courses are being taught poorly. At Georgia Tech we found that student performance improved in low-level systems types courses when we used the context of programming for a game boy. Students today don’t find low-level systems programming as interesting as they did 20 years ago, when computers weren’t capable of much.
I am not surprised that they have trouble finding people who know Ada. It certainly peaked many years ago in terms of popularity. I also don’t find it compelling that they want people to have more low level skills since the biggest growth is in jobs that have higher level skills (like software engineers).
One of the reasons Java is a popular language in industry is because you don’t have to build everything from scratch. Good software engineers need to know how to reuse existing classes and how to design classes that can be reused. Why should students have to build their own graphics primitives instead of using the Java graphics classes? What learning do they miss out on by not doing this?
When I first took a 3D graphics course we had to develop the algorithm for drawing a line. As students we found this a boring and tedious task since even at that time all the graphics packages had algorithms for drawing a line. I very much doubt that this is required in current 3D graphics courses. Yet, the field of 3D graphics has made huge advances since then. In part we made advances in fields by not reinventing everything.
Dewar in particular claims that the introductory curriculum has been “dumbed down” to make it more fun and appealing. Again, what evidence does he give for this claim? He says that students are not learning formal methods for proving program correctness, but my understanding is that this field which was popular in the 80s has not had much success. He also claims that students don’t have enough knowledge of floating point computation. Again, what proof does he give for the need for this? Students certainly need to be aware of the problems with floating point computation, but very few will go on to do mission critical low-level work.
Our research on learning computing in a context whether it be Media Computation, Matlab, or robotics has shown that it does improve student success and retention. We also have the evidence to back this up, not just at Georgia Tech, but at several other universities and colleges. Just because you make something fun or interesting doesn’t mean you have “dumbed it down” or that students aren’t learning what they need to in order to be successful in a career in computing.
Barb Ericson
CSTA Teacher Educaiton Representative

Proclaim Computer Science Day

Did you know that you can have your city’s Mayor proclaim a day to celebrate computer science education?
This is exactly what CSTA Board member Brian Scarbeau did! And the city of Orlando, FL Mayor Buddy Dyer proudly proclaimed December 7th as Computer Science Education Celebration Day.
Brian picked December 7th in honor of the birthday of Grace Murray Hopper, in this way celebrating both the contribution of computer science education to the modern world and the contribution of women to computer science.
According to Brian, it is very easy to have a day proclaimed. You simply go to:
sws.lhps.org/computerscienceed
and scroll down to Download a Proclamation link and print that out and send it to your Mayor at least two months before the event to give them time to sign it and send it back to you.
Chris Stephenson
CSTA Executive Director

Google’s Open Source Contest

Like many savvy IT companies, Google has realized that when it comes to interesting students in computing, college is just too late. For this reason, Google has announced the Highly Open Participation Contest to help introduce secondary school and high school students to open source software development.
For the past three years college students have participated in Google Summer of Code (http://code.google.com/soc/) which has introduced hundreds of college students to open source software. The Google Highly Open Participation Contest, however, will be the first contest from Google’s open source team exclusively for secondary school and high school students.
Students can now visit http://code.google.com/opensource to write code and documentation, prepare training materials, conduct user-experience research, and win prizes. Ten grand-prize winners will get the chance to visit the Googleplex in Mountain View, Ca.
Google will work with ten open source organizations (Apache Software Foundation, Drupal, GNOME, Joomla!, MoinMoin, Mono, Moodle, Plone, Python Software Foundation, and SilverStripe CMS) for this pilot effort, each of which will provide a list of tasks to be completed by the student participants. Tasks typically fall into the following categories: code, documentation, research, outreach, quality assurance, training, translation, and user interface.
The contest is open to students aged 13 and older who have not yet begun university studies. Contestants will be able to claim tasks until 12:00 a.m. Pacific Time on January 22, 2008. The grand-prize winners will be announced on February 11.
For more information, visit http://code.google.com
Chris Stephenson
CSTA Executive Director

Department of Education Resources

It is amazing what you can find when you troll the Internet for information on US Department of Education resources. Did you know that the US DOE keeps something called Federal Resources for Educational Excellence? Within that site there are links to useful content for teachers of all subjects (including computing).
The list of computing resources can be found here I recommend the Computing link and also the Cyberethics link for elementary and middle school teachers.
If you are a computing teacher in your district share this page with all of your teachers (no matter what the subject) for the resources that are available to them. You can also talk with your science teachers about collaborating on a project that is highlighted by some of the science and technology links available from the computing page.
Enjoy!
Leigh Ann Sudol
CSTA Communications Chair

IES Practice Guide for Encouraging Girls in Math and Science

This past September the National Center for Education Research released a practice guide with five recommended strategies for encouraging girls in Math and Science. The report is research-based and includes a number of interesting facts from recent educational researchers as well as recommended strategies that can be easily applied in classrooms.
The practice guide states that “To encourage girls in math and science, we need to begin first with their beliefs about their abilities in these areas, second with sparking and maintaining greater interest in these topics, and finally with building associated skills.” (pg. 8) The recommendations put forward by the practice guide are:

  • Teach students that academic abilities are expandable and improvable. This addresses the belief that some students have that knowledge is fixed at birth (the idea that a student does well more because of “smarts” than due to hard work).
  • Provide prescriptive, informational feedback. Feedback that focuses on positive work ethic, good application of strategies, and problem solving techniques vs. just stating that students did a “good job” decreases their belief that knowledge is fixed and also encourages them to have better self-efficacy with regards to the subject.
  • Expose girls and young women to female role models who have succeeded in math and science.
  • Create a classroom environment that sparks initial curiosity and fosters long term interest in math and science. Using project based learning and activities that allow students to frame problems within their own interests can help them understand how math and science (as well as computing skills) can have broad applications.
  • Provide spatial skills training. Research suggests that students do not always have the knowledge about what spatial strategies are available to them in order to solve a problem. In computer science we often draw diagrams to represent concepts or ideas. Making the methods behind the construction of the diagrams and the reasons for the diagrams explicit can help students make better choices about problem solving strategies.

One of the most interesting recommendations to me, and probably the easiest to implement in the classroom is the idea of prescriptive, informational feedback. “Experimental work suggests that feedback given in the form of praise focused on global intelligence (e.g., ‘you are smart’) may have a negative impact on future learning behavior in comparison to praise about effort (e.g., ‘you must have worked hard’).”
I cannot count the number of times I have just said to students, “you are smart enough to do this” or “see, that was easy” rather than acknowledging the effort and work that they put into the project. Comments such as “I believe you can do this, you work hard enough” and “that wasn’t too much work” (as opposed to easy) are now going to become part of my classroom praise for students.
If you get the chance I would highly recommend reading the practice guide. It is written for classroom teachers and does an excellent job of making recommendations you can use in your classes today. Even if you don’t get the chance to read the guide, please share with us what you believe to be the most interesting idea from above or even something you might do in your classroom that aligns with the IES suggestions.
Leigh Ann Sudol
CSTA Communications Committee Chair

Using Technology to Teach Computing

We all know that teaching computing involves instructional activities on the countless and varied aspects of technology. But how do you use technology to teach computing?
I know teachers who record all of their programming technique demonstrations so that students can revisit them as many times as they want. There are teachers who would be lost without the ability to communicate online with students and parents about assignments and class activities through any number of tools. Wikis and forums add depth and inclusion to classroom discussions when all students feel free to participate. The opportunities for teaching computing, or any course for that matter, with technology are endless.
We’d like to hear about and share with CSTA members your experiences in teaching computing with an effective technology tool or strategy. Please share your success stories here.
Pat Phillips
Editor, CSTA Voice

What School Counselors Need to Know About CS

On September 12, 2007 Dr. Debra Richardson, Dean of the Donald Bren School of Information and Computer Sciences at the University of California at Irvine, addressed the University of California High School Counselors and provided the following very valuable information about why computer science is so important.
I want to talk to you this morning about the importance of computer science and information technology education for the next generation.
As you’re all aware, everyone’s life and work are touched by technology. Technological advances impact all disciplines, which requires interdisciplinary collaboration in research imperatives as well as in education. Interdisciplinary education is a real need for students venturing out into today’s global industries.
I’m going to repeat a somewhat controversial quote, but it’s something that is echoing the halls of higher education today: Computing and information “is the liberal arts education of the 21st century – the skill that can be universally applied across domains to help solve the toughest scientific, economic and social problems. Nurturing and energizing the next generation of liberal arts specialists will bring about new dreams and new discoveries.”
It was Dan Reed, Director of the Renaissance Computing Institute who I first heard say this, and it’s just so true. Today’s college graduates simply can’t call themselves properly educated for the 21st century if they don’t have appropriate fluency in computing and information technology.
The Donald Bren School of Information and Computer Sciences prides itself on delivering an interdisciplinary education focused on computing and information technology and how it affects the other disciplines. Our research emphasizes how technological advances improve quality of life and foster economic competitiveness, and this extends to the curriculum we deliver. Today’s global industry has become more dependent on students having a multi-disciplinary skill set, and all of our majors target that mix.
Undergraduate work in CS/IT prepares students for a broad range of careers (such as business consulting, software development, systems analysis and administration, and even teaching) and also to attend professional or graduate school.
Now some of you may be saying, “I can’t send my students to computer science, there are no jobs.” Yet, contrary to the off-shoring hype, the job market in CS/IT is seeing an upward trend. The design and innovation jobs remain here in the U.S. and that’s what we train our students for. In fact, the U.S. Department of Labor projects that five of the ten fastest growing occupations for college graduates are in the CS/IT sector with over 2 million new jobs in the this sector expected by 2014.
The CS/IT discipline appreciates, seeks out and is made stronger by diversity – diversity of experiences and perspectives, and in gender and ethnicity.
As counselors, you are in a unique position to encourage young people to explore their interests and talents for CS/IT study. Send us your high-achieving students, with or without previous exposure to the field, who are driven by analytical challenges, are creative and design-oriented, and enjoy working with others on team-based problem-solving.
As counselors, you are able to help identify curriculum needs and changes at your high schools that will help increase your students’ exposure to and strengthen their skill set with CS and IT concepts.
As counselors, you belong to an important collective of UC partners who are helping tomorrow’s educators, doctors, business professionals, leaders and informed citizens to find the path, setting and method that best fit their interests, aptitudes, educational and career goals.
Debra Richardson

Is Summer Almost Over Already?

The end of summer always sneaks up on us too quickly. It seems that one minute we are enjoying quality times with our family and friends without having to worry about the pile of papers waiting on the dining room table to be graded before going to bed, and the next minute, a certain office supply store starts running a commercial with a man dancing in the isles to Christmas music while his children sadly pick out school supplies.
One of my favorite parts about the summer is meeting new teachers at conferences and workshops and learning something new. I would like to take a moment and share with you some great resources I learned about this summer, and I hope after reading this post you will do the same and perhaps add a comment here (no need to register, sign up or otherwise open yourself to spam – just click comment below – I swear its easy!).
To begin with, CSTA just launched a new resource called the Source web repository. The Source is a searchable database of lessons, activities, and other useful materials for the computing teacher. (yes computing – thats right! Level 1 of the curriculum standards is nicely aligned with the NETS standards so even elementary and middle school computing teachers should be able to find information as more lessons get added!) We are adding new resources daily so check back with this blog to find highlights of new activities from time to time. You can reach the Source web repository either directly at http://csta.villanova.edu or through the link on the left hand side of the main CSTA web page.
Google has also made the Computer Science Unplugged materials available free for download at http://www.google.com/educators/activities.html. I strongly suggest that you check out the main google for educators site as there are a lot of interesting things there for classrooms of all types and ages.
Well, I hope that you found my links useful, now how about one of your own? It could be your personal web page if you have some nifty lessons, it could be a site you visit often for information, or it could just be an activity or an idea that you use in your classrooms that you think others might find useful. Don’t be shy! And thanks in advance for your contributions.
Leigh Ann Sudol
CSTA Publications Chair

Great Resource for AP Computer Science Teachers

Debbie Carter who teaches AP Computer Science at Lancaster Country Day School in Lancaster, PA has put together an excellent resource book for AP Computer Science Teachers. You can get the book at AP Central. I’ve worked with Debbie as a member of the now defunct Microsoft Faculty Advisory Board and presently as a Board Member for the Computer Science Teachers Association.
The book contains information that will help both a beginner teacher and veteran teachers as well. It has five chapters and the first chapter reviews the history of AP Computer Science along with a course description and review of key concepts and skills that must be covered during the school year with our students.
One thing that I liked from the start is that Debbie went out to the AP Computer Science community of teachers and asked them for input on different topics covered in the book. I recognized familiar names that I’ve met in the past at workshops in the book.
Chapter 2 was advice for AP Computer Science Teachers. What is hard for many of us teaching the course is that we are the only teacher in our school teaching the course and it does get lonely when we run into a problem and may need some help. The advice given was very good and I’ve been pretty good at figuring out what I need to teach in the curriculum but what has been tough in the 11 years that I’ve taught the course are the many changes that have been made to the curriculum. I started teaching PASCAL to my students and then C++ and now JAVA. I’ve adapted to these changes and my students have benefited by their successes at learning the material and passing the AP exam with a good score.
Chapter 3 is about course organization. Several sample syllabi are listed for teachers to use in their course. The only problem is that the case study that we need to teach our students has changed and the syllabi don’t reflect that change but any teacher can include that into the syllabus.
Chapter 4 discusses the exam and the format. A teacher really needs to know how students are graded on this exam because it may be different from how they grade their own exams. Exam preparation is the key to student successes and there are many exam review books teachers can use with their students to prepare.
The last chapter has many resources for teachers to use. There are many things teachers can do to help teach the class and one I would strongly recommend is professional development.
There are two appendices at the back of the book that reviews the new case study and have supplemental documents.
If you are a new teacher, I would suggest getting help early in your teaching so you don’t get too frustrated. There are many of us to help!
Good luck!
Brian Scarbeau
CSTA Board of Directors

Keeping Up with Websites

One of the common problems that teachers indicate is a lack of time during the day to keep up with various different web sites and news feeds in order to deal with the constant flow of information. Wouldn’t it be easier if it could all come to one place?
RSS or Real Simple Syndication is a way for you to read various different web sites all in one place. Most email clients and web browsers now support this technology. But even then you are bombarded with information if you sign up for a lot of feeds, and have to open up a separate part of your web browser or email client in order to read the news. If you already use RSS I would strongly encourage you to include the CSTA blog as one of your RSS feeds (see the link over to the right). If you are not an RSS user you can have blog posts delivered to your email through a service called RSSfwd. This service does not require you to register or sign up, simply enter the URL of the site you wish to subscribe to and your email address. You will then recieve an email any time a new blog post is updated.
Although you still need to come to the CSTA blog website in order to post comments, using an RSS feeder or a service that will send you the RSS in your email can help cut down on the number of places you need to visit in order to gather information for your classroom. Please come and comment on issues that matter to you. For this post if you have any other RSS feeds that you read often and find useful as a CS teacher please let us know and post a comment!
Leigh Ann Sudol
Communications Chair