The Computer Science Department at Wellesley offers five introductory computer science courses:

CS110: Computer Science and the Internet
CS111: Computer Programming and Problem Solving
CS112: Computation for the Sciences
CS114: The Socio-Techno Web
CS117: Inventing Mobile Apps

Take a closer look to decide which one is best for you!

CS110 is for students who want a broad exposure to the fundamental concepts of computer science, although it is unlikely that they will take other computer science courses. CS110 uses the Internet as a unifying theme for exploring a broad range of computer science topics, including networks, description languages, programming, data representation, ethics, and the impact of computers on society. Students get hands-on programming experience building Internet applications using HTML, CSS and JavaScript. The course culminates with a final project in which students design and implement interactive web pages.

CS111 is for students who want an in-depth introduction to programming and problem solving and might want to take more advanced computer science courses. It is particularly for students who plan to major or minor in computer science, but also for students that are majoring elsewhere but want to learn general programming and problem solving techniques. CS111 covers fundamental ideas in programming, including abstraction, modularity, recursion, control structures, and data structures. You will get hands-on experience with these ideas by reading, modifyings, debugging, designing, writing, and testing programs written in the Python programming language. Example applications involve graphics, user interfaces, games, text manipulation, and animations.

CS112 is for students who want an introduction to computer programming that provides the tools necessary to use computers effectively in scientific work, including in the natural and physical sciences, biological sciences, medicine, mathematics, psychology and economics. Students learn to write software to solve problems, visualize and analyze data, perform computer simulations, and implement and test computational models that arise in a wide range of scientific disciplines. The course introduces MATLAB, an extensive and widely used technical computing environment with advanced graphics, visualization and analysis tools, and a rich high-level programming language.

CS114 is for students who want an introduction to computer science geared towards the social aspects of computing. As more and more people use the technologies and services made available from Computer Science, online environments like Facebook, Second Life, MySpace, Wikipedia and blogs have been flourishing. But problems existing in our real world transfer and get amplified in the virtual world created by the highly interconnected and ubiquitous computing. We study the structure of the Social Web, and focus on issues of virtual identity, personal and group privacy, trust evaluation and propagation, online security, critical thinking, online propaganda, googlearchy, fraud and manipulation, restricted resources, class differences, self-perception, and decision-making.

CS117 is for students who want to learn how to create apps for mobile devices as a vehicle for learning big ideas of computer science, engineering, and entrepreneurship and explore technology’s impact on society.  Applications include games, quizzes, electronic voting, location-aware apps, social networking, and apps that communicate with web services.  All apps will be created on Android phones using App Inventor, a visual programming environment that does not require previous programming experience.  The course culminates in a project where students design and implement new mobile apps for clients.

Discussions/Labs: CS110, CS114 and CS117 students are required to attend a 70-minute weekly discussion section in addition to two weekly lectures. CS111 and CS112 students are required to attend a 2-hour weekly laboratory section in addition to two weekly lectures. None of these are considered laboratory courses.

Mathematical Modeling Distribution: All of these introductory courses count for one Mathematical Modeling (MM) distribution credit.