Category Archives: Tip

AutoCAD 2010 – Putting things back to “normal”

Edit: If you’re running a more recent release of AutoCAD, have a look at the post AutoCAD 2017 – Putting things back to “normal” instead.

Easily the most popular post on this blog, in terms of both hits and comments, is AutoCAD 2009 – Putting things back to “normal”. Lots of people seemed to find it useful, so I guess it’s worth doing an updated sequel for the current release. Much of this post is the same as the original, but there are differences.

Note: there are updated versions of this post for AutoCAD 2011 and 2012.

One thing that’s regularly asked whenever a new AutoCAD release hits the streets is how to make it work like earlier releases. As I stated in my original post, I think you should give any new features a fighting chance before turning them off or ignoring them. The 2010 Ribbon is still a Ribbon, but in my view it’s a better one than in 2009. But it’s entirely your choice. We should be grateful that in AutoCAD 2010 at least (unlike Revit 2010), you do still have that choice.

Let’s assume you’ve made the decision to put your environment back to AutoCAD 2008 or earlier; how do you do it?

  • Workspace. In vanilla AutoCAD, you can restore much of the user interface by just switching workspaces. In the bottom right corner, there is a little button that looks like a gearwheel. This is the Workspace control. Click on it and pick the item called AutoCAD Classic. If you’re using a vertical variant of AutoCAD 2010, this workspace may not be available. If so, or if you want finer control over your interface, read on.
  • Pull-down Menus. Enter MENUBAR 1 to turn pull-down menus on. To turn them off again, enter MENUBAR 0.
  • Toolbars. In AutoCAD 2009, you could turn individual toolbars on and off by accessing a menu obtained by right-clicking on the QAT. Autodesk (vindictively?) removed that option in 2010. That menu is still available if you right-click in an unused docked toolbar area, but if you have no toolbars visible there will be no such area available. What to do? Turn on one toolbar at the Command prompt, then you will be able to access the menu by right-clicking on the blank area to the right of it. The following command sequence will do it:

    _.-TOOLBAR ACAD.Standard _Top 0,0

    Note that this will only work if you have the acad.cuix file loaded (or partially loaded). This is the case in vanilla AutoCAD and some verticals (e.g. AutoCAD Civil 3D), but it may not be the case in other verticals (e.g. AutoCAD Architecture).

  • Ribbon. You can close the Ribbon with the RibbonClose command. If you ever want to turn it back on, enter Ribbon.
  • Dashboard. The AutoCAD 2007/8 Dashboard is gone, but you can have a vertical Ribbon instead. If the Ribbon is not visible (it won’t be if you just selected the AutoCAD Classic workspace), enter Riboon to bring it back. In the tab title row (the bar with the word Home in it), right-click and pick Undock. Now you can place and size your Dashboard-like thing as you see fit. As before, you can right-click on things to change the various settings. However, getting the contents exactly the way you want it usually involves using CUI, and that’s well outside the scope of this post.
  • Graphic Background. Despite Autodesk thinking it’s a good idea to hide all the yellow lines in your drawings by giving you a creamy drawing area, many of you will want a black background. To do this, right-click on the drawing area and pick Options… (or just enter OP), then pick the Display tab. Don’t be tempted to choose Color Scheme and set it to Dark, because that just changes the appearance of various user interface elements. Instead, pick the Colors… button. On the left, choose a context you want to change (e.g. 2D model space), choose the appropriate background element (e.g. Uniform background) and choose the particular shade that takes your fancy. There is a Restore Classic Colors button, but that only takes you back to AutoCAD 2008 with its white paper space. If you want a black paper space, you’ll have to specify that individually. When you’re done, pick Apply & Close, then OK.
  • Status bar. Right-click on a status bar button, turn off Use Icons and your text-based status bar buttons will return.
  • Classic commands. If you prefer not to leave the various new palettes on screen all the time, old versions of various commands are still available: ClassicLayer, ClassicXref and ClassicImage. There is also a system variable LAYERDLGMODE, which when set to 0 will make the Layer command work in the old and faster modal way. If you use this setting, you can still access the new modeless layer palette with the LayerPalette command. Going back further, there are command-line methods of these commands: -Layer, -Xref, XAttach, -Image and ImageAttach.

If you have allowed AutoCAD to migrate your settings (I never do), some of the above will already be done for you, but by no means all of it. Once you’re happy with your new environment, I suggest you save your workspace under a name of your choosing (Save Current As… under the gearwheel button), then export your profile in the Options command’s Profiles tab.

Go and snag a free Snagit, quick!

For the next few hours, you can get a free registered version of the screen capture software Snagit from TechSmith. It’s a couple of versions old and not supported on Vista, but nevertheless is well worthwhile. No, the Print Scrn key isn’t the same thing at all; Snagit is much, much more useful than that. Try it for yourself, you can thank me later.

