Coding? Psh, that's the easy bit!
What's difficult is management of expectations.
Have you ever shown a manager a page where you've built the interface, and they've thought that you've built the whole system? They've assumed that validation, security, and all user journey are in place? Yes?
Well, it need never happen again!
With Scrapper.js, it's really clear when an element isn't complete! All you need to do is put class="scrapper" on an element and it will look like a scrap of paper rather than a slick element!
We've done a bit of work on this part of the page! It's basically doing what we want, but we don't feel happy with it yet. As professionals, we can't say it's finished.
In fact, the client hasn't fed back on it yet! How CAN such a thing be FINISHED?!
Our unit test coverage on this feature is only 70%. We WERE using TDD, but then we introduced a new library and we got a bit behind. We're sorting it, honest!
It's all tested, it's all working! We're happy that it's secure, unit tested, functionally tested, and passes all static analysis.
It has integration tests that satisfy ALL user journeys! The client's been involved since day 1, and this is DONE!
Yep, we sign off on this part of the page, for sure!
This bit is totally not ready
Whereas this bit pulls from the database just fine
but the form is not!