Here are some resources that you might find useful for various physics courses and software.

If there are any YouTube videos/websites that you've found helpful, send an email to with your suggestions! 

PHYC 1190/1290 Introduction to Physics

These are relatively standard "introduction to university-level physics" courses. Any material geared towards AP/IB/A level physics will be useful.

One series I found particularly useful was "Crash Course Physics", which covers topics from both 1190 and 1290. Khan Academy, Micheal van Bizen, and Professor Dave also have good stuff.

Course syllabus linked Here 

Here are also some other videos I've found particularly memorable:

PHYC 2515 Modern Physics

Some of the "Crash Course Physics" videos will still be useful for broad introductions to the topics covered.

The first topic covered in this course is special relativity. Minute Physics has a great series on special relativity. Brian Greene has made an 11-hour-long video on special relativity that covers everything you'll need; watch 30 minutes a day for about a month and you'll be set.

Course syllabus Here 

Professor Dave's modern physics series is great for introductory quantum mechanics. He also goes gives succinct introductions to quantum electrodynamics and chromodynamics if you're interested in learning more.  For more advanced quantum mechanics, Brant Carlson has an incredible series that will also be useful in PHYC 3640 Quantum Physics I.

PHYC 2060 Oscillations and Waves

Course syllabus Here 

PHYC 2150 Physics Tools: Experiment

This is a relatively hands-on class, there are multiple projects involving Arduino Uno and Python.  It also gives a good background on statistics.

Syllabus linked Here 

Arduino can be tricky to use, especially if this is your first time coding. Below is a useful link for getting started and learning how to make circuits. 

PHYC 2050 Computer Simulation in Science

For information about Python, see the links under the Software section.

Course syllabus Here 

Here are some videos I've found particularly memorable:

PHYC 2510 Electricity & Magnetism

Do practice questions and you'll be fine. If you get stuck, there are many worked solutions for Griffiths on the internet (including YouTube).

Course syllabus Here 

You may find it helpful to revisit some of the resources you used in PHYC 1290 to improve your intuition for what you're doing.



Python is a general-purpose, high-level programming language whose design philosophy emphasizes code readability. Python's syntax allows programmers to express concepts in fewer lines of code than would be possible in languages such as C.


LaTeX is a mark-up language that makes it easy to type math, cite sources, and label figures.

The easiest way to get started is on Overleaf, a web-based editor that stores your notes on the cloud. LaTeX does have a bit of a learning curve, so you should watch the first few videos in this series by Trefor Bazett. One professor from the University of Oxford has uploaded some good notes; I highly recommend that you read through Part 3: Sense and sensibility; it's about the fine details in writing math that are often overlooked.

Once you've got the basics down, Overleaf's guides are a very useful reference.

If you find yourself needing specific functionality that isn't mentioned in the above resources (e.g., bra-ket notation), Google it. You will probably find a link to the TeX Stack Exchange, where people post their questions about LaTeX and the knowledgable samaritans of the internet answer them.

Another useful website is Detexify, which lets you search for symbol names by drawing them. This is helpful if you don't know the symbols name.

Here are some other useful resources:


LabVIEW (short for Laboratory Virtual Instrumentation Engineering Workbench) is a system design platform and development environment for a visual programming language from National Instruments.


MATLAB (matrix laboratory) is a commercial numerical computing environment and fourth-generation programming language.


Maple is a commercial computer algebra system. Users can enter mathematics in traditional mathematical notation. Custom user interfaces can also be created. There is support for numeric computations, to arbitrary precision, as well as symbolic computation and visualization.


C is one of the most widely used programming languages of all time, and there are very few computer architectures for which a C compiler does not exist.


Java is a general-purpose, concurrent, class-based, object-oriented computer programming language that is specifically designed to have as few implementation dependencies as possible


Gnuplot is a portable command-line driven graphing utility for Linux, OS/2, MS Windows, OSX, VMS, and many other platforms. The source code is copyrighted but freely distributed (i.e., you don't have to pay for it). It was originally created to allow scientists and students to visualize mathematical functions and data interactively, but has grown to support many non-interactive uses such as web scripting.