Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: Tactical Genius on August 12, 2017, 04:20:24 AM



Title: Blockchain development
Post by: Tactical Genius on August 12, 2017, 04:20:24 AM
What are the basic requirements for developing a blockchain?


Title: Re: Blockchain development
Post by: Fantum on August 12, 2017, 04:31:48 AM
First off, not having to ask that question. You need to know some programming, C++, java, python. Read this https://bitcoin.org/bitcoin.pdf That should be enough to figure it out. Here is another cool article about it for beginners https://medium.com/@lhartikk/a-blockchain-in-200-lines-of-code-963cc1cc0e54


Title: Re: Blockchain development
Post by: samson on August 15, 2017, 12:11:31 AM
First off, not having to ask that question. You need to know some programming, C++, java, python. Read this https://bitcoin.org/bitcoin.pdf That should be enough to figure it out. Here is another cool article about it for beginners https://medium.com/@lhartikk/a-blockchain-in-200-lines-of-code-963cc1cc0e54

You need to know how to program, you don't need to know all of the above languages. That's pure overkill. I've never used Python or Java for anything, I do however use C for some things and some other higher level cross platform GUI tools for desktop front ends. Ultimately a lot of languages (at least the ones I use) produce programs which are built with the LLVM backend.

Crypto libraries like mbedTLS and LibSodium are written in C but that doesn't mean you need to write the rest of your programs in C or C++ with the Qt environment like Bitcoin.

The basic libs can be used in combination with various modern and very simple to use languages.

There are higher level languages which allow you to use the exact same cryptography as Bitcoin or similar ECC variations like Ed25519 instead of Secp256k1 for example.

You could for example write it in one of the .NET languages or something a bit more cross plaform friendly, there are some quite useful GUI enabled cross platform (Win, Mac and Linux) languages out there if you go looking for them and you can use as much or as little lower level C/C++ stuff as you want.

I would suggest that the first step will be to learn how to use the crypto libraries properly and take it from there.

Writing a blockchain based system is not a small job but it can be done if you're dedicated to the task and have enough time to do so.

What kind of blockchain utilising system did you have in mind ?

I'm interested in a minimalist private blockchain based system for what I'm working on, it doesn't need to be a coin but would use issued tokens to authorise database entries in a distributed manner which is hard to tamper with and is read only for nearly all users apart from those authorised to add blocks. These tokens would have no monetary value and certainly wouldn't be traded anywhere but would serve to enforce fair use of the system and prevent abuse by trusted users.

This is just a pet project of mine but as an emerging and relatively new way of doing things I'm sure there will be many interesting developments in the future so it's an area worth pursuing even if it takes a few years to get up to speed or produce anything worthwhile.


Title: Re: Blockchain development
Post by: Enkeci on August 17, 2017, 06:15:11 PM
What are the basic requirements for developing a blockchain?

Time, Patience, Program language to build the codebases


Title: Re: Blockchain development
Post by: ampedWK on August 18, 2017, 05:53:30 AM
I would suggest that the first step will be to learn how to use the crypto libraries properly and take it from there.

+1 for this.  Working with even the JS and Python more abstract libraries can help with learning the 'feel' of developing and developing for a blockchain.  Looking at these Libs and actually ripping open the source can give insights about how RPC's and the like are used too. 

I've found that a lot of the baseline coding isn't that intensive but knowing the protocols inside and out is a real help.  Also, look at as much github and stack stuff as possible, a fair amount of info and tutorial stuff out there gets deprecated really quick.  Counts twofold for protocol transitions and as offchain scaling solutions grow, so will the number of expectations about what a blockchain should be able to do.  So be prepared to read a lot.  Take notes.  Then read some more.


Title: Re: Blockchain development
Post by: macromantra on August 20, 2017, 04:49:49 PM
Most blockchains out there  are forked from existing ones.


Title: Re: Blockchain development
Post by: pebwindkraft on August 20, 2017, 07:22:41 PM
welcome - our world needs deveoppers in this space :-)

and probably read "the reference" book from Andreas - Mastering Bitcoin.
http://chimera.labs.oreilly.com/books/1234000001802/

I found it then especially helpful to go to bitcoin.stackexchange.com, where many developpers provide help.
Oh, and then there is the set of bitcoin 101 by James Di Angelo (I hope I spelled his name correctly).
And then, when you are "there", Ken Shirrif explaned very well transactions and blocks here: http://www.righto.com/2014/02/bitcoins-hard-way-using-raw-bitcoin.html


Title: Re: Blockchain development
Post by: dagumak on August 21, 2017, 05:00:32 PM
If you’re interested in building a blockchain you have a few difficult tasks ahead of you. You have to decide what type of blockchain you want to implement. Then, you have to decide on how you’re going to build your mining community. Next, you’ll have to figure out how to get the larger community interested in your blockchain. It is not an easy task, unless you are doing it for fun.

