Preparing for Our Program
To request a copy of the slides and recording of our recent CL MS Virtual Open House webinar for prospective students, please complete this short form.
Whether you’re applying this year or considering applying in the future, both the slides and the webinar recording itself answer many frequently asked questions about applying to and studying in our program. The webinar recording includes sessions with CL faculty and current CL MS students, and detailed information about our curriculum, the broad range of academic backgrounds among the students we accept, financial aid and paid work opportunities, our career development support, and application guidelines and tips.
See also the Prospective Students section of our website for lots of detailed information and guidelines!
We accept students from a range of academic backgrounds, including linguistics, computer science, mathematics, and fields outside these.
- To be a strong candidate for admission:
- If you have additional time, go beyond what we require for admission:
Applicants who are otherwise strong but whose application lacks the preparation listed for their specific background under “Recommended before Applying, to Be a Good Candidate for Admission” may be accepted with the condition of completing one or more such courses before entering the program.
To avoid such conditions, it is ideal to instead have completed, be underway with, or be planning to enroll in the recommended courses by the time the application is submitted, on a timeline in which the courses will be completed before entering the program. This is especially important for international applicants, for whom the need to satisfy these conditions can delay the process of applying for a visa to study in the United States.
Expand All
Important: see also the specific guidelines for each type of student background listed below.
- We are looking for strong students overall, with grades in the A and B range on the whole.
- We are looking for applicants who are currently in a good position to do well in our program, and after graduation.
- If there are any periods in your resume and academic records with lower grades (C range or below), or periods of unemployment while not in school, we encourage you to address them briefly in your Statement of Purpose.
- If there are any computer science or mathematics courses with lower grades (C range or below), it is helpful if there are later courses in these areas with stronger grades (A or B range).
- Demonstrate computer programming and mathematics aptitude as specified below for your individual background, including by taking any programming and/or math courses recommended for your specific situation.
- Note in your Statement of Purpose any recommended courses that you haven’t yet completed, but intend to complete before you begin our program. Include the course name, number, and school offering the course, as well as the term and year in which you’re enrolling – e.g., whether you are taking the course at the time of your application, or will enroll in it this winter or spring term. Once the course has finished, follow up by emailing us an informal transcript that shows your course grade.
- Where to take any courses recommended for your specific background:
- If you are currently a student, take such courses at your regionally accredited, not-for-profit institution, if feasible.
- If you’ve already graduated, or if taking these courses at your institution is not feasible, take them at any regionally accredited institution, such as your local community college or 4 year college or university. Such courses can be online or in person, but in person courses are preferable, if feasible.
- Note that we are not able to consider courses from MOOCs like Coursera or edX.
- If you have additional time: take the additional courses recommended below under the “If You Can Do More – Additional Courses to Take if Time Permits” section for your specific academic background. The items listed there are not required for admission, but will help you be more prepared both for graduate study in our program and careers in Computational Linguistics/Natural Language Processing. This generally involves:
- Computer Programming: taking further courses in Computer Science beyond the initial programming course, focusing on courses required for the computer science major.
- Mathematics: taking further math courses, including calculus through multivariable, linear algebra, and a math department’s probability and statistics course.
- Linguistics: taking an Introduction to Linguistics course (theoretically oriented, if possible) followed by further courses in the core areas of theoretical (generative) linguistics, and in phonetics.
Important: see also the General Guidelines for All Applicants above.
Recommended before Applying, to Be a Good Candidate for Admission
- Computer Science: take at least the first course in the introductory programming sequence which either counts for the Computer Science major or is a prerequisite for the major’s first course. If you have a choice of programming languages for such a course, choose Python.
- Languages such as Java, C++, C, and so on are also fine for admissions – but having Python knowledge will make your start in the program most comfortable, since our NLP core courses use Python.
- Languages that aren’t full programming languages, such as MATLAB, R, HTML/CSS, LaTeX, and so on are not sufficient.
- ‘Programming for X’ courses such as ‘Programming for the Sciences’, ‘Programming for Humanities’, etc. are not sufficient.
- Mathematics: demonstrate mathematical aptitude by either getting a good grade (B or higher) in a mathematics course, such as calculus, linear algebra, or a math department’s statistics course; or by getting a high score (8o% or above) on the quantitative portion of the GRE. (Note that the GRE is not required, but is one way to demonstrate your mathematical aptitude.)
- If you have any lower grades (C range or below), particularly in computer science or mathematics courses, please follow our general guidelines above.
If You Can Do More – Additional Courses to Take if Time Permits
These are not required for admission, but will help you be more prepared – for graduate study in our program, and for careers in Computational Linguistics/Natural Language Processing.
- Computer Science: take the entire introductory programming sequence that is recommended for Computer Science majors (usually at least two courses), and continue through at least data structures (similar to Brandeis COSI 21a). The more computer science courses you take, the better.
- Mathematics: take the calculus sequence through multivariable, as well as linear algebra.
- Linguistics: if your studies have focused only on applied linguistics (e.g., language teaching or translation) or areas like psycholinguistics, language acquisition, or sociolinguistics, take an Introduction to Linguistics course that focuses on theoretical (generative) linguistics, if one is available. If you have additional time and access, take other theoretical (generative) linguistics courses, such as theoretical syntax, formal semantics, and theoretical phonology, along with phonetics.
Important: see also the General Guidelines for All Applicants above.
Recommended before Applying, to Be a Good Candidate for Admission
- If you have any lower grades (C range or below), particularly in computer science or mathematics courses, please follow our general guidelines above.
If You Can Do More – Additional Courses to Take if Time Permits
These are not required for admission, but will help you be more prepared – for graduate study in our program, and for careers in Computational Linguistics/Natural Language Processing.
- Computer Science: refresh your knowledge of Python.
- Linguistics: take Introduction to Linguistics and, if you have additional time, other theoretical (generative) linguistics courses, such as theoretical syntax, formal semantics, and theoretical phonology, along with phonetics.
- Mathematics: if you haven’t yet, take the calculus sequence through multivariable, as well as linear algebra.
Important: see also the General Guidelines for All Applicants above.
Recommended before Applying, to Be a Good Candidate for Admission
- Computer Science: take at least the first course in the introductory programming sequence which either counts for the Computer Science major or is a prerequisite for the major’s first course. If you have a choice of programming languages for such a course, choose Python.
- Languages such as Java, C++, C, and so on are also fine for admissions – but having Python knowledge will make your start in the program most comfortable, since our NLP core courses use Python.
- Languages that aren’t full programming languages, such as MATLAB, R, HTML/CSS, LaTeX, and so on are not sufficient.
- ‘Programming for X’ courses such as ‘Programming for the Sciences’, ‘Programming for Humanities’, etc. are not sufficient.
- If you have any lower grades (C range or below), particularly in computer science or mathematics courses, please follow our general guidelines above.
If You Can Do More – Additional Courses to Take if Time Permits
These are not required for admission, but will help you be more prepared – for graduate study in our program, and for careers in Computational Linguistics/Natural Language Processing.
- Computer Science: take the entire introductory programming sequence that is recommended for Computer Science majors (usually at least two courses), and continue through at least data structures (similar to Brandeis COSI 21a). The more computer science courses you take, the better.
- Linguistics: take Introduction to Linguistics and, if you have additional time, other theoretical (generative) linguistics courses, such as theoretical syntax, formal semantics, and theoretical phonology, along with phonetics.
Important: see also the General Guidelines for All Applicants above.
Recommended before Applying, to Be a Good Candidate for Admission
- Computer Science: take at least the first course in the introductory programming sequence which either counts for the Computer Science major or is a prerequisite for the major’s first course. If you have a choice of programming languages for such a course, choose Python.
- Languages such as Java, C++, C, and so on are also fine for admissions – but having Python knowledge will make your start in the program most comfortable, since our NLP core courses use Python.
- Languages that aren’t full programming languages, such as MATLAB, R, HTML/CSS, LaTeX, and so on are not sufficient.
- ‘Programming for X’ courses such as ‘Programming for the Sciences’, ‘Programming for Humanities’, etc. are not sufficient.
- Mathematics: demonstrate mathematical aptitude by either getting a good grade (B or higher) in a mathematics course, such as calculus, linear algebra, or a math department’s statistics course; or by getting a high score (8o% or above) on the quantitative portion of the GRE. (Note that the GRE is not required, but is one way to demonstrate your mathematical aptitude.)
- If you have any lower grades (C range or below), particularly in computer science or mathematics courses, please follow our general guidelines above.
If You Can Do More – Additional Courses to Take if Time Permits
These are not required for admission, but will help you be more prepared – for graduate study in our program, and for careers in Computational Linguistics/Natural Language Processing.
- Computer Science: take the entire introductory programming sequence that is recommended for Computer Science majors (usually at least two courses), and continue through data structures (similar to Brandeis COSI 21a). The more computer science courses you take, the better.
- Mathematics: take the calculus sequence through multivariable, as well as linear algebra.
- Linguistics: take Introduction to Linguistics and, if you have additional time, other theoretical (generative) linguistics courses, such as theoretical syntax, formal semantics, and theoretical phonology, along with phonetics.