A new column changes data design. It adds structure, meaning, or speed. Done right, it scales with the system. Done wrong, it slows everything and creates hidden bugs. The act looks small. The effect is not.
Before adding a new column, know your purpose. Is it a logical extension of a model? Is it denormalizing to simplify queries? Is it a fast-access cache for computed values? Clarity avoids bloat.
Choose a datatype that matches the use case. For integers, pick exact ranges. For text, match encoding to expected language. Use BOOLEAN when the values are binary. Never rely on defaults that hide constraints.
Plan migrations with zero downtime. Rolling out a new column requires safe deployment. Use additive changes first, populate data in batches, then update the application code to write and read. Only drop old tables or columns after confirming production data integrity.