Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Disclaimer: I'm a teacher at Dev Bootcamp (http://devbootcamp.com). Everything I say comes from love -- if I didn't care about this deeply I wouldn't bother to remark in the first place. :)

Very nice! We can always use more absolute-beginner tutorials in the world.

Just started the Ruby tutorial:

"Great! So what just happened here? To begin with, let's define what you typed 2 + 2 as instructions. The ruby console reads your typed instructions, interprets it, and then acts on the instructions the way you gave it. This step is called evaluation. Instruction when complete are called an expression. If the instructions you have typed are incomplete (for example, if you typed 2 + and hit enter), this console will show an error message. The instruction you typed, 2 + 2 is an expression. It is important to remember that evaluation of an expression always returns a value. This value is what is shown as result on the console. In this case, 4 was the result of the evaluation."

If someone honestly knows nothing about coding, you've probably just lost them right there. Questions a beginner would ask:

* What is a "ruby console?"

* What instructions? I typed "2+2."

* What does "interprets" mean?

* How can instructions be complete? Were they ever incomplete? How do I know when they're complete?

* "Returns?" "Value?" "Result?"

In a few sentences, with jargon highlighted:

I type instructions into a console which turn into expressions when they're complete. The console evaluates the expression and returns a value, which is shown as a result on the console.

A beginning programmer won't have the mental models necessary to make sense any of that. It's context-free. Most of those words have no prior associations, and those that do will lead them astray. Metaphor is your friend.

For reading, I recommend Bret Victor's essay on Learnable Programming: (http://worrydream.com/LearnableProgramming/) and Mindstorms by Seymour Papert (http://www.amazon.com/Mindstorms-Children-Computers-Powerful...).



Thanks for the feedback! We're always iterating on our course content, so we'll keep this in mind.


please stop using "iterating" in this way


Read Mindstorms before you do. :)


I second this. For anyone trying to teach computers (and anything else), this will save you from repeating all the mistakes that all the other computer programming education startups are making/will make in the future.

Again, just to be clear, this book is really really really really important.

Hope that landed. :)


Mindstorms? I did a quick google and there are assorted books with that title (after you filer out "lego"). None seemed to be relevant to this discussion.

Who wrote it? What year?


I linked to it at the end of my comment, where I also mentioned who wrote it.

Here it is, again: http://www.amazon.com/Mindstorms-Children-Computers-Powerful...

Lego Mindstorms are named after it.




Consider applying for YC's Winter 2026 batch! Applications are open till Nov 10

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: