Click here to Skip to main content
15,887,135 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
i want to know what should i learn to be a real programmer.
not just some one who made bad apps with mess code . what i need to learn before coding do i need to learn algorithms first or i need to learn coding with algorithms in the same time. finally i hope some one help me with course that i really can learn something from it.

What I have tried:

i tried to learn java then kotlin after that finally i start with dart (flutter) but i fell i'm lost
Posted
Updated 24-Mar-21 7:42am

If you are lost with Dart & Flutter, then maybe you need to start with something simpler. Try to get hold of a book on Python or C to get the fundamental ideas. Once you understand the concepts at the beginner level you can move on to the more advanced languages like C#, Java etc.

You could start at The Python Tutorial — Python 3.7.10 documentation[^] which leads you from first principles.

But be prepared for a long journey, you cannot become an expert overnight; as is true with most things in life.
 
Share this answer
 
You can't really separate "algorithms" from "coding", because they rely to a large extent on each other.
In fact, there is a famous book about it: Algorithms Plus Data Structures Equals Programs (Prentice-Hall series in automatic computation): Amazon.co.uk: Wirth, Niklaus: 9780130224187: Books[^] and while it's nearly 50 years old, what it says is still true!

If you want to be "an expert programmer" then there is one thing you need to do: practice.
It doesn't matter what algorithms you use, what language you select: experience is the great teacher, and it provides you with a way to see how "good" you are - just wait six months and read your code again. If it's cr@p, you're getting better! :laugh:
 
Share this answer
 
You have to know that you can do pretty much anything in any language, simply some languages are harder for beginners because there is more pitfalls to handle.
You need to master a set of techniques that are the basis of the job and are not linked to a language.

Advices:
- Start with an easy/safe language: VB, Java, C#, not C or C++. I do not recommend to start with Python either because of the usage of indentation.
- Read documentation / Follow tutorials (a lot of them)
- Start with tiny/useless projects, the purpose is to learn programming, not doing something useful.
- Start with console mode programs (no fancy graphics, no mouse)
- Learn debugger (an incredible learning tool)
Debugger - Wikipedia, the free encyclopedia[^]
Mastering Debugging in Visual Studio 2010 - A Beginner's Guide[^]
- A problem ? Google is your friend.
- Learn one or more analyze methods, E.W. Djikstra/N. Wirth Stepwize Refinement/top-Down method is a good start.
Structured Programming.pdf[^]
https://en.wikipedia.org/wiki/Top-down_and_bottom-up_design[^]
https://en.wikipedia.org/wiki/Structured_programming[^]
https://en.wikipedia.org/wiki/Edsger_W._Dijkstra[^]
https://www.cs.utexas.edu/users/EWD/ewd03xx/EWD316.PDF[^]
Program Development by Stepwise Refinement[^]
- Learn Algorithms and Data-Structures.
GitHub - The-Art-of-Computer-Programming-Books: "Everyday life is like programming, I guess. If you love something you can put beauty into it." ? Donald E. Knuth[^]
Skiena The Algorithm Design Manual
- Learn Boole algebra
- Learn SQL
- Learn Databases design and Administration
Introduction to database design[^]
1NF, 2NF, 3NF and BCNF in Database Normalization | DBMS Tutorial | Studytonight[^]
- Learn Regular Expressions

Interesting link:
stanford.edu: Learn to Program[^]
CodersLegacy - Imparting knowledge to the Future[^]

There is no shortcut to knowledge, no one can learn for you, you are the only one that can do it.
Remember the exercises and little projects are not here to make something useful, they are here to teach you programming.

My most important part is probably: Learn one or more analyze methods.
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900