Scripting! $1,000,000

Lab Image
Today's goal: Build out SDLGraphicsProgram as a libary.


Today's class is a work day in a sense. You are going to work on building a library of code that can be used in the Python programming language. This can vary from very difficult to simple. In fact, I have provided a large part of code as a sample, but I would like you to be creative in adapting and adding to it. By the end of this lab, you will have enough to script a subset of a pong game in the Python langauge.

The immediate difficulty will be in getting things setup! Be forewarned!

Your Task(s)

  1. Slides for our half half lecture
  2. Find your partner in the spreadsheet here.
  3. Complete the section below: "Analysis"

Files Given/Starter Code

  • Clicking the following link gives you immediate access to your github repository.
    • You may use your personal or Northeastern github account. I do not care, but please be consistent with what you choose.
    • Please do not click until class starts. Occasionally I make changes until a few minutes before class (usually spelling corrections and other small typos).
    • Click now: Github Repository

Going Further

Finished Early? Did you enjoy this lab assignment? Here are some (optional) ways to further this assignment.
  • You can implement your platformer in Python if you build your game engine as a library
  • Read more on Pybind11
  • Watch a lua tutorial and try to implement lua.h and support two programming langauges!


  • You and your partner will receive the same grade from a scale of 0-2. (Individual labs you get your own grade)
  • At the start of the next lab I will circulate to check off your lab. You or your partner should be ready to show it.
    • 0 for no work completed.
    • 1 for some work completed, but something is not working properly or missing
    • 2 for a completed assignment (with possible 'going further' options completed)

More Resources

Some additional resources to help you through this lab assignment

Found a bug?

If you found a mistake (big or small, including spelling mistakes) in this lab, kindly send me an e-mail. It is not seen as nitpicky, but appreciated! (Or rather, future generations of students will appreciate it!)
  • Fun fact: The famous computer scientist Donald Knuth would pay folks one $2.56 for errors in his published works. [source]
  • Unfortunately, there is no monetary reward in this course :)