Building things. Above all, it is the best way to learn. Plenty of sites/resources offer you canned exercises that help you gain familiarity with some concepts, syntax, etc. But nothing beats taking an idea you can express and grasp in human terms and turning it into a program. Here are some starter ideas I give just about every new/aspiring dev I work with because just about everyone knows how they work since they were kids (well, at least in the US):
- Tic Tac Toe
- Rock Paper Scissors
- memory/matching game
You can easily ratchet up the complexity once you have these working. Tic Tac Toe can be turned into Connect Four, for example. Similarly, you can increase the complexity of a memory/matching game by increasing the board size, or use what you learn there to create a rudimentary game of Go Fish.
There are some more typical types of things to build that feel less playful, of course. Build a to-do app. Or a blog. Or a simple chat/messaging program. Don't over complicate it. Keep it as simple as you can to learn what matters here—CRUD operations with a database, client-server interaction, templating, MVC, and so on.
I learned that "reading books" and "building things" is good.
When I start with a new language, I read a few books about it and this really helps getting some edge cases. But often some concepts feel rather arcane till I tried them. So trying to get some of the default "projects" (for web: hello world, todo-list, blog) working clarifies most things.
The answer to your question is that it doesn't really matter which resource you choose to learn from. You should be learning from everything you can - there is an unbelievable array of learning resource on the Internet for JavaScript, just get started.
The absolute very best way to learn to program is by actually building a real project and trying to ship it. Not some sample thing, not some toy or exercise, the real thing.
Nothing will teach you to program faster than the necessity of implementing something.
Whilst you are building, just read, read, read read. Eventually some lights will start to come on.
You need relentless drive and and total unwillingness to give up.
Programming is really only truly learned by doing.
Ton of stuff online. But depending on where you are in your learning path, it's hard to shuffle through it all.
I've had several friends/colleagues go through a coding bootcamp. Make sure to do research and focus on outcomes-focused programs. Seeing you are wanting to learn JavaScript, Couple of the top programs I know are MakerSquare (Austin, SF, LA, and NYC) and Hack Reactor (SF). Your investment will be worth it -- however, only invest if you are serious about a career as a Software Engineer.
I guess you are asking how to be a good developer. I suggest you to learn by doing. Watching and reading tutorial in not enough. Go and check some tutorials and try at least 2 hours everyday sit and code.
[+] [-] bobwaycott|10 years ago|reply
- Tic Tac Toe
- Rock Paper Scissors
- memory/matching game
You can easily ratchet up the complexity once you have these working. Tic Tac Toe can be turned into Connect Four, for example. Similarly, you can increase the complexity of a memory/matching game by increasing the board size, or use what you learn there to create a rudimentary game of Go Fish.
There are some more typical types of things to build that feel less playful, of course. Build a to-do app. Or a blog. Or a simple chat/messaging program. Don't over complicate it. Keep it as simple as you can to learn what matters here—CRUD operations with a database, client-server interaction, templating, MVC, and so on.
[+] [-] k__|10 years ago|reply
When I start with a new language, I read a few books about it and this really helps getting some edge cases. But often some concepts feel rather arcane till I tried them. So trying to get some of the default "projects" (for web: hello world, todo-list, blog) working clarifies most things.
[+] [-] andrewstuart|10 years ago|reply
The absolute very best way to learn to program is by actually building a real project and trying to ship it. Not some sample thing, not some toy or exercise, the real thing.
Nothing will teach you to program faster than the necessity of implementing something.
Whilst you are building, just read, read, read read. Eventually some lights will start to come on.
You need relentless drive and and total unwillingness to give up.
Programming is really only truly learned by doing.
And the learning experience will be extremely frustrating. It helps if you know what to expect, which I wrote about here: http://fourlightyears.blogspot.com/2015/04/frustration-and-e...
[+] [-] googlecoder88|10 years ago|reply
I've had several friends/colleagues go through a coding bootcamp. Make sure to do research and focus on outcomes-focused programs. Seeing you are wanting to learn JavaScript, Couple of the top programs I know are MakerSquare (Austin, SF, LA, and NYC) and Hack Reactor (SF). Your investment will be worth it -- however, only invest if you are serious about a career as a Software Engineer.
[+] [-] jackyb|10 years ago|reply
It teaches Processing (which is technically Java). It got me into programming again and maybe it will help you too.
[+] [-] vinchuco|10 years ago|reply
It's like asking how one learns to do math.
You look at what technology is out there, and play with it.
Here is one list of common tech: http://programming-motherfucker.com/become.html
Time is better spent in getting the right resources to use given a goal.
[+] [-] kingsongchen|10 years ago|reply
[+] [-] rman4040|10 years ago|reply
[+] [-] ViolentCheese|10 years ago|reply
I'm learning C++
[+] [-] marvel_boy|10 years ago|reply
[+] [-] deeteecee|10 years ago|reply
And then just start building stuff
[+] [-] homeslice|10 years ago|reply