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
    
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
add comment

4 Answers

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> –  TokenMacGuy Dec 13 '10 at 4:58
add comment

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
add comment

Tell them how they can relate programming to what they already know.

share|improve this answer
add comment
  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
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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