2 is the worst. ESP if you need to run code past midnight and keep track of time. That’s where seconds from 1970 comes in handy. Time zones you always do as UTC (or I do) and yell FTW.
4 is only a problem with UI so I tell people to learn how to count. LOL