Computing for the Socio-Techno Web

CS115/MAS115 -- Spring 2020

This is a course about Web Technologies and the Social Implications of the Web

CS115 is for students who want a broad exposure to the fundamental concepts of computer programming, but also for those that may want to major in Media Arts and Sciences (cross-listed as MAS115). Students get hands-on programming experience building and manipulating web pages using HTML, CSS and JavaScript. Given the almost ubiquitous rearch of web-based platforms (Google, Facebook, Instagram, Amazon, Wikipedia, etc.), and the way they have transformed how we communicate, learn, and experience society, the technical topics are explored alongside the implications of this web-based mediation for society. We study the structure of the socio-techno web, and focus on a variety of cyberspace issues such as quality of online information and pollution of the information ecosystem, personal and group privacy in the context of surveillance capitalism, and networked creativity. No prior knowledge of computing is assumed.

About CS115/MAS115

Learning Goals in this course


  • Computer Programming - Learn basic programming concepts (variables, functions, conditionals, etc.) and apply them to solve simple problems.
  • Information Representation - Understand how to use bits to represent different kinds of information including numbers, text, image and video.
  • Internet and Web Technologies - Understand the underlying structure of how Internet & Web work, and learn HTML, CSS, and Javascript to create web pages.
  • Social Implications of Technology - Discuss and debate how the socio-techno web impacts all aspects of lives of individuals, communities, and society at large.
  • Information Ecosystem - Become a student fact-checker, and strive to preserve a healthy information ecosystem, by contributing your factual knowledge on various social networks and Wikipedia, as well as combating misinformation.
  • Critical Thinking - Engage in a semester-long, thorough investigation of a socio-techno online platform or web technology of your choice and share your findings broadly.

Meet your instructors & tutors

Click here for CS115 drop-in calendar


CS115/MAS115 Spring 2020 tentative schedule


Please note that READINGS are due on the day they appear.
Check this page frequently, as it is subject to change.

Monday

Tuesday

Wednesday

Thursday

Friday

Feb 17

President's Day

Feb 18

MONDAY SCHEDULE

Surveillance Capitalism - Book Discussion

Reading: 1) You are now remotely controlled; 2) Pokemon, Go, Do!

Feb 21

 

Feb 24

No Slides

Read: JS: Booleans & Conditionals
Social Implications: End of Privacy?

Feb 25

Feb 26

Lab 5: Basic Javascript and JS conditionals

Project Milestone 1 is due

Assignment 3 goes out

Feb 27

Slides: The Internet

Social Implications: 1) Net Neutrality

Feb 28

Mar 2

No Slides

Read: JS Logical Operators Social Implications: Meme Genres (book chapter)

Mar 3

Mar 4

Lab 6: JS conditionals

Assignment 3 is due.

Project Milestone 2 goes out

Mar 6

Quiz 1 goes out

Quiz 1 review material

Mar 10

Mar 11

Lab 7: JS Date Object

Project Milestone 2 is due

Assignment 4 goes out

Mar 12

Topic: Information warfare (no slides). Guiding questions.

Read: 1) How much of the Internet is fake?; 2) The making of a YouTube Radical

Mar 13

Quiz 1 is due

Mar 17

Mar 18

Lab 8: Wikipedia Games

Assignment 4 is due

Project Milestone 3 goes out

Mar 19

Read: Web Literacy and Student Fact-checkers (Chapters 1 to 10, inclusive)

Mar 20

Mar 23

Spring Break

Mar 24

Spring Break

Mar 25

Spring Break

Mar 26

Spring Break

Mar 27

Spring Break

Apr 6

Javascript Functions

To read: 1) JS functions
2) More on JS Functions
3) JS Functions on W3Schools

Apr 7

Apr 9

The future of the web: AI or Human
Submit your news stories

Read: 1)An archive of our own
2) AI vs human writers

Apr 10

Apr 20

Patriot's Day

Apr 21

Apr 22

Lab 12: JS Timers and Events

Assignment 5 is due

Apr 24

Apr 28

Ruhlman Conference

Apr 29

TUESDAY SCHEDULE

No lab today

