summaryrefslogtreecommitdiff
path: root/94/0ed2accb2bd9b0e9e6af73d1a10dacc08ca343
blob: 2eebaa355a92be6e4127d4f00b3cadc8bf2faf4d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
Received: from sog-mx-4.v43.ch3.sourceforge.com ([172.29.43.194]
	helo=mx.sourceforge.net)
	by sfs-ml-4.v29.ch3.sourceforge.com with esmtp (Exim 4.76)
	(envelope-from <bpcamac@gmail.com>) id 1Ud1H2-0004DY-KW
	for bitcoin-development@lists.sourceforge.net;
	Thu, 16 May 2013 16:43:24 +0000
Received-SPF: pass (sog-mx-4.v43.ch3.sourceforge.com: domain of gmail.com
	designates 209.85.160.44 as permitted sender)
	client-ip=209.85.160.44; envelope-from=bpcamac@gmail.com;
	helo=mail-pb0-f44.google.com; 
Received: from mail-pb0-f44.google.com ([209.85.160.44])
	by sog-mx-4.v43.ch3.sourceforge.com with esmtps (TLSv1:RC4-SHA:128)
	(Exim 4.76) id 1Ud1H1-0002fi-Fs
	for bitcoin-development@lists.sourceforge.net;
	Thu, 16 May 2013 16:43:24 +0000
Received: by mail-pb0-f44.google.com with SMTP id wz17so2482670pbc.31
	for <bitcoin-development@lists.sourceforge.net>;
	Thu, 16 May 2013 09:43:17 -0700 (PDT)
X-Received: by 10.68.1.34 with SMTP id 2mr11687046pbj.3.1368722597615;
	Thu, 16 May 2013 09:43:17 -0700 (PDT)
Received: from [192.168.1.176] ([208.186.200.18])
	by mx.google.com with ESMTPSA id lq4sm8181917pab.19.2013.05.16.09.43.15
	for <multiple recipients>
	(version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128);
	Thu, 16 May 2013 09:43:16 -0700 (PDT)
Content-Type: multipart/alternative;
	boundary="Apple-Mail=_497B0A84-10F3-49E2-87EA-58228AA1FBD2"
Mime-Version: 1.0 (Mac OS X Mail 6.3 \(1503\))
From: Brenton Camac <bpcamac@gmail.com>
In-Reply-To: <20130516100206.82680@gmx.com>
Date: Thu, 16 May 2013 09:43:14 -0700
Message-Id: <6645EE84-9A7E-41E3-A592-4EBC9A56DFD6@gmail.com>
References: <20130516100206.82680@gmx.com>
To: bitcoingrant@gmx.com
X-Mailer: Apple Mail (2.1503)
X-Spam-Score: -0.6 (/)
X-Spam-Report: Spam Filtering performed by mx.sourceforge.net.
	See http://spamassassin.org/tag/ for more details.
	-1.5 SPF_CHECK_PASS SPF reports sender host as permitted sender for
	sender-domain
	0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider
	(bpcamac[at]gmail.com)
	-0.0 SPF_PASS               SPF: sender matches SPF record
	1.0 HTML_MESSAGE           BODY: HTML included in message
	-0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from
	author's domain
	0.1 DKIM_SIGNED            Message has a DKIM or DK signature,
	not necessarily valid
	-0.1 DKIM_VALID Message has at least one valid DKIM or DK signature
	0.0 LOTS_OF_MONEY          Huge... sums of money
X-Headers-End: 1Ud1H1-0002fi-Fs
Cc: bitcoin-development@lists.sourceforge.net
Subject: Re: [Bitcoin-development] Modularizing Bitcoin
X-BeenThere: bitcoin-development@lists.sourceforge.net
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: <bitcoin-development.lists.sourceforge.net>
List-Unsubscribe: <https://lists.sourceforge.net/lists/listinfo/bitcoin-development>,
	<mailto:bitcoin-development-request@lists.sourceforge.net?subject=unsubscribe>
List-Archive: <http://sourceforge.net/mailarchive/forum.php?forum_name=bitcoin-development>
List-Post: <mailto:bitcoin-development@lists.sourceforge.net>
List-Help: <mailto:bitcoin-development-request@lists.sourceforge.net?subject=help>
List-Subscribe: <https://lists.sourceforge.net/lists/listinfo/bitcoin-development>,
	<mailto:bitcoin-development-request@lists.sourceforge.net?subject=subscribe>
X-List-Received-Date: Thu, 16 May 2013 16:43:24 -0000


--Apple-Mail=_497B0A84-10F3-49E2-87EA-58228AA1FBD2
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=windows-1252

It would be nice if that modularization effort would first and foremost =
focus on defining the protocols and APIs of the various modules (their =
responsibilities and patterns of interaction), rather than merely =
refactoring existing code.

Such an approach has many benefits. =20

First, it promotes diversity of implementations.  Diverse =
implementations are now possible because the correctness of an =
implementation is now determined entirely by the compliance of its =
external behavior with the stated protocols and not its internal design. =
Thus this approach allows for equivalent but alternate implementations. =
Consequently, this approach -

1. increases the available pool of developers
2. reduces the impact any one implementation defect can have on the =
overall Bitcoin infrastructure
3. allows enhancement/optimization work of modules to proceed more =
easily as coupling with external modules is reduced

Second, and just as important, it allows analysis and critiquing of =
Bitcoin's infrastructure to be undertaken at a higher level than source =
code: i.e. abstract entities of the protocols and APIs.  Such scrutiny =
is important to being able to effectively manage the evolution of a =
system's architecture.

Its been my first-hand experience across many projects that this =
strategy contributes directly to significant improvements to quality =
when developing large, distributed, complex software systems.  Indeed, =
its considered a best practice when developing enterprise-grade =
software.

I would be happy to collaborate with others in such an undertaking.

- Brenton



On May 16, 2013, at 3:02 AM, bitcoingrant@gmx.com wrote:

> One of the primary upcoming priorities for bitcoin=92s infrastructure, =
beyond the bloom filter, will be the continued modularization of the =
system.
> Here at the Bitcoin Grant, we would like to jump start this =
development with a financial incentive and initiate an ongoing =
conversation on how we can work together towards developing a smarter, =
more efficient system of tomorrow, today.
> Up for grabs: 500 bitcoins or $500,000; whichever is greater.
> Taking on a project of this scope is a highly intensive, technical =
undertaking and we believe excellent developers should be compensated as =
such, especially when it comes to open source projects.
> One of the main goals will be to separate the wallet from the node, as =
we have already done with mining. This way, the wallet, which will only =
hold private keys and create transactions, would pass transactions =
directly to a relay node, based on the bloom filter. Meanwhile, the =
block node will maintain the block chain and validate and relay new =
blocks.
> Such developments would significantly strengthen the system. =
Modularization would make cancer attacks less likely and increase the =
node count, which, currently, is fairly low.
> This is by no means is a feature request, merely ideas as to initiate =
a discussion. We welcome any feedback or suggestions. And of course, let =
us know if you would like to contribute to this project by submiting a =
grant proposal.
> http://bitcoingrant.org
> =20
>=20
>   =
--------------------------------------------------------------------------=
----
> AlienVault Unified Security Management (USM) platform delivers =
complete
> security visibility with the essential security capabilities. Easily =
and
> efficiently configure, manage, and operate all of your security =
controls
> from a single console and one unified framework. Download a free =
trial.
> =
http://p.sf.net/sfu/alienvault_d2d________________________________________=
_______
> Bitcoin-development mailing list
> Bitcoin-development@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/bitcoin-development


--Apple-Mail=_497B0A84-10F3-49E2-87EA-58228AA1FBD2
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=windows-1252

<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html =
charset=3Dwindows-1252"><meta http-equiv=3D"Content-Type" =
content=3D"text/html charset=3Dwindows-1252"></head><body =
style=3D"word-wrap: break-word; -webkit-nbsp-mode: space; =
-webkit-line-break: after-white-space; ">It would be nice if that =
modularization effort would first and foremost focus on defining the =
protocols and APIs of the various modules (their responsibilities and =
patterns of interaction), rather than merely refactoring existing =
code.<div><br></div><div>Such an approach has many benefits. =
&nbsp;</div><div><br></div><div>First, it promotes diversity of =
implementations. &nbsp;Diverse implementations are now possible because =
the correctness of an implementation is now determined entirely by the =
compliance of its external behavior with the stated protocols and not =
its internal design. Thus this approach allows for equivalent but =
alternate implementations. Consequently, this approach =
-</div><div><br></div><div>1. increases the available pool of =
developers</div><div>2. reduces the impact any one implementation defect =
can have on the overall Bitcoin infrastructure</div><div>3. allows =
enhancement/optimization work of modules to proceed more easily as =
coupling with external modules is =
reduced</div><div><br></div><div>Second, and just as important, =
it&nbsp;allows analysis and critiquing of Bitcoin's infrastructure to be =
undertaken at a higher level than source code: i.e. abstract entities of =
the protocols and APIs. &nbsp;Such scrutiny is important to being able =
to effectively manage the evolution of a system's =
architecture.</div><div><br></div><div>Its been my first-hand experience =
across many projects that this strategy contributes directly to =
significant improvements to quality when developing large, distributed, =
complex software systems. &nbsp;Indeed, its considered a best practice =
when developing enterprise-grade software.</div><div><br></div><div>I =
would be happy to collaborate with others in such an =
undertaking.</div><div><br></div><div>- =
Brenton</div><div><br></div><div><div><br></div><div><br><div><div>On =
May 16, 2013, at 3:02 AM, <a =
href=3D"mailto:bitcoingrant@gmx.com">bitcoingrant@gmx.com</a> =
wrote:</div><br class=3D"Apple-interchange-newline"><blockquote =
type=3D"cite"><span style=3D"font-family:Verdana"><span =
style=3D"font-size:12px"><span style=3D"background-color: rgb(255, 255, =
255); font-family: 'Lucida Grande', Verdana, Arial, Helvetica, =
sans-serif; font-size: 11px; line-height: 16px;">One of the primary =
upcoming priorities for bitcoin=92s infrastructure, beyond the bloom =
filter, will be the continued modularization of the system.</span><p =
style=3D"margin:0px; padding:0px; margin-top: 5px; margin-bottom: 5px; =
padding-top: 3px; padding-bottom: 3px; border: 0px; outline: 0px; =
font-size: 11px; vertical-align: baseline; background-image: none; =
background-color: rgb(255, 255, 255); min-width: 100%; min-height: 15px; =
font-family: 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; =
line-height: 16px;">Here at the Bitcoin Grant, we would like to jump =
start this development with a financial incentive and initiate an =
ongoing conversation on how we can work together towards developing a =
smarter, more efficient system of tomorrow, today.</p><p =
style=3D"margin:0px; padding:0px; margin-top: 5px; margin-bottom: 5px; =
padding-top: 3px; padding-bottom: 3px; border: 0px; outline: 0px; =
font-size: 11px; vertical-align: baseline; background-image: none; =
background-color: rgb(255, 255, 255); min-width: 100%; min-height: 15px; =
font-family: 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; =
line-height: 16px;"><span style=3D"margin: 0px; padding: 0px; border: =
0px; outline: 0px; vertical-align: baseline; background-image: none;">Up =
for grabs: 500 bitcoins or $500,000;&nbsp;whichever is =
greater.</span></p><p style=3D"margin:0px; padding:0px; margin-top: 5px; =
margin-bottom: 5px; padding-top: 3px; padding-bottom: 3px; border: 0px; =
outline: 0px; font-size: 11px; vertical-align: baseline; =
background-image: none; background-color: rgb(255, 255, 255); min-width: =
100%; min-height: 15px; font-family: 'Lucida Grande', Verdana, Arial, =
Helvetica, sans-serif; line-height: 16px;"><span style=3D"margin: 0px; =
padding: 0px; border: 0px; outline: 0px; vertical-align: baseline; =
background-image: none;">Taking on a project of this scope is a highly =
intensive, technical undertaking and we believe excellent developers =
should be compensated as such, especially when it comes to open source =
projects.</span></p><p style=3D"margin:0px; padding:0px; margin-top: =
5px; margin-bottom: 5px; padding-top: 3px; padding-bottom: 3px; border: =
0px; outline: 0px; font-size: 11px; vertical-align: baseline; =
background-image: none; background-color: rgb(255, 255, 255); min-width: =
100%; min-height: 15px; font-family: 'Lucida Grande', Verdana, Arial, =
Helvetica, sans-serif; line-height: 16px;"><span style=3D"margin: 0px; =
padding: 0px; border: 0px; outline: 0px; vertical-align: baseline; =
background-image: none;">One of the main goals will be to separate the =
wallet from the node, as we have already done with mining. This way, the =
wallet, which will only hold private keys and create transactions, would =
pass transactions directly to a relay node, based on the bloom filter. =
Meanwhile, the block node will maintain the block chain and validate and =
relay new blocks.</span></p><p style=3D"margin:0px; padding:0px; =
margin-top: 5px; margin-bottom: 5px; padding-top: 3px; padding-bottom: =
3px; border: 0px; outline: 0px; font-size: 11px; vertical-align: =
baseline; background-image: none; background-color: rgb(255, 255, 255); =
min-width: 100%; min-height: 15px; font-family: 'Lucida Grande', =
Verdana, Arial, Helvetica, sans-serif; line-height: 16px;"><span =
style=3D"margin: 0px; padding: 0px; border: 0px; outline: 0px; =
vertical-align: baseline; background-image: none;">Such developments =
would significantly strengthen the system. Modularization would make =
cancer attacks less likely and increase the node count, which, =
currently, is fairly low.</span></p><p style=3D"margin:0px; padding:0px; =
margin-top: 5px; margin-bottom: 5px; padding-top: 3px; padding-bottom: =
3px; border: 0px; outline: 0px; font-size: 11px; vertical-align: =
baseline; background-image: none; background-color: rgb(255, 255, 255); =
min-width: 100%; min-height: 15px; font-family: 'Lucida Grande', =
Verdana, Arial, Helvetica, sans-serif; line-height: 16px;"><span =
style=3D"margin: 0px; padding: 0px; border: 0px; outline: 0px; =
vertical-align: baseline; background-image: none;">This is by no means =
is a feature request, merely ideas as to initiate a discussion. We =
welcome any feedback or suggestions.&nbsp;</span>And of course, let us =
know if you would like to contribute to this project by submiting a =
grant proposal.</p><p style=3D"margin:0px; padding:0px; margin-top: 5px; =
margin-bottom: 5px; padding-top: 3px; padding-bottom: 3px; border: 0px; =
outline: 0px; font-size: 11px; vertical-align: baseline; =
background-image: none; background-color: rgb(255, 255, 255); min-width: =
100%; min-height: 15px; font-family: 'Lucida Grande', Verdana, Arial, =
Helvetica, sans-serif; line-height: 16px;"><a =
href=3D"http://bitcoingrant.org/&amp;lang=3Den" target=3D"_blank" =
style=3D"margin: 0px; padding: 0px; border: 0px; outline: 0px; =
vertical-align: baseline; background-image: none; text-decoration: none; =
cursor: pointer; color: rgb(149, 0, =
0);">http://bitcoingrant.org</a></p><p style=3D"margin:0px; =
padding:0px;">&nbsp;</p><br><span id=3D"editor_signature"><span =
style=3D"font-family:Verdana; =
font-size:12px">&nbsp;</span></span></span></span>
=
--------------------------------------------------------------------------=
----<br>AlienVault Unified Security Management (USM) platform delivers =
complete<br>security visibility with the essential security =
capabilities. Easily and<br>efficiently configure, manage, and operate =
all of your security controls<br>from a single console and one unified =
framework. Download a free trial.<br><a =
href=3D"http://p.sf.net/sfu/alienvault_d2d________________________________=
_______________">http://p.sf.net/sfu/alienvault_d2d_______________________=
________________________</a><br>Bitcoin-development mailing list<br><a =
href=3D"mailto:Bitcoin-development@lists.sourceforge.net">Bitcoin-developm=
ent@lists.sourceforge.net</a><br>https://lists.sourceforge.net/lists/listi=
nfo/bitcoin-development<br></blockquote></div><br></div></div></body></htm=
l>=

--Apple-Mail=_497B0A84-10F3-49E2-87EA-58228AA1FBD2--