The Class of 2024 was asked to pass along some of the insights they gained during their years as a major. Here are their responses (lightly edited):
2) Choose electives wisely. Read CourseTable reviews and ask for advice from upperclassmen. Try to take at least 1 elective each from AI/ML, Systems, and Theory.
3) Make friends in your CS classes. Being able to talk to familiar faces in office hours or offline helps with managing tough assignments. Some electives even require partner work for projects.
GO TO OFFICE HOURS! As a former 323 ULA, I learned quite a lot from hosting Office Hours (OHs), and going to OHs would have saved me several hours as a student on several different occasions. You can also make friends at OHs!
PROTECT YOUR PEACE! Don’t take too many (3+) CS courses in a single semester! It is not worth overloading! Spreading your CS load across your 8 semesters will help prevent you from burning yourself out (if you can).
Do everything early. Get started on your problem sets early. Go to office hours early. Start on the internship search early (a lot of things will open by late summer/early fall). The earlier you do things the easier it'll be.
Take care of yourself. Sleep, take breaks from screens, go outside, go exercise, make sure you learn how to type well to avoid carpal tunnel syndrome.
Try to remember why you got into CS in the first place. There are times that it will be hard and you will wonder why you are doing this. Try to do things that remind yourself that CS is fun. It gets easier after 323.
2) Use your ULAs, TAs, and professors' office hours as much as possible! There is nothing shameful about needing help. They want to help you and see you thrive.
3) Take advantage of how small Yale's majors are, and take some random courses in other disciplines that you find interesting. You'll have the rest of your career to learn new CS frameworks and material; just because you're a CS major doesn't mean that's all you have to limit yourself to in your coursework.
4) Take care of your body and your mind, in whatever ways that looks like for you. Shower and clean your room often. Wash your sheets every couple of weeks. Get enough sleep. Eat, workout, get outside, stretch, meditate. Don't sacrifice your health and wellbeing for a grade.
Also, plan your courses out properly. I wish I could change the order I did them in.
Talk to professors, they are incredibly interesting and knowledgeable people who are open to talking to underclassmen.
Don’t try to do everything. Get a sense of what topics or types of work you enjoy doing and push into that feeling. College is the perfect time to explore, but it is also incredibly exhausting. Save your time and energy and channel it into research, projects, and classes that you are interested in learning in, and not in things that you think you should be learning. Dropping something that you can barely commit to means that you can put more hours into the things you enjoy, and the organization that you left can offer more opportunities and space to people who have more time to help.
323 may seem really scary, but I think it is helpful to think about why systems are important to learn and understand. If you can find some excitement in what you are learning (whether it means you are strengthening a skill or abstracting a concept into an interesting philosophical problem), the fear of tackling a problem will be less anxiety-inducing and more exciting
Your classmates are not your competitors! CS is already difficult as it is, and building relationships along the core-CS classes will contribute to your support system. Asking for help and being open about your journey throughout CS is not a weakness. Don’t judge yourself or others for their course or career decisions
You don’t learn how to be a software engineer in college, so go explore humanities courses and activities that will help build the soft skills you need to be a good team player and thinker. Don’t pigeonhole yourself to Yale CS- you go to a liberal arts university!