forked from jonatack/jonatack.github.io
-
Notifications
You must be signed in to change notification settings - Fork 1
/
index.html
365 lines (356 loc) · 15.9 KB
/
index.html
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
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
<!--
jon atack bitcoin core developer and protocol researcher
-->
<!DOCTYPE html>
<html lang="en">
<head>
<title>jon atack - bitcoin core developer and protocol researcher</title>
<meta charset="utf-8">
<base target="_blank">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" href="/style.css" />
</head>
<body>
<div id="content">
<div id="right">
<div class="list">
<ul>
<li>
<a href="/" target="_self">home</a>
</li>
<li>
<a href="articles" target="_self">articles</a>
</li>
<li>
<a href="presentations" target="_self">presentations</a>
</li>
<li>
<a href="sponsors" target="_self">sponsors</a>
</li>
<li>
<a href="contact" target="_self">contact</a>
</li>
<li>
<a href="donate" target="_self">donate</a>
</li>
<li>
</li>
<li class="small">
style:<br>
<a href="https://basicbitch.software" class="small" target="_blank">basicbitch.software</a>
</li>
</ul>
</div>
<div class="namecap">
<a href="/" target="_self"> jon <br>atack</a>
</div>
</div>
<div id="entry_block">
<div class="entry">
<div class="date">Last updated: 6 October 2020</div>
<div class="body">
<div>
I’m a
<a href="https://github.com/orgs/bitcoin-core/people"
target="_blank">Bitcoin Core</a>
<a href="https://github.com/orgs/bitcoin/people"
target="_blank">contributor</a>
and protocol researcher. Here is what I have been working on and
my future plans. See also my
<a href="articles" target="_self">articles</a>
and
<a href="https://github.com/jonatack" target="_blank">GitHub</a>.
</div>
<br>
<section>
<div class="title" id="overview">Overview</div>
<h3 id="bitcoin-core-activity">Bitcoin Core activity 2019-2020</h3>
<p>
<ol>
<li>
Among the more active contributors in code review and
commits since beginning to contribute in March 2019.
</li>
<li>
<a href="https://github.com/bitcoin/bitcoin/graphs/contributors"
target="_blank">#19 all-time</a>
of the Bitcoin Core contributors with
<a href="https://github.com/bitcoin/bitcoin/commits?author=jonatack"
target="_blank">183 commits</a>
merged into Bitcoin Core and a primary focus on code review.
</li>
<li>
Invited to join the
<a href="https://github.com/orgs/bitcoin/people"
target="_blank">Bitcoin</a>
and
<a href="https://github.com/orgs/bitcoin-core/people"
target="_blank">Bitcoin Core</a>
teams in November 2019 after 7 months of contributing.
</li>
<li>
Recipient of a
<a href="https://twitter.com/sqcrypto" target="_blank">Square Crypto</a>
2020 generalist Bitcoin Core developer grant.
</li>
<li>
Invited to
<a href="https://coredev.tech/" target="_blank">CoreDev</a>
in March 2020 in San Francisco.
</li>
<li>
Joined the
<a href="https://bitcoinops.org/about" target="_blank">Bitcoin Optech</a>
team in May 2020.
</li>
</ol>
</p>
<h3 id="what-i-have-been-working-on">What i have been working on</h3>
<p>
<ol>
<li>
Contributing to Bitcoin Core via code review, testing, bug
discovery, fixes, features, and verifying gitian signatures
for each release.
</li>
<li>
<a href="https://github.com/bitcoin-core-review-club/bitcoin-core-review-club.github.io/graphs/contributors"
target="_blank">Contributing</a>
to the
<a href="https://bitcoincore.reviews"
target="_blank">Bitcoin Core PR Review Club</a>
with
<a href="https://github.com/jnewbery"
target="_blank">John Newbery</a>,
regularly
<a href="https://bitcoincore.reviews/meetings-hosts/#jonatack"
target="_blank">hosting meetings</a>,
and creating and co-running the
<a href="https://twitter.com/BitcoinCorePRs"
target="_blank">BitcoinCorePRs</a>
twitter account.
</li>
<li>
Writing and review for
<a href="https://bitcoinops.org/"
target="_blank">Bitcoin Optech</a>.
</li>
</ol>
</p>
<h3 id="future-work">Future work</h3>
<p>
<ol>
<li>
Continuing and deeper <b>code review</b>, notably of the
difficult and important PRs. This is probably the
most-needed work and bottleneck in Bitcoin Core development.
</li>
<li>
Working to strengthen Bitcoin Core's
<b>decentralization</b>, <b>censorship resistance</b>, and
<b>privacy</b>.
</li>
<li>
Working to improve Bitcoin Core's robustness: finding and
fixing bugs and regressions and improving test coverage.
</li>
<li>
Improving the Bitcoin Core P2P network, wallet, and RPC/CLI
interfaces.
</li>
<li>
Investing in developer and industry education via the
<a href="https://bitcoincore.reviews"
target="_blank">Bitcoin Core PR Review Club</a>
and continued writing and review for
<a href="https://bitcoinops.org/"
target="_blank">Bitcoin Optech</a>.
</li>
<li>
Researching or implementing improvements to the Bitcoin
protocol.
</li>
</ol>
</p>
</section>
<section>
<div class="title" id="background">Background</div>
<p>
I began programming at age 9 in BASIC and assembly
language. From age 14 to 18, I wrote several professional
games in assembly for Atari and Commodore computers that were
internationally published and widely known.
</p>
<p>
I studied Computer Science at
<a href="https://www.hmc.edu/" target="_blank">Harvey Mudd
College</a> in Claremont, California (USA), Business
Administration and French
at <a href="https://oregonstate.edu/" target="_blank">Oregon
State University</a>, followed by an MBA
at <a href="https://www.insead.edu/"
target="_blank">INSEAD</a> in Fontainebleau, France. In
addition to software engineering, I have 2 years of marketing
brand management experience in mass consumer products at
L'Oréal from their world headquarters in Paris. I speak
English, French, German, and some Russian.
</p>
<p>
Over the past decade I have been a freelance software engineer
for large companies and an open source contributor
(<a href="https://contributors.rubyonrails.org/contributors/"
target="_blank">Ruby on Rails Top 100</a>) and library
author/maintainer,
<a href="https://github.com/activerecord-hackery/ransack/graphs/contributors"
target="_blank">notably</a> of
<a href="https://github.com/activerecord-hackery/ransack/"
target="_blank">Ransack</a>, the leading Ruby search engine,
but also of
<a href="https://github.com/jonatack/kraken_ruby_client"
target="_blank">Kraken Ruby Client</a>, an API client for the
Kraken cryptocurrency exchange featured in the
<a href="https://www.kraken.com/features/api#example-api-code"
target="_blank">Kraken API documentation</a>.
</p>
<p>
In March 2019, I started learning to contribute to Bitcoin Core,
beginning with studying the repository and the social process
and technical details of contributing to the project. I've been
compiling and curating this knowledge at
<a href="https://github.com/jonatack/bitcoin-development"
target="_blank">https://github.com/jonatack/bitcoin-development</a>,
which was recommended to other developers in this
<a href="https://twitter.com/BitcoinMagazine/status/1177251272560394240"
target="_blank">Bitcoin Magazine</a>
<a href="https://bitcoinmagazine.com/articles/op-ed-want-to-learn-about-bitcoin-try-the-bitcoin-core-pr-review-club"
target="_blank">September 2019 article</a>
by
<a href="https://twitter.com/michaelfolkson"
target="_blank">Michael Folkson</a>
and has become an educational resource.
</p>
<p>
It became clear that what is most needed and useful, and
paradoxically the least done by new contributors, is
<a href="/articles/on-reviewing-and-helping-those-who-do-it"
target="_blank">review and testing of PRs and issues</a>.
More than
<a href="https://github.com/bitcoin/bitcoin/pulls"
target="_blank">350 pull requests</a>
and <a href="https://github.com/bitcoin/bitcoin/issues"
target="_blank">500 issues</a> are open at any given moment in
Bitcoin Core waiting for experienced review and testing, and the
amount continues to increase. The maintainers need help!
</p>
<p>
I quickly became an active reviewer and contributor to:
<ul>
<li>
<a href="https://github.com/bitcoin/bitcoin"
target="_blank">Bitcoin Core</a>
</li>
<li>
<a href="https://bitcoinops.org/"
target="_blank">Bitcoin Optech</a>
</li>
<li>
<a href="https://bitcoincore.reviews/"
target="_blank">Bitcoin Core PR Review Club</a>
</li>
</ul>
</p>
<p>
In early June 2019, thanks to John Newbery and Adam Jonas, I was
invited to attend the
<a href="https://chaincode.com/" target="_blank">Chaincode
Labs</a> summer residency Bitcoin seminars. I spent 2 weeks in
the Chaincode Labs office in Manhattan learning about Bitcoin
and meeting developers and the summer residents — an amazing
experience.
</p>
</section>
<br>
<section>
<div class="title" id="future-work-in-more-detail">Future work in detail</div>
<p>
I prioritise my time to Bitcoin roughly as follows:
</p>
<h3 id="priorities">Robustness > Privacy > Features > Scaling > UI</h3>
<p>
Robustness and privacy/censorship resistance are therefore my
highest priorities.
</p>
<h3 id="goals">Goals</h3>
<ol>
<li>
Dedicating time to <b>review</b> of the important, critical PRs
that often sit for months without enough review to be merged
and have to go through multiple painful rebases, which blocks
vital progress and demotivates experienced long-term
contributors from working on Bitcoin Core.
<p>
The number one bottleneck in Bitcoin Core is experienced
review of difficult PRs. As
<a href="https://twitter.com/moneyball" target="_blank">Steve Lee</a>
of
<a href="https://twitter.com/sqcrypto" target="_blank">Square Crypto</a>
once wrote to me: "If literally all a developer did was
review hard but important PRs it'd be incredibly valuable."
</p>
<p>
The idea is to unblock these critical PRs not only by
reviewing them, but also coordinating with the maintainers
and other contributors to ensure timely review where it is
most needed and difficult.
</p>
</li>
<li>
Increasing Bitcoin Core's <b>robustness</b>: finding and
fixing regressions and bugs, and adding missing test coverage
or improving it. Robustness can also mean working on
performance, modularity, or multiprocess.
</li>
<li>
Strengthening Bitcoin Core's <b>decentralization</b>,
<b>censorship resistance</b> and <b>privacy</b> by working on
the peer-to-peer network privacy and resistance to
surveillance and attacks: researching and proposing
improvements, and collaborating with and testing work by
fellow developers and researchers.
</li>
<li>
Investing in developer and industry <b>education</b> and
awareness of code review via the Bitcoin Core PR Review Club
and continued writing and review for Bitcoin Optech.
</li>
</ol>
</section>
<section>
<p>
Feel free to
<a href="contact" target="_self">reach out</a>
for more details or to chat.
</p>
<div>
Best<br>
Jon
</div>
<br>
<div>
<font color="#888888">
<div>
Jon Atack
</div>
<div>
Bitcoin Core contributor and protocol researcher
</div>
</font>
</div>
</section>
</div>
</div>
</div>
</div>
</body>
</html>