Bitcoin Forum
December 16, 2018, 11:43:11 PM *
News: Latest Bitcoin Core release: 0.17.0 [Torrent].
 
   Home   Help Search Login Register More  
Pages: « 1 2 [3]  All
  Print  
Author Topic: Learning to program on the blockchain?  (Read 5059 times)
Katalyst
Newbie
*
Offline Offline

Activity: 21
Merit: 0


View Profile
September 14, 2017, 05:29:31 PM
 #41

I would definitely learn C first, then move onto C++ or Rust.

This is a book I would highly recommend:

C Programming Language, 2nd Edition 2nd Edition
by Brian W. Kernighan  and Dennis M. Ritchie

If you find C to be too daunting maybe try python, as it resemples natural language a bit more.
1545003791
Hero Member
*
Offline Offline

Posts: 1545003791

View Profile Personal Message (Offline)

Ignore
1545003791
Reply with quote  #2

1545003791
Report to moderator
PLAY NOW
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
Morchid
Sr. Member
****
Offline Offline

Activity: 587
Merit: 255


DeepOnion to the moon!!! :)


View Profile WWW
September 14, 2017, 11:43:17 PM
 #42

You should probably start by getting some programming experience. I guess you could learn about C first a bit. You can't really understand blockchain that well if you don't know what are linked lists and some cryptography about hashes and public keys. You need to know about assembly language a bit, to understand stacks if you wish to understand Bitcoin transactions in detail, since they are like little programs on their own (scripts to be exact).

Read some beginner books about C programming. Then read up a bit about hashes and public key cryptography. Then maybe you will need some about assembly language to understand it low level. Then the Bitcoin whitepaper I guess. And so own. But start with programming.

           ▀██▄ ▄██▀
            ▐█████▌
           ▄███▀███▄
         ▄████▄  ▀███▄
       ▄███▀ ▀██▄  ▀███▄
     ▄███▀  ▄█████▄  ▀███▄
   ▄███▀  ▄███▀ ▀███▄  ▀███▄
  ███▀  ▄████▌   ▐████▄  ▀███
 ███   ██▀  ██▄ ▄██  ▀██   ███
███   ███  ███   ███  ███   ███
███   ███   ███████   ███   ███
 ███   ███▄▄       ▄▄███   ███
  ███▄   ▀▀█████████▀▀   ▄███
   ▀████▄▄           ▄▄████▀
      ▀▀███████████████▀▀
DeepOnion
Anonymous and Untraceable
ANN  Whitepaper  Facebook  Twitter  Telegram  Discord 





      ▄▄██████████▄▄
    ▄███▀▀      ▀▀█▀   ▄▄
   ███▀              ▄███
  ███              ▄███▀   ▄▄
 ███▌  ▄▄▄▄      ▄███▀   ▄███
▐███  ██████   ▄███▀   ▄███▀
███▌ ███  ███▄███▀   ▄███▀
███▌ ███   ████▀   ▄███▀
███▌  ███   █▀   ▄███▀  ███
▐███   ███     ▄███▀   ███
 ███▌   ███  ▄███▀     ███
  ███    ██████▀      ███
   ███▄             ▄███
    ▀███▄▄       ▄▄███▀
      ▀▀███████████▀▀
.
triads
Member
**
Offline Offline

Activity: 84
Merit: 10


View Profile
September 15, 2017, 06:37:33 AM
 #43

+1 for C as a good place to start. I trained in C++ and found it a good foundation
and quite similar to blockchain languages like Solidity.

A word of advice on taking courses: you should probably decide in advance
what level to shoot for. If you just want to understand other people's code,
then you don't need nearly as deep an understanding. A pretty light course like
the stuff on Coursera will do fine. I'd recommend this as a first level to shoot for.

Once you get the that level, you can decide if you want to progress to being able
to produce and debug code. If so, then deeper engagement is needed. Ideally
you'll want a course where you have specific projects to produce and some sort of
instructor / mentor to give you feedback. That interaction is key to learning. For
that reason, I would not recommend trying to learn something like C++ from
a book.
Kogs
Member
**
Offline Offline

Activity: 86
Merit: 12


View Profile
September 15, 2017, 06:56:59 AM
 #44

