Author

Topic: Technical aspect of bitcoin. (Read 246 times)

legendary
Activity: 3472
Merit: 10611
November 02, 2023, 11:31:59 PM
#12
And how would knowledge of programming help (or will help) the OP or any other user who wants to become an expert in the technical aspects of the bitcoin? The source code of the bitcoin remains unchanged and will remain so in the future. I think this can only be useful and interesting as a hobby or as a professional curiosity. Programming can help you understand the contents of a bitcoin, but what practical use will it be? It seems to me none. 
If you know programming you will be able to read the code and have an easier time understanding certain concepts like the way the cap is enforced by halving the block reward all in the code, how the cryptography is utilized, how the FORTH like bitcoin smart contracts operate, etc.

As for the source code, it is constantly changing and improving. What doesn't change or rather rarely change is the consensus rules. Otherwise if you check out any Bitcoin project's source code you can see they are very active. Example: Bitcoin Core has almost 40k commits last of which was 8 hours ago. Electrum has almost 17k commits last of which was 10 hours ago.
If you know programming you can always contribute to these projects or start a new one that can help the community grow, whether a free and open source tool or something that you can monetize like a DEX.
legendary
Activity: 2296
Merit: 2721
November 02, 2023, 01:47:45 PM
#11
[...]
Finally, if you were to suggest your top three sites for learning the technical parts of bitcoin, excluding this forum, what would you recommend, keeping in mind that I have no programming expertise and only know the basics of bitcoin?
I don't have any websites to hand right now, but I would highly recommend the book "The Bitcoin Standard" as introductory reading, also as an addition to the book mentioned by seek3r. The book not only gives you a general overview of the technical aspects but also (and significantly more) impressions of the idea behind Bitcoin ... and why Bitcoin - at least as the idea of "be your own bank" - is so important:


Source

Especially if you're relatively new to the subject, it doesn't hurt to read less technical articles and books, you'll definitely learn a lot that will help you enormously with your technical understanding later on. You will find the book at the seller of your choice!
legendary
Activity: 1792
Merit: 1296
Crypto Casino and Sportsbook
November 02, 2023, 11:32:24 AM
#10
Do I need to be familiar with any programming languages? Because I observed "0,1 and a few letters" used to describe a transaction hash and also sometimes stuff like "git" while browsing through some old threads, and it made me wonder how you get to know such? Can someone who does not know how to code excel in this area? Or should I simply stick to the basics I already know about bitcoin, such as wallet types, a few things regarding security and privacy, and some other things I've read about but haven't been able to put into practise?
Knowing programming in general helps but it is not mandatory to understand a lot of stuff in Bitcoin. There is nothing that you "should" learn because it all depends on your interests and how deep you want to dive. Try to start small because the amount of information is massive and you can get overwhelmed very quickly. A good place to start is the source I post at the end. You can move to learning programming in the second phase.
And how would knowledge of programming help (or will help) the OP or any other user who wants to become an expert in the technical aspects of the bitcoin? The source code of the bitcoin remains unchanged and will remain so in the future. I think this can only be useful and interesting as a hobby or as a professional curiosity. Programming can help you understand the contents of a bitcoin, but what practical use will it be? It seems to me none. 

Almost any ordinary user can master everything that is necessary without any additional knowledge, which is precisely what expresses the simplicity and genius of the bitcoin. This is exactly what a massive electronic cash should be like. Accessible to everyone.
hero member
Activity: 862
Merit: 662
November 01, 2023, 09:32:44 PM
#9
Finally, if you were to suggest your top three sites for learning the technical parts of bitcoin, excluding this forum, what would you recommend, keeping in mind that I have no programming expertise and only know the basics of bitcoin?

https://github.com/bitcoinbook/bitcoinbook
https://cryptobook.nakov.com/digital-signatures/ecdsa-sign-verify-messages
newbie
Activity: 11
Merit: 30
November 01, 2023, 02:46:08 PM
#8
I'm thrilled with the responses I've received thus far.

