SlideShare una empresa de Scribd logo
1 de 3
Descargar para leer sin conexión
Bitcoin Development
provencrypto.com/bitcoin-development
Introduction
The open source community is a huge one with developers remotely collaborating on
different projects. To ease this process, they make use of version control portals such as
Github, or Bitbucket, to mention a few. Coincidentally, both Github and Bitcoin technologies
are both based on what is known as Merkle trees.
So it’s essential you get familiar with Github Concepts such as Push/Pull requests, Cloning a
Repository, commit, forking, etc.
Bitcoin being an open source project, make use of Github for project collaboration/
management, documentation, bug tracking, continuous integration, etc. making for easy
contribution by any developer across the globe. All that is required to contribute to the
Bitcoin project can be found here in the GitHub repository,, but bear in mind that the Bitcoin
community is a merit-driven one. Meaning, all that matters is the quality of your work and
putting your ego outside the door. A clear description of development is provided in the
README. Do ensure you read it as a guide to delivering quality, human-readable code.
When taking a plunge into the Bitcoin developer community, it is crucial for you to set your
expectation accordingly. Through hard work and patience, you can learn a lot as well as gain
recognition and respect similar to core developers like Peter Wuille, Cory Fields, and Gregory
Maxwell.
1/3
Further project development discussion is on GitHub and the bitcoin-dev mailing list. For
more informal development discussions, check out irc.freenode.net #bitcoin-core-dev (web
interface, logs). The developer community is a friendly one, simply respect the guidelines.
Documentation
Every seasoned developer knows that the first go-to source for working on any code or
library is to read the documentation. You can start from the README and the contribution
guidelines. You can also continue further with the doc directory and read the README there
too. All the documentation in the doc directory is described in the README.
Please note that similar to any new endeavor, some things may not make sense to you at the
beginning. So do not hesitate to network with community members on IRC, StackExchange ,
and Slack if you have issues with understanding some concepts way.
Required Skills
Programming Language:
Starting out your contribution to Bitcoin core, essential prerequisites are skills in the two
programming languages which are C++ and Python.
Version/Source Control:
As pointed out in the introduction, this is managed through Git. It is necessary that you know
how to fetch from the origin, make topic branches and how to rebase. If you’re testing
someone else’s code, you should also know how to add multiple repositories to your local
development environment so you can fetch and test the code.
Signing up for a GitHub account cannot be overemphasized considering that changes to
Bitcoin Core are merged on a Pull request by Pull Request basis on Github.
Last and very important is that you’ll need to know how to install and remove packages on
your platform.
Code Review
According to Ken Thompson, one of the co-creators of Unix, “ You can’t trust code that you
didn’t create yourself….” Being a Bitcoin Core developer is not an easy route, this is because
the Bitcoin core is security software that protects assets worth billions of dollars from
different kind of external attacks. Again bear in mind that open source doesn’t imply more
secure, which is why experienced developers must review every code changes. Hence your
work has to meet a high standard of testing and code review.
It can take a long time for other developers to review your pull requests. Remember that all
reviewers are taking time away from their projects to review your pull requests, so be
patient, show some respect for their time.
2/3
As a way to get your feet wet, you can consider giving it a shot at reviewing other people’s
pull requests. You don’t need to be an expert in Bitcoin, the Bitcoin Core codebase, or C++
(although all these things help). There are almost always open pull requests that any
programmer can review.
Starter Projects
Often people conclude code contribution as the only contribution to opensource, while in
reality, the success of such projects depends on testing and review. Starting off with
reviewing and testing will push into deep waters, where you will eventually learn a lot about
the code base with more in-depth understanding, compared to writing code.
Do you want to begin coding for Bitcoin Core but don’t have a specific improvement in mind?
Here are a few ideas:
Fix existing issues: Checking out the issue tracker is a great place to find meaningful
contributions to Bitcoin Core. It is necessary to comment on issues to ensure someone
else is not working on it before starting to write any patches for problems you find.
Write tests: many tests cover Bitcoin Core, but patches that improve test coverage are
always welcome and are a great way to build familiarity with the codebase. See the
documentation about automated testing.
Developer communities
The following chatrooms and websites host discussions about Bitcoin development. Please
be sure to read their rules of conduct before posting.
IRC Channel #bitcoin-core-dev on Freenode.
Bitcoin Core Slack Channel
Bitcoin StackExchange, The Bitcoin StackExchange, is a good place to get all tricky
questions answered.
BitcoinTalk Development & Technical Discussion Forum
Further project development discussion is on GitHub and the bitcoin-dev mailing list. For
more informal development discussions, check out irc.freenode.net #bitcoin-core-dev (web
interface, logs).
3/3

