• 0 Posts
  • 23 Comments
Joined 1 year ago
cake
Cake day: June 10th, 2023

help-circle



  • Oracle has a product called Oracle Policy Automation (OPA) that it sells as “you can write the rules in plain English in MS Word documents, you don’t need developers”. I worked for an insurance organization where the business side bought OPA without consulting IT, hoping they wouldn’t have to deal with developers. It totally failed because it doesn’t matter that they get to write “plain English” in Word documents because they lack the structured, formal thinking to deal with anything except the happiest of happy paths.

    The important difference between a developer and a non-developer isn’t the ability to understand the syntax of a programming language. It’s the willingness and ability to formalize and crystallize requirements and think about all the edge cases. As an architect/programmer when I talk to the business side, they get bored and lose interest from all my questions about what they actually want.










  • To do that you first need to choose a calendar and a time zone, then convert to that representation. It can be done, but you need a good implementation that understands the entire history of what has transpired w.r.t. to date conventions in that location and culture. For timestamps in the future it is impossible to do correctly, since you can’t know how date conventions will change in the future.

    However, I should add that as far as mathematical operations go, calculating the number of months between t1 and t2 is an entirely different thing than the duration of time that passed between those timestamps. Even if it is expressed similarly in the English language, semantically it’s something else. It’s like asking “how many kilometers did your car go” vs “how many houses did the car pass on the way”.


  • I feel like this is a solved and simple problem as long as there are no relativistic effects. Just make sure t1 and t2 are represented as seconds since a known reference time, e.g. Unix epoch, and make sure that measure is accurate. You don’t need to bring the Gregorian calendar into it, use TAI represented as an integer.