This article is part of our mentor tips series, where Edlyft mentors share tips about the course they mentored with Edlyft.
CMSC 131 is the first course that counts towards a bachelor of science degree in Computer Science at the University of Maryland. The general overview of CMSC131 is that it introduces object-oriented programming using the programming language Java. There are two types of people who take CMSC 131: beginners and experienced coders.
“This class may sometimes feel like this meme. But remember to just stay patient and trust yourself.”
Group A are the beginners, the novices. These students have little to no coding experience. If you are a member of this group, I can guess some of the emotions you're experiencing; anxiety, fear, excitement, and maybe even a little bit of confusion as you do not know what to expect. All of these feelings are equally valid.
Group B consists of persons who are experienced coders. Some may be coding for years, have a degree of some sort in a computer science-related field, transfer students from a previous computer science program, etc. The common ground of Group B is that coding is not new to them. Persons belonging to Group B are often of the impression that this course will be a walk in the park. Whether they have experience in Java or not, they preserve this course to be an easy A, which -whispers-, it is not.
“ You can succeed in CMSC 131 with the right amount of discipline.”
— CS Student
Regardless if you consider yourself Group A or Group B, you can succeed in CMSC 131 with the right amount of discipline.
Generally, when I ask an upperclassman how to prepare for a course, they tell me to get familiar with the language or with the platform that I will be using to write code. While that is an excellent place to start, I say don't stop there. Take a step further and become comfortable with doing different practice problems surrounding a concept in Java.
There are many ways we can be asked to approach a concept. When preparing for my first CMSC 131 midterm, my peers and I were preparing how to print out different triangles using the star(*) symbol since that was covered during lecture, and we were confident that would show up on the midterm. For context , one triangle we were practicing to print out looked like this :
* * *
* * * *
* * * * *
To our surprise, we were asked to print out a parabola using the star(*) symbol. Logic and problem solving are a vital component of Computer Science, so continue exercising your brain to solve several Java problems. A few of my go-to websites when practicing concepts in Java are :
In addition to these websites, Edlyft offers concept reviews and exam prep that allows students to become more comfortable when approaching different problems revolving around a concept. You can join the waitlist to be a part of an Edlyft cohort by clicking below ⤵️
CMSC 131 teaches the basics of Java and provides a good foundation to continue to be great programmers. Will you be challenged? For sure. The extent to which CMSC 131 will challenge you is dependent on how the type of learner you are. A visual learner may grasp the concept of how things are stored on the stack and heap better than a non-visual learner.
The most thrilling part of this course for me was completing my projects. Projects are a good way to see the fantastic things that you can accomplish with coding. Persons a part of both Group A and Group B should humbly receive this course material as it builds your character as a programmer. I still utilize lessons that I learned from this course, which I sat three semesters ago.
Please do not be too scared and try to have fun because coding is indeed ✨fun✨
Wondering how to get the best edge in CMSC 131? Join a cohort of students in your class, where you’ll have access to an UMD mentor who’s aced the class and leads weekly sessions designed to get you unblocked.