logoalt Hacker News

An oral history of Bank Python (2021)

72 pointsby toshyesterday at 8:14 PM24 commentsview on HN

Comments

elemenoyesterday at 10:46 PM

To the best of my knowledge much of this originated with SecDB/Slang at Goldman - SecDB (securities db I believe) being the object store and slang the somewhat quirky C like language that ran with it (also the only language I’ve used professionally that let you have spaces in the variable names).

Some of the folk that built that (or worked on it) ended up at JPM and Merrill where they built the Python centric version - Alpha and Quartz respectively. Barclays Capital has/had a similar system as well I think, but it’s not one I know about offhand - they did though, memorably, have a system that was pretty much Haskell-in-Excel.

show 1 reply
horticulturisttoday at 1:22 AM

> This is because clients generally do not ring up about pennies.

I’ve had clients ring up about pennies… it can be crazy what some people are motivated by

show 1 reply
tsukikageyesterday at 11:47 PM

When first encountering these ecosystems and looking at the various pieces they contain, one may repeatedly ask: "why didn't they just use <off-the-shelf solution> for this problem instead of writing this component/subsystem from scratch"?

The answer is often that the battle-hardened mature off-the-shelf solution did not exist at the time the code was written. You're doing software archaeology.

show 1 reply
axusyesterday at 9:34 PM

What a well-written account of "how things are done".

> Time to drop a bit of a bombshell: the [Barbara] source code is in Barbara too, not on disk. Remain composed. It's kept in a special Barbara ring called sourcecode.

mhh__yesterday at 11:22 PM

People turning up in hedge funds (i.e. much smaller) and trying to rewrite the bit of a bank they used to work in's equivalent of this article is so annoying.

skissaneyesterday at 11:40 PM

I think it is a pity they’ll likely never open source any of this stuff

Of course, financial institutions have a lot of “secret sauce” - such as financial models - you’d never expect them to release.

But this kind of underlying infrastructure isn’t really “secret sauce”

show 4 replies
coredog64yesterday at 9:23 PM

And I thought rewriting 3rd party packages to work with AFS was crazy

Havocyesterday at 11:38 PM

I've seen similar inside large financial orgs - what struck me was how there are these huge amounts of people that spend their entire working life inside this alternate IT reality. It's not unlike SAP consultants where their skillset is tied to one company.

Also...these things tend to have fuckin terrible documentation. Good luck figuring any of this out. And you can't google it and your AI is just as lost as you

show 1 reply
roywigginsyesterday at 10:51 PM

Weirdly not dissimilar from MUMPS systems.

jgalt212today at 12:37 AM

> but the default ring is more or less a single, global, object database for the entire bank.

Is this really the case? I'm sure there are plenty of transactions that for umpteen different reasons must not be exposed on a global level.

show 1 reply
TZubiriyesterday at 8:58 PM

>Applications also commonly store their internal state in Barbara - writing dataclasses straight in and out with only very simple locking and transactions (if any).

Right out of the gates, it's crazy how this contrasts with Mercury's Haskell infra

https://blog.haskell.org/a-couple-million-lines-of-haskell/

show 2 replies
mv_d5339e31today at 1:36 AM

[dead]

Ozzie-Dtoday at 1:35 AM

[flagged]