An upgrade that had to carry a custom availability feature
A volunteer group used its forum to record who was available. Moving to a current phpBB meant building that feature again as an extension, because the modification it was written as had no way forward.
The objective
The group uses the forum to know who can turn out, so the availability function is the reason the board exists, not something bolted on top of it.
It had been built as a modification against an old phpBB version, which means code edited straight into the software. There's no upgrade path for that. On a current version the feature has to be written again as an extension.
The old board and the new one were with different hosting companies, which came up partway through, so both had to be reachable.
What I did
I looked at the existing forum first and quoted the version upgrade and the rebuild as one price, so the client knew the feature was included instead of finding out later it was extra.
I rebuilt the availability function as an extension for the current version, including the export the group relies on.
When they offered access to the new hosting, I told them I didn't need it yet and asked for it at the point it was actually needed.
I gave a delivery window that accounted for days I wouldn't be working, rather than a best case, and asked them to name a price they thought was fair.
And I handled the smaller things after go-live, including putting their own logo back in place of the default one.
The result
The group's availability chart works on a current phpBB and exports the way it did before. Eight orders with this client over four years.
“We have done a few projects together and I can say that this guy is very patient, reliable and technically sound!”