Más contenido relacionado

La actualidad más candente

Git and Gerrit Code Review - Tech Talk - 2010_09_23
Git and Gerrit Code Review - Tech Talk - 2010_09_23Git and Gerrit Code Review - Tech Talk - 2010_09_23
Git and Gerrit Code Review - Tech Talk - 2010_09_23msohn
 
OpenChain Japan Work Group Meeting #18 (Virtual Meeting #5) - Keynote Message
OpenChain Japan Work Group Meeting #18 (Virtual Meeting #5) - Keynote MessageOpenChain Japan Work Group Meeting #18 (Virtual Meeting #5) - Keynote Message
OpenChain Japan Work Group Meeting #18 (Virtual Meeting #5) - Keynote MessageShane Coughlan
 
2021 Solution Challenge - Kick Off
2021 Solution Challenge - Kick Off 2021 Solution Challenge - Kick Off
2021 Solution Challenge - Kick Off TanyaRaina3
 
Opencast Architecture
Opencast ArchitectureOpencast Architecture
Opencast ArchitectureGregLogan7
 
EGit and Gerrit Code Review - Eclipse DemoCamp Bonn - 2010-11-16
EGit and Gerrit Code Review - Eclipse DemoCamp Bonn - 2010-11-16EGit and Gerrit Code Review - Eclipse DemoCamp Bonn - 2010-11-16
EGit and Gerrit Code Review - Eclipse DemoCamp Bonn - 2010-11-16msohn
 
Landscape of Eclipse MicroProfile Tools
Landscape of Eclipse MicroProfile ToolsLandscape of Eclipse MicroProfile Tools
Landscape of Eclipse MicroProfile ToolsYK Chang
 
Typescript kata The TDD style 2 edition
Typescript kata The TDD style 2 editionTypescript kata The TDD style 2 edition
Typescript kata The TDD style 2 editionRonnie Hegelund
 
Agile .NET Development with BDD and Continuous Integration
Agile .NET Development with BDD and Continuous IntegrationAgile .NET Development with BDD and Continuous Integration
Agile .NET Development with BDD and Continuous IntegrationQuan Truong Anh
 
Building a Language Server for Eclipse MicroProfile
Building a Language Server for Eclipse MicroProfileBuilding a Language Server for Eclipse MicroProfile
Building a Language Server for Eclipse MicroProfileYK Chang
 
Github 101 An Adventurer's Guide To Open Source
Github 101   An Adventurer's Guide To Open SourceGithub 101   An Adventurer's Guide To Open Source
Github 101 An Adventurer's Guide To Open SourcePrachitibhukan
 
Ubucon 2013, licensing and packaging OSS
Ubucon 2013, licensing and packaging OSSUbucon 2013, licensing and packaging OSS
Ubucon 2013, licensing and packaging OSSNuno Brito
 
Gerrit Code Review with GitHub plugin
Gerrit Code Review with GitHub pluginGerrit Code Review with GitHub plugin
Gerrit Code Review with GitHub pluginLuca Milanesio
 
Docs or it didn’t happen
Docs or it didn’t happenDocs or it didn’t happen
Docs or it didn’t happenAll Things Open
 
Practical pointers for better code review
Practical pointers for better code reviewPractical pointers for better code review
Practical pointers for better code reviewkhink
 
