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

HTDP has a nice 7-step process to designing programs and suggests teachers ask the student to point to which step they’re stuck on, to help formalize it a little bit in their minds. I quite like it.


Is there a general process for solving problems? These last 25 or so years I've been programming I've mostly just been thinking about the problem until I have a solution. Sometimes I go for a walk but that seems pretty hit-and-miss.

My process seems to boil down to not realizing I was supposed to get frustrated and give up.


How to Solve It by Pólya is about math, but can be used more broadly.

https://en.wikipedia.org/wiki/How_to_Solve_It


If it's just a matter of following this algorithm, why do we still have unsolved problems?


I would strongly second the GP's recommendation. The book mentioned is aimed at math teachers up to an undergraduate level, but generalizes quite naturally.

The idea is that one may induce a path to solution in a student by stripping a problem down to it's knowns, unknowns, and constraints so that it may be comprehensible, then connecting these elements back together by asking pointed questions that could have conceivably occurred to the student. He gives plenty of practical examples of how one may dial the complexity of these questions up and down, how to relate by analogy, and plenty of other techniques for approaching problem solving generally all in a flimsy paperback that can be finished in two evenings in a weekend.

The most impressive part, to me, is that nearly every example is both illustrative enough to be a word-for-word guidebook for math tutors, and accessible enough for even a middle school student studying Euclid to understand in it's entirety.


I don't understand your question, I didn't say it was just a matter of following this algorithm or process described in the book. You also have to possess the base knowledge that feeds into it, which is described in the book in a mathematical context.

Even then, it's a set of heuristics and guidelines. Neither the book nor my comment claim it to be truly universal.


Not really, but HTDP has a nice boilerplate to frame problems for a computer program. You're not going to find the sterile neutrino by following it (probably), but you're going to be able to go from a simple cli tic-tac-toe to consuming APIs in a non-trivial CRUD program with it.




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

Search: