public inbox for bitcoindev@googlegroups.com
 help / color / mirror / Atom feed
From: Jordan Mack <jordanmack@parhelic•com>
To: bitcoin-development@lists•sourceforge.net
Subject: Re: [Bitcoin-development] Lock protocol version numbers
Date: Sat, 05 Nov 2011 10:30:02 -0700	[thread overview]
Message-ID: <4EB5729A.7090205@parhelic.com> (raw)
In-Reply-To: <1320511212.70648.YahooMailNeo@web121017.mail.ne1.yahoo.com>

 > If clients break the network protocol/do not comply properly with it,
 > they should be disconnected and shunned. Hard love. We don't want any
 > ambiguity in the protocol.

 > However my feeling about the user-agent string is that it is a vanity
 > item, but here we'd be enforcing a format that everybody can
 > understand and read.

I agree with Amir completely on both these points.

With something as critical as financial transactions, no exceptions can 
be made. The reported client and version should be ignored completely. 
If a client does not comply with the protocol, they must be rejected 
outright.

It is not in the best interest, or ability, to attempt to micromanage 
how developers choose to use the information given. Recommendations and 
guidelines can be made, but how they choose to implement is ultimately 
their decision. In my opinion, clear and concise definition of the 
protocol, and strict adherence in the mainline client, are the best 
options available.

The protocol version should be indicated so that it can properly be 
handled. Neither the name of the client, or it's version, need to be 
reported in this. Protocol validation should ignore this completely.

I do not believe that leaving out the client name and version entirely 
is the best option though. As silly as it may seem to some, vanity and 
recognition are very strong motivators. We want to encourage more 
supporters to the scene, not scare them away. The additional data 
provided by this could also be used for calculating various statistics. 
It sounds like BitcoinJ and BitDroid have already found ways of adding 
it in anyway. I believe it is in the best interest of the developers to 
formalize how this information will be included, and use it to their 
advantage.

TL;DR: Adhere strictly to the protocol, and reject clients that do not. 
Add a user agent string of some kind, but keep it separate from the 
protocol version.




      reply	other threads:[~2011-11-05 17:30 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-11-02 21:23 Amir Taaki
2011-11-02 21:32 ` Christian Decker
     [not found] ` <CABsx9T0zUCu2RFC0Nc4URMtu060wyHMaebEM87in=NSiNbp=rw@mail.gmail.com>
2011-11-02 22:33   ` Amir Taaki
2011-11-02 22:42     ` Christian Decker
2011-11-02 22:58       ` Amir Taaki
2011-11-02 22:46     ` Luke-Jr
2011-11-02 22:55       ` Amir Taaki
2011-11-02 23:07         ` Luke-Jr
2011-11-02 23:22           ` Christian Decker
2011-11-03  4:46             ` Jeff Garzik
2011-11-05 14:32 ` Mike Hearn
2011-11-05 14:45   ` Christian Decker
     [not found]     ` <1320507570.40074.YahooMailNeo@web121017.mail.ne1.yahoo.com>
2011-11-05 15:39       ` Amir Taaki
2011-11-05 16:17         ` Christian Decker
2011-11-05 16:29           ` Luke-Jr
2011-11-05 16:40             ` Amir Taaki
2011-11-05 17:30               ` Jordan Mack [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4EB5729A.7090205@parhelic.com \
    --to=jordanmack@parhelic$(echo .)com \
    --cc=bitcoin-development@lists$(echo .)sourceforge.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox