Today I want to tell you a little about Clients.
Today I want to tell you a little about Clients.
The added benefit of this knowledge is that it will separate you from people who don't know what to do in moments of chaos.
Lets start..
How are you?
Nasılsın?
Как вы?
I made three sentences. Someone who doesn't know these three sentences in English, Turkish or Russian would think they are completely different things, right?
The writings are different, the length is different, even the letters are different in one of them.
However, all three sentences are used to ask how the other person is, their current mood, and tell the same things.
The only difference between them is the difference in spelling.
If you translate a German novel into English and have it read by an English person, or if you translate it into Turkish and have it read by a Turkish person, they will both understand all the events in the novel in the same way.
Now let's get to the point...
I mentioned "Language" above. Language is a sound integrity created for people to understand each other. You explain your problem and what you want to have done to a person through language.
So, how do you explain your problems and what you want the computer to do?
Again with language.
In order to tell the computer to add 2 and 2, a language that the computer can understand is needed. And this language that computers understand is called programming language.
Let's continue, there are tons of languages available for communication between people. The same goes for the computer.
Python, JS, C++, Rust... there are thousands of languages. You install a program to teach these languages to the computer, and now you can command the computer and communicate with it using these languages.
Let's give an example:
Let's say add 2 + 2 to the computer with Python:
result = 2 + 2 print(result)
Let's say add 2 + 2 with Rust:
fn main() { let result = 2 + 2; println!("{}", result); }
If you run these two codes; The answer the computer gives you will always be 4. No matter what language you write in.
--- Now let's get into it ---
Every program, website, game, Bitcoin, Ethereum, Twitter etc. you use on your computer. each of them has a language. All of them.
Let's continue with Bitcoin, after all, Bitcoin is an application and it needs to be written in a language so that it can be understood and run by computers.
Limiting it to 21 million units, commanding miners to halve their rewards after this many blocks, etc. etc. All of them are actually a much more complex version of the 2 + 2 command I wrote above.
Satoshi Nakamoto wrote Bitcoin in C++ language, and today we call this Bitcoin code integrity "Bitcoin Core" software.
If you want to install a Bitcoin fullnode, you first install an application on your computer to understand C++, your computer learns C++, and by installing Bitcoin Core on your computer, you now run the Bitcoin software on your computer.
Alright; Let's think with what we learned from above; Since Bitcoin is open source, that is, we can see all kinds of its code, well...
If I, as Tobby Kitty, create a language called TobbyLang and write Bitcoin in "TobbyLang" from beginning to end and run it on my computer, will it work?
Reply; If I write the Bitcoin rules correctly, yes.
You can think of this as follows: If I wrote Crime and Punishment in Russian without changing it to a language I created, would that novel be Crime and Punishment? Yes.
This is one of the things that makes Bitcoin or Ethereum beautiful. The codes are open and anyone can read, write or draw these codes as they wish.
Lets continue..
Ethereum is software, just like Bitcoin. A language is needed to understand and operate the blockchain called Ethereum.
Here is the version of Ethereum written in Go language: Go-ethereum, which is Geth that everyone has heard of.
( @go_ethereum ) If you sit down and write the same Ethereum in C# language from the .NET family, it becomes Nethermind ( @NethermindEth ) It is possible. If you write Ethereum in Java, Besu ( @HyperledgerBesu ) It is possible.
Now, everyone understands. Let's talk about the benefits of beans..
Friends, whatever Geth, Besu, Nethermind I mentioned above... We call them "CLIENT".
Client means client in Turkish, in very simple terms, it is the module you install to access the program. Example for understanding: To connect to the internet; You need to install "client" on your computer or phone. The same is true for blockchains. You need Clients to access blockchains, make transactions here, and confirm this blockchain. Now. We understood the client, we figured out what the hell it was... We came to the point where the clarion calls bullshit. This client work is very difficult. These clients are the most complex codes in the blockchain world. They literally consist of thousands, tens of thousands of lines of code. Writing a client, or rather writing an error-free client, requires great mastery and this is not a job that a single person can do. Even Satoshi Nakamoto made tons of mistakes in his Bitcoin Core client. In fact, there were huge vulnerabilities in the codes he wrote that due to a bug in the client, millions of Bitcoins were mined out of thin air, and this error was corrected by forking Bitcoin. https://en.bitcoin.it/wiki/Value_overflow_incident
In Ethereum, Geth is the most used client. Because Geth is the client with the most team behind it. Even today Avalanche, Fantom, BSC etc. Blockchains running EVM have made their own chains by copying this Geth, because the trust in Geth is high.
(Avalanche crew, don't get promoted immediately, let's not start talking about how we didn't fork Geth, even the deaf sultan knows it, making changes to the code doesn't mean you don't get it to a large extent, anyway..)
Yalnız insanların bu yüksek güven Geth'te sıkıntı olup olmayacağı anlamına gelmemeli.
If the Geth explodes; 78% of all Ethereum will explode, that is, Ethereum will face a serious danger of chain split, Ethereum will stop, even double spending etc. depending on the severity of today. It also means dramatic disasters such as
Although the Ethereum community says to focus on other clients other than Geth in order to prevent this disaster, the community does not seem to mind this.
In the future, we will tell you all the intricacies of this incident, all its details, possible types of attacks, what to do to ward it off, etc. I will explain information such as this at length.
Thank you tobby for this valuable information.