Properly written unit tests save so much time.
Functional programming styles make unit testing much easier.
I can just run the test script and figure out what the big project refactoring I did broke, if it broke anything.
I am not sure why, but OOP is really hard for me, functional programming and recursion is much much easier.