I think this is quite generally a quality feature for web apps and dynamic web interfaces, that should always be considered.
If they get too large/unwieldy there is always the option to use base64 encoding or other formats and tricks. Human readable URLs are always nice but I rather have something ugly than no URL state at all in many cases.
If the output changes frequently over time, so it might get stale, then one can still add a timestamp and an additional warning in the UI with a link to recent data.
What I'm saying is that there is rarely a good excuse to not do this.
In fact I think when I haven't been following this principle it was typically due to self-inflicted, bad decisions paired with time constraints.
I think this is quite generally a quality feature for web apps and dynamic web interfaces, that should always be considered.
If they get too large/unwieldy there is always the option to use base64 encoding or other formats and tricks. Human readable URLs are always nice but I rather have something ugly than no URL state at all in many cases.
If the output changes frequently over time, so it might get stale, then one can still add a timestamp and an additional warning in the UI with a link to recent data.
What I'm saying is that there is rarely a good excuse to not do this.
In fact I think when I haven't been following this principle it was typically due to self-inflicted, bad decisions paired with time constraints.