Hey folks,
I’ve been moving away from my initial unwieldy, single-use-case macros built with zero planning or process mapping and completely unrecognizable in the morning toward more interchangeable parts.
I now notice many of my macros are like this: MACRO A serves a pretty specific use case and includes quite a few action steps. Then it passes a parameter to the much smaller, more generalized macro B, which does a thing with that parameter, and then, since there is more to do, I tend to pass the baton back to A for more use-case-specific actions.
So, it’s kind of like A->B->A but really it’s
Part of A->
All of B->
The rest of A.
This strikes me as potentially problematic for some reasons I can’t quite get my finger on. I’m wondering if more experienced folks here take more of this approach:
all of A ->
all of B ->
all of C.
Because If I’m using A --> B --> A, it feels like I’m actually using AX --> B – AY. My Macro A is actually Macro AX and Macro AY smashed together and depending in weird ways on B for completion.
run AX ->
run B ->
run AY
That seems inferior to A->B->C to me, intuitively, but I don’t have real basis for thinking that.
Part of my concern and interest in doing this in the most effective way probably stems from a prior startup role I held where our youngest engineer was pushing hard for refactoring toward modularization and our old guard of .net developers were very sensitive about the code base, which could only be described as a rat’s nest (as is normal for a fast growing startup with no technical founder). I tend to prize flexibility and don’t know what I’ll be doing or what the customer will want in a few months, which means modularization is a better investment of time – I think. But I’m curious as to other views on this.
Some theoretical point exists where there are diminishing returns in modularization regardless of the question of how valuable they are. I’m curious what the folks in this forum who have the most experience with KM aim for.
Also curious to understand how KM relates to other programming approaches, as using KM has brought me into a certain comfort level with programming very quickly, and resulted in my using the BASH and loving it, when I didn’t have any idea what a command line was even theoretically good for a couple months ago, and also have been actually interacting with APIs directly for the first time ever. I think this product is enormously valuable as a tool for teaching programming. I’ve personally spent a lot of energy trying to “learn to program” with flashy online services, most of which focus on things that have no utility; KM is the thing I’ve learned the most from, along with Google sheets (due to their constant just-in-time help prompts) and Zapier (api connector tool) – all programs that don’t, ostensibly, teach people to program (: