June 6,September 14 2006
Karen NorthMark Stehlik
Teaching Professor and Assistant Dean,
School of Computer Science,
Texas Computer Education Association, VP and Past-President TACS-SIG -
Technology Application / Computer Science Special Interest GroupCarnegie Mellon University
Westside High School, Houston ISD - Master Technology Teacher
CIS, mathematics, business and technology education certificationformer Chief Reader, AP Computer Science
I am delighted to have the opportunity to address this honorable Board on a matter of such importance. As a dean and faculty member at Carnegie Mellon University, one of the country’s leading Computer Science programs, and as someone who has worked closely with AP Computer Science teachers from across the country (many from Texas), I applaud your consideration of this petition.
I am asking you to consider computer science for inclusion in both science and mathematics because I believe that computer science strongly exhibits facets of both disciplines. At the outset, though, I would caution against mistaking computer science for its most successful artifacts: application programs such as word processors and spreadsheets, or web-page development. This would be similar to suggesting that biology is nothing more than using a microscope, or that astronomy is nothing more than gazing through a telescope, or that mathematics, in this day and age, is nothing more than using a calculator. But we know this is not true. And while there are many useful information-processing courses dealing with spreadsheets and web pages, they are not the core of computer science. Neither the Advanced Placement Computer Science curriculum, nor any course that we teach at Carnegie Mellon, focuses on computing at this level.
Biology is the study of life-processes; Physics is about matter, energy, and their interaction; Mathematics is about representing a problem in some formal notation (equations) and then solving those problems. Similarly, Computer Science is, to quote Herb Simon, Nobel Laureate and founder of the Computer Science discipline of Artificial Intelligence, “the study of the phenomena surrounding computers”. But what does that mean, precisely? At the hardware level, this is an engineering pursuit – how do we make machines faster, smaller, more reliable, generate less heat? At the software level, this is, purely, a scientific pursuit. At its core, computer science is about representing a problem in a manner that a machine can understand, and then generating algorithms that manipulate those representations. But algorithmic thinking need not be limited to just that which can be programmed. To afford a simple example, let’s examine a common searching problem. Suppose that you need to find Mike Scott’s phone number in the Austin phone book. How would you proceed to look for it? You could start at the front and examine each name to see if it’s Mike’s. But I doubt that’s what you’d do. Since you know that the phone book is alphabetical, my bet is that you’d start in the middle, or maybe even past the middle (since Mike’s last name begins with S), and would successively narrow your search until you found his entry. That’s binary search and that’s computational thinking – and that’s computer science!
Computer science is not the first discipline to make use of algorithms – the Sieve of Eratosthenes for finding prime numbers dates back to 200 B.C. But computer science takes algorithms – precise specifications for how to compute something – to a much higher level. In doing so, it draws heavily on mathematics to make statements about the behavior and performance of those algorithms. In particular, it utilizes a branch of mathematics not normally taught at the secondary level – discrete mathematics. This is a tremendous opportunity – to allow a wholly separate branch of mathematics (which includes logic, combinatorics, and graph theory) into the secondary school curriculum using computer science as the vehicle for its reinforcement. This builds on areas of mathematics already taught in your curriculum, like algebra. To return to the phone book example, we could analyze why the algorithm that we used is demonstrably better than starting from the beginning and looking at every name. That’s discrete math – and that’s part of computer science!
Turning to the science part of the proposition, I would claim that computer science is very experimental. As we all know, software has bugs. And the means of ferreting out those bugs, debugging one’s program, is as close to the scientific method as you’re likely to see in any chemistry lab. The seasoned computer science student understands that debugging is absolutely experimental in nature – you formulate a hypothesis as to why the output is unexpected, you design an experiment to isolate where you believe the error is located, you observe the results (how has the output changed), and you analyze those observations to help formulate a new hypothesis. That’s experimental science and it’s done every time, and many times, that a student writes a program (dozens of little experiments) – and that’s computer science!
Computing and computer science inform the natural sciences and other disciplines in an important way as well. At Carnegie Mellon, all majors except those in Fine Arts are required to take at least one computer science course. Computer science principles are a basic part of many scientific endeavors, from the Human Genome project (algorithms for matching patterns of characters) to the discovery of UB313, the new planet beyond Pluto (algorithms to analyze digital images of the heavens). At Carnegie Mellon we have a major in Computational Biology that fuses these two scientific disciplines, as well as minors in Computational Physics and Computational Chemistry. In point of fact, I have a Chemistry Ph.D. student in my Computer Science II class this semester because, as she put it, “when I look at Chemistry papers, and see differing results, it’s because the algorithms were slightly different and I need to understand those algorithms”.
At this point you may be wondering why a professor from Pittsburgh decided to fly to Austin to address this honorable Board. To be blunt, I would like to see more high school students view computer science in precisely the way that I and my colleagues do. Others have testified to both the demand for computer and information-related workers and the current lack of majors. I, and others, firmly believe this is due to the “commoditization of computing” – viewing computers as household appliances and the technology that surrounds them as of no more interest than how it helps balance a checkbook, or talk with friends on Instant Messenger. Yet this is going to cost this country dearly if it continues. It is clear that computing technology will drive the U.S. economy forward in the 21st century. For each of the last two years, Bill Gates has toured various college campuses arguing this very point and trying to recruit students to study computer science. But college is too late!
The fundamental question before us is, should our children exposed to the scientific discipline of computer science in high school? My department head, Dr. Jeannette Wing, has written a position paper (included with my testimony) on “Computational Thinking” in which she outlines algorithmic thinking as a fundamental skill that is as necessary to all students today as reading, writing, and arithmetic. I hope this honorable Board chooses to agree with her because, if it does, it will take a position of educational leadership that can positively impact not only its own students, but other state boards of education as well. I am here because I believe this is an opportunity for Texas to do something that’s transformational to my discipline at the high school level and that could lead to similar transformations across the country. And, even though I’m from Pennsylvania, I’d like to be able to say that it all started in Texas.
Thank you for the opportunity you have afforded me to speak today.
Dear Honorable State Board,
A great inequity exists in computer science education for the children of Texas. To close that gap, the computer science teachers of Texas are proposing that the science of algebraic computation be counted as one of the 4th year graduation requirements for math and science. I present ideas from the CS teachers of Texas and the nation along with the CSTA report on the state of Computer Science education, “The New Educational Imperative: Improving High School CS Education.” This explains why CS is a rigorous science and math course.
The online dictionary Wikipedia defines CS as “the study of the theoretical foundations of information and computation and their implementation and application in computer systems.” It is a computing science and the tool used for studying CS is a computer. TEA decided to place CS in the Technology Applications area when the TEKS were developed in 1997. I served on this committee, which wrote the CS TEKS with no funding and only online meetings, modeling digital age problem solving. Prior to this the course was taught as computer math. Some districts place computer science in the science department and a few in the humanities area because it is a language.
SBEC understood that computer science is not a computer application course when they approved an ExCET test for the certification of computer science teachers. Texas can continue to lead the nation in the advancement of the science of computation by giving our students the opportunity to choose CS as their 4th year rigorous math or science course. The complexity of computer science as a multi-disciplinary area relies on your expertise and your trust in the CS teachers of Texas who know this is a rigorous, science, math and technology course. Microsoft’s K-12 CS education leader, Albert Thompson said, “If Texas does the right thing here, it could have national implications.”
I have been teaching computer science concepts for 20 years, first as Computer Math and now in algebra and multimedia. As a Houston A+ Challenge TAR fellow, I have researched the use of programming to teach algebra and documented its effectiveness. CS teaches ways of thinking – algorithms, symbolic reasoning, and logic. CS is a mathematics course that involves learning about data structures:
Structures => Cartesian Product;
Selectors of Structures => Projection onto the Nth Coordinate;
Data Definitions involving Parts => Disjoint Set Union;
Data Definitions involving Self-reference => Recursion;
Booleans => Mathematical Logic.
“The Hidden Language of Computer Hardware and Software” by C. Petzold, demonstrates how gates can be used to model Boolean logic and how Boolean logic can be used to model arithmetic. CS involves learning, via experimentation, the limitations of machines in terms of the representation of numbers such a sqrt(2) and that not all algorithms are created equal in terms of running time. Also, knowing how to program gives a student the ability to write a program that could be used in any of the other sciences and math.
We are in the high-tech world. Our students need a course to apply math, science and language concepts on a computer. Science uses math, math uses scientific principles, and computer science uses both. Parts of algebra, geometry and calculus are taught in most science classes. Science and math are valued parts of a liberal arts education because of mental skills they impart to a student: thinking precisely, logical problem solving, breaking a problem down into smaller, solvable sub-problems, the habit of creating testable hypothesis to understand new phenomenon.
CS will enhance college and workplace readiness, the goal of the new legislation. TEA has included multiple year choices for CS: Honors Computer Science (PEIMS 03580200); AP CS I (PEIMS A3580100) and AP CS 2 (PEIMS A3580200). Students could elect to take both pre-calculus and computer science or computer science and engineering, allowing time for a rigorous integrated curriculum. If CS is not added, this will greatly impact CS education in Texas. There is not enough room in a student’s schedule to take a 3 year track and two more math/science courses. Those schools that already have CS programs in place will die; it is not cost effective to spend money on new programs. This is the only technology application course that has not only one, but 2 Advanced Placement tests. Sarah Winkler, TASB director, past president Gulf Coast Association of School Boards, and the president of the Alief board said:
Designating computer science as a math or science course will provide another option for school districts and students as we try to meet this new HB1 goal. Knowledge of computers and programming is important in today’s society and many of our students take these courses. If computer science courses are not included in the required curriculum Computer Science and other “electives” will no longer fit into their schedules. In addition, my district (Alief ISD) is very concerned that the new requirement will exacerbate the existing shortage of qualified math and science teachers. Including computer science under this umbrella will help alleviate this concern.
A goal with this new legislation is to develop rigorous original thinkers; our students need to think through the process and learn to analyze and see patterns, programming helps this process. Not everyone is going to compose original music, but many are going to creatively arrange existing ideas. Not everyone will become a computer scientist, but everyone must communicate with and through a computer. President of A&M, Dr. Gates said that America’s economic future depends on scientific research and technological innovation. We need more computer scientist graduates to make that future possible. To get students to major in CS requires the opportunity to be introduced to this area of study in high school. Computing is the cornerstone of the central process of applied mathematics, science and engineering.
Thank you for your consideration.