My company has been commissioned to “spring-clean” the first website I ever coded.
I’ve been wanting to do this for ages, the code is atrocious, very embarrassing to have up in public. This work is being done in tandem with the development of a new site for one of their partner organizations. The new site will be database driven and designed from scratch. It’s good to have this opportunity to revisit a site as it means that the finished product will be fit for showing around at last.
It’s not good when a job has been finished and over time you realise that there was a better way of doing it. Because it’s been handed over you are not in a position to change anything but the most basic parts of it. As with all jobs there has to be a point at which you say “it’s finished” and let it out the door. Or perhaps “at this point, it’s good enough to release”, the QA balance has tipped over into client-ready. You could spend forever tweaking it, or waiting until your knowledge extends so that you are able to do it differently/better, but scheduling would then be impossible.
There’s always a cut off point where a project has to finish, even if the definition of the term can be ambiguous. Anyway, if we’re fortunate we can always revisit a project and apply the knowledge learned in the interim.