The mining part is always my question. Correct me if I am wrong, in the case of bitcoin, you're always verifying if the transactions are correct then you find the correct hash. Let's use steemit.com as an example, what are they verifying in their mining process?


Title: Re: Blockchain development
Post by: zertsekel on August 26, 2017, 06:07:24 PM
Not sure if this is the right place to post it, but...

But to really understand the Bitcoin - it takes time, not 5 minutes, not even a couple of hours.
I have a lot 10+ years of programming experience and it took me a lot of time.
I mean, not only to get the big picture but to learn many other details.
This is why I created this online course for you guys "Bitcoin Kick Ass Course (for developers)".
This course takes nine weeks to understand and practice Bitcoin and Blockchain in details.
Take a look: https://redd.it/6vi3wp.
The one-page executive summary is there.


Title: Re: Blockchain development
Post by: RedenBlack13 on August 27, 2017, 07:35:48 PM
Hi! I'm a beginner, so my question can be stupid for a veteran, but I'd like to ask: I read about the utilization of blockhain and decentralized databases in many field of application, far from cryptocurrency, just like IoT communication or data storage. How this can be possible?


Title: Re: Blockchain development
Post by: wavelengthsf on August 27, 2017, 07:51:32 PM
Hi! I'm a beginner, so my question can be stupid for a veteran, but I'd like to ask: I read about the utilization of blockhain and decentralized databases in many field of application, far from cryptocurrency, just like IoT communication or data storage. How this can be possible?

A blockchain is built around the idea of trustless consensus.

In IoT, you have potentially millions of nodes connected, but you don't know if they're all playing by the same rules or have the same objectives. A blockchain would allow these devices to synchronize around a common set of rules. This works especially well if the devices are made from different vendors, since they don't have to trust each other, just that the consensus rules are well implemented.

Transfer of money is one proven use of a blockchain, but in theory you can use it to implement any set of rules that require a database and coordination of that database across the network.

 


Title: Re: Blockchain development
Post by: HotCryptoNews on August 28, 2017, 06:17:16 AM
If you really intend to start using the blockchain, there are blockchain specific "languages" eg. solidity which you program smart contracts with on a blockchain, it's a lot like Javascript. I reccommend looking for the blockchain development course on https://www.udemy.com.


Title: Re: Blockchain development
Post by: AdisBegic on September 01, 2017, 11:14:11 AM
I would suggest that you enroll in a course on coursera with relevance to blockchain technology. They have a very in-depth course that will help you understand the concepts behind the technology and also assign you tasks, where you can incorporate what you've just learned.
Once you've become familiar with the technology itself and wants to start out as a developer, please don't hesitate to PM me and I'll help you get started, I know it can be hard to get started and having someone help you towards the right path and away from all the circulating nonsense is something I wish I had, when I dove in head first. Once you're familiar with the concepts, the high level languages then you should dive into the low level stuff EVM bytecode stuff (this is where it gets difficult for most but this is where you become the best)


Title: Re: Blockchain development
Post by: Jay taylor on December 26, 2017, 01:34:09 PM
Given that blockchain technology is evolving very fast and the landscape changing from day to day I will focus on the two following platforms.

Ethereum is certainly one of those blockchain platforms that has a future due to the great community developing applications and smart contracts. I think it is one of the best so I would put on top of my list.

Hyperledger is a great platform as well even it is not as famous as Ethereum. Hyperledger is a LinuxFoundation projects that was first developed by IBM and then donated to the LinuxFoundation. Its slogan is “Blockchain solutions for business”. So the focus of the project is to provide permissioned blockchain technology for business solutions. Some business blockchain frameworks hosted within Hyperledger projects are Hyperledger Sawtooth, Hyperledger Fabbric and Hyperledger Iroha.


Title: Re: Blockchain development
Post by: Sats.Obol on December 26, 2017, 02:25:58 PM
What are the basic requirements for developing a blockchain?

Summary:
  • A Programming Language
  • Cryptography 101
  • Mathematics
  • Networking
  • Network Security


Good Morning Frčro,
I've done a little research on Blockchain creation and it does require some knowledge on coding. now which particular Programming Language is your choice, but if you truly want to dev a blockchain, coding is essential.

Also, a solid understanding of the basics of Cryptography would help.

with Cryptography also comes Math, I am still not sure which disciplines in Mathematics would be more rewarding though.

Basic knowledge on Network security, also Basic Networking knowledge (Especially TCP/IP)

this is not a comprehensive list at all, but this is what I've noticed I required some knowledge in when researching and attempting to understand what Blockchain tech is and how it functions.

- Hope this helped.


Title: Re: Blockchain development
Post by: hopeAo on December 26, 2017, 07:06:54 PM
What are the basic requirements for developing a blockchain?

1.Know  basic commands line code (C++).

2.You will need to access your computers console.

3.Invest in a book called Mastering by Andreas Anasopolous this man has a wealth of knowledge and YouTube videos and an online class at the university of Nicosia.

