Ask HN: How to Self-Learn Programming?
I am self-learning programming for building web apps. Self-learning is not working. I am constantly switching from one language to another, Python to JS, or HTML, or CSS.
I don't have enough money and time to join any course or bootcamp.
Please give me some advice to self-learn programming.
8 comments
[ 3.0 ms ] story [ 24.8 ms ] threadRead official documentation/tutorials as you develop.
You may not like the language. You may not like the project. But finish the job with the tools you chose.
Real-life life lesson right there.
important thing to understand is - webapp are becoming more complex these days. so getting whole picture will take some time.
you can try below simple project too.
1. build library project using python. take name of books as input and add/delete/update/list in database like mysql.
2. now build new database to add/delete/update/list name of students
3. then add relationships to manage books borrowed by students
4. do same thing using web. take input from webforms and store in mysql. retrieve them again. for backend you can try flask framework.
Solve the problem.
Get yourself a project. Any project, but preferably not too minor. Write that project in your new language. Many times while doing that, you will need to do a few days or more of solid studying of the new language to get yourself past a hurdle that's blocking your progress.
Eventually, you will complete the project. Now, throw that one away. It was just to 'show you the ropes'. (That's commonly said as "Build one to throw away.") Now do that project again with your new, greater, basis of knowledge.
Repeat that with several projects. You now have a fair level of self-taught programming in that one language.
Repeat that process again but using a different language. There will be hurdles again, but different hurdles.
Now you know programming to a reasonable level.
Rinse, repeat. Rinse, repeat. Rinse, repeat.
https://developer.mozilla.org/en-US/docs/Learn/Getting_start...
i suggest find someplaces like this to retrieve some skeletons so you can see simplicity then learn to flesh it up, start small just make a page that says hello world, and displays a kitten pic , or some such thing:
https://linuxwebdevelopment.com/html5-boilerplate/
how you learn is important top down or bottum up. do you look at the big picture grand scheme and dissect it to find what parts make it up? or do you look at fundamental pieces, and examine how they relate to each other and function as a group?
here is a place to experiment with JS script so you can edit a snippet and see how things change:
https://jsfiddle.net/boilerplate/react-jsx/
keep in mind there are many flavours of java, but basically its a programme sitting inside the html.
CSS can be confusing to read if you have no context for it.
https://developer.mozilla.org/en-US/docs/Learn/CSS/Introduct...
basically CSS is a way of enforcing a certain look or layout but there are some cool tricks that can do things like animations, or changing fonts formats and images according to some event in the browser.
frameworks come up, this is a not basic aspect