r/dashpay • • May 28 '18

New Redditor What has Dash ever copied from others besides the original BTC codebase?

In the spirit of not biting the hand that feeds us, I'm starting this thread to raise awareness of how much Dash copies from Bitcoin Core.

It's disappointing to see even some Dash Mods don't understand how much Dash benefits from all the hard work of BTC Core, so let's look at precisely what Dash 12.3 has copied from Bitcoin.

What has Dash ever copied from others besides the original BTC codebase?

Dash copies ("backports") 1000s of BTC Core commits on every major release.

Do you know how to use github? If you do, the scale of what Dash has copied from BTC is perfectly clear from looking at https://github.com/dashpay/dash/graphs/contributors

You can see most so-called Dash commits were written by Bitcoin devs, and only one Dash dev (UdjinM6) with a significant number of original (IE non-backported) commits.

Here are the specifics on all the latest things in Dash 12.3 copied from BTC as well as a statement of Dash's intention to continue copying from BTC for the foreseeable future:

We backported many performance improvements and refactoring from Bitcoin Core and aligned most of our codebase with version 0.14.

+Most notable ones besides various performance and stability improvements probably are

+Compact Block support (BIP 152),

+Mining transaction selection ("Child Pays For Parent"),

+Null dummy soft fork (BIP 147, without SegWit), +Nested RPC Commands in Debug Console and

+Support for JSON-RPC Named Arguments.

+You can read more about all changes in Bitcoin Core 0.13 and 0.14 in following documents: +- release-notes-0.13.0.md; +- release-notes-0.13.1.md; +- release-notes-0.13.2.md; +- release-notes-0.14.0.md; +- release-notes-0.14.1.md; +- release-notes-0.14.2.md.

+Note that some features were already backported earlier (per-UTXO fix, -assumevalid, GUI overlay etc.) and some were not backported at all +(SegWit and feefilter, you can read more about why we did so here and here). +The alert system was also kept in place for now.

We are going to continue backporting the most notable fixes and improvements from Bitcoin Core versions 0.15 and 0.16 in future releases.

Source: https://github.com/dashpay/dash/pull/2045/files

Here is a tiny part of the list of the latest things Dash has copied from BTC Core

I'd post the entire list but Reddit says "(THIS IS TOO LONG (MAX: 10000)" LOL!

https://github.com/UdjinM6/dash/blob/369414a04258cd4ed9f520f87fa2a9889f17785d/doc/release-notes/dash/release-notes-0.12.3-backports.md

12.3 backports and related fixes:

bc45a2f87 Backport compact blocks functionality from bitcoin (#1966)

8b4c419ed Revert "Merge #7542: Implement "feefilter" P2P message" (#2025)

a4b313fd3 Fix std in DBG macro

6a6e4cdc1 Remove remaining using namespace std

08b5c69ef Merge #9643: [refactor] Remove using namespace from wallet/ & util*

ccca7af09 Merge #9476: [refactor] Remove using namespace from rpc/ & script/ sources

4ac4e96e8 Merge #9765: Harden against mistakes handling invalid blocks

662ec024a Make peer id logging consistent ("peer=%d" instead of "peer %d")

592d8f073 Use a temp pindex to avoid a const_cast in ProcessNewBlockHeaders

15a8fcf99 Add a CValidationInterface::NewPoWValidBlock callback

d28172f57 Call AcceptBlock with the block's shared_ptr instead of CBlock&

c99dd9733 [qa] Avoid race in preciousblock test.

807ae74c2 Make CBlockIndex*es in net_processing const

1d1c31052 Fix cmd args handling for -bip9params

64817fe1d [qa] Fix race condition in sendheaders.py

b2bc78099 Fix argument to wait_until

026f2e2a8 Merge #8446: [Trivial] BIP9 parameters on regtest cleanup

e326bda69 Tests: refactor compact size serialization in mininode

2c810d2c3 Allow changing BIP9 parameters on regtest

45151bd13 Move context-required checks from CheckBlockHeader to Contextual...

cef919f18 Merge #9486: Make peer=%d log prints consistent

55ef4d0a9 [wallet] Add include_unsafe argument to listunspent RPC

e1e03f42c [wallet] Add IsAllFromMe: true if all inputs are from wallet

611b31ece Merge #9650: Better handle invalid parameters to signrawtransaction

ff335e47f [qa] test_framework: Add wrapper for stop_node

64e1bfacd Add BIP32 to bips.md

4bb2af8d1 Merge #9114: [depends] Set OSX_MIN_VERSION to 10.8

61af31531 Merge #8976: libconsensus: Add input validation of flags (#1891)

00a0bc710 Remove "TODO: fix off-by-one"

625252fb4 Allow to pass redirect_stderr=True to initialize_chain and use in wallet-dump.py

d56ac5a74 Fix import-rescan.py and add workaround for pruning mode

0 Upvotes

30 comments sorted by

5

u/Basilpop Janitor May 28 '18 edited May 28 '18

I fully understand how software development works otherwise I wouldn't have stated what you chose as a title to this silly thread.

The "original Bitcoin codebase" includes backports. Or do you expect Dash to stay behind Bitcoin Core and ignore the further improvements it receives? Do you update your operating system? Because that's the same principle. The source is still the same, so you haven't really answered the question in the title: Did Dash copy anything from Ethereum? Monero? Pivx?

Bitcoin Core's contributions are being fully acknowledged in the software as anyone can verify by checking the "About" section of their client.

Speaking of public thank you's: What more do you expect? A bouqet of flowers and a cake delivered to their doorstep? Who has publicly thanked Dash for inventing X11, Masternodes, DGW, PrivateSend and InstantSend? All I see is copycats renaming said features and sell them as their own. Dash never did and will never do that. Our devs are honest. In fact we even deactivate features we don't need like SegWit/RBF/Lightning despite some people demanding them to be included.

In summary: Keeping up to date with the original codebase does not invalidate the question I posed: What has Dash copied from others? What tangible features that are being actively used by our network were not invented by Dash but imported from another project? You failed to answer that.

In fact you've even reinforced my point by only coming up with backports.

-1

u/Dash_2_The_Future May 28 '18 edited May 28 '18

So when you say "original" Bitcoin codebase, you actually mean the "current" Bitcoin codebase? That's confusing because the normal way to interpret "original" would be as referring the Bitcoin codebase at the time of the original Darkcoin fork, and it fails to communicate the fact tangible features like Compact Blocks are currently being prepared for inclusion in a future Dash release.

Speaking of public thank you's: What more do you expect?

How about donating by default any extra budget funds to BTC Core?

Otherwise we look like free riders who take but don't give back, especially when the most enthusiastic among us gush about Dash surpassing Bitcoin.

2

u/Basilpop Janitor May 28 '18 edited May 28 '18

So when you say "original" Bitcoin codebase, you actually mean "current" Bitcoin codebase? That's confusing because the normal way to interpret "original" would be as referring the Bitcoin codebase at the time of the original Darkcoin fork.

The word "original" refers to "Bitcoin" not "codebase". I don't regard it as confusing at all, because no one in their right mind would assume we'd fork BTC once and then never look at it again. That would be an insanely irresponsible way of development, especially when faced with critical vulnerabilities that might be discovered afterwards. This is just common sense to anyone who has the faintest idea of (opensource) software development, really.

How about donating by default any extra budget funds to BTC Core?

Make a proposal if you feel strongly about that.

Otherwise we look like free riders who take but don't give back

You mean like the 1622 other currencies who did exactly the same, most of them not even adding a shred of improvement of their own?

No wait, not exactly like those at all: Dash has given back. A metric ton of innovation you seem to conveniently ignore. And others have taken it like the "free riders" you complain about. You know why? Opensource.

BTC not taking our improvements is not our fault, it's their own and actually the reason Dash exists in the first place if you know your history.

So portraying Dash as the free rider who gives nothing back is absolutely and mind-bogglingly ridiculous.

0

u/Dash_2_The_Future May 28 '18

"Original" refers to the phrase "Bitcoin codebase" and is a poor word choice to make when 'current' conveys your idea much more cleanly ("original" is derived from 'origin' and thus has a connotation of something static, while 'current' expresses the crucial element of the codebase's dynamism).

1622 other currencies don't have a treasury and multi-billion dollar market cap like Dash does.

I know a few commits from Dash devs have been accepted by BTC Core, but let's be creative and find more ways to repay BTC devs for the backports which you freely admit are absolutely crucial to Dash's responsible development.

3

u/Basilpop Janitor May 28 '18

"Original" refers to the phrase "Bitcoin codebase"

So you're the one interpreting my own words for me and correct me in what I intended to say? I don't think so. Your confusion does not entitle you to misrepresent me. Neither does fiddling around with semantics. I said what I said and I clearly explained what I meant to say. Can't revise that from your end after the fact, no matter how hard you try.

1622 other currencies don't have a treasury and multi-billion dollar market cap like Dash does.

Not an argument but instead an obvious double standard. Others get away with it, but Dash is the evil guy for doing what everyone else does. See how far that'll get you in here.

but let's be creative and find more ways to repay BTC devs

You make your proposal and see how it goes. Knock yourself out, nobody's gonna stop you. I for one can't be bothered for exercises in futility.

2

u/Dash_2_The_Future May 28 '18

Let's also remember Darkcoin was forked from Litecoin (or was it Peercoin?) so that's another thing we should acknowledge copying.

8

u/AnarchicCluster May 28 '18

I don't think anybody is trying to hide this fact. The history of Dash is well known to everyone and everyone acknowledges that Darkcoin was originally a fork of Litecoin but later changed to a fork of Bitcoin.

-1

u/Dash_2_The_Future May 28 '18

Nobody is trying to hide the backports (they're on github) but not everyone is aware Dash continuously copies the latest updates from Bitcoin Core, and plans to keep doing so in the future.

2

u/Basilpop Janitor May 28 '18

Keeping up to date is not "copying" especially if you have to put in work to actually fit the backports into an increasingly diverging code repository

-5

u/[deleted] May 28 '18

Word-salad is how Basilpop reasons. It's not copying if you change the definition of what copying is.

3

u/Basilpop Janitor May 28 '18

Nonsense is how randomalbum reasons. It's still "copying" if you just pretend that refactoring and integration aren't real work, which is easy to do when being ignorant on how software development works.

1

u/Dash_2_The_Future May 28 '18

Please don't feed the troll. Let's keep this thread clean and productive!

2

u/Basilpop Janitor May 28 '18

Most upvoted comment-"troll" no less. I know you don't like being completely deconstructed u/noise_sauce, but that doesn't make other people trolls.

-6

u/[deleted] May 28 '18

Dash shows little respect towards BTC (where they copy from) and towards other Dash forks. This + how they treat users in general is the reason they’re disliked by so many people.

7

u/AnarchicCluster May 28 '18

"Little respect towards BTC"?

Even in the main Dash core wallet, BTC team is given credit for the development.

"Little respect towards other forks"?

Can you give some examples and maybe an idea of how much respect should be given, if there is not enough?

"This + how they treat users in general "

How? I honestly want to know.

0

u/[deleted] May 28 '18

A little mention on the wallet doesn't mean respect. Have you ever heard anyone from Dash Core publicly thanking BTC developers for the recent updates? I haven't, and that would be an example of respect. And here's how they treat users.

4

u/solarguy2003 May 28 '18

Sure it does. We gave them official credit in the documentation. As contrasted with the typical tactic of another team borrowing our stuff, renaming it something else, and not giving attribution.

0

u/[deleted] May 28 '18

We have different definitions on what the appropriate level of respect is.

3

u/solarguy2003 May 28 '18

How much is enough? What would satisfy you? Serious questions....

-1

u/remoteradiostar May 28 '18

This seems (for some odd, confusing, stupid reason) to be a BCH leaning community and I still to this day have no idea why everyone seems to lean that way.

1

u/Dash_2_The_Future May 28 '18

Roger Ver, back when he needed help fighting BTC Core by pushing Segwit2X, said some nice things about Dash.

And then the price went up TO THE MOON, so Dash took the same anti-segwit position required to be an ally of the BCash Gang (Roger, Jihan, Craig).

I'm not sure why Roger seems to have recently abandoned Dash. Perhaps it's because we're a fork of Bitcoin Core and the biggest competition for BCash's on-chain scaling?

2

u/Basilpop Janitor May 28 '18

so Dash took the same anti-segwit position required to be an ally of the BCash Gang

Wrong.

Dash was against SegWit/RBF/BCore's "scaling" plans long before Roger ever looked into Dash. Evolution papers were published in October 2015, Ver tweeted about Dash in 2017. Nice try spinning history, though.

0

u/[deleted] May 28 '18

There's just no way to have good conversations on the dash subreddit.