I've realised that despite my lack of programming skills, I'll be able to understand some things about the technical aspect of bitcoin, though there may be some limitations as to what I'll be able to comprehend unless I'm willing to go the extra mile, but for now, let me stick with the fundamentals and as time goes on, I may consider other things, after all, "Rome wasn't built in a day."

  • You don't understand of x? Create a new topic.
  • Read more about the technical parts, in sources like learnmeabitcoin.com. Whatever you don't know, go to step 1.

This is a great idea, but since I'm just getting started, I think I'll have to compile my questions and probably start a thread if I have at least three questions that I can't find answers to in the forum or if the previous explanations aren't clear to me, because if I start creating threads for all of my questions, I can already picture my name as the starter of so many threads in such a short period of time, which is why I'll just compile them.
legendary
Activity: 1512
Merit: 7340
Farewell, Leo
November 01, 2023, 06:40:25 AM
#7
My journey looked like this:

  • You don't understand of x? Create a new topic.
  • Read more about the technical parts, in sources like learnmeabitcoin.com. Whatever you don't know, go to step 1.
  • Try to make out how we ended up with these rules, which involves learning more about the history of Bitcoin. For instance, answer yourself questions like "why did we make this work in such complicated way?", "what is a hardfork / softfork?", "why is there this limitation?" etc.
  • Read the arguments of people who worked on Bitcoin. They describe best the answers to the "why" questions, as they themselves had to answered them first.

Knowing programming is optional, IMO. It would absolutely help you to practice Bitcoin, but in another level. If you want to dive into that, I'd advice you to start reading how Bitcoin, in its simplest form, works, just as envisioned by the founder in 2009: v0.1 (compare that with v25.0 and you will notice difference!). You'll need to know basic C++ to understand what happens there.

The cryptography, as said by apogio, is one of the most intimidating parts, but fascinating nonetheless.
hero member
Activity: 560
Merit: 1060
November 01, 2023, 04:40:22 AM
#6
Can someone who does not know how to code excel in this area?

Absolutely, definetely! If you want to contribute, you obviously need to write code, but if you want fundamentally understand bitcoin, you need some basic knowledge in computer science, cryptography and finance.

I understand that especially cryptography sounds intimidating and to be honest, it is. I am a dev and cryptography is an astonishingly vast area, meaning that I find it confusing, despite my studies.

But you only need the desire to learn because nobody will judge you in this process.

Getting deeper into bitcoin will offer you great knowledge.
legendary
Activity: 1260
Merit: 2014
November 01, 2023, 04:36:39 AM
#5
I don't think so. It's really as simple as downloading, verifying, installing, and running Bitcoin Core. You might not initially understand everything it is doing, and you might not initially understand how to use all the available commands and more technical functions, but it's very easy to start running a node and also a good method to start to learn more about how the network functions. Just don't put any actual coins in your node's wallet and then it doesn't really matter if you make any mistakes along the way.
Then you misunderstood me. Or I didn't bring it across correctly, sorry.
You summed it up well, installing Bitcoin Core is definitely not a science. What I meant was that as a layman/beginner you don't necessarily have an understanding of all the functions.

My thought was this: What's the point of running a node if I don't understand anything?
But I have to give in and admit that I was too strict about it and that it is a good idea to gain practical experience during the learning phase. It's not called for nothing Learning by doing

If you really want it to be a book, I would recommend Mastering Bitcoin by Andreas M. Antonopoulos.
That is the book that pooya has linked to on GitHub.

Oh, indeed... thats my bad. I just looked at the link, which didn't indicate a connection between them. If I had clicked on the link I would have noticed it straight away.  Roll Eyes
legendary
Activity: 2268
Merit: 18711
November 01, 2023, 04:16:17 AM
#4
IMO running a full node requires a deep understanding already.
I don't think so. It's really as simple as downloading, verifying, installing, and running Bitcoin Core. You might not initially understand everything it is doing, and you might not initially understand how to use all the available commands and more technical functions, but it's very easy to start running a node and also a good method to start to learn more about how the network functions. Just don't put any actual coins in your node's wallet and then it doesn't really matter if you make any mistakes along the way.

If you really want it to be a book, I would recommend Mastering Bitcoin by Andreas M. Antonopoulos.
That is the book that pooya has linked to on GitHub.

