Bitcoin Forum

Other => Beginners & Help => Topic started by: Eugen225 on April 14, 2019, 12:43:56 PM



Title: How to start learning programming?
Post by: Eugen225 on April 14, 2019, 12:43:56 PM
I am very interested in the blockchain technology and I want to find out all about it. As I understand it, it is better to start with the usual programming. What is the best way for me to start, so that later it is convenient to join the development of the blockchain?


Title: Re: How to start learning programming?
Post by: Bitcoin_Arena on April 14, 2019, 12:52:37 PM
It majorly depends on your determination to learn.
YouTube is one such great tool to understand some basics about certain course units or topics

Not advertising it or something like that but www.bitdegree.org/ caught my eye. I just loved the whole idea of blockchain courses in it but you will obviously have to spend so money for the courses. I am no programmer but i just do try to learn basics about Bitcoin and the blockchain without going into deep details which involve programming.

I am pretty sure there are more such online course projects such as bitdegree, you can do a little digging.


Title: Re: How to start learning programming?
Post by: mk4 on April 14, 2019, 04:09:38 PM
Yeap. Go with non blockchain-focused programming for now. Start with the basics!

There are lots of free courses online, depending on what language you want to start with first. Check these out:

https://www.khanacademy.org/computing/computer-programming
https://www.coursera.org/courses?languages=en&query=python+programming
https://www.coursera.org/courses?query=programming&


Title: Re: How to start learning programming?
Post by: DdmrDdmr on April 14, 2019, 05:30:26 PM
If you are really into blockchain programming, one approach you can take is to scout through job offers to get a sense of what is being required nowadays, studying the requisites in terms of skills, programming languages, specific areas of experience and so on.

If you search job offers on linkedIn using the term "blockchain", today I got 12.987 showing offers worldwide. Reading through them will give you a notion of where to head for in your quest, although since you seem to be starting from scratch in programming itself, the learning curve is going to be steep. There are many previous concepts and logical patterns of thought you need to master first.


Title: Re: How to start learning programming?
Post by: Lakai01 on April 14, 2019, 05:41:37 PM
I am a software developer myself and studied it in high school. High schools in my country usually teach Java as the first as programming language to freshmen.

 I would also advise you to start a Java course if you are really interested in learning how to develop software. A well know Java book is called "Java in 21 days". Just search for it at Amazon :)

 


Title: Re: How to start learning programming?
Post by: roosbit on April 14, 2019, 05:43:46 PM
I am very interested in the blockchain technology and I want to find out all about it. As I understand it, it is better to start with the usual programming.
To use the blockchain technology you don't need to be an expert or in this case have some sort of programming expertise to use this tech unless you want to become the next Satosho Nakamto then consider studying computer science.

otherwise java script, python, java, ruby should put you on the right path

Quote
What is the best way for me to start, so that later it is convenient to join the development of the blockchain?
Bitdegree isn't a bad place start off from especially that you get to find some free courses there, then another alternative you can consider is https://www.udemy.com/topic/blockchain/


Title: Re: How to start learning programming?
Post by: Raja_MBZ on April 14, 2019, 06:21:52 PM
I am very interested in the blockchain technology and I want to find out all about it. As I understand it, it is better to start with the usual programming. What is the best way for me to start, so that later it is convenient to join the development of the blockchain?

An interesting question...

First of all, I must say that your academic background/your age matters when you're just starting to learn to code. 30+ years old people (having no academic background in programming as well as no previous experience) usually struggle in learning to code.

I'd recommend you to start with two languages: Python and Java. Get books of both the languages made for beginners. Start with the following compilers:

For Python: https://www.python.org/downloads/
For Java: https://www.oracle.com/technetwork/developer-tools/netbeans/downloads/index.html

When you've become friendly with the simple (procedural), functional, and object-oriented programming (you'll probably become friendly with them once you've read through half of the book), learn the usage of Github. At Github, learn to fork/clone and make pull requests. Make some contributions, even the minor ones will help you (and make you happy) in the start. Once you've done it all, move to blockchain projects. Learn to develop smart contracts in the start and your own coins by forking.

Once you've made it this far, lemme know by PM. I'll provide you a new roadmap. ;D