4.You will also need Git Hub there's lots of chain codes there.

5.Remember there are different kind of blockchains for example Ethereum is different than Bitcoin and say Open Ledger is an exchange but also a community and you can create coins in there if you can figure it out.

6. http://davidderosa.com/basic-blockchain-programming

7.Go to http://bitcoin.org there is lots of resources there you will need and say http://bitcoin.com/en/development there you will find developer communities and be able to get advice from other Dev’s along your way.

8.Read all about it and practice with yourself alone with the Internet dev peeps.


Title: Re: Blockchain development
Post by: g0rlitzer on January 22, 2018, 09:58:51 AM
What are the basic requirements for developing a blockchain?

That's not so difficult, the internet gives us every tool we need. I' don't know C ++, but i found some basics how to in javascript (it s simpler, trust me):
https://github.com/ltearno/blockchain-js (https://github.com/ltearno/blockchain-js)
https://medium.com/@lhartikk/a-blockchain-in-200-lines-of-code-963cc1cc0e54 (https://medium.com/@lhartikk/a-blockchain-in-200-lines-of-code-963cc1cc0e54)
https://www.savjee.be/2017/07/Writing-tiny-blockchain-in-JavaScript/ (https://www.savjee.be/2017/07/Writing-tiny-blockchain-in-JavaScript/)

Just do it, again and again. Ah you probably need a little of technical background, so i suggest you to read and study Mastering Bitcoin by Antonopoulos.
Finally blockchains may have different consensus protocols. Bitcoin foresees a proof of work concept (computing power to ensure randomness in forging) Ether eum uses PoS, Lisk DPoS and so on.. try to figure all of it out!
Good Luck! ;D


Title: Re: Blockchain development
Post by: hugeblack on January 22, 2018, 11:55:12 AM
What are the basic requirements for developing a blockchain?
1. blockchain like Bitcoin, litecoin, and Ethereum is a protocol.
2. bitcoin written by Satoshi Nakamoto in C++.
3. reading whitepaper of bitcoin will help you to know most of the altcoins {https://bitcoin.org/bitcoin.pdf (https://bitcoin.org/bitcoin.pdf)}.
4. Ethereum is C++ and Python.
5. blockchain stack is JavaScript.

learning C++, Python, JavaScript, and whitepaper of bitcoin giving you basic requirements for developing a blockchain.


Title: Re: Blockchain development
Post by: cryptoclock-ro on January 30, 2018, 05:25:17 PM
Greetings to everyone!
There is a pretty new anonymous cryptocoin which has a huge potential and is currently at a low price.
Is called BitcoinZ and is inspired from ZCash. Here is a video about it and an interactive explanation of the zkSNARKS algorithm:

https://youtu.be/3hVG888tOpY (https://youtu.be/3hVG888tOpY)

If you have some free time, please check it out.
Have a nice day!


Title: Re: Blockchain development
Post by: HALLASTERA on February 01, 2018, 08:24:56 PM
I would recommended to you course https://bitcoinedge.org/tutorials but only free version.


Title: Re: Blockchain development
Post by: Bitophile on February 01, 2018, 09:30:30 PM
Here is another cool article about it for beginners https://medium.com/@lhartikk/a-blockchain-in-200-lines-of-code-963cc1cc0e54

Thanks. It is a good place to start.


Title: Re: Blockchain development
Post by: alexeyneu on February 02, 2018, 11:51:10 AM
i think you need 1-2 years of degree that includes real level math. you cant do it selfstate i guess(athough it's possible)   coz on any math above school level there is no books with much of hard-to-solve tasks so even if you have enough motivation i doubt you can gain skills.


Title: Re: Blockchain development
Post by: jokowi on February 03, 2018, 02:11:40 AM
What are the basic requirements for developing a blockchain?
Blockchain is a ledger or hierarchical database that maintains records of digital transactions. It has a network of databases that is copied, synchronized over the internet and displayed to anyone joining the network. Blockchain networks can be private or public. You need to have knowledge of programming to use blockchain


Title: Re: Blockchain development
Post by: tuanphanq on February 03, 2018, 02:25:41 AM
Hello, I am a newbie, but I have a question that does we have blockchain for 4.0?


Title: Re: Blockchain development
Post by: msuheb on February 03, 2018, 09:41:11 AM
First off, not having to ask that question. You need to know some programming, C++, java, python. Read this https://bitcoin.org/bitcoin.pdf That should be enough to figure it out. Here is another cool article about it for beginners https://medium.com/@lhartikk/a-blockchain-in-200-lines-of-code-963cc1cc0e54

the links you have given are great. But, i do not think that Solidity has any relation with the C, C++, Java, etc.


Title: Re: Blockchain development
Post by: Ant2018 on February 06, 2018, 05:15:09 PM
So is it possible to create your own coin that can be used on the lightning network???