Hacker News new | ask | show | jobs
by KirinDave 3177 days ago
Having worked in the financial industry, your view of it is what we'd call, "50,000" feet.

I don't think it reflects reality on the ground, nor does it really reflect how humans in groups make decisions according to research.

The message network loop issue isn't even an issue for message passing systems except in the most pathological cases (where it results in an unbounded growth in messages or an infinite delta on the values the algorithm calculates.

1 comments

I'm not saying the finance system doesn't work, it obviously does, and amazingly well. I'm just pointing out the weaknesses of the system, and these weaknesses could easily cause humanity to walk off a cliff.

I also have a finance background. This idea that the system is a kind of message passing is not a "50,000 feet" idea, it actually came to me from writing algorithms to arbitrage markets. There you really are performing message passing (think of forex legs.) It's Dijkstra's algorithm. So this is the view from 50,000 nano-seconds. But I believe it holds for many other scales. Plenty of people walk into the supermarket and buy the product with minimum cost. Yes? How is this a view from "50,000 feet"? But obviously we are not just min-sum automata: we are all free agents, and so on.

> how humans in groups make decisions according to research

Well this is obviously a huge topic.

> message network loop issue isn't even an issue for message passing systems except in the most pathological cases

I totally disagree with this. Short loops completely screwup message passing.

> I'm not saying the finance system doesn't work, it obviously does, and amazingly well. I'm just pointing out the weaknesses of the system, and these weaknesses could easily cause humanity to walk off a cliff.

I actually think the system is fantastically broken and produces nonsensical outputs quite often. For example, it rewards speculation in the absence of measurable outcome but demands measurable value to speculate.

> There you really are performing message passing (think of forex legs.) It's Dijkstra's algorithm.

I think you're confusing a model you use for the reality at hand though.

> Short loops completely screwup message passing.

If short loops screw up your data other than the ways I described then your system lacks idempotency guarantees and has a much larger problem.

If you're that suceptible to replays then your architecture is somewhat antiquated. Even mass market products like SQS and RabbitMQ make it fairly approachable to model a message passing system across a central linearize queue and correct these issues.

If you're not centralizing, then your system needs more sophistication but it is even more important that replays don't cause issues because you're essentially guaranteed to get them.

Don't get me wrong; bugs exist. But it sounds more like design features and flaws you're describing.