You said, you want to learn to use it, so I don't think you are talking about programming in bitcoin core code.

You should start very high level.

I suggest something like this
  • Learn a Script language. Python would be a good start, as lot of Bitcoin RPC examples are written in Python
  • Get a full node and learn to use the Bitcoin RPC with your selected Script language
  • Write lot of Scripts where you read blocks/transactions and do some usefull stuff with it
  • Maybe you should also learn how to use JSON API. With this knowledge you could maybe program your own trading bot for several exchanges
  • With that you have the basics to write background applications. Then you could start learning web development
  • At this point, if you understood and practiced all the previous points, you could theoretically program whatever service you can think of.
    Maybe something like blockchain.info, a market which excepts bitcoin as payment, an own exchange or whatever you might find useful
  • If such services are not your thing and you really want to dig into core programming, you need to learn C/C++ and you also need to learn all those cryptography stuff used in Bitcoin in a more detailed level.
    But here it starts to get really complex

I think, most people who want to program something in crypto, think about any web service. And for this it is not necessary to learn in detail about the deeper stuff, as the RPC functions you can use, do the most of this stuff for you.
Bagrras
Jr. Member
*
Offline Offline

Activity: 57
Merit: 10


View Profile
September 15, 2017, 12:17:12 PM
 #45

Start to learn Java at first. It will be easy and very useful
Ucy
Sr. Member
****
Offline Offline

Activity: 700
Merit: 271


View Profile
September 16, 2017, 01:34:59 PM
 #46

It's better to start from some educational videos on YouTube and then go deeper into the articles/educational cources.

Absolutely. Videos are usually my favorite way to learn really difficult stuff quickly. Reading a subject becomes easy after watching good video on it.
bitmeo
Newbie
*
Offline Offline

Activity: 13
Merit: 0


View Profile
September 19, 2017, 12:01:17 AM
 #47

C++ are great language to start Programming  Undecided
Micerker
Full Member
***
Offline Offline

Activity: 380
Merit: 100


Decentralized Digital Billboards


View Profile WWW
September 19, 2017, 12:15:34 AM
 #48

So, I have absolutely no programming experience.

But I find the blockchain technology incredibly exciting, and I would like to learn at least how to use it to a certain extend, I realize im not going to become an expert overnight, but where do i start?
You can start with C/C++ and later you can download the source of bitcoin node from github and start learning from it. You also can use the cryptonote and multichain to learn.

barabut
Full Member
***
Offline Offline

Activity: 224
Merit: 100



View Profile
September 19, 2017, 06:19:41 AM
 #49

So, I have absolutely no programming experience.

But I find the blockchain technology incredibly exciting, and I would like to learn at least how to use it to a certain extend, I realize im not going to become an expert overnight, but where do i start?
It is not that easy starting from the beginning, wish you success...
mstone
Newbie
*
Offline Offline

Activity: 10
Merit: 0


View Profile
September 19, 2017, 08:47:29 PM
 #50

I would definitely recommend you start off with Java or Python. C++ can be pretty harsh for beginners
englander
Newbie
*
Offline Offline

Activity: 49
Merit: 0


View Profile WWW
September 21, 2017, 07:06:20 AM
 #51

As someone who has just started his journey into Blockchain development, here's resources that helped me on my journey. I'd like to note though that I have a background in coding in Java, C++, and Python already although I would say I'm average in my coding experience. As everyone said, it would be best to learn a little bit of coding so you can at least understand how to read code and know the fundamentals of how to write it. Once you get there, definitely check these resources out.

http://consensys.github.io/developers/articles/101-noob-intro/ (A good read to start your journey into developing)

https://www.youtube.com/playlist?list=PLH4m2oS2ratdoHFEkGvwvd7TkeTv4sa7Z (A free set of tutorial videos on YouTube that goes over smart contracts and how to write your own DApp)

https://app.pluralsight.com/library/courses/blockchain-fundamentals/table-of-contents (Sign up for their free 10 day or 200-minute trial. You can easily watch this whole course within the trial, just be careful in rewinding and take your time.)

https://www.coursera.org/learn/cryptocurrency (An online course that goes into the technical details of Bitcoin and Cryptocurrency. Very detailed and works like an online class with assignments that need to be submitted at certain times.)

