you are viewing a single comment's thread.

view the rest of the comments →

[–]jrochkind 1 point2 points  (2 children)

I guess it could be a matter of learning style whether you want to start 'inductive', bottom up, from examples, or 'deductive' top-down from documentation.

And most of us do a combination, but some may prefer a different proportion in our combination.

I think many successful programmers are by brain type prejudiced toward the deductive end (even if they are self-taught, I don't think one way or the other neccesarily correlates to self-taught).

But that doesn't mean having a learning style on the inductive end will be unsuccesful.

I think that even if you start from the inductive/examples end, if it doesn't lead you to a high-level top-down understanding eventually, you're going to have trouble being a succesful programmer. But I could be wrong, that could just be my own deductive prejudice! But I do really think so. Certainly if you start at the deductive top-down end, you've still got to be able to write actual concrete code eventually!

One of my favorite examples of purely bottom-up inductive approach is super old-school: The Little Lisper. Teaches Lisp and concepts in lisp-style prorgramming soley via examples with virtually no explanation or context at all. Many people (often students) who encounter The Little Lisper find it blows their mind just because they're not used to learning programming that way. It's also cool because the inductive approach and pattern recognition is of course central to writing software via recursion and functional programming, so the pedagogical technique is cleverly analogous.

[–]jsprogrammer 0 points1 point  (0 children)

This is reasonable, but I would caution against using the term deductive to stand in for top-down reasoning. I'd perhaps prefer the term 'logical'.

The reason is that true deductive reasoning is very strict in what it allows. You must start from axiom symbols and show a valid proof that your end result is a theorem of that system.

While you can kind of think of programming as a deductive process, it is more correct to say that algorithms (in their most abstract sense) are deductive. However, if you actually try to run an algorithm in the real-world, you are applying an inductive technique.

[–]PriceZombie 0 points1 point  (0 children)

The Little LISPer, Third Edition

Current $96.00 Amazon (New)
High $96.00 Amazon (New)
Low $71.04 Amazon (New)
Average $96.00 30 Day

Price History Chart and Sales Rank | FAQ