最初的问题

我目前正在教我弟弟编程。他完全是个初学者,但很聪明。(他真的很想学)。我注意到我们的一些会议陷入了一些小细节,我觉得我不是很有条理。(但这篇文章的答案有很大帮助。)

我怎样才能更好地有效地教他?是否有一个逻辑顺序,我可以用一个概念一个概念地运行?是否有什么复杂的问题我应该在以后再讨论?

我们正在使用的语言是Python,但任何语言的建议都是受欢迎的。


如何提供帮助

如果你有好的答案,请在你的答案中添加以下内容:

初级练习和项目想法 初学者教学资源 屏幕视频/博客文章/免费电子书 印刷适合初学者的书籍

请用链接描述资源,以便我可以看一看。我想让每个人都知道,我确实在使用其中的一些想法。你提交的内容将在这篇文章中汇总。


初学者在线教学资源:

A Gentle Introduction to Programming Using Python How to Think Like a Computer Scientist Alice: a 3d program for beginners Scratch (A system to develop programming skills) How To Design Programs Structure and Interpretation of Computer Programs Learn To Program Robert Read's How To Be a Programmer Microsoft XNA Spawning the Next Generation of Hackers COMP1917 Higher Computing lectures by Richard Buckland (requires iTunes) Dive into Python Python Wikibook Project Euler - sample problems (mostly mathematical) pygame - an easy python library for creating games Invent Your Own Computer Games With Python Foundations of Programming for a next step beyond basics. Squeak by Example Snake Wrangling For Kids (It's not just for kids!)


推荐印刷书籍的教学初学者

加速c++ Python编程绝对初学者 Charles Petzold编写的代码 Python编程:计算机科学介绍第二版


当前回答

我推荐Charles Petzold的书《代码——计算机硬件和软件的隐藏语言》,这本书对计算机的工作原理有很好的介绍。

书中有很多信息(382页),可能绝对的初学者需要一些时间来阅读,但它是非常值得的。Petzold以一种非常清晰有趣的方式解释了计算机和编程的许多核心概念,从简单的代码、继电器、内存、cpu到操作系统和gui。它将为任何读者提供一个很好的感觉,当他们编写代码时,在幕后实际发生了什么。

我当然希望当我第一次学习编程时它就在身边!

其他回答

首先,像其他人一样开始:使用Hello World程序。这很简单,它让他们对程序的布局有了基本的感觉。试着回想一下你第一次编程的时候,以及一些概念有多么困难——从简单开始。

在Hello World之后,继续创建一些基本变量、算术,然后是布尔逻辑和if/else语句。如果你有一本旧的编程教科书,可以查看一些早期的例子,并让他浏览一下。只是不要一下子介绍太多,否则会让人不知所措。

在浏览了几本免费电子书之后,我发现最适合学习编程的书是O'Reily出版社出版的《Head First Programming》。它使用Python作为语言,并从一开始就为您提供程序。它们都比“Hello World”更有趣。 我花在这本书上的钱是非常值得的,因为它已经发布了一段时间,你可能会在Ebay或亚马逊上找到更便宜的二手书。

如果你哥哥喜欢智力游戏,我推荐你去Python挑战。我不会把它作为1对1教程的正式教学工具,但当你们不在一起时,他可以这样做,挑战自己,找点乐子。

我可以推荐我的项目,PythonTurtle。

简介:

PythonTurtle致力于提供学习Python的最低门槛方法。学生们命令一个交互式的Python shell(类似于IDLE开发环境),并使用Python函数移动屏幕上显示的海龟。说明帮助屏幕向学生介绍Python编程的基础知识,同时演示如何移动海龟。

它是这样的:

可选文字 http://www.pythonturtle.com/screenshot.gif

如果他感兴趣,那些小细节不就是好地方吗?使用python时,您已经切断了GUI,这样就不会有困惑了。为什么不选择一个项目,一款游戏或其他东西,然后执行它呢?经典的高低数字猜谜游戏可以简单地从命令行中用20-30行代码(当然取决于语言)实现,并为您提供变量、条件、循环和用户输入。