This post was inspired by my recently received horror of a schedule for my second semester as a freshman. I had Mondays off, but was greeted with two 8 AM starts and one 9 AM start (I have to commute), a 6:30 PM to 9:30 PM course, and large gaps between courses (up to 4 hours). However, my friend had a bomb dropped on him. His Thursday started at 10:00 AM and ended at 9:30 PM with only a single hour break from 5:00PM to 6:00 PM. That is 2/3 of his entire course load in a day. Needless to say, we are both seeking to change our schedules. Fortunately, Google Calendar is there to lend a helping hand.
Step 1: Create a calendar for each course you have to take next semester. In addition, create a calendar for your “desired schedule” and an “alternate” one in case an option is full.

Step 2: Create an event for each course on your pre-assigned schedule to the first week of the semester. In the event name, include the professor, section #, and the class location. Add these to your default calendar created by Google (usually titled “first name last name“).

Step 3: Pick one course by displaying only its calendar. This makes it easier to add time slots because your screen won’t be filled with entries from other courses.

Step 4: Create an event for every time slot available for that specific course (remember to include the professor, section #, and class location). Add these to the first week of the semester. Repeat for all your courses. Once done, you may have a crazy, colourful mess. In my course below, there are multiple professors and multiple tutorials.

Step 5: Display only your pre-assigned calendar and copy any time slot you like to your desired schedule as seen in the picture below.

Step 6: Display both your desired and pre-assigned schedules. Note any time slot you don’t like due to time, professor, or location on campus. Also display that course’s calendar. Look for the options that don’t overlap with your desired schedule. In my course below, I had ACC406 at 6:30 to 9:30 PM (in orange). I only had one other option (Monday at 8 AM), but I’d much rather wake up early than commute back home only to fall asleep without any productive time left.

Pick your preferred option and copy it to your desired schedule (same as Step 5). You should also copy “decent” options to your “alternate” schedule just in case your #1 pick is full. Once done, uncheck displaying that course.
Step 7: Repeat step 6 for each course until you’ve created your optimal (but probably not perfect) schedule. You can view your final result by displaying only your desired schedule (same as step 3). You can see mine below.

I ended up moving 5/6 courses. I no longer have a day off, but only have one 8 AM start and no night classes. I also removed all gaps from my schedule, but have five continuous hours on that 8 AM start. However, it was my only option to dodge the night class. Unfortunately, it hasn’t been finalized yet because the online enrollment appointment is scheduled during the winter break.
Remember to plan this ASAP so that you aren’t fumbling around with decisions during the enrollment period while others are snatching up all the good time slots.