AutoHotKey is the best way to get started in programming

Getting Started

I have been asked in the past by other geologists and environmental scientists how to learn how to program.  In this post I explain why for me, AutoHotKey was finally the way I went from wishing I could program to actually programming useful things that helped me do my work better.

I should start by paraphrasing Justice Potter Stuart, “you know you are a programmer when you feel it”.  I say this because I had many false starts trying to learn programming where I started with Python and/or Javascript. Those attempts taught me important concepts that I later used while programming in AutoHotKey and then later, when I was ready, in Python and Javascript. But I didn’t consider myself a programmer when learning those initially, but rather a person trying to learn programming, and the reason for this is because I couldn’t figure out how to build anything useful.

To me the whole point of learning to program was to learn how to build something useful that would make my job easier. But with Python everything was taught from the command prompt, and Javascript was used for websites. I could have achieved what I wanted in those languages, but it would have taken far beyond a rookie’s knowledge to do so.

I wanted to get productive immediately. Actually, I needed to get productive immediately.

Learning is Doing

That is because, in order to learn, I have to do, and in order to do, I have to have motivation. AutoHotKey helped with all of that due to its ease of use. AutohotKey’s secret weapon is in its name. It can easily create extremely useful system wide hotkeys in Windows with 1 line of self-explanatory code.

One of the best programs I wrote with AutoHotKey was also one of the simplest. I would replace the name or ID number of a site into a mini summary of the important site info. So I could write in any email, website, or word document the facility ID such as UT#123, and AutoHotKey would write out the name, date of last event, score, address, notes, etc. Whatever I wanted to be written out. I could then delete the information I didn’t need.  This was a lot easier than opening my notes for a site each time.

I coded up the initial program in a minute or so? and it was very helpful. Then as I used it, I found more opportunities to use it, or to make something similar, and so I expanded on it. And rewrote it, and shared it with colleagues for feedback etc. And when I saw another opportunity to replace the text with a calculated date, that was easy too.

AutoHotKey is not trying to be everything to everyone. It was made with the primary purpose of making hot keys for windows and is therefore more easily integrated into a normal computer user’s workflow. You can run your program that spits out text and then get immediately back to work.

If you were to try to write something equivalent in Python or Javascript you would need to do a lot of research, download special libraries, and write a lot more code, which would be very confusing for a coding beginner.

Python incidentally, is the primary programming language I use now that I have been programming for longer because there is a huge scientific programming community in Python and the harder more interesting work in programming will best be done in a language with that kind of community to support my work, but the initial programming I was doing was helping me do mundane yet often repeated tasks right every time, over and over again. And as I solved my problems, I saw more opportunities, and worked more on it. This created a virtuous circle that allowed the programming knowledge to click with me, when all previous attempts felt like learning ancient Greek mixed with multivariable calculus.

AutoHotKey is a performance enhancer

To put is another way, for a tech savvy PC user who primarily uses the computer to accomplish work unrelated to programming, but who wishes to take advantage of the computer to do some or all of the work for you, you are not so much wanting to create a special program, but automate your PC to do your work. Paste this file there, send that email here, find this information based on this other information. For that kind of work, the most bang for your buck as a beginner can be found with AutoHotKey.

Nicholas Moran

Nicholas Moran

Nicholas Moran grew up in sunny south Florida and lives in Boca Raton. He studied geologist and is a licensed professional geologist. He helps environmental and engineering companies implement software solutions to improve their efficiency and effectiveness and is Senior Geologist at MORAN ROCKS LLC, a boutique environmental consulting firm that uses the latest technology and workflow solutions to deliver personalized service at competitive prices.