To get the freebie, first get a registration key by clicking here and then download your copy of Snagit 7.2.5 from here. Be quick, because this offer closes at 5 PM EST (9 PM GMT/UTC) today, 5 June 2009.

Even if you were planning on buying the latest version of Snagit, get this freebie anyway. As a registered user of Snagit, you automatically qualify for upgrade offers. This means you can get the latest Snagit for US$24.95 rather than US$49.95 (depending on location).

TechSmith has another screen capture utility, Jing. This is also free, with a more powerful version available at a cost. Which is the best TechSmith screen capture utility? Dunno, I’ve never used Jing. Grab ’em both and see what you think.

Source: mCADForums via SolidMentor.

Disclosure: at Autodesk University 2006, I was given free copies of Snagit 8.1 and Camtasia Studio 4.0 (thanks Shaan), both of which I still use regularly (i.e. it’s not shelfware). I was also given a TechSmith T-shirt, which I ruined within hours by spilling red wine on it.

AutoCAD’s magic vanishing attachments

There are now quite a few file types that you can attach to an AutoCAD drawing as a reference, in the same way that you can attach other drawings as xrefs. We’ve been able to attach other drawings since Release 11 (1990) and images since Release 14 (1997), but every release since 2007 has introduced a new kind of attachment. In AutoCAD 2010, you can now also attach PDFs, MicroStation DGNs (v7 and v8), DWF and DWFx files.

But should you? Maybe not. It depends who is going to use those drawings after you. If you know for certain that every user of that drawing is going to be using 2010 and later, that’s no problem. But if there is the possibility of earlier releases being used, your fine-looking attachments could vanish silently in the night. Attach a PDF to your drawing in 2010, give it to a user of last year’s AutoCAD 2009 (you’ll need to save it as a 2007 DWG) and what will he see? Nothing. There is no text-screen warning, no bounding box, no piece of text indicating the file name, nothing. Just a blank space where there should be useful drawing content.

This problem isn’t new to 2010, because there are similar problems with the other recent attachment types. Let’s examine them one by one:

  • PDF – visible only in 2010 and later (except for the special case of 2009 with the Subscription-only Bonus Pack 2).
  • DWFx – visible only in 2009 and later.
  • DGN v7 – visible only in 2009 and later.
  • DGN v8 – visible only in 2008 and later.
  • DWF – visible only in 2007 and later.

It’s important to note that the attachments don’t actually disappear from the drawing. They are still stored there, even if you save to an earlier DWG format like 2000 or 2004. The attachments survive the round trip to an earlier DWG format intact; they will reappear just fine if reopened in 2010. (Round-tripping of new object types is something that Autodesk has done extremely well over the years).

In most cases, the objects are stored invisibly as proxy objects (object name ACAD_PROXY_ENTITY, known in the early days as zombies). In some cases, they are listed as special Underlay objects (e.g. DGNUnderlay, DWFUnderlay). In 2000 to 2006, they all list as proxies. How can you list these objects in earlier releases when you can’t see them? With a bit of LISP, or old tricks like LIST ALL Remove Crossing.

The moral of the story for drawing creators is to look before you leap whan attaching new object types. For drawing recipients, it’s something to carefully watch out for. If you’re the customer and you use an earlier release, you may even wish to include a don’t-use-this-attachment-type clause in your specifications.

Autodesk Assistance Program and the educational watermark

You have probably seen blog posts about the Autodesk Assistance Program (see the FAQ PDF), promoted as a hand-up for the less fortunate who find themselves unemployed as a result of the current financial environment. The Autodesk PR makes it clear that the free software on offer is a 13-month student license. However, the consequences of using such software are not made clear, so I’ll spell it out here.

If you use Autodesk educational software, you are not supposed to use it for commercial purposes. So, if you’ve just lost your position and were hoping to set yourself up with a few odd jobs here and there, building yourself up to a full-time drafting and design shop, don’t use the Autodesk Assistance Program software to do it. It’s useful only to help you keep your skills up to date, nothing else.

What happens if you do use it for real work? Bad things. If Autodesk finds out, it might set a pack of rabid lawyers on you. How might Autodesk find out? Through your clients. Why would your clients tell Autodesk? Ah, that’s where the educational watermark comes into it.

Every DWG file saved by the educational version of AutoCAD is invisibly stamped, recording that fact. That includes blocks extracted using Wblock, of course. If such a drawing is ever plotted, even by a normal, fully-paid-up AutoCAD, a text stamp will appear along all four sides, proclaiming that the drawing is For Educational Use Only.

Trouble is, the invisible stamp passes from drawing to drawing like a virus, particularly among users of older releases. If somebody uses the educational version to just look at a drawing and happens to save it, that drawing is indelibly stamped with the mark of the Beast. If any part of that drawing is ever inserted into another, it carries the infection with it. It has been possible for companies acting totally honestly to end up with a large number of infected drawings, only to discover the extent of the disaster when plotting out a drawing set.

This has been less of an issue in recent years, because in AutoCAD from 2004 on, there’s a warning issued in the non-student versions of AutoCAD if an infested drawing is inserted or opened. It’s also possible for users of AutoCAD 2000 to 2002 to receive such a warning, using the EDU-Scan utility from ManuSoft.

Despite misinformation about this from Autodesk (e.g. “There is no way to circumvent the plot stamp” from here), such drawings can be cured. Innocent victims of the infestation can apply to their AutoCAD dealers for a special utility, time-limited to 15 days, to fix up the drawings. A DOS utility is also available that can identify the infected drawings. You may be asked to identify the source of the drawings before being provided with anything.

Alternatively, users of the non-student version can clean up infected drawings easily enough with an option of a very commonly used AutoCAD command. No, I’m not going to tell you which command, and please don’t email me to ask. I can tell you it was the first thing I tried when I came across such a drawing, and it worked perfectly. If you’re an innocent party in that unfortunate situation, a few minutes experimentation should see you right.

I wonder if an unintended side-effect of the Autodesk Assistance Program is going to be a rise in the incidence of educationally-tainted drawings. For those who ever receive drawings from other parties (probably most of us), it’s something to keep an eye out for. For those who intend using the Autodesk Assistance Program software, it’s a good idea to make sure you keep a tight rein on any drawings you produce with it. Because distributing student-stamped drawings is likely to do your future employment prospects no good at all.

Buying 24″ monitors – is now the right time?

I’m doing my bit to reduce the impact of the global financial crisis. Yesterday, I went out and bought a couple of new 24″ monitors to replace my perfectly functional pair of 19″ LCDs. It now looks like I’m facing a huge wall of pixels and I don’t quite know where to look, but I felt like that after moving from my old 19″ CRT to the pair of 19″ LCDs, so I’m sure I will get used to it soon enough. The 19″ LCDs haven’t gone to waste, they are now adorning an older PC which was previously attached to the old and now slowly-dying 19″ CRT.

Why was it a good time for me to buy new monitors? Because of the way monitor aspect ratios are going. The “sweet spot” for monitors right now is 22″ or 23″, where a serious number of pixels are available for very little cash. Trouble is, the pixels are in the wrong place. Almost all monitors of that size have a resolution of 1920 x 1080, a ratio of 16:9, same as a full HD TV. A vertical resolution of 1080 doesn’t provide a significant advantage over an old 19″ 1280 x 1024 (4:3 ratio) monitor.

When I’m not doing CAD or image manipulation, I’m generally doing things that involve lots of vertical scrolling; word processing, reading web pages, that sort of thing. Often, those web pages have a fixed-width design (e.g. AutoCAD Exchange), so adding extra screen width gains me nothing but extra wide stripes on each side. With more and more software having a deep horizontal stripe dedicated to user interface elements, there’s not much point investing in only 56 extra pixels (5.4%) of height.

From my point of view it’s better to pay a bit extra and go for an extra 176 pixels (17.1%) of height: a 1920 x 1200 (16:10 ratio) monitor. These are available in various sizes, but the cheapest ones, and the ones that will fit side-by-side on my desk, are 24″. But these are becoming less common. Even as I’ve been looking over the past few weeks, the number of 24″ 1920 x 1200 monitor models available in my area has dropped off significantly. Unless you’re very careful, if you buy a 24″ monitor it’s likely to be 1920 x 1080.

Why? Many of these monitors are now being used for games consoles; 1920 x 1080 is all they will use. Same with HD TVs; 16:9 is the current fashion in LCD panel ratios, and it looks likely to stay that way. It makes sense for manufacturers to make 16:9 panels, so 16:10 panels are only going to get rarer.

That may make sense for the manufacturers, but it doesn’t help me as a vertical-pixel-hungry customer. Unless I’m prepared to go for much bigger, desk-hogging and expensive monitors, all I’m going to gain with a 16:9 screen is a bunch of width. Even a 27″ monitor I considered, at roughly twice the price of a 24″, offered “only” 2048 X 1152.

I made the decision. I bought a pair of 24″ 1920 x 1200 monitors while I still could. I found a good-value model I could view in the store, with a small enough bezel (important if you’re using them side by side), a height-adjustable stand, and an excellent warranty (3 years pixel-perfect). For me, it was the right time. Maybe it is for you, too?

Older AutoCAD loses (part of) the plot

I know there are plenty of people still using AutoCAD 2007 and earlier, so this bug warning may save some of you some grief. I have no idea how widespread or isolated this problem is, but under some circumstances I haven’t worked out yet, AutoCAD 2007 fails to plot all of certain dynamic blocks. Some attributes have a habit of being plot-shy. Even if you don’t use dynamic blocks yourself, you could receive a set of drawings, check them on-screen, approve them, plot them and send out paper drawings without all of their parts. Unless you’re carefully manually checking the paper plots, this situation is obviously a little dangerous. Fortunately, Plot Preview also shows up the problem, so it is at least possible to check things without wasting trees.

