Btcd: Not your mom's Bitcoin daemon
blog.conformal.com
blog.conformal.com
* I don't participate in the Bitcoin community, so I'm sorry in advance if this is an ignorant question! Congratulations to the authors - I think this is a pretty significant accomplishment regardless.
That doesn't mean every bug needs to be implemented. It's possible there are DOS or remote code execution bugs in one implementation but not another. Diversity between clients is a good thing. If such a bug is discovered in one client it won't take down the entire network (except currently the vast majority of full nodes use the original bitcoind implementation)
Various different architectures may have benefits too (e.x. I like how btcd is splitting the blockchain and wallet pieces into separate processes)
https://blog.conformal.com/btcd-a-bitcoind-alternative-writt...
* integrated test infrastructure
* no active memory management
* standard formatting
* platform independent code
* simpler parallelism
* virtually crash-proof
* built-in profiling and documentation facilities
From a development standpoint, I appreciate it from the concept of a clean refactor implementing current bitcoind features (vs. layered on over time), seemingly well-written and commented code, and introducing a heterogeneity to the bitcoin daemon world - making it a bit more resilient (potentially) against future attacks against the infrastructure.
better code that is actually readable and commented means a lower likelihood of a bitcoin daemon forking against itself. it also means that it is quicker to maintain existing code and extend it to add new features.
(And yes, I get the irony that they probably picked this headline out of fear that "not your dad's..." was sexist.)
my mom coded cobol for harris bank for many moons :)
I salute the amount of effort that's gone into this though.
Consensus requires agreement, malicious attacks are orthogonal, unless you're hypothesizing a malicious party introducing an intentionally incompatible node and a significant fraction of users switching to it.
if i run one without the bug and accept a payment, you and millions with the bug will just say "meh. this one does not match. will just drop it" and my transaction goes out of the main block.
That is not true. Gavin Andressen supports alternate implementations. Take the following quote [1]:
"Diversity is a good thing. Diverse, inter-operating implementations of the Bitcoin protocol make the network more robust against software bugs, denial-of-service attacks, and vulnerabilities. There are several projects re-implementing Bitcoin; if you are a Java or Go or Python or C programmer who wants to see Bitcoin succeed, you should consider helping them out by reviewing, testing, or contributing patches."
He then goes on to list several alternatives, including btcd.
On the flip side one could argue that diversification of implementations is key to the long-term success of Bitcoin. If, let's say, there is a serious issue with bitcoind that shows up somewhere down the road that causes a fork and it is the only implementation everyone is using, there will be a network-wide problem. If there are a number of implementations in the wild, the fork would be contained to a smaller subset of users, and managed accordingly.
Getting to this point of diversification safely is difficult, however, which is why I imagine some of the core devs might be against it. I remember Amir Taaki got a lot of flack when he came out with libbitcoin.
The phrase is a common American form of wording. "Not your mother's romance"; "Not your father's oldsmobile"; and so on.
So in this example my mother does have a bitcoin wallet but this new wallet is a bobby-dazzler.
I need to pause before posting.
I think that making an "ism" out of this headline applies. I don't know about you, but I'm not about to make language grey and boring just because certain people choose to take offense at anything and everything.
Yes, I'm well aware this is hyperbole. Deal.
Having said that, the article would get more upvotes here if the headline mentioned it was written in Go. ;-)
https://news.ycombinator.com/item?id=3931048
In summary, any allusion to gender with regard to tech is inevitably interpreted as sexist by someone.
Take a different example, say you described Git as:
* a man's version control system
or let's say you described it as:
* a woman's version control system
The male/female "binary" doesn't make them opposite and using one doesn't cancel out the sexism in the other, they just are sexist in different ways.
A radical feminist programmer saying "Now THAT is a woman's version control system."
A brogrammer saying "Pshh. That's a woman's version control system."
The male/female "binary" doesn't make them opposite
Yes, you're the best kind of correct, but let's not get caught up in semantics, the binary you so aptly point out is exactly what I'm taking about, 0 is the opposite of 1, and mom is the opposite of dad.
and using one doesn't cancel out the sexism in the other, they just are sexist in different ways.
This is only true if the use of feminine and masculine descriptions when discussing tech is inherently sexist, otherwise I don't see what either headline has to do with sex. Take your logic a little bit further and you might as well label gendered pronouns as sexist since they imply the sex of the subject.
Mom is not the opposite of dad, they are just paired ideas. This isn't semantics, this is plain simple reality. We sometimes think of them as binaries but they aren't actually so.
The opposite of a Mom is a not-Mom, a concept which can include Dad but can also include a woman who hasn't had children.
"This is only true if the use of feminine and masculine descriptions when discussing tech is inherently sexist"
I wasn't arguing about anything being inherently sexist, I was arguing that it was contextually sexist. If you don't understand that words have connotations, people's reactions to sexism will always seem mysterious and arbitrary to you.
"Take your logic a little bit further and you might as well label gendered pronouns as sexist since they imply the sex of the subject"
You obviously don't understand my logic and are arguing about something completely different.
It's earlier though (next weekend).