This page houses a bunch of resources and information about cognitive science at UC Berkeley collected by the CSSA. The UC Berkeley cog sci program page here contains further details including major requirements and more. Here are some of the resources the CSSA has to offer:

If you ever have any questions about the major or classes feel free to come talk to us at meetings or office hours! The CSSA also puts on several informational events about the major such as Why Cog Sci? or Telebears Night.

Pictures from the CSSA's Why Cog Sci? event.

Berkeley Review Of Cogsci Articles

Fall 2015: Wednesday 5 p.m. - 7 p.m. in 243 Dwinelle

  • 2 unit decal organized by the CSSA.

  • Students read weekly research papers and then discuss these papers with the authors (professors and graduate students at Berkeley).

  • Its goal is to get students comfortable reading and analyzing research papers as well as comfortable interacting with faculty and peers over research.

  • It's a great way to get introduced to the vast array of research happening in cognitive science!

  • Multiple students have gotten research positions either through course assignments or from interacting with the guest speakers!

Learn more here

Major Resources

General Academic Resources

  • Berkeley Time
    • Very useful for viewing grades and enrollment history for classes you're interested in.

  • UC Berkeley Breadth Requirements Search
    • Useful search page for finding breadth courses.

  • Codecademy
    • A great place to gain familiarity with a programming language quickly (such as Python for 61A), particularly for those with no prior experience.

Frequently Asked Questions


  • 01

    What is the difference between the two computational modeling tracks?

    Traditionally, there have been two main computational modeling tracks for the cognitive science major:

    1. CS 61A --> CS 70 --> CS 188
    2. E7 --> Math 55 --> Cog Sci 131

    However, Cog Sci 131 is now taught in Python and thus one of the following two tracks are recommended:

    1. CS 61A --> CS 70 --> CS 188
    2. CS 61A --> Math 55 --> Cog Sci 131

    Note that both tracks now recommend taking CS 61A as opposed to E7. Reasons are discussed in the next FAQ.

    The first track is geared toward those who have a greater interest in computer science. This track is often pursued by those interested in doing a double major or minor and generally includes CS 61B as well (or more if pursuing a CS double or minor). The culminating class (188) is Artificial Intelligence taught in Python.

    The second track tends to be the alternate track for those who are less interested in computer science. In general, this track is considered easier although it varies by person. The culminating class (131) is Computational Models of Cognition now taught in Python.

    Note that E7 can still be taken to satisfy the programming requirement for the major and it is fine if you have already taken it. CS 61A is now the recommended choice for intended majors, however. Also it is not necessary to specifically follow either of the paths above as long as you fulfill the requirements. These are simply the two most common progressions. Some people more interested in the computational side of cognitive science take both CS 188 and Cog Sci 131. For more information on choosing between E7 and CS61A and between CS 70 and Math 55, read the next two FAQs.

  • 02

    Should I take Computer Science 61A or Engineering 7?

    Now that Cog Sci 131 is being taught in Python, it is strongly recommended that students take CS 61A instead of E7. Since both 131 and 188 will be taught in Python now, CS 61A will adequately prepare you in Python as opposed to MATLAB in E7. E7 is also being much more strict about its math prerequisites (Math 1B), which many cognitive science students do not possess. For those wanting to learn the MATLAB language (perhaps for research purposes), CS 9A is a class specifically focused on the MATLAB programming language that also avoids the excess technical applications you would be taught in E7.

  • 03

    Should I take Computer Science 70 or Math 55?

    Math 55 and CS 70 both teach similar material from the same two fields: Discrete Mathematics and Probability Theory. Which class you should take is generally dependent upon which of the main progressions you are following. If you are interested in CS 188 and the computational side more in general, then CS 70 is strongly recommended (indeed, CS 70 is a prerequisite for CS 188). On the other hand, Math 55 is recommended if you have little interest in the computational side of cognitive science. In general, Math 55 is reported as being easier and less time-consuming, but this varies greatly by person and professor and both are difficult classes.

    The following is a description of the two classes written by a cognitive science and computer science double major who has taken CS 70. The information on Math 55 is based on shared/observed information.

    What is the difference?

    • Both Math 55 and CS 70 are teaching the same core material, that is Discrete Mathematics and Basic Probability Theory. But these classes are in two different departments with two different end goals.

    • Mathematics 55 is "Discrete Mathematics" and its primary goal is to equip students with a mathematical foundation in the field of discrete mathematics. Discrete Mathematics is the study of the mathematics of discrete phenomena - things that can be counted. At UC Berkeley, it entails formal logic and proofs, induction, set theory, graph theory, modular arithmetic, counting, basic probability, and more. As you can begin to tell, it covers a lot of different topics and gives you brief formal introductions to them. Being a math class, its emphasis is on understanding all of these topics at a basic formal mathematical level.

    • Computer Science 70 is "Discrete Mathematics and Probability Theory" and its primary goal is to equip students with a computer science understanding of topics from the same core set of topics as Math 55. However, it emphasizes in depth computer science applications of many of these topics and, as a result, covers fewer overall topics. There is a lot of overlap with Math 55, but more time is spent on computer science applications such as the stable marriage algorithm, hashing, load balancing, and so on. Many of the topics will be taught more in a computer science context as well (such as applying the principles to algorithms).