News for hackers. Stuff that matters.
Re:Microsoft 3D Movie Maker Source Code by indigochill on Wednesday May 04, 2022 @08:24AM (#31259480)
I remember seeing a programming tutorial that used this approach as well fairly early in my software engineering education. I want to say it was part of the SICP MIT course but I could be confusing it with something else.

It was pitched as something like "wishful thinking programming" IIRC. First you write the highest-level "business logic" code that you want to write with made-up constructs that have no implementation, then only once you've established that it feels good to write code using those constructs do you implement them.

I remember this also being the same approach that was used in a CPU-building course I took (NAND 2 Tetris): start with the instruction set, then implement it.

Re:Microsoft 3D Movie Maker Source Code by dr-neptune on Wednesday May 04, 2022 @09:17AM (#31259948)
Wishful thinking is mentioned several times in SICP, both in terms of to be implemented functions and in separation of concerns.

Oftentimes in the book, they will write out a function with reliance on a variety of other functions that haven't been written yet, but which show a blissfully declarative outline of exactly what the function does. Then you go and write the sub-functions.

Looking at the code after is quite nice, but it takes a bit to wrap your head around writing large swaths of code that can't run -- especially when you're used to writing REPL-driven code and consistently checking/"testing" it