• 0 Posts
  • 88 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. They still 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.






  • The catch is that they all need to run in the same transaction to be unaffected by other things going on in the database and to make updates atomic. A single transaction means a single connection, and ODBC/JDBC has no way of multiplexing or pipelining queries over a single connection.

    It’s probably theoretically possible to run some things in different transactions. But with all the different layers and complexity of the code (including third party components and ORMs like Hibernate), understanding all the failure modes and possible concurrency issues becomes intractable.


  • I work for a company that has operated like this for 20 years. The system goes down sometimes, but we can fix it in less than an hour. At worst the users get a longer coffee break.

    A single click in the software can often generate 500 SQL queries, so if you go from 0.05 ms to 1 ms latency you add half a second to clicks in the UI and that would piss our users off.

    Definitely not saying this is the best way to operate at all times. But SQL has a huge problem with false dependencies between queries and API:s that make it very difficult to pipeline queries, so my experience has been that I/O-bound applications easily become extremely sensitive to latency.





  • I don’t think it’s a big deal where you start. The latest iteration of Riven will likely be the most accessible and that’s probably what matters most if you’re just starting out.

    Much of the appeal (for me at least) is that the storyline is a Tolkien-like epic story spanning thousands of years. Myst takes place before Riven, and if you wanted to consume it in chronological order you would start by reading the books (which are surprisingly good). But it’s fine to go back and “fill in the blanks” if you play in a different order. It’s like reading The Hobbit after you read The Lord of the Rings trilogy.

    Also note that Riven and Riven 2024 are the same story so there’s no need to play both of them. Same with Myst, just pick the most modern iteration of it. The versions that allow you to move and look around freely take away a lot of frustration with trying to make out what the world looks like and finding clues.