One of the banes of AutoCAD over the past few years is the phenomenon of the half-baked feature. A new feature is added to the product with serious design deficiencies and/or bugs and other shortcomings that make it much less useful than it should have been. I’m sure you have your own favourite examples of this. I may expand on this theme in future, but for now let’s concentrate on one brand new and particularly undercooked feature, the Action Recorder.
The ability to record and play back macros is undoubtedly something that many users want, and has featured prominently in some wishlists. Autodesk has now provided the Action Recorder. Wish granted, right? A shining example of Autodesk listening to its customers and providing what they want and need? Not exactly. In fact, this wish has only been granted at the most superficial level.
Here is the wish as seen on the 2003 AUGI Top Ten AutoCAD Wish List (it’s number 6): “Provide a VBA Macro recorder.” Here it is as it appeared in the February 2006 AUGI Wishlist (it’s number 1): “The ability to record the process of a certain task and assign a quick key to it – similar to Microsoft’s macro recorder for office products.”
People were asking for something similar to what they had in Microsoft products. That is, something that not only allows actions to be recorded and played back, but to also create some kind of editable programming language code. Why would people want that? Because recorded macros can be easily examined, modified, combined, changed from one-off to repeating sequences, used as the basis for slightly different routines without requiring re-recording, incorporated into full-blown routines, and so on. The need for editable code is blindingly obvious, really.
So, how does Action Recorder store its macros? As VBA code? No, but that’s not surprising because Microsoft has dictated that VBA is doomed. LISP code, then? No, LISP is unfashionable at Autodesk. Script files? Nope. XML? Try again. It’s a new and proprietary format. It’s binary, not text. It’s undocumented. There is no known access to the code via AutoCAD’s other programming interfaces. In summary, it’s a closed format.
Does that matter if you can edit it using Autodesk’s tools? Yes it does, but in any case you can’t edit it in any meaningful sense. The only editing mechanism provided by Autodesk is the Action Tree, and it’s woeful. Pretty much the only things you can do with it are to delete whole commands and to change certain recorded actions to prompt for user input instead. You want to change a macro to set up certain layers before you start? Sorry. You want to add a command to the end of a macro? Nope. You’ve picked 3 times during a command and you want to change it to 2 or 4 times instead? Too bad. You want to use one macro as the basis for a whole series of macros, just changing a couple of things from macro to macro? No can do.
This lack of a useful editor isn’t just a problem for CAD Managers and power users. If anything, it’s even more of a hindrance for the novice users it’s obviously aimed at. Who is more likely to get an extended command sequence wrong? A power user with years of experience writing menu macros, or a new user? So who is most likely to need to fix up their macros after recording?
There are various other things wrong with the Action Recorder that go to make it a very frustrating tool. The way in which points with object snaps are recorded is unusable. The way in which zooms occur is bound to cause lots of surprises. The inability to record dialogue box operations is going to confuse and frustrate many users. The habit of the Action Tree in always pinning itself in place is annoying. Its inability to resize outside a very limited range is restrictive. The plethora of in-your-face warnings will have you groaning more than Vista’s User Access Control, and don’t think of turning them off in advance, that’s not allowed. Finally, if you’re not a Ribbon user, forget it. While the command line interface allows for recording and playing back macros, there is no way of editing them. So unless you want to do exactly the same thing in exactly the same location in all your drawings, you’re out of luck.
Don’t take my word for it, try it for yourself. Try to make a macro that does something simple but useful like rotating a piece of text about its insertion point, or inserting a block on a line and then trimming the line within the block. By the time you’ve worked out that it can’t be done, you could have learned about menu macros from scratch and written something that actually works, several times over. A word of warning; please make sure you lock up any pets or children before starting this experiment.
The Action Recorder is a “brochure feature” only; it serves as a marketing tool for Autodesk rather than a genuinely useful productivity tool for its customers. This wouldn’t be so bad if it was an isolated case, but it isn’t. Unfortunately, half-baked new features are now the rule rather than the exception.
Why is this so? Is Autodesk cynically trying to fool its customers in an evil revenue grab? Does the AutoCAD development team spend its time trying to come up with deliberately half-baked features? No. The developers don’t want to make these weak and useless things; they are human beings with the same urge as the rest of us to do well and be proud of their work. The problem is that there is simply not enough time to do a good job with a major feature and finish it off. It all comes down to the 12-month release cycle; it just isn’t working.
I agree totally, enough with the half baked features, if anything for 2010, release it as a program that finally fixes all the half baked features and then go to a 24 month cycle. Multileader is another feature that wasnt fully cooked, try aligning your leaders when you have all nice parallel leader lines, when you are done, they wont be nice and parallel any more. (very sloppy)
The annual release cycle serves but one purpose: Wall Street. It doesn’t serve:
— users, who don’t want to learn a new AutoCAD every year.
— managers, who don’t want to install, upgrade, migrate, train, and pay the hidden costs every year.
— third-party programmers, who have to update their code every year.
— book publishers, who don’t want to have to cost out book production over 12 months (instead of 18, 24, or longer).
Autodesk can solve the problem by changing all their one-year subscriptions to three years (some customers already get that), thus removing the pressure from programmers in getting out ANYTHING every 12 months.
As I noted in my ‘What’s Inside? AutoCAD 2009’ preview ebook, there is nothing in this release for drafters.
I can only say, if it was on the 2003 AUGI Top Ten AutoCAD Wish List (hmm… 5 years ago) they had more than a one year release cycle to develop it.
Very nice article. Well said and lots of facts. I’m sure I will be linking to this one often.
Bricscad and probably other Intellicads has had a script recorder for years. Actions are recorded as script files, *.SCR and can be edited in Notepad. Scripts can quite easily be transformed to Lisp with options for user input.
Started with VersaCAD/386 in, oh, 1988 or so. VersaCAD then (and now) has a Macro function which saved in VersaCAD’s CPL programming language. This made an excellent way to get into programming, by having the basci of whant you want – one need only delive into “help” to figure how to modify said recorded code. Great learning experience. May Autodesk could pick up a copy of VersaCAD (either an oooold version or VersaCAD 2006 for Windows) an learn how its done 🙂
Oldguy
I agree with you. Th action recorder could be a much more powerful tool than it is. But I will also play devils advocate. If the recorder is used for simple repetitive tasks, say aligning the wcs to a coordinate map x-ref. Or setting layers to on or frozen so print settings can be kept. And I am considering experimenting with it to do animation (cross my fingers).
Anyway Most of the cad users I have known over my 23 years of Autocad, most DON’T or WON’T use the higher level cad functions. They don’t want to learn programming of any kind. They want to draw the pretty picture and get a paycheck and go home. If you give them a tool that is the finger of god of cad tools, they will be itimidated, and they will not use it.
Now maybe its different where you are and all the cad people are super-users and can do just about anything they want with the system, but I haven’t seen many shops with more than 1 or 2 super-users. So I say, Yes the recorder is simplistic, but it needs to be that way, at least for now.
But I also agree that they need to push back the release schedule soo they can fix a few bugs before they push the product out the door.
-S
I couldn’t agree more. It is a nice idea but unfinished to say the least. Your listing said they wanted to assign it to an F=key or something. I would like to turn them into buttons on the tool palette or tool bar. I would also like to get rid of the annoying pop up dialog boxes when selecting objects. Just like so many things, it is a good start that might be all it gets too. Let’s hope that 2010 fixes some of this and makes it a real usable product and not just a marketing piece
I have been playing with the Action Recorder for the past week or so and it is frustrating. I create a set of commands then realize I should have added another command and discover that I can’t edit the macro I have just created . I have to re-do the whole thing. If you could at least tag on another macro,,, while it might be less efficient and could become very ugly it would be one way around the problem. I’m sure that as time goes by it will improve,, just have to buy the next version,, right.
It might be easier to use a Script (.SCR) since you can edit that. If you want to try using Scripts try Hurricane from http://www.74mph.com. You can use it to edit Attributes as well.
As for the 12 month cycle. I agree they should be coming out with a new version every 24 or 36 months. But it’s a money grab.
Thank you! This entry was very validating (on the matter of half-baked ideas in general) and a real time saver (I won’t be wasting any more time trying to figure out how to edit .actm files.)
Unfortunately, 2009 has taken a dislike to my simple LISP routines for layer visibility and hangs up on each one of them. On a whim, I saved them with the Action Recorder and invoke them from my old key commands written in the PGP file. Now the commands now work like they’re supposed to, but no editing. *sigh*
Barb, if you want to paste the relevant code from one of your simple routines into a comment here, I’ll see if I can work out what’s going wrong.
I agree with using scripting instead of the recorder. One program that I have used in the past is EZScript-Pro available at http://www.ezscriptpro.com. It’s less expensive than its competitors and is blazingly fast. It used to be freeware but I think the author now charges 5 bucks or something.
Mark,