OSGi Versioning & Testing
OSGi Versioning & TestingOSGi Versioning & Testing
OSGi Versioning & TestingChris Aniszczyk
 
Modular development in Node.js
Modular development in Node.jsModular development in Node.js
Modular development in Node.jsMehdi Valikhani
 
カエルと実践する CI/CD CI 編
カエルと実践する CI/CD CI 編カエルと実践する CI/CD CI 編
カエルと実践する CI/CD CI 編Tsuyoshi Miyake
 

La actualidad más candente (20)

Git and Gerrit Code Review - Tech Talk - 2010_09_23
Git and Gerrit Code Review - Tech Talk - 2010_09_23Git and Gerrit Code Review - Tech Talk - 2010_09_23
Git and Gerrit Code Review - Tech Talk - 2010_09_23
 
OpenChain Japan Work Group Meeting #18 (Virtual Meeting #5) - Keynote Message
OpenChain Japan Work Group Meeting #18 (Virtual Meeting #5) - Keynote MessageOpenChain Japan Work Group Meeting #18 (Virtual Meeting #5) - Keynote Message
OpenChain Japan Work Group Meeting #18 (Virtual Meeting #5) - Keynote Message
 
Java + docker
Java + dockerJava + docker
Java + docker
 
2021 Solution Challenge - Kick Off
2021 Solution Challenge - Kick Off 2021 Solution Challenge - Kick Off
2021 Solution Challenge - Kick Off
 
Opencast Architecture
Opencast ArchitectureOpencast Architecture
Opencast Architecture
 
EGit and Gerrit Code Review - Eclipse DemoCamp Bonn - 2010-11-16
EGit and Gerrit Code Review - Eclipse DemoCamp Bonn - 2010-11-16EGit and Gerrit Code Review - Eclipse DemoCamp Bonn - 2010-11-16
EGit and Gerrit Code Review - Eclipse DemoCamp Bonn - 2010-11-16
 
Gerrit Code Review
Gerrit Code ReviewGerrit Code Review
Gerrit Code Review
 
Landscape of Eclipse MicroProfile Tools
Landscape of Eclipse MicroProfile ToolsLandscape of Eclipse MicroProfile Tools
Landscape of Eclipse MicroProfile Tools
 
Typescript kata The TDD style 2 edition
Typescript kata The TDD style 2 editionTypescript kata The TDD style 2 edition
Typescript kata The TDD style 2 edition
 
Agile .NET Development with BDD and Continuous Integration
Agile .NET Development with BDD and Continuous IntegrationAgile .NET Development with BDD and Continuous Integration
Agile .NET Development with BDD and Continuous Integration
 
Building a Language Server for Eclipse MicroProfile
Building a Language Server for Eclipse MicroProfileBuilding a Language Server for Eclipse MicroProfile
Building a Language Server for Eclipse MicroProfile
 
Github 101 An Adventurer's Guide To Open Source
Github 101   An Adventurer's Guide To Open SourceGithub 101   An Adventurer's Guide To Open Source
Github 101 An Adventurer's Guide To Open Source
 
OOoEclipse talks now C++
OOoEclipse talks now C++OOoEclipse talks now C++
OOoEclipse talks now C++
 
Ubucon 2013, licensing and packaging OSS
Ubucon 2013, licensing and packaging OSSUbucon 2013, licensing and packaging OSS
Ubucon 2013, licensing and packaging OSS
 
Gerrit Code Review with GitHub plugin
Gerrit Code Review with GitHub pluginGerrit Code Review with GitHub plugin
Gerrit Code Review with GitHub plugin
 
Docs or it didn’t happen
Docs or it didn’t happenDocs or it didn’t happen
Docs or it didn’t happen
 
Practical pointers for better code review
Practical pointers for better code reviewPractical pointers for better code review
Practical pointers for better code review
 
OSGi Versioning & Testing
OSGi Versioning & TestingOSGi Versioning & Testing
OSGi Versioning & Testing
 
Modular development in Node.js
Modular development in Node.jsModular development in Node.js
Modular development in Node.js
 
