Skip to content

CPSC 350

  • Syllabus
  • Office
  • Readings
  • Sheets
  • Levels
  • XP
  • Scoreboard
  • Quiz #2 posted!

    Quiz #2 has been posted to Canvas, and is due next Sunday at midnight. It’s open-book, open-notes, timed at 45 minutes, and must be completely entirely on your own, with no help from other people (even others not currently at UMW) or from AI assistants like ChatGPT. Good luck!

    Sep 22
  • Stephen’s assignment #1 solution posted

    For those who need a starting point to work from for assignment #2, here’s my solution (click to enlarge):





    Happy flying! 

    Sep 21
  • Assignment #2 posted!

    Assignment #2 has been posted, and is due at 11:59:59pm on Wednesday Sept 30th at midnight. This one involves plenty of new concepts and new tools, so get started and don’t delay!

    Sep 21
  • The last problem on quiz #1

    I always find it somewhat amusing (as well as annoying) how difficult the last question of my Canvas quizzes always seems to be. Finding the correct pledge, typing it, and “signing” one’s name by typing it below the pledge are apparently onerous and error-prone tasks. Eight students managed to mess it up in one way or another on this quiz. 🙂

    For this reason, even though that “question” was worth no points, I did award a bonus +1XP to every student who typed and signed their pledge correctly the first time. Enjoy!

    Sep 18
  • Office hours tweak

    Just a note that I’ll be having office hours on Thursday at slightly different times than I announced before. The new times for Thursday are: 1-2pm and 3:30-4:30pm.

    Sep 15
  • Domain/type questions

    In response to student questions:

    • Use type “string” for airport gates. Sometimes they’re numbers like “5” but other times strings like “B37“.
    • For dates and times, you want to make your life easier by storing them in a way that’s meaningfully alphabetically sortable. For times, it’s easiest to use military time, as in “08:00” or “18:55“. For dates, use a format like “2026-09-13“.
    • Make and model are two different things, and should be two different attributes. The “make” is the company that makes that type of aircraft, and “model” is the type itself. So “Boeing” “747” are a make and a model. (For cars, which you may be more familiar with, it would be something like “Toyota” and “Camry”.)
    Sep 13
  • Stephen’s Ben & Jerry’s design

    Here’s my solution to the Ben & Jerry’s requirements description problem.

    Sep 12
  • Signing documents legally

    A number of people turned in the most recent codingbat submission by typing the correct Honor Pledge, as required….but then forgetting to “sign” it (in this case, by typing your full name as your signature).

    Adulting tip: if you’re routinely in the habit of submitting documents without signatures, get out of that habit ASAP. If you file your taxes, and don’t sign it, the federal government flat will not count that as a legal submission, and you’ll face fines or even jail. If you don’t sign your marriage license, you are not married. If you don’t sign your driver’s license, you cannot legally drive. If you don’t sign your loan application, you don’t get the loan. Etc.

    If you’re one of those who failed to sign your pledge, simply reply to my recent chastisement email and type out the pledge again in full, and sign your name (by typing it below the pledge).

    Sep 11
  • Quiz #1 posted!

    Quiz #1 has been posted to Canvas, and is due next Monday at midnight. Remember the rules for quizzes: they are open book, open notes, but closed-Python, closed-AI, closed-Internet (other than your Canvas window, duh) and closed-other-humans. This one is timed at 30 minutes. Take it alone in a quiet place. And good luck!

    Sep 9
  • Lab Aides

    Lab aides are available on a walk-in basis this semester at the following times:

    Day Time Location Lab Aide
    Sunday 3-5pm HCC 111 Kaleb
    Monday 6-8pm JFH 022-Lab Morgan
    Tuesday 6-8pm JFH 022-Lab Olivia
    Wednesday 6-8pm JFH 022-Lab Nathan
    Thursday 6-8pm JFH 022-Lab Olivia
    Friday 3-5pm JFH 022-Lab Kaleb


    All are very capable of helping you with CPSC 350 projects and concepts!

    Sep 9
  • Assignment #1 posted!

    Assignment #1 has been posted, and is due next Wednesday at 5pm. (Note: this assignment is to be submitted physically, rather than electronically, and hence the building must be open for you to stick it in my folder. I can only guarantee the building will be open until 5pm. If you’re later than this, and you luck out and it turns out the building is open, I’ll never know you were late.)

    This assignment is not for the faint of heart! It will require serious, unrushed thinking. Do not procrastinate!!

    Sep 8
  • Pronouns

    I realized that I forgot to ask for people’s pronouns along with their names yesterday, as is my custom. So let me just say: if you think there’s a chance of me misgendering you, please send me email telling me what your preferred pronouns are. If you don’t think there’s a chance of that, and you’re sure that I would guess correctly what your pronouns are based solely on your appearance, you need do nothing.

    Sep 1
  • Mug shots

    You might not realize this from where you sit, but it’s darn challenging for professors to learn 50-75 new names and faces every semester. And that’s without dealing with jet lag complications!

    One of the ways I expedite learning students’ names is practicing. (Some might call this “cheating.” I call those people “haters.”) I download everybody’s “mug shot” from Banner, and run through the faces like flash cards, gradually learning to associate a name with a face.

    It used to be that all Banner students had a mug shot, period. (I think it’s the pic that appears on our EagleOne card.) But for the past few years, I’ve noticed that there are plenty of gaps where for some mysterious reason no picture is registered with you in the Banner system.

    So why am I telling you this? Because you can earn another easy and valuable +1XP by providing me with a mug shot (meaning, a portrait of you looking fairly normal doing something interesting (or not) but most importantly: your face fully visible on the portrait. It can be a silly snapshot or your prom dress from high school: I just need a face to go with your name.)

    For students who already have such a Banner mug shot, you have already been proactively awarded the aforementioned +1XP on the scoreboard. If not, you can still claim this point if you follow these three directions:

    1. Make sure you’ve entered your name and a super clever and secret alias on the class scoreboard.
    2. Once you’ve done that, and you believe you have a perfectly good picture in Banner for you, I just need you to send me an email with subject line “Stephen: get the Banner mugshot” and I will download and add it to my collection, then award you the point.
    3. If you don’t have a mug shot in Banner at all, I feel like the best way is to contact the Registrar about taking a snapshot of which they evidently forgot.
    4. Finally, if you don’t want to futz around with Banner and the Registrar, just send me an email attachment of a recent photo that shows your entire face and all outwardly distinguishable appearances. For this email, use subject line “Stephen: here’s a mug shot for me!”

    When I receive any of the above emails, I will do my best to get their point awarded and their picture & name added to my little black book.

    Oh, and one other thing: this is due before class on Wednesday of this week. It’s not a hard task, it’s just remembering to do it.

    Aug 30
  • Email me, don’t Canvas me

    I almost never check or receive “Canvas messages” and only saw one from a student today by accident. Please, to get in touch with me always use email (my first name _AT_ umw _DOT_ edu) and you’ll have better luck!

    Aug 24
  • Get on the scoreboard!

    In order to earn any experience points (XP) at all for this class, you’ll need to sign up on the class scoreboard. Do this right away, and get your first +1XP of the semester!

    IMPORTANT NOTE: you should choose a secret screen name that does not resemble your real name in any way, and you should keep it secret from others throughout the semester.

    Aug 21
  • Assignment #0 posted!

    Assignment #0 has been posted, and can net you up to +20XP! It’s due on September 1st.

    Aug 21
  • Doing codingbat pushups

    You can earn up to +3XP each week for the first eight weeks of class by completing Python challenges on codingbat.com.

    To earn these points, first create an account on codingbat.com. Please use your UMW email address. Then, click on “prefs” in the upper-right, and enter my email address (stephen _AT_ umw _DOT_ edu, written as a correct email address) as the “Teacher Share” value, and the string “CPSC 350 fall 2026” as the “Memo”. Make sure you click the correct button after entering each field (one is called “Share” and the other is called “Update Memo.”)

    Then, each week, you can complete all of the items in the following codingbat sections:

    1. Week #1 — Warmup-1 (due Aug 26th)
    2. Week #2 — Warmup-2 (due Sep 2nd)
    3. Week #3 — String-1 (due Sep 9th)
    4. Week #4 — List-1 (due Sep 16th)
    5. Week #5 — Logic-1 (due Sep 23rd)
    6. Week #6 — Logic-2 (due Sep 30th)
    7. Week #7 — String-2 (due Oct 7th)
    8. Week #8 — List-2 (due Oct 14th)

    To claim your credit for the week, you need to send me an email with subject line “CPSC 350 codingbat week # turnin” (where “#” should be replaced with an integer from 1 to 8). In the body of the email, you must type (not copy/paste) the following pledge, followed by your full name (first and last, and middle initial if any) as your signature:

    “I hereby declare upon my word of honor that I have completed all the items on this week’s codingbat challenge on my own, with no help from other people or websites, and without pressing the ‘Show Solution’ button on any problem.”

    I must receive this email no later than midnight on the day listed above in order for you to receive XP for the week.

    Good luck, and happy coding!

    Aug 21
  • Welcome!

    Greetings, earthlings, and welcome to the fall 2026 edition of CPSC 350 with Stephen!

    This site is gonna be hip-hoppin’ with all kinds of great stuff real soon, so stay tuned!

    Aug 18
CPSC 350

CPSC 350

stephendavies.org