4 ms·
Also kind of related - programming by "wishful thinking". You first lay out the flow of the program as calls to high level functions which don't yet exist, and
by minikomi 13y ago
Also kind of related - programming by "wishful thinking". You first lay out the flow of the program as calls to high level functions which don't yet exist, and then go back and fill in the functions as you can. The first few SICP video lectures are all about this style, and I found the idea simple but very useful to avoid trying to hold too much of a problem in your head at once.
- cheald 13y agoYes, exactly. By writing pseudocode, I end up writing business code rather than implementation code, which inherently assumes the a high-level interface to the nitty-gritty details. This leads to an approach where the idea is expressed at a high level first, rather than getting stuck in the implementation details of some small piece of the problem.
- vog 13y agoIt's kind of "breadth-first search" on software development, while the classic approach is more "depth-first search". On the other hand, it is also important to quickly get into the state of a running program, because only that allows for iterative development where you can catch bugs shortly after you wrote them, rather than having tons of bugs after weeks of (not sufficiently tested) work.
- sergiotapia 13y agoTIL my programming modus operandi has a name. I also love writing high level function calls to functions that don't exist. It makes laying out the program much simpler and gives me a birds eye view of how easy it's going to be to maintain.
- ebiester 13y agoI've always heard it as top down development, as opposed to bottom up development. I always say that's what I'm going to do, and then end up not doing it.
- porker 13y agoI've found what I think is the SICP book, but I can't track down the video lectures - can you provide some links? Thanks - I thought I was the only one programming by "wishful thinking"!
- Lewton 13y agohttp://www.youtube.com/watch?v=2Op3QLzMgSY&list=PL7F7312C6EAAD5D22 http://www.youtube.com/watch?v=2Op3QLzMgSY&list=PL7F7312...