In the first hour of the webinar we walked through the process for how to learn anything (including AutoHotkey) quickly
Hour 1: High-level overview
Hour 2: Q&A
Script Highlight: Merging / Appending files of similar structure
- A-Z Database allows for extracting contacts up to 1,000 at a time. Check your local library for access
- For simplification I extracted 25 at a time, then merge together.
- Each csv file has a header row
- Every file has the same headers
- Get the source code here
Learn AutoHotkey quickly
Four stages of competence
Unconscious Incompetence: (Ignorance) Has no clue what they’re doing but does not know it (this can be dangerous)
Conscious Incompetence: (Awareness) They know they don’t know what they’re doing
Conscious Competence: (Learning) Through very focused effort, they can do good work
Unconscious Competence: (Mastery) They can do it “in their sleep” w/o conscious thought
Unconscious Competence takes ~10,000 hours to obtain – Malcolm Gladwell, Outliers: The story of Success
Conscious Competence can be obtained in ~20 hours – Josh Kaufman, The first 20 Hours, How to learn anything Fast
Learning anything is HARD!
- People like to think they’re learning rather than actually learn!
- People avoid things that show they are not achieving their goals
- Parenting: It is easy to take the easy route over the hard route
- Take time to have a clear, structured plan that you follow to ensure your time is well spent and you achieve your goal
The most critical steps to achieving a goal is to
- Have a clear goal
- Devise a plan on how to achieve it!
- Take Action!
Four major steps for RSA– Josh Kaufman: 1st 20 hours
Rapid skill acquisition has four major steps:
- Deconstructing a skill into the smallest possible subskills
- Learning enough about each subskill to be able to practice intelligently and self-correct during practice
- Removing physical, mental, and emotional barriers that get in the way of practice
- Practicing the most important subskills for at least twenty hours
A “Steep Learning Curve” is a good thing!
Incremental Improvements add up!
The following image was offered by Ryan Wells. During the 1st hour I didn’t get a chance to look at it but I think it is a great addition to the deck! Basically it is showing how, like compound interested, little incremental improvements add up in the long run! Learning just a bit a day will have a huge affect over a year’s time! Thanks Ryan!
10 Major Principles of Rapid Skill Acquisition:
– Josh Kaufman: 1st 20 hours
- Choose a lovable project / Problem to solve: The more excited you are, the more likely you’ll succeed
- Focus your energy on one skill at a time: Choose 1 skill at a time and hit it hard!
- Define your target performance level: Set realistic and clear goals. What does “good enough” look like?
- Deconstruct the skill into subskills: Which subskills are most important? (Also like eating an elephant…)
- Obtain critical tools: Do some research, find out what you really need
- Eliminate barriers to practice: Be organized, formal, planned. No email, phone, Social Media, etc.
- Make dedicated time for practice: Schedule time each day. 90 minutes per day / 20 hours in 1 month
- Create fast feedback loops: Track & Measure your performance (Track what learned, flash cards, etc.)
- Practice by the clock in short bursts: Set timer for 20 minutes & FOCUS! Plan 4 20 minute sessions per day
- Emphasize quantity and speed: Don’t worry about “perfection”. Skill is a result of practice
5 major principles of Effective Learning:
- Use spaced repetition and reinforcement for memorization: Flashcards, etc.
- Research the skill and related topics: these can help identify important sub-skills
- Identify mental models and mental hooks: Categorizing helps the info stick in your head
- Create scaffolds and checklists: These help with Constancy and Efficiency
- Talk to practitioners to set expectations: Gurus can help a lot and can give tips when you’re “stuck”
Top tips for learning AutoHotkey
- Use flash cards to learn the vocabulary, concepts
- Eating an elephant-Bite size learning is often easier to keep more of what you learn
- Decide how “deep” you really want to go. Learn to use Function /Class call verse writing one from scratch
- Use multiple media channels (Print, video, auditory, writing, speaking, flashcards*, read & highlight / take notes, teach someone)
- Get a “study buddy”. Perhaps plan a “code-cation”. Helps distribute workload between each other and is an “immersion” into the topic so you learn a lot!
- Find or Create a structure for what you want to learn (Udemy course, Tutorials, TOC in a Book, YouTube, etc.)
- Have a regular schedule / Calendar event
- 40 minutes in the morning followed by 20 minutes at end of day
- Have a clear topic to learn
- Begin by writing Pseudocode
- Clearly define goals
- End of week*, have one day where you review the week’s learning
- End of Month*, review what you’ve learned
*these are great because this forces you to retrieve the information
Words to live by
- The best place to start, without question, is to start!
- Version 1 is infinitely better than Version 0
- How do you get to Carnegie Hall? Practice, Practice, Practice
- Don’t worry about your first draft, just write! Even the best programmers end up re-writing their scripts (often multiple times!)
- Don’t stress. Learning new things takes time & is “painful” until we’re familiar with the topic
- Remember we learn best by failure!
- Discipline = Freedom – Amazing video from former Navy Seal Jocko Willink