Sign for a course maybe? Look for video tutorials on YouTube? Head-first into a book? Which one do you think is the best way?
I want to know your methodology, I'd be great if you pointed out your level of experience so we can maybe see if learning habits change with it.
Latest comments (18)
When it comes to learning a programming language, framework, or technique, I would start with tutorials, then would use the reference, then would learn from the source. And most important is to practice doing it yourself all the way.
I start with reading on the language and watching videos. During that period of time I also ask myself if the language is worth learning at all. After that I normally make the jump and start a side project with the language.
Go read the documentation. Now you will think that you have learned all. Open an IDE try to build something you will get stuck and there will be errors.Try to solve it if you can't, Go search for the answer. Come back and finish it .
Do this in a loop. Then you can say you learned a language.
Beyond that, I've "learned" the language, but am not an expert.
encounters a language and finds it attractive
Find the official hello world
Setup environment
Execute hello world - feel elated
Try something borderline useful
Doesn't work - get frustrated and forget about it
Months later, frustration wanes
Try it again, it works. Declare yourself an expert
Teach friends how to write hello world
I have been coding almost for 4 or 5 years long, but always when I start learning a new language, video tutorials come to the first place to start. If those kind of learning materials are not available, I try to look for another documented stuff on the internet.
Some guys recommend reading books on programming, frameworks, but IMAO books are always going to be outdated after several years, so it could be waste of money. Plus, recent technologies have up-to-date documents on the internet in their official website or something like that, so the materials scattered on the internet, particularly video tutorials are the best ways for learning something new at first for me.
After grasping the core concept and syntax of the language or framework, with these technologies I will make my own small product like TODO app, SNS-like app, or something that has basic functionality and publish it on Github or Heroku. It is always important to take advantage of my own knowledge to understand what I need to learn next in addition. This process helps you find some ambiguous points in your knowledge.
Using the knowledge after learning it is the most important methodology.
Majority of the learning process is through getting a training in my work. I mean you learn a lot in school but in the corporate world it could be different.
I'm fortunate enough to be employed in a company where you can learn from a lot of people around you. And they sponsor a classroom training for the newbies.
Right now I'm trying to learn C and to do that on my own, I am following a set of exercises online. I realized doing exercises is the fastest way to learn and appreciate a programming language. After all, experience is the best teacher.
Seriously. I don't have time to wade through loads of documentation and tutorials. Most languages are an off-shoot of:
Note, they may not be off-shoots by timing, but in terms of language structure and style.
Most tutorials are "here's how to program, we'll use X language to teach you." Did that too many times. Don't need to do it again.
So condense it down, give me a ref with some examples, and make sure someone's got a book on it from O'Reily. Rarely will I see a "C does it this way, X lang does it that way" document.
(* I threw that in because a team of bored folk made Tetris in CGoL. Talk about really low level programming!)