joinmarket icon indicating copy to clipboard operation
joinmarket copied to clipboard

Change name of tumbler

Open chris-belcher opened this issue 9 years ago • 25 comments

Turns out the word tumbler used to refer to improving bitcoin privacy dates back to the old silk road marketplace. This is not really the image we want to show.

Tumbler.py needs a new name. Something which doesn't allude to money laundering or any other criminal activity.

For example if someone's bitcoins get rejected with the message "Your coins were used for criminal activity X transactions ago and are therefore tained" they need to know that this bot can solve their problem.

Ideas: privacy-o-matic.py, multijoin.py, unlink-coins.py, multiple-coinjoin.py

chris-belcher avatar Sep 20 '15 15:09 chris-belcher

In the bitcoin classes I teach (including law enforcement), I use the term "Dry cleaning" when mixing for privacy, as opposed to "money laundering" to hide the source of funds from illicit activity.

I vote for drycleaner.py!

JulianTosh avatar Sep 20 '15 15:09 JulianTosh

A simpler "cleaner.py" can even be good :)

HostFat avatar Sep 20 '15 15:09 HostFat

That's not a bad idea, or even coin-cleaner.py to allude to coin collectors polishing their stack. It's very useful to get views from people who talk to the general public about bitcoin.

chris-belcher avatar Sep 20 '15 15:09 chris-belcher

How about fung.py as in fungible?

  • Sent from a superior 9.5 cubic inch Android mobile computing device. On Sep 20, 2015 8:14 AM, "chris-belcher" [email protected] wrote:

That's not a bad idea, or even coin-cleaner.py to allude to coin collectors polishing their stack.

— Reply to this email directly or view it on GitHub https://github.com/chris-belcher/joinmarket/issues/238#issuecomment-141795988 .

JulianTosh avatar Sep 20 '15 15:09 JulianTosh

Few people know what fungibility is, it seems too academic I think.

chris-belcher avatar Sep 20 '15 15:09 chris-belcher

The name cleaner.py could also allude to money laundering, although not very much.

chris-belcher avatar Sep 20 '15 16:09 chris-belcher

untrace(r).py

disorder.py

entropy.py

disarray.py

crumble(r).py

stumble(r).py

tailsjoin avatar Sep 20 '15 18:09 tailsjoin

untracer.py is good out of those, describes what the script does.

Maybe for the some of the others, transform the name into a verb.

disorderer.py entropy-increaser.py disarrayer.py

chris-belcher avatar Sep 20 '15 23:09 chris-belcher

One more shot at fungibility angle...

Fungi.py (fun-jih-pie)

A pythonic play on fungify.py

  • Sent from a superior 9.5 cubic inch Android mobile computing device. On Sep 20, 2015 4:08 PM, "chris-belcher" [email protected] wrote:

untracer.py is good out of those, describes what the script does.

Maybe for the some of the others, transform the name into a verb.

disorderer.py entropy-increaser.py disarrayer.py

— Reply to this email directly or view it on GitHub https://github.com/chris-belcher/joinmarket/issues/238#issuecomment-141843773 .

JulianTosh avatar Sep 20 '15 23:09 JulianTosh

Even so @JulianTosh if someone comes to JoinMarket wondering how to do a tumble of their coins, they will probably ask themselves what on earth fungibility and fungi.py is, those words are hardly ever used outside of finance and economics.

chris-belcher avatar Sep 20 '15 23:09 chris-belcher

So what is the point of changing the name? Is it is to get away from a negative image like money laundering? Then what better way than to teach people what they should know, understand, and for the real, underlying premise? Should they never learn what fungibility means because they don't already?

Mixing bitcoins results in the very definition of fungibility.

  • Sent from a superior 9.5 cubic inch Android mobile computing device. On Sep 20, 2015 4:35 PM, "chris-belcher" [email protected] wrote:

Even so @JulianTosh https://github.com/JulianTosh if someone comes to JoinMarket wondering how to do a tumble of their coins, they will probably ask themselves what on earth fungibility and fungi.py is, those words are hardly ever used outside of finance and economics.

— Reply to this email directly or view it on GitHub https://github.com/chris-belcher/joinmarket/issues/238#issuecomment-141845181 .

JulianTosh avatar Sep 20 '15 23:09 JulianTosh

I also think that untracer.py is good and easy to understand :)

