Hacker News new | ask | show | jobs
by shp0ngle 1381 days ago
That’s absolutely not true.

Bitcoin the app is often mixing several layers of abstractions and several usage patterns together.

Is it for actually keeping track of money? Is it for APIs? is it for end users, or for servers? Is it CLI or a GUI app?

And it’s in C++, which is almost never readable.

And of course they have their weird names for everything (all the ScriptSigs etc), and the OP script which is at the same time too complex and too simple.

It’s surprisingly robust and it survived a lot, sure; I don’t take it down on that level; but the code even today got baggage of all the weird decisions Satoshi did when he made it.

It’s really not “good code” IMO.

Although they have improved it a lot in last few years, I will give them that. It was worse…

1 comments

Yes, I would second this. It's hard to rewrite, but needs it in many places that I've read (in particular, the code to detect BIP9 etc soft fork activation is horrible).

To be fair, the slow polishing of a thousand hands continues. libsecp256k1 is tested to a level few if any FOSS libraries achieve, for example.

Yeah, the test suite is very very thorough.