Here’s an example. This is part of such a drawing displayed in AutoCAD 2007, with all of its parts in place. One of the dynamic blocks is highlighted:

Drawing in AutoCAD 2007 with all its parts in place

Here’s that drawing plotted using AutoCAD 2007, showing the missing parts:

Drawing plotted in AutoCAD 2007 with parts missing

Earlier releases do the same, including pre-dynamic block releases. As DWF files are just electronic plots, the same problem applies to them. Yes, I’ve checked for non-plotting layers and looked into the visibility states within the dynamic blocks. An audit of the drawing indicates no problems. Attribute visibility settings are not an issue.

Here’s the same drawing plotted using AutoCAD 2009 (2008 and 2010 are fine, too):

Drawing plotted in AutoCAD 2009 with parts intact

What to do? Using a later release would solve it, but might not be a practicable solution in your office right now. Instead, you could consider using DWG TrueView for your plotting. That may not be ideal either, but it could be better than risking the consequences of an unknown number of your plots containing an unknown number of missing parts in unknown places.

Have you come across this problem? If you have any more clues about the circumstances that trigger it, please add a comment.

AutoCAD 2010 – Will you miss the Menu Browser?

I’ve closed the poll that asked AutoCAD 2009 users about their MENUBAR setting. It’s very clear that pull-down menus are still very much in use in the Ribboned world of post-2008 AutoCAD. In AutoCAD 2009, an attempt was made to provide access to pull-down menus without sacrificing that strip of screen real estate. That attempt was called the Menu Browser, it was one of the thing you could find under the Big Red A, and it really didn’t work very well. In AutoCAD 2010, the Menu Browser has gone away. The A hasn’t gone away, just the ability to access pull-down menus through it.

There are some who have expressed a deep dislike of the Big Red A, although it never offended me greatly. I just wished the features hidden under it worked better than they did in 2009. Personally, I generally prefer what’s under the A in 2010 than what’s there in 2009, but you may not. I know that when the 2009 user interface was being attacked, its most prominent defenders were those keyboard-heavy users who turned both the Ribbon and the menu bar off, giving themselves more screen space. On the infrequent occasions when a pull-down menu was required, those people were content to provide an extra click.

When I found out about the Menu Browser’s death a few months ago, I expected there would be a severe adverse reaction from such people. Maybe there will be one when people hold get the shipping product and notice it’s gone. But after my poll showed only 7% of respondents used it instead of the menu bar, I’m now expecting that adverse reaction to be smaller than I originally thought.

If you want to use AutoCAD 2010, want to work without a menu bar but still have access to menu items occasionally, what can you do? You can add a button to the Quick Access Toolbar (QAT), or any other toolbar, that toggles the menu bar on and off. Use the CUI command to add such a button.* The following macro will do the job:

'menubar $M=$(-,1,$(getvar,menubar))

There are a couple of downsides to this method. First, although this macro has been written in such a way that it should be transparent, it doesn’t currently work that way. When you push the button, AutoCAD will still cancel any command you’re in. Second, the screen resize forces a redraw, which could slow you down in very complex drawings. However, under most circumstances that redraw will still be quicker than waiting for a reaction from AutoCAD the first time you pick the Big Red A. By the way, that reaction time is better in 2010 than the very tardy 2009. As a result, even AutoCAD 2009 users might prefer to use the QAT-button method and forget the Menu Browser ever existed.

* If there is enough interest, I will do a video tutorial explaining how to add such a button to the QAT.

Gravatars – how to get a picture next to your comment

After some recent site maintenance here, you may have noticed that the comments look a bit different, and that some people’s comments have a little picture next to them. This little picture is called a gravatar (globally recognised avatar), and you can have one too. Once you set it up, you will find that it works in all sorts of places, not just this blog.

Here’s how to do it:

  1. Visit gravatar.com and pick a sign up link.
  2. Provide a valid email address; the same one you provide when adding comments to blogs. I have not received any spam as a result of doing this.
  3. You’ll be sent a confirmation email; click on the link in that and follow the prompts to set your password and so on.
  4. Choose your gravatar image from your hard drive, the internet, a webcam or a previously uploaded image. You can point to any size photo and will be prompted to select a cropped square area to display.

That’s it, although you can manage your account to provide multiple email addresses and images if you wish. Wait 5 or 10 minutes, then check out this or other blogs and web locations where you have made comments in the past. Those blogs with layouts that support gravatars should now display the picture that you associated with the email address you supplied when you made your comment. If the image doesn’t show up, do a reload/refresh and/or clear your browser’s cache and try again.

Adding Heidi

Although I want to keep my list of links reasonably compact, it should not have taken until now to add the AutoCAD Insider blog of Autodesk’s Heidi Hewett to the list. Heidi’s idea of going through the AutoCAD alphabet is a great one, and I wish I had thought of it.

