Reinventing Wheels and RTFM

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.

  1. Hours of poking things is going to pay dividends, no matter what
  2. 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.
  3. 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.

2 Likes

I'm more of a "scan the manual" guy than a "read the manual" guy. I do this at the beginning, and then read in detail later the sections about the stuff I need to do. I've also found that scanning it again after some time of using the product is very helpful. Others will have a different approach according to their style and preferences.

If you want to read the manual, it has now been incorporated into the wiki:
User Manual [Keyboard Maestro Wiki]

But before reading/scanning the manual, you might try this:

Getting Started with Keyboard Maestro

  • Read the Quick Start.
    • This is essential to become familiar with KM terminology
  • Do the tutorial (Help ➤ Tutorial) in the KM Editor.
    • Gives you a live walkthrough of creating a macro in the KM Editor
  • Review/Browse the Available Macro Actions
  • For Help with an Action in your Macro, click on the gear icon at the top right of the Action, and select "Help"
  • Start small, and grow your macros organically.
  • Be prepared for some trial and error in the beginning.
  • Make good use of this Keyboard Maestro Forum
    • Search for existing macros
    • Post your questions/issues if you get stuck

Good luck! There is so much in Keyboard Maestro, that even after extensive use for over two years now, it seems that I learn something new almost every day. It's a fun journey.

If you can do that. More power to you brother. I find it difficult to do that any more but when you can, you always benefit greatly. I lean towards @JMichaelTX's methodology and along with that add watching some videos too. There are tons on Youtube and the number of videos is starting to climb here on the Keyboard Maestro forum as well. There's also some sites like Khan, Udemy, Lynda.com and others that have stuff and you have to check them regularly because new stuff is added all the time.

Just watching a couple of videos can help you glean a ton of information. Check out some of them. @DanThomas has one HERE. @ccstone has one HERE.

Those should you started. For me the key is "Hard is primitive, Easy is powerful" so what ever method helps you stand on the shoulders of giants more quickly is the one you should leap for. :smile:

This is insightful. Many people don’t realize this.

Hey John,

As the wiki says that's a really big club.

In general you don't want to use it, unless you want to slow macros down more than necessary. A judicious use of pause is usually more efficient.

Keyboard Maestro's documentation is not written in such a way that it's easy to read from beginning to end.

A good place to start is to become familiar with all the actions, tokens, and functions:

List Keyboard Maestro’s Actions, Functions, and Tokens macro

-Chris

1 Like

@John_Gilmore,

The Home Page [Keyboard Maestro Wiki] also provides a good entry point for these, with links to each for more details.

Thanks folks, this really is helpful, as my desire to read cover to cover would not have likely resulted in something as beneficial as following the advice here.

and @ccstone, appreciate the thoughts on the big club.