Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Learning programming for the first time may be boring, especially reading a book with boring examples.

Is there other way to learn non-programmers programming?

For example involve them in a simple game project that is fun.

share|improve this question

closed as off-topic by MichaelT, durron597, Snowman, gnat, GlenH7 Apr 27 at 17:32

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions seeking career or education advice are off topic on Programmers. They are only meaningful to the asker and do not generate lasting value for the broader programming community. Furthermore, in most cases, any answer is going to be a subjective opinion that may not take into account all the nuances of a (your) particular circumstance." – MichaelT, durron597, Snowman, gnat, GlenH7
If this question can be reworded to fit the rules in the help center, please edit the question.

    
I learned more about programming from the book Code Complete, than from any other book. Let me remind you that programming is not the same as coding. One is writing down some code, while the other is about using logic, and engineering a system. I've always thought that the "hello world" approach is wrong. Beginners are not dumb, we are just missing some key information. Let us have it. –  Pablo Dec 12 '10 at 14:11
    
Make them watch The Social Network. These days there is no reason to force programming on people, for computers are all around us. Besides, why convert a future surgeon to a medium programmer? You really think that CS is more important than medicine or many other fields? –  Job Dec 12 '10 at 17:17
2  
We've got a really smart stats guy who does most of his work in Excel. I've wowed him by taking tasks he thought difficult or nearly impossible and writing a 10-line script to solve them. That has really, really encouraged him to start programming :) –  a paid nerd Dec 12 '10 at 19:03

3 Answers 3

up vote 22 down vote accepted

"If you want to build a ship, don't drum up people to collect wood and don't assign them tasks and work, but rather teach them to long for the endless immensity of the sea." - Antoine de Saint Exupéry

share|improve this answer
1  
Awesome quote, Lenny. This hits it right on the head -- someone becomes a good programmer by wanting to build the thing, solve the puzzle, etc. –  HedgeMage Dec 12 '10 at 16:56
    
Love the quote. I didn't learn programming because I loved typing. I learned programming because I yearned to have control over my computer. –  Stargazer712 Dec 12 '10 at 18:18
3  
I think this quite rightly highlights an issue with the question. Not everyone finds programming interesting, many never will. Therefore it may only be worth teaching those that have the initial desire. –  Orbling Dec 12 '10 at 18:38
    
I cannot imagine there is a better answer possible to this question +1billion! </question> –  SingleNegationElimination Dec 13 '10 at 4:58

If a book is boring, it might just be that particular book and learning style. I find the Head First series is excellent for introductory programming, with fun examples and games that are interesting and engaging. Head First Programming is a great one to begin with. It uses Python, though the focus is on learning to program rather than on Python itself. The book includes puzzles and games, like arranging "fridget magnets" with snippets of code, using racetracks with different roads to illustrate using control statements, fill in the blanks, and so forth. There are also fun cartoons and "stories" to illustrate the exercises and get you engaged.

share|improve this answer
    
+1 "It uses Python, though the focus is on learning to program rather than on Python itself." + it's a fun way to learn. –  Amir Rezaei Dec 12 '10 at 11:41
  1. It should be fun. That doesn't mean they have to make a "game"; but it could be something else that's interesting. Right now, I'm teaching a non-programmer by writing a simple simulation of the Monty Hall problem.

  2. Find tutorials that get their hands on the computer fast.

BTW, that should be "non-programmer". :-)

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.