blog nauseam has been light on for AutoCAD tips and information lately. Although that’s going to change for the better soon, there’s plenty of that kind of stuff on Heidi’s blog to keep you amused in the meantime. It’s useful stuff for all AutoCAD users, explained well.

Oh, and Heidi, the Boundary command was (kind of) added in Release 12, except it was called Bpoly at the time. It was renamed to Boundary in Release 13. The Bpoly command lives on to this day, doing exactly the same as Boundary.

Why I won’t buy another Canon all-in-one printer

Last year, I bought a Canon MP830 printer/scanner/copier/fax/tea maker/whatever for my home office. I chose this particular device because it had all the features I was after, including CD printing, duplex printing, printing to the edge of the sheet, decent photo printing quality, and great document handling including automatic dual-sided copying. It also had theoretical high speed operation and ink economy with 5 separate tanks. It also looked like a sturdy piece of kit that wasn’t going to wobble all over the place in use, and which might stand a chance of lasting a long time. It was at the upper end of the Canon range, but even then it wasn’t expensive.

I was a little worried that when one part of it eventually failed, I would be stuck with a partially functional device, such as a scanner/fax that wouldn’t print, or a printer that wouldn’t scan, and be left with the dilemma of replacing all of it or part of it. But I had good experiences with long-lived printers in the past (albeit Hewlett-Packard ones), so I figured that if I had to throw it away in five years’ time I could live with that.

In practical use, most of the device’s features turned out to be as advertised, and while it was working I was generally happy with it. But I won’t be buying another one, and it’s unlikely that I will ever buy another Canon printer of any description. Why not?

  • Performance. This simply isn’t up to scratch. While it may theoretically print a 500-page document at 30 pages per minute, printing a single page is a different matter. Although it can look spectacularly quick in action, it takes one full minute from turn-on to get itself ready to do anything at all, then about 10 seconds to print a simple monochrome page in draft. There are also long delays when the device is switching from one kind of use to another. The lengthy period of whirs and clunks indicates that it’s doing something very important internally, but I have no idea what. I don’t care. For my typical use, it’s just too slow.
  • Economy. The ink savings promised by the 5-tank system are illusory. This thing eats ink at a rapid rate, so I’m finding that the costs of running this printer are significantly greater than my previous Hewlett-Packard. Having to maintain at least one spare (preferably more, because they don’t last long) of each tank is inconvenient and means there is always an expensive set of tanks lying around waiting to be thrown or given away when the device finally dies. Which, given my experience to date, could be any day now.
  • Reliability. It doesn’t have this. It had to be returned for warranty repairs in its first year, as it complained about its ink tanks. This resulted in the print head being replaced. Out of warranty, it started doing the same thing again. This was sometimes fixable by various means, such as removing and replacing the tanks, switching the device on and off, removing and replacing the print head, cleaning the contacts, prematurely replacing unfinished ink tanks with new ones, and so on. This would sometimes fix the problem on the first or second attempt, but this level of cooperation didn’t last for ever and the condition gradually worsened until the device was officially dead. I took it in for repair but apparently a new print head (which costs 30% as much as the printer) was not required this time. It has been fixed, for now, by replacing one of the half-full tanks with a new one. Apparently, genuine Canon tanks, which are the only thing it has ever had in it, are prone to bad batches, and I’ve been unlucky. The little chip on each tank, which is intended to make life difficult for makers of third-party tanks, has been making my life difficult instead.
  • Idiotic design. This is the killer. You may recall my concern that I would be left with a partially functioning device when one part failed. I need not have worried about that, because it seems the Canon design philosophy is one of extreme built-in obsolescence. When one part fails, even if it’s just an ink tank, the whole machine is a boat anchor. When the magenta ink tank is faulty, that doesn’t mean your prints come out looking rather less pink than they should. It doesn’t mean that you are restricted to monochrome prints. It doesn’t mean that you can’t do any printing at all. It means that the device is completely, absolutely, 100% useless. You may think that it should be possible to print in monochrome, scan a page, or send a fax without a cooperative magenta ink tank, but the Canon designers apparently think otherwise. What on earth were they thinking? I mean, how could anybody possibly think this is an appropriate design decision? Strewth!

Canon, this device is not good enough. I know that one person’s reliability experiences are not statistically significant, but even without that, the other downsides are enough to make me not want to repeat this unpleasant buying experience.

I have had very long life, 100% reliability and relative economy out of Hewlett-Packard devices in the past, so it looks like I’ll be returning to the fold with my next purchase. I know that HP doesn’t quite have the exalted quality reputation it once enjoyed, but it surely can’t be as bad as this. Can it?

How not to do a web update

If you’re a major company and your various web-based services have evolved over time, you may have a proliferation of user IDs and some other issues to tidy up. You may be tempted to have a major overhaul.