Project Milestone 5 is due

Project Milestone 6 is out

Quiz 2 is out

May 1

May 4

Project Presentations in class (Milestone 6 due)

May 5

May 6

Lab 13: Google Analytics and Cookies

Quiz 2 is due

Project Milestone 7 is out

May 7

Reading Period

May 8

Reading Period

May 11

Exam Period

May 12

Exam Period

May 13

Exam Period

May 14

Exam Period

May 15

Exam Period

Project Milestone 7 is due

Administrative details of CS115/MAS115


Prerequisites None, in terms of prior classes. But what is required is a desire to learn more about the web-mediated world we live in, and enthusiasm to put into practice whhat you learn in the class, to become active technological citizens.

Lectures and Labs Each week there are two 75-minute lectures that will introduce the main content of the course, and provide opportunities for group discussions. Weekly there is also one 75-minute lab meeting (doesn't fulfill the College's lab requirement) with exercises to reinforce the lecture material and to develop general programming, testing and debugging skills.

Lectures are held on Mondays and Thursdays: at:


Labs are held on Wednesdays at:


In labs, you will be working either with a partner, or individually. In general, be aware that labs contain more tasks than can reasonably be done in the available class time. At the end of the day of your lab, each student is required to submit whatever lab work they have worked on until then. These submissions will be part of the student's participation grade (see "Grading Policy" further down.)

Course Group You will be automatically added to a CS115-MAS115 Google group. This group has several purposes. We will use it to make class announcements, such as corrections to assignments and clarifications of material discussed in class. We encourage you to post questions or comments that are of interest to students in the course. Please do not post significant amounts of assignment-related JavaScript code (i.e. more than one or two lines of code) in your messages on the group! The instructors and TAs will read messages posted in the group on a regular basis and post answers to questions found there. If you know the answer to a classmate's question, feel free to post a reply yourself. The course group is also a good place to find people to join a study group. You should plan on reading group messages on a regular basis.

Reading Material and Class Discussions This course, due to its broad and very contemporary scope, does not have a single required textbook. Instead, we will read chapters from several books, research papers, and general and technical media articles. These materials will be linked from the schedule, under the date the reading is due.
In addition to external readings, we have lecture notes on HTML, CSS, Javascript and other computing concepts developed by Wellesley CS Faculty in the past years. Often, we will also post lecture slides after the lecture.
We expect that you will study the reading material assigned for each lecture before you come to class. This is important since that way we can gear the classroom discussion towards the issues that you need to understand better. Furthermore, the success of the in-class group discussions about the social implications of the socio-techno web relies heavily on you having read the provided information ahead of class.

Assignments: Starting from the second week of the course, there will be weekly assignments that have two goals: a) to provide opportunities to practice your developing programming skills; b) to learn new skills that will be useful for the semester-long project. Assignments will appear as links on the schedule, one week before the due date. You will submit the assignments by uploading them on your own CS web server account, using the file transfer application, Fetch.

Late Assignment Policy: For any and all assignments, you could use a 48 hour extension, no questions asked. However, if those two extra days are not sufficient for you to complete the assignment, you are required to contact the instructor and discuss a plan for completing the assignment. We will work together to make sure that plan is a reasonable and effective so that it supports both your learning and your health.

If solutions to an assignment are distributed before you have turned yours in, you are bound by the Wellesley Honor Code not to examine them.

Semester Long Project: This course does not have exams. Instead, as part of a team of three students, you will work on a semester-long project that will help you develop all skills you will be learning in the class: programming (by creating a website for the content you will generate); critical thinking (by investigating the economical motives and technical decisions of sociotechnical platfoorms); and spreading of information via social netwoorks (by devising your own strategy to promote your project website). Details about the project will be posted at the end of week three.

Programming Quizzes: During the semester there will two timed quizzes, to take on your own time and place, to assess your conceptual understanding of programming concepts. The quizzes will happen on weeks on which there is not a programming assignment due. If you need accommodations, please let us know (also, read the final section of this page). Quizzes are your own individual work, and you are bounded by the Wellesley Honor Code to submit only your own work.

