If you are getting a hatchling, a 36x24x24 is going to be too big. You could use the 24x18x16 for over a year before you might need to upgrade. Ball pythons are shy snakes, and big open spaces tend to freak them out, especially if they are young. Smaller is actually better here. If you don't want to spend the $$ on a nice cage right now, you can start out with a tub and get the nicer cage when the snake grows into it.

Also, I think 24" tall is way too tall for an adult ball python, in my opinion. They are terrestrial snakes and while they will climb when they are young, most adults won't climb very much.

Whichever heat source you use, please be sure to get a reliable thermostat. I think this was suggested before.

Also make sure your hides are small and cramped. The snake should fit snugly inside. 2 identical hides are preferred so the snake doesn't have to choose security over thermal comfort.

I think cypress mulch would be a good substrate for you. It looks really nice, easy to spot clean, and holds humidity nicely.