Autohotkey is up there as one of the very top programs that has changed the way I use the computer. Besides constantly trying to expand my programming knowledge by writing software in AHK, it's also an EXTREMELY priceless tool that can can make nearly any job easier.
What is Autohotkey? AHK is meant primarily to be a Hotkey utility, an automation tool (hence the name). That means that you can set keys to auto-paste certain text, run a certain program, and the other usual tasks that a hotkey utility performs. But AHK is really more than that. AHK is an entire
programming scripting language. This post may be utter gibberish to some people, so if you want to read about Autohotkey as a hotkey utility, read the text in red. If you want to read about it as a language, read the text in blue. Text in black can go for both. (This might not work for RSS feeds and such, so if that is the case for you, I suggest.....skimming? Or you can just come back here to FW.)
I don't know much about programming, I really don't. But I do know that there is a huge difference between AHK and other hotkey programs I've tried. In AHK, rather than set the hotkeys via a window, you have to write code to make it do what you want. This makes Autohotkey (1) alot more complicated, and also (2) alot more useful. Some people might be scared off when they're told they have to write their own code, but it's really not that hard.
-Documentation: AHK has AMAZING documentation, both on the internet, and in the forums, if you get stuck. You can also check out the "Scripts & Functions" section, to see if there is something you can draw from to add to your own script.
-Compile to EXE: VERY VERY NICE. There are multiple compiling tools out there which allow you to make your AHK scrips into an EXE, meaning that it can be run on any computer, even one that does not have Autohotkey.
-Customibility: I feel like I have to say, Autohotkey is entirely different than other hotkey utilities because it can use any key you have (with a few exceptions...) and can make it do practically anything. You want Capslock to toggle mute? You got it. You want F11 to launch your five favorite programs 5 seconds apart from each other? No problem. It definitely stands far above the rest, because in others like HotkeyBind, you have to choose from a drop down list, meaning your options are limited. Autohotkey goes to infinity and beyond.
It's very hard to review an entire programming language, because it doesn't just do one thing. If you want to check out some really sweet, tiny apps all written in Autohotkey, go to Skrommel's 1 Hour Software on DonationCoder. The sources are all up for download, so you can look at it, and see how 500 lines of code can make one incredibly useful program. (On the topic of DonationCoder, that is the second best place to go for AHK help.)
Probably the best thing about AHK is that it is:
-Tiny: You don't need much, even though there's alot of stuff included in the download; definitely under 1mb. (Much better than Java's 100+mb...)
-Portable: Yes, it's amazing. AHK does not have to be installed, so it can go anywhere. However, if you do take it portably, that means that AHK's extension (.ahk) will not defaultly open with Autohotkey, unless you use a program like PEM.
I would also like to quickly recommend an editor built specifically for Autohotkey: SciTe4Autohotkey. I highly recommend it, since it has syntax highlighting, can compile on the fly, and is portable.
Again, learning some "mumbo jumbo code" may be intimidating, but if you can learn just enough to do simple tasks, it will change the way you use your computer. When faced with a problem or a desired effect, you'll think "I can write an Autohotkey script to do this".
*I did make the icon for this post (even if it was based on the programs original icon), so if you use it somewhere else, please let me know, and give credit where credit is due. Thanks!