Whether it usually involves something like wanting to create a 2.5D fighting game rivalling [[https://en.wikipedia.org/wiki/Arc_System_Works][Arc System Works]], a gorgeous anime-inspired illustration, [[https://www.youtube.com/watch?v=TF9I1GxNdJQ][a flashy short animation]], or [[https://www.youtube.com/watch?v=ZwR0zFe57Y4][a cool-looking demoscene]].
This is also the core of prototyping, starting with the end product and getting there no matter how badly implemented.
- In [[id:4b33103b-7f64-4b51-8f03-cac06d4001bb][Programming]], we usually call this abstractions where we don't need to worry about the implementation details and whatnot.
This is quite similar to [[https://collegeinfogeek.com/about/meet-the-author/my-impossible-list/][Thomas Frank's impossible list]] that we explicitly say what we want to do.
We could apply the principle what we want to do when we learn a skill.
However, focusing too much on the destination can block your progress from having a clear sight on how to get there.
All of this allows to iterate through the project multiple times as [[id:adefcd38-46a8-4c9c-b609-9d3393b074d0][Consistency over time creates more progress]].