カエルと実践する CI/CD CI 編
カエルと実践する CI/CD CI 編カエルと実践する CI/CD CI 編
カエルと実践する CI/CD CI 編
 

Similar a Bitcoin Development 2019 Starter Guide - No Skill | ProvenCrypto

Creating and Maintaining an Open Source Library
Creating and Maintaining an Open Source LibraryCreating and Maintaining an Open Source Library
Creating and Maintaining an Open Source LibraryNicholas Schweitzer
 
concordia hacktoberfest.pptx
concordia hacktoberfest.pptxconcordia hacktoberfest.pptx
concordia hacktoberfest.pptxAnkurVerma95745
 
Git Tutorial A Comprehensive Guide for Beginners.pdf
Git Tutorial A Comprehensive Guide for Beginners.pdfGit Tutorial A Comprehensive Guide for Beginners.pdf
Git Tutorial A Comprehensive Guide for Beginners.pdfuzair
 
Hacktoberfest 2020 - Open source for beginners
Hacktoberfest 2020 - Open source for beginnersHacktoberfest 2020 - Open source for beginners
Hacktoberfest 2020 - Open source for beginnersDeepikaRana30
 
Contribute 101: Compose/Kitematic/Machine by Ben Bonnefoy
Contribute 101: Compose/Kitematic/Machine by Ben BonnefoyContribute 101: Compose/Kitematic/Machine by Ben Bonnefoy
Contribute 101: Compose/Kitematic/Machine by Ben BonnefoyDocker, Inc.
 
Bitbucket Devops PPT.pptx
Bitbucket Devops PPT.pptxBitbucket Devops PPT.pptx
Bitbucket Devops PPT.pptxXIE2020Students
 
3DC Intro to Git Workshop
3DC Intro to Git Workshop3DC Intro to Git Workshop
3DC Intro to Git WorkshopBeckhamWee
 
Top 10 Of The Best Tools For Blockchain Development
Top 10 Of The Best Tools For Blockchain DevelopmentTop 10 Of The Best Tools For Blockchain Development
Top 10 Of The Best Tools For Blockchain DevelopmentBlockchain Council
 
Hacktoberfest Kolkata 2022.pdf
Hacktoberfest Kolkata 2022.pdfHacktoberfest Kolkata 2022.pdf
Hacktoberfest Kolkata 2022.pdfSawanBhattacharya
 
Source Control with Git & GitHub
 Source Control with Git & GitHub Source Control with Git & GitHub
Source Control with Git & GitHubRonny Orbach
 
GitHub Copilot.pptx
GitHub Copilot.pptxGitHub Copilot.pptx
GitHub Copilot.pptxLuis Beltran
 
How CodeIgniter Made Me A Freelancer
How CodeIgniter Made Me A FreelancerHow CodeIgniter Made Me A Freelancer
How CodeIgniter Made Me A FreelancerMichael Wales
 
Beginner Workshop for Student Developers - Tratech-presentation.pdf
Beginner Workshop for Student Developers - Tratech-presentation.pdfBeginner Workshop for Student Developers - Tratech-presentation.pdf
Beginner Workshop for Student Developers - Tratech-presentation.pdfGDSCKNUST
 
23 Top .Net Core Libraries List Every Developer Must Know
23 Top .Net Core Libraries List Every Developer Must Know23 Top .Net Core Libraries List Every Developer Must Know
23 Top .Net Core Libraries List Every Developer Must KnowKaty Slemon
 
Scaling Git for Enterprise DevOps
Scaling Git for Enterprise DevOpsScaling Git for Enterprise DevOps
Scaling Git for Enterprise DevOpsEng Teong Cheah
 
Open Source Security and ChatGPT-Published.pdf
Open Source Security and ChatGPT-Published.pdfOpen Source Security and ChatGPT-Published.pdf
Open Source Security and ChatGPT-Published.pdfJavier Perez
 

Similar a Bitcoin Development 2019 Starter Guide - No Skill | ProvenCrypto (20)