Title: Re: How to start learning programming?
Post by: pooya87 on April 15, 2019, 03:47:08 AM
you can not learn both at the same time. it is going to be extremely hard and time consuming. if you want to learn "programming" then start that and stay away from focusing on blockchain technology because the topics involved (such as cryptography and lots more) are complex and without having the programming knowledge first you can't really learn those. and it is time consuming too.

additionally if you want to just learn programming + blockchain to join the copycat and ICO nonsense then let me just tell you now that it is not worth the time you waste. you can spend that time more constructively and learn an actual skill that can earn you a lot more money.


Title: Re: How to start learning programming?
Post by: bhadz on April 15, 2019, 11:23:26 AM
Go study about the logic of programming first like Object Oriented Programming (OOP).
https://searchmicroservices.techtarget.com/definition/object-oriented-programming-OOP
Blockchain isn't just all about programming, if you don't understand the whole logic and idea of what programming is. Go with the basics like what others said.


Title: Re: How to start learning programming?
Post by: Wintersoldier on April 15, 2019, 04:17:30 PM
It would be better if you formally get an education for that however if your time isn't capable for that, then you may just buy some books that teach programming specializing in Blockchain. This would be hard if you don't have any background in basic programming; in this case you may start using Java, HTML, Phyton and etc.


Title: Re: How to start learning programming?
Post by: Velkro on April 16, 2019, 01:05:28 AM
As I understand it, it is better to start with the usual programming. What is the best way for me to start, so that later it is convenient to join the development of the blockchain?
There is no simple asnwer to that. For different people there is different method thats best for them. Its very individual.
Some want to start from "real" programming language like C/C++ but some take easier road with PHP. All depends on persona.


Title: Re: How to start learning programming?
Post by: Lakai01 on April 16, 2019, 05:04:08 AM
Quote from: Velkro
Some want to start from "real" programming language like C/C++ but some take easier road with PHP. All depends on persona.
It makes a lot of sense to start with non-OO languages like C or Pascal to get to know the basics of programming. Back in my highschool days we even had to learn Assembler but thats definitly nothing I would recommend to anyone who wants to learn programming ;)

Due to the fact that Java is so popular and easy to learn its definitly no bad choice to start with it. The gap to understand what objects are and how to use them may be a little higher compared to eg. starting with C but you have to take this gap anyways.


Title: Re: How to start learning programming?
Post by: beliomir on April 16, 2019, 07:02:28 AM
I am very interested in the blockchain technology and I want to find out all about it. As I understand it, it is better to start with the usual programming. What is the best way for me to start, so that later it is convenient to join the development of the blockchain?
It is necessary to enroll in some courses, always with a mentor who will help and correct errors.
You can also teach one, but it is long and exhausting.


Title: Re: How to start learning programming?
Post by: mu_enrico on April 16, 2019, 01:09:24 PM
It would be best if you learned the basics first. You need to know about a lot of things if you want to understand blockchain technology fully. You should know binary, cryptography, and programming languages.
Then you can specialize in many areas of development. Perhaps this industry needs more of UX developers.


Title: Re: How to start learning programming?
Post by: kryzhan on April 16, 2019, 02:30:17 PM
is it okay to use python as primary language for blockchain programming? or should i start to learn another lang?


Title: Re: How to start learning programming?
Post by: BitMaxz on April 16, 2019, 04:40:49 PM
is it okay to use python as primary language for blockchain programming? or should i start to learn another lang?
Good choice but you must focus first in this programming language before you learn the other languages you should start from the basic to advanced.
And next is learning C++ after you master these 2 languages you can start learning other programming languages and I think they are easy to learn (PHP, Java and other blockchain programs ETC...)

Important thing:
Don't forget to start with the basics before you go in advanced because if you study the basic and then shortcut you will never understand the program in advanced.


Title: Re: How to start learning programming?
Post by: r1a2y3m4 on April 16, 2019, 04:49:58 PM
First you need to know what programming language you wanted to learn. There were a lot of programming language exists and these are:
  • Phyton
  • C
  • C++
  • Java
  • Java script
All of these programming languages are helpful in crypto. I believe that there were people that uses combination of two or three languages to make some signatures. Not only that, I believe that if there are softwares or websites that a company wanted to produce, they might hire you. The best thing to do is to study at least top 1 to 5 programming languages.

