Bitcoin Forum
April 25, 2024, 06:36:04 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 3 »  All
  Print  
Author Topic: Learning to program on the blockchain?  (Read 5238 times)
Skrodk (OP)
Newbie
*
Offline Offline

Activity: 45
Merit: 0


View Profile
August 29, 2017, 09:08:14 AM
 #1

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?
1714026964
Hero Member
*
Offline Offline

Posts: 1714026964

View Profile Personal Message (Offline)

Ignore
1714026964
Reply with quote  #2

1714026964
Report to moderator
Transactions must be included in a block to be properly completed. When you send a transaction, it is broadcast to miners. Miners can then optionally include it in their next blocks. Miners will be more inclined to include your transaction if it has a higher transaction fee.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
aleksej996
Sr. Member
****
Offline Offline

Activity: 490
Merit: 389


Do not trust the government


View Profile
August 29, 2017, 10:58:13 AM
 #2

You should probably start by getting some programing 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 programing. 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 programing.
buddabudda
Newbie
*
Offline Offline

Activity: 15
Merit: 0


View Profile
August 29, 2017, 02:40:22 PM
 #3

Java or C++ are great languages to start getting to the principles of Object Oriented Programming.
ebtnym
Newbie
*
Offline Offline

Activity: 2
Merit: 0


View Profile
August 29, 2017, 06:29:25 PM
 #4

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.
Skrodk (OP)
Newbie
*
Offline Offline

Activity: 45
Merit: 0


View Profile
August 29, 2017, 09:54:32 PM
 #5

You should probably start by getting some programing 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 programing. 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 programing.

How long would you think I have to devote to it, til I have an acceptable understanding?
aleksej996
Sr. Member
****
Offline Offline

Activity: 490
Merit: 389


Do not trust the government


View Profile
August 30, 2017, 07:08:15 AM
 #6

You should probably start by getting some programing 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 programing. 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 programing.

How long would you think I have to devote to it, til I have an acceptable understanding?

We are talking about maybe 3 books worth of reading with understanding. It would be hard for me to estimate it in hours, but if you spend maybe an hour everyday on average, you could probably understand the basics of programing in a year. So it depends on how much of your time you set aside for it, but I think in that at some pace it is possible to do it in under a year. There is no hurry and this knowledge is useful in the long run as well, since it is basics. But as anything in life, if you are not interested in it, programing and computers I mean, then it will be a waste of your time. Don't even try if you can't see yourself as a possible programmer one day, it takes too much time for something you won't go after in your life. A year of someone's life in not little, you probably have less then 100 of them left. So if you have a passion to understand computers, go ahead, if you are here just for quick cash, don't bother.
bibyte
Newbie
*
Offline Offline

Activity: 11
Merit: 0


View Profile WWW
August 30, 2017, 09:00:27 AM
 #7

I always choose C++
pebwindkraft
Sr. Member
****
Offline Offline

Activity: 257
Merit: 343


View Profile
August 30, 2017, 09:53:51 AM
 #8

We need more programmers in this exciting crypto currency world - welcome!
There is a common understanding, that you need to have 5000 working hours to become an expert.
And in crypto currency world, it is not only about programming, also you need to understand the eco system and the security - it's all about money, right ?  Wink
 
On programming: no matter what language you go, I recommend a short training course. There are many, many courses (coursera, udemy, ...) online, or you go to your local school and verify opportunities. It makes sense to have people to exchange with, that makes learning easier.

On crypt currencies: professionals usually start with reading before coding. This would bring you immedeatly to bitcoin.org, to understand the eco system.
Then you could read probably the online book (or buy it) from Andreas: "Mastering Bitcoin", here: http://chimera.labs.oreilly.com/books/1234000001802/ It is available in many languages.
Also there is the very good post from Ken: http://www.righto.com/2014/02/bitcoins-hard-way-using-raw-bitcoin.html
On youtube you find Bitcoin 101, which explains alot.
thealex12
Full Member
***
Offline Offline

Activity: 266
Merit: 100


View Profile
August 30, 2017, 04:22:14 PM
 #9

It is actually not that difficult to be experienced in the blockchain. One month of checking news and informing and you'll know more than a lot of others. If you want to do something for the blockchain in the programming direction, then you should learn solidity. Solidity is the most used code language for programming smart contracts. Good Luck!! Smiley
bitbollo
Legendary
*
Offline Offline

Activity: 3234
Merit: 3473


Nec Recisa Recedit


View Profile
August 30, 2017, 04:53:24 PM
 #10

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.

Hi thank you for sharing this link. Did you have programmed your blockchain from this guide?

I need some libraries in my mac air, or I can just use the normal python one's?
Of course, I am not programmer, but I have good technical skills, because I have learned some basic uses of some languages.

Hi pebwindkraft in which section Andreas Antonopoulos explain how to program on the blockchain?