If you think your reputation among your customers isn’t low enough and you desperately want this update to be an unmitigated disaster, what should you do? If you’re dropping subtle hints about moving towards a Software as a Service model, how can you remind people about the excellent reasons that exist for avoiding dependence on on-line services in general, and on yours in particular? Here are some suggestions:

  • Do everything at once. Don’t be tempted to divide this task into manageable portions, or you may have some prospect of success.
  • Close down everything for several days. If your customers might have to rely on some part of your web services to keep their products working, make sure you close down that part in particular. Let ’em stew.
  • Give the update job to a clumsy intern in your office that has never been allowed near a computer before.
  • Failing that, outsource the job to the lowest bidder. Ideally, have it done in a country that has a first language other than your own, to maximise the potential for misunderstandings.
  • When the user ID merge is done, make sure it is still broken for some people. Have multiple users with the same ID and multiple IDs with the same user. Some people’s existing user IDs will fail, so encourage them to make new ones and then refuse to allow it on the grounds that they already have an ID.
  • Make sure random people’s user IDs work in some places but not others. If they are paying for a maintenance contract, do your best to prevent them from using it.
  • Update your discussion groups to a new format. Of course, you should only do this if your existing groups are fast, efficient and reliable, and nobody is complaining about them. If it ain’t broke, fix it. Fix it real good.
  • If people have actually asked for any new features, such as signatures in their web-based posts, make sure you don’t provide them.
  • Don’t ask for feedback on any suggested changes. Before jumping in with the whole big update, don’t put up a sample discussion group to ensure that it works and that people like it. The slogan “Just Do It” works here, but already belongs to somebody else. Try “Don’t Look Before You Leap” instead.
  • Make sure you expose your customers’ private data to the world so they will never want to trust you again. If you can, make their email addresses visible to the spambots. Leave this visible for at least a week to give the trawlers a chance to do their harvesting, no matter how many impassioned pleas people make. You get bonus points if the exposed email address is also the user’s login ID. Spammers, scammers and phishers will love you, but your customers will not.
  • Make the new discussion group system slow, unreliable, and less efficient to use than before.
  • Ensure the discussion group editor messes up the formatting of people’s posts. Have it insert random junk into the posts and then refuse to let them edit it out. For bonus points, let them edit it out, but then ignore the edits or randomly re-insert new codes.
  • Make sure the search engine doesn’t find anything from before the update. If anybody attempts to change the search settings to find all posts, reward them by making sure it finds nothing at all, not even the recent posts it found a few seconds earlier.
  • If people are likely to post, say, program code, make sure you wrap it all up into one line to render it illegible.
  • If your customers are likely to use certain characters like square brackets in their posts, choose these as special characters in your editor. Mess up people’s posted program code into stuff that looks like a mass of broken links.
  • After a week or so, change your mind about the square brackets thing so that people who used that facility for their links now have posts that make them look like idiots. But don’t completely change your mind about it. Break the display of such links, but still encourage the users to insert them. For bonus points, insert each link at the start of the message rather than where the user expects it to go.
  • Log people off every so often so they have to keep logging on. Provide a “Remember this” feature that doesn’t.
  • If you are silly enough to allow people to keep their old items-per-page settings and you accidentally provide a control panel that works, make up for this by making those old settings unavailable in the control panel. In this way, you will prevent them from using a perfectly functional control panel for fear of losing their settings.
  • People who place attachments in their messages deserve to be frustrated, so you should break that feature for a while. Then allow some files to be attached, but mess up their display and randomly refuse to allow people to get at them.
  • If you think people might want to paste things into their messages, make it as awkward as possible. Copy and paste has universally worked a certain way for decades, so to keep on doing that is just what they will be expecting you to do. Do something new and interesting instead. Force them to go through a slow and arcane multi-stage process to paste the word “and”.
  • Because you don’t have full control over what appears on the screen, it’s much harder to mess up newsreader access, but make sure something makes life intolerable for those people too. Formatting attachments as garbage text is always a useful trick.
  • If you have an excellent educational conference coming up and people have complained about the associated web services in the past, take this opportunity to make them worse.

That’s all I have, sorry. My imagination must be failing, because I can’t think of any other ways a company could mess up such an update. Does anybody else have any other suggestions?

Autodesk discussion group links – feedback and bookmarks

The Autodesk discussion groups are currently working. They are also still irresponsibly displaying people’s email addresses as visible user names. If you’ve posted to the discussion groups in the past, I suggest you check to see if your email address is out there for the spambots to pick up.

There is now a feedback form for the discussion group and Community sites, so if you’re having problems you could try that. Hopefully, Autodesk won’t need a thousand feedback reports to work out that it’s running as slow as a wet week, the search is broken and that people’s privacy has been violated.

If you have links to product categories that no longer work properly, you can modify the format as shown in this example, which is for the AutoCAD category.

Old: http://discussion.autodesk.com/index2.jspa?categoryID=8

New: http://discussion.autodesk.com/forums/category.jspa?categoryID=8

Autodesk discussion group alternatives

As I’m typing this, the Autodesk discussion groups are down for maintenance again. Let’s hope that when they come back up, some of the problems are fixed.

