Search This Blog

Tuesday, June 23, 2020

Connecting concepts: indirection and programming

# Goal:
  1. Connect the concept of indirection with my programming process. Why? So that I can make the indirection concept habitual for me such that I apply it universally to all my activities, not just programming.
  2. Content: avoid misrepresenting the ideas.
  3. Credit: avoid plagiarizing.

# Action Plan:

Brainstorm some ideas about how my programming process incorporates the indirection concept and connect that to any kind of problem (not just programming problems).


# Work:
  • What is indirection
    • Indirection is a concept related to problem-solving. If you're stuck on a problem, indirection helps you get unstuck. It helps you solve that problem.
      • How does this apply to programming? When I'm programming new functionality (a problem) and get stuck, indirection helps me get unstuck. 
    • What's the process which incorporates indirection?
      • Say you're working on a problem and you get stuck -- e.g. making new programming functionality. Try to look for other problems you could solve that would help you learn something that would make the original problem easier to solve -- for example, learn about how to switch sheets in google sheets, or learn how to use the alert function for the purpose of testing. Then pick one of those problems and work to solve it. On success, then pick another subproblem and work to solve it. Repeat this process until you've solved all the subproblems, then go back to working on the original problem. If you're still stuck on the original problem, repeat this process of looking for subproblems and solving and then go back to working on the original problem. Repeat this process until the original problem is solved.

# Analysis:
  1. I think I did well exploring the ideas I wanted to explore. I explained how I used indirection in my programming process. And I explained how that applies to all problems, not just programming problems.
  2. I think I did not misrepresent any ideas. I claimed that this session is just for brainstorming, so I'm not making claims that my ideas have survived external criticism nor were my statements ambiguous about that.
  3. I think I did fine re giving credit. I linked a blog post about indirection, which gives credit to that author.

# Next steps:

Consider incorporating the problem-solving process I described above into my (not yet created) programming guide. (I saved this to my already created personal note about making my programming guide.) 

No comments:

Post a Comment