3 ms·
Building software is typically a process of discovery. Usually you don’t know beforehand exactly what code you need to write, even if it was crystal clear what
by metafunctor 5y ago
Building software is typically a process of discovery. Usually you don’t know beforehand exactly what code you need to write, even if it was crystal clear what the requirements are. So as you explore the space of programs that solve your problem at hand, you end up programming yourself into several branches which become obsolete as you learn more about what you are actually doing. Over time, the requirements also usually change a bit.
Experience helps to avoid some of those obsolete branches.