Here is why finals are evil (as a Computer Science Phd track):
April 4th: Finals schedule is released, showing both classes that have conventional finals with said finals on May 02, ending early in the morning. Not having my own car, I call my parents to drive up and help me move out on that day. They are happy to do so.
April 9th: Professor C. announces that his class's finals will be rescheduled to early morning on May 09, while Professor B.'s class is rescheduled to May 04. Parents are informed, but have plans on the ninth and can only help with move-out on the 4th, meaning that I would have to drive 2.5 hours home on the 4th, then drive 2.5 hours back and stay overnight on the 8th, then drive 2.5 hours again on the 9th to get back home.
April 13th: After literal hours of arguing over Skype with Mom & Dad, a compromise is hammered out that satisfies nobody but works for everybody, in which I would stay at school until the 4th, then get up at 4:00 AM to drive back to take the final on the 9th and return that same day.
April 15th: Finals are rescheduled. Now both are on the 4th, with the last ending at 7:00 PM. Mom reluctantly agrees to drive me back on that day after much "persuasion".
April 23rd: Today in class, Professor C. makes an announcement: "I've had a number of people complain that the current finals schedule will not give them enough time to study, so I'm talking to the Dean about rescheduling. I hope we can come to a better date that way."