In the meantime, if you’re an AutoCAD user and have something to ask or say, where can you go? Here are a few suggestions.

  • I like the AUGI forums. It’s an even more modern, more graphical and less space-efficient web interface than the new Autodesk one, but there’s a good community there and, hey, the search feature works. Mike Perry and colleagues run a tight ship, so please read the rules and be good.
  • If you have something to tell Autodesk and want practically no restrictions in the way you say it, submit a new message on dear Autodesk, or vote for the existing messages you like. It’s looking a bit bare and empty at the moment, so go fill it up.
  • As a Cadalyst person, it would be remiss of me to avoid mentioning the Cadalyst forums.
  • The Swamp is biased heavily toward CAD programming, so if you have a LISP question then head there, but it also hosts general CAD discussion. In this community, you are expected to be courteous and professional.
  • Old-timers like myself will remember that the CompuServe ACAD forum’s Take 5 section was carried over into the AutoCAD discussion groups. It was kept going for a few years before Autodesk felt it was getting out of hand and killed it. That community refused to be killed, and actually still flourishes for newsgroup (NNTP) users at the t5 dot dynip dot com server.
  • R. K. McSwain suggests the CADTutor forums.

If you wish to point out any other sites I’ve missed, please let me know and if they’re relevant I’ll edit this post to include them.

While I was typing this, the Autodesk discussion groups came back up, but who knows how long that’s going to last?

Also while typing this I also received a phone call from a helpful Indian gentleman at Subscription Support (which was working fine as of yesterday). He asked for details about the broken search (it doesn’t find anything posted prior to the update), confirmed that it’s broken, and promised to inform the relevant department. That’s a much better response than the email I mentioned in my last post.

What is loaded at AutoCAD startup, and when?

Warning, CAD nerd stuff ahead. This is a long and technical post and if you’re using AutoCAD in a largely out-of-the-box state you probably won’t care about any of it.

If your modification of AutoCAD extends beyond the trivial, you may find it useful to know what AutoCAD loads, and in what order things are loaded. It is possible for LISP files in particular to tread on each other’s toes, so knowing what gets loaded when can be useful information for diagnosing such clashes. This post aims to provide that information. It uses AutoCAD 2009 as an example, but the same principles apply to all releases from AutoCAD 2006 onwards.

On startup, the first things AutoCAD loads are its CUI files. It first loads the Enterprise CUI file, then the Main CUI file, then any partial CUI files attached to the Main, then any partial CUI files attached to the Enterprise. I have no idea of the reasoning behind this slightly strange order, but there it is. The order of the partial CUIs loaded in each case is determined by the order in which they appear in the parent CUI files, which is determined by the order in which you attached them. If you don’t like this order, you can attach and reattach them in the CUI interface, or you can do the same thing much quicker with a text editor if you feel confident enough. If there are LISP files associated with these CUI files, they are not loaded yet. You’ll need to wait a few paragraphs for that.

Next, if you have created a file called acad.rx in AutoCAD’s search path, any ARX files listed in that file will be loaded. There are other ways in which developers can load their ARX files at startup, but I won’t go into that here.

Following that, the acad*.lsp files are loaded. First, Autodesk’s acad2009.lsp file is loaded. Next, if you have created a file called acad.lsp, that is loaded. These two files are only loaded at first startup, unless the ACADLSPASDOC system variable is set to 1, in which case the acad.lsp file is reloaded with each new drawing. Next comes Autodesk’s acad2009doc.lsp and any acaddoc.lsp file you may have created, in that order. These two files are loaded at startup and with every new drawing session.

It’s worth pointing out here that the acad200x.lsp and acaddoc200x.lsp files are Autodesk’s and are not intended to be modified by users. You can modify them, and adding things in there works fine, but updates and hotfixes can overwrite these files, leaving you to patch things up again afterwards. The acad.lsp and acaddoc.lsp files are yours, and that is where you are best advised to put your additions.

I hesitate to mention VBA because I have long avoided that development environment and my knowledge in that area is very limited, but if you’re a VBA developer and have created an acad.dvb file in AutoCAD’s search path, it gets loaded at this point.

Once the acad*.* files are loaded, then come any LISP files associated with the CUI files that were loaded at the beginning. For each CUI file, if there is a *.mnl file of the same name, that will be loaded first (*.mnl files are just *.lsp files renamed). After that, any LISP files that are specified in the CUI file will be loaded, in the order in which they appear in the CUI file itself. This order can be modified in the same ways that the partial CUI loading sequence can be modified; “delete” and “load” (detach and attach, really) the files within the CUI interface, or hack the CUI file with a text editor.

The CUI-associated LISP files are loaded as described in the above paragraph for each CUI file in turn, in the same order as the CUI files themselves: Enterprise, then Main, then partials to Main, then partials to Enterprise.

The Appload command provides a Startup Suite facility, where you can specify any number of files to load (*.arx, *.lsp, *.dvb, *.dbx, *.vlx or *.fas). If you have done so, those files are loaded at this point, in the order in which they appear in the Startup Suite list.

