If you’re new + 5 months or so like me, maybe you’re realizing that there are things built into KM that you’ve spent a great deal of time building yourself. My hours in KM are littered with such reinvention of wheels. I keep thinking of writing something on this forum every time this situation occurs. Now’s as good a time as any of them.
Example from today: Nice to meet you, Set Action Delay. Maybe my macros can stop taking on the appearance of having been attacked by a pause distributing virus. I’ve got this variable I use all over the place called “pauses” which has value .05 or so recall. I have Pause actions between nearly every action in every good macro I’ve created – and each of those Pause actions pauses the action for “pauses” () (some multiple) seconds. (usually 1, i.e., “pauses” seconds.) This is the first wheel I ever reinvented and I was pretty damn proud of myself for doing so back in April or whenever; the way I did it allowed me to put a tiny action delay that could later be changed; and then when doing some casual debugging I could really easily let pauses=pauses10, or 20 or whatever, and slow the whole world down for a bit.
I guess I’m still proud of coming up with something. But. Pause action delay is better in every way. The other method was so taxing I even built a macro for inserting Pauses. Stupid, that piece, since I later discover the hotkey command-control-A, which is faster. A mini wheel I tried to reinvent. The point is, my wheel was clunky and I could hammer at it all I wanted; it wasn’t going to ever be as good at rolling as Pause Action Delay. Pause Action Delay is all the things I dreamed my reinvented wheel could grow up to be. How many times have I passed by you, Pause Action Delay, at this same bar, and never once thought to buy you a drink? Ah.
I’m beginning to wonder if it’s now time to RTFM (read the Friendly manual), since I’m spending too many hours chasing adrenaline rush payout from reinvented wheels, at times to the detriment of non-programming-related business needs, and I’ve spent enough hours in KM now to believe I can actually absorb quite a bit of what is on offer by ingesting the documentation cover-to-cover.
Curious if there are those here who would recommend reading the manual or not, and what that would mean in the case of KM (many resources exist; is the Wiki from start to finish the thing I’m looking for when I say RTFM?)
I can see advantages to my current reinvention-of-wheels approach.
- Hours of poking things is going to pay dividends, no matter what
- I believe that solving a problem by hacking together a solution gives me the same new base of confidence and comprehension around programming generally regardless of whether the problem was truly one that I needed to solve or the problem was one I merely believed I needed to solve…though in fact it’s already perfectly solved via some option on some action I have not thought to use.
- Learning when to pursue invention and when to use existing wheels, and how to divide time across behaviors like: exploring the world of KM or any other programmable resource for existing wheels, planning my invention of the wheel, considering and evaluating along the way whether I may be accidentally reinventing well-made and available wheels, and retooling my efforts in accordance with larger long term goals (business, etc), is, it strikes me, an enormously important component of learning to be more technical and more capable of programming the world around me.
In fact, point 3 strikes me as a central skill set I need to gain. How to evaluate what to spend time on, and how much time to spend looking around for existing solutions vs building my own.
As skill increases, there are diminishing returns on wasted time messing around, but, as skill increases from like 0 out of 10 to 2 out of 10, the temptation to mess around increases. Interesting. I need to get past this little dip in productivity stemming from the confluence of a little confidence and a little skill and onto better usage of existing tools. It’s not like there isn’t more to invent using all the existing things.
And then … there is the fact that KM itself might be a massive instance of me messing around with the wrong things when existing tools could step over the gap for me …
and zooming out a little further … programming itself … (as opposed to finding and hiring a good enough programmer). But it’s fun.