All of my courses are sold with a 30 day money back guarantee!
If you are unhappy with the course for any reason within the first 30 days, you can get a full refund, no questions asked!
Objects are the gateway to code that is: organized, intuitive, maintainable, and flexible.They enable easy access to COM objects & Classes that are amazingly powerful yet simple to use!
Get to use amazing AHK classes (Chrome, mySQL, Rufaydium, WinClip, Neutron, ObjectCSV, etc)
Objects & Classes are the “key” to Object Oriented Programming
After learning Functions, Objects are the next step to leveling-up!
Allow you to use OOP / dot-notation which is more intuitive
Allow you to simplify solving complex problems
Better organize your code
Enable personalized naming conventions
Extend classes to borrow & build on other people’s classes
Convenience / simplicity when creating multiple instances
Establishes a hierarchy to methods and properties (Window has a document, Document has elements, Elements has events, etc.)
Objects allow you to easily group multiple related values with a hierarchical structure
Allows you to bind your functions to a given instance (restrict the value of a parameter)
Learn classes in the easiest to understand language (so you can use them in other languages)
Provides memory protection in high level languages by abstracting methods and properties to an in-memory instance. (multi-threading as an example)
You can get the course by clicking here. Remember, you can get a 25% discount by becoming an AHK Hero.
Did you know when we want to do something we like we do “single-tasking” (paying very close attention to what we’re doing and “being in the moment”. When we’re doing things we don’t like to switch to “multi-tasking“, often thinking about other things we could/should be doing (personally I call this “monkey brain” 🐵).
It’s one of the reasons why I’ll automate many mundane things. I enjoy “solving the problem” by coding which, usually, gets my full attention. However when I’m doing the thing manually I’m often thinking about other things I’d rather be doing.
Now, at times when I’m coding, I run into tasks that are trickier to automate. Or I’ll decide to take a new approach to solve the problem (perhaps creating a class) but, all-in-all, I find, when I’m coding, I stay focused and more interested in what I’m doing than I am when I’m manually doing a task. How about you?
BTW- I learned the above in this in a great book by David J. Lieberman: Get Anyone to Do Anything: Never Feel Powerless Again–With Psychological Secrets to Control and Influence Every Situation. It’s a fascinating book and he has several others that I really enjoyed. Never Be Lied to Again😲 is an AMAZING read!
Are you a 🦊FireFox user? If so, you might want to check out what we did with Rufaydium. In this video we automated launching Firefox. 😊 Pretty cool that, using webdrivers, you can automate browsers with AutoHotkey!
Performing a FAST! image search on background images!
I teamed up with Spawnova and he showed his class for finding images FAST! What’s even more impressive than the speed is that it works on images that are behind others (so not minimized, but they don’t have to be “on-top”. You can click here if you’d like to see his video on the topic.
If you’re not used to working with Classes, you can sign up for our Objects / Classes course which, hopefully, will be released in another week or so. All registrants will receive 15% discount if they choose to purchase.
Escaping quotes in v1️⃣ compared to v2️⃣
While I love the simplicity of AutoHotkey v1, I am jealous compared to other languages like Python that make it super-simple to use single or double quotes to encapsulate text. While you can use legacy assignments in v1, this is not going to be available in v2. Thankfully Lexikos allows us to use single or double quotes.
Automating seemingly “non-Automatable” tools like Davinci Resolve
Davinci Resolve is an amazing, free, editor which we use daily. I was trying to automate some of the edit fields however AutoHotkey can’t, easily, peak into the tool with Controls. Here I show the ACC library can peek into the controls however we were trying to set the values. We didn’t solve the process however it was a discovery video which, someday, I’ll get back to. Just remember “baby-steps” in automating is perfectly fine…
Writing on a computer
Did you know you can, easily, use AutoHotkey to write on a computer and perform OCR on the handwriting? In this short video I demonstrate just how easy it is with ahk!
This was a really fun call. James had done some really cool things (unbeknownst to his supervisors). He follows my general principle which is to ask for forgiveness instead of permission. 😏 James worked for the postal service and was blowing-away his coworker’s performance. Have you automated your jobs to outperform your coworkers?
⚡️Productivity tips: Take Advantage of Commuting
I have several thousand audio books. Now that I work form home I don’t have nearly the amount of time I used to however I highly recommend you always have some sort of educational audio/videos that you can consume when you’re stuck somewhere! For me, I have around 4 hours each weekend on the lawn mower that I get to enjoy podcasts and re-listen to some of the audio books / seminars I mentioned earlier. It’s amazing what you can learn even while you’re getting work done!😁
🤣 A spot of Humor
AutoHotkey is such an amazing tool AND it’s FREE‼
Quick Access Popup news
I thought we were going to have a video on some new functionality but it looks like that will be next week.
Meanwhile, if you’re not using Quick Access Popup, heres a short demo showing some of it’s amazing funcitonality! It’s an amazing tool available in 🔟 languages!
🗣️ 💭 Quotable quotes
I have learned that real angels don’t have gossamer white robes and Cherubic skin, they have calloused hands and smell of the days’ sweat. — Richard Evans
You can’t get much done in life if you only work on days when you feel good. — Jerry West
It’s like deja-vu, all over again — Yogi Berra
You want it, you take it, you pay the price. There really is no free lunch. — John Carlton
The world operates on deadlines because, when there is no immediate need to move forward, most people will not❗ It’s human nature to wait until: conditions are more favorable, we have more information, we are in a better mood, or have nothing else more interesting to do. This is why, if you really want to begin working smarter, not harder, you need to block time on your calendar at least twice a week.
Parkinson’s law is the adage that “work expands so as to fill the time available for its completion.” If you don’t block time, you’ll NEVER have time to do the long-term things that will end up saving you time.
Remember learning AutoHotkey is an investment in yourself!
Speaking of which we’re very close to releasing our Advanced Objects / Intro to Classes course. Have you signed up to learn more? Everyone that is signed up will receive 1️5️% off if they choose to purchase.
In this video Isaias walks us through how to connect to a specific profile, not using a profile, and some great changes to the Rufaydium class. Now, for Chrome, it will check your version of Chrome and, automatically, download the correct WebDriver. We also discuss how you can set-up Chrome in a way to be able to connect to a running instance of it.
What license do you put in your scripts?
We were on a call with Xeo786 discussing the use of the MIT license on Rufaydium. It inspired me to make this video to discussing various licenses and which one you might want to use for your code.
Intro to RegEx
Do you end up manipulating text often? Hopefully you’re aware of Regular Expressions! I think of them like Sudoku (a mental workout). They definitely have a learning curve however they can greatly simplify your programming work! Here’s the first of a series of videos I did on them years ago.
Adding a GUI to your script
GUIs can be a beast but they can also be simple (if you understand the basics). In our GUIs are Easy course, Isaias walks you through just how easy they can be. After working my way through the course I updated several of my scripts to include a GUI which made it easier to use / modify. Here’s a video showing how I updated my search script
Here I speak with Steve Maziarz that has done some amazing things in his past and with AutoHotkey. Like many others he stumbled into technology and isn’t a “programmer” by training but has worked in tech for 40 years! He’s worked with Visual Basic, Cobol, Fortran, APL, C, etc.
⚡️Productivity tips : Think about tomorrow today!
At the end of the day, write down what you need to complete tomorrow. Prioritize the list with the most important (often hardest) things first.
🤣 A spot of Humor
Ever have someone that asks you for a reference but you really don’t care for them? Use some of these double entendres (double meanings) from Sleeping dogs don’t lay by Richard Lederer (this was an amazing book!)
You’ll be lucky to get this person to work for you!
I cannot recommend this person too highly.
I recommend this candidate with no qualifications whatsoever!
She has made immeasurable contributions to our firm.
Nobody is better than this man! Nobody❗
I found myself frequently raving about her work!
We were teetering on the threshold of bankruptcy last year, and her efforts pulled us through.
For the services he has rendered to our firm over the years, we find ourselves deeply indebted!
I would place her research on the cutting edge.
She is now ready to strike out in a career.
Whatever task he undertakes, he will be fired with enthusiasm!
I would place this student in a class by herself.
🗣️ 💭 Quotable quotes
Amazing things get done when you don’t care who gets the credit — Joe Glines
Strive not to be a success, but rather to be of value. — Albert Einstein
Always go to other people’s funerals, otherwise they won’t come to yours — Yogi Berra
Struggle is not a bad word. Accomplishment is impossible without it. — John Carlton
Here’s a question for you %Name%, How much time a day do you waste⁉😳
If you truly look at what you do every day, do you waste 3 hours a day? 4 hours a day? More?
What is your time worth? 💲30 an hour? 💲40? 💲100?
I asked Isaias to put together this script to help you run your own numbers however let’s say your time is worth 💲40 an hour and you’re wasting 4️ hours a day. That’s $160 a day,
$800 a week, ~$3,200 a month and 💲40,000 a year😲.
Now imaging if you could just shift a bit of that time you’re wasting to doing something productive.
Something that will save you time every time you use it!
By learning AutoHotkey you are investing in your future. It makes mundane tasks “fun” (because you’re writing a program to solve a problem) and, once you have a reliable script, it will save you time every time you use it! Not only that but the lessons you learned will be applicable to other scripts you write in the future.
And just imagine if you’re sharing this script with others?
Knowledge is power; Automation knowledge is a “super-power”
Now on with the show…
Rufaydium / Automating Browsers
We have been diving deeper into Rufaydium by Xeo786. 😊 We had a call with him about licensing (Isaias and I will make a short video discussing it because there’s a lot of confusion around the issue).
In this video Isaias walks us a simple usage of Rufaydium. Thankfully we’ve seen how to utilize a Chrome profile and, last night, Isaias and Xeo786 updated the class to allow selecting of different profiles so we’ll try and get to that video next. We’re also planning some on how to grab cookies from Chrome and use in API calls. We were doing this with AutoControl however, sadly, using AutoControl didn’t give us access to the http cookies (yet another video we’ll have to make).
Semantic Versioning: Explaining what those numbers mean❗❕ Ex. v1.3.32
Did you know there was a method to the madness in the versions that (some) developers use? In this video Isaias walks us through what they mean and how they can be helpful to developers (and people using programs!). Last week for instance Isaias couldn’t get Davinci Resolve working so he had to try different versions of it. Understanding Semantic Versioning allowed him to quickly determine which version he could use…
Easier way to get code for a DLL Call
Last week Dimitri Geerts, Isaias and I had a very interesting call discussing some scripts that Dimitri had found. The two scripts help you develop the code you need for a given DLL call. Very complex stuff so I’m really glad we had a great discussion about it.
Not too long ago I had an idea how using AutoHotkey at work might be considered, by some, to be “cheating. I posed the question to a friend of mine and we had a great discussion around it.
As it happens I’m having my monthly “check-in” call with Ryan this afternoon. Who do you regularly speak with regarding coding / efficiency?
I highly recommend you find someone to speak with. Think of it as a “workout buddy” but for your brain!🧠 You’ll thank me later!
Review what you accomplished at the end of every week!
Did you achieve what you wanted to achieve?
Are there things you could have skipped or delegated?
Could I have achieved the same thing in a shorter amount of time?
🤣 A spot of Humor
How do you predict the actions of former US presidential candidates? Use an Al Gore Rhythm.
Most people won’t realize how accurate this meme is but I bet YOU DO!
🗣️ 💭 Quotable quotes
It’s hard to beat a person who never gives up. — Babe Ruth
The tragedy in life doesn’t lie in not reaching your goal. The tragedy lies in having no goal to reach. —Benjamin E. Mays
When the whole world is running towards a cliff, he who is running in the opposite direction appears to have lost his mind.” —S. Lewis
Do you realize what AutoHotkey can do? I realized maybe not everyone here has really checked out it’s capabilities. In this video I cover some of the main uses of AutoHotkey. Here’s another great video talking through 17 ways to automate with AutoHotkey. Both of these should help you realize that AutoHotkey is an amazing tool that can really help you automate your world! 🌎 Start learning AutoHotkey and make it a regular part of your life.
I guarantee 💯! you’ll thank me later!
Just remember, don’t give up, and keep at it. Learning to automate is a marathon, not a sprint.
Now on with the show…
Introducing Rufaydium: A new way to Automate Chrome & Chromium browsers
This morning I received a reply to our video on 10-tips for web scraping from Xeo786 asking when I was going to review Rufaydium a WebDriver that allows AHK to automate Chromium based browsers.
I hadn’t heard of it but took a quick look. It looks really promissing! I noticed Tank commented “This is my new goto library” which is extremely high-praise! I asked Isaias to join me in a quick overall discussion. but look for some tutorials next week. Also, if you’re reading this Xeo786, I’d love to get you on a call and talk about it!
Script Highlight: Get color under 🐁
What seems like a lifetime ago I wrote / borrowed a script to easily grab the color under my mouse. It’s a simple script but can save a ton of time when you’re doing any sort of development where you need the HEX color. You can get the script here.
🆒 Multipart form data
Have you ever been doing WebScraping or API calls and had to “submit form data? It’s a puzzling & complex topic! In this video we discuss what “form data” is and and how do you submit it for a browser or API call.
Properly Using the <lib>
In this video Isaias and I discuss using your AutoHotkey Library and where AutoHotkey searches. We also discuss common mistakes people make when using it.
Properly using #Includes is one of the things that often trips-up people new to AutoHotkey. If you’re new to AHK I recommend making sure you fully understand what AHK does automatically and how to use the three approaches covered in the video.
SciTE4AutoHotkey is now hosted on the AutoHotkey website. You can see this post from fincs where he mentions the update as well as he’s got plans to make one more update to bring it in line with the latest AutoHotkey standards. Thank you for all your work fincs! While I develop AutoHotkey in AHK Studio, I still use SciTE4AutoHotkey on a daily basis.
Back in 2019 I spoke with Sebastian out of Germany. It was a really fascinating call! Somehow we went nearly 2 hours! But don’t worry, it’s lots of really interesting content because, unlike most people using AutoHotkey Sebastian is an actual developer. 😊 He’s got a lot of really great example of things he’s built with AutoHotkey.
⚡️Productivity tips: Setting goals
A constant theme I’ve heard across many productivity experts (Zig Ziggler, Brian Tracey, Dan Kennedy, Dale Carnegie, etc.) is to have goals! Having clear, obtainable goals really helps keep you focused, however, even your subconscious works towards solving them! Many times I’ve either been stuck on something or had a project I’m working on and the solution “pops” into my mind. 😲
🤣 A spot of Humor
Just remember there are 10 types of people in the world. Those who understand binary and those who don’t.
This meme wouldn’t have been funny 3 years ago. Now it’s hilarious!
🗣️ 💭 Quotable quotes
Absorb what is useful, reject what is useless, add what is specifically your own. —Bruce Lee
Instead of trying to get more done, I’m working hard on having less to do — Joe Glines
Long questions require short answers. Short questions require long answers
I wish I had an answer to that because I’m tired of answering that question — Yogi Berra
If it’s critical, do it yourself. If it’s not, delegate. Learn the difference — John Carlton
We’re getting closer to AHKCon which is going to be on August 6th and 7th. Each day we’ll be starting at 10:00 a.m. EDT and going for four hours each day. If you haven’t already signed up to be notified of updates, you can do so here
To be sure we provide content that is helpful for attendees we’re making a few assumptions
You can understand English
You’ve been using AutoHotkey for 6 months (or have 1 year+ programming experience in other languages)
The Conference will be held in a Zoom Webinar and sessions will be the following two formats:
Lectures (people present a “how to” do something with AutoHotkey
Panels (a group of AHK experts discuss a given topic)
While we have a good handle on the topics for the panels, we’d really like to get you to vote on the topics for AHKCon lectures.