How should I learn programming?

First you should try to define what kind of programming you want to be doing, as in, what is it you want to do with your programming? For example, if you want to be a web programmer then you need to learn things like HTML-5, CSS, Javascript, PHP, etc. If you just want to make really fast apps for Mac or iOS then you need to learn Swift and Objective C. If execution speed isn't an issue but you need a language that is cross-platform, easy to learn, deploys to the web, works well with a lot of databases, then you might want to learn a scripting language like LiveCode. I'm not an affiliate for LiveCode, but I have written cross platform applications with it that work on macOS, Windows, and Linux computers. I have used it for web development too! There are some nice wikipedia articles about all the various computer languages that are out there, and what they are used for that might help you. If you are trying to get job as a programmer, then you need to consider what languages are in the most demand by various employers and try to be as main stream as possible. Good luck!
 
Search [what you want to do] + "python tutorial" on YouTube.

I learned doing the free tier Codecademy python first, then coding along to walkthroughs on YouTube. Video in one window, code in the other. All the knowledge you'd ever need is out there for free.
 
Programming seems very hard to me, but it has a huge potential. How can I start learning?
Follow your curiosity path. What's making you interested in Programming? It's the only way you will keep at it. Trust me, the road can be hard and lonely. Except you go by those boot camps that offer you a mentor with your stack.
 
Follow udemy programming courses. You can learn step by step programming by udemy courses. Find high rating course.
 
I think George Hotz says it best. "Just program"

Figure out what you want to solve/create and then go from there. A good way is with microcontrollers and an Arduino IDE for example. Real life hardware (LED's etc. that you can visualize) and program to your hearts content. A fun and interactive way to program for newbies. Python and C++ are involved and give a great grounding for learning other languages later on. Whatever you do, don't think you will learn how to program just by watching videos and reading books. You actually have to do it!

Best wishes and have fun. Once you get some little wins and open up Pandoras box, it's like taking a drug you never come down from.
 
Last edited:
Find some courses the best way to fast learn
 
you can start with this course in algorithms & data structures in C/C++ (my favorite - learnt the most from it) (grab it on a discount day)
Just follow it along, and all the info in this video is relevant to whatever language you choose.

You can then try to create a simple site using HTML/CSS/JS

If you have a project in mind, you should just consider tackling it and watching courses or lessons based on what you need to know as you go along.

Without a doubt, udemy is the best learning platform for programming.
 
Programming seems very hard to me, but it has a huge potential. How can I start learning?
Depends what you want, but I feel like Python or JavaScript would be most beneficial for you. Looking at your previous posts revolving around crypto and online marketing, I don't think you're looking into writing a new Windows.

Forget PHP - I'm not gonna say it's bad, but I do not personally like it all. It's a badly designed language that IMO does not fit modern era. Do not waste your time on it, I'm just waiting it to die honestly.

Python - I argue that almost every programmer should know Python. It's an amazing language. Easy to learn, very well supported and also leading AI language (like it or nor not, AI will be the norm). OP I'm not saying learn AI now, but if you're serious about programming, you should orient yourself very quickly in that direction. It's also really great for testing quickly - if I get a crazy idea, I can make a rough proof of concept really fast in Python. Perhaps the final language for the program will be different, but Python allows rapid development and testing.

BUT! Most importantly for a beginner, Python is the best almost without question. Why do I say this, regardless of the use-case. Because of it's flexibility. You can do almost anything in Python easily. Think of it as "do-it-all" language. Are there more specialized languages for certain use-cases, like JS for complex web apps and C++ for games? Yes. But Python is a jack of all trades and master of several at the same time. Want to learn to write an AI powered crypto trading bot? Python. Want to create your own content management system? Python. Want to create bots that send marketing emails? Python. Want to automate menial tasks at work? Python.

JavaScript - More oriented towards web. If you're looking forward for Web Development and creating amazing websites and online apps, JS is the choice for you. Pretty easy to learn as well and faster execution than Python (although until you write real complex and heavy apps, it will not make a difference to a human). JS is almost as good as Python overall, but I find Python more user friendly and easier to write (full disclosure, I'm better at Python tho). The syntax or formatting of the code is better for humans imo.

Hope this helps - there are plenty of great languages.
 
Think of a project you would like to solve & what you need to achieve it. It is a more practically way of learning. Watching hours of tutorial is senseless IMO
 
Wow, thanks for all this great help! Will definitely update you guys on my journey. Take care :)
 
Programming seems very hard to me, but it has a huge potential. How can I start learning?
Like others have mentioned, try solving problems. Programming is hard indeed, but that does not mean it is imposible to learn. Every new thing you want to learn has a learning curve.

It really helps if you approach learning programming from a problem solving aspect rather than trying to learn syntax. I personally do not worry about syntax much. With the help of modern IDEs, writing code isn't that hard. Figuring out how to solve a problem in small steps is the hard part. Another issue I see with new programmers is trying to write "perfect code". Yeah, spaghetti code does not ultimately help in a big project, but don't let that stop you from writing code! The more you write, the better you become writing clean code.

Another tip would be (I wish someone told me this 10 years back) to use correct tooling for the job. As an example, could you not write JS code with nano editor? Sure you could, but it will make your life a hell. If you use things like VS code, babel, typescript (I can't stress how important typescript is for the JS community. ) etc, your job will be a lot easier.
 
I think George Hotz says it best. "Just program"

Figure out what you want to solve/create and then go from there. A good way is with microcontrollers and an Arduino IDE for example. Real life hardware (LED's etc. that you can visualize) and program to your hearts content. A fun and interactive way to program for newbies. Python and C++ are involved and give a great grounding for learning other languages later on. Whatever you do, don't think you will learn how to program just by watching videos and reading books. You actually have to do it!

Best wishes and have fun. Once you get some little wins and open up Pandoras box, it's like taking a drug you never come down from.
Agree, but personally I could never bring myself to learn Python because I hate the name. I don't like snakes, and I don't want to find myself thinking about them everytime I sit down to try to program in Python. I think their marketing department made a huge error in giving the language such a negative name. Yuk! Maybe they should consider changing the name to Butterfly, Sunrise, or even Pickle. Anything else would be better.
 
Agree, but personally I could never bring myself to learn Python because I hate the name. I don't like snakes, and I don't want to find myself thinking about them everytime I sit down to try to program in Python. I think their marketing department made a huge error in giving the language such a negative name. Yuk! Maybe they should consider changing the name to Butterfly, Sunrise, or even Pickle. Anything else would be better.
haha! They really got you with the logo too then. Still though, it's a language worth knowing to a reasonable degree.
 
Back
Top