Creating and Maintaining an Open Source Library
Creating and Maintaining an Open Source LibraryCreating and Maintaining an Open Source Library
Creating and Maintaining an Open Source Library
 
concordia hacktoberfest.pptx
concordia hacktoberfest.pptxconcordia hacktoberfest.pptx
concordia hacktoberfest.pptx
 
Git Tutorial A Comprehensive Guide for Beginners.pdf
Git Tutorial A Comprehensive Guide for Beginners.pdfGit Tutorial A Comprehensive Guide for Beginners.pdf
Git Tutorial A Comprehensive Guide for Beginners.pdf
 
Hacktoberfest 2020 - Open source for beginners
Hacktoberfest 2020 - Open source for beginnersHacktoberfest 2020 - Open source for beginners
Hacktoberfest 2020 - Open source for beginners
 
Contribute 101: Compose/Kitematic/Machine by Ben Bonnefoy
Contribute 101: Compose/Kitematic/Machine by Ben BonnefoyContribute 101: Compose/Kitematic/Machine by Ben Bonnefoy
Contribute 101: Compose/Kitematic/Machine by Ben Bonnefoy
 
Bitbucket Devops PPT.pptx
Bitbucket Devops PPT.pptxBitbucket Devops PPT.pptx
Bitbucket Devops PPT.pptx
 
3DC Intro to Git Workshop
3DC Intro to Git Workshop3DC Intro to Git Workshop
3DC Intro to Git Workshop
 
Top 10 Of The Best Tools For Blockchain Development
Top 10 Of The Best Tools For Blockchain DevelopmentTop 10 Of The Best Tools For Blockchain Development
Top 10 Of The Best Tools For Blockchain Development
 
Hacktoberfest Kolkata 2022.pdf
Hacktoberfest Kolkata 2022.pdfHacktoberfest Kolkata 2022.pdf
Hacktoberfest Kolkata 2022.pdf
 
Source Control with Git & GitHub
 Source Control with Git & GitHub Source Control with Git & GitHub
Source Control with Git & GitHub
 
GitHub Copilot.pptx
GitHub Copilot.pptxGitHub Copilot.pptx
GitHub Copilot.pptx
 
Git tech
Git techGit tech
Git tech
 
How CodeIgniter Made Me A Freelancer
How CodeIgniter Made Me A FreelancerHow CodeIgniter Made Me A Freelancer
How CodeIgniter Made Me A Freelancer
 
BitBucket presentation
BitBucket presentationBitBucket presentation
BitBucket presentation
 
Git and git hub basics
Git and git hub basicsGit and git hub basics
Git and git hub basics
 
Beginner Workshop for Student Developers - Tratech-presentation.pdf
Beginner Workshop for Student Developers - Tratech-presentation.pdfBeginner Workshop for Student Developers - Tratech-presentation.pdf
Beginner Workshop for Student Developers - Tratech-presentation.pdf
 
23 Top .Net Core Libraries List Every Developer Must Know
23 Top .Net Core Libraries List Every Developer Must Know23 Top .Net Core Libraries List Every Developer Must Know
23 Top .Net Core Libraries List Every Developer Must Know
 
Scaling Git for Enterprise DevOps
Scaling Git for Enterprise DevOpsScaling Git for Enterprise DevOps
Scaling Git for Enterprise DevOps
 
Open Source Security and ChatGPT-Published.pdf
Open Source Security and ChatGPT-Published.pdfOpen Source Security and ChatGPT-Published.pdf
Open Source Security and ChatGPT-Published.pdf
 
Get Git with It! A Developer's Workshop.pptx
Get Git with It! A Developer's Workshop.pptxGet Git with It! A Developer's Workshop.pptx
Get Git with It! A Developer's Workshop.pptx
 

Más de Opti Network

Numerology name meaning - what does your name say about you - Slybu.com
Numerology name meaning - what does your name say about you - Slybu.comNumerology name meaning - what does your name say about you - Slybu.com
Numerology name meaning - what does your name say about you - Slybu.comOpti Network
 