I would also suggest this site as a great starting place (although it hasn't been updated in a while so newer developments in bitcoin are not covered): https://learnmeabitcoin.com/
legendary
Activity: 1260
Merit: 2014
November 01, 2023, 02:02:41 AM
#3
I can actually only agree with @pooya87.

Ofc programming knowledge is beneficial (especially C or Python) but its not necessary at all.
With the knowledge of that its easier to comprehend hwo transactions and blocks are created/validated across the network but there are a lot of resources available that explain these steps in a more accessible manner for beginners.

IMO running a full node requires a deep understanding already.
There are a few things to get in touch with Bitcoin and and the associated network. One point is of course to absorb as much as possible here in the forum, and there are also many books/wikis as you have already seen.
Another option is the testnet where you can experiment as you wish without any risks.

The best source in my opinion to get you started is https://github.com/bitcoinbook/bitcoinbook
For questions and more technical knowledge apart from this forum you can use the https://bitcoin.stackexchange.com/ site and the https://developer.bitcoin.org/ section of bitcoin.org website alongside the wiki https://en.bitcoin.it/wiki/Main_Page
If you would ask me I would definitely point out to the developer guide aswell.
If you really want it to be a book, I would recommend Mastering Bitcoin by Andreas M. Antonopoulos.
legendary
Activity: 3472
Merit: 10611
November 01, 2023, 12:11:08 AM
#2
Do I need to be familiar with any programming languages? Because I observed "0,1 and a few letters" used to describe a transaction hash and also sometimes stuff like "git" while browsing through some old threads, and it made me wonder how you get to know such? Can someone who does not know how to code excel in this area? Or should I simply stick to the basics I already know about bitcoin, such as wallet types, a few things regarding security and privacy, and some other things I've read about but haven't been able to put into practise?
Knowing programming in general helps but it is not mandatory to understand a lot of stuff in Bitcoin. There is nothing that you "should" learn because it all depends on your interests and how deep you want to dive. Try to start small because the amount of information is massive and you can get overwhelmed very quickly. A good place to start is the source I post at the end. You can move to learning programming in the second phase.

Quote
Speaking of "real life," if I don't receive any hands-on experience, would I still understand what they're saying? Because, based on what I've seen, having a full node will cost me more than I can afford owing to the size and data required to sync/download the entire blockchain, will I still be able to do well with only rudimentary knowledge?
You don't need to run a full node if you want to learn more a bout Bitcoin at a technical level.
You also don't need to run a full node if you want to use bitcoin, you can use SPV clients such as Electrum that are light and don't consume that much space/traffic.

Quote
Finally, if you were to suggest your top three sites for learning the technical parts of bitcoin, excluding this forum, what would you recommend, keeping in mind that I have no programming expertise and only know the basics of bitcoin?
The best source in my opinion to get you started is https://github.com/bitcoinbook/bitcoinbook
For questions and more technical knowledge apart from this forum you can use the https://bitcoin.stackexchange.com/ site and the https://developer.bitcoin.org/ section of bitcoin.org website alongside the wiki https://en.bitcoin.it/wiki/Main_Page
newbie
Activity: 11
Merit: 30
October 31, 2023, 09:05:11 PM
#1
I've read several posts on the technical board and I'm actually impressed at how knowledgable some users are, which made me question what I'd need to get started on my journey to become an expert in the technical aspects of bitcoin.

Do I need to be familiar with any programming languages? Because I observed "0,1 and a few letters" used to describe a transaction hash and also sometimes stuff like "git" while browsing through some old threads, and it made me wonder how you get to know such? Can someone who does not know how to code excel in this area? Or should I simply stick to the basics I already know about bitcoin, such as wallet types, a few things regarding security and privacy, and some other things I've read about but haven't been able to put into practise?

Speaking of "real life," if I don't receive any hands-on experience, would I still understand what they're saying? Because, based on what I've seen, having a full node will cost me more than I can afford owing to the size and data required to sync/download the entire blockchain, will I still be able to do well with only rudimentary knowledge?

Finally, if you were to suggest your top three sites for learning the technical parts of bitcoin, excluding this forum, what would you recommend, keeping in mind that I have no programming expertise and only know the basics of bitcoin?
Jump to: