What should I do while learning programming?

  • Thread starter shivajikobardan
  • Start date
  • #1
shivajikobardan
556
35
TL;DR Summary
how to learn programming?
Here is what I have planned to do-:
1) Do 1 course.
2) Buy a python textbook and solve it exercises and examples.
3) Solve 250 codewars problems
4) Do numerical methods in python.
5) Do cryptography algorithms in python.
Will this be enough for my learning to be good enough to be a web developer in python? (I Need to learn django afterwards I know that). IWTL.
 

Answers and Replies

  • #2
pbuk
Science Advisor
Homework Helper
Gold Member
4,088
2,411
A few thoughts:
  • Numerical methods and cryptography algorithms won't help you at all with developing for the web.
  • There are different branches of web development, mainly split into back-end (what runs on the server) and front-end (what the user sees in the browser). For back-end development you also need to learn databases, and for front-end development Python is no use at all and you need to learn HTML, CSS, JavaScript and JavaScript frameworks.
  • Django is not the only Python web framework and you should also learn Flask.
 
  • Like
  • Informative
Likes sysprog, berkeman, FactChecker and 1 other person
  • #3
shivajikobardan
556
35
A few thoughts:
  • Numerical methods and cryptography algorithms won't help you at all with developing for the web.
  • There are different branches of web development, mainly split into back-end (what runs on the server) and front-end (what the user sees in the browser). For back-end development you also need to learn databases, and for front-end development Python is no use at all and you need to learn HTML, CSS, JavaScript and JavaScript frameworks.
  • Django is not the only Python web framework and you should also learn Flask.
It is to improve my basics of programming about loops etc...Not for web. I Want to make my basics strong.
 
  • #4
pbuk
Science Advisor
Homework Helper
Gold Member
4,088
2,411
It is to improve my basics of programming about loops etc...Not for web. I Want to make my basics strong.
Hmm, we seem to have a communication barrier. Let me relate my answers more directly to your questions.

Here is what I have planned to do-:
1) Do 1 course.
This will help you improve your basics of programming about loops etc.

2) Buy a python textbook and solve it exercises and examples.
This will help you improve your basics of programming about loops etc.

3) Solve 250 codewars problems
This will help you improve your basics of programming about loops etc., although 250 is rather a lot.

4) Do numerical methods in python.
This will not help you improve your basics of programming about loops etc - you need to be really strong in the basics before you tackle numerical methods. Also, learning how to implement numerical methods in Python will take a great deal of time and effort and is unlikely to help you with your long term goals.

5) Do cryptography algorithms in python.
This will not help you improve your basics of programming about loops etc - you need to be really strong in the basics before you tackle numerical methods. Also, learning how to implement cryptography algorithms in Python will take a great deal of time and effort and is unlikely to help you with your long term goals.

Will this be enough for my learning to be good enough to be a web developer in python?
No, in order to be a back-end web developer you also need to understand databases (both RDBMS like the various implementations of SQL and the so-called NoSQL services). In order to be a front-end or full-stack developer Python is no use at all and you need to learn HTML, CSS, JavaScript and JavaScript frameworks. There are also more concepts you need to understand to be good enough to be a web developer, particularly asynchronous programming.

(I Need to learn django afterwards I know that). IWTL.
Not necessarily, there are a lot of Django websites out there but Flask is more relevant for new developments in 2021. IMHO you will be a better web developer if you learn Flask first and then Django rather than the other way round.
 
  • Like
Likes valenumr, BvU, sysprog and 1 other person
  • #5
36,911
8,965
Summary:: how to learn programming?

Here is what I have planned to do-:
1) Do 1 course.
2) Buy a python textbook and solve it exercises and examples.
Here's a very basic online textbook that will help you with Python basics. Its topics include conditionals, loops, functions, exceptions, and strings - https://codehs.com/textbook/intropython_textbook/. It has a few multiple-choice questions and fill-in-the-code questions to check your understanding.
 
  • Like
Likes sysprog and pbuk
  • #6
shivajikobardan
556
35
Hmm, we seem to have a communication barrier. Let me relate my answers more directly to your questions.


This will help you improve your basics of programming about loops etc.


This will help you improve your basics of programming about loops etc.


This will help you improve your basics of programming about loops etc., although 250 is rather a lot.


This will not help you improve your basics of programming about loops etc - you need to be really strong in the basics before you tackle numerical methods. Also, learning how to implement numerical methods in Python will take a great deal of time and effort and is unlikely to help you with your long term goals.


This will not help you improve your basics of programming about loops etc - you need to be really strong in the basics before you tackle numerical methods. Also, learning how to implement cryptography algorithms in Python will take a great deal of time and effort and is unlikely to help you with your long term goals.


No, in order to be a back-end web developer you also need to understand databases (both RDBMS like the various implementations of SQL and the so-called NoSQL services). In order to be a front-end or full-stack developer Python is no use at all and you need to learn HTML, CSS, JavaScript and JavaScript frameworks. There are also more concepts you need to understand to be good enough to be a web developer, particularly asynchronous programming.


Not necessarily, there are a lot of Django websites out there but Flask is more relevant for new developments in 2021. IMHO you will be a better web developer if you learn Flask first and then Django rather than the other way round.
I see. I see... I will cancel cryptography and numerical methods then. I am really interested in cryptography tho.
 
  • #7
Svein
Science Advisor
Insights Author
2,274
787
My usual comment: Learn to create a design document before you code (stating what you are trying to do, what methods you are going to implement, a rough sketch of what subroutines you are planning etc.).
 
  • #8
FactChecker
Science Advisor
Homework Helper
Gold Member
7,744
3,402
There is a lot of software engineering that you should start to become familiar with. Change management is important, especially in large projects. Learn how to use git or some other source control tool.
 
  • #9
valenumr
467
191
I see. I see... I will cancel cryptography and numerical methods then. I am really interested in cryptography tho.
What do you mean by cryptography though? There is a massive gulf between applying crypto algorithms, such as pki, and really having a fundamental understanding as to why they work, or getting really deep, understanding how to build a crypto algorithm. Numerical methods aren't super hard, but they also require a deep mathematical understanding. To the latter, there is much literature on numerical algorithms, so one could just implement a runga-kutta integrator without any forethought, but there are many problems that can occur that won't be solvable without deeper understanding.
 

Suggested for: What should I do while learning programming?

Top