Pythagorean numerology - Slybu.com
Pythagorean numerology - Slybu.comPythagorean numerology - Slybu.com
Pythagorean numerology - Slybu.comOpti Network
 
Blockchain Technology Meaning Comprehensive Review - ProvenCrypto
Blockchain Technology Meaning Comprehensive Review - ProvenCryptoBlockchain Technology Meaning Comprehensive Review - ProvenCrypto
Blockchain Technology Meaning Comprehensive Review - ProvenCryptoOpti Network
 
Best Bitcoin Resources - Crypto Learning Center | ProvenCrypto
Best Bitcoin Resources - Crypto Learning Center | ProvenCryptoBest Bitcoin Resources - Crypto Learning Center | ProvenCrypto
Best Bitcoin Resources - Crypto Learning Center | ProvenCryptoOpti Network
 
Bitcoin Communities around the world at one place | ProvenCrypto
Bitcoin Communities around the world at one place | ProvenCryptoBitcoin Communities around the world at one place | ProvenCrypto
Bitcoin Communities around the world at one place | ProvenCryptoOpti Network
 
How you can support Bitcoin today | ProvenCrypto
How you can support Bitcoin today | ProvenCryptoHow you can support Bitcoin today | ProvenCrypto
How you can support Bitcoin today | ProvenCryptoOpti Network
 
How Does Bitcoin Work? Under the Hood for Dummies | ProvenCrypto
How Does Bitcoin Work? Under the Hood for Dummies | ProvenCryptoHow Does Bitcoin Work? Under the Hood for Dummies | ProvenCrypto
How Does Bitcoin Work? Under the Hood for Dummies | ProvenCryptoOpti Network
 

Más de Opti Network (7)

Numerology name meaning - what does your name say about you - Slybu.com
Numerology name meaning - what does your name say about you - Slybu.comNumerology name meaning - what does your name say about you - Slybu.com
Numerology name meaning - what does your name say about you - Slybu.com
 
Pythagorean numerology - Slybu.com
Pythagorean numerology - Slybu.comPythagorean numerology - Slybu.com
Pythagorean numerology - Slybu.com
 
Blockchain Technology Meaning Comprehensive Review - ProvenCrypto
Blockchain Technology Meaning Comprehensive Review - ProvenCryptoBlockchain Technology Meaning Comprehensive Review - ProvenCrypto
Blockchain Technology Meaning Comprehensive Review - ProvenCrypto
 
Best Bitcoin Resources - Crypto Learning Center | ProvenCrypto
Best Bitcoin Resources - Crypto Learning Center | ProvenCryptoBest Bitcoin Resources - Crypto Learning Center | ProvenCrypto
Best Bitcoin Resources - Crypto Learning Center | ProvenCrypto
 
Bitcoin Communities around the world at one place | ProvenCrypto
Bitcoin Communities around the world at one place | ProvenCryptoBitcoin Communities around the world at one place | ProvenCrypto
Bitcoin Communities around the world at one place | ProvenCrypto
 
How you can support Bitcoin today | ProvenCrypto
How you can support Bitcoin today | ProvenCryptoHow you can support Bitcoin today | ProvenCrypto
How you can support Bitcoin today | ProvenCrypto
 
How Does Bitcoin Work? Under the Hood for Dummies | ProvenCrypto
How Does Bitcoin Work? Under the Hood for Dummies | ProvenCryptoHow Does Bitcoin Work? Under the Hood for Dummies | ProvenCrypto
How Does Bitcoin Work? Under the Hood for Dummies | ProvenCrypto
 

Último

Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 

Último (20)

Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 

Bitcoin Development 2019 Starter Guide - No Skill | ProvenCrypto

  • 1. Bitcoin Development provencrypto.com/bitcoin-development Introduction The open source community is a huge one with developers remotely collaborating on different projects. To ease this process, they make use of version control portals such as Github, or Bitbucket, to mention a few. Coincidentally, both Github and Bitcoin technologies are both based on what is known as Merkle trees. So it’s essential you get familiar with Github Concepts such as Push/Pull requests, Cloning a Repository, commit, forking, etc. Bitcoin being an open source project, make use of Github for project collaboration/ management, documentation, bug tracking, continuous integration, etc. making for easy contribution by any developer across the globe. All that is required to contribute to the Bitcoin project can be found here in the GitHub repository,, but bear in mind that the Bitcoin community is a merit-driven one. Meaning, all that matters is the quality of your work and putting your ego outside the door. A clear description of development is provided in the README. Do ensure you read it as a guide to delivering quality, human-readable code. When taking a plunge into the Bitcoin developer community, it is crucial for you to set your expectation accordingly. Through hard work and patience, you can learn a lot as well as gain recognition and respect similar to core developers like Peter Wuille, Cory Fields, and Gregory Maxwell. 1/3
  • 2. Further project development discussion is on GitHub and the bitcoin-dev mailing list. For more informal development discussions, check out irc.freenode.net #bitcoin-core-dev (web interface, logs). The developer community is a friendly one, simply respect the guidelines. Documentation Every seasoned developer knows that the first go-to source for working on any code or library is to read the documentation. You can start from the README and the contribution guidelines. You can also continue further with the doc directory and read the README there too. All the documentation in the doc directory is described in the README. Please note that similar to any new endeavor, some things may not make sense to you at the beginning. So do not hesitate to network with community members on IRC, StackExchange , and Slack if you have issues with understanding some concepts way. Required Skills Programming Language: Starting out your contribution to Bitcoin core, essential prerequisites are skills in the two programming languages which are C++ and Python. Version/Source Control: As pointed out in the introduction, this is managed through Git. It is necessary that you know how to fetch from the origin, make topic branches and how to rebase. If you’re testing someone else’s code, you should also know how to add multiple repositories to your local development environment so you can fetch and test the code. Signing up for a GitHub account cannot be overemphasized considering that changes to Bitcoin Core are merged on a Pull request by Pull Request basis on Github. Last and very important is that you’ll need to know how to install and remove packages on your platform. Code Review According to Ken Thompson, one of the co-creators of Unix, “ You can’t trust code that you didn’t create yourself….” Being a Bitcoin Core developer is not an easy route, this is because the Bitcoin core is security software that protects assets worth billions of dollars from different kind of external attacks. Again bear in mind that open source doesn’t imply more secure, which is why experienced developers must review every code changes. Hence your work has to meet a high standard of testing and code review. It can take a long time for other developers to review your pull requests. Remember that all reviewers are taking time away from their projects to review your pull requests, so be patient, show some respect for their time. 2/3
  • 3. As a way to get your feet wet, you can consider giving it a shot at reviewing other people’s pull requests. You don’t need to be an expert in Bitcoin, the Bitcoin Core codebase, or C++ (although all these things help). There are almost always open pull requests that any programmer can review. Starter Projects Often people conclude code contribution as the only contribution to opensource, while in reality, the success of such projects depends on testing and review. Starting off with reviewing and testing will push into deep waters, where you will eventually learn a lot about the code base with more in-depth understanding, compared to writing code. Do you want to begin coding for Bitcoin Core but don’t have a specific improvement in mind? Here are a few ideas: Fix existing issues: Checking out the issue tracker is a great place to find meaningful contributions to Bitcoin Core. It is necessary to comment on issues to ensure someone else is not working on it before starting to write any patches for problems you find. Write tests: many tests cover Bitcoin Core, but patches that improve test coverage are always welcome and are a great way to build familiarity with the codebase. See the documentation about automated testing. Developer communities The following chatrooms and websites host discussions about Bitcoin development. Please be sure to read their rules of conduct before posting. IRC Channel #bitcoin-core-dev on Freenode. Bitcoin Core Slack Channel Bitcoin StackExchange, The Bitcoin StackExchange, is a good place to get all tricky questions answered. BitcoinTalk Development & Technical Discussion Forum Further project development discussion is on GitHub and the bitcoin-dev mailing list. For more informal development discussions, check out irc.freenode.net #bitcoin-core-dev (web interface, logs). 3/3