In the summer I laid out
an article about the practical aspects of applying for a Fulbright scholarship, but now I will tell you a little about studying
at Purdue University . In this part I will try to describe the requirements for the release, some courses and everyday moments. I hope that this will help a little to understand those who are thinking about studying in the United States, which is all about learning. So, if you are interested, welcome under cat.
Purdue university

Purdue University is a public university in the United States, city of
West Lafayette , Indiana, the main of the six Purdue University campuses. Founded in 1869. The second in the number of students in Indiana, and one of the first in the number of foreign students in the United States. Historically, it is in good relations with the Fulbright program (the university provides discounts on tuition for the program and readily enrolls Fulbright program finalists), therefore many scholars of the program study there. At Purdue University, one of the largest organizations of Fulbright participants in the United States.
')
Faculty (Department) of Computer Science

Historically, one of the most rated and prestigious faculties at Purdue University. Established in 1962, one of the oldest computer science departments in the United States. According to various ratings, he is in the top 30 computer science departments in the world (
ShanghaiRanking ,
US News Education , The
Best Schools by return of investment ,
The Guardian ). The most well-known (developed) directions in the department are Systems (OS, Networks) and Programming Languages.
Release Requirements

In universities in the United States very often there is no strict distinction between graduate and postgraduate (PhD). In many universities (including Purdue University), masters and graduate students take the same courses and in fact there is no particular difference in the first 2-3 semesters. Therefore, often arriving at the magistracy, people are then transferred to graduate school. Also, graduate students can at any time (after fulfilling the requirements for the magistracy) to get a master's degree and complete their studies. More details about the requirements for the release can be found
here , but I will try to show the big picture.
Master'sFor a master’s degree there are 2 ways with and without master’s work. There is no timeframe, as soon as the requirements are met, get a diploma and on a good journey. I know people who graduated in 3 semesters, I heard about students who completed all the necessary courses in 2 semesters. But this is rather an exception to the rules and besides diligence you also need a lucky combination of circumstances (so that you can take all the required courses), most often getting a master’s degree takes 2 years.
Option without master's work (10 courses)Usually the most popular choice among Purdue students. Recently, very few students write master's work. Often this is due to the desire to take as many courses as possible or to the lack of a specific project.
Course requirements:
- three required courses (algorithms, OS or Networks, Compilers or Programming Languages)
- at least 2 courses from different areas of computer science
- you can (but not necessarily) take two courses of independent research with teachers
Option without master's work (8 courses + master's work)Globally, it doesn’t differ much from the option without master’s work; it’s just independent research courses that are actually replaced by the writing of the work itself. As I wrote above, I don’t yet know more than one student who would be going to write a master’s work.
Course requirements:
- three required courses (algorithms, OS or Networks, Compilers or Programming Languages)
- at least 2 courses from different areas of computer science
- other courses optional
Postgraduate (PhD)
At Purdue University, this is more like an expanded magistracy than a separate program. As a rule, obtaining a PhD takes 5-6 years, in a particularly successful case 4 years. If the graduate student already has a master's degree, then you can reduce the load on the courses.
The main points in the requirements that I would like to draw attention to:
- two required courses (algorithms and OS), all you need is 9 courses
- Qualifying Examination, Part 1 - four additional exams in four different selected areas. As a rule, this requirement is scary for many, but according to personal impressions, in order to pass these exams, it is enough just to prepare for the final exams for the courses taken.
- Qualifying Examination, Part 2 - oral examination in the direction of research. It consists of a presentation and 20-30 questions on the current state of the chosen field (main directions, popular tasks, etc.).
- Preliminary Examination - a deeper oral examination on the selected topic of the thesis. Maybe in different variations - presentation, answers to questions, presentation of research ideas.
- Thesis Defense - the actual dissertation defense.
Financing education options
I am writing this article in the context of obtaining Fulbright scholarships, but at the same time Purdue University provides many other opportunities for funding. All options pay tuition and provide some scholarship (salary in case of assistance). Conventionally, they can be divided into 3 categories:
- Teaching Assistantship is a job as an assistant teacher in a course, both in the computer science department and in other departments. The most popular student option. In general, in the department of computer science from a semester to a semester there is a problem to recruit the necessary number of assistants for courses and often take people from other departments. Out of interest, I worked as an assistant at the undergraduate course in operating systems. In principle, the experience is positive. It usually took me 10-15 hours a week.
- Research Assistantship - work in research laboratories, specific projects or simply on the teacher. Three-dimensional concept, which is difficult to characterize, a set of positions is very different and in different areas. The most common option after the student has decided on the leader and topic. Often, a supervisor simply provides a scholarship to his students so that they can concentrate on research.
- Fellowship - a variety of scholarships. Fulbright scholarship is one of many, there are scholarships from the department, the university and just private foundations.
Fellowship is usually the best option, since it does not impose obligations to work and gives you the opportunity to concentrate fully on your studies. At the same time, a scholarship may (often is) less than the salary of an assistant. For example, a Fulbright scholarship is $ 1,280, and the average salary of an assistant is $ 1,500 - $ 1,600 (depending on the number of working hours per month based on the formal requirement to work 20 hours per week, hourly pay).
Also in financing, there is a difference in the approach to the masters and graduate students. It is more difficult to get the job of an assistant as a master, and no one guarantees that work every semester. At the same time, graduate students are guaranteed work for 4 semesters upon admission, then according to the situation (there used to be a guarantee for 4 years, now the rules have changed a little).
Completed courses
Even before receiving the Fulbright scholarship, I was always interested in the differences in studies in different places. To tell privately the learning process at Purdue I am very impressed and it exceeded many of my expectations. Excellent organization of the process, immediately understandable requirements and constantly updated courses (2-3 years according to the rules, each course is supplemented with new materials). I do not know about the rest of the universities, but KPI (Kiev Polytechnic University) still has room to grow and grow.
Then I will describe the courses completed so that you can make an approximate impression about the course content.
As a digression, I will say that courses in Purdue are quite deep and, more often, more theoretical. At the same time, almost all courses have more and rather complicated projects. Courses completed by me:
- Operating Systems - an in-depth study of operating systems. In Purdue, some time ago, we developed an XINU operating system for this. It is considered one of the most difficult courses, quite extensive practical tasks (task scheduler, interprocess communication) and a very difficult final project - a virtual memory manager. All programming in C. For me, the most useful course helped to greatly raise the programming skills in C. Traditionally, it is considered one of the best courses in Purdue.
- Algorithms - standard course of algorithms with a bias in theory. Programming is not, all tasks are reduced to the proof of correctness and asymptotic complexity. According to reviews, one of the most unloved courses by students due to the complexity of the tasks and a strict (sometimes very) assessment system. Specific topics depend on the professor who leads the course, but as a rule use the book Algorithm Design as a textbook.
- Data Mining - an introduction to Data Mining with the consideration of all the basic and well-known algorithms. An example of that . For me, probably the biggest disappointment, since I did not recognize something significantly new, I definitely expected more in-depth topics. Python and R are used.
- Programming Languages - a course on the theoretical aspects of programming languages ​​(type systems, lambda calculus, etc.). In fact, the entire course is built around proving the correctness of programs using Coq and type systems for programming languages. Used book Software Foundations . A very interesting final project is to describe any system of your choice and prove interesting properties. For example, we formalized a simple programming language with support for threads and proved the necessary conditions for the absence of deadlocks. Much more theoretical course than it might seem by name.
- Parallel Computing - a course on parallel programming algorithms. Quite a lot of theory, deeply considered the complexity of algorithms and scalability problems (strong and weak scalability). The language used is C and OpenMP / OpenMPI as libraries for parallel programming. I liked the course, very interesting material and tasks.
- Metaprogramming and Program Generation - a theoretical course of familiarization with various options for the use of metaprogramming . I really liked the structure of the course - every week we read and discussed 1-2 scientific articles related to metaprogramming (who cares, the list of articles ). Since the course is focused on research, in the end you had to offer your project. The idea is not bad, but not very much has been implemented, a lot of people took too complex projects and did not actually have time to finish anything.
- Compilers - excerpts from compiler theory. Conventionally, the entire course material is divided into 2 parts - Frontend (piercing, grammars, etc.) and Backend (code generation and various optimizations). There were also 2 interesting but long GCC modification projects (definition of the use of uninitialized local and global variables). Many places in the USA and Purdue use the book Compilers: Principles, Techniques, and Tools , which is considered to be a classic in compiler theory.
Accommodation and everyday moments
West Lafauette is a typical campus by American standards. The bulk of the population are students, the entire infrastructure is designed for the university. I also noticed that on campuses there are stricter rules, in contrast to big cities, age is checked in all bars, more police etc.
I wanted to live in an American university dormitory, but in Purdue masters and graduate students is prohibited. This rule is in many universities, I am not sure about the specific reasons. Regarding the cost of housing, a rule a room can be rented from $ 350, a studio from $ 500. Accommodation close to the campus is more expensive and generally worse in quality than any other offer. The main disadvantage is the typical US annual lease contract, which forces you to either look for someone for the summer or lose a decent amount of money.
After moving from Kiev, the lack of normal public transport for me was probably the biggest problem. He seems to be in Purdue, but buses rarely go, often with delays, and on weekends there is almost no public transport. Traveling in the US, I realized that this is a widespread problem besides large cities. Also, intercity transport is rather average quality. In general, after a while I realized that it was quite difficult to manage without a car (more difficult than in Kiev).
- Insurance and medical care
Medical care in Purdue is expensive and fairly average quality. At the same time, insurance is required. Fulbright scholarship includes basic insurance with a mandatory payment of $ 25 for each visit to the doctor. University insurance costs about $ 250- $ 600 per semester, depending on scholarship conditions and other factors.
One of the things that surprised me in the US was the relative cheapness of food, especially in different cafes / canteens on campus. You can have a good dinner for $ 6-7, for $ 12 - a buffet in the university canteen. In Purdue very high quality dining, according to
Princeton Review # 14 in the United States.