Now, if you know now the languages you wanted to study, then search for it on youtube there were a lot of guides in there just pick the most recent ones. And if you want to program something just search on google the codes. For example there's a problem in which you need to create a program that counts characters and numbers. You can try and search in google "program in C++ that counts characters and numbers." Everything is searchable in the internet right now.


Title: Re: How to start learning programming?
Post by: OgNasty on April 16, 2019, 06:20:51 PM
Here's an easy place to start: https://www.youtube.com/watch?v=3xAO4K7FC6E


Title: Re: How to start learning programming?
Post by: harizen on April 16, 2019, 11:31:12 PM
Hope you take note of all responses here.

Even how helpful the source is, how good your mentors, how innovating your study will be, your knowledge will be based on how you are eager to learn. It will take years or depends on how your knowledge will be built.

Honestly, no need to literally learn all the internal stuffs of all programming languages just to be a pre-requisite to learn the whole blockchain tech but it's up to you. Well then, it will be a long journey like you are taking a usual course so all I can say is goodluck.


Title: Re: How to start learning programming?
Post by: Aero Blue on April 16, 2019, 11:46:49 PM
I know this is probably going to get buried in the comments, but I highly recommend buying a book over any web course. You will learn so much more in a much more structured fashion. Online courses are the trend, but books are the way to go. Get a beginner book and work through the exercises and it will help you so much more in the long run.


Title: Re: How to start learning programming?
Post by: wwzsocki on April 17, 2019, 12:20:53 AM
...There are many previous concepts and logical patterns of thought you need to master first.
Could you please specify them more accurately? I'm alone, curious about what you mean because I have a strong feeling that you have to start with it, although I do not know what it is?


Title: Re: How to start learning programming?
Post by: mk4 on April 17, 2019, 02:34:25 AM
I know this is probably going to get buried in the comments, but I highly recommend buying a book over any web course. You will learn so much more in a much more structured fashion. Online courses are the trend, but books are the way to go. Get a beginner book and work through the exercises and it will help you so much more in the long run.

While I definitely recommend a good book over a few courses/tutorials, I think there are simply some people that can absorb information more through watching than reading. I think books explain concepts a lot better, but video courses/tutorials do better in terms of demonstration obviously. In the end, why not both?  ;D


Title: Re: How to start learning programming?
Post by: Lakai01 on April 17, 2019, 04:15:28 AM
While I definitely recommend a good book over a few courses/tutorials, I think there are simply some people that can absorb information more through watching than reading.
Thats how I see it, too. It really depends on the person which type of media fits best. The biggest disadvantage of videos is that you cant put a video in your library to brag  which challenging literature you're reading ;)


Title: Re: How to start learning programming?
Post by: Aero Blue on April 17, 2019, 04:32:25 AM
While I definitely recommend a good book over a few courses/tutorials, I think there are simply some people that can absorb information more through watching than reading.
Thats how I see it, too. It really depends on the person which type of media fits best. The biggest disadvantage of videos is that you cant put a video in your library to brag  which challenging literature you're reading ;)

While I agree that learning varies from person to person, I think that a lot of people like to watch rather than read because it takes less effort. While its easier to watch a video, the information you retain is little to nothing compared to reading it. That's just a scientific fact, you have to be engaged to read whereas a video you can zone out half the time and not realize it. I really do hate reading but I feel that when it comes to important things, reading a book is always the best option if you want to learn most efficiently.


Title: Re: How to start learning programming?
Post by: DdmrDdmr on April 17, 2019, 08:07:40 AM
<…> Could you please specify them more accurately? I'm alone, curious about what you mean because I have a strong feeling that you have to start with it, although I do not know what it is?
IT is one of the sector with the highest degree of intrusion on the market, and all kinds of profiles end up working in this sector, whether they have an academic IT background or not. Often (not always) I find that people who lack an IT background also lack some basic logical thinking patters, and when they are set to programming, it shows.

Not that it cannot be picked up, but starting to program is not just about choosing a language and learning a syntax, but rather more so about understanding a bunch of concepts that are language independent. Amongst these we could include features such as (but not limited to):

