Interested in Computer Science? Ready to explore the discipline?
The computer science department at Austin College is designed to meet of a wide-range of students from those that have no experience programming (but need a Quantitative credit to graduate) to those who have gotten a 5 on the computer science AP test. However, it can be hard to figure out which class to take. Below we offer advice for students that just need one class and those that are thinking about majoring/minoring. If you want to talk before signing up, feel free to shoot us an email (Michael Higgs or Aaron Block) or just stop by either of our offices (IDEA Center 111 and 109).
Just one class
For students who have little to no exposure to computer science, but would like to take one class in computer science (perhaps to fulfill the Quantitative Competency requirement), we recommend that you take either cs110 — Introduction to Computer Science and Object Oriented Programming (Fall) or cs111 — Computer Science for Scientists (Spring). Both classes will teach you the basics of computer science as well as how to write simple programs. There are a few differences between these classes:
- In cs110, you will learn the Java programming language, while in cs111 you will learn the Python programming language. Java is a better language for writing large programs (e.g., Minecraft); however, it is more complicated to learn than Python. Python, on the other hand, is great for writing small programs (e.g., extract and process data from a file); however, it is cumbersome for writing large programs.
- In cs111, you will learn techniques for helping you solve scientific problems (both natural and social). In this class, the labs directly relate to problems in biology, physics, astronomy, immunology, health, chemistry, psychology, political science, and environmental study.
- In cs110, you will learn techniques for designing graphical user interfaces, as well as some very simple games. The labs in cs110 are not focused on scientific problems and tend cover a range of topics.
If you are interested in computer-human interface, design, or making video games, then we recommend you take cs110. The skills you learn in this class will help lay a strong foundation for your computer science future.
If you are planning to major in a scientific discipline (either a natural science or a social science), then we highly recommend you take cs111. The content in this class should help you in your major classes.
If you fall in love with computer science, then either cs110 or cs111 can be used to satisfy degree requirements for majoring/minoring in computer science.
One final note, for students that plan on taking just one computer science or mathematics class, we recommend you take either cs110 or cs111 instead of cs201 — Discrete Mathematics. While cs201 has no prerequisites, it is recommend only for students who want to major/minor in computer science or want to learn the mathematical foundations of computer science.
Students with little to no exposure to object-oriented programming (less than 1 year in high school) often start with cs110 — Introduction to Computer Science and Object Oriented Programming (in which you learn Java programing language) or cs111 — Computer Science for Scientists, which is an alternate introduction class that focuses on solving scientific applications using the Python programing language. cs110 is taught every year in the Fall and cs111 is taught every year in the Spring. Neither course assumes any prior programming experience and both will teach basic programming and computer science principles. Both classes can be used to satisfy degree requirements for majoring/minoring in computer science.
Either cs110 or cs111 can be used to satisfy your Quantitative Competency requirement (if needed).
Students with significant object-oriented programming experience (usually equivalent to 1 full year in high school), typically start with either CS120 — Intermediate Computer Science (offered every Spring) or CS121 — Intermediate Scientific Computing (offered every Fall)
- Do you know what a “class” definition is?
- Do you know what “class inheritance” means?
- Do you have experience programming with collections of objects?
If you can answer yes to these questions, then either cs120 or cs121 is probably a good place for you to start. Please seek advice (and verification) from the computer science department. Both cs120 and cs121 count towards the degree requirements for majoring/minoring in computer science.