you do hacks so you extend the functionality. I recommend that you take a look at www.vbulletin.org which is like a hack database.
They provide you with a wide array of hooks so you don't have to edit the files. But hooks are not everywhere, and certainly not at the desired functions. I have a site which started with 12 columns in a table and have grown to close to 40 columns. Have upgraded many times, never a problem, and that site is very fast with 25,000 users.
BTW, this forum here uses vbulletin too.