intro to programming 07-08
Course Information
     
prerequisites   Students must have attained sophomore standing. No prior programming experience is required.
text   Online texts, tutorials and other resources will be used.
description   Provides an introduction to computer science through a variety of programming styles. First we will use Alice which provides a 3D graphical programming environment where the students will be able to use a graphical interface to create programs. This will be very different from traditional programming languages in that students will be able to easily use programming constructs like conditions, loops and functions without having to memorize an involved syntax. Halfway through the semester, students will move to a more text based programming environment to experience a more traditional programming environment.
lab & software   There will be substantial amount of lab time during class. However, students may need to be able to write software code on their home computer. Students will need to do reading, worksheets and preparatory work at home. We will initially be using Alice in class. Alice was developed by Carnegie Mellon and is available for both Mac and Windows platforms and is free to use. Download at http://www.alice.org/downloads/authoringtool/
grading  
  description total
Quizzes All quizzes apply to final grade. Quizzes will be online and feedback will be immediate. Several quizzes will offer retakes with the most recent score counting towards the grade. Almost every week there will be a quiz. [10-40 Pts Each] 150
Lab Practical This is a test where the student must follow instructions to complete a task using techniques previously learned. [10-40 Pts Each] 150
Notes There will be periodic notebook checks and a final notebook turn-in. 100
Assignments & Worksheets Focusing on a particular technique. Many of these during the semester. Point values will vary for each assignment. 300
Presentation A 3-5 minute group presentation on a computer industry related topic will be given. 100
Class Time Utilization These points are given at the beginning of the semester and may disappear during the semester if class time is not effectively used. 100
Projects Projects tie together several concepts that have been covered in class. There will be several individual projects. 100
other info
missing class It is the student's responsibility to keep abreast of the class via the online web site.
late assignments
  • Not accepted without prior instructor notification via email.
late projects
  • Not accepted without prior instructor notification via email.
grade disputes Students must keep abreast of their grade online. Students' must check for comments on graded assignments through the online feedback system.
plagiarism Copying of any amount of program source code is considered plagiarism unless specifically allowed for a particular assignment.
Miscellany  
  • Refer to the course web site for upcoming assignments.
  • Contact the instructor (email: blindemann@bcp.org), if you have any concerns about the course or your (son's) grade.
  • Need additional help? Students are encouraged to post a question on the Help Forum to be introduced during the 3rd week of class.
 
Course Outcomes
Open to Growth and leadership   Students will grow in their comfort in and knowledge about computer science and programming techniques. Students will understand the rapidly changing nature of computer science and will learn the importance of continual growth and adaptation to these changes. Students will be able to lead a short seminar on a computer science topic.

Intellectually engaged   The Intro to Programming student will be able to:

  • Understand the fundamental concepts of computer science.
  • Solve problems through application of the software engineering process.
  • Develop algorithms to solve problems.
  • Implement algorithms using programming constructs.
  • Gain familiarity with the development process.
Religious and committed to Doing Justice   Students will explore the moral and ethical ramifications of computer technology. Students will learn how to utilize their programming skills in service for others. In particular, students will learn about the Open Source Software movement and how Open Source Software can support those who would otherwise not be able to afford software. Students will understand how computer technology can further the cause of justice on local and international levels. Students will understand the work of groups like the Electronic Frontiers Foundation and Computer Scientists for Social Responsibility in protecting the rights of computer users everywhere.