Assessment Policy Your final grade for the course will be computed as a weighted average of several components. The relative weight of each component is shown below:


Wellesley College has changed its grading policy and doesn't require anymore that 100 and 200 level courses have a B+ average. You can read about the decision in this page. As a result, there is no limitation on how many As, Bs and so on students can earn in the class (this was the case before as well, but students perceived it otherwise.)
Students in their first semester of their first year will automatically receive a pass/fail grade in their transcript, as described in the shadow grading policy. However, you will be able to see the grade letter you earned in Workday.


Attendance Policy

We expect that you will make a reasonable effort to attend every lecture and lab. There is a class participation component of the grade (10%), which can be earned through consistently coming to class prepared (by doing the reading), and participating in the class discussions and other class activities. If you are unwell or have an important reason to miss class, please try to notify instructors via email that you are going to miss class.

How to succeed in this course:


Workload and Time Management

Wellesley College legislation, Article VI, Section 1 (see page 9) specifies the following about workload in a one-credit course:

Instructors are expected to assign work in such a way that the workload for a one unit course, including class meetings, examinations, appointments with faculty and office hour attendance, meeting with working groups, tutors and in Supplemental Instruction, field work and site visits, online activities, reading, completing assignments, preparing for class, and all other course requirements shall be at least 12 hours per week for the 15 weeks of the semester, including reading period and final examinations.

CS 115 meets 3 times x 75 minutes = 225 minutes weekly (3 hours, 45 minutes). This leaves 8 hours and 15 minutes for learning outside the classrooom. We recommend that you spend weekly 2-2.5 hours on readings, 4-5 hours on the various assignments, and 30-45 minutes to meet with instructors or TAs.

Collaboration Policy

Here is overview on our collaboration policy, and it is followed by a more detailed explanation below:

Collaboration on Assignments

We believe that collaboration fosters a healthy and enjoyable educational environment. For this reason, we encourage you to talk with other students about the course material and to form study groups. Programming assignments in this course can be challenging. Also teamwork is the norm in the CS industry. Given the above, some of the assignment work is required to be done with a partner, while some is required to be done individually. In each assignment tasks will be clearly marked as either "individual" or "pair-programming". The two team members must work closely together on the pair-programming tasks, and turn in a single hard copy of work they did together. Pair-programming tasks are subject to the following ground rules: In general, teams are allowed to discuss assignment tasks with other teams and exchange ideas about how to solve them. However, there is a thin line between collaboration and plagiarizing the work of others.

Each team or individual student must compose their own solution to each task

Discussing strategies and approaches with classmates and receiving general debugging advice from them is acceptable and encouraged. However you (and your partner) are required to write and debug all of your code. Furthermore, you should never look at another student's code. For example, it is OK to borrow code from the textbook, from materials discussed in class, and from other sources as long as you give proper credit. However, the following is unacceptable and constitutes a violation of the Honor Code: (1) to write a program together with someone not part of your team and turn in two copies of the same program, (2) to copy code written by your classmates, (3) to read another student's or team's code or (4) to view assignments, exams and solutions from previous terms of the course. In keeping with the standards of the scientific community, you must give credit where credit is due. If you make use of an idea that was developed by (or jointly with) others, please reference them appropriately in your work. It is unacceptable for students to work together but not to acknowledge each other in their write-ups.

Accessibiity and Disability Resources

We want all students in our course to succeed. We will work with you to make that happen. If you have a disability or condition, either long-term or temporary, and need academic adjustments in this course, please contact Accessibility and Disability Resources (ADR) to discuss the nature of needed accomodations, and involve the instructors in the conversation. You should request accommodations as early as possible in the semester, or before the semester begins, since some situations can require significant time for review and accommodation design. If you need immediate accommodations, please arrange to meet with your instructors as soon as possible. If you are unsure but suspect you may have an undocumented need for accommodations, you are encouraged to contact ADR. They can provide assistance including screening and referral for assessments. ADR services can be reached at accessibility@wellesley.edu, at 781-283-2434, by scheduling an appointment online at their website, or by visiting their offices on the 3rd floor of Clapp Library, rooms 316 and 315.