Computer science is best learned by doing, and Cornell's One Course At A Time schedule allows you to enjoy hands-on activities throughout your coursework. In small, collaborative classes, professors provide individual support to students as they move seamlessly between lectures and projects in the same classroom.

Students are introduced to software development using Java, and in upper-level courses you will solve problems using JavaScript, Python, Ruby, and other programming languages.Upper-level courses for majors address a range of fundamental concepts, and specialized topics courses are added based on student interest. Recent topics courses include Mobile App Development, Human-Robot Interaction, Open Source Projects, and a "big data" course co-taught with a professor of statistics.

At all course levels, you will develop skills in teamwork, communication, and other important areas that go beyond writing code. You will collaborate on group projects, read from recent journals, write papers, present your work to your peers, and review the work of others.To complete your degree, you will develop a capstone project that builds on previous coursework and involves you in all phases of iterative software development.

Professors are focused on teaching undergraduates and continually adopt new teaching methods and technologies, following best practices from the Association for Computing Machinery (ACM) and the Institute of Electrical and Electronics Engineers (IEEE.)

Benefits of One Course At A Time

A typical computer science course includes a lecture and discussion component, a closed lab component, and an open lab component. Closed labs are similar in structure to physics or chemistry labs. The instructor sets up the exercise, provides tutorial assistance, and circulates among students to troubleshoot problems as they arise. Open labs invite more creative exploration, and you can work on your own schedule.

All classes enjoy dedicated classroom space, and you are free to work on projects beyond normal class meeting times.

Research and internships

You will be encouraged to extend your learning beyond the classroom, and you might choose to join Professor Ross Sowell in studying robotics, complete summer research at a larger school, pursue internships, or work with Cornell's information technology staff. Professors in the department will come to know you well, and the detailed letters of recommendation they write often make a difference when applying for internships, research placements, or jobs.

Off-campus studies

You will also enjoy many other organized opportunities to explore your interests outside the classroom. You can tour local companies and research labs with faculty members, make trips to Chicago, attend professional meetings, gain advice from successful alumni, and compete in intercollegiate programming competitions.

Recent graduates have been very successful in finding employment directly after college in diverse computing fields across the country. Others have gone on to prestigious graduate programs, where they have studied topics ranging from data visualization to bioinformatics to computer engineering.