███████████████████████████
███████▄████████████▄██████
████████▄████████▄████████
███▀█████▀▄███▄▀█████▀███
█████▀█▀▄██▀▀▀██▄▀█▀█████
███████▄███████████▄███████
███████████████████████████
███████▀███████████▀███████
████▄██▄▀██▄▄▄██▀▄██▄████
████▄████▄▀███▀▄████▄████
██▄███▀▀█▀██████▀█▀███▄███
██▀█▀████████████████▀█▀███
███████████████████████████
.
.Duelbits.
..........UNLEASH..........
THE ULTIMATE
GAMING EXPERIENCE
DUELBITS
FANTASY
SPORTS
████▄▄█████▄▄
░▄████
███████████▄
▐███
███████████████▄
███
████████████████
███
████████████████▌
███
██████████████████
████████████████▀▀▀
███████████████▌
███████████████▌
████████████████
████████████████
████████████████
████▀▀███████▀▀
.
▬▬
VS
▬▬
████▄▄▄█████▄▄▄
░▄████████████████▄
▐██████████████████▄
████████████████████
████████████████████▌
█████████████████████
███████████████████
███████████████▌
███████████████▌
████████████████
████████████████
████████████████
████▀▀███████▀▀
/// PLAY FOR  FREE  ///
WIN FOR REAL
..PLAY NOW..
DimaPechka
Jr. Member
*
Offline Offline

Activity: 57
Merit: 10


View Profile
August 30, 2017, 08:29:51 PM
 #11

Lear Java, it is the best way to strart
genesis.vision
Member
**
Offline Offline

Activity: 258
Merit: 10

The next step in Financial Markets evolution


View Profile WWW
August 31, 2017, 07:40:32 AM
 #12

Best library I've used so far is bitcoinj, it allows to query blockchain info you need without downloading it. There are implementations for Java, but if you have no programming experience it would be best to start with the basics (e.g. learn structure and algorithms of programming languages).

Genesis Vision — Decentralized Platform for Asset Management
 ▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰ TRADE WITH GV ▰▰▰▰▰▰▰▰▰▰▰▰▰▰▰  
●  Twitter Facebook •  The next step in financial markets evolution • Telegram Medium  ●
achow101
Moderator
Legendary
*
expert
Offline Offline

Activity: 3374
Merit: 6535


Just writing some code


View Profile WWW
August 31, 2017, 02:04:41 PM
 #13

Best library I've used so far is bitcoinj, it allows to query blockchain info you need without downloading it.
That's not true. It still has to download part of the blockchain and there is still a lot of info that you cannot get from it without downloading the entire blockchain. For example, you cannot use bitcoinj to find an arbitrary transaction in the blockchain since it does not have that data and it can't ask for that from a node.

malboroman
Newbie
*
Offline Offline

Activity: 52
Merit: 0


View Profile WWW
August 31, 2017, 02:29:24 PM
 #14

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

Activity: 54
Merit: 0


View Profile
August 31, 2017, 02:37:46 PM
 #15

If you want start quickly, I would not recommend C++, since too many bumps. You could start from java.
EADG
Newbie
*
Offline Offline

Activity: 13
Merit: 0


View Profile
August 31, 2017, 03:14:14 PM
 #16

What makes Java easier?  I've heard that I should try it.  I haven't programmed for a very long time, and am part of the generation that was ruined by BASIC.  OOP blows my mind still lol
GetFreeCoins
Member
**
Offline Offline

Activity: 111
Merit: 10


View Profile
August 31, 2017, 08:52:15 PM
 #17

Java or C++ are great languages to start getting to the principles of Object Oriented Programming.

but what if I dont want to learn programming?
achow101
Moderator
Legendary
*
expert
Offline Offline

Activity: 3374
Merit: 6535


Just writing some code


View Profile WWW
August 31, 2017, 09:05:06 PM
 #18

but what if I dont want to learn programming?
Then you can't do anything with "program on the blockchain" (which, by the way, is completely meaningless because you don't program on a blockchain).

AdisBegic
Newbie
*
Offline Offline

Activity: 31
Merit: 0


View Profile
September 01, 2017, 11:20:13 AM
 #19

Hi,
I just had friend like you who I helped to become familiar with Ethereum development. I would suggest that you go through the freecodecamp.com site up till intermediate frontend projects so you understand the basics of HTML, CSS, Bootstrap and Javascript. Once you've done this, go to udemy and pick up a great course on NodeJs to gain some knowledge on backend development and especially the unittesting area. This will put you up for a great start into blockchain development as you will be able to dive head first into solidity easier (syntax pretty similar to javascript) and also be able to write test cases to your solidity code. Once, you feel comfortable with the high level languages, you can dive into the EVM and bytecode stuff to really master your craft! I wish you a happy learning adventure and greet you welcome to the best developer community in the world Smiley If you need any type of guidance, feel free to PM me.
aretebit
Member
**
Offline Offline

Activity: 84
Merit: 10

All that glitters is not bitcoin


View Profile
September 01, 2017, 11:26:24 AM
 #20

What makes Java easier?  I've heard that I should try it.  I haven't programmed for a very long time, and am part of the generation that was ruined by BASIC.  OOP blows my mind still lol

Java SE is basically C++ but without some things that may produce errors for inexpert programmers like pointers, and with a exception handling system that avoids mistakes for you.

But for enterprise applications Java EE is much more complex than solutions with .Net C#.

Dirty evil government thieves: Return me my money!
Pages: [1] 2 3 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!