What's the killer is all of the work _surrounding_ that small task.
Actually charging sales tax didn't long. More or less
if address.region in TAXABLE_REGIONS: subscription.sync()
What took the longest was developing and deciding how the screens surrounding will work. Answering things like:
- Which fields do we want to capture for an address? - How do we want to store states (or provinces, or prefectures) in a standardized way? - Is there a library that will let me select countries and prefectures? (Answer yes, pycountry is pretty great) - How do I integrate this library into my backend / front end?
In my mind it's just fit and finish. Like making the motherboard and inside of the case as beautiful as the outside. If I try and half-ass it or skip it, I'm just going to have to double back and make it right.
I do appreciate your final sentence. I'll keep that in mind going forward. :-)