That’s all the actual loading done, but we’re not finished yet. At this point AutoCAD’s environment should be all ready to do pretty much anything, including things that modify the drawing database, including invoking commands. This was not true earlier on, so if you want to do things like change the drawing or run commands, this should be done using a startup routine rather than called directly at load time from any of the files loaded above.

If you’ve defined a VBA sub called AcadStartup(), it will be called now. If starting a new drawing, any sub called AcadDocument_Activate() will be called instead. The caveat about my VBA ignorance still applies here.

If a LISP function called (S::STARTUP) has been defined, it will be called next. Where could that be defined? Anywhere in any of the LISP files mentioned above, or in any LISP or other files that are loaded by any of those files, or by any files that are loaded by any of those files, and so on ad infinitum. It could even be defined in one of the ARX files loaded at any point. This would be unusual, but is quite possible.

If there are multiple (S::STARTUP) functions defined in various places, which one wins? Whichever one loaded last. That’s why the load order can be important, but it’s also why you should never have an unconditional (defun S::STARTUP …) definition in your LISP code. Instead, you should append your startup code to any existing (S::STARTUP) function. That way, your startup can cooperate with any others in your environment rather than walking all over it. If there is some interest in that subject, I can cover it in more detail in a future post.

In summary, here is the AutoCAD startup sequence:

A. CUI files loaded:
1. Enterprise
2. Main
3. Partials to Main
4. Partials to Enterprise

B. acad*.* files loaded:
1. Files listed in acad.rx
2. acad2009.lsp
3. acad.lsp
4. acad2009doc.lsp
5. acaddoc.lsp
6. acad.dvb

C. CUI-associated MNL and LSP files loaded:
1. Enterprise named MNL
2. Enterprise loaded LSP and MNL
3. Main named MNL
4. Main loaded LSP and MNL
5. Partials to Main named MNLs
6. Partials to Main loaded LSPs and MNLs
7. Partials to Enterprise named MNLs
8. Partials to Enterprise loaded LSPs and MNLs

D. Startup suite files loaded

E. Startup routines run:
1. AcadStartup() called (AutoCAD startup)
2. AcadDocument_Activate() called (Drawing startup)
3. (S::STARTUP) called

Look out for Update 1 for AutoCAD 2009-based verticals

If you have Communications Center disabled (this is quite common, it seems) or you’re not currently using your 2009-based vertical product, you may be unaware that Autodesk has released versions of Update 1 (formerly known as SP1) for the architectural and civil variants of AutoCAD 2009. Expect the other verticals to follow soon. A visit to the Autodesk site and search for “Update 1” currently returns 18 results. As usual, read the Readme first and exercise caution (or even paranoia) before installing.

AutoCAD 2009 – Ribbon content for Express Tools

One of the many unfinished aspects of the AutoCAD 2009 Ribbon is the lack of Express Tools content. One enterprising user has put the effort into correcting this, and has posted an Express Tools CUI replacement in this Autodesk newsgroup thread. I have not tested this myself. As usual with CUI, be paranoid. Back up everything before you touch anything.

While I wouldn’t normally suggest you do any Ribbon custom work in 2009 in its current state, it shouldn’t hurt in this case as it should be easily redoable once Autodesk has fixed up the worst of the 2009 CUI problems. Anything else you do should be considered as disposable. The problems with 2009’s CUI are so fundamental that it is quite likely a restructure will be required to fix them, either in a service pack or in 2010. That means your 2009 CUI efforts may need to be redone, just like your AutoCAD 2008 Dashboard modifications.

AutoCAD 2009 – Drawing integrity tip – urgent!

AutoCAD 2009 users, I strongly suggest you go and set the new system variable OPENPARTIAL to 0. Now.

Why? Because if it’s set to the default value of 1, purging can be harmful to your drawings. I’ll fill in the details in a future Bug Watch column, but for now I suggest you just go and fix up that variable. It’s stored in the Registry, so you should only need to do it once unless you use multiple profiles, in which case you should do it once per profile.

AutoCAD 2009 – Putting things back to normal revisited

I see Lynn Allen has written a post explaining how to restore the “classic” interface. I commend Lynn for doing this in response to the requests she’s been receiving. It must be pretty painful for some people at Autodesk to see their Technical Evangelist showing people how to turn off AutoCAD 2009’s Big New Feature, but it’s absolutely the right thing for her to do.

The worst thing Autodesk can do right now is go into denial mode, which has happened more than once in the past when users have reacted negatively to various things. This post from Lynn gives me hope that maybe we don’t have to go through that stage this time.

Anyway, if you want more detail about putting things back to normal, have a look at my earlier post on the subject.  I’ll add one more tip here that you might otherwise miss: if you want the old layer interface to be invoked by the Layer command rather than the new pallette, set the undocumented system variable LAYERDLGMODE to 0.