Best way to teach yourself programming?

What is the best way to teach a teenager (16 years) programming?

  • More importantly - how to motivate this interest so a teenager persues thevarious itunes university and mit opencoursewware tools, or takes a summer program?

  • Answer:

    My 17 year old started on her own with the Codecademy.  She considers it like a game and is comparing her progress to that of her boyfriend.  Each lesson is in tiny manageable chunks. It's on http://codecademy.com/

Lynn Wright at Quora Visit the source

Was this solution helpful to you?

Other answers

What is the best way to teach a teenager (16 years) programming? Try Alice program http://www.alice.org/ . Though if he/she is 16 they might find it little kindgarden , only if they do not know anything about programming then it is a different story. How  to motivate this interest so a teenager persues the various itunes university and mit opencoursewware tools, or takes a summer program? Motivating anyone is really a hard thing but still. One way is to show some sort of gain by doing one course on opencoursewware tools ( not recommended, this kills curosity of teens and they will start learning anything only if you give them something in return). Does this teen have a local role model? some one he/she trust, if so ask them to tell this teen to sign in for what the role model thinks is a good reason to go to these camps. Teenagers most likely want to do what there role models think is cool. Throw in a challenge. And give pointers to solve it, in those pointers mention these courses. Learn about head fake learning. A sample Link you can refer to is http://saschafunk.de/teaching/head-fake-learning/ Talk about cool gadgets and technology behind it whenever you have time with them. Talk about programming gurus and how great they are. potrait them as role models. Teens if interested will try to imtate them and learn the way they did. (mostly self taught). Show them movies related to hacking , but at the same time explain them difference between white hat and black hat hackers and explain term ethical hacking. For learning the tricks they will land up on opencourses and summer camps. Ask them to start a start up which is related to technology and seed fund it. I am not suggesting to put all your saving just guide him and his friends through the process and at the same time pay for internet they will need or hardware they will need. Not the whole mambo jumbo. In short give them the reason to learn programming. Programming is meant to solve a problem. Without problem there is no need for programming and it is this problem the teen should get motivated about and the tools will be learnt by him/her along the way.  So give them a problem that will motivate them. Caution: Are you trying to force him into programming or making him/her do what you think is best for them? This will result in total dissaster for his/her life. Please understand you have to act as a guider not a ruler and in the end he/she will not be happy doing what makes you happy. You should see if the teengare is interested in something else and ask them to sign into summer camps which teaches thoes things.

Sameer Surjikar

Lego robotics or FIRST Lego league. Actually, you can start even earlier than that with MSWLogo. You can teach them young, but even adults can enjoy playing with it. It's a very simple programming language. Download here: http://www.softronix.com/logo.html Designs made with MSWLogo: http://www.mathcats.com/gallery/15wordcontest.html And Lego robotics can be started earlier, too: RobotC is the language used http://www.robotc.net/ Getting Kids Get Interested in Programming with Legos http://www.readwriteweb.com/archives/robots_for_everyone_getting_kids_interested_in_pro.php

Wei Haiping

http://scratch.mit.edu/ This should be good enough as a first language for a teenager. Once they are finished with Scratch they should try JavaScript which might be a little less fun at: http://www.codecademy.com/

Hashan Punchihewa

It depends on what exactly you mean by "programming", but I think the best way to get someone interested is through web development. Programming for the web has some really big pluses for someone who's never done anything like it before: Immediate feedback. No (popular) language for web development is compiled, so it's very easy to tinker until you get the result you want. No need for extra tools. Your computer already has a web browser and a text editor, which is all you need for local HTML/CSS/JS development. Want to put your work up on the Web? Add an FTP program, done. Immediately shareable. Want to show someone else the cool things you've been doing? Give them a URL. No need to build an executable that only runs on Windows PCs or try to get something into the Mac App Store. The web works on anything with a browser; you can even carry your work with you on a mobile phone. Most of the hard work has already been done. The browser serves as a pretty great platform for building on top of; you don't need to worry about understanding the specifics of HTTP, or how to traverse the file system, or (a big deal-breaker for most people) using the command line. If your teen is graphics-focused (and really, at this point who isn't), being able to make something that looks cool on the web is going to be a zillion times more interesting than getting your computer to convert Fahrenheit to Celsius on the command line. Granted, there are some minuses, too; JavaScript is powerful, but it's not the most elegant or clean language for the very first thing you ever work with. But things like jQuery can make that a lot easier. On the whole, I think the Web really is the best place to start for people exploring creating stuff on the computer as opposed to just "using" it.

Kevin Zurawel

Sameer said something so important I want to reiterate... You cannot create interest or ability in something in your child just because you want them to have it. All these answers are great ways to expose your child to programming, BUT if they don't have the interest then they won't do them or will drop them pretty quickly.  And you shouldn't try to force the issue. Love and respect your child for or what they are and help them find their own true talents, not your fantasies.  They will be both most happy and most successful as adults that way.

Jeff Kesselman

I think a great way to approach it is look at what they are interested in. All kids are vastly different, and the great thing about programming is there are a vast number of things you can do with it. For me, learning programming in a Lisp like Scheme was an amazing experience at the age of 18 (not too far off), but that was because I enjoy theoretical CS and math, and the notion that you can "start small and build your way up". Someone more graphically inclined may like Scratch better, or web-based languages, for more immediate visual feedback rather than a command line printing a Fibonacci sequence. But please don't assume they want to be able to do everything graphically. With the right understanding of programming, the theory alone can hook a young prgrorgrammer.

Josh Komusin

Related Q & A:

Just Added Q & A:

Find solution

For every problem there is a solution! Proved by Solucija.

  • Got an issue and looking for advice?

  • Ask Solucija to search every corner of the Web for help.

  • Get workable solutions and helpful tips in a moment.

Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.