News for hackers. Stuff that matters.
Re:An oral history of Bank Python by lmm on Thursday November 04, 2021 @10:56PM (#29114974)
> What happens if the data model needs to change?

You write conversions and there's a registry where you register them to be picked up by the unpickler. If necessary you can also customize the logic that determines which version a given pickled datum uses to deserialize. There aren't so many guardrails when you're writing that stuff, but the infrastructure does its best to support you.

> If you need to move something from db["some/path"]?

There's support for both symlinks (db["some/path"] -> db["other/path"]) and for a kind of hardlink by making both paths point to the same inode-line id. You can usually find a way to do what you need to.

> How is it coordinated at a larger scale, how does everyone know what is running and how it interacts with everything else - can you figure out what depends on an object? What if the data used by your Price(Security) object changes and breaks it?

There's a common model for the things that are shared, and that has a versioning and release/deprecation cycle. Otherwise every type has an owner and you probably had to request their permissions to read their data, so you should have a channel of communication with them. But yeah people do rely on the fundamental business entities not changing too quickly, and things do break when changes are made.

Re:An oral history of Bank Python by KMag on Saturday November 06, 2021 @01:40AM (#29127814)
There's also a graph debugger that allows you to step through the dependency graph node-by-node across the various globally distributed databases.
Re:An oral history of Bank Python by lmm on Saturday November 06, 2021 @06:38AM (#29129091)
True but not really helpful for this problem, because it can only tell you about the job you're debugging, whereas what you want to know is what code might ever depend on that data.
Re:An oral history of Bank Python by jb_s on Friday November 05, 2021 @04:49AM (#29116836)
Thanks! Interesting stuff.