-   Logical algorithm design (step by step process flow to resolve a problem). This is key.
-   Concepts such as Procedures, Functions, variables, objects.
-   Conditions and iterations.
-   Specific algorithms that may need to be used (i.e. tree or graph theory, recursiveness, backtracking).
-   Debugging.
-   Optimization.
-   Security.
-   Database design and optimization.
-   Transactions and atomicity.

Of course they can all be picked up as you go (not easily though, and each individual has differente capabilities to do so), but having a conceptual and logical background goes a long way to grasping a programming language and knowing how to use it properly.


Title: Re: How to start learning programming?
Post by: pawanjain on April 17, 2019, 05:11:26 PM
I am very interested in the blockchain technology and I want to find out all about it. As I understand it, it is better to start with the usual programming. What is the best way for me to start, so that later it is convenient to join the development of the blockchain?
You will first have to define your goal properly. If your goal is to learn programming then you must understand the basics of programming and start programming in languages like Python, Java etc..
You will find the guides on learning the basics on youtube and to learn the languages I would recommend doing some online courses. You can either try the free courses or join platforms like Udemy.

If your goal is to learn blockchain development then you must first learn the theoretical part of blockchain and then find courses which will teach you blockchain development.
I remember Tosh Academy having a Blockchain development course but it is a paid course for which you will also get a certification.
You can also join some free courses to learn in depth blockchain development but to accomplish that you must have good technical and programming skills.

These things are not so easy and it will take a good amount of time especially if you are not from a computer science background.


Title: Re: How to start learning programming?
Post by: wwzsocki on April 17, 2019, 05:13:14 PM
...I find that people who lack an IT background also lack some basic logical thinking patters, and when they are set to programming, it shows...
-   Logical algorithm design (step by step process flow to resolve a problem). This is key.
-   Concepts such as Procedures, Functions, variables, objects.
-   Conditions and iterations.
-   Specific algorithms that may need to be used (i.e. tree or graph theory, recursiveness, backtracking).
-   Debugging.
-   Optimization.
-   Security.
-   Database design and optimization.
-   Transactions and atomicity...

Thank you very much for this detailed answer, this is exactly what I wanted to know. I agree with you that logical thinking patterns are different for people with different education or even background. I asked for an explanation because, as you probably guessed, I tried to learn to code on my own and I wasn't able to do it by myself. I exaggerate a bit and with easier tasks for beginners, somehow with problems finally managed it but the further into the forest the darker and quickly you can get lost. Noticed that the way I am thinking is completely inadequate (one needs a kind of special, trained or learned logic), especially with more complex and difficult tasks, so far I couldn't find an exact explanation of where the error is. I knew that the years spent at the University are useful, although the majority of people are not convinced about it. My next free merit will be awarded to this post.


Title: Re: How to start learning programming?
Post by: pixie85 on April 17, 2019, 08:57:59 PM
THere are cheap and expensive options if you want to learn programming. The cheap ones include
watching courses online for free on youtube
reading the code of some simple programs to understand them
buying a book or downloading a pdf
asking a friend to teach you

There are also expensive ones like getting a tutor or going to one of the college courses where you get certified.


Title: Re: How to start learning programming?
Post by: pushups44 on April 18, 2019, 12:18:02 AM
Codeacademy is another web-based learning site that has gotten good reviews, but supplementary help such as books and hands-on practice are very beneficial.


Title: Re: How to start learning programming?
Post by: Lakai01 on April 18, 2019, 05:39:02 AM
-   Logical algorithm design (step by step process flow to resolve a problem). This is key.
I would like to add "advanced mathematics" as another key point. You need to understand concepts like axiomatic set theory or truth-tables to be able to understand more complex algorithms. Studying informatics in my country is all about mathematics in the first 2-3 semesters, it definitly pays off due to the fact that you understand complex code way faster with a good mathematics background!


Title: Re: How to start learning programming?
Post by: Zurcermozz on April 18, 2019, 01:21:17 PM
I am a software developer myself and studied it in high school. High schools in my country usually teach Java as the first as programming language to freshmen.

 I would also advise you to start a Java course if you are really interested in learning how to develop software. A well know Java book is called "Java in 21 days". Just search for it at Amazon :)

 

How about python, I am starting for programming but they keep saying that you need to learn python first before learning another language, should i accept this kind of terms.


