Return-Path: Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id 35AB9B9E for ; Sun, 17 Feb 2019 18:00:34 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from jb55.com (jb55.com [45.79.91.128]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id CAB48782; Sun, 17 Feb 2019 18:00:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d= jb55.com; h=from:to:subject:date:message-id; s=default; bh=ldsvNyhscdur361y5npw9dCfOuYW2ZpxWtJEtsQsEYQ=; b=r3YTIBogAIh27Vht9Io5jnHHjjlOQkv0WuBOi0ftfgLJVhRt0lBzqQvCaX+5J9xhK0qcc9UW251mkIP9pcLt+UnihyPrSosFvtx3H+iAyuSuzP572JdI0jyq/SziHECIDYwz1z+/Oe1xFAysFY3Wyju6md0hpZMKD/30eIOSw2XprACAZchkb/GCXGzj/om8/PNoIewpVp0eNaXIm/W2DLEw/7Oayek0mgml+VjYPvv2FJ4SYxVG6HRZebngU5B87KZphulKUZBvcy5ScotFK3BiV+CqylzndO1aPmIVgFqJDQ0e75soB1AWAYo+bwGLxLBrzi6udszXjdo9Lz3miQ== Received: from jb55.com (S010660e327dca171.vc.shawcable.net [24.84.152.187]) by jb55.com (OpenSMTPD) with ESMTPSA id 46e9368c TLS version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO; Sun, 17 Feb 2019 18:00:33 +0000 (UTC) From: William Casarin To: Pavol Rusnak , Bitcoin Protocol Discussion , Luke Dashjr , Bitcoin Protocol Discussion , Steven Roose In-Reply-To: <37f1c2f8-5c2e-0224-1557-f041f4b842ca@satoshilabs.com> References: <201902151518.50135.luke@dashjr.org> <37f1c2f8-5c2e-0224-1557-f041f4b842ca@satoshilabs.com> Date: Sun, 17 Feb 2019 10:00:32 -0800 Message-ID: <87h8d2l2gv.fsf@jb55.com> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org X-Mailman-Approved-At: Sun, 17 Feb 2019 18:01:15 +0000 Subject: Re: [bitcoin-dev] NIH warning (was Re: [BIP Proposal] Simple Proof-of-Reserves Transactions) X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Bitcoin Protocol Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 17 Feb 2019 18:00:34 -0000 Pavol Rusnak via bitcoin-dev writes: > We've been using Protocol buffers in Trezor since the beginning and so > far it has proven to be as a great choice. > > While I agree it is always risky to add an exotic dependency to a > software project, this one has lots of interoperable implementations in > all possible languages you can name and it's very easy to work with. > > In the past, the Bitcoin dev community used the same arguments with > regards to PSBT and we ended up with something that is almost as complex > as protobuf, but it's de-facto proprietary to Bitcoin. > > Cherry on top is that PSBT format can be easily translated back and > forth to PB making it even more obvious that PB should have been used in > the first place. One argument against Protobuf is that people are already moving away from it in favor of FlatBuffers, Google's successor to Protobuf that doesn't require serialization/deserialization of structures. Do we really want to be chasing the latest serialization library fad each time a new one comes out? I do think there is value in having accessible serialization formats, which is why I think it's a good idea to provide custom format to protobuf conversion tools. This way users who prefer not to include large dependencies don't have to, and protobuf users can just do an extra step to convert it into their preferred format. Cheers, Will -- https://jb55.com