Skip to content

Commit 53ff938

Browse files
authored
[WIP] Contributor blog post (#86)
* [WIP] Contributor blog post TODO: - Clean up and add actual links - Complete the Submitting Content section * tweaks, add contributor section
1 parent cac3120 commit 53ff938

File tree

1 file changed

+306
-0
lines changed

1 file changed

+306
-0
lines changed
Lines changed: 306 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,306 @@
1+
---
2+
layout: blog
3+
type: blog
4+
title: "Contributing to the BitDevs NYC Newsletter"
5+
permalink: /contributing-to-the-bitdevs-nyc-newsletter/
6+
---
7+
8+
## Contributing to the BitDevs NYC Newsletter
9+
10+
Each month, BitDevs' community members gather and publish materials suitable for discussion at Socratic Seminar meetups [around the world](https://bitdevs.org/cities). The materials span a wide spectrum, touching on content sourced from mailing lists, code repositories, research papers, forums, blogs, newspapers, IRC logs, data aggregators and more.
11+
12+
These newsletters are not only helpful for members who want to prepare for the meetups before hand, but they also act as long running archives that document the work of the wider Bitcoin ecosystem.
13+
14+
Each city has their own unique approach and set of criteria for content inclusion. Some may focus on a specific topic and aggregate links accordingly. Others may take a more local focus to the material they include. At BitDevs NYC, we attempt to gather as much novel, high quality content from the fire hose as possible.
15+
16+
In the spirit of collaboration, we have put together this guide for those who wish to contribute to our monthly topic list. For those organizers who do not have the time to manage their own list, feel free to leverage our content as a means of reducing the overall commitment required to plan and execute a Socratic Seminar in your city.
17+
18+
These lists are also a way for community members to contribute without taking on organizational duties. Good content is the foundation of a Socratic Seminar. Triaging for high quality material is extremely important work--any city that has contributors should be extremely grateful for their participation.
19+
20+
In addition to the above comments on collaboration, this write-up is an attempt to document the rules that the BitDevs NYC community has arrived at after nearly a decade of list publication. These rules have evolved over time and are not always explicitly followed. By publishing this document we hope to codify and enforce these rules with as little bias as possible.
21+
22+
Before diving into the various sections of the topic list, there is the broad question of what constitutes "novel, high quality" content. Novelty is self-explanatory: someone (be it a researcher, FOSS contributor, peer reviewer, anonymous community member etc) makes public content that is more than a simple regurgitation or summation of an existing idea. This does not have to be an invention of a new protocol or a significant piece of research, it can be as simple as an email or forum post which points out a flaw in some proposed protocol or piece of code. The reverse is a good example as well: someone finds a novel way to use an existing protocol.
23+
24+
What constitutes "high quality" content is a foggier target. You can ask yourself: is the content *meaningful* to the broader community? i.e. does it, in theory or in practice, have a measurable impact on the people who build upon and consume services in the Bitcoin ecosystem? If the answer is yes, and the content is technical in nature, it is likely worthy of inclusion!
25+
26+
By the end of this document you should have a fairly good understanding of our approach to content aggregation and how you can contribute to the list. That said, there is no better way to learn about our curatorial idiosyncrasies than by looking over our most recent newsletters on [bitdevs.org](https://bitdevs.org).
27+
28+
As a necessary disclaimer, content included in our list is not a sign of support or explicit review in any way. The content is for your personal review--you must draw your own conclusions about its quality.
29+
30+
Below are the sections that currently constitute the BitDevs NYC topic list:
31+
32+
- Announcements
33+
- Mailing Lists, Meetings and Bitcoin Optech
34+
- Network Data
35+
- Research
36+
- InfoSec
37+
- Pull Requests and repo updates
38+
- New Releases
39+
- Events and Podcasts
40+
- Mining
41+
- Miscellaneous
42+
43+
Please note these sections are not set in stone. For example, if for a sustained period of time (e.g. more than 6 months in a row), 3-4 topics in the Miscellaneous section are dedicated to a specific subject matter, we may break it out into its own section. Any updates to the newsletter format will be reflected in this living instruction set.
44+
45+
### Announcements
46+
47+
This section is reserved for announcements about the upcoming meetup as well as to alert readers to any changes in the structure of the newsletter.
48+
49+
50+
### Mailing lists
51+
52+
We currently provide regular coverage of the [bitcoin-dev](https://lists.linuxfoundation.org/pipermail/bitcoin-dev/), [lightning-dev](https://lists.linuxfoundation.org/mailman/listinfo/lightning-dev) and [dlc-dev](https://mailmanlists.org/mailman/listinfo/dlc-dev) mailing lists.
53+
54+
#### Stylistic notes
55+
56+
- Sort the emails chronologically
57+
- Preserve the original title unless a more descriptive title is required
58+
- In general, point only to the top level email in a thread except in unique cases where a reply is particularly noteworthy
59+
- If linking to multiple emails in single thread, comma separate any replies and set the link title to the name of the replies author
60+
61+
#### Content Notes
62+
63+
- Avoid linking to played-out debates, content that makes unrealistic suggestions or provides tone deaf feedback about a given protocol or software project
64+
- If there is an announcement about a new software release, pull request or BIP/BOLT/BLIP and there is no meaningful discussion, do not include the email here, instead link to the source material in the appropriate section below
65+
- All links should point to the source archive
66+
67+
### Meetings
68+
69+
This section is a collection of links to IRC logs, recorded audio/video, transcripts and/or summaries of the following meetings:
70+
- Bitcoin Core general developer meetings
71+
- Bitcoin Core PR Review Club
72+
- Bitcoin Core wallet meetings
73+
- c-lightning meetings
74+
- dlc-specs meetings
75+
- Lightning specification meetings
76+
77+
#### Stylistic Notes
78+
79+
- Top level sections should be alphabetically ordered by project name
80+
- Second level links to the meetings should be sorted chronologically
81+
- If there is no title to the meeting, set the link text to the date
82+
- If the meeting has a title, include that in the link text instead of the meeting date
83+
- If there are additional links relevant to a specific meeting you want to include, comma separate them
84+
85+
#### Content Notes
86+
87+
- New meetings can be added for other high-impact projects (i.e. software or protocols that act as critical infrastructure to the ecosystem), however the meetings must be on a regular schedule and there needs to be something we can reliably link to (i.e. no ephemeral platforms, e.g. Twitch streams, Google Hangouts, etc.)
88+
89+
### Optech
90+
91+
This section is a chronologically sorted collection of [Optech's](https://bitcoinops.org/) newsletter series, blog posts and field reports.
92+
93+
### Network Data
94+
95+
Content in this section should speak to interesting phenomena occurring in the Bitcoin network and the surrounding ecosystem.
96+
97+
#### Stylistic Notes
98+
99+
- Sort content alphabetically
100+
- Do not assume a graph or other data is self explanatory, provide a meaningful title if one does not already exist
101+
102+
#### Content Notes
103+
104+
- Only include a link to content if the data is novel or there has been a noteworthy change in what is being measured, unless you are simply bringing attention to a new graph/visualizer/data aggregation service
105+
- Software benchmarks are allowed in this section if there is no other suitable location
106+
- Altcoin content is acceptable in some cases, especially when it reflects (either postively or negatively) on the Bitcoin network
107+
- Go to where the data is, do not be afraid of linking to twitter threads or other discussion forums if someone has interesting data to share
108+
- The data does not have to be about the network at large, it can be observed phenomena of a single operator in the network
109+
- Avoid content that is exclusively about the price with no meaningful connection to network phenomena
110+
- Examples of acceptable data points include:
111+
- Changes in hashrate
112+
- Oscillations in the mempool
113+
- Expansions/contractions of the UTXO set
114+
- Capacity of the lightning network
115+
- Number of lightning channels
116+
- Segwit/taproot adoption
117+
- Privacy protocol statistics
118+
- Soft fork signaling data
119+
- Occurrences of stale blocks
120+
121+
### Research
122+
123+
This section is dedicated to content that is published with the level of formality/rigor generally expected in academic/professional research environments.
124+
125+
#### Stylistic Notes
126+
127+
- Sort content alphabetically
128+
- When possible, do not link directly to a PDF, but instead link to a summary page with an abstract
129+
- It is acceptable to link to research that requires a subscription to access
130+
131+
#### Content Notes
132+
133+
- You are not required to read the entire piece before including it, but do your best to make sure it passes a basic sniff test
134+
- You do not have to agree with the paper to include it
135+
- Sharing a bad paper is acceptable if you are including it *because* the research is poor and its existence is a platform for discussion
136+
- The content does not have to be peer reviewed and can be a PDF or long-form blog
137+
- Examples of topics that are encouraged:
138+
- Studies of phenomena in Bitcoin or adjacent networks
139+
- Studies of attack vectors on Bitcoin or adjacent networks (e.g. selfish mining, eclipse attacks, channel probing)
140+
- Novel payment channel / L2 systems
141+
- Novel privacy protocols for public blockchains
142+
- Novel SNARK/STARKs that have noteworthy performance properties
143+
- Examples of topics that are generally out-of-bounds:
144+
- Trading / historical price analysis
145+
- Studies that poorly summarize existing research or simply rehash old concepts
146+
- Studies of consensus systems that use leader election schemes that are stake based (unless it's a detailed attack paper)
147+
- Entirely novel blockchain designs / protocols that are unlikely to have any impact on the direction of the Bitcoin protocol
148+
149+
### InfoSec
150+
151+
This section aims to inform readers of the threats they face as either developers or end-users in the cryptocurrency space. Many of the attack vectors that Bitcoiners are exposed to have nothing to do with Bitcoin-specific software, so including content that is not Bitcoin-specific is acceptable.
152+
153+
#### Stylistic Notes
154+
155+
- Sort content alphabetically
156+
157+
#### Content Notes
158+
159+
- Even if the attack is theoretical and only described in a research paper, include it in this section.
160+
- If there are multiple links for a single topic (e.g. a post-mortem and a noteworthy discussion thread), comma separate them
161+
- On a best effort basis:
162+
- For hacks, link to a detailed post-mortem, not simply a news article.
163+
- For exploits, link to the discovering party's explanation.
164+
- Some examples of acceptable content:
165+
- Documented and theoretical attacks on Bitcoin and major altcoin networks
166+
- Hardware wallet and HSM/TEE exploits
167+
- Sidechannel and Rowhammer style exploits
168+
- Hacks of major centralized cryptocurrency services
169+
- Large hacks of DeFi protocols (but not explicit scams/rug pulls)
170+
- "Supply chain" software attacks
171+
- Sophisticated phishing attacks
172+
- High-impact vulnerabilities in major operating systems, FOSS libraries and any software that is widely deployed across the internet at either an end-user or infrastructure level
173+
- Noteworthy DDoS attacks
174+
- Attacks on internet infrastructure (e.g. BGP hijacks)
175+
176+
### Pull Requests and Repo Updates
177+
178+
This section highlights noteworthy pull requests in projects that play a significant roll in shaping the Bitcoin ecosystem. Included are both software packages as well as repositories of aggregated design and spec documentation. These repositories currently include:
179+
180+
- Bitcoin Core
181+
- rust-bitcoin
182+
- HWI
183+
- BIPs
184+
- secp256k1
185+
- secp256k1-zkp
186+
- lnd
187+
- eclair
188+
- c-lightning
189+
- rust-lightning
190+
- BOLTs
191+
- bLIPs
192+
193+
#### Stylistic Notes
194+
195+
- Order the pull requests by PR number
196+
- Order the repositories as specified above
197+
- Include the full PR title as the link text for the link unless a more descriptive title is required
198+
199+
#### Content Notes
200+
201+
- Avoid open pull requests wherever possible unless there is an particularly noteworthy ongoing discussion
202+
- Open issues are acceptable if they provide novel and useful insights about the project
203+
- You can link to specific comments in the PR if there is a review comment that you want to highlight with comma separation, set the link text to the author's username
204+
- If one of these projects has a new release, link to it in the New Releases section
205+
- Good candidates for inclusion are *merged* pull requests that:
206+
- Introduce a new feature/are part of a larger project to introduce a new feature
207+
- Modify the behavior of the client/library in a way that impacts UX or downstream development
208+
- Improve upon/extend an existing feature
209+
- Improve performance
210+
- Improve privacy
211+
- Fix a critical bug/security vulnerability
212+
- Deprecate an existing feature
213+
- Change consensus or spec related code
214+
- Reduce the attack surface of the project
215+
- In general, you should try to avoid pull requests that are:
216+
- Stylistic changes
217+
- Minor refactors
218+
- Related to tests and/or logging
219+
- Changes to documentation or code comments (unless it highlights recently discovered behavior that is dangerous or otherwise unexpected)
220+
221+
### New Releases
222+
223+
This section highlights new releases of open source software that is designed for the Bitcoin ecosystem or is useful to its participants.
224+
225+
#### Stylistic Notes
226+
227+
- Sort projects alphabetically
228+
- The link text should be the repository name and the version number, next to which you should *very briefly* mention what is noteworthy about the release. Preserve casing and hyphenations. If the repository name does not reflect the publicly advertised name of the project, do not use it
229+
230+
#### Content Notes
231+
232+
- Only include the release if there is a security fix or significant new feature whose usefulness is not exclusive to a product's walled garden (e.g. adding support for: RBF, CPFP, new script versions, new BOLTs/BLiPs/BIPs, privacy protocols, etc.)
233+
- If the project is new and does not yet have a release, just put a short description of the project without a version number.
234+
- Examples of applicable projects:
235+
- Full node implementations (both L1 and L2)
236+
- Tools for L1 and L2 node operators (e.g. node manager/monitoring tools, self-hosted block explorers, channel rebalancers etc.)
237+
- Development kits and the libraries they depend on
238+
- Signing libraries
239+
- Power-user focused software wallets (e.g. that support DLCs, Lightning, Statechains, privacy protocols, CPFP, multisig orchestration, RBF batching, submarine swaps, etc.)
240+
- Hardware wallet firmware and software
241+
- Point of Sale systems
242+
- Bitcoin-based sidechain implementations
243+
- Novel L2 projects
244+
- Anonymity tooling/networks
245+
246+
### Events and Podcasts
247+
248+
This section is for Bitcoin-focused podcasts, conferences, meetups and other recorded/transcribed/summarized media and events.
249+
250+
#### Stylistic Notes
251+
252+
- Sort the content alphabetically
253+
- If there are multiple episodes/recordings/transcripts from a single source, sort by episode number or date published
254+
- If one person is doing a "podcast tour" and is a guest on many podcasts discussing a singular topic of expertise, you can include links to those podcasts on a single line, comma separated
255+
256+
#### Content Notes
257+
258+
- You are not required to have carefully listened to the entire recording, however please do your best to ensure the content is technically focused and not saturated with misinformation
259+
- If there are only a few minutes of a video or podcast that is noteworthy, please link to the timestamp in question when possible (otherwise specify it after the link text)
260+
- Try to avoid content recorded with a potato camera/microphone
261+
- If there is a conference with many good technical talks, link to the full live stream if possible, not to each individual talk
262+
263+
### Mining
264+
265+
This section should include content relevant to the mining landscape. The section is flexible, in that the content does not have to be explicitly technical. If there is not a strictly technical element to the material, it should at least have some implication on the relationships between Bitcoin miners and the local/national governments with which the miners must interact.
266+
267+
#### Stylistic Notes
268+
269+
- Sort content alphabetically
270+
271+
#### Content Notes
272+
273+
- Examples of acceptable content include:
274+
- Announcement of new mining hardware
275+
- Documentation of large mining operations
276+
- Implemented regulatory actions that either encourage, discourage or outright ban mining in a specific locale
277+
- Analysis of the network's hashrate, including estimates of geographic distribution, hardware popularity, etc.
278+
- Natural disasters that impact global hashrate
279+
280+
### Miscellaneous
281+
282+
This section is for content that is not suitable for any of the above categories but is interesting nonetheless.
283+
284+
#### Stylistic Notes
285+
286+
- Sort content alphabetically
287+
288+
#### Content Notes
289+
290+
- Examples of content that is suitable for this section include:
291+
- Grants for Bitcoin-focused open source contributors
292+
- Bitcoin history lessons
293+
- Newsletters with technical content
294+
- Technical explainers of Bitcoin concepts
295+
- Bitcoin Stack Exchange answers
296+
- Discussion threads that
297+
- debate and/or investigate future improvements to the Bitcoin protocol
298+
- provide unique critiques of the Bitcoin protocol
299+
- have novel insights about the network or its participants
300+
- inspire new perspectives about network operation / participant dynamics
301+
- Announcements of products that leverage Bitcoin in technically sophisticated and novel ways
302+
- MEV related phenomena in altcoin networks
303+
304+
## Submitting Content
305+
306+
Ready to contribute? In the days following a meetup, a pull request will be opened titled "Add socratic XXX." You can leave a comment in this PR with a suggested topic or you can open a PR against that branch. Please only include content that was published following the date of the last meetup unless it was not previously included.

0 commit comments

Comments
 (0)