Title: Re: How to start learning programming?
Post by: letitbit on April 20, 2019, 04:44:10 AM
First thing you need to do is study first the basics of your programming language what you want to learn it and watch tutorial videos on youtube and w3school or StackOverflow so many programmers there just post your error and they will answer and they help you to debug the codes


Title: Re: How to start learning programming?
Post by: crossabdd on April 20, 2019, 07:21:57 AM
I am very interested in the blockchain technology and I want to find out all about it. As I understand it, it is better to start with the usual programming. What is the best way for me to start, so that later it is convenient to join the development of the blockchain?

simple tips learning how program working, try use php and mysql (basic) i recomended "how to install LAMP/LEMP" , then  learning how CRUD working at PHP, implementation all the basic to next level, like laravel, node js etc.
for blockchain  try build your own token, then learning how token work, implementation it in next level to create coin etc.  ::)


Title: Re: How to start learning programming?
Post by: jak3 on April 20, 2019, 07:53:50 AM
I am very interested in the blockchain technology and I want to find out all about it. As I understand it, it is better to start with the usual programming. What is the best way for me to start, so that later it is convenient to join the development of the blockchain?
it's nice to see some young and new coders poping this year, Well if you are interested in understanding or even making the blockchain technology then I will say go for some major languages like Node-Js is often used and I think is the best choice for that. Because you have to use a lot of coders which are similar to JSON objects. you are not limited to any language, of course, I would start with python if I have to do it. Or you can also choose to go with PHP as it also has very good JSON handling. on top of all this if you really want some guidance then we can help in person.


Title: Re: How to start learning programming?
Post by: uzi on April 20, 2019, 08:27:32 PM
I personally liked the "how-to-code" services from https://www.codecademy.com/.
They have different levels of courses for complete beginners and amateurs, so there is always something to learn there even if you have some programming skills  :)


Title: Re: How to start learning programming?
Post by: pooya87 on April 21, 2019, 04:15:33 AM
~
How about python, I am starting for programming but they keep saying that you need to learn python first before learning another language, should i accept this kind of terms.

whoever told you that was very wrong.
you don't "have to" start from python before learning other languages. in fact i (as someone who started with Pascal and not on C#) would say that starting from a strongly typed language is a lot better but in the end that is just my opinion, it can be different  for different people.
people nowadays are starting with Python because it is apparently a lot easier to learn.


Title: Re: How to start learning programming?
Post by: fuathan on April 22, 2019, 02:24:06 AM
I am very interested in the blockchain technology and I want to find out all about it. As I understand it, it is better to start with the usual programming. What is the best way for me to start, so that later it is convenient to join the development of the blockchain?

First, you need to learn algorithm fundamentals. Python might be a good choice to start programming. You don't need to install lots of things such as SDKs, packages, etc.. There are some online courses on Youtube, udemy, coursera, etc.

After learning fundamentals, you can start learning JS and NodeJS for the backend. NodeJS is a common technology to develop blockchain applications.


Title: Re: How to start learning programming?
Post by: Aero Blue on July 21, 2019, 03:43:41 PM
I was pretty much at the same place you were around 2 years ago. One recommendation I have: start simple. One of the hardest things about programming is learning the general concept and how it all works. Once you learn one language, the others become significantly easier. I would suggest starting with a higher-level (closer to "human") language, such as Java or Python. I started with Python and I absolutely don't regret it at all, the main reason is: it's extremely flexible and you can learn so many useful skills from it. It's also becoming more and more useful in the age of data analytics, as compared to Java which is fading.

Absolutely the best way to learn programming is through an actual book, the online courses are awful and just a waste of money.

Here is an awesome collection Python textbooks (https://mcsp.wartburg.edu/zelle/python/).


Title: Re: How to start learning programming?
Post by: finaleshot2016 on July 21, 2019, 03:49:32 PM
Start in C+ or maybe python because it has basic codes that you will easily understand when coding. Python has a different kind of codes and github, you can browse those if you want to learn on different levels. I learned MATLab/Octave, Python, C++ during my programming subject days, even there's a prof that will teach you those, It's really hard. There are also youtube tutorials you can watch for you to learn basic programming codes.

https://github.com/python here's the link.