School of Electrical Engineering & Computer Science Computer Science 111

Computer Science 111 (CptS 111) Introduction to Algorithmic Problem Solving

3 Credits

UCORE [QUAN] course

No prior programming knowledge needed

Open to all majors, enroll now!

Spring Semester Offerings

  • M, W 11:10-12:00 (plus lab)
  • M, W 2:10-3:00 (plus lab)

Frequently Asked Questions about CptS 111

Answered by the instructor and previous CptS 111 students.

I have never programmed before, in fact I don’t even know what programming is! Is this class right for me?

CptS 111 students are viewed as complete programming beginners. We assume they have no programming background and we start from scratch the first week of class.

What am I going to learn?

In this class you will learn to solve a variety of interesting problems by writing computer programs. We will start with programming fundamentals, such as data storage and retrieval, getting input from program users, and displaying output to program users.

We will gradually combine the fundamentals to build programs, including programs that have conditional execution, solve large repetitive tasks, and access internet services like Google Maps and Spotify.

You will learn to express yourself, your creativity, and your technical ideas using coding.

Why should I learn to program and write computer code?

Set yourself apart. According to Code.org, computer science skills such as programming and mobile/web development are essential for future jobs. It is estimated that by 2020 there will be 1.4 million computing jobs! At the current rate there not enough students graduating with the required skills to fill these jobs. Those who know how to write code in languages such as Python have a set of skills that will give them a competitive edge in nearly every field! Don’t wait, learn to code now!

Check out the what current CptS 111 students, WSU graduates, and industry leaders have to say about why you should learn to code (below).

more-jobs-than-students

What is the Python programming language?

Just like how we have many different natural languages for humans to talk to each other (e.g. English, Spanish, German, etc.), there are many different programming languages for humans to talk with computers (e.g. Python, C, C++, Java, etc.). The Python programming language is a real programming language used by companies like Google, NASA, Yahoo, Disney, IBM, and Industrial Light and Magic. See a list of organizations using Python here: https://wiki.python.org/moin/OrganizationsUsingPython

Python is a great language for beginners because it reads close to English. For example, a Python program to display “CptS 111 is awesome!” to the program user is:

print(“CptS 111 is awesome!”)

pythonlogo

I don’t have a big math background. How do I know I can handle this class?

The math pre-requisites for the class are: MATH 101 with a C or better, MATH 103 with a C or better, or higher level MATH course with a C or better, or a minimum ALEKS math placement score of 45%.

In CptS 111 basic college algebra skills are used to solve problems. You do not need any additional math skills or background beyond algebra to take this class. If you are confident in your algebra skills, you can handle the math used in this class 🙂

Example Python Programs Designed in CptS 111

Using Spotify to Query Information about Songs in a Playlist

Example code to play a 30 second clip of “Just the Way You Are” by Bruno Mars.

url = get_track_information("Just the Way You Are", "Bruno Mars", "preview_url")

webbrowser.open(url)
Programmatically Manipulating Images

Original image
brelsford

Converted to high contrast image
brelsford_high_contrast

Designing Games (like Hangman)

Text output

pull-an

Available letters: bcdfghijkmoqvwxyz

2 incorrect guesses remaining.

Please enter your guess:

Graphical output

hangman

Meet the 111 Team

Gina Sprint
CptS 111 Instructor
Clinical Assistant Professor in Computer Science

“We are experiencing a redefinition of what it means to be ‘computer literate.’ A few decades ago computer literacy meant learning to type. It then evolved into learning to use Microsoft Office products. Today, being computer literate involves learning a programming language to code. Just how anyone can learn to type, anyone can learn to code.”

edit_yunshudu

Yunshu Du
CptS 111 Lead TA
Graduate student pursuing a PhD in Computer Science

“Don’t be afraid to try out CptS 111 just because you have never programmed before and think it will be too hard for you. Everything will be taught from scratch and our great Instructor and TA team are here to provide hands-on help for everyone of all backgrounds. We want to see you succeed.”

edit_peven_jackson_eecs

Jackson Peven
CptS 111 TA
Undergraduate pursuing a double major in Computer Science and Chinese

“Any student should take 111 because it will teach them a different way to look at and solve new and interesting problems in different arenas.”

What are People Saying about CptS 111 and Learning to Code?

Current CptS 111 Students

abby_larson

Abby
DTC Digital technology and culture

“I am loving CPTS-111 because it is helping me to understand how computer programming works through a hands-on and logical approach. The class is engaging and captivating for students of all majors.”

gabe

Gabriel
Chemical Engineering Major

“Learning how to code in CPTS 111 opened up doors for me in school projects, outside of the scope of Computer Science. I used the coding skills I learned in the CPTS 111 course to write a program in Python, that provided technical information and essential assistance with data analysis, for the Reaction Car Competition in the Voiland College of Engineering and Architecture at WSU. I walked into the course feeling intimidated by the idea of computer programming, and walked out feeling tech savvy. Gina Sprint is a wonderful instructor and I strongly encourage ALL students in ANY major to take her course”.

edit_jeremy

Jeremy
History and Secondary Education Major

“Students in all majors should take CptS 111 because coding is the way of our future. Programming is something that allows everyone to make their dreams in technology become a reality. Through CptS 111, I now have the capability to write my own programs that I can use when teaching in my classroom.”

edit_nick

Nick
Computer Science Major

“I registered for CPTS 111 because I needed an elective and I had always wanted to take a computer science course. Little did I know that I would come out of the course with not only a new major but a reinvigorated passion for learning. Computer science gives me the freedom and creativity that I’ve been looking for, while still pushing my problem-solving skills to the limits.”

WSU Graduates Who Took CptS 111

edit_sara_headshot

Sarah Belter WSU CS ‘14
Software Engineer at Microsoft

“My internship interview at Microsoft as well as other companies seemed frightening, but most of the time it came down to the basics that we learned in our first few computer science courses. I had John Schneider and Andy O’Fallon back and forth my first three semesters. Their teaching abilities and passion for computer science helped me learn some of the most fundamental but invaluable information that led to my internship, and which ultimately led to my first job.”

edit_jess

Jess Dahmen CS ‘13
Current PhD Student at WSU

“I love how computer science empowers me to be creative in ways that I did not know were possible. I feel like anything I can think of I can build”


Kelsey Bueno CS ‘14
Software Engineer at Isilon

Technology Leaders in Industry and Academia

edit_stevejobsSteve Jobs
Co-founder of Apple Inc.

“Everybody in this country should learn to program a computer, because it teaches you how to think.”

edit_klaweMaria Klawe
President of Harvey Mudd College

“Coding is today’s language of creativity.”

edit_mark-zuckerbergMark Zuckerberg
Founder of Facebook

“In fifteen years we’ll be teaching programming like reading and writing…and wondering why we didn’t do it sooner.”

Additional Questions Regarding CptS 111?

Check out more details in the syllabus.

Reach out to the following CS faculty/staff to learn more about CptS 111 and the future of computing. We are happy to answer your questions!