Greetings from term-world! Right now, it's a bit...em...barren. But! I promise that it once teemed with digital life and, uh, that's where you come in. Together, we'll restore term-world to tbe bustling metropolis it was meant to be! (Which, of course it totally was at one time; it's not like I'm using you for free labor or anything like that—you're just, like, not paid.)
This resource contains the rules that we need to agree to in order to make that happen, so have a read. (It's actually really important.)
"The best way to predict the future is to invent it."
— Alan Kay
| Day(s) of Week | Time | Purpose | Location |
|---|---|---|---|
| Monday, Wednesday, Friday | 10:00 - 10:50 | Work time | Alden 101 |
| Friday | 14:30 - 16:30 | Work time | Alden 101 |
A lot of our time will be dedicated to building! In fact, nearly all of it appears to be allocated that way. That this is true doesn't mean that course sessions are meant to be skipped. Each of these meetings will feature significant support either via community Technical Leaders, the Mayor themself, or your fellow neighborhood members.
Many folks often find that time dedicated to completing this work during the week offers the right mix of help and fellowship that make the labor palatable. (Plus, the Mayor doesn't like to be lonely.)
- Mayor: Douglas Luman
- Email: [email protected]
- Telephone:
+1 814 332 2136 - Office: Alden Hall, 105
| Day(s) of Week | Time |
|---|---|
| In-office | |
| Monday | TODO |
| Tuesday | TODO |
| Wednesday | TODO |
| Thursday | TODO |
| Friday | TODO |
term-world Alive! (streamed on Discord) |
|
| Sunday | 15:00 - 17:00 |
To book time during any of the above spots, please visit my office hours appointment calendar.
For our term-world Alive! sessions, head to our Discord at 15:00 for a two-hour stream of the Mayor completing some of the work that you've been assigned and answering questions from those assembled. Think of this as a walkthrough for the most basic aspects of a given assignment.
Your attendance at these sessions is not mandatory.
An introduction to the principles of computer science with an emphasis on creative expression through the medium of a programming language. Participating in hands-on activities that often require teamwork, students learn the computational structures needed to solve problems and produce artifacts such as interactive games and computer-mediated art and music. Students also learn how to organize and document a program's source code so that it effectively communicates with the intended users and maintainers. Additionally, the introduction includes an overview of the discipline of computer science and computational thinking. During a weekly laboratory session students use state-of-the-art technology to complete projects, reporting on their results through both written reports and oral presentations.
- Prerequisite knowledge: Elementary algebra
- Distribution requirements:
ME,SP
Some interpretations of the subject treat "computer science" as a kind of sacrosanct technical knowledge. And that is somewhat true: to some, it serves as a characterization of how skills learned as part of how the discipline is exercised in service of implementing or achieving a technical goal. There are certainly technical constructs that programmers have to obey and rules that, while somewhat pliable, are relatively inflexible. Undoubtedly, you'll encounter frustration in this course with conventions arising from technical agreements which may seem arbitrary.
The above description of the discipline does it little service and neglects to contemplate the kinds of procrustean, dictatorial constructs that those with the ability to create systems (i.e. ability to "code") can force socities to struggle under. Rather than letting technical requirements impose themselves on you, this course is meant to impart the skills to ask productive questions about how and why we might structure a world a particular way. In some cases—as we'll see later in the course—these questions provide more than just an intellectual exercise: there are troubling real-world implications of the ways that computer science has been and will be used both in- and outside this classroom. From data breaches to threats to identity, we've all experienced these forces and the toll they take on our lives.
By the end of the course, our hope is that this awareness and (hopefully) the desire to build a better world emerge. Learning the literacy of computer code gives you a valuable power. It's our goal to figure out how to use it wisely in the larger world. What better way than to build one?
There are no textbooks for this course. Any texts or articles used will be available online or distributed by the Mayor. (Oh, how nice the Mayor is.)
This course relies on the GitHub, Discord, YouTube, and term-world platforms. Your work will be assigned and evaluated using these platforms and official course communication will take place through them. You are expected to sign up for accounts and remain active on these platforms throughout the semester.
These platforms are for our use only. To use them, you'll need to register and be logged into accounts associated with your Allegheny College email.
Before each week begins, I will assign a group of short, topic-focused videos to review. These videos will normally contain activities that you complete in parallel with or after watching material. Video content is meant to support, but not substitute for, topics discussed and exercised that week. I will provide links to participate in or to access activities or supplmentary material via both our course calendar and Discord.
By the end of this course, you will be able to:
- Develop and realize moderately complex ideas and their effects beyond merely the digitial world
- Understand the basic language-independent principles of "object-oriented programming" (OOP)
- Express basic fluency in the Python programming language
- Exercise an intermediate grasp of industry-standard tools used to build software (e.g GitHub, IDEs)
- Learn to adapt to the important, but often accidental, aspects of writing code
- Demonstrate the ability to communicate, plan, and collaborate as an integral part of the creative and civic process
This course's evaluation, participation and, eventually, grades, are governed by the Course Contract.
This, however, does not abrogate the role of this syllabus document. Provisions here work together with the contract. You should consider the information provided here the basic "givens" of the course.
All course assignments are assigned and evaluated using the GitHub platform. I will only assess work correctly deposited there. While we use the term-world environment for doing the work, the final versions must be on GitHub. Though the previous set of statements implies the following, I state it explicitly here to avoid misunderstanding:
I will not grade work left on the
term-worldserver.
In fact, I can't. This means that all the work that you complete below must be submitted to GitHub by the due date and time. For more information on how this affects course standing, see the Course Contract.
Each Friday, you will be assigned a series of videos that correspond with various short, guided projects to complete for our Monday class session. This Monday session is dedicated to questions and a brief walk-through of the project, pointing out key aspects that will become important for your work on Weekly Projects (see below).
The Workbook is assessed on a completion basis, meaning that you are expected to complete each short project.
At the start of a given week, a larger week-long project will be assigned to you and/or your neighborhood. These constitute the bulk of the work of the course, and are governed by provisions in the Course Contract.
These assignments will ask you to report on your work for the week in a structured format that may require some reflective thinking. These writing assignments arrive bundled with and are specific to a given Weekly Project.
This project offers students the opportunity to develop a realized version of an reasonably complex student-created project. Completion of this project will require use of the knowledge accumulated throughout the semester. Details for this project will be given out at the approximate mid-point of the semester. This task will require planning, careful evaluation, and implementation of a wide variety of concepts, and will allow students to choose and implement a project of their chosen discipline/application and approaches/methods. This project will be subject to approval by the Mayor through a process including a formal proposal, interim updates, and technical reports.
I expect students to arrive to class prepared. Here, "prepared" means having completed reading assignments, compiled questions, and being ready to engage thoughtfully with course material. In order to assist students' preparedness efforts, I will provide a schedule with assignments and will accompany all videos with a copy of any slides used in class proceedings or recorded media.
Allegheny College also expects students and faculty to act according to its Statement of Community:
Allegheny students and employees are committed to creating an inclusive, respectful and safe residential learning community that will actively confront and challenge racism, sexism, heterosexism, religious bigotry, and other forms of harassment and discrimination. We encourage individual growth by promoting a free exchange of ideas in a setting that values diversity, trust and equality. So that the right of all to participate in a shared learning experience is upheld, Allegheny affirms its commitment to the principles of freedom of speech and inquiry, while at the same time fostering responsibility and accountability in the exercise of these freedoms. This statement does not replace existing personnel policies and codes of conduct.
Keep both of these standards in mind as you exercise your academic inquiry in this course. These serve as our fundamental "first principles" in pursuit of our shared academic goals.
All students and faculty at Allegheny College are bound by the Honor Code. Everyone expects that your behavior reflects this commitment. Given the eminently shareable and reproducible nature of code, the Department of Computer Science adds the following statement to the general college policy:
It is recognized that an important part of the learning process in any course, and particularly in computer science, derives from thoughtful discussions with teachers, student assistants, and fellow students. Such dialogue is encouraged. However, it is necessary to distinguish carefully between the student who discusses the principles underlying a problem with others, and the student who produces assignments that are identical to, or merely variations on, someone else’s work. It will therefore be understood that all assignments submitted to faculty of the Department of Computer Science are to be the original work of the student submitting the assignment, and should be signed in accordance with the provisions of the Honor Code. Appropriate action will be taken when assignments give evidence that they were derived from the work of others.
As the nature of "plagiarism" and constituents of "fair use" change often, the department encourages you to periodically review the specific tenets of the general college Honor Code provided in the latest course catalog and in the Compass.
The above statement, of course, also applies to online forums such as Stack Overflow, et al.
The discipline of computer science, like many others, encourages its members to act according to discipline-specific ethics. I encourage you to take time to review the Association for Computing Machinery (ACM) Code of Ethics.
Students who struggle to understand knowledge and skills defined in this course are encouraged to seek assistance from the Mayor and teaching assistants. To meet with me, consult my available office hours (above) and make an appointment.
Historically, students who are successful in my courses visit and discuss course concepts with the Mayor and Technical Leaders early and often. See above for my office hours or go to this schedule for Technical Leaders' office hours.
If you find yourself in difficult circumstances which affect your ability to participate in or complete course work, let me know immediately. Full stop.
Do not wait until the end of the semester.
Part of my job as the Mayor of term-world is to make sure that students receive the assistance they need. Do not hesitate to let me know if there is anything I can do with respect to your ability to handle your work. This is especially true of our current circumstances. Again, let me remind you -- it is part of my job to help you access Allegheny College resources that will enable your safety and success.
In many situations, the following list of resources may help:
- The Maytum Learning Commons
- Allegheny College Counseling Center
- The Winslow Health Center
- Student Life
Students with disabilities who need accommodations in this course are encouraged to contact Disability Services at +1 814-334-2898. Disability Services is part of the Learning Commons, located in Pelletier Library. Should you need accommodations, contact this office as soon as possible to ensure that approved accommodations are communicated and implemented as quickly as possible. This serves both you and me in providing the best environment for learning and support.
