Welcome to Computer Science A and Principles!

The process of preparing programs for a digital computer is especially attractive, not only because it can be economically and scientifically rewarding, but also because it can be an aesthetic experience much like composing poetry or music.
—Donald Knuth
Preface to Volume 1 of The Art of Computer Programming

Abstract Base Syllabuses


The names of two AP computer science courses designed by the College Board are AP Computer Science A and AP Computer Science Principles. What these course names lack in descriptiveness is made up for by page after page of detailed information found in two corresponding documents published by the College Board, which are referenced as of this writing by the following URLs:
I encourage you to familiarize yourself with the document(s) that pertain to or interest you.

Concrete Preliminaries


Programming Languages

The College Board requires that AP Computer Science A be taught using the Java programming language. The College Board does not specify a particular programming language for AP Computer Science Principles but does insist that instructors select a programming language. I have selected JavaScript as the primary programming language for AP Computer Science Principles at Valley Catholic High School this year.

Textbooks

The College Board requires that AP Computer Science courses be taught using a designated text book.

The text we'll be using for AP Computer Science A is:
Barron's AP Computer Science A, 7th Edition
by Roselyn Teukolsky, M.S., published by Barron's.
  • ISBN-13: 978-1438005942 (paperback)
  • ASBN: B015EP90J2 (Kindle)
  • Available from Amazon and other booksellers.
For AP Computer Science Principles, we'll be using:
JavaScript: The Definitive Guide, 6th Edition
by David Flanagan, published by O'Reilly.
  • ISBN-13: 978-0596805524 (paperback)
  • ASBN: B004XQX4K0 (Kindle)
  • Available from Amazon and other booksellers.
Lend Me Your Ears

The internet is phenomenal. Although it's full of traps and time-wasters, it's also an endless source of useful information and entertainment, the latter being something we all need from time to time. The trick is figuring out how to make good use of what's out there. Something I'd like to make good use of this year is select content that is available on YouTube. Therefore, please have a pair of earphones or “buds” that may be used when we are working independently in the classroom.

Rules

I like to keep things simple: Let's try to imagine what it's like to be in other people's shoes. Let's try not to treat others in ways we would not want to be treated. And let's try not to damage things. If you can handle it, try to think like a child while acting like an adult.

Academic Integrity

What is original? It's a question that's not easy to answer. Novelty is celebrated. But more often than not, what we think is a new or original idea turns out to be the same idea that someone else had a long time ago. (See Ecclesiastes 1:9.) Programming is a craft that encourages us to take something that someone else created, such as a library routine, and reuse it. When we reuse someone else's work or build upon it, we shouldn't pretend that what we are creating is entirely of our own doing, especially when we know darn well that we are using ideas that came from somewhere outside of ourselves. We must do our best to acknowledge where our ideas have come from, especially when it's not obvious. And of course, we must not steal ideas from others when we have been explicitly told not to do so, such as during those dreadful quizzes and exams.

Contact Me

If you have any questions, concerns, suggestions, or especially good-luck wishes that you would like to direct at me via any legal form of communication (a ballistic message is a counter-example), please do not hesitate to contact me at any time, preferably before the dialogue becomes litigious. Unless you're certain I remember your name (careful what you believe), a good way to initiate a conversation with me if you see me is to say “Hi Mr. Spurgeon, it's me, so-and-so.” An email message always works great too. If you know my cell phone number, calling me might be hit or miss. I hate carrying a cell phone around and I don't check my voice mail very frequently.

I look forward to hearing from and getting to know you!

Sincerely,

John Spurgeon
5 September 2016
jspurgeon@valleycatholic.org


About “Mr.” Spurgeon

John Spurgeon was born and raised in Indiana. He attended Purdue University from whence he graduated, in 1996, with a bachelor of science degree with a focus on computer science. John worked at Intel Corporation for twenty years before joining the faculty and staff at Valley Catholic High School to teach AP computer science courses. In addition to his passion for programming, John is interested in hobby farming and epic athletic adventures including marathons, Ironman triathlons, Race Across America, etc. John's son, David, graduated from VCHS in 2016.