HostFat avatar Sep 20 '15 23:09 HostFat

@JulianTosh Yes, the point is to rebrand it. Teaching people is probably counterproductive, people are mostly lazy or time-stressed. If you ask them to learn things they're more likely to be frustrated and stop, after all they just want to get their job done.

chris-belcher avatar Sep 21 '15 00:09 chris-belcher

untaint.py

adlai avatar Sep 21 '15 00:09 adlai

Since we're all having fun here I'll resubmit my suggestion of 'taint-thinner.py' :)

AdamISZ avatar Sep 21 '15 16:09 AdamISZ

taint-cleaner.py ;)

tailsjoin avatar Sep 21 '15 17:09 tailsjoin

I don't think the word taint is good. The word 'taint' comes from blockchain.info's explorer, it's never been entirely clear whether taint means anything at all. Now tools are more likely to look at the closure, as in this tool http://nullrefer.com/?https://www.elliptic.co/intelligence/ or they may correlate amount sizes.

Also people who are new to bitcoin may have no idea what taint means in this context.

What about allusions to cleaning against disease? disinfect.py, purify.py, sterlize.py

Or even allusions to historical revisionism: forget.py, fresh-start.py, disremember.py forgive.py, pardon.py

Right now I'm thinking untracer.py cleaner.py or with coin- added are the best.

chris-belcher avatar Sep 23 '15 15:09 chris-belcher

I've just learned that 'mixing' is a common terminology in crypto ,and not specific to tumbling

see https://en.wikipedia.org/wiki/Mix_network

so mixer.py ?

chris-belcher avatar Sep 27 '15 14:09 chris-belcher

mixer/ing still brings the idea of money laundering to mind.

since you are on the crypto route, what about

hasher.py inputhasher.py bithasher.py

  • Sent from a superior 9.5 cubic inch Android mobile computing device. On Sep 27, 2015 7:35 AM, "chris-belcher" [email protected] wrote:

I've just learned that 'mixing' is a common terminology in crypto ,and not specific to tumbling

see https://en.wikipedia.org/wiki/Mix_network

so mixer.py ?

— Reply to this email directly or view it on GitHub https://github.com/chris-belcher/joinmarket/issues/238#issuecomment-143563234 .

JulianTosh avatar Sep 27 '15 14:09 JulianTosh

I like mixer.py. We should keep it simple. @JulianTosh I like your ideas, but I fear most people will not understand what its use is without explanation. That explaining will become exhausting, and is unneeded.

Honestly, I prefer tumbler or mixer to any other suggestion as people know what they are referring to. Regardless of their origin, we are still at a time where we can sway public perception of such things quite easily.

tailsjoin avatar Sep 27 '15 17:09 tailsjoin

Inspired by #244, maybe we should consider blender.py.

tailsjoin avatar Sep 28 '15 14:09 tailsjoin

mixer / blender is fine :)

yhaenggi avatar Sep 28 '15 15:09 yhaenggi

During refactoring, I came across an apparently well known problem with naming. I could describe it but, I think the following one-line in irc posted by pigeons says it all

16:06 <pigeons> try-and-raise-yield-with-class-or-not.py ;)

So, yield-generator.py is a double offender. But we have multiple with '-' (interpreted as subtraction) and, yeah, I guess we want to avoid substrings in the example above.

I made the temporary executive decision of changing dashes to underscores and changing yield to btc but I'm definitely not happy with the latter.

ghtdak avatar Dec 15 '15 00:12 ghtdak

I'd caution against removing the word yield. It's a well-defined and commonly-understood word from investing/finance. Even though yield is a reserved word in python, yield_generator is not. Keep it yield_generator IMO, or even yieldgenerator.

If not yield, maybe try the word "growth", so bitcoin_grower.py or grow_bitcoins.py. Or return, as in return-on-capital, but then again return is a reserved word too.

chris-belcher avatar Dec 16 '15 00:12 chris-belcher

I realize that this discussion stopped in 2015, but I'd like to cast a vote for "scheduler" anyway.

All the tumbler script does—and yes, it is still called that—is schedule multiple coinjoins. The code references "schedule" in many places and it is even referred to as "scheduler" in one comment.

Seven years on, and "tumbler" is still kinda bad for all the reasons outlined above.

dergigi avatar Apr 14 '22 14:04 dergigi