What should I do while learning programming?

  • Thread starter shivajikobardan
  • Start date
  • Tags
    Programming
In summary: 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.
  • #1
shivajikobardan
674
54
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.
 
Technology news on Phys.org
  • #2
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
pbuk said:
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
shivajikobardan said:
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.

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

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

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

shivajikobardan said:
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.

shivajikobardan said:
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.

shivajikobardan said:
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.

shivajikobardan said:
(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
shivajikobardan said:
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
pbuk said:
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
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
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
shivajikobardan said:
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.
 

1. What programming language should I learn first?

The answer to this question depends on your specific goals and interests. Some popular options for beginners include Python, Java, and JavaScript. Research the different languages and their uses to determine which one aligns with your goals.

2. How much time should I spend practicing programming?

Consistency is key when learning programming. It is recommended to spend at least 1-2 hours each day practicing, but the amount of time may vary depending on your schedule and learning style. It's important to find a balance between practicing regularly and avoiding burnout.

3. Should I focus on learning one programming language or multiple?

It's generally recommended to focus on one programming language at a time, especially as a beginner. This will help you build a strong foundation and understanding of programming concepts. Once you feel comfortable with one language, you can branch out and learn others.

4. How can I stay motivated while learning programming?

Learning programming can be challenging and it's important to stay motivated. One way to do this is by setting achievable goals for yourself and tracking your progress. Additionally, seeking out a community of fellow programmers can provide support and motivation.

5. What resources are available for learning programming?

There are many resources available for learning programming, including online courses, tutorials, books, and coding bootcamps. It's important to find resources that align with your learning style and goals. It may also be helpful to seek out mentorship or join a coding community for additional support and guidance.

Similar threads

  • Programming and Computer Science
Replies
7
Views
881
  • Programming and Computer Science
Replies
1
Views
732
  • Programming and Computer Science
4
Replies
107
Views
5K
  • Programming and Computer Science
Replies
17
Views
1K
  • Programming and Computer Science
Replies
1
Views
768
  • Programming and Computer Science
Replies
5
Views
855
  • Programming and Computer Science
Replies
7
Views
2K
  • Programming and Computer Science
Replies
33
Views
2K
  • Programming and Computer Science
Replies
9
Views
1K
  • Programming and Computer Science
Replies
11
Views
1K
Back
Top