https://github.com/ethereum/wiki/wiki/Ethereum-Development-Tutorial (More reading material)

I've also bought a bunch of Udemy courses for $10 each that I haven't gotten to yet. If you want to buy these courses for that price, use the coupon TIENDEO10 to get them for only $10. I don't know how long the coupon will last so if you really want an extra source to teach you the material, I recommend to buy them quick as these courses can go up to $100+. This is without knowing how often these courses actually go on sale however.

The coursera link you have there is a great resource for people who are just learning about blockchain and cryptocurrencies, specifically they talk about how hashes, hash pointers, merkle trees, etc. and then get into consensus, and there are practice quizzes along the way.  If you're not a programmer, then this you can simply audit the course and not do the assignments.  I found this to be one of the most valuable courses out there for newbies to blockchain and crypto about the concepts.  I would start here, then learn a programming language like JavaScript or Python because they're quite similar to Solidity which is used for Ethereum development.  Many of the new tokens are sitting on top of the Ethereum blockchain as ERC-20 standard tokens.
tobi4255
Full Member
***
Offline Offline

Activity: 183
Merit: 100



View Profile
September 21, 2017, 03:43:37 PM
 #52

Go downlaod ethereum core.

They made it for blockchain programming,
also read a bunch of the crypto source code.
it will help you understand Smiley

★ ★ ★BTC  ◉PLAY  ◉XMR  ◉DOGE  ◉STRAT  ◉ETH  ◉GRC  ◉LTC  ◉DASH  ◉PPC ★ ★ ★
mroth7684
Full Member
***
Offline Offline

Activity: 196
Merit: 100



View Profile
September 21, 2017, 05:40:30 PM
 #53

This might help.
https://medium.com/crypto-currently/lets-build-the-tiniest-blockchain-e70965a248b
Covers blockchain basics and, as a bonus, it's written in Python. So if you have zero programming experience it should lessen the pain a little bit.
do you have experience how many time for who dont known code can learn this sir?

microtron
Newbie
*
Offline Offline

Activity: 18
Merit: 0


View Profile
September 21, 2017, 10:10:23 PM
 #54

New companies such as Lisk have brought Java into the picture, this is easier to learn than C++
chicobr
Full Member
***
Offline Offline

Activity: 237
Merit: 250



View Profile
September 24, 2017, 06:37:32 PM
 #55

http://blockchaindemo.io
this website show you how blockchain work and also have tutorial for you to make ur own blockchain. Cheesy
user_
Newbie
*
Offline Offline

Activity: 17
Merit: 1


View Profile
September 26, 2017, 09:04:16 PM
 #56

In my view the most important thing is to get involved in a project related to blockchain programming and then you will be able to learn everything that is related to programming for a blockchain. Just make sure you're interested in the project itself, then you will quickly learn one of the available programming languages and corresponding blockchain libraries. Interest and motivation makes or lack of them breaks. If you just start learning some languages, you will be very soon bored because of the irrelevant details provided on hundreds of pages. So get some books and use them as references only. Do not try to read from cover to cover. Video courses (Coursera, Udemy, etc) are not for everyone, for example I get quite bored watching videos. It is much better for me to skim some book in search for the information I need. It is much faster and more efficient.
So, to conclude, to learn to program for blockchains, get involved in some project related to blockchains.
cuculatoeggekeenam
Newbie
*
Offline Offline

Activity: 23
Merit: 0


View Profile
September 28, 2017, 03:53:24 PM
 #57

maybe you can start by asking your friends who are proficient in programan, or can learn via the internet for example from youtube, because of youtube now many tutorial of it. now a lot of ways to learn, google also can help a lot from the origin want to try.
nicosey
Full Member
***
Offline Offline

Activity: 314
Merit: 101



View Profile
September 29, 2017, 01:01:11 AM
 #58

Still think bcoin.io is one of the easiest ways to learn.

achow101
Moderator
Legendary
*
expert
Offline Offline

Activity: 1610
Merit: 1835


bc1qshxkrpe4arppq89fpzm6c0tpdvx5cfkve2c8kl


View Profile WWW
September 29, 2017, 01:13:50 AM
 #59

Locking this thread; it is just becoming full of spam now.

Pages: « 1 2 [3]  All
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!